summaryrefslogtreecommitdiff
path: root/Biz/Cloud/Znc.nix
blob: 93ec86d97b31a9a3307fae19a8ce51a706bff60e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
/*

N.B.: generate znc passwords with 'nix-shell -p znc --command "znc --makepass"'

- https://wiki.znc.in/Configuration

*/

{ pkgs, lib, ... }:

{
  services = {
    znc = {
      enable = true;
      openFirewall = true;
      modulePackages = with pkgs.zncModules; [
        #backlog clientaway clientbuffer
        #ignore
      ];
      useLegacyConfig = false;
      config = {
        LoadModule = [ "adminlog" "sasl" ];
        Motd = "welcome to znc.simatime.com";
        User.bsima = {
          Admin = true;
          Nick = "bsima";
          AltNick = "bsima1";
          LoadModule = [ "chansaver" "controlpanel" "log" "sasl" ];
          Network = {
            freenode = {
              Server = "chat.freenode.net +6697";
              Nick = "bsima";
              LoadModule = [ "simple_away" "nickserv" "sasl" ];
              Chan = {
                "#ai"              = {};
                "#haskell-miso"    = { Detached = true; };
                "#home-manager"    = { Detached = true; };
                "#servant"         = { Detached = true; };
              };
            };
            #efnet = {
            #  Server = "irc.efnet.info +6697";
            #  LoadModule = [ "simple_away" ];
            #};
            libera = {
              Server = "irc.libera.chat +6697";
              LoadModule = [ "simple_away" "nickserv" "sasl" ];
              Nick = "bsima";
              Chan = {
                "#emacs"           = { Detached = true; };
                "#guile"           = {};
                "#guix"            = { Detached = true; };
                "#haskell"         = {};
                "#hledger"         = {};
                "#nixos"           = {}; # probably defunct
                "#notmuch"         = { Detached = true; };
                "#org-mode"        = { Detached = true; };
                "#scheme"          = { Detached = true; };
                "#sr.ht"           = { Detached = true; };
                "#xmonad"          = { Detached = true; };
              };
            };
            #oftc = {
            #  Server = "irc.oftc.net +6697";
            #  LoadModule = [ "simple_away" "nickserv" ];
            #};
            #sorcery = {
            #  Server = "irc.sorcery.net +6697";
            #};
          };
          Pass.password = {
            Method = "sha256";
            Hash = "bead16d806e7bf5cbbc31d572b20f01e2b253eb60e2497ce465df56306becd02";
            Salt = "/GhmBMc+E6b7qd8muFEe";
          };
        };
      };
    };
  };
}