Updated ejabberd service to make it work
svn path=/nixos/trunk/; revision=12270
This commit is contained in:
parent
7813be5e54
commit
045ae06092
@ -1385,10 +1385,15 @@
|
|||||||
default = false;
|
default = false;
|
||||||
description = "Whether to enable ejabberd server";
|
description = "Whether to enable ejabberd server";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
spoolDir = mkOption {
|
||||||
|
default = "/var/lib/ejabberd";
|
||||||
|
description = "Location of the spooldir of ejabberd";
|
||||||
|
};
|
||||||
|
|
||||||
user = mkOption {
|
logsDir = mkOption {
|
||||||
default = "nobody";
|
default = "/var/log/ejabberd";
|
||||||
description = "User account under which ejabberd runs.";
|
description = "Location of the logfile directory of ejabberd";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -4,19 +4,30 @@ let
|
|||||||
|
|
||||||
cfg = config.services.ejabberd;
|
cfg = config.services.ejabberd;
|
||||||
|
|
||||||
ejabberdService = import ../services/ejabberd {
|
|
||||||
inherit (cfg) user;
|
|
||||||
inherit (pkgs) stdenv erlang ejabberd su;
|
|
||||||
};
|
|
||||||
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
name = "ejabberd";
|
name = "ejabberd";
|
||||||
job = "
|
|
||||||
description \"EJabberd server\"
|
job = ''
|
||||||
|
description "EJabberd server"
|
||||||
|
|
||||||
stop on shutdown
|
start on network-interface/started
|
||||||
|
stop on network-interfaces/stop
|
||||||
respawn ${ejabberdService}/bin/control start
|
|
||||||
";
|
start script
|
||||||
|
# Initialise state data
|
||||||
|
mkdir -p ${cfg.logsDir}
|
||||||
|
|
||||||
|
if ! test -d ${cfg.spoolDir}
|
||||||
|
then
|
||||||
|
cp -av ${pkgs.ejabberd}/var/lib/ejabberd /var/lib
|
||||||
|
fi
|
||||||
|
end script
|
||||||
|
|
||||||
|
respawn ${pkgs.bash}/bin/sh -c 'export PATH=$PATH:${pkgs.ejabberd}/sbin; cd ~; ejabberdctl --logs ${cfg.logsDir} --spool ${cfg.spoolDir} start; sleep 1d'
|
||||||
|
|
||||||
|
stop script
|
||||||
|
${pkgs.ejabberd}/sbin/ejabberdctl stop
|
||||||
|
end script
|
||||||
|
'';
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user