Skip to content

Commit

Permalink
quassel: make a proper systemd unit (also properly works in container…
Browse files Browse the repository at this point in the history
…s now)
  • Loading branch information
aristidb committed Nov 8, 2014
1 parent 7885c2e commit cf4a976
Showing 1 changed file with 11 additions and 9 deletions.
20 changes: 11 additions & 9 deletions nixos/modules/services/networking/quassel.nix
Original file line number Diff line number Diff line change
Expand Up @@ -74,21 +74,23 @@ in
gid = config.ids.gids.quassel;
}];

jobs.quassel =
systemd.services.quassel =
{ description = "Quassel IRC client daemon";

startOn = "ip-up";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];

preStart = ''
mkdir -p ${cfg.dataDir}
chown ${user} ${cfg.dataDir}
mkdir -p ${cfg.dataDir}
chown ${user} ${cfg.dataDir}
'';

exec = ''
${pkgs.su}/bin/su -s ${pkgs.stdenv.shell} ${user} \
-c '${quassel}/bin/quasselcore --listen=${cfg.interface}\
--port=${toString cfg.portNumber} --configdir=${cfg.dataDir}'
'';
serviceConfig =
{
ExecStart = "${quassel}/bin/quasselcore --listen=${cfg.interface} --port=${toString cfg.portNumber} --configdir=${cfg.dataDir}";
User = user;
PermissionsStartOnly = true;
};
};

};
Expand Down

0 comments on commit cf4a976

Please sign in to comment.