]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - modules/private/irc.nix
Move irc services to modules
[perso/Immae/Config/Nix.git] / modules / private / irc.nix
similarity index 55%
rename from nixops/modules/irc.nix
rename to modules/private/irc.nix
index 363bfef6b3b6f3801e78e5f6f6548f2d57d247a8..b3fe91f40bd66d854e0f4e3deda73c5a70f90cf6 100644 (file)
@@ -1,7 +1,13 @@
-{ lib, pkgs, config, myconfig,  ... }:
+{ lib, pkgs, config, ... }:
+let
+  cfg = config.myServices.irc;
+in
 {
-  options = {
-    services.irc.enable = lib.mkOption {
+  options.myServices = {
+    ircCerts = lib.mkOption {
+      description = "Default ircconfigurations for certificates as accepted by acme";
+    };
+    irc.enable = lib.mkOption {
       type = lib.types.bool;
       default = false;
       description = ''
@@ -10,8 +16,8 @@
     };
   };
 
-  config = lib.mkIf config.services.irc.enable {
-    security.acme.certs."irc" = config.services.myCertificates.certConfig // {
+  config = lib.mkIf cfg.enable {
+    security.acme.certs."irc" = config.myServices.ircCerts // {
       domain = "irc.immae.eu";
       postRun = ''
         systemctl restart stunnel.service
     };
 
     networking.firewall.allowedTCPPorts = [ 6697 ];
-    services.bitlbee = {
+    services.bitlbee = with pkgs; {
       enable = true;
       authMode = "Registered";
       libpurple_plugins = [
-        pkgs.purple-hangouts
-        pkgs.purple-matrix
+        purple-hangouts
+        purple-matrix
       ];
       plugins = [
-        pkgs.bitlbee-mastodon
-        pkgs.bitlbee-facebook
-        pkgs.bitlbee-discord
-        pkgs.bitlbee-steam
+        bitlbee-mastodon
+        bitlbee-facebook
+        bitlbee-discord
+        bitlbee-steam
       ];
     };