X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=modules%2Fduply_backup%2Fdefault.nix;h=846b1d472a6c0fc8ca9c7c31034c0f77e2c28875;hb=4c4652aabf2cb3ac8b40f2856eca07a1df9c27e0;hp=88245a2a023f1933d5452732f38c9383e1f19602;hpb=64517bbc3f4210b30d5da03a3dbb85fe41de61b1;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/modules/duply_backup/default.nix b/modules/duply_backup/default.nix index 88245a2..846b1d4 100644 --- a/modules/duply_backup/default.nix +++ b/modules/duply_backup/default.nix @@ -75,19 +75,21 @@ in system.activationScripts.backup = '' install -m 0700 -o root -g root -d ${varDir} ${varDir}/caches ''; - secrets.keys = lib.flatten (lib.mapAttrsToList (k: v: + secrets.keys = lib.listToAttrs (lib.flatten (lib.mapAttrsToList (k: v: map (remote: [ - { + (lib.nameValuePair "backup/${varName k remote}/conf" { permissions = "0400"; - dest = "backup/${varName k remote}/conf"; text = duplyProfile v remote "${k}/"; - } - { + }) + (lib.nameValuePair "backup/${varName k remote}/exclude" { permissions = "0400"; - dest = "backup/${varName k remote}/exclude"; text = v.excludeFile; - } - ]) v.remotes) config.services.duplyBackup.profiles); + }) + (lib.nameValuePair "backup/${varName k remote}" { + permissions = "0500"; + isDir = true; + }) + ]) v.remotes) config.services.duplyBackup.profiles)); services.cron = { enable = true; @@ -99,7 +101,7 @@ in map (remote: [ '' touch ${varDir}/${varName k remote}.log - ${pkgs.duply}/bin/duply ${config.secrets.location}/backup/${varName k remote}/ ${action} --force >> ${varDir}/${varName k remote}.log + ${pkgs.duply}/bin/duply ${config.secrets.fullPaths."backup/${varName k remote}"}/ ${action} --force >> ${varDir}/${varName k remote}.log [[ $? = 0 ]] || echo -e "Error when doing backup for ${varName k remote}, see above\n---------------------------------------" >&2 '' ]) v.remotes