Nextcloud app. It works alright.
On iOS it’s a different story though… (my wife has an iPhone)
I used nextcloud as well, switched to Immich when I got an iPhone though
Can I ask what doesn’t work with Nextcloud to your expectations? Just sounded like “works alright” implies something is off from what you’d like. I am asking because I have recently set this up for myself and haven’t noticed any issues yet. Well apart from a recent issue with one of the latest app updates crashing those auto uploads.
The sync on Android itself is pretty stable. Every now and then it throws errors about not being able to sync but those could be because of bad reception.
The Nextcloud app on Android has another weird error for me. It doesn’t show the content of a notification (like “Update for app xyz available”) but “NEXTCLOUD_NOTIFICATION”. I tried to resolve it using different approaches from the internet but it followed me even to a new phone. I just gave up for the time being.
The sync with iOS is somewhat bad. To get all the images from my wife’s phone to the cloud I have to plug it in, deactivate screen timeout, and open the app. Sync will stop once I close the app.
Last but not least compared to iCloud/Google Photos watching and browsing the photos on a device is just way slower. I understand why that is but in the end it’s just an annoyance making the switch harder for people in my family. They understand why I am passionate about selfhosting and privacy but they still have a reasonable expectation that things just work.
All in all nothing really severe. Little annoyances along the way. I am still quite happy with the solution all in all.
Thanka for elaborating so detailed! I can mirror your concerns, seeing mostly the same issues like slow browsing of images. But overall I am ok with this too.
I’ve been using Immich. It has been getting better with every update.
I heard good things about immich
I use self-hosted Immich with their Android app. You can also use PhotoPrism with PhotoSync.
I use foldersync and sftp
Syncthing.
App on the phone and host on the server.
But syncthing deletes images when they are deleted on the phone right? I just tried it, and this is what seems to happen. Is there a way to set it up such that I can delete things on my phone, but they won’t be deleted on the server?
https://docs.syncthing.net/users/config.html
Adjust the config settings:
sendreceive The folder is in default mode. Sending local and accepting remote changes. Note that this type was previously called “readwrite” which is deprecated but still accepted in incoming configs.
sendonly The folder is in “send only” mode – it will not be modified by Syncthing on this device. Note that this type was previously called “readonly” which is deprecated but still accepted in incoming configs.
receiveonly The folder is in “receive only” mode – it will not propagate changes to other devices.
receiveencrypted Must be used on untrusted devices, where the data cannot be decrypted because no folder password was entered. See Untrusted (Encrypted) Devices.
Yeah, I have the folder on the phone on sendonly. But this sends also deletions to the server, apparently.
Ignore delete is a folder feature that you can set on the receiving folder.
Yup, it’s not a good solution.
Look into Foldersync, PhotoSync, Nextcloud, Immich. They all work how you would expect where photos are backed up, and you can then remove them from your device if needed.
Termux and rsync
I use Resilio Sync. It uses a modified bittorrent protocol. You don’t need to open any firewall ports or anything like that… Really simple to get going.
This is a sync took though. Replication is not the same as backups. This may or may not be for you depending on the goals.
I fairly recently setup FolderSync to monitor my pictures folders and sync them to my server via ssh as soon as new images show up. I then set it up to sync everything else on the device on a schedule.
I’m using ssh, but you can sync between any folders through ssh, ftp, smb, dropbox, google drive, and many other cloud services. Local>cloud, cloud>cloud, cloud>local, and even bi-directional.
Android ftp apps never work. It’s also a huge pain and borderline impossible on some distros to get mtp over usb cable to work and even when it does work it barely works. Most phones don’t have an sdcard slot so you can’t go that route either. And I’m definitely not using Google drive because they’ve on purpose tried to make it impossible to go any route other than that and fuck Google.
My solution? I made a php page with a file upload so I have to upload my files via php. It’s the only way. It’s still easier than using the USB cable if it actually worked though. Luckily there’s no way Google will ever find a way to patch this out. Transferring files to the phone involves putting my files in a folder with a php script that autopopulates download links onto a page so I can download them via browser.
Nextcloud. Auto uploads any new files from specified directories to my server.
I use https://github.com/nirajsanghvi/docker-gphotos-sync, which is a fork of Jake Wharton’s Docker wrapper with an extra option baked in to prevent redownloading previously downloaded files. It relies on the gphotos-cdp tool which uses the Chrome Dev Protocol to headlessly browse the Google Photos site and download your photos one by one. The reason for this, assuming you store your photos in Google Photos, is it’s one of the only ways to get your photos in their original quality and also retain EXIF information (Google Takeout loses the EXIF info).
A warning though, it can be quite finicky to setup, particularly with obtaining your account cookie for the first run. In the past it’s taken me several attempts before success. However, once it’s running it’s pretty reliable with an occasional stall requiring a container restart (there’s issues for this on the parent repos, but they were complicated problems to solve so they’re still open, and occasionally needing to restart the container when the healthcheck fails hasn’t been too bad).
Rsync
Synology Photos.