+2
nixos/doc/manual/release-notes/rl-2511.section.md
+2
nixos/doc/manual/release-notes/rl-2511.section.md
···- [Szurubooru](https://github.com/rr-/szurubooru), an image board engine inspired by services such as Danbooru, dedicated for small and medium communities. Available as [services.szurubooru](#opt-services.szurubooru.enable).+- The [Neat IP Address Planner](https://spritelink.github.io/NIPAP/) (NIPAP) can now be enabled through [services.nipap.enable](#opt-services.nipap.enable).- [nix-store-veritysetup](https://github.com/nikstur/nix-store-veritysetup-generator), a systemd generator to unlock the Nix Store as a dm-verity protected block device. Available as [boot.initrd.nix-store-veritysetup](options.html#opt-boot.initrd.nix-store-veritysetup.enable).
+1
nixos/modules/module-list.nix
+1
nixos/modules/module-list.nix
···
+331
nixos/modules/services/web-apps/nipap.nix
+331
nixos/modules/services/web-apps/nipap.nix
···+description = "Path to file containing XMLRPC URI for use by web UI - this is a secret, since it contains auth credentials. If null, it will be initialized assuming that the auth database is local.";+${lib.getExe' config.services.postgresql.finalPackage "psql"} -d "${cfg.settings.nipapd.db_name}" -f "${sqlFile}"+cfg.nipap-www.xmlrpcURIFile == null -> cfg.settings.auth.default_backend == defaultAuthBackend;+message = "If no XMLRPC URI secret file is specified, then the default auth backend must be in use to automatically generate credentials.";+xmlrpcURIFile = if generateXMLRPC then "${dataDir}/www_xmlrpc_uri" else cfg.nipap-www.xmlrpcURIFile;+${pkg.python}/bin/python -c "import secrets; print(secrets.token_hex())" > "${dataDir}/www_secret"+${cfg.nipapd.package}/bin/nipap-passwd add --username nipap-www --password "''${www_password}" --name "User account for the web UI" --trusted+echo "http://nipap-www@${defaultAuthBackend}:''${www_password}@${escapedHost cfg.settings.nipapd.listen}:${toString cfg.settings.nipapd.port}" > "${xmlrpcURIFile}"
+1
nixos/tests/all-tests.nix
+1
nixos/tests/all-tests.nix
···
+69
nixos/tests/web-apps/nipap.nix
+69
nixos/tests/web-apps/nipap.nix
···+main.succeed("curl -fvvv -Ls -b \"\" -d username=nixostest -d password=nIx0st3st http://localhost:21337/auth/login | grep 'PrefixListController'")+main.succeed("nipap address add prefix 2001:db8:f00f::/48 type assignment description 'eye pee vee six'")+main.succeed("nipap address add prefix 2001:db8:f00f:face:dead:beef:cafe:feed/128 type host description 'test host 2'")
+56
pkgs/by-name/ni/nipap-cli/package.nix
+56
pkgs/by-name/ni/nipap-cli/package.nix
···
+53
pkgs/by-name/ni/nipap-www/package.nix
+53
pkgs/by-name/ni/nipap-www/package.nix
···
+5
pkgs/by-name/ni/nipap/package.nix
+5
pkgs/by-name/ni/nipap/package.nix
+50
pkgs/development/python-modules/flask-xml-rpc-re/default.nix
+50
pkgs/development/python-modules/flask-xml-rpc-re/default.nix
···
+100
pkgs/development/python-modules/nipap/default.nix
+100
pkgs/development/python-modules/nipap/default.nix
···
+38
pkgs/development/python-modules/pynipap/default.nix
+38
pkgs/development/python-modules/pynipap/default.nix
···
+34
pkgs/servers/sql/postgresql/ext/ip4r.nix
+34
pkgs/servers/sql/postgresql/ext/ip4r.nix
···
+6
pkgs/top-level/python-packages.nix
+6
pkgs/top-level/python-packages.nix
···flatbuffers = callPackage ../development/python-modules/flatbuffers { inherit (pkgs) flatbuffers; };······