From 01d5056050afc6555dd41f22317fcc6f86323330 Mon Sep 17 00:00:00 2001 From: oddlama Date: Sun, 14 Sep 2025 19:59:57 +0200 Subject: [PATCH] feat: enable immich backups to hetzner --- hosts/sire/guests/immich.nix | 5 +++++ .../restic-encryption-password.age | 10 ++++++++++ .../sire-immich/restic-ssh-privkey.age | Bin 0 -> 792 bytes secrets/global.nix.age | Bin 4029 -> 4078 bytes ...e61b06dc149fcbbce5a-restic-ssh-privkey.age | Bin 0 -> 768 bytes ...baff113b82c-restic-encryption-password.age | 8 ++++++++ 6 files changed, 23 insertions(+) create mode 100644 secrets/generated/sire-immich/restic-encryption-password.age create mode 100644 secrets/generated/sire-immich/restic-ssh-privkey.age create mode 100644 secrets/rekeyed/sire-immich/5b8d1fe7c6d2de61b06dc149fcbbce5a-restic-ssh-privkey.age create mode 100644 secrets/rekeyed/sire-immich/9ea5576c954efd7d17687baff113b82c-restic-encryption-password.age diff --git a/hosts/sire/guests/immich.nix b/hosts/sire/guests/immich.nix index 626bf7f..5cc6351 100644 --- a/hosts/sire/guests/immich.nix +++ b/hosts/sire/guests/immich.nix @@ -285,4 +285,9 @@ in }; }; }; + + backups.storageBoxes.dusk = { + subuser = "immich"; + paths = [ "/var/lib/immich" ]; + }; } diff --git a/secrets/generated/sire-immich/restic-encryption-password.age b/secrets/generated/sire-immich/restic-encryption-password.age new file mode 100644 index 0000000..8f4c167 --- /dev/null +++ b/secrets/generated/sire-immich/restic-encryption-password.age @@ -0,0 +1,10 @@ +age-encryption.org/v1 +-> X25519 c2Arf/NTVK5uLeZ+mxD732Ms5TsHW/zm01Pb1egA4CM +Ni+OxHdx8mszVKWxEwF/nDxllfj//qUN7IR5sxD2SmM +-> piv-p256 xqSe8Q A2+DxqK6HDEND/543bFsghX28ToxpdRlKkUoPV4NMBUf +/HDdqbUKq0ilSaJ4JV1qEqzoJfU4pS0/Hkh2Y6+8di0 +-> tyl-grease C=>s@N +pCdX+7GclQ8Kxb+9cXT4lpytQswpT3iPgpG+nUX8ZixWf05S9n3Cz548PCxKtpcz +Y/JIvVDUON8HPNJdLVfO2fxIU+vsXgY7JwYUDglT+lbDex7Hgn1OLL8 +--- gp1pi+8wn8FqNQSIaYeOJ6tNv0KRfgb58ncBhk3cQbc +6o-2ugx$˾=}.Y$v/KF_ݨ\ "0m iASIUDƂ \ No newline at end of file diff --git a/secrets/generated/sire-immich/restic-ssh-privkey.age b/secrets/generated/sire-immich/restic-ssh-privkey.age new file mode 100644 index 0000000000000000000000000000000000000000..3079e14244d88fe820be2f78d44047794e59e73a GIT binary patch literal 792 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 ssh-ed25519 08+xhQ vA/+Ym7LAmQgwY0fVd//0Vzm6fih4fEoasW4eZkqRAU +G6K8e1zyP7ij3t1VzkFraSlRSmCOpmx2LnI4PKwO1W8 +-> N-grease fe #\O> +kIiZ2LepyGLKHjZITaIWONrn58kztqkNDMWfaZHEhyMxXvdLTchUdaDv87WDmDoA +6RlVrktNkAs94lUK +--- xuygta2ttGi0xsJvvAIt4t8yZMZoejM7xi7tvdIf/Iw +ݐ@{}xi$4b?B5([N,%m.];PH4~^T?rv|]ϐZD \ No newline at end of file