57 comments

[ 4.1 ms ] story [ 63.6 ms ] thread
There's a lot of things I spent a ton of time setting up, use once, and then never again. Tons of things that are easy to set up, and provide small benefits every day for a long time. Immich has got to be the thing that I've spent ages setting up, use extremely infrequently but the one time a year I use it I'm so happy I did. Great software.
In my case I spent it not so much time setting it up, some time upgrading with some manual work required from time to time with breaking changes (but not so often) and I use it weekly, it just works and it's wonderful.
I don't want yet another self hosted service to manage (update, backups, possible hardware failures, energy costs, ups, etc.).

Unfortunately Immich is not end-to-end encrypted. If that would have be the case i'd use https://pixelunion.eu/

Seems like a great app though. So... i'm still pondering what to do :-)

There are simpler options now to self-host these kinds of apps. It's not that hard anymore
Does Immich support read-only source folders yet? I'd like to keep the original files intact, but allow Immich to index them.
Immich is an amazing software. I use it regularly as an alternative along side Google photos. I keep in it large videos that I wouldn't upload normally to Google photos + the snappy experience at home vs Cloud-Bades solution.
Does anyone have any pointers on the best way to import roughly 14 Google takeout chunks into immich?

I've downloaded all the chunks once, only to find them corrupted due to... Their 50gb size and using a browser in theory. One also cannot seem to use wget or alternatives because of the auth / session cookies required via Google takeout.

I've yet to even broach the aspect of importing each giant bundle into immich because I've not had success in even grabbing the takeout files correctly, but would LOVE pointers on the best way of importing the roughly 700gb into the database without it ALL going wrong.

I've had great success with immich running in docker for the past year or so, although I have yet to upgrade to the newest version. Google photos backups have been disabled on my phone for a year or so, but I yet to haul in all of the past years.

Also, anyone know if I can get immich to upload the photos without... Running immich once in a while? Would be great if it just automatically sent them to "my cloud".

Great software.

> Also, anyone know if I can get immich to upload the photos without... Running immich once in a while? Would be great if it just automatically sent them to "my cloud".

See the release note that this HN thread links to ;-)

>>> Background backup improvements Background backup on Android is now significantly more reliable. Previously, the background backup on Android was limited to newly taken photos. Now, the app uses a new periodic task scheduler, which allows you to upload your entire library in the background, and it plays nicer with Android's background execution limits, properly cleans up tasks, and warns you when battery optimization and notification settings might interfere with backups.

On iOS, the background refresh task now runs its sync and upload work in parallel, so uploads actually start within the short time window iOS allows.

When I was switching to GrapheneOS from iOS, I decided to self host my photos. I considered Immich, but I settled on Ente because of the encryption. Ente Photos is extremely polished and it's comparable quality to Apple photos.

It's cool they keep the server open and selfhostable instead of only open clients like many e2ee projects do.

I like how you can share an album and anyone can contribute to it without an account. Another cool feature is that you can select photos to lock when you hand your phone to somebody so they can only see the ones you selected without your device unlock.

Has the ios photo sync gotten better? I've got 20k photos on my phone, and last I tried it filled up the storage on my phone with the originals, and never completed the process, even after leaving my phone open, unlocked, and the immich app running in the foreground for several days, on the same local network as the server.

I know they were working on it, but haven't kept up, I just want to know if it works better now and I should try again.

The release notes says:

> On iOS, the background refresh task now runs its sync and upload work in parallel, so uploads actually start within the short time window iOS allows.

But I don't know if that fixes your issue.

Sync was already fixed in the last major version, at least for us (android and iphone)
I have a largish library at about 400gb. I synced it completely using the mobile app. It took a few months (it just finished in early June) but it’ll eventually do it. I know there are other ways but I figured this was the laziest way to do it.
Immich is such a no-brainer replacement for Apple Photos or Google Photos, combined with VPN like Tailscale, it's almost a drop in replacement
I’ve been using photoprism. Should I switch?
Immich is amazing, been using it as a backup since my phone is always full
I got annoyed with Immich and external storage, because in order for every user to have their own facial recognition data on a large set of photos, you have to add the folder as external storage for each user, which means image previews for each user, even though the source image is the same. So if you have 3 users, you use up 3 times the space for the same thumbnail image.

It got to where I had 20% of my space was just thumbnails for each user, even though it was one set of images in the external storage.

Maybe that's changed recently.

I don't think that has changed, but AFAIK is on the Roadmap. Or at least they talked about it.
So many comments here about missing end to end encryption, but seriously - why would anyone want this?

Lets say burglars break in and steal your homelab. Because you don't have e2ee, they can see all the photos you saved of your dead grandmother! Oh no!

Or, in the more likely scenario that something happens to your phone, the lack of e2ee means that even if you lost your keys you didn't lose the only memories that remain of your grandma - you just copy across the .jpgs to a new device.

I think the application layer is the wrong layer for encryption for immich anyways, I just encrypt the whole disk on my server. When _self_ hosting, there's no need to prevent access to files from the operator.
To me there are two good products: Immich and Ente.

* Immich doesn't have end-to-end encryption, so I see it for self-hosting (i.e. on hardware I trust, typically at home).

* Ente has end-to-end encryption, which means I can host it on a random VPS.

Two different requirements for two different setups. E2EE adds some complexity, typically to set up a backup somewhere accessible. The fact that I have an unencrypted SDD next to my server at home that my family can grab and access photos is a feature to me: if I disappear I want them to be able to access them.

You seem to be mixing up e2e encryption with at-rest-encryption?

If you have a server in your homelab where you self-host I mich just encrypt the hard drive with LUKS.

