at 16.09-beta 939 B view raw
1{ config, pkgs, lib, mono, ... }: 2 3with lib; 4 5let 6 cfg = config.services.sonarr; 7in 8{ 9 options = { 10 services.sonarr = { 11 enable = mkEnableOption "Sonarr"; 12 }; 13 }; 14 15 config = mkIf cfg.enable { 16 systemd.services.sonarr = { 17 description = "Sonarr"; 18 after = [ "network.target" ]; 19 wantedBy = [ "multi-user.target" ]; 20 preStart = '' 21 test -d /var/lib/sonarr/ || { 22 echo "Creating sonarr data directory in /var/lib/sonarr/" 23 mkdir -p /var/lib/sonarr/ 24 } 25 chown -R sonarr /var/lib/sonarr/ 26 chmod 0700 /var/lib/sonarr/ 27 ''; 28 29 serviceConfig = { 30 Type = "simple"; 31 User = "sonarr"; 32 Group = "nogroup"; 33 PermissionsStartOnly = "true"; 34 ExecStart = "${pkgs.sonarr}/bin/NzbDrone --no-browser"; 35 Restart = "on-failure"; 36 }; 37 }; 38 39 users.extraUsers.sonarr = { 40 home = "/var/lib/sonarr"; 41 }; 42 43 }; 44}