nixpkgs/modules/services/system/nscd.nix
Eelco Dolstra 8eba736da9 * Use the ‘path’ attribute in Upstart jobs in more places. It's a bit
more readable (also in "ps" output).

svn path=/nixos/trunk/; revision=30565
2011-11-25 16:32:54 +00:00

62 lines
988 B
Nix

{pkgs, config, ...}:
with pkgs.lib;
let
nssModulesPath = config.system.nssModules.path;
inherit (pkgs.lib) singleton;
in
{
###### interface
options = {
services.nscd = {
enable = mkOption {
default = true;
description = "
Whether to enable the Name Service Cache Daemon.
";
};
};
};
###### implementation
config = mkIf config.services.nscd.enable {
users.extraUsers = singleton
{ name = "nscd";
uid = config.ids.uids.nscd;
description = "Name service cache daemon user";
};
jobs.nscd =
{ description = "Name Service Cache Daemon";
startOn = "startup";
environment = { LD_LIBRARY_PATH = nssModulesPath; };
preStart =
''
mkdir -m 0755 -p /var/run/nscd
mkdir -m 0755 -p /var/db/nscd
'';
path = [ pkgs.glibc ];
exec = "nscd -f ${./nscd.conf} -d 2> /dev/null";
};
};
}