From 943deed8bd0a419ead8ce1068d3c0b7335d64cab Mon Sep 17 00:00:00 2001 From: Fabian Montero Date: Wed, 27 Aug 2025 18:14:39 -0600 Subject: [PATCH 1/2] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'homepage': 'path:./homepage' → 'path:./homepage' • Updated input 'nixpkgs': 'github:nixos/nixpkgs/b1b3291469652d5a2edb0becc4ef0246fff97a7c?narHash=sha256-wY1%2B2JPH0ZZC4BQefoZw/k%2B3%2BDowFyfOxv17CN/idKs%3D' (2025-08-23) → 'github:nixos/nixpkgs/4e7667a90c167f7a81d906e5a75cba4ad8bee620?narHash=sha256-TH1SfSP523QI7kcPiNtMAEuwZR3Jdz0MCDXPs7TS8uo%3D' (2025-08-26) • Updated input 'nur': 'github:nix-community/NUR/9824fee9eb7676a3624d8dcf8e36879fdbe5ccf6?narHash=sha256-ao6Bmp1ktX933EEGVEk22Poi2FwimF/GROZf2kioB5o%3D' (2025-08-27) → 'github:nix-community/NUR/1f693539e1da901a6da002555d5480e887a5adc1?narHash=sha256-SBiHiR%2BY074U9OZhnIrIgu/6iLZPxYhlBOmnP7ymBME%3D' (2025-08-27) • Updated input 'nur/nixpkgs': 'github:nixos/nixpkgs/3b9f00d7a7bf68acd4c4abb9d43695afb04e03a5?narHash=sha256-XexyKZpf46cMiO5Vbj%2BdWSAXOnr285GHsMch8FBoHbc%3D' (2025-08-25) → 'github:nixos/nixpkgs/8a6d5427d99ec71c64f0b93d45778c889005d9c2?narHash=sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM%3D' (2025-08-27) • Updated input 'trivionomicon': 'path:./trivionomicon' → 'path:./trivionomicon' • Updated input 'unstable': 'github:nixos/nixpkgs/3b9f00d7a7bf68acd4c4abb9d43695afb04e03a5?narHash=sha256-XexyKZpf46cMiO5Vbj%2BdWSAXOnr285GHsMch8FBoHbc%3D' (2025-08-25) → 'github:nixos/nixpkgs/8a6d5427d99ec71c64f0b93d45778c889005d9c2?narHash=sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM%3D' (2025-08-27) --- flake.lock | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/flake.lock b/flake.lock index a6d4a86..ef00b54 100644 --- a/flake.lock +++ b/flake.lock @@ -356,11 +356,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1755922037, - "narHash": "sha256-wY1+2JPH0ZZC4BQefoZw/k+3+DowFyfOxv17CN/idKs=", + "lastModified": 1756217674, + "narHash": "sha256-TH1SfSP523QI7kcPiNtMAEuwZR3Jdz0MCDXPs7TS8uo=", "owner": "nixos", "repo": "nixpkgs", - "rev": "b1b3291469652d5a2edb0becc4ef0246fff97a7c", + "rev": "4e7667a90c167f7a81d906e5a75cba4ad8bee620", "type": "github" }, "original": { @@ -372,11 +372,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1756125398, - "narHash": "sha256-XexyKZpf46cMiO5Vbj+dWSAXOnr285GHsMch8FBoHbc=", + "lastModified": 1756266583, + "narHash": "sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM=", "owner": "nixos", "repo": "nixpkgs", - "rev": "3b9f00d7a7bf68acd4c4abb9d43695afb04e03a5", + "rev": "8a6d5427d99ec71c64f0b93d45778c889005d9c2", "type": "github" }, "original": { @@ -392,11 +392,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1756270534, - "narHash": "sha256-ao6Bmp1ktX933EEGVEk22Poi2FwimF/GROZf2kioB5o=", + "lastModified": 1756332267, + "narHash": "sha256-SBiHiR+Y074U9OZhnIrIgu/6iLZPxYhlBOmnP7ymBME=", "owner": "nix-community", "repo": "NUR", - "rev": "9824fee9eb7676a3624d8dcf8e36879fdbe5ccf6", + "rev": "1f693539e1da901a6da002555d5480e887a5adc1", "type": "github" }, "original": { @@ -566,11 +566,11 @@ }, "unstable": { "locked": { - "lastModified": 1756125398, - "narHash": "sha256-XexyKZpf46cMiO5Vbj+dWSAXOnr285GHsMch8FBoHbc=", + "lastModified": 1756266583, + "narHash": "sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM=", "owner": "nixos", "repo": "nixpkgs", - "rev": "3b9f00d7a7bf68acd4c4abb9d43695afb04e03a5", + "rev": "8a6d5427d99ec71c64f0b93d45778c889005d9c2", "type": "github" }, "original": { From db0040dcf4ed26fda32f029bc0f1123282c72862 Mon Sep 17 00:00:00 2001 From: Fabian Montero Date: Wed, 27 Aug 2025 18:55:31 -0600 Subject: [PATCH 2/2] vps: enable borg backups --- sys/platforms/vps/borg.nix | 48 +++++++++++++++++++++++++++++++ sys/platforms/vps/default.nix | 1 + sys/platforms/vps/srv/trilium.nix | 1 + 3 files changed, 50 insertions(+) create mode 100644 sys/platforms/vps/borg.nix diff --git a/sys/platforms/vps/borg.nix b/sys/platforms/vps/borg.nix new file mode 100644 index 0000000..9d9b0e7 --- /dev/null +++ b/sys/platforms/vps/borg.nix @@ -0,0 +1,48 @@ +{ + config, + pkgs, + lib, + flakes, + ... +}: { + services.borgbackup.jobs = { + rsync = { + paths = [ + "/var/lib/forgejo" + "/var/lib/mealie" + "/var/lib/trilium" + ]; + exclude = [ + ]; + user = "root"; + group = "root"; + doInit = true; + startAt = [ + "hourly" + ]; + inhibitsSleep = true; + persistentTimer = true; + + repo = "zh5777@zh5777.rsync.net:vps"; + encryption = { + mode = "repokey-blake2"; + passCommand = "cat /var/trust/borg/vps_passphrase"; + }; + compression = "auto,lz4"; + prune = { + keep = { + hourly = 24; + daily = 7; + weekly = 4; + monthly = 12; + yearly = 99; + }; + }; + extraArgs = [ + "--remote-path=borg14" + ]; + }; + }; + + environment.sessionVariables.BORG_REMOTE_PATH = "borg14"; +} diff --git a/sys/platforms/vps/default.nix b/sys/platforms/vps/default.nix index c465886..4020acc 100644 --- a/sys/platforms/vps/default.nix +++ b/sys/platforms/vps/default.nix @@ -15,6 +15,7 @@ with lib; { ./hardware-configuration.nix ./srv ./networkMap.nix + ./borg.nix ]; local.sys = { diff --git a/sys/platforms/vps/srv/trilium.nix b/sys/platforms/vps/srv/trilium.nix index 5662300..32774f5 100644 --- a/sys/platforms/vps/srv/trilium.nix +++ b/sys/platforms/vps/srv/trilium.nix @@ -22,6 +22,7 @@ with lib; { host = "127.0.0.1"; port = 8458; noAuthentication = false; + noBackup = true; # I already backup the whole dataDir, so no need for this instanceName = "posixlycorrect"; dataDir = "/var/lib/trilium"; nginx = {