at master 935 B view raw
1# urserver service 2{ 3 config, 4 lib, 5 pkgs, 6 ... 7}: 8 9let 10 cfg = config.services.urserver; 11in 12{ 13 14 options.services.urserver.enable = lib.mkEnableOption "urserver"; 15 16 config = lib.mkIf cfg.enable { 17 18 networking.firewall = { 19 allowedTCPPorts = [ 20 9510 21 9512 22 ]; 23 allowedUDPPorts = [ 24 9511 25 9512 26 ]; 27 }; 28 29 systemd.user.services.urserver = { 30 description = '' 31 Server for Unified Remote: The one-and-only remote for your computer. 32 ''; 33 wantedBy = [ "graphical-session.target" ]; 34 partOf = [ "graphical-session.target" ]; 35 after = [ "network.target" ]; 36 serviceConfig = { 37 Type = "forking"; 38 ExecStart = '' 39 ${pkgs.urserver}/bin/urserver --daemon 40 ''; 41 ExecStop = '' 42 ${pkgs.procps}/bin/pkill urserver 43 ''; 44 RestartSec = 3; 45 Restart = "on-failure"; 46 }; 47 }; 48 }; 49 50}