SABnzbd makes Usenet as simple and streamlined as possible by automating everything we can. All you have to do is add an .nzb. SABnzbd takes over from there, where it will be automatically downloaded, verified, repaired, extracted and filed away with zero human interaction. http://sabnzbd.org/ svn path=/nixos/trunk/; revision=22446wip/yesman
parent
41cc6ecdbb
commit
2335cb65a3
@ -0,0 +1,52 @@ |
||||
{ config, pkgs, ... }: |
||||
|
||||
with pkgs.lib; |
||||
|
||||
let |
||||
|
||||
cfg = config.services.sabnzbd; |
||||
inherit (pkgs) sabnzbd; |
||||
|
||||
in |
||||
|
||||
{ |
||||
|
||||
###### interface |
||||
|
||||
options = { |
||||
services.sabnzbd = { |
||||
enable = mkOption { |
||||
default = false; |
||||
description = "Whether to enable the sabnzbd FTP server."; |
||||
}; |
||||
configFile = mkOption { |
||||
default = "/var/sabnzbd/sabnzbd.ini"; |
||||
description = "Path to config file. (You need to create this file yourself!)"; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
|
||||
###### implementation |
||||
|
||||
config = mkIf cfg.enable { |
||||
|
||||
users.extraUsers = |
||||
[ { name = "sabnzbd"; |
||||
uid = config.ids.uids.sabnzbd; |
||||
description = "sabnzbd user"; |
||||
home = "/homeless-shelter"; |
||||
} |
||||
]; |
||||
|
||||
jobs.sabnzbd = |
||||
{ description = "sabnzbd server"; |
||||
|
||||
startOn = "network-interfaces/started"; |
||||
stopOn = "network-interfaces/stop"; |
||||
|
||||
exec = "${sabnzbd}/bin/sabnzbd -d -f ${cfg.configFile}"; |
||||
}; |
||||
|
||||
}; |
||||
} |
Loading…
Reference in new issue