Loading nixos/modules/services/misc/ntfy-sh.nix +11 −24 Original line number Diff line number Diff line Loading @@ -19,18 +19,6 @@ in description = mdDoc "The ntfy.sh package to use."; }; user = mkOption { default = "ntfy-sh"; type = types.str; description = lib.mdDoc "User the ntfy-sh server runs under."; }; group = mkOption { default = "ntfy-sh"; type = types.str; description = lib.mdDoc "Primary group of ntfy-sh user."; }; settings = mkOption { type = types.submodule { freeformType = settingsFormat.type; }; Loading Loading @@ -61,6 +49,9 @@ in services.ntfy-sh.settings = { auth-file = mkDefault "/var/lib/ntfy-sh/user.db"; listen-http = mkDefault "127.0.0.1:2586"; attachment-cache-dir = mkDefault "/var/lib/ntfy-sh/attachments"; cache-file = mkDefault "/var/lib/ntfy-sh/cache-file.db"; }; systemd.services.ntfy-sh = { Loading @@ -70,10 +61,15 @@ in after = [ "network.target" ]; serviceConfig = { ExecStartPre = [ "${pkgs.coreutils}/bin/touch ${cfg.settings.auth-file}" "${pkgs.coreutils}/bin/mkdir -p ${cfg.settings.attachment-cache-dir}" "${pkgs.coreutils}/bin/touch ${cfg.settings.cache-file}" ]; ExecStart = "${cfg.package}/bin/ntfy serve -c ${configuration}"; User = cfg.user; StateDirectory = "ntfy-sh"; DynamicUser = true; AmbientCapabilities = "CAP_NET_BIND_SERVICE"; PrivateTmp = true; NoNewPrivileges = true; Loading @@ -88,17 +84,8 @@ in RestrictNamespaces = true; RestrictRealtime = true; MemoryDenyWriteExecute = true; }; }; users.groups = optionalAttrs (cfg.group == "ntfy-sh") { ntfy-sh = { }; }; users.users = optionalAttrs (cfg.user == "ntfy-sh") { ntfy-sh = { isSystemUser = true; group = cfg.group; # Upstream Requirements LimitNOFILE = 20500; }; }; }; Loading nixos/tests/ntfy-sh.nix +2 −0 Original line number Diff line number Diff line Loading @@ -19,5 +19,7 @@ import ./make-test-python.nix { notif = json.loads(machine.succeed("curl -s localhost:80/test/json?poll=1")) assert msg == notif["message"], "Wrong message" machine.succeed("ntfy user list") ''; } nixos/tests/shadowsocks/common.nix +1 −0 Original line number Diff line number Diff line Loading @@ -69,6 +69,7 @@ import ../make-test-python.nix ({ pkgs, lib, ... }: { start_all() server.wait_for_unit("shadowsocks-libev.service") server.wait_for_unit("nginx.service") client.wait_for_unit("shadowsocks-client.service") client.fail( Loading pkgs/applications/backup/urbackup-client/default.nix +2 −2 Original line number Diff line number Diff line Loading @@ -8,11 +8,11 @@ stdenv.mkDerivation rec { pname = "urbackup-client"; version = "2.5.20"; version = "2.5.24"; src = fetchzip { url = "https://hndl.urbackup.org/Client/${version}/urbackup-client-${version}.tar.gz"; sha256 = "sha256-i1g3xUhspqQRfIUhy6STOWNuncK3tMFocJw652r1X9g="; sha256 = "sha256-n0/NVClZz6ANgEdPCtdZxsEvllIl32vwDjC2nq5R8Z4="; }; buildInputs = [ Loading pkgs/applications/emulators/ryujinx/default.nix +3 −3 Original line number Diff line number Diff line Loading @@ -29,13 +29,13 @@ buildDotnetModule rec { pname = "ryujinx"; version = "1.1.819"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml version = "1.1.826"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml src = fetchFromGitHub { owner = "Ryujinx"; repo = "Ryujinx"; rev = "4ca78eded52f21089400cc28351b9353279b8171"; sha256 = "13g5sgql14rr7qmsiavm6kkjkv9sqqq7cmwpy9iiahbfzc9w1wc1"; rev = "42b9c1e8fede88880454154f8c3683f1f8424ed9"; sha256 = "1r879kvs6v08lrxw75xs5jsffmf8j6bb7bs9szrrgj24aza0kl72"; }; dotnet-sdk = dotnetCorePackages.sdk_7_0; Loading Loading
nixos/modules/services/misc/ntfy-sh.nix +11 −24 Original line number Diff line number Diff line Loading @@ -19,18 +19,6 @@ in description = mdDoc "The ntfy.sh package to use."; }; user = mkOption { default = "ntfy-sh"; type = types.str; description = lib.mdDoc "User the ntfy-sh server runs under."; }; group = mkOption { default = "ntfy-sh"; type = types.str; description = lib.mdDoc "Primary group of ntfy-sh user."; }; settings = mkOption { type = types.submodule { freeformType = settingsFormat.type; }; Loading Loading @@ -61,6 +49,9 @@ in services.ntfy-sh.settings = { auth-file = mkDefault "/var/lib/ntfy-sh/user.db"; listen-http = mkDefault "127.0.0.1:2586"; attachment-cache-dir = mkDefault "/var/lib/ntfy-sh/attachments"; cache-file = mkDefault "/var/lib/ntfy-sh/cache-file.db"; }; systemd.services.ntfy-sh = { Loading @@ -70,10 +61,15 @@ in after = [ "network.target" ]; serviceConfig = { ExecStartPre = [ "${pkgs.coreutils}/bin/touch ${cfg.settings.auth-file}" "${pkgs.coreutils}/bin/mkdir -p ${cfg.settings.attachment-cache-dir}" "${pkgs.coreutils}/bin/touch ${cfg.settings.cache-file}" ]; ExecStart = "${cfg.package}/bin/ntfy serve -c ${configuration}"; User = cfg.user; StateDirectory = "ntfy-sh"; DynamicUser = true; AmbientCapabilities = "CAP_NET_BIND_SERVICE"; PrivateTmp = true; NoNewPrivileges = true; Loading @@ -88,17 +84,8 @@ in RestrictNamespaces = true; RestrictRealtime = true; MemoryDenyWriteExecute = true; }; }; users.groups = optionalAttrs (cfg.group == "ntfy-sh") { ntfy-sh = { }; }; users.users = optionalAttrs (cfg.user == "ntfy-sh") { ntfy-sh = { isSystemUser = true; group = cfg.group; # Upstream Requirements LimitNOFILE = 20500; }; }; }; Loading
nixos/tests/ntfy-sh.nix +2 −0 Original line number Diff line number Diff line Loading @@ -19,5 +19,7 @@ import ./make-test-python.nix { notif = json.loads(machine.succeed("curl -s localhost:80/test/json?poll=1")) assert msg == notif["message"], "Wrong message" machine.succeed("ntfy user list") ''; }
nixos/tests/shadowsocks/common.nix +1 −0 Original line number Diff line number Diff line Loading @@ -69,6 +69,7 @@ import ../make-test-python.nix ({ pkgs, lib, ... }: { start_all() server.wait_for_unit("shadowsocks-libev.service") server.wait_for_unit("nginx.service") client.wait_for_unit("shadowsocks-client.service") client.fail( Loading
pkgs/applications/backup/urbackup-client/default.nix +2 −2 Original line number Diff line number Diff line Loading @@ -8,11 +8,11 @@ stdenv.mkDerivation rec { pname = "urbackup-client"; version = "2.5.20"; version = "2.5.24"; src = fetchzip { url = "https://hndl.urbackup.org/Client/${version}/urbackup-client-${version}.tar.gz"; sha256 = "sha256-i1g3xUhspqQRfIUhy6STOWNuncK3tMFocJw652r1X9g="; sha256 = "sha256-n0/NVClZz6ANgEdPCtdZxsEvllIl32vwDjC2nq5R8Z4="; }; buildInputs = [ Loading
pkgs/applications/emulators/ryujinx/default.nix +3 −3 Original line number Diff line number Diff line Loading @@ -29,13 +29,13 @@ buildDotnetModule rec { pname = "ryujinx"; version = "1.1.819"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml version = "1.1.826"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml src = fetchFromGitHub { owner = "Ryujinx"; repo = "Ryujinx"; rev = "4ca78eded52f21089400cc28351b9353279b8171"; sha256 = "13g5sgql14rr7qmsiavm6kkjkv9sqqq7cmwpy9iiahbfzc9w1wc1"; rev = "42b9c1e8fede88880454154f8c3683f1f8424ed9"; sha256 = "1r879kvs6v08lrxw75xs5jsffmf8j6bb7bs9szrrgj24aza0kl72"; }; dotnet-sdk = dotnetCorePackages.sdk_7_0; Loading