these 6 derivations will be built: /nix/store/76ai2qxwlhy8cccfzmy9ck7sgi2cx5vw-nixos-system-router-test.drv /nix/store/1n5fw30198r5b3bwhw7v511a5hm7lsbz-closure-info.drv /nix/store/p0iznp1mjykpxyppwj4lzidlp3dvrpal-nixos-system-machine-test.drv /nix/store/sz9pl2wf4kg32wnjs2mjmj3abp5lxk7a-closure-info.drv /nix/store/a0l1kghbzn6nrvbvb0ys508isfh64knh-nixos-test-driver-user-firewall-nftables.drv /nix/store/fh36hkv95xs34zmjskznwxba54hcxb40-container-test-run-user-firewall-nftables.drv building '/nix/store/p0iznp1mjykpxyppwj4lzidlp3dvrpal-nixos-system-machine-test.drv' on 'ssh-ng://builder@build01.clan.lol' building '/nix/store/76ai2qxwlhy8cccfzmy9ck7sgi2cx5vw-nixos-system-router-test.drv' on 'ssh-ng://builder@build01.clan.lol' warning: SQLite database '/nix/var/nix/db/db.sqlite' is busy warning: SQLite database '/nix/var/nix/db/db.sqlite' is busy building '/nix/store/76ai2qxwlhy8cccfzmy9ck7sgi2cx5vw-nixos-system-router-test.drv' nixos-system-router-test> structuredAttrs is enabled building '/nix/store/1n5fw30198r5b3bwhw7v511a5hm7lsbz-closure-info.drv' on 'ssh-ng://builder@build01.clan.lol' building '/nix/store/p0iznp1mjykpxyppwj4lzidlp3dvrpal-nixos-system-machine-test.drv' nixos-system-machine-test> structuredAttrs is enabled warning: SQLite database '/nix/var/nix/db/db.sqlite' is busy building '/nix/store/sz9pl2wf4kg32wnjs2mjmj3abp5lxk7a-closure-info.drv' on 'ssh-ng://builder@build01.clan.lol' warning: SQLite database '/nix/var/nix/db/db.sqlite' is busy warning: SQLite database '/nix/var/nix/db/db.sqlite' is busy building '/nix/store/1n5fw30198r5b3bwhw7v511a5hm7lsbz-closure-info.drv' closure-info> structuredAttrs is enabled warning: SQLite database '/nix/var/nix/db/db.sqlite' is busy building '/nix/store/sz9pl2wf4kg32wnjs2mjmj3abp5lxk7a-closure-info.drv' closure-info> structuredAttrs is enabled warning: SQLite database '/nix/var/nix/db/db.sqlite' is busy warning: SQLite database '/nix/var/nix/db/db.sqlite' is busy building '/nix/store/a0l1kghbzn6nrvbvb0ys508isfh64knh-nixos-test-driver-user-firewall-nftables.drv' on 'ssh-ng://builder@build01.clan.lol' building '/nix/store/a0l1kghbzn6nrvbvb0ys508isfh64knh-nixos-test-driver-user-firewall-nftables.drv' nixos-test-driver-user-firewall-nftables> Running type check (enable/disable: config.skipTypeCheck) nixos-test-driver-user-firewall-nftables> See https://nixos.org/manual/nixos/stable/#test-opt-skipTypeCheck nixos-test-driver-user-firewall-nftables> Success: no issues found in 1 source file warning: SQLite database '/nix/var/nix/db/db.sqlite' is busy building '/nix/store/fh36hkv95xs34zmjskznwxba54hcxb40-container-test-run-user-firewall-nftables.drv' on 'ssh-ng://builder@build01.clan.lol' building '/nix/store/fh36hkv95xs34zmjskznwxba54hcxb40-container-test-run-user-firewall-nftables.drv' container-test-run-user-firewall-nftables> additionally exposed symbols: container-test-run-user-firewall-nftables> machine, router, container-test-run-user-firewall-nftables> start_all, machines, driver, Machine, wait_for_signal container-test-run-user-firewall-nftables> Starting machine container-test-run-user-firewall-nftables> Starting router container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> <<< NixOS Stage 2 >>> container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> booting system configuration /nix/store/nq5p4rjf9c1yr5v7ppaqszhfb902q4s9-nixos-system-machine-test container-test-run-user-firewall-nftables> running activation script... container-test-run-user-firewall-nftables> setting up /etc... container-test-run-user-firewall-nftables> 2: host0@if3: mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000 container-test-run-user-firewall-nftables> link/ether 0e:74:26:22:81:c2 brd ff:ff:ff:ff:ff:ff link-netnsid 0 container-test-run-user-firewall-nftables> starting systemd... container-test-run-user-firewall-nftables> systemd 260.2 running in system mode (+PAM +AUDIT -SELINUX +APPARMOR +IMA +IPE +SMACK +SECCOMP +GCRYPT -GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 +KMOD +LIBCRYPTSETUP +LIBCRYPTSETUP_PLUGINS +LIBFDISK +PCRE2 +PWQUALITY +P11KIT +QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD +BPF_FRAMEWORK -BTF -XKBCOMMON +UTMP +LIBARCHIVE) container-test-run-user-firewall-nftables> Detected virtualization systemd-nspawn. container-test-run-user-firewall-nftables> Detected architecture arm64. container-test-run-user-firewall-nftables> Detected first boot. container-test-run-user-firewall-nftables> Initializing machine ID from container UUID. container-test-run-user-firewall-nftables> Applying preset policy. container-test-run-user-firewall-nftables> Populated /etc with preset unit settings. container-test-run-user-firewall-nftables> Queued start job for default target Multi-User System. container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> <<< Welcome to NixOS test (aarch64) - console >>> container-test-run-user-firewall-nftables> + systemd-run /bin/sh -c '/nix/store/fz6id67gqf07rkbpmab99wmxspx2f9j5-coreutils-9.11/bin/sleep 999999999 && echo cf9ddda5-f166-484f-9d2a-aaed6c66fef6' container-test-run-user-firewall-nftables> Running as unit: run-p225-i77283648.service; invocation ID: 631fafd034994c5d9452cff81ab5c448 container-test-run-user-firewall-nftables> To attach to container machine run on the same machine that runs the test: container-test-run-user-firewall-nftables> sudo nsenter --user --target $(\pgrep -f '^/bin/sh.*cf9ddda5-f166-484f-9d2a-aaed6c66fef6') --mount --uts --ipc --net --pid --cgroup /bin/sh -c bash container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> To inject external network and continue test, run: container-test-run-user-firewall-nftables> sudo /nix/store/db760w7nmr0a45hlfq8392a474f403aa-python3-3.13.14/bin/python3.13 /nix/store/8hjnk2hv6fr50761ip3mf7rrp7gw52jq-test-driver-0.0.1/lib/python3.13/site-packages/test_driver/inject_network.py cf9ddda5-f166-484f-9d2a-aaed6c66fef6 container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> <<< NixOS Stage 2 >>> container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> booting system configuration /nix/store/fqhfcp8zrkndl0gw9kw6ypba7jlpvw8a-nixos-system-router-test container-test-run-user-firewall-nftables> running activation script... container-test-run-user-firewall-nftables> setting up /etc... container-test-run-user-firewall-nftables> 2: host0@if4: mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000 container-test-run-user-firewall-nftables> link/ether a6:24:31:fe:b9:6d brd ff:ff:ff:ff:ff:ff link-netnsid 0 container-test-run-user-firewall-nftables> starting systemd... container-test-run-user-firewall-nftables> systemd 260.2 running in system mode (+PAM +AUDIT -SELINUX +APPARMOR +IMA +IPE +SMACK +SECCOMP +GCRYPT -GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 +KMOD +LIBCRYPTSETUP +LIBCRYPTSETUP_PLUGINS +LIBFDISK +PCRE2 +PWQUALITY +P11KIT +QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD +BPF_FRAMEWORK -BTF -XKBCOMMON +UTMP +LIBARCHIVE) container-test-run-user-firewall-nftables> Detected virtualization systemd-nspawn. container-test-run-user-firewall-nftables> Detected architecture arm64. container-test-run-user-firewall-nftables> Detected first boot. container-test-run-user-firewall-nftables> Initializing machine ID from container UUID. container-test-run-user-firewall-nftables> Applying preset policy. container-test-run-user-firewall-nftables> Populated /etc with preset unit settings. container-test-run-user-firewall-nftables> Queued start job for default target Multi-User System. container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> <<< Welcome to NixOS test (aarch64) - console >>> container-test-run-user-firewall-nftables> + systemd-run /bin/sh -c '/nix/store/fz6id67gqf07rkbpmab99wmxspx2f9j5-coreutils-9.11/bin/sleep 999999999 && echo cafe2515-1978-4ffb-bbc3-d83765249f6d' container-test-run-user-firewall-nftables> Running as unit: run-p198-i77283676.service; invocation ID: 2f2f040e5cec4021b7cf5ad44cfa933e container-test-run-user-firewall-nftables> To attach to container router run on the same machine that runs the test: container-test-run-user-firewall-nftables> sudo nsenter --user --target $(\pgrep -f '^/bin/sh.*cafe2515-1978-4ffb-bbc3-d83765249f6d') --mount --uts --ipc --net --pid --cgroup /bin/sh -c bash container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> To inject external network and continue test, run: container-test-run-user-firewall-nftables> sudo /nix/store/db760w7nmr0a45hlfq8392a474f403aa-python3-3.13.14/bin/python3.13 /nix/store/8hjnk2hv6fr50761ip3mf7rrp7gw52jq-test-driver-0.0.1/lib/python3.13/site-packages/test_driver/inject_network.py cafe2515-1978-4ffb-bbc3-d83765249f6d container-test-run-user-firewall-nftables> + systemctl --no-pager show multi-user.target container-test-run-user-firewall-nftables> + systemctl --no-pager show nginx.service container-test-run-user-firewall-nftables> + systemctl --no-pager show multi-user.target container-test-run-user-firewall-nftables> + systemctl --no-pager show nginx.service container-test-run-user-firewall-nftables> + ip -4 addr show eth1 container-test-run-user-firewall-nftables> + grep -oP '(?<=inet\s)\d+(\.\d+){3}' container-test-run-user-firewall-nftables> + ip -6 addr show eth1 container-test-run-user-firewall-nftables> + grep -oP '(?<=inet6\s)[0-9a-f:]+' container-test-run-user-firewall-nftables> + grep -v '^fe80' container-test-run-user-firewall-nftables> + head -1 container-test-run-user-firewall-nftables> Router IPv4: 192.168.1.2 container-test-run-user-firewall-nftables> Router IPv6: 2001:db8:1::2 container-test-run-user-firewall-nftables> + systemctl restart nftables container-test-run-user-firewall-nftables> + systemctl --no-pager show nftables.service container-test-run-user-firewall-nftables> + nft list table inet user-firewall container-test-run-user-firewall-nftables> table inet user-firewall { container-test-run-user-firewall-nftables> chain output { container-test-run-user-firewall-nftables> type filter hook output priority filter; policy accept; container-test-run-user-firewall-nftables> oifname "lo" counter packets 0 bytes 0 accept comment "allow lo" container-test-run-user-firewall-nftables> oifname "tun*" counter packets 0 bytes 0 accept comment "allow tun*" container-test-run-user-firewall-nftables> oifname "tap*" counter packets 0 bytes 0 accept comment "allow tap*" container-test-run-user-firewall-nftables> oifname "wg*" counter packets 0 bytes 0 accept comment "allow wg*" container-test-run-user-firewall-nftables> oifname "tailscale*" counter packets 0 bytes 0 accept comment "allow tailscale*" container-test-run-user-firewall-nftables> oifname "zt*" counter packets 0 bytes 0 accept comment "allow zt*" container-test-run-user-firewall-nftables> oifname "vpn*" counter packets 0 bytes 0 accept comment "allow vpn*" container-test-run-user-firewall-nftables> oifname "ipsec*" counter packets 0 bytes 0 accept comment "allow ipsec*" container-test-run-user-firewall-nftables> oifname "nebula*" counter packets 0 bytes 0 accept comment "allow nebula*" container-test-run-user-firewall-nftables> oifname "tinc*" counter packets 0 bytes 0 accept comment "allow tinc*" container-test-run-user-firewall-nftables> oifname "edge*" counter packets 0 bytes 0 accept comment "allow edge*" container-test-run-user-firewall-nftables> oifname "hyprspace" counter packets 0 bytes 0 accept comment "allow hyprspace" container-test-run-user-firewall-nftables> oifname "ham0" counter packets 0 bytes 0 accept comment "allow ham0" container-test-run-user-firewall-nftables> oifname "easytier" counter packets 0 bytes 0 accept comment "allow easytier" container-test-run-user-firewall-nftables> oifname "mycelium" counter packets 0 bytes 0 accept comment "allow mycelium" container-test-run-user-firewall-nftables> meta skuid 1002 counter packets 0 bytes 0 reject comment "blocked user bob" container-test-run-user-firewall-nftables> } container-test-run-user-firewall-nftables> } container-test-run-user-firewall-nftables> machine: waiting for success: runuser -u alice -- curl -s http://127.0.0.1:8080 container-test-run-user-firewall-nftables> + runuser -u alice -- curl -s http://127.0.0.1:8080 container-test-run-user-firewall-nftables> (finished: waiting for success: runuser -u alice -- curl -s http://127.0.0.1:8080, in 0.03 seconds) container-test-run-user-firewall-nftables> + runuser -u alice -- curl -s http://192.168.1.2 container-test-run-user-firewall-nftables> + runuser -u alice -- curl -s 'http://[2001:db8:1::2]' container-test-run-user-firewall-nftables> + runuser -u bob -- curl -s http://127.0.0.1:8080 container-test-run-user-firewall-nftables> + runuser -u bob -- curl -s --connect-timeout 2 http://192.168.1.2 container-test-run-user-firewall-nftables> + echo EXIT_CODE=7 container-test-run-user-firewall-nftables> + runuser -u bob -- curl -s --connect-timeout 2 'http://[2001:db8:1::2]' container-test-run-user-firewall-nftables> + echo EXIT_CODE=7 container-test-run-user-firewall-nftables> + nft list table inet user-firewall container-test-run-user-firewall-nftables> + systemctl --no-pager show setup-wg0-interface.service container-test-run-user-firewall-nftables> + systemctl --no-pager show nginx.service container-test-run-user-firewall-nftables> machine: waiting for success: nc -z 10.100.0.2 8081 container-test-run-user-firewall-nftables> + nc -z 10.100.0.2 8081 container-test-run-user-firewall-nftables> Connection to 10.100.0.2 8081 port [tcp/sunproxyadmin] succeeded! container-test-run-user-firewall-nftables> (finished: waiting for success: nc -z 10.100.0.2 8081, in 0.01 seconds) container-test-run-user-firewall-nftables> + ip link show wg0 container-test-run-user-firewall-nftables> + ip addr show wg0 container-test-run-user-firewall-nftables> + runuser -u alice -- curl -s --interface wg0 http://10.100.0.2:8081/ container-test-run-user-firewall-nftables> + runuser -u alice -- curl -s --interface wg0 'http://[fd00::2]:8081/' container-test-run-user-firewall-nftables> + runuser -u bob -- curl -s --interface wg0 http://10.100.0.2:8081/ container-test-run-user-firewall-nftables> + runuser -u bob -- curl -s --interface wg0 'http://[fd00::2]:8081/' container-test-run-user-firewall-nftables> + nft list table inet user-firewall container-test-run-user-firewall-nftables> + grep -E 'oifname.*wg' container-test-run-user-firewall-nftables> oifname "wg*" counter packets 0 bytes 0 accept comment "allow wg*" container-test-run-user-firewall-nftables> container-test-run-user-firewall-nftables> post-build step Upload to niks3: ok time=2026-08-05T19:26:38.390Z level=INFO msg="Uploading 0 paths to niks3.clan.lol (1 already cached)" time=2026-08-05T19:26:39.491Z level=INFO msg="Uploading 1 narinfos" time=2026-08-05T19:26:40.054Z level=INFO msg="Upload complete. (1.73s)"