{ config, lib, ... }: let secrets = config.services.secrets.secrets; in { services.rclone-sync = let sync_defaults = { serviceConfig = { after = [ "secrets-init.service" ]; }; timerConfig = { OnStartupSec = "60"; OnCalendar = "4h"; }; }; in { enable = true; user = "storage"; sync_jobs = map (x: lib.mkMerge [ x sync_defaults ]) [ # My B2 { source = "StorageBox:Backups"; dest = "B2-Chaos-Backups:"; } { source = "StorageBox:Photos"; dest = "B2-Chaos-Photos:"; } { source = "StorageBox:Music"; dest = "B2-Chaos-Music:"; } # Pheonix System's B2 { source = "StorageBox:Backups"; dest = "B2-Phoenix-Cryptidz-Storage:Backups"; } { source = "StorageBox:Photos"; dest = "B2-Phoenix-Cryptidz-Storage:Photos"; } { source = "StorageBox:Music"; dest = "B2-Phoenix-Cryptidz-Storage:Music"; } ]; }; }