diff options
-rw-r--r-- | custom/prosody-modules.nix | 20 | ||||
-rw-r--r-- | ymir.nix | 6 |
2 files changed, 25 insertions, 1 deletions
diff --git a/custom/prosody-modules.nix b/custom/prosody-modules.nix new file mode 100644 index 00000000..3c103438 --- /dev/null +++ b/custom/prosody-modules.nix | |||
@@ -0,0 +1,20 @@ | |||
1 | { stdenv | ||
2 | , fetchhg | ||
3 | , modules ? [] | ||
4 | }: | ||
5 | |||
6 | let | ||
7 | copyModule = name: "cp -rv $src/${name}/* $out/;"; | ||
8 | concat = a: b: a + b; | ||
9 | head = '' | ||
10 | source $stdenv/setup | ||
11 | mkdir -p $out | ||
12 | ''; | ||
13 | in stdenv.mkDerivation { | ||
14 | name = "prosody-modules"; | ||
15 | src = fetchhg { | ||
16 | url = "http://hg.prosody.im/prosody-modules"; | ||
17 | sha256 = "0nsf1j2prc6ggajn7zz9h300msf6aajqqxhy396g7j834knj5fb2"; | ||
18 | }; | ||
19 | builder = builtins.toFile "builder.sh" (head + (builtins.foldl' concat "" (map copyModule modules))); | ||
20 | } | ||
@@ -1,6 +1,9 @@ | |||
1 | { config, pkgs, ... }: | 1 | { config, pkgs, ... }: |
2 | 2 | ||
3 | { | 3 | let |
4 | prosodyModules = callPackage (import ./custom/prosody-modules.nix) { modules = [ "mod_auth_pam" | ||
5 | ] }; | ||
6 | in { | ||
4 | imports = | 7 | imports = |
5 | [ | 8 | [ |
6 | ./ymir-hw.nix | 9 | ./ymir-hw.nix |
@@ -78,6 +81,7 @@ | |||
78 | ]; | 81 | ]; |
79 | allowRegistration = false; | 82 | allowRegistration = false; |
80 | extraConfig = '' | 83 | extraConfig = '' |
84 | plugin_paths = { ${prosodyModules} } | ||
81 | authentication = "pam" | 85 | authentication = "pam" |
82 | log = "syslog" | 86 | log = "syslog" |
83 | ''; | 87 | ''; |