With a slight break in the action, here is how this is working. Nextcloud is the glue.
Virtual machines[enWP] (VMs) can be used to keep different users completely separate from each other, or to let different operating system run on the same hardware at the same time. I am doing both.
I have one user running my scanning softwares, because this system requires me to baby-sit it and tweak it as I scan negatives, process them, and store them to an external hard drive.
Another user is doing nothing but running a dæmon[enWP] which monitors the directory on the hard drive where the scans are being saved and synchronises it with a folder in my cloud.
But it is the third virtual machine which is doing magic. I am running a ‘flavour’ of Linux which is focused on multimedia creation, and in that I am using Shotwell[enWP] to manage, post-process, and edit the scans before uploading them to the web gallery. One of the reasons I like it is because it embeds metadata into the photo files using EXIF data, making that metadata portable with the image rather than held in the photo management software.
And this VM also uses my cloud, first downloading the images and then synchronising all the changes I make to them, giving me multiple back-ups. The cloud, too, is keeping track of all my changes in a revision history, which is cool but I have never had to use that feature to recover a previous version. Yet.
Finally, after adding tags and post-processing a little bit (straightening, red-eye, adjusting exposures sometimes…) I directly upload the images to the web gallery from within Shotwell – which is a one of the best features in my opinion. Because the metadata is portable with the file, all the changes I made go with the image whether that is a list of people in the image, the location where the photo was taken, or even modifying the date it was taken from the day I scanned it to the day it was really taken.
So, three VMs, two dæmons, one cloud, and PhotoNegs.