diff --git a/modules/nixos/services/restic-server/default.nix b/modules/nixos/services/restic-server/default.nix new file mode 100644 index 0000000..470187f --- /dev/null +++ b/modules/nixos/services/restic-server/default.nix @@ -0,0 +1,31 @@ +{ + config, + lib, + namespace, + ... +}: +with lib; +let + name = "restic-server"; + cfg = config.${namespace}.services.${name}; + + resticConfig = lib.${namespace}.mkModule { + inherit config name; + serviceName = "restic-rest-server"; + description = "restic REST server"; + options = { }; + moduleConfig = { + services.restic.server = { + enable = true; + dataDir = "${cfg.dataDir}/backup/restic"; + prometheus = true; + listenAddress = "${cfg.listenAddress}:${toString cfg.port}"; + htpasswd-file = "${cfg.dataDir}/backup/restic/.htpasswd"; + extraFlags = [ "--no-auth" ]; + }; + }; + }; +in +{ + imports = [ resticConfig ]; +}