backblaze: skip auth if already authenticated

This commit is contained in:
Aly Raffauf 2024-08-22 11:49:27 -04:00
parent b528178ca6
commit 3aba9e75fc

View file

@ -11,9 +11,14 @@ in {
activation.backblazeAuthentication = lib.hm.dag.entryAfter ["reloadSystemd"] ''
${
if ((cfg.keyIdFile != null) && (cfg.keyFile != null))
then ''
XDG_RUNTIME_DIR=''${XDG_RUNTIME_DIR:-/run/user/$(id -u)}
run --quiet ${lib.getExe pkgs.backblaze-b2} authorize_account `${lib.getExe' pkgs.coreutils "cat"} ${cfg.keyIdFile}` `${lib.getExe' pkgs.coreutils "cat"} ${cfg.keyFile}`''
then
(
if !(builtins.pathExists "${config.xdg.configHome}/b2/account_info")
then ''
XDG_RUNTIME_DIR=''${XDG_RUNTIME_DIR:-/run/user/$(id -u)}
run --quiet ${lib.getExe pkgs.backblaze-b2} authorize_account `${lib.getExe' pkgs.coreutils "cat"} ${cfg.keyIdFile}` `${lib.getExe' pkgs.coreutils "cat"} ${cfg.keyFile}`''
else ''run echo "backblaze: Already authenticated."''
)
else ''run echo "backblaze: Missing keyIDfile and keyFile."''
}
'';