diff options
Diffstat (limited to 'hosts/tahoe')
-rw-r--r-- | hosts/tahoe/default.nix | 9 | ||||
-rw-r--r-- | hosts/tahoe/services.nix | 37 |
2 files changed, 45 insertions, 1 deletions
diff --git a/hosts/tahoe/default.nix b/hosts/tahoe/default.nix index dfac37c..ad48bcc 100644 --- a/hosts/tahoe/default.nix +++ b/hosts/tahoe/default.nix @@ -5,7 +5,7 @@ ./hardware-configuration.nix ./networking.nix ./home.nix - ../profiles/nas.nix + ./services.nix ]; my.system.boot = { @@ -13,6 +13,13 @@ initrd = { network.enable = true; }; }; + users.groups.nas.gid = 5000; + users.users.nas = { + uid = 5000; + group = "nas"; + isSystemUser = true; + }; + # This value determines the NixOS release from which the default # settings for stateful data, like file locations and database versions # on your system were taken. It‘s perfectly fine and recommended to leave diff --git a/hosts/tahoe/services.nix b/hosts/tahoe/services.nix new file mode 100644 index 0000000..a8badea --- /dev/null +++ b/hosts/tahoe/services.nix @@ -0,0 +1,37 @@ +{ ... }: + +{ + my.services = { + samba = { + enable = true; + publicShares = [ "/data/fast/music" "/data/fast/videos" ]; + }; + navidrome = { + enable = true; + musicFolder = "/data/fast/music"; + }; + unifi = { enable = true; }; + prometheus = { enable = true; }; + grafana = { enable = true; }; + gitea = { + enable = true; + stateDir = "/var/lib/gitea"; + }; + rclone = { enable = true; }; + traefik = { enable = true; }; + transmission = { enable = true; }; + metrics-exporter = { enable = true; }; + }; + + services.restic.backups = { + media = { + paths = [ "/data/fast/music" "/data/fast/photos" "/data/fast/videos" ]; + repository = "/data/slow/backups/systems"; + passwordFile = config.age.secrets.restic-repo-systems.path; + timerConfig = { OnCalendar = "00:55"; }; + initialize = true; + extraBackupArgs = [ "--tag media" ]; + pruneOpts = [ "--keep-daily 7" "--keep-weekly 4" "--keep-monthly 12" ]; + }; + }; +} |