this post was submitted on 18 Sep 2025
20 points (88.5% liked)

Selfhosted

51556 readers
188 users here now

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!

founded 2 years ago
MODERATORS
 

So I started the Google Takeout process because I want to move my photos from Google Photos to Immich.

Google emailed me saying the archives are ready... uh... I have to download 81 zip files, each 2GB big... 😬

Is there an easy way to download all of these files? Or do I have to click "download" 81 times and hope the downloads don't get interrupted?

you are viewing a single comment's thread
view the rest of the comments
[–] taxon@lemmy.world 2 points 1 day ago (1 children)

This worked pretty well for me, although constructing the cli command took a little elbow grease. This video proved to be very helpful.

Here's the commands I ended up using:

Testing Upload Process

Before performing the actual upload, test the process with this command:

immich-go.exe -server http://[server.ip:port} -key [put your apikey here w/o brackets} upload -dry-run -google-photos takout-*.zip

Actual Upload

Once testing is successful, perform the full upload:

immich-go.exe -server http://[server.ip:port} -key [put your apikey here w/o brackets} upload -google-photos takout-*.zip

Remove Duplicates

If you've previously uploaded photos before syncing your phone, remove duplicates with:

immich-go.exe -server http://[server.ip:port} -key [apikey} duplicate -yes
[–] paequ2@lemmy.today 1 points 1 day ago

Remove Duplicates

Excellent! This is my next question.

I've already partially synced my Google Photos library by installing Immich on my Android phone and enabling Immich backups. But I see that the oldest photo in Google Photos is way older than what Immich has.

So now I'm worried that when I run immich-go with the full takeout archives, I'm going to get a ton of duplicates because half of my library is already on immich.

What's the duplicate command? I can't find it in the CLI...

$ immich-go duplicate --help
Error: unknown command "duplicate" for "immich-go"
Run 'immich-go --help' for usage.
unknown command "duplicate" for "immich-go"

$ immich-go  --help
An alternative to the immich-CLI command that doesn't depend on nodejs installation. It tries its best for importing google photos takeout archives.

Usage:
  immich-go [command]

Available Commands:
  archive     Archive various sources of photos to a file system
  completion  Generate the autocompletion script for the specified shell
  help        Help about any command
  stack       Update Immich for stacking related photos
  upload      Upload photos to an Immich server from various sources
  version     Give immich-go version

Flags:
  -h, --help               help for immich-go
  -l, --log-file string    Write log messages into the file
      --log-level string   Log level (DEBUG|INFO|WARN|ERROR), default INFO (default "INFO")
      --log-type string    Log formatted  as text of JSON file (default "text")
  -v, --version            version for immich-go

Use "immich-go [command] --help" for more information about a command.

$ immich-go version
immich-go version:0.27.0,  commit:64221e90df743148a8795994af51552d9b40604f, date:2025-06-29T06:22:46Z