nixpkgs/nixos/modules/services/x11/urserver.nix

39 lines
883 B
Nix

# urserver service
{ config, lib, pkgs, ... }:
let
cfg = config.services.urserver;
in {
options.services.urserver.enable = lib.mkEnableOption "urserver";
config = lib.mkIf cfg.enable {
networking.firewall = {
allowedTCPPorts = [ 9510 9512 ];
allowedUDPPorts = [ 9511 9512 ];
};
systemd.user.services.urserver = {
description = ''
Server for Unified Remote: The one-and-only remote for your computer.
'';
wantedBy = [ "graphical-session.target" ];
partOf = [ "graphical-session.target" ];
after = [ "network.target" ];
serviceConfig = {
Type = "forking";
ExecStart = ''
${pkgs.urserver}/bin/urserver --daemon
'';
ExecStop = ''
${pkgs.procps}/bin/pkill urserver
'';
RestartSec = 3;
Restart = "on-failure";
};
};
};
}