at 22.05-pre 927 B view raw
1{ config, pkgs, lib, ... }: 2 3with lib; 4 5let 6 cfg = config.services.couchpotato; 7 8in 9{ 10 options = { 11 services.couchpotato = { 12 enable = mkEnableOption "CouchPotato Server"; 13 }; 14 }; 15 16 config = mkIf cfg.enable { 17 systemd.services.couchpotato = { 18 description = "CouchPotato Server"; 19 after = [ "network.target" ]; 20 wantedBy = [ "multi-user.target" ]; 21 22 serviceConfig = { 23 Type = "simple"; 24 User = "couchpotato"; 25 Group = "couchpotato"; 26 StateDirectory = "couchpotato"; 27 ExecStart = "${pkgs.couchpotato}/bin/couchpotato"; 28 Restart = "on-failure"; 29 }; 30 }; 31 32 users.users.couchpotato = 33 { group = "couchpotato"; 34 home = "/var/lib/couchpotato/"; 35 description = "CouchPotato daemon user"; 36 uid = config.ids.uids.couchpotato; 37 }; 38 39 users.groups.couchpotato = 40 { gid = config.ids.gids.couchpotato; }; 41 }; 42}