diff options
107 files changed, 1570 insertions, 2424 deletions
| diff --git a/krebs/1systems/hotdog/config.nix b/krebs/1systems/hotdog/config.nix index 0a848426c..cf72e0d73 100644 --- a/krebs/1systems/hotdog/config.nix +++ b/krebs/1systems/hotdog/config.nix @@ -10,7 +10,6 @@      <stockholm/krebs/2configs>      <stockholm/krebs/2configs/buildbot-stockholm.nix> -    <stockholm/krebs/2configs/gitlab-runner-shackspace.nix>      <stockholm/krebs/2configs/binary-cache/nixos.nix>      <stockholm/krebs/2configs/ircd.nix>      <stockholm/krebs/2configs/reaktor-retiolum.nix> diff --git a/krebs/2configs/ircd.nix b/krebs/2configs/ircd.nix index 962dbf49c..65972aacc 100644 --- a/krebs/2configs/ircd.nix +++ b/krebs/2configs/ircd.nix @@ -5,7 +5,7 @@      6667 6669    ]; -  services.charybdis = { +  krebs.charybdis = {      enable = true;      motd = ''        hello diff --git a/krebs/3modules/charybdis.nix b/krebs/3modules/charybdis.nix new file mode 100644 index 000000000..f4a7c1313 --- /dev/null +++ b/krebs/3modules/charybdis.nix @@ -0,0 +1,110 @@ +{ config, lib, pkgs, ... }: + +let +  inherit (lib) mkEnableOption mkIf mkOption singleton types; +  inherit (pkgs) coreutils charybdis; +  cfg = config.krebs.charybdis; + +  configFile = pkgs.writeText "charybdis.conf" '' +    ${cfg.config} +  ''; +in + +{ + +  ###### interface + +  options = { + +    krebs.charybdis = { + +      enable = mkEnableOption "Charybdis IRC daemon"; + +      config = mkOption { +        type = types.string; +        description = '' +          Charybdis IRC daemon configuration file. +        ''; +      }; + +      statedir = mkOption { +        type = types.string; +        default = "/var/lib/charybdis"; +        description = '' +          Location of the state directory of charybdis. +        ''; +      }; + +      user = mkOption { +        type = types.string; +        default = "ircd"; +        description = '' +          Charybdis IRC daemon user. +        ''; +      }; + +      group = mkOption { +        type = types.string; +        default = "ircd"; +        description = '' +          Charybdis IRC daemon group. +        ''; +      }; + +      motd = mkOption { +        type = types.nullOr types.lines; +        default = null; +        description = '' +          Charybdis MOTD text. + +          Charybdis will read its MOTD from /etc/charybdis/ircd.motd . +          If set, the value of this option will be written to this path. +        | 
