summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--makefu/2configs/dcpp/hub.nix45
-rw-r--r--makefu/2configs/nsupdate-data.nix6
-rw-r--r--makefu/5pkgs/uhub/default.nix48
3 files changed, 28 insertions, 71 deletions
diff --git a/makefu/2configs/dcpp/hub.nix b/makefu/2configs/dcpp/hub.nix
index fce607d5e..b8ca49b74 100644
--- a/makefu/2configs/dcpp/hub.nix
+++ b/makefu/2configs/dcpp/hub.nix
@@ -39,7 +39,9 @@ in {
home = stateDir;
isSystemUser = true;
createHome = true;
+ group = ddclientUser;
};
+ users.groups.${ddclientUser} = {};
systemd.services = {
ddclient-nsupdate-uhub = {
@@ -86,29 +88,30 @@ in {
users.groups.uhub = {};
services.uhub.home = {
enable = true;
- port = 1511;
enableTLS = true;
- hubConfig = ''
- hub_name = "krebshub"
- tls_certificate = ${uhubDir}/uhub.crt
- tls_private_key = ${uhubDir}/uhub.key
- registered_users_only = true
- '';
- plugins = {
- welcome = {
- enable = true;
- motd = "shareit";
- rules = "1. Don't be an asshole";
- };
- history = {
- enable = true;
- };
- authSqlite = {
- enable = true;
- file = "${uhubDir}/uhub.sql";
- };
-
+ settings = {
+ server_port = 1511;
+ hub_name = "krebshub";
+ tls_certificate = "${uhubDir}/uhub.crt";
+ tls_private_key = "${uhubDir}/uhub.key";
+ registered_users_only = true;
};
+ plugins = [
+ {
+ plugin = "${pkgs.uhub}/plugins/mod_auth_sqlite.so";
+ settings.file = "${uhubDir}/uhub.sql";
+ }
+ {
+ plugin = "${pkgs.uhub}/plugins/mod_welcome.so";
+ settings.motd = "shareit";
+ settings.rules = "1. Don't be an asshole";
+ }
+ {
+ plugin = "${pkgs.uhub}/plugins/mod_history.so";
+ settings.motd = "shareit";
+ settings.rules = "1. Don't be an asshole";
+ }
+ ];
};
networking.firewall.allowedTCPPorts = [ 411 1511 ];
}
diff --git a/makefu/2configs/nsupdate-data.nix b/makefu/2configs/nsupdate-data.nix
index 2f8f4acc4..3b6518f60 100644
--- a/makefu/2configs/nsupdate-data.nix
+++ b/makefu/2configs/nsupdate-data.nix
@@ -28,14 +28,16 @@ let
'';
in {
- users.extraUsers = singleton {
+ users.users.${ddclientUser} = {
name = ddclientUser;
- uid = genid "ddclient";
+ uid = genid ddclientUser;
description = "ddclient daemon user";
home = stateDir;
createHome = true;
isSystemUser = true;
+ group = ddclientUser;
};
+ users.groups.${ddclientUser} = {};
systemd.services = {
ddclient-nsupdate-elchos = {
diff --git a/makefu/5pkgs/uhub/default.nix b/makefu/5pkgs/uhub/default.nix
deleted file mode 100644
index e0ee035e4..000000000
--- a/makefu/5pkgs/uhub/default.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-{ stdenv, lib, fetchpatch, fetchFromGitHub, cmake, openssl, sqlite, pkgconfig, systemd
-, tlsSupport ? false }:
-
-assert tlsSupport -> openssl != null;
-
-stdenv.mkDerivation rec {
- pname = "uhub";
- version = "2019-06-18";
-
- src = fetchFromGitHub {
- owner = "janvidar";
- repo = "uhub";
- rev = "78a703924064a92cedeb0a5aab5a80d8f77db73e";
- sha256 = "1dqmj08salhbcdlkglbi03hn9jzgmhjqlb0iysafpzrrwi0mca1z";
- };
-
- nativeBuildInputs = [ pkgconfig ];
- buildInputs = [ cmake sqlite systemd ] ++ lib.optional tlsSupport openssl;
-
- outputs = [ "out"
- "mod_example"
- "mod_welcome"
- "mod_logging"
- "mod_auth_simple"
- "mod_auth_sqlite"
- "mod_chat_history"
- "mod_chat_only"
- "mod_topic"
- "mod_no_guest_downloads"
- ];
-
- patches = [
- <nixpkgs/pkgs/servers/uhub/plugin-dir.patch>
- ];
-
- cmakeFlags = ''
- -DSYSTEMD_SUPPORT=ON
- ${if tlsSupport then "-DSSL_SUPPORT=ON" else "-DSSL_SUPPORT=OFF"}
- '';
-
- meta = with lib; {
- description = "High performance peer-to-peer hub for the ADC network";
- homepage = https://www.uhub.org/;
- license = licenses.gpl3;
- maintainers = [ maintainers.ehmry ];
- platforms = platforms.unix;
- };
-}