I would like new images to be uploaded to Immich from my phone and deleted after 30 days automatically, so I was thinking about this flow:

  1. I will Sync files to the server using Syncthing

  2. I will Copy files from the Synced folder to an Immich Consume folder, (not sure how to copy only new files (maybe use created date)). Then delete images that are older than 30 days which will remove them from my phone.

  3. I will upload to Immich using Immich CLI (?) which will use the delete after upload flag.

Basically:  

(1)

Camera, Screenshots, etc =Syncthing=> SyncthingImageConsume/{Folder}

(2)

{Script on SyncthingImageConsume}

SyncthingImageConsume/{Folder} =CopyNewFiles=> ImmichConsume/{Folder}

Then delete older than 30 days.

(3)

{Script on ImmichConsume}

Upload to immich and then delete

 

would this work? and is there a better way to do it? any tips?

@couch1potato@lemmy.dbzer0.com
link
fedilink
English
2
edit-2
6M

I just set up something similar a couple weeks ago because I wanted to upload named album folders as albums into immich.

Workflow is:

Syncthing to sync phone folder to folder on unraid server.

2nd syncthing instance to sync above folder to “photo albums” folder.

Immich-go cron job runs hourly to upload photo albums folder to immich

I used immich-go because the CLI upload with album tag kept failing and apparently it’s a common issue so… ¯\_(ツ)_/¯ immich-go worked first try.

Now all my photos are uploaded as albums with no manual input:

@Mir@programming.dev
creator
link
fedilink
English
26M

Thank you. First person to not advise me to use something other than immich for this. And thanks for the heads up about the CLI, can you share the upload script?

@couch1potato@lemmy.dbzer0.com
link
fedilink
English
1
edit-2
6M

Sure… I’m on unraid…

cd /mnt/user/appdata_docker/immich/immich-go
./immich-go -server=http://192.168.20.1:8080 -key=IMMICH_API_KEY upload -create-album-folder -when-no-date=FILE /mnt/user/photo_libraries```


![](https://lemmy.dbzer0.com/pictrs/image/5155dc7f-1545-4e07-b7ec-4721e5fec43a.jpeg)


There are other flag arguments that may be applicable to your use case... I'd suggest finding immich-go documentation on github and reading. It's not that intense of a read.
@Mir@programming.dev
creator
link
fedilink
English
16M

Can you tell me about the syncthing set up, how do you have the folders set up to sync?

for instance I have DCIM with folders inside it, do you sync the whole folder or for each folder inside it like “Camera, Screenshot” etc?

A picture if that makes it easier

I created a specific folder to move family photos to that syncs with the server, because i use my phone for work pictures too and I don’t want those to end up on my immich timeline. So I manually move photos to that folder, but that’s the only manual intervention for me.

I set up the album handling the way I did because my wife spent a lot of time sorting stuff into folders and she wanted the organized folders to carry over to immich.

I do separately sync the DCIM folder to server with syncthing as well, just as a backup, but those don’t go to immich.

So for immich destined items it looks like:

  1. Manually move pics to phone “family photos” folder

  2. Syncthing-ext syncs phone folder “family photos” to server folder “syncthing_folders/my_family_pics”. (Also syncs phone folder “DCIM” to server folder “syncthing_folders/phone_pics_backup”)

  3. Syncthing-int (second syncthing instance on different port, so syncthing-ext and syncthing-int see each other as different devices and can work on the same folders) syncs server folder “syncthing_folders/my_family_pics” to some other designated server folder to work with immich… for example “photo_libraries/my_family_pics”

  4. The script I shared runs on server folder “photo_libraries/”

It’s set up this way because I have syncthing-ext syncing with a bunch of external devices and this way i can funnel just the photo folders into one photo library folder to run the script on.

If you have more questions it’s cool… I never get to talk about this stuff with anyone who appreciates it 😶‍🌫️

@Mir@programming.dev
creator
link
fedilink
English
1
edit-2
6M

Thank you so much, perfect explanation.

Do you keep the stuff on your phone then? how does syncthing handles deleting if you’re deleting? did you set up the folder as send only?

I’m working on setting it up for me to do so:

  1. Manually move some pics on my phone to “Inbox” folder (To be sorted in albums later)
  2. Syncthing will automatically sync “Inbox” and “Camera” folders to “Syncthing Consume”
  3. A job to copy from “Syncthing Consume” to “Immich Consume”
  4. Immich Go will move everything to Immich
  5. Anything in the Inbox Album will get sorted to different albums at some point
  6. Eventually anything that isn’t synced will be removed from my phone

Yeah the phone folder is send only and the server syncthing-ext folder is receive only.

I never really find myself deleting stuff because I don’t take that many pictures/videos, but my wife is the one always running out of space. I’ve told her when she sees her album in immich it’s safe to delete from the phone.

I’m not sure how you’d automate deleting stuff while making sure you’re not deleting items that haven’t been sent yet… but, it’s not really something I’m interested in because I don’t have the need.

Another good practice (at least I’d like to think so), my syncthing-int which sends everything to /photo_libraries also sends everything to two other backup folders that are pinned to separate discs. So if I have a drive failure or multiple drive failures I’d still have a copy of all the photos/albums.

@Mir@programming.dev
creator
link
fedilink
English
1
edit-2
6M

I’m not sure how you’d automate deleting stuff while making sure you’re not deleting items that haven’t been sent yet

Yeah this will be very tricky, I’m thinking if I got over the initial push to Immich, I just delete manually from my phone when I see things have already moved to Immich and I don’t need it anymore.

Another good practice (at least I’d like to think so), my syncthing-int which sends everything to /photo_libraries also sends everything to two other backup folders that are pinned to separate discs. So if I have a drive failure or multiple drive failures I’d still have a copy of all the photos/albums.

I will do that to ensure I’ve backed everything up somewhere in case an Immich Failure.

Create a post

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.

Rules:

  1. Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it’s not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

  • 1 user online
  • 370 users / day
  • 584 users / week
  • 1.25K users / month
  • 3.86K users / 6 months
  • 1 subscriber
  • 3.73K Posts
  • 75.4K Comments
  • Modlog