I have moved to a new computer and i am trying to migrate Tropy to my new computer (Macbook). As for the storage of the photos, almost nothing has changed : the user directory has changed its name, but inside it I have imported the photos with identical paths as in my previous computer. I hope that would be solved with consolidation since the relative paths are almost unchanged. However I am getting mixed results : sometimes one item is entirely consolidated, sometimes it is just one photo. Is there any way to consolidate “in bulk”, since for all the photos the only thing that has changed is the name of the User directory, all the other paths being the same ?
When you consolidate one photo Tropy should ask if you’d like to automatically resolve all other missing photos. In some cases (e.g., if the file you consolidated was renamed) automatic consolidation is not possible and Tropy will not show the prompt, but it sounds like it should definitely work for you. When you successfully consolidate a photo, are you shown the prompt for automatic consolidation afterwards?
On macOS, specifically if you restored you photos on the new computer by downloading them from an online backup it’s also possible that the automatic consolidation fails because of permission constrains. Basically, macOS will protect access to downloaded files; by consolidating a photo manually you effectively give Tropy permission to access that one file but not the others. It’s easy to fix those permission issues if that’s what’s causing the consolidation to fail in your case.
Yes, I see the prompt for automatic consolidation, and when I click yes i see in the bottom-left part of Tropy that it is consolidating a lot of pictures (the whole library I would say), but in the end at best it consolidates the entire item, but more often some photos or sometimes even just the one i started with.
I am looking at the privacy parameters of my mac and see that i have authorized access to all the Documents (where all my project photos are) and the Desktop directory.
Yes, the auto-consolidation goes through all the photos in the project and checks each file. This takes a long time. (If you know exactly how the paths changed you can also change them directly in the database with a one-liner.)
It can happen that the changed path of the photo you consolidated manually if not meaningful enough to deduce how other paths changed, but this happens only in rare cases where the photos also changed relative to one another.
Could you share the old/new path of a photo you consolidated and the old/new path of a photo that Tropy did not fix automatically afterwards? This should help explain whether there is some issue involved which we’re not aware of yet.
To give you an idea, I tried today consolidation starting with this photos :
- old path : /Users/name 1/Documents/1. Thesis/Archives/SHD/SHD 4 N 54/IMG_2494~photo.HEIC
- new path : /Users/namesurname/Documents/1. Thesis/Archives/SHD/SHD 4 N 54/IMG_2494~photo.HEIC
I did click yes for auto-consolidations of the rest of photos, but it did not do anything, even the next photos in the same item, that are in the same directory, have not been consolidated.
As you can see, the only thing that has changed in the paths is the name of the user directory in my new computer, i did not change anything else so that consolidation would be easier.
Auto-consolidation should definitely be able to figure out the new location for these paths, so my guess is that there are permission issues.
Can you open the Terminal and check the file attributes of a photo you have not consolidated already, like this:
xattr "/Users/namesurname/Documents/1. Thesis/Archives/SHD/SHD 4 N 54/IMG_2494~photo.HEIC"
com.apple.quarantine is present in the attribute list, that’s likely the issue. You can try removing the flag recursively from the project folder like this:
xattr -d -r com.apple.quarantine "/Users/namesurname/Documents/1. Thesis"
The only thing that comes out when entering the command is “com.apple.macl”. Is it something similar ?
Yes, that’s most likely the reason why the auto-consolidation does not work. I don’t know exactly what the attribute does but it’s definitely related to macOS integrity protection. I believe the attribute content is a kind of whitelist that tracks which apps are allowed to access the file. Normally, when you import the file into Tropy (or consolidate it manually) the system notes that you actively accessed that file from Tropy and therefore it gains permission.
Could you try if giving Tropy full disk access in the system preferences? You can find the permission in the privacy tab of security & privacy. This might fix the issue.
I have just done it and tried considation again, but it does not solve the issue either
Have you restarted Tropy after granting full disk access?
Since the files are in the Documents folder, also check if Tropy has access to the Documents folder, by selecting the ‘Files and Folders’ permission in the privacy tab.
Short of turning off the system’s integrity protection (which you should not do) I assumed full disk access should work around the issue. Unfortunately I can find no documentation by Apple how to add an app to the whitelist manually once the
com.apple.macl attribute is set.
Let’s try to update the paths first and then figure out the macOS permissions issue afterwards. In your case it should be easy to update all the paths with one command if you follow the steps here. Based on your example above, you only need to update the username in the paths to your photos, so the SQL command would be something like this:
sqlite3 your-project.tpy "update photos set path = replace(path, '/Users/name 1', '/Users/namesurname')"
To be safe, please make a backup copy of your project file before you make any changes!
With the paths updated, Tropy should be able to find all your photos, so when you open the project the next time all photos that don’t have thumbnails yet should automatically start to consolidate when they come into view. However, this probably will still fail because of the file permissions. After opening the project and observing that the photos are not loaded successfully, could you check the log file – I would expect there to some kind of ‘permission denied’ errors there, which would confirm that the paths are correct.
If there are still the permission denied issues at this point, I’d try to remove the
com.apple.macl attribute. I suspect that this is not possible while integrity protection is on, so I’d turn it off temporarily or copy the photos to another disk, remove the attribute, then copy them back.
I have the impression that updating the paths really solves it all, every item I look at is now consolidated when i try and look at it. Thank you !
Hm, that’s odd. Maybe the auto-consolidation was failing for a different reason (though it should have figured out this simple path change!) or maybe the full disk access permission had not been granted when you tried earlier (i.e., Tropy had not restarted yet). Either way, glad it’s solved now!