LibrePhotos: A Self-Hosted Google Photos Alternative
github.com
github.com
- https://github.com/photoprism/photoprism
- https://github.com/pixelfed/pixelfed
While I think photoprism has a very similar scope, pixelfed has stronger emphasis on federation. The project website gives a nice overview over different providers:
I guess it's a bit of a stretch but my preferred attitude is to be open minded and generally to cheer on the activitypub projects. They are, in the end, a force for good.
The Fediverse is the future, and the future is distributed.
I had never considered Pixelfed as a google photos alternative but am glad that something in the activitypub universe might be used that way.
Shortly thereafter, the site was "bombed" with uploaded pictures. I tore the whole thing down. Beware.
It doesn't have all the bells and whistles, no ML etc, but it's also much lighter. Running on my Synology NAS inside a docker container just fine (with ~30k photos).
I also heard about Mylio[1] which looks nice, but haven't tried it. Somehow the privacy policy left me a little more concerned compared to the bold promises elsewhere. The pricing model also feels a bit off to me.
Neither are open-source though.
The next release (I expect alpha builds to be available in a week or two) has album support: including automatic album importing from Google Takeouts.
https://forum.photostructure.com/t/support-for-manually-crea...
This next release is a biggie, btw:
What I miss in those solutions is the possibility to add text to your photos like it is done in Google Photos. The ability to give albums contextual background with a nice and simple typesetting is a key differentiator from the classic solution to keep picture files in folders (on-/offline). photoprism seems to have such functionality. The text, however, is associated to a photo, and not to an album like Google Photos.
How does it perform with huge collections? https://github.com/Webreaper/Damselfly claims staying fast even with 4+TB 500,000 photo collection.
Also, I just tried google checkout, and it took about 30 seconds to schedule a google photos only every-2-months-for-a-year recurring takeout of my data. We'll see if it actually works...if it does, it isn't so bad.
I did a full export (circa 8Gb) around 18 months ago and i have around 1,000 pictures of someone else’s in my archives. I suppose other people have some of my pictures too.
There’s a bunch of other small things that initially roused my suspicions that these weren’t my photos:
Whoever took the photos kept all the photos they took, there are sequences of 50+ photos of the exact same thing, I never save the extra shots, i always just choose the one i want to keep and discard the rest at import time.
It’s possible they were shared photos but my gut feeling is no. The photos date from around the time i was a heavy user of google photos, well i was a heavy user of picasa anyway and used gphotos as a backup. I would definitely have spotted these photos if they were in my collection back then.
Also Google Photos has a nice search feature with machine learning behind. I can search things such as "beach name of family member or "classic car" and it works.
AFAIK The only way to get the photos with all metadata intact is to use Google Takeout.
Run nightly
After multiple retries, it eventually succeeds but it's a manual process and using this for regular backups is extremely time consuming and frustrating.
Going through the process just once is definitely doable though :)
> This program uses the Chrome DevTools Protocol to drive a Chrome session that downloads your photos stored in Google Photos. By default, it starts at the most ancient item in the library, and progresses towards the most recent. It can be run incrementally, as it keeps track of the last item that was downloaded. It only works with the main library for now, i.e. it does not support the photos moved to Archive, or albums. For each downloaded photo, an external program can be run on it (with the -run flag) right after it is downloaded to e.g. upload it somewhere else.
Is there any documentation on the difference between this fork and the original project?
https://github.com/hooram/ownphotos/compare/dev...LibrePhoto...
I don't know if the original repo and LibrePhotos will permanently diverge (that appears to be the intention), but I like you am a bit confused at the necessity for a permanent fork and I'd like to know more too before committing to a version.
Maybe the two repo authors can come together and sync the projects since both are so closely related. Nonetheless, I hope there will be more information via a changelog or an outline with differences and intentions.
It's one of the more impressive projects I've seen to replace Google Photos so I hope there's a lot of transparency!
I think that's a terrible idea, disregarding the origins and removing an element of credit and attribution to the original authors. Be proud of where you came from, don't try to hide it.
Credit goes in the credits file, not polluting every interaction with the project.
Is there any way to run this (or one fo the alternatives) in a "Lite" mode without any ML?
I see that Photoprism has a ton of flags, but it's not obvious how those affect memory usage.
PhotoPrism's ML object detection is no doubt not as powerful as Google's, but it seems to work pretty well based on the demo, and I know the devs are working on improving it frequently.
The ML models I'm loading for the next version may take a bit more RAM than that, but (as most features with PhotoStructure), you'll be able to selectively disable them to taste.
This pernicious feature is adored in my family and they won’t consider options that would take it away.
Im on an older version of android and the live photos dont have the snappiness of Apple's, but that could be a processor power issue or even stylistic choice. Particularly the length of the live photo is noticeably different.
Im not sure how Apple stores the live picture info, but having it crossplatform would be fantastic for services like these.
That's when I thought I should look for a web based solution because that would also solve acessing and managing the lib from multiple devices, and now there's this post here. I guess before making another switch I should check out other solutions too and compare their feature matrix and how well those work. With digikam I noticed that it seems to overfit once you tagged a couple hundred faces of the same person, for example, and is less likely to identify that person in new photos.
Also I wonder how bad it is to accidentally assign the wrong tag to a person. I noticed that it happened three or four times, so I ended up having maybe 400 proper assignments and then one false tag. Could they even add a function to detect this?
The next thing for me would be to research which management tools support face recognition and what they use to do it. Anything using what digikam uses would not be worth trying to me.
I tried the demo on Firefox but I couldn't actually figure out how to upload an image to test it out. Firefox / Linux user.
Local directories (so mount whatever you want to that path) or NextCloud native integration
On a side note: I’m eager to see how much support for non-x86 architectures will grow with the introduction of the M1 chip.
Hmm, one could take out one's Google Maps Timeline info as JSON, and write a parser for librephotos (or others) that adds the location metadata into the photos.
Aspects that I think are important include the community of maintainers in addition to the current state of functionality
So far the setup was pretty easy on my VM but I kicked the tires with their VM image first. And so far the Android app is doing mostly OK. There is a lot to get into. And extensions out the wazoo.
I've not had to work with any community (yet) cause so far, it's just work - or there is some config I need to tweak (docs are great!)
With their VM and docker images tho, super easy to kick tires.
I haven't used PhotoPrism, but wanted to toss it out there as an alternative.
This builds the thumbnails in the background. I think it used to get triggered on upload but says it needs a cronjob now. Works OK on a folder of 40GB of photos.
What I still find irritating about photos in nextcloud is I keep mine in high resolution but nextcloud won't downscale them to fit the viewing device screen, so I use 20mb a photo with all the UX impairment one might imagine when actually a few kB would do. It'd be nice if it cached light, fullscreen versions and offered a "view in full resolution" button.
Yes, I have no idea what they don't do this. This makes the gallery barely usable.
More info: https://docs.photoprism.org/user-guide/settings/advanced/#im...
Maintenance has been zero, aside from when I want to add functionality.
My only feature gripe is that gPhotos has a wonderful "archive photos" feature to delete local copies of media already uploaded. You can still see uploaded photos (thumbnails stay local) and any interaction with them stays "as if local", there's just a delay while it downloads a temporary copy. I wish nextcloud had this capability.
Photoprism is also somewhat unique in that it uses Darktable to process RAW photos, so if you use Darktable and have it write XMP sidecars, Photoprism will be able to process the adjustments.
For more curated collections, I prefer Piwigo, as it has a mode where it converts a directory tree into an album tree. It also has pretty good sharing features. Photoprism on the other hand is horrible for pre-curated photos.
[1]: https://piwigo.org/
So if we are talking a just about a few hundred MB of photos, you are probably fine, but for anything larger I would recommend to consider one of the more specialized projects.
while this seems more featurefull, I wonder if I'd use them.
Are face detection models on the iPhone not run locally? Do they take up this much space on-device? Multi GBs just seems “large” for this?
There's no reason why the lessons learnt here couldn't be incorporated into an OS project.
Rendering correctly-scaled images is a different issue: Google Photos renders the image to the precise viewport dimensions (which is why it takes sometimes a couple seconds to render).
When I designed PhotoStructure, I knew I wanted everything to show instantly, so resizing is done to several common viewport sizes at import time (and these sizes are customizable). When you're browsing your library, your browser fetches the smallest variant that will still show with high quality based on native display resolution.
I'll test this out and report back.
* installation was ok, but I had to reach out to the discord channel to be able to configure it properly * started to index the photos; at 16480 photos (After about 1h) it stopped progressing with no error message * for the photos that are listed as indexed, when going to the gallery, there are no thumbnails * it appears that there is no metadata being indexed for those photos either
In short, this is not ready for prime time yet
I currently run PhotoStructure what works ok with indexing, but has other gaps (no tagging, face recognition, etc..)
Local face recognition, if it doesn't make it into this release, will be in the following release: most of the detection, aggregation, and backend storage is already implemented in my feature branch.
Please vote for features you want on the new forum! https://forum.photostructure.com/c/feature-requests/7/l/late...
What I'm looking for is Lightroom-album style tagging (keyword and star-rating) that I can apply to photos manually - I dont' have my archive tagged in anywhere, and I need to do that somewhere
I'm thinking about biting the bullet and import everything in Lightroom just to get tagging :(
I have been following it since release of OwnPhotos. Back then it was a messy university project of the original developer mixing different tech to achieve the goal. It simply stopped working with bigger sets of images.
I tried this fork as well, it has the same problem. Normally I would provide some pull requests but in this case the code base seemed too much hacked together from random things.
What doesn't work is the backend indexing part.
The one thing I wished was that the ML Classification stuff it did was better - because it was nowhere near as good as what Google does with Photos, and nowhere near as useful for that reason. I still deeply miss Google Photos.
For context, my setup is pretty old fashioned these days. I plug my phone in, and use Shotwell to import the photos into my local photo library. Duplicati does a backup of all my photos once a week to Backblaze. Photoprism reads from my local copy and allows me to effectively browse my photos at home.
Has anyone figured this out?
https://github.com/icloud-photos-downloader/icloud_photos_do...
Most NAS providers (like Synology and QNAP) also have native sync apps.
It's good to have options so if one gives you attitude, you can switch it out.
I wrote up more details here: https://photostructure.com/faq/how-do-i-safely-store-files/#...
This is a bit much for a home cloud installation, but I could see it becoming what Invidious is to YouTube.
Of course you could setup TLS and FDE but this doesn't guarantee that your data will be safe.
Likewise setting up FDE means your data is encrypted on the server.
> but this doesn't guarantee that your data will be safe
I don't get what you're trying to get at here. If you're taking about bugs compromising the encryption then I guess this applies to practically every software out there making this a moot discussion.
It's easy to criticize, but huh, if this were a commercial product, a manager would be complaining to the appropriate team about how crappy the demo is. The Github page says the app has "slight focus on cool graphs" but the demo's "Data Viz" section is completely empty. EDIT: Oh not completely empty, the face recognition library has data.
I'm interested to see my frequency of photos per day/week/month, etc, so if I want to try that out I would have to install the whole thing locally.
When publising curated photo-sets myself (<1k pics per feed), I use a static-site-generator approach https://notabug.org/mro/Photos2Atom and rather sacrifice features but long-term robustness and installability.
If I could get that from a self-hosted option, given Google's... track record... I'd definitely be interested, though it doesn't seem this is quite there yet.