From e9cd6d91dc2c84c63f8564bbb048bc3c91ca6885 Mon Sep 17 00:00:00 2001 From: tv Date: Tue, 28 Dec 2021 22:33:36 +0100 Subject: ergo: always merge default config --- krebs/3modules/ergo.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'krebs/3modules/ergo.nix') diff --git a/krebs/3modules/ergo.nix b/krebs/3modules/ergo.nix index df9757db0..74e621fcb 100644 --- a/krebs/3modules/ergo.nix +++ b/krebs/3modules/ergo.nix @@ -1,4 +1,4 @@ -{ config, lib, pkgs, ... }: +{ config, lib, options, pkgs, ... }: let inherit (lib) mkEnableOption mkIf mkOption types; @@ -84,6 +84,9 @@ in config = mkIf cfg.enable ({ + krebs.ergo.config = + lib.mapAttrsRecursive (_: lib.mkDefault) options.krebs.ergo.config.default; + systemd.services.ergo = { description = "Ergo IRC daemon"; wantedBy = [ "multi-user.target" ]; -- cgit v1.2.3 From 69d266b76b88c7d6b416cc4aac24ca3f78aeaa7e Mon Sep 17 00:00:00 2001 From: tv Date: Tue, 28 Dec 2021 23:53:27 +0100 Subject: ergo: kill dead code and stuff --- krebs/3modules/ergo.nix | 38 ++++++++------------------------------ 1 file changed, 8 insertions(+), 30 deletions(-) (limited to 'krebs/3modules/ergo.nix') diff --git a/krebs/3modules/ergo.nix b/krebs/3modules/ergo.nix index 74e621fcb..0ce0345d8 100644 --- a/krebs/3modules/ergo.nix +++ b/krebs/3modules/ergo.nix @@ -1,24 +1,8 @@ -{ 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 - +{ config, lib, options, pkgs, ... }: { options = { - krebs.ergo = { - - enable = mkEnableOption "Ergo IRC daemon"; - - config = mkOption { + enable = lib.mkEnableOption "Ergo IRC daemon"; + config = lib.mkOption { type = (pkgs.formats.json {}).type; description = '' Ergo IRC daemon configuration file. @@ -74,28 +58,22 @@ in }; }; }; - }; - }; - - - ###### implementation - - config = mkIf cfg.enable ({ - + config = let + cfg = config.krebs.ergo; + configFile = pkgs.writeJSON "ergo.conf" cfg.config; + in lib.mkIf cfg.enable ({ krebs.ergo.config = lib.mapAttrsRecursive (_: lib.mkDefault) options.krebs.ergo.config.default; - systemd.services.ergo = { description = "Ergo IRC daemon"; wantedBy = [ "multi-user.target" ]; serviceConfig = { - ExecStart = "${ergo}/bin/ergo run --conf ${configFile}"; + ExecStart = "${pkgs.ergo}/bin/ergo run --conf ${configFile}"; DynamicUser = true; StateDirectory = "ergo"; }; }; - }); } -- cgit v1.2.3