nixfiles/hosts/hetzner-arm/containers/storage/profiles/rcloneSync.nix

90 lines
2.1 KiB
Nix

{...}: {
services.rclone-sync = {
enable = true;
user = "storage";
syncJobs = map (syncJob:
syncJob
// {
serviceConfig = {
after = ["auto-secrets.service"];
wants = ["auto-secrets.service"];
};
timerConfig = {
OnStartupSec = "120";
OnCalendar = "4h";
};
extraArgs = [
"--fast-list"
"--check-first"
"--delete-before"
"--b2-upload-concurrency=4"
"--transfers=4"
"--bwlimit 80M"
];
}) [
# My B2
{
source = "StorageBox:Backups";
dest = "B2-Chaos-Backups:";
id = "chaos_b2_backups";
}
{
source = "StorageBox:Photos";
dest = "B2-Chaos-Photos:";
id = "chaos_b2_photos";
}
{
source = "StorageBox:Music";
dest = "B2-Chaos-Music:";
id = "chaos_b2_music";
}
{
source = "StorageBox:Personal";
dest = "B2-Chaos-Personal:";
id = "chaos_b2_personal";
}
{
source = "StorageBox:Public";
dest = "B2-Chaos-Public:";
id = "chaos_b2_public";
}
{
source = "StorageBox:Media";
dest = "B2-Chaos-Media:";
id = "chaos_b2_media";
}
# Pheonix System's B2
{
source = "StorageBox:Backups";
dest = "B2-Phoenix-Cryptidz-Storage:Backups";
id = "phoenix_b2_backups";
}
{
source = "StorageBox:Photos";
dest = "B2-Phoenix-Cryptidz-Storage:Photos";
id = "phoenix_b2_photos";
}
{
source = "StorageBox:Music";
dest = "B2-Phoenix-Cryptidz-Storage:Music";
id = "phoenix_b2_music";
}
{
source = "StorageBox:Personal";
dest = "B2-Phoenix-Cryptidz-Storage:Personal";
id = "phoenix_b2_personal";
}
{
source = "StorageBox:Public";
dest = "B2-Phoenix-Cryptidz-Storage:Public";
id = "phoenix_b2_public";
}
{
source = "StorageBox:Media";
dest = "B2-Phoenix-Cryptidz-Storage:Media";
id = "phoenix_b2_media";
}
];
};
}