ergo: kill dead code and stuff
This commit is contained in:
parent
a59ed5197f
commit
69d266b76b
@ -1,24 +1,8 @@
|
|||||||
{ config, lib, options, pkgs, ... }:
|
{ config, lib, options, pkgs, ... }: {
|
||||||
|
|
||||||
let
|
|
||||||
inherit (lib) mkEnableOption mkIf mkOption types;
|
|
||||||
inherit (pkgs) coreutils ergo;
|
|
||||||
cfg = config.krebs.ergo;
|
|
||||||
|
|
||||||
configFile = pkgs.writeText "ergo.conf" (builtins.toJSON cfg.config);
|
|
||||||
in
|
|
||||||
|
|
||||||
{
|
|
||||||
|
|
||||||
###### interface
|
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
|
|
||||||
krebs.ergo = {
|
krebs.ergo = {
|
||||||
|
enable = lib.mkEnableOption "Ergo IRC daemon";
|
||||||
enable = mkEnableOption "Ergo IRC daemon";
|
config = lib.mkOption {
|
||||||
|
|
||||||
config = mkOption {
|
|
||||||
type = (pkgs.formats.json {}).type;
|
type = (pkgs.formats.json {}).type;
|
||||||
description = ''
|
description = ''
|
||||||
Ergo IRC daemon configuration file.
|
Ergo IRC daemon configuration file.
|
||||||
@ -74,28 +58,22 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
config = let
|
||||||
|
cfg = config.krebs.ergo;
|
||||||
###### implementation
|
configFile = pkgs.writeJSON "ergo.conf" cfg.config;
|
||||||
|
in lib.mkIf cfg.enable ({
|
||||||
config = mkIf cfg.enable ({
|
|
||||||
|
|
||||||
krebs.ergo.config =
|
krebs.ergo.config =
|
||||||
lib.mapAttrsRecursive (_: lib.mkDefault) options.krebs.ergo.config.default;
|
lib.mapAttrsRecursive (_: lib.mkDefault) options.krebs.ergo.config.default;
|
||||||
|
|
||||||
systemd.services.ergo = {
|
systemd.services.ergo = {
|
||||||
description = "Ergo IRC daemon";
|
description = "Ergo IRC daemon";
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStart = "${ergo}/bin/ergo run --conf ${configFile}";
|
ExecStart = "${pkgs.ergo}/bin/ergo run --conf ${configFile}";
|
||||||
DynamicUser = true;
|
DynamicUser = true;
|
||||||
StateDirectory = "ergo";
|
StateDirectory = "ergo";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user