Compare commits
14 Commits
9523a36795
...
a6744d385c
Author | SHA1 | Date | |
---|---|---|---|
a6744d385c | |||
c75d2092f6 | |||
7267de08d6 | |||
c80630fc1c | |||
843b9aef79 | |||
1213ca759c | |||
a39406c9d7 | |||
a733ad2998 | |||
eeb9e7fa80 | |||
e6a8f01a32 | |||
0bfcd33387 | |||
c255b9d9b6 | |||
e3ed79505c | |||
d403f77ce6 |
2
TODO.md
2
TODO.md
@ -1,5 +1,7 @@
|
||||
# TODO
|
||||
|
||||
* move nginx config to respective profiles
|
||||
* ocis confid and metadata backup (take zfs snapshot and backup it)
|
||||
* grafana for all services
|
||||
* move some profiles to modules (like vpn.nix)
|
||||
* use sops for all occurrences of hashedPassword
|
||||
|
433
flake.lock
generated
433
flake.lock
generated
@ -8,11 +8,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1706450394,
|
||||
"narHash": "sha256-ukrOuprUmG3Duy982EfVcZ10t4i25EoqsSp391txOtw=",
|
||||
"lastModified": 1706820584,
|
||||
"narHash": "sha256-bxdNSMcflfDZXdr7o03f2F9GvwRB9mGt7aYbN0iP0jM=",
|
||||
"owner": "ezKEa",
|
||||
"repo": "aagl-gtk-on-nix",
|
||||
"rev": "c06cf405666702308273f78eddc30090bd0d2aec",
|
||||
"rev": "3f68c6351aedbfb598824fc930125e06ec12f4e9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -42,11 +42,11 @@
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1706816539,
|
||||
"narHash": "sha256-N1YIZ0tF4JCH0EAayo9hrMR0n/lqLOFNmU5/GzInYHI=",
|
||||
"lastModified": 1707239778,
|
||||
"narHash": "sha256-DhGEDhtPcnxjc9jBOzdg+bf7o8btCAL+W7QNgl6jamI=",
|
||||
"owner": "AtaraxiaSjel",
|
||||
"repo": "nur",
|
||||
"rev": "53b1e5840b4fc247e7c40414347af8f38726ea89",
|
||||
"rev": "d09bfe6ae85bfc06919c1fa892cd1bc316fd14a8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -173,6 +173,27 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"devenv": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_4",
|
||||
"nix": "nix",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"pre-commit-hooks": "pre-commit-hooks"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1707004164,
|
||||
"narHash": "sha256-9Hr8onWtvLk5A8vCEkaE9kxA0D7PR62povFokM1oL5Q=",
|
||||
"owner": "cachix",
|
||||
"repo": "devenv",
|
||||
"rev": "0e68853bb27981a4ffd7a7225b59ed84f7180fc7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "devenv",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"disko": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@ -242,6 +263,22 @@
|
||||
}
|
||||
},
|
||||
"flake-compat_4": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1673956053,
|
||||
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_5": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1668681692,
|
||||
@ -257,7 +294,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_5": {
|
||||
"flake-compat_6": {
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
@ -272,7 +309,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_6": {
|
||||
"flake-compat_7": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1673956053,
|
||||
@ -288,7 +325,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_7": {
|
||||
"flake-compat_8": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
@ -415,7 +452,7 @@
|
||||
},
|
||||
"flake-utils-plus_2": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_3"
|
||||
"flake-utils": "flake-utils_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1696281284,
|
||||
@ -451,6 +488,24 @@
|
||||
"inputs": {
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1685518550,
|
||||
"narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_4": {
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1694529238,
|
||||
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
|
||||
@ -465,7 +520,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_4": {
|
||||
"flake-utils_5": {
|
||||
"locked": {
|
||||
"lastModified": 1667395993,
|
||||
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
||||
@ -480,9 +535,9 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_5": {
|
||||
"flake-utils_6": {
|
||||
"inputs": {
|
||||
"systems": "systems_4"
|
||||
"systems": "systems_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1701680307,
|
||||
@ -498,9 +553,9 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_6": {
|
||||
"flake-utils_7": {
|
||||
"inputs": {
|
||||
"systems": "systems_5"
|
||||
"systems": "systems_6"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1681202837,
|
||||
@ -516,9 +571,9 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_7": {
|
||||
"flake-utils_8": {
|
||||
"inputs": {
|
||||
"systems": "systems_6"
|
||||
"systems": "systems_7"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1701680307,
|
||||
@ -534,9 +589,9 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_8": {
|
||||
"flake-utils_9": {
|
||||
"inputs": {
|
||||
"systems": "systems_7"
|
||||
"systems": "systems_8"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1681202837,
|
||||
@ -553,6 +608,28 @@
|
||||
}
|
||||
},
|
||||
"gitignore": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"devenv",
|
||||
"pre-commit-hooks",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1660459072,
|
||||
"narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "a20de23b925fd8264fd7fad6454652e142fd7f73",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"prismlauncher",
|
||||
@ -581,11 +658,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1706435589,
|
||||
"narHash": "sha256-yhEYJxMv5BkfmUuNe4QELKo+V5eq1pwhtVs6kEziHfE=",
|
||||
"lastModified": 1707029945,
|
||||
"narHash": "sha256-GA6IOAKouQlTbile9PvAa3UUh7s5mi6NsZMX8lpgozg=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "4d54c29bce71f8c261513e0662cc573d30f3e33e",
|
||||
"rev": "230836bb7ca318aec7bad8442954da611d06a172",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -600,16 +677,16 @@
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": "systems_3",
|
||||
"systems": "systems_4",
|
||||
"wlroots": "wlroots",
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1706524231,
|
||||
"narHash": "sha256-05UcsoN4x1pXqoPzHTPcSRZ6W2uCTqRwXfhR0Ls3f4c=",
|
||||
"lastModified": 1707013800,
|
||||
"narHash": "sha256-dkK9zXkRpjcMUfeIEXrFgGyU3Lm436bz8UxnhjjgDN4=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"rev": "91e8c428431deac1e5eb8e537f002ab960777174",
|
||||
"rev": "1ed4f1cb254ce4b4e55727d972998be1ef4baf22",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -667,7 +744,7 @@
|
||||
},
|
||||
"hyprlang_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_5"
|
||||
"nixpkgs": "nixpkgs_6"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1704230242,
|
||||
@ -706,11 +783,11 @@
|
||||
},
|
||||
"impermanence": {
|
||||
"locked": {
|
||||
"lastModified": 1703656108,
|
||||
"narHash": "sha256-hCSUqdFJKHHbER8Cenf5JRzjMlBjIdwdftGQsO0xoJs=",
|
||||
"lastModified": 1706639736,
|
||||
"narHash": "sha256-CaG4j9+UwBDfinxxvJMo6yOonSmSo0ZgnbD7aj2Put0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "impermanence",
|
||||
"rev": "033643a45a4a920660ef91caa391fbffb14da466",
|
||||
"rev": "cd13c2917eaa68e4c49fea0ff9cada45440d7045",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -751,12 +828,28 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"lowdown-src_2": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1633514407,
|
||||
"narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=",
|
||||
"owner": "kristapsdz",
|
||||
"repo": "lowdown",
|
||||
"rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "kristapsdz",
|
||||
"repo": "lowdown",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"mms": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_4",
|
||||
"flake-utils": "flake-utils_4",
|
||||
"nix": "nix",
|
||||
"nixpkgs": "nixpkgs_7"
|
||||
"flake-compat": "flake-compat_5",
|
||||
"flake-utils": "flake-utils_5",
|
||||
"nix": "nix_2",
|
||||
"nixpkgs": "nixpkgs_8"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1669478601,
|
||||
@ -775,27 +868,31 @@
|
||||
"nix": {
|
||||
"inputs": {
|
||||
"lowdown-src": "lowdown-src",
|
||||
"nixpkgs": "nixpkgs_6",
|
||||
"nixpkgs": [
|
||||
"devenv",
|
||||
"nixpkgs"
|
||||
],
|
||||
"nixpkgs-regression": "nixpkgs-regression"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1669449054,
|
||||
"narHash": "sha256-aCpXrNpyFH6b1NFYGj2i/HecUvz2vZ88aEyDs1Xj8yM=",
|
||||
"owner": "NixOS",
|
||||
"lastModified": 1676545802,
|
||||
"narHash": "sha256-EK4rZ+Hd5hsvXnzSzk2ikhStJnD63odF7SzsQ8CuSPU=",
|
||||
"owner": "domenkozar",
|
||||
"repo": "nix",
|
||||
"rev": "534332c8a03b64161ec795d1deb2ba3d48f27be1",
|
||||
"rev": "7c91803598ffbcfe4a55c44ac6d49b2cf07a527f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"owner": "domenkozar",
|
||||
"ref": "relaxed-flakes",
|
||||
"repo": "nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-alien": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_5",
|
||||
"flake-utils": "flake-utils_5",
|
||||
"flake-compat": "flake-compat_6",
|
||||
"flake-utils": "flake-utils_6",
|
||||
"nix-filter": "nix-filter",
|
||||
"nix-index-database": "nix-index-database",
|
||||
"nixpkgs": [
|
||||
@ -803,11 +900,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1705306460,
|
||||
"narHash": "sha256-tV42EZ0GAYDKUu8IUaeZgSsOBtp/1IO9jEkHpOj5K94=",
|
||||
"lastModified": 1706619215,
|
||||
"narHash": "sha256-BuZZ2dWa4UloNpF0dsMYZUBkfFvGlH4u2y/Rc1PbfUk=",
|
||||
"owner": "thiagokokada",
|
||||
"repo": "nix-alien",
|
||||
"rev": "f43ce845467ad2b90df34323dbed3de9f17471d7",
|
||||
"rev": "4830d795e5fab4dc601d3600073135ff9c87ba03",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -819,7 +916,7 @@
|
||||
"nix-direnv": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": "nixpkgs_9",
|
||||
"nixpkgs": "nixpkgs_10",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
@ -875,7 +972,7 @@
|
||||
},
|
||||
"nix-index-database": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_8"
|
||||
"nixpkgs": "nixpkgs_9"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1705282324,
|
||||
@ -893,18 +990,18 @@
|
||||
},
|
||||
"nix-vscode-marketplace": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_6",
|
||||
"flake-utils": "flake-utils_6",
|
||||
"flake-compat": "flake-compat_7",
|
||||
"flake-utils": "flake-utils_7",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1706491024,
|
||||
"narHash": "sha256-oRjvADEBpKayeA/UVYGtdt1Idv5sMP9EBcqoQg4cOYo=",
|
||||
"lastModified": 1707009713,
|
||||
"narHash": "sha256-oDr8YWRKFmwV2+B4H0ih7BbYjKAMi99yBpzVAXdWWo0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-vscode-extensions",
|
||||
"rev": "0d4c78fbb27b522aa50b2783c20fcec7f88f48d0",
|
||||
"rev": "5a034e1b2dee0df8c8d8a6b25902fbc61c26a139",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -913,6 +1010,26 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix_2": {
|
||||
"inputs": {
|
||||
"lowdown-src": "lowdown-src_2",
|
||||
"nixpkgs": "nixpkgs_7",
|
||||
"nixpkgs-regression": "nixpkgs-regression_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1669449054,
|
||||
"narHash": "sha256-aCpXrNpyFH6b1NFYGj2i/HecUvz2vZ88aEyDs1Xj8yM=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nix",
|
||||
"rev": "534332c8a03b64161ec795d1deb2ba3d48f27be1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"repo": "nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixlib": {
|
||||
"locked": {
|
||||
"lastModified": 1693701915,
|
||||
@ -985,11 +1102,11 @@
|
||||
},
|
||||
"nixpkgs-master": {
|
||||
"locked": {
|
||||
"lastModified": 1706522777,
|
||||
"narHash": "sha256-xQ43gN2qNCUZ7PX1IrRsOAWT2OIRTXnIZ2IYmvT8c5c=",
|
||||
"lastModified": 1707049898,
|
||||
"narHash": "sha256-Lr86gvKe/5nX9UldZeRZlZ/ACdxuEJ0ShLDL+GTrcP8=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "df2f1a85106a52596eaf152dfcd9225bf674dcf2",
|
||||
"rev": "4ec0020e841be6f186b712fd90e4cad5c40712e1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -1015,6 +1132,22 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-regression_2": {
|
||||
"locked": {
|
||||
"lastModified": 1643052045,
|
||||
"narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1702780907,
|
||||
@ -1033,11 +1166,27 @@
|
||||
},
|
||||
"nixpkgs-stable_2": {
|
||||
"locked": {
|
||||
"lastModified": 1706373441,
|
||||
"narHash": "sha256-S1hbgNbVYhuY2L05OANWqmRzj4cElcbLuIkXTb69xkk=",
|
||||
"lastModified": 1685801374,
|
||||
"narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c37ca420157f4abc31e26f436c1145f8951ff373",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-23.05",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-stable_3": {
|
||||
"locked": {
|
||||
"lastModified": 1706826059,
|
||||
"narHash": "sha256-N69Oab+cbt3flLvYv8fYnEHlBsWwdKciNZHUbynVEOA=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "56911ef3403a9318b7621ce745f5452fb9ef6867",
|
||||
"rev": "25e3d4c0d3591c99929b1ec07883177f6ea70c9d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -1047,7 +1196,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-stable_3": {
|
||||
"nixpkgs-stable_4": {
|
||||
"locked": {
|
||||
"lastModified": 1705957679,
|
||||
"narHash": "sha256-Q8LJaVZGJ9wo33wBafvZSzapYsjOaNjP/pOnSiKVGHY=",
|
||||
@ -1065,11 +1214,27 @@
|
||||
},
|
||||
"nixpkgs_10": {
|
||||
"locked": {
|
||||
"lastModified": 1706191920,
|
||||
"narHash": "sha256-eLihrZAPZX0R6RyM5fYAWeKVNuQPYjAkCUBr+JNvtdE=",
|
||||
"lastModified": 1705697961,
|
||||
"narHash": "sha256-XepT3WS516evSFYkme3GrcI3+7uwXHqtHbip+t24J7E=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "e5d1c87f5813afde2dda384ac807c57a105721cc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_11": {
|
||||
"locked": {
|
||||
"lastModified": 1706732774,
|
||||
"narHash": "sha256-hqJlyJk4MRpcItGYMF+3uHe8HvxNETWvlGtLuVpqLU0=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "ae5c332cbb5827f6b1f02572496b141021de335f",
|
||||
"rev": "b8b232ae7b8b144397fdb12d20f592e5e7c1a64d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -1079,13 +1244,13 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_11": {
|
||||
"nixpkgs_12": {
|
||||
"locked": {
|
||||
"lastModified": 1705697961,
|
||||
"narHash": "sha256-XepT3WS516evSFYkme3GrcI3+7uwXHqtHbip+t24J7E=",
|
||||
"lastModified": 1706173671,
|
||||
"narHash": "sha256-lciR7kQUK2FCAYuszyd7zyRRmTaXVeoZsCyK6QFpGdk=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "e5d1c87f5813afde2dda384ac807c57a105721cc",
|
||||
"rev": "4fddc9be4eaf195d631333908f2a454b03628ee5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -1144,6 +1309,22 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1678875422,
|
||||
"narHash": "sha256-T3o6NcQPwXjxJMn2shz86Chch4ljXgZn746c2caGxd8=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "126f49a01de5b7e35a43fd43f891ecf6d3a51459",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"locked": {
|
||||
"lastModified": 1702645756,
|
||||
"narHash": "sha256-qKI6OR3TYJYQB3Q8mAZ+DG4o/BR9ptcv9UnRV2hzljc=",
|
||||
@ -1159,7 +1340,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_6": {
|
||||
"nixpkgs_7": {
|
||||
"locked": {
|
||||
"lastModified": 1657693803,
|
||||
"narHash": "sha256-G++2CJ9u0E7NNTAi9n5G8TdDmGJXcIjkJ3NF8cetQB8=",
|
||||
@ -1175,7 +1356,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_7": {
|
||||
"nixpkgs_8": {
|
||||
"locked": {
|
||||
"lastModified": 1669378442,
|
||||
"narHash": "sha256-nm+4PN0A4SnV0SzEchxrMyKPvI3Ld/aoom4PnHeHucs=",
|
||||
@ -1191,7 +1372,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_8": {
|
||||
"nixpkgs_9": {
|
||||
"locked": {
|
||||
"lastModified": 1704722960,
|
||||
"narHash": "sha256-mKGJ3sPsT6//s+Knglai5YflJUF2DGj7Ai6Ynopz0kI=",
|
||||
@ -1207,30 +1388,42 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_9": {
|
||||
"pre-commit-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"devenv",
|
||||
"flake-compat"
|
||||
],
|
||||
"flake-utils": "flake-utils_3",
|
||||
"gitignore": "gitignore",
|
||||
"nixpkgs": [
|
||||
"devenv",
|
||||
"nixpkgs"
|
||||
],
|
||||
"nixpkgs-stable": "nixpkgs-stable_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1705697961,
|
||||
"narHash": "sha256-XepT3WS516evSFYkme3GrcI3+7uwXHqtHbip+t24J7E=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "e5d1c87f5813afde2dda384ac807c57a105721cc",
|
||||
"lastModified": 1704725188,
|
||||
"narHash": "sha256-qq8NbkhRZF1vVYQFt1s8Mbgo8knj+83+QlL5LBnYGpI=",
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"rev": "ea96f0c05924341c551a797aaba8126334c505d2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks": {
|
||||
"pre-commit-hooks_2": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"prismlauncher",
|
||||
"flake-compat"
|
||||
],
|
||||
"flake-utils": "flake-utils_7",
|
||||
"gitignore": "gitignore",
|
||||
"flake-utils": "flake-utils_8",
|
||||
"gitignore": "gitignore_2",
|
||||
"nixpkgs": [
|
||||
"prismlauncher",
|
||||
"nixpkgs"
|
||||
@ -1256,18 +1449,18 @@
|
||||
},
|
||||
"prismlauncher": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_7",
|
||||
"flake-compat": "flake-compat_8",
|
||||
"flake-parts": "flake-parts_3",
|
||||
"libnbtplusplus": "libnbtplusplus",
|
||||
"nixpkgs": "nixpkgs_11",
|
||||
"pre-commit-hooks": "pre-commit-hooks"
|
||||
"nixpkgs": "nixpkgs_12",
|
||||
"pre-commit-hooks": "pre-commit-hooks_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1706324997,
|
||||
"narHash": "sha256-ctj4sz7eh2sw3BZDmS5NY1ClxX0U5hxn7ieVBbMlEEo=",
|
||||
"lastModified": 1706929937,
|
||||
"narHash": "sha256-tkBo7pp8880VPCU7MkF5vVcBxzyZ/7phIJyh52LHE1c=",
|
||||
"owner": "AtaraxiaSjel",
|
||||
"repo": "PrismLauncher",
|
||||
"rev": "ec1dd0aa4506ddb12e9b8966c7aae9b1400b440a",
|
||||
"rev": "6e58c3d3dd0a6826eda29bae035ae0be2a792333",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -1287,6 +1480,7 @@
|
||||
"base16-tokyonight-scheme": "base16-tokyonight-scheme",
|
||||
"cassowary": "cassowary",
|
||||
"deploy-rs": "deploy-rs",
|
||||
"devenv": "devenv",
|
||||
"disko": "disko",
|
||||
"flake-registry": "flake-registry",
|
||||
"flake-utils-plus": "flake-utils-plus_2",
|
||||
@ -1300,9 +1494,9 @@
|
||||
"nix-fast-build": "nix-fast-build",
|
||||
"nix-vscode-marketplace": "nix-vscode-marketplace",
|
||||
"nixos-generators": "nixos-generators",
|
||||
"nixpkgs": "nixpkgs_10",
|
||||
"nixpkgs": "nixpkgs_11",
|
||||
"nixpkgs-master": "nixpkgs-master",
|
||||
"nixpkgs-stable": "nixpkgs-stable_2",
|
||||
"nixpkgs-stable": "nixpkgs-stable_3",
|
||||
"prismlauncher": "prismlauncher",
|
||||
"rycee": "rycee",
|
||||
"sops-nix": "sops-nix",
|
||||
@ -1312,11 +1506,11 @@
|
||||
"rycee": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1706306805,
|
||||
"narHash": "sha256-BWJdcDmpqZuxCStx4RUl5SD6uELy8hRa5YzwFTdWrts=",
|
||||
"lastModified": 1706985744,
|
||||
"narHash": "sha256-IN4XdMSZonGaov/OXLpYh4g5LzXdK8wx9BowNNb7438=",
|
||||
"owner": "rycee",
|
||||
"repo": "nur-expressions",
|
||||
"rev": "24985136f4a5f98254e88c26d428114d206c2565",
|
||||
"rev": "d26433da695b4827878fe844c8983aeb5be0621d",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
@ -1330,14 +1524,14 @@
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"nixpkgs-stable": "nixpkgs-stable_3"
|
||||
"nixpkgs-stable": "nixpkgs-stable_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1706410821,
|
||||
"narHash": "sha256-iCfXspqUOPLwRobqQNAQeKzprEyVowLMn17QaRPQc+M=",
|
||||
"lastModified": 1707015547,
|
||||
"narHash": "sha256-YZr0OrqWPdbwBhxpBu69D32ngJZw8AMgZtJeaJn0e94=",
|
||||
"owner": "Mic92",
|
||||
"repo": "sops-nix",
|
||||
"rev": "73bf36912e31a6b21af6e0f39218e067283c67ef",
|
||||
"rev": "23f61b897c00b66855074db471ba016e0cda20dd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -1377,21 +1571,6 @@
|
||||
}
|
||||
},
|
||||
"systems_3": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_4": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
@ -1406,6 +1585,21 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_4": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_5": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
@ -1451,6 +1645,21 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_8": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@ -1513,7 +1722,7 @@
|
||||
},
|
||||
"vscode-server": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_8",
|
||||
"flake-utils": "flake-utils_9",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
|
10
flake.nix
10
flake.nix
@ -35,6 +35,7 @@
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
deploy-rs.url = "github:serokell/deploy-rs";
|
||||
devenv.url = "github:cachix/devenv";
|
||||
disko = {
|
||||
url = "github:nix-community/disko";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
@ -113,8 +114,10 @@
|
||||
secretsDir = ./secrets;
|
||||
|
||||
sharedPatches = patchesPath [
|
||||
"authentik-271885.patch"
|
||||
"onlyoffice.patch"
|
||||
"rustic-rs-0.7.0.patch"
|
||||
"vaultwarden.patch"
|
||||
"vscode-1.86.0.patch"
|
||||
"webhooks.patch"
|
||||
];
|
||||
sharedOverlays = [ flake-utils-plus.overlay inputs.sops-nix.overlays.default ];
|
||||
@ -123,12 +126,9 @@
|
||||
permittedInsecurePackages = [ "electron-25.9.0" ];
|
||||
};
|
||||
channels.unstable.input = nixpkgs;
|
||||
channels.unstable.patches = patchesPath [ "zen-kernels.patch" "ydotoold.patch" ] ++ sharedPatches;
|
||||
channels.unstable.patches = patchesPath [ "zfs-unstable-2.2.3.patch" "zen-kernels.patch" "ydotoold.patch" ] ++ sharedPatches;
|
||||
channels.stable.input = inputs.nixpkgs-stable;
|
||||
channels.stable.patches = sharedPatches;
|
||||
channels.server.input = inputs.nixpkgs-pinned;
|
||||
channels.server.patches = patchesPath [ "zen-kernels.patch" "ydotoold.patch" ] ++ sharedPatches;
|
||||
channels.vps.input = inputs.nixpkgs;
|
||||
|
||||
hostDefaults.system = "x86_64-linux";
|
||||
hostDefaults.channelName = "unstable";
|
||||
|
@ -3,7 +3,7 @@ let
|
||||
zfs_arc_max = toString (6 * 1024 * 1024 * 1024);
|
||||
in {
|
||||
boot = {
|
||||
zfs.enableUnstable = false;
|
||||
zfs.enableUnstable = true;
|
||||
kernelPackages = pkgs.linuxPackages_lqx;
|
||||
|
||||
initrd = {
|
||||
|
@ -2,33 +2,38 @@
|
||||
imports = [ inputs.ataraxiasjel-nur.nixosModules.rustic ];
|
||||
|
||||
sops.secrets.rustic-nas-pass.sopsFile = inputs.self.secretsDir + /rustic.yaml;
|
||||
sops.secrets.rclone-rustic-backups.sopsFile = inputs.self.secretsDir + /rustic.yaml;
|
||||
sops.secrets.rustic-backups-s3-env.sopsFile = inputs.self.secretsDir + /rustic.yaml;
|
||||
services.rustic.backups = rec {
|
||||
nas-backup = {
|
||||
backup = true;
|
||||
prune = false;
|
||||
initialize = false;
|
||||
environmentFile = config.sops.secrets.rustic-backups-s3-env.path;
|
||||
extraEnvironment = { https_proxy = "http://192.168.0.6:8888"; };
|
||||
rcloneConfigFile = config.sops.secrets.rclone-rustic-backups.path;
|
||||
rcloneOptions = { fast-list = true; };
|
||||
pruneOpts = [ "--repack-cacheable-only=false" ];
|
||||
timerConfig = {
|
||||
OnCalendar = "05:00";
|
||||
Persistent = true;
|
||||
};
|
||||
settings = let
|
||||
bucket = "rustic-backups";
|
||||
label = "hypervisor-nas";
|
||||
in {
|
||||
repository = {
|
||||
repository = "rclone:rustic-backups:${bucket}/${label}";
|
||||
repository = "opendal:s3";
|
||||
password-file = config.sops.secrets.rustic-nas-pass.path;
|
||||
options = {
|
||||
root = label;
|
||||
bucket = "rustic-backups";
|
||||
region = "de-fra";
|
||||
endpoint = "https://c5c0.fra2.idrivee2-53.com";
|
||||
};
|
||||
};
|
||||
backup = {
|
||||
host = config.device;
|
||||
label = label;
|
||||
ignore-devid = true;
|
||||
group-by = "label";
|
||||
skip-identical-parent = true;
|
||||
glob = [
|
||||
"!/media/nas/**/cache"
|
||||
"!/media/nas/**/.cache"
|
||||
|
@ -26,6 +26,7 @@ in {
|
||||
customProfiles.minio
|
||||
customProfiles.nginx
|
||||
customProfiles.ocis
|
||||
customProfiles.onlyoffice
|
||||
customProfiles.openbooks
|
||||
customProfiles.outline
|
||||
customProfiles.radicale
|
||||
|
@ -10,7 +10,6 @@
|
||||
customModules.devices
|
||||
customModules.libvirt-guests
|
||||
customModules.persist
|
||||
customModules.rustic
|
||||
customModules.users
|
||||
|
||||
customProfiles.hardened
|
||||
|
@ -2,26 +2,30 @@
|
||||
imports = [ inputs.ataraxiasjel-nur.nixosModules.rustic ];
|
||||
|
||||
sops.secrets.rustic-vps-pass.sopsFile = inputs.self.secretsDir + /rustic.yaml;
|
||||
sops.secrets.rclone-rustic-backups.sopsFile = inputs.self.secretsDir + /rustic.yaml;
|
||||
sops.secrets.rustic-backups-s3-env.sopsFile = inputs.self.secretsDir + /rustic.yaml;
|
||||
services.rustic.backups = rec {
|
||||
vps-backup = {
|
||||
backup = true;
|
||||
prune = false;
|
||||
initialize = false;
|
||||
rcloneConfigFile = config.sops.secrets.rclone-rustic-backups.path;
|
||||
rcloneOptions = { fast-list = true; };
|
||||
pruneOpts = [ "--repack-cacheable-only=false" ];
|
||||
environmentFile = config.sops.secrets.rustic-backups-s3-env.path;
|
||||
timerConfig = {
|
||||
OnCalendar = "01:00";
|
||||
Persistent = true;
|
||||
};
|
||||
settings = let
|
||||
bucket = "rustic-backups";
|
||||
label = "vps-containers";
|
||||
in {
|
||||
repository = {
|
||||
repository = "rclone:rustic-backups:${bucket}/${label}";
|
||||
repository = "opendal:s3";
|
||||
password-file = config.sops.secrets.rustic-vps-pass.path;
|
||||
options = {
|
||||
root = label;
|
||||
bucket = "rustic-backups";
|
||||
region = "de-fra";
|
||||
endpoint = "https://c5c0.fra2.idrivee2-53.com";
|
||||
};
|
||||
};
|
||||
repository.options = {
|
||||
timeout = "5min";
|
||||
@ -32,6 +36,7 @@
|
||||
label = label;
|
||||
ignore-devid = true;
|
||||
group-by = "label";
|
||||
skip-identical-parent = true;
|
||||
sources = [{
|
||||
source = "/srv/marzban";
|
||||
}];
|
||||
|
@ -6,6 +6,7 @@ let
|
||||
nginx-conf = config.sops.secrets."nginx.conf".path;
|
||||
marzban-env = config.sops.secrets.marzban.path;
|
||||
in {
|
||||
imports = [ inputs.ataraxiasjel-nur.nixosModules.ocis ];
|
||||
networking.firewall.allowedTCPPorts = [ 80 443 ];
|
||||
|
||||
sops.secrets = let
|
||||
|
@ -1,54 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.services.hoyolab-daily-bot;
|
||||
in {
|
||||
options.services.hoyolab-daily-bot = {
|
||||
enable = mkEnableOption "Hoyolab Daily Bot";
|
||||
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
description = lib.mdDoc "Which package to use.";
|
||||
default = pkgs.hoyolab-daily-bot;
|
||||
defaultText = literalExpression "pkgs.hoyolab-daily-bot";
|
||||
};
|
||||
|
||||
cookieFiles = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [ ];
|
||||
description =
|
||||
lib.mdDoc "List of paths to cookie files. If not provided, use cookie from browser.";
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = "root";
|
||||
description = lib.mdDoc "";
|
||||
};
|
||||
|
||||
startAt = mkOption {
|
||||
type = types.str;
|
||||
default = "*-*-* 20:00:00";
|
||||
description = lib.mdDoc "";
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
systemd.services.hoyolab-daily-bot = {
|
||||
description = "Hoyolab Daily Login Bot.";
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
User = cfg.user;
|
||||
StateDirectory = "hoyolab-daily-bot";
|
||||
};
|
||||
startAt = cfg.startAt;
|
||||
script = if (cfg.cookieFiles == [ ]) then ''
|
||||
${cfg.package}/bin/hoyolab-daily-bot
|
||||
'' else ''
|
||||
${concatMapStringsSep "\n" (x:
|
||||
"${cfg.package}/bin/hoyolab-daily-bot -c ${x}"
|
||||
) cfg.cookieFiles}
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
@ -21,9 +21,9 @@ with lib;
|
||||
};
|
||||
imports = [ inputs.ataraxiasjel-nur.nixosModules.rustic ];
|
||||
config = mkIf (config.backups.postgresql != { }) {
|
||||
sops.secrets.rclone-postgresql-backups.sopsFile = inputs.self.secretsDir + /rustic.yaml;
|
||||
sops.secrets.rustic-postgresql-s3-env.sopsFile = inputs.self.secretsDir + /rustic.yaml;
|
||||
sops.secrets.rustic-postgresql-pass.sopsFile = inputs.self.secretsDir + /rustic.yaml;
|
||||
sops.secrets.rclone-postgresql-backups.owner = "postgres";
|
||||
sops.secrets.rustic-postgresql-s3-env.owner = "postgres";
|
||||
sops.secrets.rustic-postgresql-pass.owner = "postgres";
|
||||
|
||||
services.rustic.backups =
|
||||
@ -34,8 +34,7 @@ with lib;
|
||||
initialize = true;
|
||||
user = "postgres";
|
||||
extraEnvironment.https_proxy = mkIf (backup.proxyAddress != null) backup.proxyAddress;
|
||||
rcloneConfigFile = config.sops.secrets.rclone-postgresql-backups.path;
|
||||
rcloneOptions = { fast-list = true; };
|
||||
environmentFile = config.sops.secrets.rustic-postgresql-s3-env.path;
|
||||
pruneOpts = [ "--repack-cacheable-only=false" ];
|
||||
timerConfig = {
|
||||
OnCalendar = "daily";
|
||||
@ -47,14 +46,21 @@ with lib;
|
||||
# Rustic profile yaml
|
||||
settings = {
|
||||
repository = {
|
||||
repository = "rclone:postgresql-backups:postgresql-backups/${backup.dbName}";
|
||||
repository = "opendal:s3";
|
||||
password-file = config.sops.secrets.rustic-postgresql-pass.path;
|
||||
options = {
|
||||
root = backup.dbName;
|
||||
bucket = "postgresql-backups";
|
||||
region = "de-fra";
|
||||
endpoint = "https://c5c0.fra2.idrivee2-53.com";
|
||||
};
|
||||
};
|
||||
backup = {
|
||||
host = config.device;
|
||||
label = backup.dbName;
|
||||
ignore-devid = true;
|
||||
group-by = "label";
|
||||
skip-identical-parent = true;
|
||||
stdin-filename = "${backup.dbName}.dump.zst";
|
||||
};
|
||||
forget = {
|
||||
|
118
patches/onlyoffice.patch
Normal file
118
patches/onlyoffice.patch
Normal file
@ -0,0 +1,118 @@
|
||||
diff --git a/nixos/modules/services/web-apps/onlyoffice.nix b/nixos/modules/services/web-apps/onlyoffice.nix
|
||||
index 343ca80c9fc2..a10e19d8b98c 100644
|
||||
--- a/nixos/modules/services/web-apps/onlyoffice.nix
|
||||
+++ b/nixos/modules/services/web-apps/onlyoffice.nix
|
||||
@@ -79,113 +79,6 @@ in
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
services = {
|
||||
- nginx = {
|
||||
- enable = mkDefault true;
|
||||
- # misses text/csv, font/ttf, application/x-font-ttf, application/rtf, application/wasm
|
||||
- recommendedGzipSettings = mkDefault true;
|
||||
- recommendedProxySettings = mkDefault true;
|
||||
-
|
||||
- upstreams = {
|
||||
- # /etc/nginx/includes/http-common.conf
|
||||
- onlyoffice-docservice = {
|
||||
- servers = { "localhost:${toString cfg.port}" = { }; };
|
||||
- };
|
||||
- onlyoffice-example = lib.mkIf cfg.enableExampleServer {
|
||||
- servers = { "localhost:${toString cfg.examplePort}" = { }; };
|
||||
- };
|
||||
- };
|
||||
-
|
||||
- virtualHosts.${cfg.hostname} = {
|
||||
- locations = {
|
||||
- # /etc/nginx/includes/ds-docservice.conf
|
||||
- "~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(web-apps\/apps\/api\/documents\/api\.js)$".extraConfig = ''
|
||||
- expires -1;
|
||||
- alias ${cfg.package}/var/www/onlyoffice/documentserver/$2;
|
||||
- '';
|
||||
- "~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(web-apps)(\/.*\.json)$".extraConfig = ''
|
||||
- expires 365d;
|
||||
- error_log /dev/null crit;
|
||||
- alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
|
||||
- '';
|
||||
- "~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(sdkjs-plugins)(\/.*\.json)$".extraConfig = ''
|
||||
- expires 365d;
|
||||
- error_log /dev/null crit;
|
||||
- alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
|
||||
- '';
|
||||
- "~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(web-apps|sdkjs|sdkjs-plugins|fonts)(\/.*)$".extraConfig = ''
|
||||
- expires 365d;
|
||||
- alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
|
||||
- '';
|
||||
- "~* ^(\/cache\/files.*)(\/.*)".extraConfig = ''
|
||||
- alias /var/lib/onlyoffice/documentserver/App_Data$1;
|
||||
- add_header Content-Disposition "attachment; filename*=UTF-8''$arg_filename";
|
||||
-
|
||||
- set $secret_string verysecretstring;
|
||||
- secure_link $arg_md5,$arg_expires;
|
||||
- secure_link_md5 "$secure_link_expires$uri$secret_string";
|
||||
-
|
||||
- if ($secure_link = "") {
|
||||
- return 403;
|
||||
- }
|
||||
-
|
||||
- if ($secure_link = "0") {
|
||||
- return 410;
|
||||
- }
|
||||
- '';
|
||||
- "~* ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(internal)(\/.*)$".extraConfig = ''
|
||||
- allow 127.0.0.1;
|
||||
- deny all;
|
||||
- proxy_pass http://onlyoffice-docservice/$2$3;
|
||||
- '';
|
||||
- "~* ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(info)(\/.*)$".extraConfig = ''
|
||||
- allow 127.0.0.1;
|
||||
- deny all;
|
||||
- proxy_pass http://onlyoffice-docservice/$2$3;
|
||||
- '';
|
||||
- "/".extraConfig = ''
|
||||
- proxy_pass http://onlyoffice-docservice;
|
||||
- '';
|
||||
- "~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?(\/doc\/.*)".extraConfig = ''
|
||||
- proxy_pass http://onlyoffice-docservice$2;
|
||||
- proxy_http_version 1.1;
|
||||
- '';
|
||||
- "/${cfg.package.version}/".extraConfig = ''
|
||||
- proxy_pass http://onlyoffice-docservice/;
|
||||
- '';
|
||||
- "~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(dictionaries)(\/.*)$".extraConfig = ''
|
||||
- expires 365d;
|
||||
- alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
|
||||
- '';
|
||||
- # /etc/nginx/includes/ds-example.conf
|
||||
- "~ ^(\/welcome\/.*)$".extraConfig = ''
|
||||
- expires 365d;
|
||||
- alias ${cfg.package}/var/www/onlyoffice/documentserver-example$1;
|
||||
- index docker.html;
|
||||
- '';
|
||||
- "/example/".extraConfig = lib.mkIf cfg.enableExampleServer ''
|
||||
- proxy_pass http://onlyoffice-example/;
|
||||
- proxy_set_header X-Forwarded-Path /example;
|
||||
- '';
|
||||
- };
|
||||
- extraConfig = ''
|
||||
- rewrite ^/$ /welcome/ redirect;
|
||||
- rewrite ^\/OfficeWeb(\/apps\/.*)$ /${cfg.package.version}/web-apps$1 redirect;
|
||||
- rewrite ^(\/web-apps\/apps\/(?!api\/).*)$ /${cfg.package.version}$1 redirect;
|
||||
-
|
||||
- # based on https://github.com/ONLYOFFICE/document-server-package/blob/master/common/documentserver/nginx/includes/http-common.conf.m4#L29-L34
|
||||
- # without variable indirection and correct variable names
|
||||
- proxy_set_header Host $host;
|
||||
- proxy_set_header X-Forwarded-Host $host;
|
||||
- proxy_set_header X-Forwarded-Proto $scheme;
|
||||
- # required for CSP to take effect
|
||||
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
- # required for websocket
|
||||
- proxy_set_header Upgrade $http_upgrade;
|
||||
- proxy_set_header Connection $connection_upgrade;
|
||||
- '';
|
||||
- };
|
||||
- };
|
||||
-
|
||||
rabbitmq.enable = lib.mkDefault true;
|
||||
|
||||
postgresql = {
|
27
patches/rustic-rs-0.7.0.patch
Normal file
27
patches/rustic-rs-0.7.0.patch
Normal file
@ -0,0 +1,27 @@
|
||||
diff --git a/pkgs/tools/backup/rustic-rs/default.nix b/pkgs/tools/backup/rustic-rs/default.nix
|
||||
index c6159a899b04..3971cc0df9e6 100644
|
||||
--- a/pkgs/tools/backup/rustic-rs/default.nix
|
||||
+++ b/pkgs/tools/backup/rustic-rs/default.nix
|
||||
@@ -10,16 +10,19 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "rustic-rs";
|
||||
- version = "0.6.1";
|
||||
+ version = "0.7.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rustic-rs";
|
||||
repo = "rustic";
|
||||
rev = "refs/tags/v${version}";
|
||||
- hash = "sha256-rpIEgQYwfManfgTrhCt6/Q4VBY2yyn4edC6/mz5D7nM=";
|
||||
+ hash = "sha256-jUAmboJTzX4oJZy9rFiPRbm94bVpZGa0SaqotoCU/Ss=";
|
||||
};
|
||||
|
||||
- cargoHash = "sha256-q+K887jPB9i9iXpFYXjn3zppAPWNlTc2AG7ivOr77J4=";
|
||||
+ cargoHash = "sha256-iZuWlYDGGziwb49BfKdt9Ahs6oQ0Ij2iiT0tvL7ZIVk=";
|
||||
+
|
||||
+ buildNoDefaultFeatures = true;
|
||||
+ buildFeatures = [ "webdav" ];
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
51
patches/vscode-1.86.0.patch
Normal file
51
patches/vscode-1.86.0.patch
Normal file
@ -0,0 +1,51 @@
|
||||
From bb9a4abdae31f5edbf0beb5b2ee3102af04000a8 Mon Sep 17 00:00:00 2001
|
||||
From: nixpkgs-upkeep-bot <skainsworth@gmail.com>
|
||||
Date: Sat, 3 Feb 2024 00:26:09 +0000
|
||||
Subject: [PATCH] vscode: 1.85.2 -> 1.86.0
|
||||
|
||||
---
|
||||
pkgs/applications/editors/vscode/vscode.nix | 16 ++++++++--------
|
||||
1 file changed, 8 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/pkgs/applications/editors/vscode/vscode.nix b/pkgs/applications/editors/vscode/vscode.nix
|
||||
index 0d1e46eee1b1d7..523b1c81cfd2f5 100644
|
||||
--- a/pkgs/applications/editors/vscode/vscode.nix
|
||||
+++ b/pkgs/applications/editors/vscode/vscode.nix
|
||||
@@ -30,21 +30,21 @@ let
|
||||
archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
|
||||
|
||||
sha256 = {
|
||||
- x86_64-linux = "0v702nvv971rwv1grp921ys2d1ig0aq0di7idc1lfikl5ka9b4wa";
|
||||
- x86_64-darwin = "1cz1817gy8kx3pkfn80jdgsxmvfyrwiwbmq9mp0079s1zzcdy31k";
|
||||
- aarch64-linux = "0bgdiv7nchwlird53r6q5k8ixljaf682w5ki2kx4bgsii83ih4px";
|
||||
- aarch64-darwin = "0c5hy5z6k8jjdas7hn29wrmrxwixgrb5jdm1vfdbgqg43sslpgm4";
|
||||
- armv7l-linux = "0h8y7mwfhf0ygnywwapblxgiskp9xjh3lpnvwhwbir3bs3v37bhh";
|
||||
+ x86_64-linux = "0qykchhd6cplyip4gp5s1fpv664xw2y5z0z7n6zwhwpfrld8piwb";
|
||||
+ x86_64-darwin = "0mris80k62yabaz2avh4q2vjpnqcwa77phx3icdif0c19w185pqw";
|
||||
+ aarch64-linux = "0rbj0l9wdbkxgzy9j9qvx0237g5nx4np0ank4x6jbxhlbs8xdw39";
|
||||
+ aarch64-darwin = "1j1wd1ssyrd6651k7ias22phcb358k6aigdirfzczam303cxr0hw";
|
||||
+ armv7l-linux = "1c6bikdhgd6w5njqza5xmhi7iz4kzydcfb2i7jqklb514knqxc8f";
|
||||
}.${system} or throwSystem;
|
||||
in
|
||||
callPackage ./generic.nix rec {
|
||||
# Please backport all compatible updates to the stable release.
|
||||
# This is important for the extension ecosystem.
|
||||
- version = "1.85.2";
|
||||
+ version = "1.86.0";
|
||||
pname = "vscode" + lib.optionalString isInsiders "-insiders";
|
||||
|
||||
# This is used for VS Code - Remote SSH test
|
||||
- rev = "8b3775030ed1a69b13e4f4c628c612102e30a681";
|
||||
+ rev = "05047486b6df5eb8d44b2ecd70ea3bdf775fd937";
|
||||
|
||||
executableName = "code" + lib.optionalString isInsiders "-insiders";
|
||||
longName = "Visual Studio Code" + lib.optionalString isInsiders " - Insiders";
|
||||
@@ -68,7 +68,7 @@ in
|
||||
src = fetchurl {
|
||||
name = "vscode-server-${rev}.tar.gz";
|
||||
url = "https://update.code.visualstudio.com/commit:${rev}/server-linux-x64/stable";
|
||||
- sha256 = "1gaq9f4jzdzhfxixb9al5f5pgn1w7lpccacvvy19hq89jzixbix0";
|
||||
+ sha256 = "0d3g6csi2aplsy5j3v84m65mhlg0krpb2sndk0nh7gafyc5gnn28";
|
||||
};
|
||||
};
|
||||
|
47
patches/zfs-unstable-2.2.3.patch
Normal file
47
patches/zfs-unstable-2.2.3.patch
Normal file
@ -0,0 +1,47 @@
|
||||
From fd12b90a572417ddf466b75314f444f4ad9b80c2 Mon Sep 17 00:00:00 2001
|
||||
From: toastal <toastal@posteo.net>
|
||||
Date: Thu, 25 Jan 2024 17:21:54 +0700
|
||||
Subject: [PATCH] =?UTF-8?q?zfsUnstable:=202.2.2=20=E2=86=92=202.2.3-unstab?=
|
||||
=?UTF-8?q?le-2024-01-26?=
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Should have patches for 6.7 compatibility
|
||||
---
|
||||
pkgs/os-specific/linux/zfs/unstable.nix | 9 +++++----
|
||||
1 file changed, 5 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/pkgs/os-specific/linux/zfs/unstable.nix b/pkgs/os-specific/linux/zfs/unstable.nix
|
||||
index 997cbe18ba7dda..691fa523b52266 100644
|
||||
--- a/pkgs/os-specific/linux/zfs/unstable.nix
|
||||
+++ b/pkgs/os-specific/linux/zfs/unstable.nix
|
||||
@@ -17,23 +17,24 @@ callPackage ./generic.nix args {
|
||||
# check the release notes for compatible kernels
|
||||
kernelCompatible =
|
||||
if stdenv'.isx86_64 || removeLinuxDRM
|
||||
- then kernel.kernelOlder "6.7"
|
||||
+ then kernel.kernelOlder "6.8"
|
||||
else kernel.kernelOlder "6.2";
|
||||
|
||||
latestCompatibleLinuxPackages = if stdenv'.isx86_64 || removeLinuxDRM
|
||||
- then linuxKernel.packages.linux_6_6
|
||||
+ then linuxKernel.packages.linux_6_7
|
||||
else linuxKernel.packages.linux_6_1;
|
||||
|
||||
# this package should point to a version / git revision compatible with the latest kernel release
|
||||
# IMPORTANT: Always use a tagged release candidate or commits from the
|
||||
# zfs-<version>-staging branch, because this is tested by the OpenZFS
|
||||
# maintainers.
|
||||
- version = "2.2.2";
|
||||
+ version = "2.2.3-unstable-2024-01-26";
|
||||
+ rev = "3425484eb907d489c315cced2a1fdea08ef03fc4";
|
||||
|
||||
isUnstable = true;
|
||||
tests = [
|
||||
nixosTests.zfs.unstable
|
||||
];
|
||||
|
||||
- hash = "sha256-CqhETAwhWMhbld5ib3Rz1dxms+GQbLwjEZw/V7U/2nE=";
|
||||
+ hash = "sha256-P8PIp0qRHm/fxYdxWKVRX9LR5tKZR7fFUSY90QDE/lU=";
|
||||
}
|
@ -161,7 +161,7 @@ in
|
||||
"editor.suggest.snippetsPreventQuickSuggestions" = false;
|
||||
"editor.suggestSelection" = "first";
|
||||
"editor.tabCompletion" = "onlySnippets";
|
||||
"editor.wordBasedSuggestions" = false;
|
||||
"editor.wordBasedSuggestions" = "off";
|
||||
};
|
||||
"[nix]" = {
|
||||
"editor.tabSize" = 2;
|
||||
|
@ -90,7 +90,9 @@
|
||||
# environment.memoryAllocator.provider = lib.mkDefault "graphene-hardened";
|
||||
|
||||
# dhcpcd broken with scudo or graphene malloc
|
||||
nixpkgs.overlays = [(final: prev: {
|
||||
dhcpcd = prev.dhcpcd.override { enablePrivSep = false; };
|
||||
})];
|
||||
nixpkgs.overlays = lib.optionals (config.environment.memoryAllocator.provider != "libc") [
|
||||
(final: prev: {
|
||||
dhcpcd = prev.dhcpcd.override { enablePrivSep = false; };
|
||||
})
|
||||
];
|
||||
}
|
@ -1,14 +1,10 @@
|
||||
{ config, inputs, ... }: {
|
||||
sops.secrets.hoyolab-cookie1.sopsFile = inputs.self.secretsDir + /home-hypervisor/hoyolab.yaml;
|
||||
sops.secrets.hoyolab-cookie2.sopsFile = inputs.self.secretsDir + /home-hypervisor/hoyolab.yaml;
|
||||
sops.secrets.hoyolab-cookie3.sopsFile = inputs.self.secretsDir + /home-hypervisor/hoyolab.yaml;
|
||||
imports = [ inputs.ataraxiasjel-nur.nixosModules.hoyolab ];
|
||||
sops.secrets.hoyolab-config.sopsFile = inputs.self.secretsDir + /home-hypervisor/hoyolab.yaml;
|
||||
|
||||
services.hoyolab-daily-bot = {
|
||||
services.hoyolab-claim-bot = {
|
||||
enable = true;
|
||||
cookieFiles = [
|
||||
config.sops.secrets.hoyolab-cookie1.path
|
||||
config.sops.secrets.hoyolab-cookie2.path
|
||||
config.sops.secrets.hoyolab-cookie3.path
|
||||
];
|
||||
configFile = config.sops.secrets.hoyolab-config.path;
|
||||
startAt = "*-*-* 20:00:00";
|
||||
};
|
||||
}
|
||||
|
@ -106,8 +106,12 @@ in {
|
||||
rcloneConfigFile = config.sops.secrets.rclone-s3-sync.path;
|
||||
syncTargets =
|
||||
let buckets = [
|
||||
"authentik-media" "ocis" "outline"
|
||||
"obsidian-ataraxia" "obsidian-doste" "obsidian-kpoxa"
|
||||
"authentik-media"
|
||||
# "ocis"
|
||||
"outline"
|
||||
"obsidian-ataraxia"
|
||||
"obsidian-doste"
|
||||
"obsidian-kpoxa"
|
||||
]; in map (bucket: {
|
||||
source = "minio:${bucket}";
|
||||
target = "idrive:minio-${bucket}";
|
||||
|
@ -80,6 +80,7 @@ in {
|
||||
"lib.ataraxiadev.com"
|
||||
"lidarr.ataraxiadev.com"
|
||||
"medusa.ataraxiadev.com"
|
||||
"office.ataraxiadev.com"
|
||||
"openbooks.ataraxiadev.com"
|
||||
"pdf.ataraxiadev.com"
|
||||
"qbit.ataraxiadev.com"
|
||||
@ -92,6 +93,7 @@ in {
|
||||
"vw.ataraxiadev.com"
|
||||
"wg.ataraxiadev.com"
|
||||
"wiki.ataraxiadev.com"
|
||||
"wopi.ataraxiadev.com"
|
||||
# "webmail.ataraxiadev.com"
|
||||
|
||||
# "matrix.ataraxiadev.com"
|
||||
@ -344,6 +346,11 @@ in {
|
||||
"wiki.ataraxiadev.com" = default // authentik {
|
||||
proxyPass = "http://127.0.0.1:8190";
|
||||
};
|
||||
"wopi.ataraxiadev.com" = default // {
|
||||
locations."/" = {
|
||||
proxyPass = "http://127.0.0.1:8880";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -1,16 +1,32 @@
|
||||
{ config, lib, pkgs, inputs, ... }: {
|
||||
{ config, pkgs, lib, inputs, ... }: {
|
||||
imports = with inputs.ataraxiasjel-nur.nixosModules; [ ocis wopiserver ];
|
||||
|
||||
sops.secrets.wopiserver-secret.sopsFile = inputs.self.secretsDir + /home-hypervisor/ocis.yaml;
|
||||
sops.secrets.ocis-env-file = {
|
||||
owner = "ocis";
|
||||
mode = "0400";
|
||||
sopsFile = inputs.self.secretsDir + /home-hypervisor/ocis.yaml;
|
||||
restartUnits = [ "ocis-server.service" ];
|
||||
};
|
||||
imports = [ inputs.ataraxiasjel-nur.nixosModules.ocis ];
|
||||
|
||||
services.ocis = {
|
||||
enable = true;
|
||||
configDir = "/var/lib/ocis";
|
||||
baseDataPath = "/media/nas/ocis";
|
||||
package = pkgs.ocis-next-bin;
|
||||
configDir = "/var/lib/ocis/config";
|
||||
baseDataPath = "/var/lib/ocis/data";
|
||||
settings = {
|
||||
proxy.role_assignment = {
|
||||
driver = "oidc";
|
||||
oidc_role_mapper = {
|
||||
role_claim = "groups";
|
||||
role_mapping = [
|
||||
{ role_name = "admin"; claim_value = "ocisAdmin"; }
|
||||
{ role_name = "spaceadmin"; claim_value = "ocisSpaceAdmin"; }
|
||||
{ role_name = "user"; claim_value = "ocisUser"; }
|
||||
{ role_name = "guest"; claim_value = "ocisGuest"; }
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
environmentFile = config.sops.secrets.ocis-env-file.path;
|
||||
environment = {
|
||||
# Web settings
|
||||
@ -19,15 +35,15 @@
|
||||
OCIS_URL = "https://file.ataraxiadev.com";
|
||||
PROXY_HTTP_ADDR = "127.0.0.1:9200";
|
||||
PROXY_TLS = "false";
|
||||
# Disable embedded idp (we are using authentik)
|
||||
OCIS_EXCLUDE_RUN_SERVICES = "idp";
|
||||
PROXY_ENABLE_BASIC_AUTH = "false";
|
||||
# Disable embedded idp (we are using authentik) and default app-provider
|
||||
OCIS_EXCLUDE_RUN_SERVICES = "idp,app-provider";
|
||||
# OIDC Settings
|
||||
OCIS_OIDC_ISSUER = "https://auth.ataraxiadev.com/application/o/owncloud-web-client/";
|
||||
PROXY_AUTOPROVISION_ACCOUNTS = "true";
|
||||
PROXY_OIDC_ACCESS_TOKEN_VERIFY_METHOD = "jwt";
|
||||
PROXY_OIDC_ACCESS_TOKEN_VERIFY_METHOD = "none";
|
||||
# PROXY_OIDC_ACCESS_TOKEN_VERIFY_METHOD = "jwt";
|
||||
PROXY_OIDC_REWRITE_WELLKNOWN = "true";
|
||||
PROXY_ROLE_ASSIGNMENT_DRIVER = "oidc";
|
||||
PROXY_ROLE_ASSIGNMENT_OIDC_CLAIM = "groups";
|
||||
PROXY_USER_CS3_CLAIM = "mail";
|
||||
PROXY_USER_OIDC_CLAIM = "email";
|
||||
# S3 storage
|
||||
@ -36,13 +52,66 @@
|
||||
STORAGE_USERS_S3NG_BUCKET = "ocis";
|
||||
STORAGE_USERS_S3NG_ENDPOINT = "https://s3.ataraxiadev.com";
|
||||
STORAGE_USERS_S3NG_REGION = "us-east-1";
|
||||
# OnlyOffice app provider
|
||||
APP_PROVIDER_SERVICE_NAME = "app-provider-onlyoffice";
|
||||
APP_PROVIDER_EXTERNAL_ADDR = "com.owncloud.api.app-provider-onlyoffice";
|
||||
APP_PROVIDER_DRIVER = "wopi";
|
||||
APP_PROVIDER_WOPI_APP_NAME = "OnlyOffice";
|
||||
APP_PROVIDER_WOPI_APP_ICON_URI = "https://office.ataraxiadev.com/web-apps/apps/documenteditor/main/resources/img/favicon.ico";
|
||||
APP_PROVIDER_WOPI_APP_URL = "https://office.ataraxiadev.com";
|
||||
APP_PROVIDER_WOPI_INSECURE = "false";
|
||||
APP_PROVIDER_WOPI_WOPI_SERVER_EXTERNAL_URL = "https://wopi.ataraxiadev.com";
|
||||
APP_PROVIDER_WOPI_FOLDER_URL_BASE_URL = "https://file.ataraxiadev.com";
|
||||
};
|
||||
};
|
||||
|
||||
services.wopiserver = {
|
||||
enable = true;
|
||||
settings = {
|
||||
general = {
|
||||
storagetype = "cs3";
|
||||
port = "8880";
|
||||
loglevel = "Info";
|
||||
loghandler = "stream";
|
||||
logdest = "stdout";
|
||||
wopiurl = "https://wopi.ataraxiadev.com";
|
||||
downloadurl = "https://wopi.ataraxiadev.com/wopi/iop/download";
|
||||
internalserver = "waitress";
|
||||
nonofficetypes = ".md .zmd .txt .epd";
|
||||
tokenvalidity = "86400";
|
||||
wopilockexpiration = "3600";
|
||||
wopilockstrictcheck = "True";
|
||||
enablerename = "False";
|
||||
detectexternallocks = "False";
|
||||
};
|
||||
security = {
|
||||
wopisecretfile = "/run/credentials/wopiserver.service/wopisecret";
|
||||
usehttps = "no";
|
||||
};
|
||||
bridge = {
|
||||
sslverify = "True";
|
||||
};
|
||||
io = {
|
||||
chunksize = "4194304";
|
||||
recoverypath = "/var/lib/wopi/recovery";
|
||||
};
|
||||
cs3 = {
|
||||
revagateway = "127.0.0.1:9142";
|
||||
authtokenvalidity = "3600";
|
||||
sslverify = "True";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# persist.state.directories = [ "/var/lib/ocis" ];
|
||||
|
||||
systemd.services.ocis-server.after =
|
||||
lib.mkIf config.services.authentik.enable [
|
||||
"authentik-server.service"
|
||||
"authentik-worker.service"
|
||||
"nginx.service"
|
||||
];
|
||||
|
||||
systemd.services.wopiserver.serviceConfig.LoadCredential =
|
||||
"wopisecret:${config.sops.secrets.wopiserver-secret.path}";
|
||||
}
|
||||
|
114
profiles/servers/onlyoffice.nix
Normal file
114
profiles/servers/onlyoffice.nix
Normal file
@ -0,0 +1,114 @@
|
||||
{ config, lib, pkgs, inputs, ... }: {
|
||||
sops.secrets.office-jwt-secret.sopsFile = inputs.self.secretsDir + /home-hypervisor/onlyoffice.yaml;
|
||||
sops.secrets.office-jwt-secret.owner = "onlyoffice";
|
||||
|
||||
services.onlyoffice = {
|
||||
enable = true;
|
||||
port = 8800;
|
||||
hostname = "office.ataraxiadev.com";
|
||||
jwtSecretFile = config.sops.secrets.office-jwt-secret.path;
|
||||
};
|
||||
|
||||
systemd.services.onlyoffice-docservice = let
|
||||
office-config = pkgs.writeShellScript "onlyoffice-config" ''
|
||||
${pkgs.jq}/bin/jq '.wopi.enable = true' /run/onlyoffice/config/default.json | ${pkgs.moreutils}/bin/sponge /run/onlyoffice/config/default.json
|
||||
'';
|
||||
in {
|
||||
serviceConfig.ExecStartPre = lib.mkAfter [ office-config ];
|
||||
};
|
||||
|
||||
persist.state.directories = [ "/var/lib/onlyoffice" ];
|
||||
|
||||
services.nginx = let
|
||||
cfg = config.services.onlyoffice;
|
||||
in {
|
||||
virtualHosts."office.ataraxiadev.com" = {
|
||||
useACMEHost = "ataraxiadev.com";
|
||||
enableACME = false;
|
||||
forceSSL = true;
|
||||
locations = {
|
||||
# /etc/nginx/includes/ds-docservice.conf
|
||||
"~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(web-apps\/apps\/api\/documents\/api\.js)$".extraConfig = ''
|
||||
expires -1;
|
||||
alias ${cfg.package}/var/www/onlyoffice/documentserver/$2;
|
||||
'';
|
||||
"~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(web-apps)(\/.*\.json)$".extraConfig = ''
|
||||
expires 365d;
|
||||
error_log /dev/null crit;
|
||||
alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
|
||||
'';
|
||||
"~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(sdkjs-plugins)(\/.*\.json)$".extraConfig = ''
|
||||
expires 365d;
|
||||
error_log /dev/null crit;
|
||||
alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
|
||||
'';
|
||||
"~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(web-apps|sdkjs|sdkjs-plugins|fonts)(\/.*)$".extraConfig = ''
|
||||
expires 365d;
|
||||
alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
|
||||
'';
|
||||
"~* ^(\/cache\/files.*)(\/.*)".extraConfig = ''
|
||||
alias /var/lib/onlyoffice/documentserver/App_Data$1;
|
||||
add_header Content-Disposition "attachment; filename*=UTF-8''$arg_filename";
|
||||
|
||||
set $secret_string verysecretstring;
|
||||
secure_link $arg_md5,$arg_expires;
|
||||
secure_link_md5 "$secure_link_expires$uri$secret_string";
|
||||
|
||||
if ($secure_link = "") {
|
||||
return 403;
|
||||
}
|
||||
|
||||
if ($secure_link = "0") {
|
||||
return 410;
|
||||
}
|
||||
'';
|
||||
"~* ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(internal)(\/.*)$".extraConfig = ''
|
||||
allow 127.0.0.1;
|
||||
deny all;
|
||||
proxy_pass http://127.0.0.1:${toString cfg.port}/$2$3;
|
||||
'';
|
||||
"~* ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(info)(\/.*)$".extraConfig = ''
|
||||
allow 127.0.0.1;
|
||||
deny all;
|
||||
proxy_pass http://127.0.0.1:${toString cfg.port}/$2$3;
|
||||
'';
|
||||
"/".extraConfig = ''
|
||||
proxy_pass http://127.0.0.1:${toString cfg.port};
|
||||
'';
|
||||
"~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?(\/doc\/.*)".extraConfig = ''
|
||||
proxy_pass http://127.0.0.1:${toString cfg.port}$2;
|
||||
proxy_http_version 1.1;
|
||||
'';
|
||||
"/${cfg.package.version}/".extraConfig = ''
|
||||
proxy_pass http://127.0.0.1:${toString cfg.port}/;
|
||||
'';
|
||||
"~ ^(\/[\d]+\.[\d]+\.[\d]+[\.|-][\d]+)?\/(dictionaries)(\/.*)$".extraConfig = ''
|
||||
expires 365d;
|
||||
alias ${cfg.package}/var/www/onlyoffice/documentserver/$2$3;
|
||||
'';
|
||||
# /etc/nginx/includes/ds-example.conf
|
||||
"~ ^(\/welcome\/.*)$".extraConfig = ''
|
||||
expires 365d;
|
||||
alias ${cfg.package}/var/www/onlyoffice/documentserver-example$1;
|
||||
index docker.html;
|
||||
'';
|
||||
};
|
||||
extraConfig = ''
|
||||
rewrite ^/$ /welcome/ redirect;
|
||||
rewrite ^\/OfficeWeb(\/apps\/.*)$ /${cfg.package.version}/web-apps$1 redirect;
|
||||
rewrite ^(\/web-apps\/apps\/(?!api\/).*)$ /${cfg.package.version}$1 redirect;
|
||||
|
||||
# based on https://github.com/ONLYOFFICE/document-server-package/blob/master/common/documentserver/nginx/includes/http-common.conf.m4#L29-L34
|
||||
# without variable indirection and correct variable names
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Forwarded-Host $host;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
# required for CSP to take effect
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
# required for websocket
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection $connection_upgrade;
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
@ -277,6 +277,7 @@ in with config.deviceSpecific; with lib; {
|
||||
windowrule=opaque,virt-manager
|
||||
windowrulev2=opaque,class:^(.*winbox64.exe)$
|
||||
windowrulev2=tile,class:^(.*winbox64.exe)$
|
||||
windowrulev2=tile,class:^(starrail.exe)$
|
||||
|
||||
windowrule=opaque,.*jellyfin.*
|
||||
'' ''
|
||||
|
@ -14,6 +14,9 @@ with config.deviceSpecific; {
|
||||
services.journald.extraConfig = "Compress=false";
|
||||
services.gvfs.enable = !isServer;
|
||||
services.upower.enable = isLaptop;
|
||||
xdg.portal.enable = true;
|
||||
xdg.portal.config.common.default = "*";
|
||||
xdg.portal.xdgOpenUsePortal = true;
|
||||
|
||||
home-manager.users.${config.mainuser} = {
|
||||
news.display = "silent";
|
||||
|
@ -28,7 +28,7 @@
|
||||
waydroid
|
||||
zathura
|
||||
|
||||
aria2
|
||||
# aria2
|
||||
cursor
|
||||
direnv
|
||||
fonts
|
||||
|
15
scripts/find_store_path_gc_roots.sh
Executable file
15
scripts/find_store_path_gc_roots.sh
Executable file
@ -0,0 +1,15 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
function find_store_path_gc_roots {
|
||||
store_path="$(realpath $1)"
|
||||
while IFS=' ' read -r gcroot derivation; do
|
||||
if [[ ! $gcroot =~ ^/proc ]]; then
|
||||
if nix-store -qR "$derivation" 2>/dev/null | grep -q "$store_path"; then
|
||||
echo $gcroot
|
||||
fi
|
||||
fi
|
||||
done < <(nix-store --gc --print-roots | awk '{print $1, $3}')
|
||||
}
|
||||
|
||||
|
||||
find_store_path_gc_roots "$@"
|
@ -1,14 +1,12 @@
|
||||
hoyolab-cookie1: ENC[AES256_GCM,data:nntVA/KhfdKApuJxjRNHskAQz7CG3BLCONEpT1QrKLMKzwnA6RsvW2OzKG8SgbVyeqCeTTSIKDPth3jImOwk68zK9S2yz9mWRivlPLR86IVdAannbhTFhmHlCqrRHPPYlEZ+Su23zvOGMKn+YVc15mBxnnFCDKYR7MrTiNxkjovSTSr5WwtDwccfu9kcM2Z2u8lEMtdWqcRFHDarnAvThO8QguWJ+DospIRbAMXFD7wTSDEAGAOhcVegoxHni1D/fDe36pbW0x0lBC/J6z4of+yJpEvRrnWvxWsD/eSqzljxmSzovU3mXesB2tyoz+Jd6guERILtM1XQeezi,iv:VM4GPfkSuq6c5Z4sRVFOcn7YKEkFOtEA0PcbYaOhF9g=,tag:7DPK+nyt0ErkE31udEIRqA==,type:str]
|
||||
hoyolab-cookie2: ENC[AES256_GCM,data:/XTaJ6YKw3p1A6i+LGjYU/d6zO/bNsX2dWbMDp9fLNCkPGIwFbUCXbiHZqf+enTmk5zzOyxb+B2sJvjeW4kKKP2BDkr0okpUX/AleA+3ReEgPIIiKPNMNL3t1eAVRQEs9t+3s8zj6+siGPjZUpuy7NvrhnETvi7YmVSTamA400X8d9gbKG4Vs7hPB4otA5t8pXZYqJWLuRyjwvvdxYrtgpdRfgzYWhBOu5dZ+rFtccJI/rQMlTcJcPbhmc2vFV09I2xaeXU8piDEMco3y+wm0p3KduPNzP98s6LvfxiQMqM60/baKw/3M055EbQoRinUJDG63eaqL/ACNztZ,iv:+fWtn55dn5fOGjvIlrYfh0FmMzG9/mf/fNOOa9KR5Qg=,tag:yI0bJpXNC5mKKdO3/8cx+w==,type:str]
|
||||
hoyolab-cookie3: ENC[AES256_GCM,data:3lDvQRrf4wrl28G6ognKlEPquG3JYieYA9ZQ4cEL/QwB0F+ksP2sTxFeIr9gihsWZQHgfYzeRLCSOAammW0WO/prpCP1X/JzuA0uGF83aMC07n2FSiroHjiBPBJhwUBRW0hPeXSURWz5D4mtDkv6PQB6bkfY0y2V2QNQ26qiT/mooi1tJGL4uSfMZ5Ix+emJwtzn/CCGTr1Y0U9GZf5IiFj6Z76mMPZ1BEW2C+b/XD1huatMr3KLNGoYVqJm/6pCCGr6GkUh+jJXtdNM612oe0r6PVu6UhVel+58jhWzKUoGv4ZOZMqhbrjla93BEfVNI6aRnTySpRWwl0EV,iv:Wmso1lZa65M7Ej7so2Lw7Mbvib2O7upfpnOEwACTeYc=,tag:oswA0vhQ2I2gty7v7lVjdg==,type:str]
|
||||
hoyolab-config: ENC[AES256_GCM,data:a+VkRtVAiVfFSazp64Fy5eA6TAbAcC7bm2k6p8AE1FJgA8Z/LlOCcDbTaueFXecOCGpcSuv+SJTsu+2IRD2V7ZWIUot0b1fxKUFZ5hIU8LmpXxxh8tQz3N7Rw6FAWHrN/BM3m981pTqd4FOmqXtgxOMF8ItsGJEwpRkq31lT+A7dcuEuQCykll2dXeHQJXBVUs3TbeDsCo4/lNan++sYm0QvS33n+ybs29oePPeteWdXHEZtfmWHLKU5KPy86uPOkooKXkv5+XibTgaQzo90/AZA3FjED9Mko+mFzPhGtsYhr2wjId8Go3zm5HKqcpWWiut7mkBJzZ4YoOYCdHaqWM0ySbbdMCGiKmvpQCsq5weXI6WL2wfIxOp5SKVl9K3AR97jgl6CG/uoko9ozCSWsK6DUob5yglTK0iMvcuo0k2ohxAM/aFnxrLmUuQ7Jbu0DjKpT0xlELavSlScA8aS6aMzJT3u/i05pTPkoNDoYB0bviGyjJ+greP+YVINeqJPmrVvK7KKAu2ULLYHfsUNHlAMMZi/22PkNHotIXsbj6kEGaegiDTnuuVFwKW2j4vX4LEp0AwSr/M9OLjLN16k0Sslu+oifP68pxz24DqtpyPCS/cy1uVLtUHjtk8puR+l7+fmaRh1bCGC2zFb/D4q2TFSS8hlv7bYK0YNpEYGkJd6IXyYgcDNijPEAm2VbBYY24eyW8+GMy6wPCD++DPF4/tvhoVpqqPYgE56h2+Qv4Ca0BugmfSzntEOCRKteeCqVmvGTsBGT9YUwravdQc=,iv:sKhAPKaELVo17Rt/tPi5L/kFSSim5A/H6vM+7df5qUE=,tag:nvghxY7EAtDNf8OlolXLlw==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age: []
|
||||
lastmodified: "2024-01-21T19:16:02Z"
|
||||
mac: ENC[AES256_GCM,data:wEaG9ORs4llAHChwW7UxXgJ0UIcjzmubfIXF/ufZ+HlD4rxM8SLmWlmyCD9AdwR76VMz2pK3juyZmyGeOubriMegunf0jouHpr59smk6jFES8uBr1ik6GcTG4uL0LSmj+LYeJB43/ob+68VxiTicA05rP4jl+BU0Iy90hX9Hkng=,iv:UdcPrwWOgrdcy8PfveNAxte6yW4VR7VMnknrGItDvVY=,tag:g75nyYRspjO2LMDz+Z4izA==,type:str]
|
||||
lastmodified: "2024-02-02T18:46:43Z"
|
||||
mac: ENC[AES256_GCM,data:W+btPIsNOr8e47vnjwmEa3xQT/kv1nJapzX6PC/CEcCUWng+wfwsIrxj8gg4fXCPiBsjzbYrMlUEylibwNm7sr6xJqI6nVf73cH3kXJMfpufRjfCjLSbzmg6tEWtWf+S7zaRD6ibwe5ZhFooYriGtatZVQg7oyGoMUK5Cf0mJWk=,iv:LhqEJTh5+nlEcExRh2GHwgmazAezKU9nU+ktZjXhJNM=,tag:/r8YVU7dp5DZESu9xCsezA==,type:str]
|
||||
pgp:
|
||||
- created_at: "2024-01-21T19:15:05Z"
|
||||
enc: |-
|
||||
|
@ -1,13 +1,14 @@
|
||||
ocis-admin-pass: ENC[AES256_GCM,data:WfgdyfLxojFR6/hOIu+ycFgiih8=,iv:s9GWDBrrWGWkRDzd/BB3tuyExmdKVa7qvRbjgx0N0jQ=,tag:eRFs5ZCTBjbXSRwvO8lCSg==,type:str]
|
||||
ocis-env-file: ENC[AES256_GCM,data:6oyXhsmmMzFd7CIv4j+gWbzHo4Jy4Ym5KzV6tAXdKkTP1n6Yvv1UpdebOzXfrXZTTHuEzrTJvtFAviZd526KyAeeo53iQvWDdhazeywHL5AbsmUJ7IZ0eChGiXBXsYTYSb+TyFaRHpZazpT8ePurHkVuYfE4lyKDIILu3Y4ahfyXQzRnh3lhS1SxuWtDcoG6lcuAwgLBOgcIeHWI9rqmtylneeGf70oRfd80sHQ=,iv:tlQF8b0x+qd7JuhbFY1ekZNKjT68SKW6P/DRYalYfuU=,tag:V6SjKQbZiGm7rJtCtogQRw==,type:str]
|
||||
ocis-env-file: ENC[AES256_GCM,data:qbnZCgJIh9Cf2Qr2awAjcLFBOJKEIKha5pcvPjSF6GevzgIpogtyoSHHYVZuWVyoAuA5lvS7tjcjKdDTz9evCa2lbVzFbrFeRdsmAxksEpYDTFR+3akhmijXUxk/V+dYs17bgKVeWkINehCjfeTQdVCjwZOaz7tUAOqlGszYE9k1DlocWVJqZ4zVneb3up90cu2Yt2Ekl/ZGrnr3YIfJPYhnwv11xIhZSbDXAEy3tRnOp0bJOsYBexr3vPkExvtE8FgRxv/ueA+IcSnpdhuX5ocvn3MWDLMcGwTigJtgyghyb3ECjPCEPmcST5v1bYwcjTPmqfGtygoH/1mZnba/2BjccUuO4CdTYqDYIBUVJHzqrcdU6eu+KyBJ9/XQznw/HNrECBxJG3xLwcq08bbGnooOIrmnyw/LKIMieHRuzD8bHfpNvg1M,iv:48Aa27n1WbsvuoPRn8xmrzIfJDELk/R9VJ7mcA88oW8=,tag:EE/Djgsfpwbaxv1DcVr9CA==,type:str]
|
||||
wopiserver-secret: ENC[AES256_GCM,data:Qa1HM5Gx0n+U4Nc2phQJmogAzaHzzzB7F+i05WfwBFrDwhmkSMYjunX6SWWQfbocR7sxDfYVZUCVWSzWvEJr89Vb9vrLfSupOYMNbrs5c703N84CAIIGVx0i+EvbBl1I,iv:kAFxY81rGG+WEjzUcy/smYaHLRaojDUfrkQZUM0LLxk=,tag:7HuKX8cEdyjag91kS8lmLw==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age: []
|
||||
lastmodified: "2024-01-20T20:50:32Z"
|
||||
mac: ENC[AES256_GCM,data:0SLZnxDo9X6a6od00XKsZ45RfdC43JHom9H6lhTdgco/w7OnRFd4ukJoaQfL8OnXuS5v7UgxNByzuVNJY7cIgNXLNKKFYG7fzb8GNyTmYyFbSUyjlgQ1pDbjFdKsWTgeoUyb/Q/CzdZFWBbJLvMkwwR1pirhWCEQx3GxlaD8MNA=,iv:L6XPxjhLH0bJCveTYWL9aYXhHvxusJcbE2EO8OwPg24=,tag:GveNLkF72FSfVBazWPigrQ==,type:str]
|
||||
lastmodified: "2024-02-05T12:53:28Z"
|
||||
mac: ENC[AES256_GCM,data:Nb0UIbPvHANxtSYfOp3MZWQDOYxFSv51aLoIG+m+4Ql23sXUXqzY/1Ojjhh097qLK8Nk0Fkoy6vpKopiQpYJD1yu+uxJjHLuGhsNDVDds7tW2MtEs6MB4IEuPfSYyRhBjEZjU9XvchHiELJxztwywfApM4pjSevqxpLz273Hf1E=,iv:muz0pZp9Z+HFTPcXi8gXGJcGevpUE1GmhKQZMDFTpiA=,tag:6tXmiLkX7ByuoqeqqBntuw==,type:str]
|
||||
pgp:
|
||||
- created_at: "2024-01-20T17:09:10Z"
|
||||
enc: |-
|
||||
|
47
secrets/home-hypervisor/onlyoffice.yaml
Normal file
47
secrets/home-hypervisor/onlyoffice.yaml
Normal file
@ -0,0 +1,47 @@
|
||||
office-jwt-secret: ENC[AES256_GCM,data:gzGoVQDZVNHkwA1AmcF4jOqcusHoP75OGSqc098zD7eLAL/tFo9R7b6kfGvGWUKk4TPIyU4fzz3Uqhw5vHi/DA/ikCjT3HbnuwTk0ApJuyy27PTLt9opKoEaRyAEcOex,iv:qHTmnWKbek1sySWs5qjldcSvoVC5rAKgRuI7jX1g7lk=,tag:kjkHv92FEO6zomu8OcGCsA==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age: []
|
||||
lastmodified: "2024-02-03T18:53:42Z"
|
||||
mac: ENC[AES256_GCM,data:NgVHm1yxlV+GU6TgLhWiMutizLsdmZJwEPKuErXUAK83pCXhECWaqQSn9HNs7hG8GuLnl02lJmS7R078j+hTvLAxYKEewkU9uRzSNJ5Ri0BMCQOtBgoKNS+naCxom9mUL/HvrDc65S8ENiIlQBWCpv9/mY10kUrI/QnI+DVaD18=,iv:FcS3gfIvvzsyAv+eW5XuOXmcQLoE71KvzL3IWiy2hTc=,tag:ZRhiIsEEVix+lZuyVNIh2A==,type:str]
|
||||
pgp:
|
||||
- created_at: "2024-02-03T18:52:29Z"
|
||||
enc: |-
|
||||
-----BEGIN PGP MESSAGE-----
|
||||
|
||||
hQEMAwcagTG/Fm6AAQf/bzkgXT2mAN+YPVUrFV9sAU8onCyHN0ej8OyW3JKxjU5n
|
||||
2RmjFBSq05polDk1bzcbue4e61T8sn7av1iXzsGPpt7egy4nD5Vmo4/GcNA9vnGz
|
||||
OotP4dLxVLfOJvC9H7idhXIWMSbDTFSzduUA9H1F1yOBr5oCpw16foVSrD6QlgAC
|
||||
4wiDQZg/lpxBGGphnCN10xp52DbBQ48CKapvwx8QhjCDv1UpD9XlOPIeGmcA1txP
|
||||
TxEGJVa9pJhlvCU9wEyE+SvxZhgT0e9cYI5sc6N+MFA+gcCmJ41mX39FElkZ/LV7
|
||||
b2xKogdjq90aA2o66qURZbv/DUHS+cAz2pBxwJzjOdJYAQZ7oZucpuF9O3lJCK/K
|
||||
dwCFUyo6sXn0HSeTFCRDbsC+0eVK0jJfyJr+MCKXgibeUbfToJllS6Q5PUWarYCl
|
||||
Ei8xlald6lpZgYCnca7C9O7bv/wp9WztUA==
|
||||
=RgsL
|
||||
-----END PGP MESSAGE-----
|
||||
fp: ad382d058c964607b7bbf01b071a8131bf166e80
|
||||
- created_at: "2024-02-03T18:52:29Z"
|
||||
enc: |-
|
||||
-----BEGIN PGP MESSAGE-----
|
||||
|
||||
hQIMA187ia82lSDGAQ/+IpyQWSsl7quF5yk39smz9Zn8LVAwc/9tNePehZkyCdpk
|
||||
LNeCnbZGyeLDhPsQ762wdFX/f8W/8ZX5AqQI9d8Zp+kG2G3YtwI46FiFsz1zdiVT
|
||||
lnxKjVER4FBWwlD2LAGl4MFIBk8gqKyzzvCAxR6CpybGMABx+LjFa+HKN7sH3i3a
|
||||
CcpH+0+W2S0IArTexSGetrmba/s+t3g9hEzVPVPWGutG+XkSiItne1maqEbpkWRM
|
||||
zyFaW+JWCDmvrXfP3qMUGeQI6x0otEpcYuLoFno93I/8N+UxIAijFTOK9kD+ZoSy
|
||||
t6mW5d/BtjZH6/32JRKkEv2tFbt6NP9dqStNbbnhb5SI7jKLGcXVLMpSQvajYz68
|
||||
91X9SOWYJCNZ1ssEnYBDUiVqQL0Jfe7UR5EplzJEo0zeWbV8bMTHAWxeioOHFdXn
|
||||
aYzk6wgt+kaHshAjGbkKyMTWB/a3pTAkcc1v0Uc9SM1wPU9Cn+26GdH/sHLaOfve
|
||||
7am6Ige+68/vgVTLPJ9C37wf2b4XT3/7Cx6CXpj54uFaDjZYpzGg1vWhtyZXl3m1
|
||||
4gDL4NZdqacbsHlmWMTqYXYki+aSJed7OwjIgwt4G1KoKfYlI2fGOmGegplH/iYd
|
||||
kxmdtnENg9011LcoXv3p/8TTOYkk3hArRkY0E37X+IEYnXB1EflTUc2KPRPDRNvS
|
||||
WAGxqiAuTkbYQRfetrxpdOWEFe8iJydZA06vAbsiV7gZHSYW/LUtOS5aWp0WCwbZ
|
||||
daODyvPT2chs44wa8xsSjHtRn/qX2S0sw/Bdzs39YSuq2yq7MVktNws=
|
||||
=S7Zs
|
||||
-----END PGP MESSAGE-----
|
||||
fp: a32018133c7afbfd05d5b2795f3b89af369520c6
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.8.1
|
@ -1,3 +1,5 @@
|
||||
rustic-backups-s3-env: ENC[AES256_GCM,data:XrZoIYUauOwK/YNItn7OziLEBYXXekgOE3nVLJjzMc7k698uZcYvRHEfQCq5lvH/110BIL11AJumQcfBnG6lYTqjBs56vlJvbh7olsNACX5ZyDR/qYXkfSqcO61JfZufQVAvlag=,iv:Wx5xBQdDRolB6NsuoDlw1JGYk5YrG28unblo8hDea14=,tag:++cKr0a4Ep4mbENVaA3P3A==,type:str]
|
||||
rustic-postgresql-s3-env: ENC[AES256_GCM,data:Jdfx3PT4cXMyZTJBXOp/bBcD5QBPucTONT2WctGSIUUGKz/OKb+U8OX9FKTmXlWHiXZctMMj2NJkuueihsJHFmcDPZT5lmh8Y0E4j0sB6anUHcPEJyXfl1TAIteErsmeu90Lsy4=,iv:ugQXfGMjiwX4s1GFHhW0R9vPRmWUELmMiUOQGPWqidI=,tag:DcVQCKHskliy9itMMT3ZAA==,type:str]
|
||||
rclone-rustic-backups: ENC[AES256_GCM,data:78Ch7VVk/9rPy8pTQCTmuSSXWVKlNwlaTxnrM4yBi8/AQ6B4QJYQr1ibtxbgFs4aGHMddJbARLILT9afzXVF3dwyZ5490v8b+6NmGQ/ECdLpQ3LUGWzQHSkTQRib8s2ks2v3XC7AAzUr4hNdXHxL4/11WrKIL5wJyn2YP/KngQoIjijkpzoAoKZgr9cTZDSQ3FsnDv6WlQ4lTneRSkssFmHrytgFWEj/EXTqeZo5/2E7GrqFC161iO/p6+ZM9dNFoSsLxj4SI5gF2HsUChZbDfMyMdzYCHTt,iv:a1Vgs89rKIDJ//CCN94F3rzUSBtbrBB9fB8nZpFacTg=,tag:Y4QA6YKOUAWN5uhnG2C95Q==,type:str]
|
||||
rclone-postgresql-backups: ENC[AES256_GCM,data:rEINBfZezX3YSfQQhYm9JsgHOZE4c4us3dl5FvgZv2L+uIsoVVSNt0gr6My/nk19hL7IGY1I7ab2YgEwKE3w4rV3wpZ6+lCAucNM2YvGXWoqpvOvhH0YGfASA7yOSDaLZ69zL07UGX0WK2Z2dDrLOEz8NJsPbOn55XvDXVwjtR1o3R7j7bLKUHgcm8S/JGF0IQXvJWBN/WQzF66rFjNf0SxReEfa/mYLr3w+qdBpRVsZ3yiXQrvFUWj9GNS3FYfG6wro5SLGLuX7hDkGE+KiKv7j0cuMkphlQu0IyQ==,iv:NodSsCEPz6dMfSbHKE3sIfehaZ7cD3tq3gVtTceHmrg=,tag:lBDzO4QmOGyUBX5aAm2TYA==,type:str]
|
||||
rustic-nas-pass: ENC[AES256_GCM,data:uDiQQRxlpBfbwihXDR32aGjP41iZ,iv:qx6FJEllahkP9BPYFFfv9LHnnVTOl6B7Jv9OSfNkPok=,tag:MBUT77ccG/acr/U/X2zrCA==,type:str]
|
||||
@ -11,8 +13,8 @@ sops:
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age: []
|
||||
lastmodified: "2024-01-23T15:17:00Z"
|
||||
mac: ENC[AES256_GCM,data:Ws5QPNDrb/xHj9/F6d14l2juemaVzLecYs4SeN/Fwo0DSztJsZhSK9JV2gx+iZk1R5i5WKJumr+2SPeEbFzfQkIuemj32ECHGBPKI0UB1O48hEMWOxIMN03zXf56MujWWXoIeVK+bzVNPot9+qtU0mZQ/VvLlVpWF35vb8tkORE=,iv:nJKM7qFqK1ezTiMe8sXAOz+Bpg+BnKCZOGDKCgUEEHE=,tag:01+MqoF0jfGjauVeaVatyQ==,type:str]
|
||||
lastmodified: "2024-02-04T12:24:39Z"
|
||||
mac: ENC[AES256_GCM,data:frEvsfMhwVE6cusyS5hc3IAopdqGjooiPwbPbYEgUTiu4xRSqdkf0g4Ue9m3oK/zfm7gxRsvf+7HQ25J4bChhwOU6QGHzpVozpaipc0gS1Bxut4QfSytKM6fnkKJcn3nkMudosjBmPTU51AFqziFQmV5OMaeuiqipin31nWyZKk=,iv:ZcTBndDwp86X2VMQ3Y3Rk0KYHtzuK+ZRmAxs7Y2cyU8=,tag:mXoy18OqrLrg2KiUvw7QjQ==,type:str]
|
||||
pgp:
|
||||
- created_at: "2024-01-22T10:23:32Z"
|
||||
enc: |-
|
||||
|
Loading…
x
Reference in New Issue
Block a user