+1
nixos/doc/manual/development/nixos-tests.chapter.md
+1
nixos/doc/manual/development/nixos-tests.chapter.md
+152
nixos/doc/manual/development/testing-hardware-features.section.md
+152
nixos/doc/manual/development/testing-hardware-features.section.md
···
···
+18
nixos/doc/manual/redirects.json
+18
nixos/doc/manual/redirects.json
······
······
+6
nixos/doc/manual/release-notes/rl-2505.section.md
+6
nixos/doc/manual/release-notes/rl-2505.section.md
···- [Kimai](https://www.kimai.org/), a web-based multi-user time-tracking application. Available as [services.kimai](options.html#opt-services.kimai).- [Homer](https://homer-demo.netlify.app/), a very simple static homepage for your server. Available as [services.homer](options.html#opt-services.homer).- [Ghidra](https://ghidra-sre.org/), a software reverse engineering (SRE) suite of tools. Available as [programs.ghidra](options.html#opt-programs.ghidra).···- `bind.cacheNetworks` now only controls access for recursive queries, where it previously controlled access for all queries.- [`services.mongodb.enableAuth`](#opt-services.mongodb.enableAuth) now uses the newer [mongosh](https://github.com/mongodb-js/mongosh) shell instead of the legacy shell to configure the initial superuser. You can configure the mongosh package to use through the [`services.mongodb.mongoshPackage`](#opt-services.mongodb.mongoshPackage) option.
···- [Kimai](https://www.kimai.org/), a web-based multi-user time-tracking application. Available as [services.kimai](options.html#opt-services.kimai).+- [Kismet](https://www.kismetwireless.net/), a Wi-Fi, Bluetooth, and RF monitoring application supporting a wide range of hardware. Available as {option}`services.kismet`.+- [vwifi](https://github.com/Raizo62/vwifi), a Wi-Fi simulator daemon leveraging the `mac80211_hwsim` and `vhost_vsock` kernel modules for efficient simulation of multi-node Wi-Fi networks. Available as {option}`services.vwifi`.- [Homer](https://homer-demo.netlify.app/), a very simple static homepage for your server. Available as [services.homer](options.html#opt-services.homer).- [Ghidra](https://ghidra-sre.org/), a software reverse engineering (SRE) suite of tools. Available as [programs.ghidra](options.html#opt-programs.ghidra).···- `bind.cacheNetworks` now only controls access for recursive queries, where it previously controlled access for all queries.- [`services.mongodb.enableAuth`](#opt-services.mongodb.enableAuth) now uses the newer [mongosh](https://github.com/mongodb-js/mongosh) shell instead of the legacy shell to configure the initial superuser. You can configure the mongosh package to use through the [`services.mongodb.mongoshPackage`](#opt-services.mongodb.mongoshPackage) option.+- There is a new set of NixOS test tools for testing virtual Wi-Fi networks in many different topologies. See the {option}`services.vwifi` module, {option}`services.kismet` NixOS test, and [manual](https://nixos.org/manual/nixpkgs/unstable/#sec-nixos-test-wifi) for documentation and examples.
+2
nixos/modules/module-list.nix
+2
nixos/modules/module-list.nix
······
······
+459
nixos/modules/services/networking/kismet.nix
+459
nixos/modules/services/networking/kismet.nix
···
···+attrsOf' = deep types.attrsOf (type: value: all (item: type.check item.value) (attrsToList value));+newName = if hasSuffix "'" name then substring 0 (stringLength name - 1) name + "+" else name;+description = "The address to listen on. Note that this cannot be a hostname or Kismet will not start.";
+200
nixos/modules/services/networking/vwifi.nix
+200
nixos/modules/services/networking/vwifi.nix
···
···
+1
nixos/tests/all-tests.nix
+1
nixos/tests/all-tests.nix
+266
nixos/tests/kismet.nix
+266
nixos/tests/kismet.nix
···
···+monitor.succeed(f"curl {url}/system/status.json | tee /dev/stderr | jq -e --arg serverName {shlex.quote(server_name)} --arg serverDescription {shlex.quote(server_description)} '.\"kismet.system.server_name\" == $serverName and .\"kismet.system.server_description\" == $serverDescription'")+station.wait_until_succeeds(f"journalctl -u {shlex.quote(unit)} -e | grep -Eqi {shlex.quote(wlan_interface + ': CTRL-EVENT-CONNECTED - Connection to ' + ap_mac_prefix + '[0-9a-f:]* completed')}")+status, stdout = monitor.execute(f"curl {url}/devices/views/all/last-time/0/devices.json | tee /dev/stderr | jq -e --arg macPrefix {shlex.quote(ap_mac_prefix)} --arg ssid {shlex.quote(ap_essid)} '. | (map(select((.\"kismet.device.base.macaddr\"? | startswith($macPrefix)) and .\"dot11.device\"?.\"dot11.device.last_beaconed_ssid_record\"?.\"dot11.advertisedssid.ssid\" == $ssid)) | length) == 1'")+status, stdout = monitor.execute(f"curl {url}/devices/views/all/last-time/0/devices.json | tee /dev/stderr | jq -e --arg macPrefix {shlex.quote(station_mac_prefix)} '. | (map(select((.\"kismet.device.base.macaddr\"? | startswith($macPrefix)))) | length) == 1'")
+2
pkgs/by-name/ki/kismet/package.nix
+2
pkgs/by-name/ki/kismet/package.nix