diff --git a/hosts/sisko/default.nix b/hosts/sisko/default.nix index 9542bc1..50e3cc2 100644 --- a/hosts/sisko/default.nix +++ b/hosts/sisko/default.nix @@ -33,6 +33,7 @@ "arr" "zerotier" "mosh" + "amule" ] ++ [ ./disko.nix diff --git a/modules/amule/default.nix b/modules/amule/default.nix new file mode 100644 index 0000000..9752f8f --- /dev/null +++ b/modules/amule/default.nix @@ -0,0 +1,34 @@ +{ config, lib, ... }: +{ + users.users.amule = { + isSystemUser = true; + group = "amule"; + extraGroups = [ "amule" ]; + home = config.services.amule.dataDir; + }; + + users.groups.amule = { }; + services.amule = { + dataDir = "/mnt/hd/amule"; + enable = true; + user = "amule"; + }; + + # sometimes the service crashes with a segfeault without any reason... + systemd.services.amuled.serviceConfig.Restart = lib.mkForce "always"; + + environment.persistence."/persist".directories = [ + config.services.amule.dataDir + ]; + + networking.firewall = { + allowedTCPPorts = [ 4662 ]; + allowedUDPPortRanges = [ + { + from = 4665; + to = 4672; + } + ]; + }; + +}