diff options
-rw-r--r-- | makefu/2configs/dcpp/hub.nix | 45 | ||||
-rw-r--r-- | makefu/2configs/nsupdate-data.nix | 6 | ||||
-rw-r--r-- | makefu/5pkgs/uhub/default.nix | 48 |
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; - }; -} |