Re: Using Digikam in a Linux/Mac/Windows environment
Maik Qualmann <[email protected]>
| Newsgroups | gmane.comp.kde.digikam.user |
|---|---|
| Message-ID | <[email protected]> |
To keep it brief, it's very easy to create different base collection paths for different operating systems. First, set up a network collection on one operating system (it doesn't matter which one). For the other operating systems, simply add (append) another path to the ! existing one ! using the plus button in the digiKam collection settings. https://docs.digikam.org/en/setup_application/collections_settings.html#setup-root-album-folders Maik Am Mittwoch, 12. November 2025, 20:37:04 Mitteleuropäische Normalzeit schrieb Jack Haverty: > For the usual reasons, our IT environment contains a mix of computers > including Linux, Mac, and Windows desktops. Digikam runs on all those > devices, so I've been figuring out the logistics of making it all work. > Success! I figured I'd write it down in case someone else is trying to > do the same thing. > > We have one machine (happens to be a Mac) which is the "master" Digikam > machine. The actual photos all live on a NAS, which is configured as a > network collection. All changes (adding new photos, tags, etc.) are > made on the Mac. The 4 database files on the Mac (Digikam's .db files) > are then copied to each of the other machines. I use Syncthing to make > that easy and automatic. > > On each other machine, the goal is to make it possible to use Digikam to > search, retrieve, and use the Digikam database, but not to make any > changes such as adding photos to the collection or changing tags etc. > All changes are done on the master Mac. > > The challenge hs been dealing with the differences in naming conventions > on Windows, Mac, and Linux. > > I tried various approaches with the "network collections" features of > Digikam, but didn't succeed. On the Mac, the network collection was > acessible as "/Volumes/photo". On Linux, I could easily mount the NAS > photo folder as /Volumes/photo as well, so the Linux Digikam could find > photos using the Mac database settings. > > On windows however, I could mount the NAS photo collection as a virtual > disk (I used P: to indicate Photos). But there was no obvious way to > create a link from /Volumes/photo to P: -- Windows uses \s, but Mac and > Linux like /s. I tried, on the Mac, adding a path to the photo > collection for "P:\" but it wouldn't let me do that on the Mac. > > ChatGPT gave me the answer, and it actually worked! The steps are: > > On each Windows device running Digikam: > > 1/ Mount your NAS photo store as a virtual disk (I used P:), and set it > to reconnect when you log in so it's always accessible > 2/ Using the command line, as Administrator, create a link -- "MKLINK /D > "\VOLUMES\PHOTO" "P:\" > > Result - Digikam on Windows, using the database copied from the Mac, can > successfully access the photo files from the NAS. > > This works, at least for now, because Windows apparently treats \ and / > as equivalent when trying to find a file. So /Volumes/photo (from the > Mac database) gets used as \Volumes\photo (on Windows). > > ChatGPT pointed me to several other ways to approach this problem. One > way was to use a database on the LAN rather than on the Mac. I could > run MySQL, MariaDB, or such on the NAS, and keep the Digikam database > there, but I'd rather not complicate the picture with another device > needed to use Digikam for basic searching and browsing. I also wanted > to avoid problems with situations such as multiple machines > simultaneously using the database, or "browsing" clients able to do > things like change tags thath the master put in. > > There was another option to directly edit the Digikam database file to > add the Windows path directly, bypassing the checks that prevent adding > things like "P:\" while running on a Mac. But that seemed risky and > might be undone by some future release of Digikam. > > I tried using the new "Remap" feature of Digikam. That works but only > in the case where each Digikam installation keeps its own database. > That's useful but not compatible with the approach of keeping a "master" > database on some particular machine. > > If anyone's interested, my full conversation with the AI is here: > https://chatgpt.com/share/6914da04-f3ac-8001-a52b-a68562611b25 > > There is still one quirk which can be worked around. > > Whenever Digikam runs, it apparently changes something in the database > files. So when I run Digikam on a Windows (or any) desktop, the local > database files are modified. Syncthing tries real hard to avoid losing > data, and the locally modified database files will not be overwritten > when the "master" files on the Mac are changed. > > It's easy to tell Syncthing to "Revert Local Changes" which makes the > master files overwrite the local ones on the Windows (or Linux) > machines. But you have to remember to do that to avoid working with an > old Digikam database that won't have photos, tags, etc., from the latest > updates on the master. I could also solve that problem by avoiding > Syncthing and just using rsync to force a copy of the master to each > other machine where Digikam will run. > > Anybody have a better way...? > > /Jack > >