Agreed. It's especially frustrating to read of extremely high standard (even though justified, I'm not suggesting it's OK to have a subpar experience) while most people just share everything and anything on Facebook, TikTok, SharePoint, etc and have no idea what permissions even mean.

So... yeah, sure, e2ee and encryption and all that but don't wait on perfection when the otherwise situation is pretty dire. It's only encroaching BigTech fueled by surveillance capitalism even more!

I agree, we used to have photo albums in cupboards, and they used to get burnt if the house burned down, or water damaged if the boiler broke, or even stolen. Now we have them digitally and we can back them up off-site. That's all the change I need with immich.

To fully encrypt them would just be inviting more problems.

Privacy extremists are always very vocal but most people do not care at all about this.

Maybe people have pornography production streams they want to manage using Immmich?

I just want to be able to share my hosted service with other people and not have the responsibility of being able to access their photos. Me or anyone that happens to gain access to my server.
I want to host an instance for me and my family. Right now we have a Google One instance shared by 5 people. Having e2e means my family members can rest assured that I or whoever I share admin rights with cannot look at their private photos. It's an important enough feature even without thinking about 3rd party bad actors.
>So many comments here about missing end to end encryption, but seriously - why would anyone want this?

I trust GrapheneOS's security 10x more than my server. Why would I want encryption on messaging, if it's 'just for messaging my grandma'. My data is important to me and I want to keep it secure, even if I don't have a high threat model. E2ee should be the baseline, there's no reason to make security worse on purpose. Encryption in this case is important because it allows defense in depth, it allows others to know their photos are private when using my server and it prevents data access if someone has physical access.

Why trust two devices when one trust one device do trick?

> Or, in the more likely scenario that something happens to your phone, the lack of e2ee means that even if you lost your keys you didn't lose the only memories that remain of your grandma - you just copy across the .jpgs to a new device.

Yes, that's what happens when you lose your keys with e2ee. Every e2ee service is like this. Apple photos, Ente photos, Signal. If I couldn't manage a few words, why would I trust myself to manage a whole server?

You know why. I know why.

The people who care about this disproportionately collect distasteful media and would be in criminal proceedings if their material was uncovered.

I have no idea, I use wireguard to access it. I have disk encryption setup. They'd need to hack my linux server SSH which I have protection turned on to shut it down after failed attempts. It would be a challenge to get access to my photos on disk. They could steal my phone and access through the app if they could get them all before I disabled access since Im using encrypted icloud account.

In the end who would want all my photos for that amount of work lol?

Immich is the best self-hosted app I use. Hats off to the developers!
I wish they would better support external image sources - images not uploaded/managed by Immich, just a folder of images it has access to - especially if it's read only. It mostly works, but the UI and logic breaks in a lot of little ways.
I have come to the realisation that I don't need 10,000 photos. I probably need < 100. I will print them and keep them in a paper album...

Which I am yet to do...

Does it have image editing tools like rotate and crop and is it aware of basic exif metadata?
I have a different bash with them than the lack of E2EE: they do not make it easy to import from other servicesvlike Google Photos or iCloud, which should be a priority.

They rely on immich-go project, which is ridden with bugs and basically abandonware by now. Their own iOS app, which can also be used for syncing iCloud gallery, has outstanding, 2 y/o or so bugs that will fail to upload the Live Motion photos.

My photos exported to Immigh have some 9000 broken, half imported Live Photos and I just don't have time to fix that.

The fact that THIS is not their priority, the most comprehensively A-B tested feature is beyond me. Who cares about OCR if you can't trust that they didn't butcher your imported memories? I just don't get it!

An incredible piece of software, on par with Google Photos. I've been using it behind Tailscale for months with no problems ever since I first got into homelabbing.

Actually, moving from Google Photos to Immich after I hit my 100GB storage limit was the whole reason I got into self-hosting, and what a fun ride that has been!

I can't believe self-hosted products of this caliber are free. Huge shout-out to HomeAssistant, PiHole, paperless-ngx, Dawarich, and countless others for the same reason.

Congrats to the team on the release and thank you for helping me catalogue my personal memories

Has anyone personally upgraded to 3.0? How is the experience?
(comment deleted)
A lot of people talking about encryption in the comment section, thought I would share my setup. I have been running Immich for family and friends on a Hetzner auction server for about 1.5 years now.

Hetzner community provides official full-disk encryption documentation:

https://community.hetzner.com/tutorials/install-debian-with-...

Letsencrypt gives free reliable SSL. You can easily hide Immich behind Nginx proxy that handles SSL for you.

Add cron based automated backup of the entire Immich data to a local encrypted NAS and there you go. Reliable, end-to-end, encrypted at rest setup. So far, it required exactly 0 maintenance.

It’s also more secure because I just drop traffic from all but 3 geographies at the IP level. And you can also add a WAP on the Nginx proxy.

It is also more more secure than Google/iCloude because the „employee of the company“ attack vector is much smaller. It’s documented that Google looks at your photos and is perfectly happy to file false police reports: https://www.eff.org/deeplinks/2022/08/googles-scans-private-...

By comparison, yes it is theoretically possible for Hetzner employees to access my server physically and extract the encryption key from RAM, or setup a fake SSH server to try to steal the key, but that is far more complicated attack and hasn’t been documented yet. And it risks detection.

How does the mobile app sync work with Immich? My use-case is that I want to install the mobile app on the phone of my relatives (including iPhones), and it should keep syncing their pictures "forever" even though they never, ever open the app.

I tried Nextcloud, but the apps/server end up failing to sync after at most a couple month, and it's painful to recover from that. So it doesn't work for me.

I have been considering Immich and Ente, but I would love to know if somebody has experience with that.