at master 69 kB view raw
1{ 2 system, 3 pkgs, 4 5 # Projects the test configuration into a the desired value; usually 6 # the test runner: `config: config.test`. 7 callTest, 8 9}: 10# The return value of this function will be an attrset with arbitrary depth and 11# the `anything` returned by callTest at its test leaves. 12# The tests not supported by `system` will be replaced with `{}`, so that 13# `passthru.tests` can contain links to those without breaking on architectures 14# where said tests are unsupported. 15# Example callTest that just extracts the derivation from the test: 16# callTest = t: t.test; 17 18with pkgs.lib; 19 20let 21 # TODO: remove when handleTest is gone (make sure nixosTests and nixos/release.nix#tests are unaffected) 22 # TODO: when removing, also deprecate `test` attribute in ../lib/testing/run.nix 23 discoverTests = 24 val: 25 if isAttrs val then 26 if (val ? test) then 27 callTest val 28 else 29 mapAttrs (n: s: if n == "passthru" then s else discoverTests s) val 30 else if isFunction val then 31 # Tests based on make-test-python.nix will return the second lambda 32 # in that file, which are then forwarded to the test definition 33 # following the `import make-test-python.nix` expression 34 # (if it is a function). 35 discoverTests (val { 36 inherit system pkgs; 37 }) 38 else 39 val; 40 41 /** 42 Evaluate a test and return a derivation that runs the test as its builder. 43 44 This function is deprecated in favor of runTest and runTestOn, which works 45 by passing a module instead of a specific set of arguments. 46 Benefits of runTest and runTestOn: 47 - Define values for any test option 48 - Use imports to compose tests 49 - Access the module arguments like hostPkgs and config.node.pkgs 50 - Portable to other VM hosts, specifically Darwin 51 - Faster evaluation, using a single `pkgs` instance 52 53 Changes required to migrate to runTest: 54 - Remove any `import ../make-test-python.nix` or similar calls, leaving only 55 the callback function. 56 - Convert the function header to make it a module. 57 Packages can be taken from the following. For VM host portability, use 58 - `config.node.pkgs.<name>` or `config.nodes.foo.nixpkgs.pkgs.<name>` to refer 59 to the Nixpkgs used on the VM guest(s). 60 - `hostPkgs.<name>` when invoking commands on the VM host (e.g. in Python 61 `os.system("foo")`) 62 - Since the runTest argument is a module instead of a function, arguments 63 must be passed as option definitions. 64 You may declare explicit `options` for the test parameter(s), or use the 65 less explicit `_module.args.<name>` to pass arguments to the module. 66 67 Example call with arguments: 68 69 runTest { 70 imports = [ ./test.nix ]; 71 _module.args.getPackage = pkgs: pkgs.foo_1_2; 72 } 73 74 - If your test requires any definitions in `nixpkgs.*` options, set 75 `node.pkgsReadOnly = false` in the test configuration. 76 */ 77 handleTest = path: args: discoverTests (import path ({ inherit system pkgs; } // args)); 78 79 /** 80 See handleTest 81 */ 82 handleTestOn = 83 systems: path: args: 84 if elem system systems then handleTest path args else { }; 85 86 nixosLib = import ../lib { 87 # Experimental features need testing too, but there's no point in warning 88 # about it, so we enable the feature flag. 89 featureFlags.minimalModules = { }; 90 }; 91 evalMinimalConfig = module: nixosLib.evalModules { modules = [ module ]; }; 92 evalSystem = 93 module: 94 import ../lib/eval-config.nix { 95 system = null; 96 modules = [ 97 ../modules/misc/nixpkgs/read-only.nix 98 { nixpkgs.pkgs = pkgs; } 99 module 100 ]; 101 }; 102 103 inherit 104 (rec { 105 doRunTest = 106 arg: 107 ((import ../lib/testing-python.nix { inherit system pkgs; }).evalTest { 108 imports = [ 109 arg 110 readOnlyPkgs 111 ]; 112 }).config.result; 113 findTests = 114 tree: 115 if tree ? recurseForDerivations && tree.recurseForDerivations then 116 mapAttrs (k: findTests) (builtins.removeAttrs tree [ "recurseForDerivations" ]) 117 else 118 callTest tree; 119 120 runTest = 121 arg: 122 let 123 r = doRunTest arg; 124 in 125 findTests r; 126 runTestOn = systems: arg: if elem system systems then runTest arg else { }; 127 }) 128 /** 129 See https://nixos.org/manual/nixos/unstable/#sec-calling-nixos-tests 130 */ 131 runTest 132 /** 133 See https://nixos.org/manual/nixos/unstable/#sec-calling-nixos-tests 134 */ 135 runTestOn 136 ; 137 138 # Using a single instance of nixpkgs makes test evaluation faster. 139 # To make sure we don't accidentally depend on a modified pkgs, we make the 140 # related options read-only. We need to test the right configuration. 141 # 142 # If your service depends on a nixpkgs setting, first try to avoid that, but 143 # otherwise, you can remove the readOnlyPkgs import and test your service as 144 # usual. 145 readOnlyPkgs = 146 # TODO: We currently accept this for nixosTests, so that the `pkgs` argument 147 # is consistent with `pkgs` in `pkgs.nixosTests`. Can we reinitialize 148 # it with `allowAliases = false`? 149 # warnIf pkgs.config.allowAliases "nixosTests: pkgs includes aliases." 150 { 151 _file = "${__curPos.file} readOnlyPkgs"; 152 _class = "nixosTest"; 153 node.pkgs = pkgs.pkgsLinux; 154 }; 155 156in 157{ 158 159 # Testing the test driver 160 nixos-test-driver = { 161 extra-python-packages = runTest ./nixos-test-driver/extra-python-packages.nix; 162 lib-extend = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./nixos-test-driver/lib-extend.nix { }; 163 node-name = runTest ./nixos-test-driver/node-name.nix; 164 busybox = runTest ./nixos-test-driver/busybox.nix; 165 console-log = runTest ./nixos-test-driver/console-log.nix; 166 driver-timeout = 167 pkgs.runCommand "ensure-timeout-induced-failure" 168 { 169 failed = pkgs.testers.testBuildFailure ( 170 (runTest ./nixos-test-driver/timeout.nix).config.rawTestDerivation 171 ); 172 } 173 '' 174 grep -F "timeout reached; test terminating" $failed/testBuildFailure.log 175 # The program will always be terminated by SIGTERM (143) if it waits for the deadline thread. 176 [[ 143 = $(cat $failed/testBuildFailure.exit) ]] 177 touch $out 178 ''; 179 }; 180 181 # NixOS vm tests and non-vm unit tests 182 183 # keep-sorted start case=no numeric=no block=yes 184 _3proxy = runTest ./3proxy.nix; 185 aaaaxy = runTest ./aaaaxy.nix; 186 acme = import ./acme/default.nix { inherit runTest; }; 187 acme-dns = runTest ./acme-dns.nix; 188 activation = pkgs.callPackage ../modules/system/activation/test.nix { }; 189 activation-etc-overlay-immutable = runTest ./activation/etc-overlay-immutable.nix; 190 activation-etc-overlay-mutable = runTest ./activation/etc-overlay-mutable.nix; 191 activation-lib = pkgs.callPackage ../modules/system/activation/lib/test.nix { }; 192 activation-nix-channel = runTest ./activation/nix-channel.nix; 193 activation-nixos-init = runTest ./activation/nixos-init.nix; 194 activation-perlless = runTest ./activation/perlless.nix; 195 activation-var = runTest ./activation/var.nix; 196 actual = runTest ./actual.nix; 197 adguardhome = runTest ./adguardhome.nix; 198 aesmd = runTestOn [ "x86_64-linux" ] ./aesmd.nix; 199 agate = runTest ./web-servers/agate.nix; 200 agda = runTest ./agda.nix; 201 age-plugin-tpm-decrypt = runTest ./age-plugin-tpm-decrypt.nix; 202 agnos = discoverTests (import ./agnos.nix); 203 agorakit = runTest ./web-apps/agorakit.nix; 204 airsonic = runTest ./airsonic.nix; 205 akkoma = runTestOn [ "x86_64-linux" "aarch64-linux" ] { 206 imports = [ ./akkoma.nix ]; 207 _module.args.confined = false; 208 }; 209 akkoma-confined = runTestOn [ "x86_64-linux" "aarch64-linux" ] { 210 imports = [ ./akkoma.nix ]; 211 _module.args.confined = true; 212 }; 213 alice-lg = runTest ./alice-lg.nix; 214 alloy = runTest ./alloy.nix; 215 allTerminfo = runTest ./all-terminfo.nix; 216 alps = runTest ./alps.nix; 217 amazon-cloudwatch-agent = runTest ./amazon-cloudwatch-agent.nix; 218 amazon-init-shell = runTest ./amazon-init-shell.nix; 219 amazon-ssm-agent = runTest ./amazon-ssm-agent.nix; 220 amd-sev = runTest ./amd-sev.nix; 221 android-translation-layer = runTest ./android-translation-layer.nix; 222 angie-api = runTest ./angie-api.nix; 223 angrr = runTest ./angrr.nix; 224 anki-sync-server = runTest ./anki-sync-server.nix; 225 anubis = runTest ./anubis.nix; 226 anuko-time-tracker = runTest ./anuko-time-tracker.nix; 227 apcupsd = runTest ./apcupsd.nix; 228 apfs = runTest ./apfs.nix; 229 apparmor = runTest ./apparmor; 230 appliance-repart-image = runTest ./appliance-repart-image.nix; 231 appliance-repart-image-verity-store = runTest ./appliance-repart-image-verity-store.nix; 232 archi = runTest ./archi.nix; 233 aria2 = runTest ./aria2.nix; 234 armagetronad = runTest ./armagetronad.nix; 235 artalk = runTest ./artalk.nix; 236 atd = runTest ./atd.nix; 237 atop = import ./atop.nix { inherit pkgs runTest; }; 238 atticd = runTest ./atticd.nix; 239 atuin = runTest ./atuin.nix; 240 audiobookshelf = runTest ./audiobookshelf.nix; 241 audit = runTest ./audit.nix; 242 auth-mysql = runTest ./auth-mysql.nix; 243 authelia = runTest ./authelia.nix; 244 auto-cpufreq = runTest ./auto-cpufreq.nix; 245 autobrr = runTest ./autobrr.nix; 246 avahi = runTest { 247 imports = [ ./avahi.nix ]; 248 _module.args.networkd = false; 249 }; 250 avahi-with-resolved = runTest { 251 imports = [ ./avahi.nix ]; 252 _module.args.networkd = true; 253 }; 254 ax25 = runTest ./ax25.nix; 255 ayatana-indicators = runTest ./ayatana-indicators.nix; 256 babeld = runTest ./babeld.nix; 257 bazarr = runTest ./bazarr.nix; 258 bcache = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./bcache.nix; 259 bcachefs = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./bcachefs.nix; 260 beanstalkd = runTest ./beanstalkd.nix; 261 bees = runTest ./bees.nix; 262 benchexec = runTest ./benchexec.nix; 263 binary-cache = runTest { 264 imports = [ ./binary-cache.nix ]; 265 _module.args.compression = "zstd"; 266 }; 267 binary-cache-no-compression = runTest { 268 imports = [ ./binary-cache.nix ]; 269 _module.args.compression = "none"; 270 }; 271 binary-cache-xz = runTest { 272 imports = [ ./binary-cache.nix ]; 273 _module.args.compression = "xz"; 274 }; 275 bind = runTest ./bind.nix; 276 bird2 = import ./bird.nix { 277 inherit runTest; 278 package = pkgs.bird2; 279 }; 280 bird3 = import ./bird.nix { 281 inherit runTest; 282 package = pkgs.bird3; 283 }; 284 birdwatcher = runTest ./birdwatcher.nix; 285 bitbox-bridge = runTest ./bitbox-bridge.nix; 286 bitcoind = runTest ./bitcoind.nix; 287 bittorrent = runTest ./bittorrent.nix; 288 blint = runTest ./blint.nix; 289 blockbook-frontend = runTest ./blockbook-frontend.nix; 290 blocky = runTest ./blocky.nix; 291 bluesky-pds = runTest ./bluesky-pds.nix; 292 bookstack = runTest ./bookstack.nix; 293 boot = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./boot.nix { }; 294 boot-stage1 = runTest ./boot-stage1.nix; 295 boot-stage2 = runTest ./boot-stage2.nix; 296 bootspec = handleTestOn [ "x86_64-linux" ] ./bootspec.nix { }; 297 borgbackup = runTest ./borgbackup.nix; 298 borgmatic = runTest ./borgmatic.nix; 299 botamusique = runTest ./botamusique.nix; 300 bpf = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./bpf.nix; 301 bpftune = runTest ./bpftune.nix; 302 breitbandmessung = runTest ./breitbandmessung.nix; 303 broadcast-box = runTest ./broadcast-box.nix; 304 brscan5 = runTest ./brscan5.nix; 305 btrbk = runTest ./btrbk.nix; 306 btrbk-doas = runTest ./btrbk-doas.nix; 307 btrbk-no-timer = runTest ./btrbk-no-timer.nix; 308 btrbk-section-order = runTest ./btrbk-section-order.nix; 309 budgie = runTest ./budgie.nix; 310 buildbot = runTest ./buildbot.nix; 311 buildkite-agents = runTest ./buildkite-agents.nix; 312 c2fmzq = runTest ./c2fmzq.nix; 313 caddy = runTest ./caddy.nix; 314 cadvisor = runTestOn [ "x86_64-linux" ] ./cadvisor.nix; 315 cage = runTest ./cage.nix; 316 cagebreak = runTest ./cagebreak.nix; 317 calibre-server = import ./calibre-server.nix { inherit pkgs runTest; }; 318 calibre-web = runTest ./calibre-web.nix; 319 canaille = runTest ./canaille.nix; 320 cassandra = runTest { 321 imports = [ ./cassandra.nix ]; 322 _module.args.getPackage = pkgs: pkgs.cassandra; 323 }; 324 castopod = runTest ./castopod.nix; 325 centrifugo = runTest ./centrifugo.nix; 326 ceph-multi-node = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./ceph-multi-node.nix; 327 ceph-single-node = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./ceph-single-node.nix; 328 ceph-single-node-bluestore = runTestOn [ 329 "aarch64-linux" 330 "x86_64-linux" 331 ] ./ceph-single-node-bluestore.nix; 332 ceph-single-node-bluestore-dmcrypt = runTestOn [ 333 "aarch64-linux" 334 "x86_64-linux" 335 ] ./ceph-single-node-bluestore-dmcrypt.nix; 336 certmgr = import ./certmgr.nix { inherit pkgs runTest; }; 337 cfssl = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./cfssl.nix; 338 cgit = runTest ./cgit.nix; 339 charliecloud = runTest ./charliecloud.nix; 340 chhoto-url = runTest ./chhoto-url.nix; 341 chromadb = runTest ./chromadb.nix; 342 chromium = (handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./chromium.nix { }).stable or { }; 343 chrony = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./chrony.nix; 344 chrony-ptp = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./chrony-ptp.nix; 345 cinnamon = runTest ./cinnamon.nix; 346 cinnamon-wayland = runTest ./cinnamon-wayland.nix; 347 cjdns = runTest ./cjdns.nix; 348 clatd = runTest ./clatd.nix; 349 clickhouse = import ./clickhouse { 350 inherit runTest; 351 package = pkgs.clickhouse; 352 }; 353 clickhouse-lts = import ./clickhouse { 354 inherit runTest; 355 package = pkgs.clickhouse-lts; 356 }; 357 cloud-init = runTest ./cloud-init.nix; 358 cloud-init-hostname = runTest ./cloud-init-hostname.nix; 359 cloudlog = runTest ./cloudlog.nix; 360 cntr = import ./cntr.nix { 361 inherit (pkgs) lib; 362 runTest = runTestOn [ 363 "aarch64-linux" 364 "x86_64-linux" 365 ]; 366 }; 367 cockpit = runTest ./cockpit.nix; 368 cockroachdb = runTestOn [ "x86_64-linux" ] ./cockroachdb.nix; 369 code-server = runTest ./code-server.nix; 370 coder = runTest ./coder.nix; 371 collectd = runTest ./collectd.nix; 372 commafeed = runTest ./commafeed.nix; 373 connman = runTest ./connman.nix; 374 consul = runTest ./consul.nix; 375 consul-template = runTest ./consul-template.nix; 376 containers-bridge = runTest ./containers-bridge.nix; 377 containers-custom-pkgs.nix = runTest ./containers-custom-pkgs.nix; 378 containers-ephemeral = runTest ./containers-ephemeral.nix; 379 containers-extra_veth = runTest ./containers-extra_veth.nix; 380 containers-hosts = runTest ./containers-hosts.nix; 381 containers-imperative = runTest ./containers-imperative.nix; 382 containers-ip = runTest ./containers-ip.nix; 383 containers-macvlans = runTest ./containers-macvlans.nix; 384 containers-names = runTest ./containers-names.nix; 385 containers-nested = runTest ./containers-nested.nix; 386 containers-physical_interfaces = runTest ./containers-physical_interfaces.nix; 387 containers-portforward = runTest ./containers-portforward.nix; 388 containers-reloadable = runTest ./containers-reloadable.nix; 389 containers-require-bind-mounts = runTest ./containers-require-bind-mounts.nix; 390 containers-restart_networking = runTest ./containers-restart_networking.nix; 391 containers-tmpfs = runTest ./containers-tmpfs.nix; 392 containers-unified-hierarchy = runTest ./containers-unified-hierarchy.nix; 393 convos = runTest ./convos.nix; 394 corerad = runTest ./corerad.nix; 395 corteza = runTest ./corteza.nix; 396 cosmic = runTest { 397 imports = [ ./cosmic.nix ]; 398 _module.args.testName = "cosmic"; 399 _module.args.enableAutologin = false; 400 _module.args.enableXWayland = true; 401 }; 402 cosmic-autologin = runTest { 403 imports = [ ./cosmic.nix ]; 404 _module.args.testName = "cosmic-autologin"; 405 _module.args.enableAutologin = true; 406 _module.args.enableXWayland = true; 407 }; 408 cosmic-autologin-noxwayland = runTest { 409 imports = [ ./cosmic.nix ]; 410 _module.args.testName = "cosmic-autologin-noxwayland"; 411 _module.args.enableAutologin = true; 412 _module.args.enableXWayland = false; 413 }; 414 cosmic-noxwayland = runTest { 415 imports = [ ./cosmic.nix ]; 416 _module.args.testName = "cosmic-noxwayland"; 417 _module.args.enableAutologin = false; 418 _module.args.enableXWayland = false; 419 }; 420 coturn = runTest ./coturn.nix; 421 couchdb = runTest ./couchdb.nix; 422 crabfit = runTest ./crabfit.nix; 423 cri-o = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./cri-o.nix; 424 croc = runTest ./croc.nix; 425 cross-seed = runTest ./cross-seed.nix; 426 cryptpad = runTest ./cryptpad.nix; 427 cups-pdf = runTest ./cups-pdf.nix; 428 curl-impersonate = runTest ./curl-impersonate.nix; 429 custom-ca = import ./custom-ca.nix { inherit pkgs runTest; }; 430 cyrus-imap = runTest ./cyrus-imap.nix; 431 dae = runTest ./dae.nix; 432 darling-dmg = runTest ./darling-dmg.nix; 433 dashy = runTest ./web-apps/dashy.nix; 434 davis = runTest ./davis.nix; 435 db-rest = runTest ./db-rest.nix; 436 dconf = runTest ./dconf.nix; 437 ddns-updater = runTest ./ddns-updater.nix; 438 deconz = runTest ./deconz.nix; 439 deluge = runTest ./deluge.nix; 440 dendrite = runTest ./matrix/dendrite.nix; 441 dep-scan = runTest ./dep-scan.nix; 442 dependency-track = runTest ./dependency-track.nix; 443 devpi-server = runTest ./devpi-server.nix; 444 dex-oidc = runTest ./dex-oidc.nix; 445 dhparams = runTest ./dhparams.nix; 446 disable-installer-tools = runTest ./disable-installer-tools.nix; 447 discourse = runTest { 448 imports = [ ./discourse.nix ]; 449 _module.args.package = pkgs.discourse; 450 }; 451 discourseAllPlugins = runTest { 452 imports = [ ./discourse.nix ]; 453 _module.args.package = pkgs.discourseAllPlugins; 454 }; 455 dnscrypt-proxy = runTestOn [ "x86_64-linux" ] ./dnscrypt-proxy.nix; 456 dnsdist = import ./dnsdist.nix { inherit pkgs runTest; }; 457 doas = runTest ./doas.nix; 458 docker = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./docker.nix; 459 docker-registry = runTest ./docker-registry.nix; 460 docker-rootless = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./docker-rootless.nix; 461 docker-tools = runTestOn [ "x86_64-linux" ] ./docker-tools.nix; 462 docker-tools-cross = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./docker-tools-cross.nix; 463 docker-tools-nix-shell = runTest ./docker-tools-nix-shell.nix; 464 docker-tools-overlay = runTestOn [ "x86_64-linux" ] ./docker-tools-overlay.nix; 465 docling-serve = runTest ./docling-serve.nix; 466 documentation = pkgs.callPackage ../modules/misc/documentation/test.nix { inherit nixosLib; }; 467 documize = runTest ./documize.nix; 468 doh-proxy-rust = runTest ./doh-proxy-rust.nix; 469 dokuwiki = runTest ./dokuwiki.nix; 470 dolibarr = runTest ./dolibarr.nix; 471 domination = runTest ./domination.nix; 472 dovecot = runTest ./dovecot.nix; 473 draupnir = runTest ./matrix/draupnir.nix; 474 drawterm = discoverTests (import ./drawterm.nix); 475 drbd = runTest ./drbd.nix; 476 drbd-driver = runTest ./drbd-driver.nix; 477 druid = handleTestOn [ "x86_64-linux" ] ./druid { }; 478 drupal = runTest ./drupal.nix; 479 dublin-traceroute = runTest ./dublin-traceroute.nix; 480 dwl = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./dwl.nix; 481 early-mount-options = runTest ./early-mount-options.nix; 482 earlyoom = runTestOn [ "x86_64-linux" ] ./earlyoom.nix; 483 easytier = runTest ./easytier.nix; 484 ec2-config = (handleTestOn [ "x86_64-linux" ] ./ec2.nix { }).boot-ec2-config or { }; 485 ec2-nixops = (handleTestOn [ "x86_64-linux" ] ./ec2.nix { }).boot-ec2-nixops or { }; 486 echoip = runTest ./echoip.nix; 487 ecryptfs = runTest ./ecryptfs.nix; 488 ejabberd = runTest ./xmpp/ejabberd.nix; 489 elk = handleTestOn [ "x86_64-linux" ] ./elk.nix { }; 490 emacs-daemon = runTest ./emacs-daemon.nix; 491 endlessh = runTest ./endlessh.nix; 492 endlessh-go = runTest ./endlessh-go.nix; 493 engelsystem = runTest ./engelsystem.nix; 494 enlightenment = runTest ./enlightenment.nix; 495 ente = runTest ./ente; 496 env = runTest ./env.nix; 497 envfs = runTest ./envfs.nix; 498 envoy = runTest { 499 imports = [ ./envoy.nix ]; 500 _module.args.envoyPackage = pkgs.envoy; 501 }; 502 envoy-bin = runTest { 503 imports = [ ./envoy.nix ]; 504 _module.args.envoyPackage = pkgs.envoy-bin; 505 }; 506 ergo = runTest ./ergo.nix; 507 ergochat = runTest ./ergochat.nix; 508 esphome = runTest ./esphome.nix; 509 etc = pkgs.callPackage ../modules/system/etc/test.nix { inherit evalMinimalConfig; }; 510 etcd = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./etcd/etcd.nix; 511 etcd-cluster = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./etcd/etcd-cluster.nix; 512 etebase-server = runTest ./etebase-server.nix; 513 etesync-dav = runTest ./etesync-dav.nix; 514 evcc = runTest ./evcc.nix; 515 fail2ban = runTest ./fail2ban.nix; 516 fakeroute = runTest ./fakeroute.nix; 517 fancontrol = runTest ./fancontrol.nix; 518 fanout = runTest ./fanout.nix; 519 fastnetmon-advanced = runTest ./fastnetmon-advanced.nix; 520 fcitx5 = runTest ./fcitx5; 521 fedimintd = runTest ./fedimintd.nix; 522 ferm = runTest ./ferm.nix; 523 ferretdb = import ./ferretdb.nix { inherit pkgs runTest; }; 524 fider = runTest ./fider.nix; 525 filebrowser = runTest ./filebrowser.nix; 526 filesender = runTest ./filesender.nix; 527 filesystems-overlayfs = runTest ./filesystems-overlayfs.nix; 528 firefly-iii = runTest ./firefly-iii.nix; 529 firefly-iii-data-importer = runTest ./firefly-iii-data-importer.nix; 530 firefox = runTest { 531 imports = [ ./firefox.nix ]; 532 _module.args.firefoxPackage = pkgs.firefox; 533 }; 534 firefox-beta = runTest { 535 imports = [ ./firefox.nix ]; 536 _module.args.firefoxPackage = pkgs.firefox-beta; 537 }; 538 firefox-devedition = runTest { 539 imports = [ ./firefox.nix ]; 540 _module.args.firefoxPackage = pkgs.firefox-devedition; 541 }; 542 firefox-esr = runTest { 543 # used in `tested` job 544 imports = [ ./firefox.nix ]; 545 _module.args.firefoxPackage = pkgs.firefox-esr; 546 }; 547 firefox-esr-140 = runTest { 548 imports = [ ./firefox.nix ]; 549 _module.args.firefoxPackage = pkgs.firefox-esr-140; 550 }; 551 firefoxpwa = runTest ./firefoxpwa.nix; 552 firejail = runTest ./firejail.nix; 553 firewall = runTest { 554 imports = [ ./firewall.nix ]; 555 _module.args.nftables = false; 556 }; 557 firewall-nftables = runTest { 558 imports = [ ./firewall.nix ]; 559 _module.args.nftables = true; 560 }; 561 firezone = runTest ./firezone/firezone.nix; 562 fish = runTest ./fish.nix; 563 flannel = runTestOn [ "x86_64-linux" ] ./flannel.nix; 564 flaresolverr = runTest ./flaresolverr.nix; 565 flood = runTest ./flood.nix; 566 fluent-bit = runTest ./fluent-bit.nix; 567 fluentd = runTest ./fluentd.nix; 568 fluidd = runTest ./fluidd.nix; 569 fontconfig-default-fonts = runTest ./fontconfig-default-fonts.nix; 570 forgejo = import ./forgejo.nix { 571 inherit runTest; 572 forgejoPackage = pkgs.forgejo; 573 }; 574 forgejo-lts = import ./forgejo.nix { 575 inherit runTest; 576 forgejoPackage = pkgs.forgejo-lts; 577 }; 578 freenet = runTest ./freenet.nix; 579 freeswitch = runTest ./freeswitch.nix; 580 freetube = discoverTests (import ./freetube.nix); 581 freshrss = import ./freshrss { inherit runTest; }; 582 frigate = runTest ./frigate.nix; 583 froide-govplan = runTest ./web-apps/froide-govplan.nix; 584 frp = runTest ./frp.nix; 585 frr = runTest ./frr.nix; 586 fsck = runTest { 587 imports = [ ./fsck.nix ]; 588 _module.args.systemdStage1 = false; 589 }; 590 fsck-systemd-stage-1 = runTest { 591 imports = [ ./fsck.nix ]; 592 _module.args.systemdStage1 = true; 593 }; 594 fscrypt = runTest ./fscrypt.nix; 595 ft2-clone = runTest ./ft2-clone.nix; 596 galene = discoverTests (import ./galene.nix { inherit runTest; }); 597 gancio = runTest ./gancio.nix; 598 garage_1 = import ./garage { 599 inherit runTest; 600 package = pkgs.garage_1; 601 }; 602 garage_2 = import ./garage { 603 inherit runTest; 604 package = pkgs.garage_2; 605 }; 606 gatus = runTest ./gatus.nix; 607 gemstash = import ./gemstash.nix { inherit pkgs runTest; }; 608 geoclue2 = runTest ./geoclue2.nix; 609 geoserver = runTest ./geoserver.nix; 610 gerrit = runTest ./gerrit.nix; 611 getaddrinfo = runTest ./getaddrinfo.nix; 612 geth = runTest ./geth.nix; 613 ghostunnel = runTest ./ghostunnel.nix; 614 ghostunnel-modular = runTest ./ghostunnel-modular.nix; 615 gitdaemon = runTest ./gitdaemon.nix; 616 gitea = handleTest ./gitea.nix { giteaPackage = pkgs.gitea; }; 617 github-runner = runTest ./github-runner.nix; 618 gitlab = runTest ./gitlab.nix; 619 gitolite = runTest ./gitolite.nix; 620 gitolite-fcgiwrap = runTest ./gitolite-fcgiwrap.nix; 621 glance = runTest ./glance.nix; 622 glances = runTest ./glances.nix; 623 glitchtip = runTest ./glitchtip.nix; 624 glusterfs = runTest ./glusterfs.nix; 625 gnome = runTest ./gnome.nix; 626 gnome-extensions = runTest ./gnome-extensions.nix; 627 gnome-flashback = runTest ./gnome-flashback.nix; 628 gnome-xorg = runTest ./gnome-xorg.nix; 629 gns3-server = runTest ./gns3-server.nix; 630 gnupg = runTest ./gnupg.nix; 631 go-camo = runTest ./go-camo.nix; 632 go-httpbin = runTest ./go-httpbin.nix; 633 go-neb = runTest ./go-neb.nix; 634 goatcounter = runTest ./goatcounter.nix; 635 gobgpd = runTest ./gobgpd.nix; 636 gocd-agent = runTest ./gocd-agent.nix; 637 gocd-server = runTest ./gocd-server.nix; 638 gokapi = runTest ./gokapi.nix; 639 gollum = runTest ./gollum.nix; 640 gonic = runTest ./gonic.nix; 641 google-oslogin = runTest ./google-oslogin; 642 gopro-tool = runTest ./gopro-tool.nix; 643 goss = runTest ./goss.nix; 644 gotenberg = runTest ./gotenberg.nix; 645 gotify-server = runTest ./gotify-server.nix; 646 gotosocial = runTest ./web-apps/gotosocial.nix; 647 grafana = handleTest ./grafana { }; 648 graphite = runTest ./graphite.nix; 649 grav = runTest ./web-apps/grav.nix; 650 graylog = runTest ./graylog.nix; 651 greetd-no-shadow = runTest ./greetd-no-shadow.nix; 652 grocy = runTest ./grocy.nix; 653 grow-partition = runTest ./grow-partition.nix; 654 grub = runTest ./grub.nix; 655 guacamole-server = runTest ./guacamole-server.nix; 656 guix = handleTest ./guix { }; 657 gvisor = runTest ./gvisor.nix; 658 h2o = import ./web-servers/h2o { inherit recurseIntoAttrs runTest; }; 659 hadoop = import ./hadoop { 660 inherit handleTestOn; 661 package = pkgs.hadoop; 662 }; 663 hadoop2 = import ./hadoop { 664 inherit handleTestOn; 665 package = pkgs.hadoop2; 666 }; 667 hadoop_3_3 = import ./hadoop { 668 inherit handleTestOn; 669 package = pkgs.hadoop_3_3; 670 }; 671 haproxy = runTest ./haproxy.nix; 672 hardened = runTest ./hardened.nix; 673 harmonia = runTest ./harmonia.nix; 674 haste-server = runTest ./haste-server.nix; 675 hbase2 = runTest { 676 imports = [ ./hbase.nix ]; 677 _module.args.getPackage = pkgs: pkgs.hbase2; 678 }; 679 hbase3 = runTest { 680 imports = [ ./hbase.nix ]; 681 _module.args.getPackage = pkgs: pkgs.hbase3; 682 }; 683 hbase_2_4 = runTest { 684 imports = [ ./hbase.nix ]; 685 _module.args.getPackage = pkgs: pkgs.hbase_2_4; 686 }; 687 hbase_2_5 = runTest { 688 imports = [ ./hbase.nix ]; 689 _module.args.getPackage = pkgs: pkgs.hbase_2_5; 690 }; 691 headscale = runTest ./headscale.nix; 692 healthchecks = runTest ./web-apps/healthchecks.nix; 693 hedgedoc = runTest ./hedgedoc.nix; 694 herbstluftwm = runTest ./herbstluftwm.nix; 695 # 9pnet_virtio used to mount /nix partition doesn't support 696 # hibernation. This test happens to work on x86_64-linux but 697 # not on other platforms. 698 hibernate = handleTestOn [ "x86_64-linux" ] ./hibernate.nix { }; 699 hibernate-systemd-stage-1 = handleTestOn [ "x86_64-linux" ] ./hibernate.nix { 700 systemdStage1 = true; 701 }; 702 hitch = handleTest ./hitch { }; 703 hledger-web = runTest ./hledger-web.nix; 704 hockeypuck = runTest ./hockeypuck.nix; 705 home-assistant = runTest ./home-assistant.nix; 706 homebox = runTest ./homebox.nix; 707 homebridge = runTest ./homebridge.nix; 708 homepage-dashboard = runTest ./homepage-dashboard.nix; 709 homer = handleTest ./homer { }; 710 honk = runTest ./honk.nix; 711 hostname = handleTest ./hostname.nix { }; 712 hound = runTest ./hound.nix; 713 hub = runTest ./git/hub.nix; 714 hydra = runTest ./hydra; 715 i18n = runTest ./i18n.nix; 716 i3wm = runTest ./i3wm.nix; 717 icingaweb2 = runTest ./icingaweb2.nix; 718 ifm = runTest ./ifm.nix; 719 ifstate = import ./ifstate { inherit runTest; }; 720 iftop = runTest ./iftop.nix; 721 image-contents = handleTest ./image-contents.nix { }; 722 immich = runTest ./web-apps/immich.nix; 723 immich-public-proxy = runTest ./web-apps/immich-public-proxy.nix; 724 immich-vectorchord-migration = runTest ./web-apps/immich-vectorchord-migration.nix; 725 incron = runTest ./incron.nix; 726 incus = pkgs.recurseIntoAttrs ( 727 handleTest ./incus { 728 lts = false; 729 inherit system pkgs; 730 } 731 ); 732 incus-lts = pkgs.recurseIntoAttrs (handleTest ./incus { inherit system pkgs; }); 733 influxdb = runTest ./influxdb.nix; 734 influxdb2 = runTest ./influxdb2.nix; 735 initrd-luks-empty-passphrase = runTest ./initrd-luks-empty-passphrase.nix; 736 initrd-network-openvpn = handleTestOn [ "x86_64-linux" "i686-linux" ] ./initrd-network-openvpn { }; 737 initrd-network-ssh = handleTest ./initrd-network-ssh { }; 738 initrd-secrets = handleTest ./initrd-secrets.nix { }; 739 initrd-secrets-changing = handleTest ./initrd-secrets-changing.nix { }; 740 initrdNetwork = runTest ./initrd-network.nix; 741 input-remapper = runTest ./input-remapper.nix; 742 inspircd = runTest ./inspircd.nix; 743 installed-tests = pkgs.recurseIntoAttrs (handleTest ./installed-tests { }); 744 installer = handleTest ./installer.nix { }; 745 installer-systemd-stage-1 = handleTest ./installer-systemd-stage-1.nix { }; 746 intune = runTest ./intune.nix; 747 invidious = runTest ./invidious.nix; 748 invoiceplane = runTest ./invoiceplane.nix; 749 iodine = runTest ./iodine.nix; 750 iosched = runTest ./iosched.nix; 751 ipget = runTest ./ipget.nix; 752 ipv6 = runTest ./ipv6.nix; 753 iscsi-multipath-root = runTest ./iscsi-multipath-root.nix; 754 iscsi-root = runTest ./iscsi-root.nix; 755 isolate = runTest ./isolate.nix; 756 isso = runTest ./isso.nix; 757 jackett = runTest ./jackett.nix; 758 jellyfin = runTest ./jellyfin.nix; 759 jellyseerr = runTest ./jellyseerr.nix; 760 jenkins = runTest ./jenkins.nix; 761 jenkins-cli = runTest ./jenkins-cli.nix; 762 jibri = runTest ./jibri.nix; 763 jirafeau = runTest ./jirafeau.nix; 764 jitsi-meet = runTest ./jitsi-meet.nix; 765 jool = import ./jool.nix { inherit pkgs runTest; }; 766 jotta-cli = runTest ./jotta-cli.nix; 767 k3s = handleTest ./k3s { }; 768 kafka = handleTest ./kafka { }; 769 kanboard = runTest ./web-apps/kanboard.nix; 770 kanidm = runTest ./kanidm.nix; 771 kanidm-provisioning = runTest ./kanidm-provisioning.nix; 772 karma = runTest ./karma.nix; 773 kavita = runTest ./kavita.nix; 774 kbd-setfont-decompress = runTest ./kbd-setfont-decompress.nix; 775 kbd-update-search-paths-patch = runTest ./kbd-update-search-paths-patch.nix; 776 kea = runTest ./kea.nix; 777 keepalived = runTest ./keepalived.nix; 778 keepassxc = runTest ./keepassxc.nix; 779 kerberos = handleTest ./kerberos/default.nix { }; 780 kernel-generic = handleTest ./kernel-generic.nix { }; 781 kernel-latest-ath-user-regd = runTest ./kernel-latest-ath-user-regd.nix; 782 kernel-rust = handleTest ./kernel-rust.nix { }; 783 keter = runTest ./keter.nix; 784 kexec = runTest ./kexec.nix; 785 keycloak = discoverTests (import ./keycloak.nix); 786 keyd = handleTest ./keyd.nix { }; 787 keymap = handleTest ./keymap.nix { }; 788 kimai = runTest ./kimai.nix; 789 kismet = runTest ./kismet.nix; 790 kmonad = runTest ./kmonad.nix; 791 knot = runTest ./knot.nix; 792 komga = runTest ./komga.nix; 793 krb5 = discoverTests (import ./krb5); 794 ksm = runTest ./ksm.nix; 795 kthxbye = runTest ./kthxbye.nix; 796 kubernetes = handleTestOn [ "x86_64-linux" ] ./kubernetes { }; 797 kubo = import ./kubo { inherit recurseIntoAttrs runTest; }; 798 lact = runTest ./lact.nix; 799 ladybird = runTest ./ladybird.nix; 800 languagetool = runTest ./languagetool.nix; 801 lanraragi = runTest ./lanraragi.nix; 802 lasuite-docs = runTest ./web-apps/lasuite-docs.nix; 803 lasuite-meet = runTest ./web-apps/lasuite-meet.nix; 804 latestKernel.login = runTest { 805 imports = [ ./login.nix ]; 806 _module.args.latestKernel = true; 807 }; 808 lauti = runTest ./lauti.nix; 809 lavalink = runTest ./lavalink.nix; 810 leaps = runTest ./leaps.nix; 811 legit = runTest ./legit.nix; 812 lemmy = runTest ./lemmy.nix; 813 lemurs = runTest ./lemurs/lemurs.nix; 814 lemurs-wayland = runTest ./lemurs/lemurs-wayland.nix; 815 lemurs-wayland-script = runTest ./lemurs/lemurs-wayland-script.nix; 816 lemurs-xorg = runTest ./lemurs/lemurs-xorg.nix; 817 lemurs-xorg-script = runTest ./lemurs/lemurs-xorg-script.nix; 818 libinput = runTest ./libinput.nix; 819 librenms = runTest ./librenms.nix; 820 libresprite = runTest ./libresprite.nix; 821 libreswan = runTest ./libreswan.nix; 822 libreswan-nat = runTest ./libreswan-nat.nix; 823 librewolf = runTest { 824 imports = [ ./firefox.nix ]; 825 _module.args.firefoxPackage = pkgs.librewolf; 826 }; 827 libuiohook = runTest ./libuiohook.nix; 828 libvirtd = runTest ./libvirtd.nix; 829 lidarr = runTest ./lidarr.nix; 830 lightdm = runTest ./lightdm.nix; 831 lighttpd = runTest ./lighttpd.nix; 832 limesurvey = runTest ./limesurvey.nix; 833 limine = import ./limine { inherit runTest; }; 834 listmonk = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./listmonk.nix { }; 835 litellm = runTest ./litellm.nix; 836 litestream = runTest ./litestream.nix; 837 livebook-service = runTest ./livebook-service.nix; 838 livekit = runTest ./networking/livekit.nix; 839 lk-jwt-service = runTest ./matrix/lk-jwt-service.nix; 840 llama-swap = runTest ./web-servers/llama-swap.nix; 841 lldap = runTest ./lldap.nix; 842 localsend = runTest ./localsend.nix; 843 locate = runTest ./locate.nix; 844 login = runTest ./login.nix; 845 logrotate = runTest ./logrotate.nix; 846 loki = runTest ./loki.nix; 847 #logstash = handleTest ./logstash.nix {}; 848 lomiri = discoverTests (import ./lomiri.nix); 849 lomiri-calculator-app = runTest ./lomiri-calculator-app.nix; 850 lomiri-calendar-app = runTest ./lomiri-calendar-app.nix; 851 lomiri-camera-app = discoverTests (import ./lomiri-camera-app.nix); 852 lomiri-clock-app = runTest ./lomiri-clock-app.nix; 853 lomiri-docviewer-app = runTest ./lomiri-docviewer-app.nix; 854 lomiri-filemanager-app = runTest ./lomiri-filemanager-app.nix; 855 lomiri-gallery-app = discoverTests (import ./lomiri-gallery-app.nix); 856 lomiri-mediaplayer-app = runTest ./lomiri-mediaplayer-app.nix; 857 lomiri-music-app = runTest ./lomiri-music-app.nix; 858 lomiri-system-settings = runTest ./lomiri-system-settings.nix; 859 lorri = handleTest ./lorri/default.nix { }; 860 luks = runTest ./luks.nix; 861 lvm2 = handleTest ./lvm2 { }; 862 lxc = handleTest ./lxc { }; 863 lxd-image-server = runTest ./lxd-image-server.nix; 864 lxqt = runTest ./lxqt.nix; 865 ly = runTest ./ly.nix; 866 maddy = discoverTests (import ./maddy { inherit handleTest; }); 867 maestral = runTest ./maestral.nix; 868 magic-wormhole-mailbox-server = runTest ./magic-wormhole-mailbox-server.nix; 869 magnetico = runTest ./magnetico.nix; 870 mailcatcher = runTest ./mailcatcher.nix; 871 mailhog = runTest ./mailhog.nix; 872 mailman = runTest ./mailman.nix; 873 mailpit = runTest ./mailpit.nix; 874 man = runTest ./man.nix; 875 mariadb-galera = handleTest ./mysql/mariadb-galera.nix { }; 876 marytts = runTest ./marytts.nix; 877 mastodon = pkgs.recurseIntoAttrs (handleTest ./web-apps/mastodon { inherit handleTestOn; }); 878 mate = runTest ./mate.nix; 879 mate-wayland = runTest ./mate-wayland.nix; 880 matomo = runTest ./matomo.nix; 881 matrix-alertmanager = runTest ./matrix/matrix-alertmanager.nix; 882 matrix-appservice-irc = runTest ./matrix/appservice-irc.nix; 883 matrix-conduit = runTest ./matrix/conduit.nix; 884 matrix-continuwuity = runTest ./matrix/continuwuity.nix; 885 matrix-synapse = runTest ./matrix/synapse.nix; 886 matrix-synapse-workers = runTest ./matrix/synapse-workers.nix; 887 matrix-tuwunel = runTest ./matrix/tuwunel.nix; 888 matter-server = runTest ./matter-server.nix; 889 mattermost = handleTest ./mattermost { }; 890 mautrix-discord = runTest ./matrix/mautrix-discord.nix; 891 mautrix-meta-postgres = runTest ./matrix/mautrix-meta-postgres.nix; 892 mautrix-meta-sqlite = runTest ./matrix/mautrix-meta-sqlite.nix; 893 mealie = runTest ./mealie.nix; 894 mediamtx = runTest ./mediamtx.nix; 895 mediatomb = runTest ./mediatomb.nix; 896 mediawiki = handleTest ./mediawiki.nix { }; 897 meilisearch = runTest ./meilisearch.nix; 898 memcached = runTest ./memcached.nix; 899 merecat = runTest ./merecat.nix; 900 metabase = runTest ./metabase.nix; 901 mihomo = runTest ./mihomo.nix; 902 mimir = runTest ./mimir.nix; 903 mindustry = runTest ./mindustry.nix; 904 minecraft-server = runTest ./minecraft-server.nix; 905 minidlna = runTest ./minidlna.nix; 906 miniflux = runTest ./miniflux.nix; 907 minio = runTest ./minio.nix; 908 miracle-wm = runTest ./miracle-wm.nix; 909 miriway = runTest ./miriway.nix; 910 misc = runTest ./misc.nix; 911 misskey = runTest ./misskey.nix; 912 mitmproxy = runTest ./mitmproxy.nix; 913 mjolnir = runTest ./matrix/mjolnir.nix; 914 mobilizon = runTest ./mobilizon.nix; 915 mod_perl = runTest ./mod_perl.nix; 916 modular-service-etc = runTest ./modular-service-etc/test.nix; 917 modularService = pkgs.callPackage ../modules/system/service/systemd/test.nix { 918 inherit evalSystem; 919 }; 920 molly-brown = runTest ./molly-brown.nix; 921 mollysocket = runTest ./mollysocket.nix; 922 monado = runTest ./monado.nix; 923 monetdb = runTest ./monetdb.nix; 924 mongodb = runTest ./mongodb.nix; 925 mongodb-ce = runTest ( 926 { config, ... }: 927 { 928 imports = [ ./mongodb.nix ]; 929 defaults.services.mongodb.package = config.node.pkgs.mongodb-ce; 930 } 931 ); 932 monica = runTest ./web-apps/monica.nix; 933 moodle = runTest ./moodle.nix; 934 moonraker = runTest ./moonraker.nix; 935 moosefs = runTest ./moosefs.nix; 936 mopidy = runTest ./mopidy.nix; 937 morph-browser = runTest ./morph-browser.nix; 938 mosquitto = runTest ./mosquitto.nix; 939 movim = import ./web-apps/movim { inherit recurseIntoAttrs runTest; }; 940 mpd = runTest ./mpd.nix; 941 mpv = runTest ./mpv.nix; 942 mtp = runTest ./mtp.nix; 943 multipass = runTest ./multipass.nix; 944 mumble = runTest ./mumble.nix; 945 munin = runTest ./munin.nix; 946 # Fails on aarch64-linux at the PDF creation step - need to debug this on an 947 # aarch64 machine.. 948 musescore = runTestOn [ "x86_64-linux" ] ./musescore.nix; 949 music-assistant = runTest ./music-assistant.nix; 950 mutableUsers = runTest ./mutable-users.nix; 951 mycelium = runTest ./mycelium; 952 mympd = runTest ./mympd.nix; 953 mysql = handleTest ./mysql/mysql.nix { }; 954 mysql-autobackup = handleTest ./mysql/mysql-autobackup.nix { }; 955 mysql-backup = handleTest ./mysql/mysql-backup.nix { }; 956 mysql-replication = handleTest ./mysql/mysql-replication.nix { }; 957 n8n = runTest ./n8n.nix; 958 nagios = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./nagios.nix; 959 nar-serve = runTest ./nar-serve.nix; 960 nat.firewall = handleTest ./nat.nix { withFirewall = true; }; 961 nat.nftables.firewall = handleTest ./nat.nix { 962 withFirewall = true; 963 nftables = true; 964 }; 965 nat.nftables.standalone = handleTest ./nat.nix { 966 withFirewall = false; 967 nftables = true; 968 }; 969 nat.standalone = handleTest ./nat.nix { withFirewall = false; }; 970 nats = runTest ./nats.nix; 971 navidrome = runTest ./navidrome.nix; 972 nbd = runTest ./nbd.nix; 973 ncdns = runTest ./ncdns.nix; 974 ncps = runTest ./ncps.nix; 975 ncps-custom-cache-datapath = runTest { 976 imports = [ ./ncps.nix ]; 977 defaults.services.ncps.cache.dataPath = "/path/to/ncps"; 978 }; 979 ndppd = runTest ./ndppd.nix; 980 nebula = runTest ./nebula.nix; 981 neo4j = runTest ./neo4j.nix; 982 netbird = runTest ./netbird.nix; 983 netbox-upgrade = runTest ./web-apps/netbox-upgrade.nix; 984 netbox_4_1 = handleTest ./web-apps/netbox/default.nix { netbox = pkgs.netbox_4_1; }; 985 netbox_4_2 = handleTest ./web-apps/netbox/default.nix { netbox = pkgs.netbox_4_2; }; 986 netbox_4_3 = handleTest ./web-apps/netbox/default.nix { netbox = pkgs.netbox_4_3; }; 987 netdata = runTest ./netdata.nix; 988 networking.networkd = handleTest ./networking/networkd-and-scripted.nix { networkd = true; }; 989 networking.networkmanager = handleTest ./networking/networkmanager.nix { }; 990 networking.scripted = handleTest ./networking/networkd-and-scripted.nix { networkd = false; }; 991 # TODO: put in networking.nix after the test becomes more complete 992 networkingProxy = runTest ./networking-proxy.nix; 993 nextcloud = handleTest ./nextcloud { }; 994 nextflow = runTestOn [ "x86_64-linux" ] ./nextflow.nix; 995 nextjs-ollama-llm-ui = runTest ./web-apps/nextjs-ollama-llm-ui.nix; 996 nexus = runTest ./nexus.nix; 997 # TODO: Test nfsv3 + Kerberos 998 nfs3 = handleTest ./nfs { version = 3; }; 999 nfs4 = handleTest ./nfs { version = 4; }; 1000 nghttpx = runTest ./nghttpx.nix; 1001 nginx = runTest ./nginx.nix; 1002 nginx-auth = runTest ./nginx-auth.nix; 1003 nginx-etag = runTest ./nginx-etag.nix; 1004 nginx-etag-compression = runTest ./nginx-etag-compression.nix; 1005 nginx-globalredirect = runTest ./nginx-globalredirect.nix; 1006 nginx-http3 = import ./nginx-http3.nix { inherit pkgs runTest; }; 1007 nginx-mime = runTest ./nginx-mime.nix; 1008 nginx-modsecurity = runTest ./nginx-modsecurity.nix; 1009 nginx-moreheaders = runTest ./nginx-moreheaders.nix; 1010 nginx-njs = runTest ./nginx-njs.nix; 1011 nginx-proxyprotocol = runTest ./nginx-proxyprotocol/default.nix; 1012 nginx-pubhtml = runTest ./nginx-pubhtml.nix; 1013 nginx-redirectcode = runTest ./nginx-redirectcode.nix; 1014 nginx-sso = runTest ./nginx-sso.nix; 1015 nginx-status-page = runTest ./nginx-status-page.nix; 1016 nginx-tmpdir = runTest ./nginx-tmpdir.nix; 1017 nginx-unix-socket = runTest ./nginx-unix-socket.nix; 1018 nginx-variants = import ./nginx-variants.nix { inherit pkgs runTest; }; 1019 nifi = runTestOn [ "x86_64-linux" ] ./web-apps/nifi.nix; 1020 nimdow = runTest ./nimdow.nix; 1021 nipap = runTest ./web-apps/nipap.nix; 1022 nitter = runTest ./nitter.nix; 1023 nix-channel = pkgs.callPackage ../modules/config/nix-channel/test.nix { }; 1024 nix-config = runTest ./nix-config.nix; 1025 nix-ld = runTest ./nix-ld.nix; 1026 nix-misc = handleTest ./nix/misc.nix { }; 1027 nix-required-mounts = runTest ./nix-required-mounts; 1028 nix-serve = runTest ./nix-serve.nix; 1029 nix-serve-ssh = runTest ./nix-serve-ssh.nix; 1030 nix-store-veritysetup = runTest ./nix-store-veritysetup.nix; 1031 nix-upgrade = handleTest ./nix/upgrade.nix { 1032 inherit (pkgs) nixVersions; 1033 inherit system; 1034 }; 1035 nixops = handleTest ./nixops/default.nix { }; 1036 nixos-generate-config = runTest ./nixos-generate-config.nix; 1037 nixos-rebuild-install-bootloader = handleTestOn [ 1038 "x86_64-linux" 1039 ] ./nixos-rebuild-install-bootloader.nix { withNg = false; }; 1040 nixos-rebuild-install-bootloader-ng = handleTestOn [ 1041 "x86_64-linux" 1042 ] ./nixos-rebuild-install-bootloader.nix { withNg = true; }; 1043 nixos-rebuild-specialisations = runTestOn [ "x86_64-linux" ] { 1044 imports = [ ./nixos-rebuild-specialisations.nix ]; 1045 _module.args.withNg = false; 1046 }; 1047 nixos-rebuild-specialisations-ng = runTestOn [ "x86_64-linux" ] { 1048 imports = [ ./nixos-rebuild-specialisations.nix ]; 1049 _module.args.withNg = true; 1050 }; 1051 nixos-rebuild-target-host = runTest { 1052 imports = [ ./nixos-rebuild-target-host.nix ]; 1053 _module.args.withNg = false; 1054 }; 1055 nixos-rebuild-target-host-ng = runTest { 1056 imports = [ ./nixos-rebuild-target-host.nix ]; 1057 _module.args.withNg = true; 1058 }; 1059 nixpkgs = pkgs.callPackage ../modules/misc/nixpkgs/test.nix { inherit evalMinimalConfig; }; 1060 nixseparatedebuginfod = runTest ./nixseparatedebuginfod.nix; 1061 nixseparatedebuginfod2 = runTest ./nixseparatedebuginfod2.nix; 1062 node-red = runTest ./node-red.nix; 1063 nomad = runTest ./nomad.nix; 1064 nominatim = runTest ./nominatim.nix; 1065 non-default-filesystems = handleTest ./non-default-filesystems.nix { }; 1066 non-switchable-system = runTest ./non-switchable-system.nix; 1067 noto-fonts = runTest ./noto-fonts.nix; 1068 noto-fonts-cjk-qt-default-weight = runTest ./noto-fonts-cjk-qt-default-weight.nix; 1069 novacomd = handleTestOn [ "x86_64-linux" ] ./novacomd.nix { }; 1070 npmrc = runTest ./npmrc.nix; 1071 nscd = runTest ./nscd.nix; 1072 nsd = runTest ./nsd.nix; 1073 ntfy-sh = handleTest ./ntfy-sh.nix { }; 1074 ntfy-sh-migration = handleTest ./ntfy-sh-migration.nix { }; 1075 ntpd = runTest ./ntpd.nix; 1076 ntpd-rs = runTest ./ntpd-rs.nix; 1077 nvidia-container-toolkit = runTest ./nvidia-container-toolkit.nix; 1078 nvme-rs = runTest ./nvme-rs.nix; 1079 nvmetcfg = runTest ./nvmetcfg.nix; 1080 nyxt = runTest ./nyxt.nix; 1081 nzbget = runTest ./nzbget.nix; 1082 nzbhydra2 = runTest ./nzbhydra2.nix; 1083 obs-studio = runTest ./obs-studio.nix; 1084 oci-containers = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./oci-containers.nix { }; 1085 ocis = runTest ./ocis.nix; 1086 ocsinventory-agent = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./ocsinventory-agent.nix { }; 1087 octoprint = runTest ./octoprint.nix; 1088 oddjobd = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./oddjobd.nix { }; 1089 odoo = runTest ./odoo.nix; 1090 odoo16 = runTest { 1091 imports = [ ./odoo.nix ]; 1092 _module.args.package = pkgs.odoo16; 1093 }; 1094 odoo17 = runTest { 1095 imports = [ ./odoo.nix ]; 1096 _module.args.package = pkgs.odoo17; 1097 }; 1098 oh-my-zsh = runTest ./oh-my-zsh.nix; 1099 oku = runTest ./oku.nix; 1100 olivetin = runTest ./olivetin.nix; 1101 ollama = runTest ./ollama.nix; 1102 ollama-cuda = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./ollama-cuda.nix; 1103 ollama-rocm = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./ollama-rocm.nix; 1104 ombi = runTest ./ombi.nix; 1105 omnom = runTest ./omnom; 1106 oncall = runTest ./web-apps/oncall.nix; 1107 open-web-calendar = runTest ./web-apps/open-web-calendar.nix; 1108 open-webui = runTest ./open-webui.nix; 1109 openarena = runTest ./openarena.nix; 1110 openbao = runTest ./openbao.nix; 1111 opencloud = runTest ./opencloud.nix; 1112 openldap = runTest ./openldap.nix; 1113 openresty-lua = runTest ./openresty-lua.nix; 1114 opensearch = discoverTests (import ./opensearch.nix); 1115 opensmtpd = handleTest ./opensmtpd.nix { }; 1116 opensmtpd-rspamd = handleTest ./opensmtpd-rspamd.nix { }; 1117 opensnitch = runTest ./opensnitch.nix; 1118 openssh = runTest ./openssh.nix; 1119 openstack-image-metadata = 1120 (handleTestOn [ "x86_64-linux" ] ./openstack-image.nix { }).metadata or { }; 1121 openstack-image-userdata = 1122 (handleTestOn [ "x86_64-linux" ] ./openstack-image.nix { }).userdata or { }; 1123 opentabletdriver = runTest ./opentabletdriver.nix; 1124 opentelemetry-collector = runTest ./opentelemetry-collector.nix; 1125 openvscode-server = runTest ./openvscode-server.nix; 1126 openvswitch = runTest ./openvswitch.nix; 1127 optee = handleTestOn [ "aarch64-linux" ] ./optee.nix { }; 1128 orangefs = runTest ./orangefs.nix; 1129 orthanc = runTest ./orthanc.nix; 1130 os-prober = handleTestOn [ "x86_64-linux" ] ./os-prober.nix { }; 1131 osquery = handleTestOn [ "x86_64-linux" ] ./osquery.nix { }; 1132 osrm-backend = runTest ./osrm-backend.nix; 1133 outline = runTest ./outline.nix; 1134 overlayfs = runTest ./overlayfs.nix; 1135 overseerr = runTest ./overseerr.nix; 1136 owi = runTest ./owi.nix; 1137 owncast = runTest ./owncast.nix; 1138 oxidized = handleTest ./oxidized.nix { }; 1139 pacemaker = runTest ./pacemaker.nix; 1140 packagekit = runTest ./packagekit.nix; 1141 paisa = runTest ./paisa.nix; 1142 pam-file-contents = runTest ./pam/pam-file-contents.nix; 1143 pam-lastlog = runTest ./pam/pam-lastlog.nix; 1144 pam-oath-login = runTest ./pam/pam-oath-login.nix; 1145 pam-u2f = runTest ./pam/pam-u2f.nix; 1146 pam-ussh = runTest ./pam/pam-ussh.nix; 1147 pam-zfs-key = runTest ./pam/zfs-key.nix; 1148 pangolin = runTest ./pangolin.nix; 1149 pantalaimon = runTest ./matrix/pantalaimon.nix; 1150 pantheon = runTest ./pantheon.nix; 1151 paperless = runTest ./paperless.nix; 1152 paretosecurity = runTest ./paretosecurity.nix; 1153 parsedmarc = handleTest ./parsedmarc { }; 1154 pass-secret-service = runTest ./pass-secret-service.nix; 1155 password-option-override-ordering = runTest ./password-option-override-ordering.nix; 1156 patroni = handleTestOn [ "x86_64-linux" ] ./patroni.nix { }; 1157 pdns-recursor = runTest ./pdns-recursor.nix; 1158 peerflix = runTest ./peerflix.nix; 1159 peering-manager = runTest ./web-apps/peering-manager.nix; 1160 peertube = handleTestOn [ "x86_64-linux" ] ./web-apps/peertube.nix { }; 1161 peroxide = runTest ./peroxide.nix; 1162 pgadmin4 = runTest ./pgadmin4.nix; 1163 pgbackrest = import ./pgbackrest { inherit runTest; }; 1164 pgbouncer = runTest ./pgbouncer.nix; 1165 pghero = runTest ./pghero.nix; 1166 pgmanage = runTest ./pgmanage.nix; 1167 pgweb = runTest ./pgweb.nix; 1168 phosh = runTest ./phosh.nix; 1169 photonvision = runTest ./photonvision.nix; 1170 photoprism = runTest ./photoprism.nix; 1171 php = import ./php/default.nix { 1172 inherit runTest; 1173 php = pkgs.php; 1174 }; 1175 php81 = import ./php/default.nix { 1176 inherit runTest; 1177 php = pkgs.php81; 1178 }; 1179 php82 = import ./php/default.nix { 1180 inherit runTest; 1181 php = pkgs.php82; 1182 }; 1183 php83 = import ./php/default.nix { 1184 inherit runTest; 1185 php = pkgs.php83; 1186 }; 1187 php84 = import ./php/default.nix { 1188 inherit runTest; 1189 php = pkgs.php84; 1190 }; 1191 phylactery = runTest ./web-apps/phylactery.nix; 1192 pict-rs = runTest ./pict-rs.nix; 1193 pihole-ftl = import ./pihole-ftl { inherit runTest; }; 1194 pingvin-share = runTest ./pingvin-share.nix; 1195 pinnwand = runTest ./pinnwand.nix; 1196 pixelfed = import ./web-apps/pixelfed { inherit runTestOn; }; 1197 plantuml-server = runTest ./plantuml-server.nix; 1198 plasma6 = runTest ./plasma6.nix; 1199 plausible = runTest ./plausible.nix; 1200 playwright-python = runTest ./playwright-python.nix; 1201 please = runTest ./please.nix; 1202 pleroma = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./pleroma.nix { }; 1203 plikd = runTest ./plikd.nix; 1204 plotinus = runTest ./plotinus.nix; 1205 pocket-id = runTest ./pocket-id.nix; 1206 podgrab = runTest ./podgrab.nix; 1207 podman = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./podman/default.nix { }; 1208 podman-tls-ghostunnel = handleTestOn [ 1209 "aarch64-linux" 1210 "x86_64-linux" 1211 ] ./podman/tls-ghostunnel.nix { }; 1212 polaris = runTest ./polaris.nix; 1213 pomerium = handleTestOn [ "x86_64-linux" ] ./pomerium.nix { }; 1214 portunus = runTest ./portunus.nix; 1215 postfix = handleTest ./postfix.nix { }; 1216 postfix-raise-smtpd-tls-security-level = 1217 handleTest ./postfix-raise-smtpd-tls-security-level.nix 1218 { }; 1219 postfix-tlspol = runTest ./postfix-tlspol.nix; 1220 postfixadmin = runTest ./postfixadmin.nix; 1221 postgres-websockets = runTest ./postgres-websockets.nix; 1222 postgresql = handleTest ./postgresql { }; 1223 postgrest = runTest ./postgrest.nix; 1224 power-profiles-daemon = runTest ./power-profiles-daemon.nix; 1225 powerdns = runTest ./powerdns.nix; 1226 powerdns-admin = handleTest ./powerdns-admin.nix { }; 1227 pppd = runTest ./pppd.nix; 1228 predictable-interface-names = handleTest ./predictable-interface-names.nix { }; 1229 prefect = runTest ./prefect.nix; 1230 pretalx = runTest ./web-apps/pretalx.nix; 1231 pretix = runTest ./web-apps/pretix.nix; 1232 printing-service = runTest { 1233 imports = [ ./printing.nix ]; 1234 _module.args.socket = false; 1235 _module.args.listenTcp = true; 1236 }; 1237 printing-service-notcp = runTest { 1238 imports = [ ./printing.nix ]; 1239 _module.args.socket = false; 1240 _module.args.listenTcp = false; 1241 }; 1242 printing-socket = runTest { 1243 imports = [ ./printing.nix ]; 1244 _module.args.socket = true; 1245 _module.args.listenTcp = true; 1246 }; 1247 printing-socket-notcp = runTest { 1248 imports = [ ./printing.nix ]; 1249 _module.args.socket = true; 1250 _module.args.listenTcp = false; 1251 }; 1252 privatebin = runTest ./privatebin.nix; 1253 privoxy = runTest ./privoxy.nix; 1254 prometheus = import ./prometheus { inherit runTest; }; 1255 prometheus-exporters = handleTest ./prometheus-exporters.nix { }; 1256 prosody = runTest ./xmpp/prosody.nix; 1257 prosody-mysql = handleTest ./xmpp/prosody-mysql.nix { }; 1258 prowlarr = runTest ./prowlarr.nix; 1259 proxy = runTest ./proxy.nix; 1260 pt2-clone = runTest ./pt2-clone.nix; 1261 public-inbox = runTest ./public-inbox.nix; 1262 pufferpanel = runTest ./pufferpanel.nix; 1263 pulseaudio = discoverTests (import ./pulseaudio.nix); 1264 pykms = runTest ./pykms.nix; 1265 pyload = runTest ./pyload.nix; 1266 qbittorrent = runTest ./qbittorrent.nix; 1267 qboot = handleTestOn [ "x86_64-linux" "i686-linux" ] ./qboot.nix { }; 1268 qemu-vm-external-disk-image = runTest ./qemu-vm-external-disk-image.nix; 1269 qemu-vm-restrictnetwork = handleTest ./qemu-vm-restrictnetwork.nix { }; 1270 qemu-vm-store = runTest ./qemu-vm-store.nix; 1271 qemu-vm-volatile-root = runTest ./qemu-vm-volatile-root.nix; 1272 qgis = handleTest ./qgis.nix { package = pkgs.qgis; }; 1273 qgis-ltr = handleTest ./qgis.nix { package = pkgs.qgis-ltr; }; 1274 qownnotes = runTest ./qownnotes.nix; 1275 qtile = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./qtile/default.nix; 1276 qtile-extras = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./qtile-extras/default.nix; 1277 quake3 = runTest ./quake3.nix; 1278 quicktun = runTest ./quicktun.nix; 1279 quickwit = runTest ./quickwit.nix; 1280 quorum = runTest ./quorum.nix; 1281 rabbitmq = runTest ./rabbitmq.nix; 1282 radarr = runTest ./radarr.nix; 1283 radicale = runTest ./radicale.nix; 1284 radicle = runTest ./radicle.nix; 1285 ragnarwm = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./ragnarwm.nix; 1286 rasdaemon = runTest ./rasdaemon.nix; 1287 rathole = runTest ./rathole.nix; 1288 readarr = runTest ./readarr.nix; 1289 readeck = runTest ./readeck.nix; 1290 realm = runTest ./realm.nix; 1291 rebuilderd = runTest ./rebuilderd.nix; 1292 redis = handleTest ./redis.nix { }; 1293 redlib = runTest ./redlib.nix; 1294 redmine = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./redmine.nix { }; 1295 refind = runTest ./refind.nix; 1296 renovate = runTest ./renovate.nix; 1297 replace-dependencies = handleTest ./replace-dependencies { }; 1298 reposilite = runTest ./reposilite.nix; 1299 restartByActivationScript = runTest ./restart-by-activation-script.nix; 1300 restic = runTest ./restic.nix; 1301 restic-rest-server = runTest ./restic-rest-server.nix; 1302 retroarch = runTest ./retroarch.nix; 1303 ringboard = runTest ./ringboard.nix; 1304 rke2 = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./rke2 { }; 1305 rkvm = handleTest ./rkvm { }; 1306 rmfakecloud = runTest ./rmfakecloud.nix; 1307 robustirc-bridge = runTest ./robustirc-bridge.nix; 1308 rosenpass = runTest ./rosenpass.nix; 1309 roundcube = runTest ./roundcube.nix; 1310 routinator = handleTest ./routinator.nix { }; 1311 rshim = handleTest ./rshim.nix { }; 1312 rspamd = handleTest ./rspamd.nix { }; 1313 rspamd-trainer = runTest ./rspamd-trainer.nix; 1314 rss-bridge = handleTest ./web-apps/rss-bridge { }; 1315 rss2email = handleTest ./rss2email.nix { }; 1316 rstudio-server = runTest ./rstudio-server.nix; 1317 rsyncd = runTest ./rsyncd.nix; 1318 rsyslogd = handleTest ./rsyslogd.nix { }; 1319 rtkit = runTest ./rtkit.nix; 1320 rtorrent = runTest ./rtorrent.nix; 1321 rush = runTest ./rush.nix; 1322 rustls-libssl = runTest ./rustls-libssl.nix; 1323 rxe = runTest ./rxe.nix; 1324 sabnzbd = runTest ./sabnzbd.nix; 1325 samba = runTest ./samba.nix; 1326 samba-wsdd = runTest ./samba-wsdd.nix; 1327 sane = runTest ./sane.nix; 1328 sanoid = runTest ./sanoid.nix; 1329 saunafs = runTest ./saunafs.nix; 1330 scaphandre = runTest ./scaphandre.nix; 1331 schleuder = runTest ./schleuder.nix; 1332 scion-freestanding-deployment = runTest ./scion/freestanding-deployment; 1333 scrutiny = runTest ./scrutiny.nix; 1334 scx = runTest ./scx/default.nix; 1335 sddm = import ./sddm.nix { inherit runTest; }; 1336 sdl3 = runTest ./sdl3.nix; 1337 searx = runTest ./searx.nix; 1338 seatd = runTest ./seatd.nix; 1339 send = runTest ./send.nix; 1340 service-runner = runTest ./service-runner.nix; 1341 servo = runTest ./servo.nix; 1342 sftpgo = runTest ./sftpgo.nix; 1343 sfxr-qt = runTest ./sfxr-qt.nix; 1344 sgt-puzzles = runTest ./sgt-puzzles.nix; 1345 shadow = runTest ./shadow.nix; 1346 shadowsocks = handleTest ./shadowsocks { }; 1347 shadps4 = runTest ./shadps4.nix; 1348 sharkey = runTest ./web-apps/sharkey.nix; 1349 shattered-pixel-dungeon = runTest ./shattered-pixel-dungeon.nix; 1350 shiori = runTest ./shiori.nix; 1351 signal-desktop = runTest ./signal-desktop.nix; 1352 silverbullet = runTest ./silverbullet.nix; 1353 simple = runTest ./simple.nix; 1354 sing-box = runTest ./sing-box.nix; 1355 slimserver = runTest ./slimserver.nix; 1356 slipshow = runTest ./slipshow.nix; 1357 slurm = runTest ./slurm.nix; 1358 smokeping = runTest ./smokeping.nix; 1359 snapcast = runTest ./snapcast.nix; 1360 snapper = runTest ./snapper.nix; 1361 snipe-it = runTest ./web-apps/snipe-it.nix; 1362 snips-sh = runTest ./snips-sh.nix; 1363 snmpd = runTest ./snmpd.nix; 1364 soapui = runTest ./soapui.nix; 1365 soft-serve = runTest ./soft-serve.nix; 1366 sogo = runTest ./sogo.nix; 1367 soju = runTest ./soju.nix; 1368 solanum = runTest ./solanum.nix; 1369 sonarr = runTest ./sonarr.nix; 1370 sonic-server = runTest ./sonic-server.nix; 1371 spacecookie = runTest ./spacecookie.nix; 1372 spark = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./spark { }; 1373 spiped = runTest ./spiped.nix; 1374 sqlite3-to-mysql = runTest ./sqlite3-to-mysql.nix; 1375 squid = runTest ./squid.nix; 1376 ssh-agent-auth = runTest ./ssh-agent-auth.nix; 1377 ssh-audit = runTest ./ssh-audit.nix; 1378 sshwifty = runTest ./web-apps/sshwifty/default.nix; 1379 sslh = handleTest ./sslh.nix { }; 1380 sssd = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./sssd.nix { }; 1381 sssd-ldap = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./sssd-ldap.nix { }; 1382 stalwart-mail = runTest ./stalwart/stalwart-mail.nix; 1383 stargazer = runTest ./web-servers/stargazer.nix; 1384 starship = runTest ./starship.nix; 1385 startx = import ./startx.nix { inherit pkgs runTest; }; 1386 stash = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./stash.nix { }; 1387 static-web-server = runTest ./web-servers/static-web-server.nix; 1388 step-ca = handleTestOn [ "x86_64-linux" ] ./step-ca.nix { }; 1389 stratis = handleTest ./stratis { }; 1390 strongswan-swanctl = runTest ./strongswan-swanctl.nix; 1391 stub-ld = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./stub-ld.nix { }; 1392 stunnel = import ./stunnel.nix { inherit runTest; }; 1393 sudo = runTest ./sudo.nix; 1394 sudo-rs = runTest ./sudo-rs.nix; 1395 sunshine = runTest ./sunshine.nix; 1396 suricata = runTest ./suricata.nix; 1397 suwayomi-server = import ./suwayomi-server.nix { 1398 inherit runTest; 1399 lib = pkgs.lib; 1400 }; 1401 swap-file-btrfs = runTest ./swap-file-btrfs.nix; 1402 swap-partition = runTest ./swap-partition.nix; 1403 swap-random-encryption = runTest ./swap-random-encryption.nix; 1404 swapspace = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./swapspace.nix { }; 1405 sway = runTest ./sway.nix; 1406 swayfx = runTest ./swayfx.nix; 1407 switchTest = runTest ./switch-test.nix; 1408 sx = runTest ./sx.nix; 1409 sympa = runTest ./sympa.nix; 1410 syncthing = runTest ./syncthing.nix; 1411 syncthing-folders = runTest ./syncthing-folders.nix; 1412 syncthing-init = runTest ./syncthing-init.nix; 1413 syncthing-many-devices = runTest ./syncthing-many-devices.nix; 1414 syncthing-no-settings = runTest ./syncthing-no-settings.nix; 1415 syncthing-relay = runTest ./syncthing-relay.nix; 1416 sysfs = runTest ./sysfs.nix; 1417 sysinit-reactivation = runTest ./sysinit-reactivation.nix; 1418 systemd = runTest ./systemd.nix; 1419 systemd-analyze = runTest ./systemd-analyze.nix; 1420 systemd-binfmt = handleTestOn [ "x86_64-linux" ] ./systemd-binfmt.nix { }; 1421 systemd-boot = import ./systemd-boot.nix { inherit runTest runTestOn; }; 1422 systemd-bpf = runTest ./systemd-bpf.nix; 1423 systemd-capsules = runTest ./systemd-capsules.nix; 1424 systemd-confinement = handleTest ./systemd-confinement { }; 1425 systemd-coredump = runTest ./systemd-coredump.nix; 1426 systemd-credentials-tpm2 = runTest ./systemd-credentials-tpm2.nix; 1427 systemd-cryptenroll = runTest ./systemd-cryptenroll.nix; 1428 systemd-escaping = runTest ./systemd-escaping.nix; 1429 systemd-homed = runTest ./systemd-homed.nix; 1430 systemd-initrd-bridge = runTest ./systemd-initrd-bridge.nix; 1431 systemd-initrd-btrfs-raid = runTest ./systemd-initrd-btrfs-raid.nix; 1432 systemd-initrd-credentials = runTest ./systemd-initrd-credentials.nix; 1433 systemd-initrd-luks-empty-passphrase = runTest { 1434 imports = [ ./initrd-luks-empty-passphrase.nix ]; 1435 _module.args.systemdStage1 = true; 1436 }; 1437 systemd-initrd-luks-fido2 = runTest ./systemd-initrd-luks-fido2.nix; 1438 systemd-initrd-luks-keyfile = runTest ./systemd-initrd-luks-keyfile.nix; 1439 systemd-initrd-luks-password = runTest ./systemd-initrd-luks-password.nix; 1440 systemd-initrd-luks-tpm2 = runTest ./systemd-initrd-luks-tpm2.nix; 1441 systemd-initrd-luks-unl0kr = runTest ./systemd-initrd-luks-unl0kr.nix; 1442 systemd-initrd-modprobe = runTest ./systemd-initrd-modprobe.nix; 1443 systemd-initrd-networkd = import ./systemd-initrd-networkd.nix { inherit runTest; }; 1444 systemd-initrd-networkd-openvpn = handleTestOn [ 1445 "x86_64-linux" 1446 "i686-linux" 1447 ] ./initrd-network-openvpn { systemdStage1 = true; }; 1448 systemd-initrd-networkd-ssh = runTest ./systemd-initrd-networkd-ssh.nix; 1449 systemd-initrd-shutdown = runTest { 1450 imports = [ ./systemd-shutdown.nix ]; 1451 _module.args.systemdStage1 = true; 1452 }; 1453 systemd-initrd-simple = runTest ./systemd-initrd-simple.nix; 1454 systemd-initrd-swraid = runTest ./systemd-initrd-swraid.nix; 1455 systemd-initrd-vconsole = runTest ./systemd-initrd-vconsole.nix; 1456 systemd-initrd-vlan = runTest ./systemd-initrd-vlan.nix; 1457 systemd-journal = runTest ./systemd-journal.nix; 1458 systemd-journal-gateway = runTest ./systemd-journal-gateway.nix; 1459 systemd-journal-upload = runTest ./systemd-journal-upload.nix; 1460 systemd-lock-handler = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./systemd-lock-handler.nix; 1461 systemd-machinectl = runTest ./systemd-machinectl.nix; 1462 systemd-misc = runTest ./systemd-misc.nix; 1463 systemd-networkd = runTest ./systemd-networkd.nix; 1464 systemd-networkd-bridge = runTest ./systemd-networkd-bridge.nix; 1465 systemd-networkd-dhcpserver = runTest ./systemd-networkd-dhcpserver.nix; 1466 systemd-networkd-dhcpserver-static-leases = runTest ./systemd-networkd-dhcpserver-static-leases.nix; 1467 systemd-networkd-ipv6-prefix-delegation = 1468 handleTest ./systemd-networkd-ipv6-prefix-delegation.nix 1469 { }; 1470 systemd-networkd-vrf = runTest ./systemd-networkd-vrf.nix; 1471 systemd-no-tainted = runTest ./systemd-no-tainted.nix; 1472 systemd-nspawn = runTest ./systemd-nspawn.nix; 1473 systemd-nspawn-configfile = runTest ./systemd-nspawn-configfile.nix; 1474 systemd-oomd = runTest ./systemd-oomd.nix; 1475 systemd-portabled = runTest ./systemd-portabled.nix; 1476 systemd-pstore = runTest ./systemd-pstore.nix; 1477 systemd-repart = handleTest ./systemd-repart.nix { }; 1478 systemd-resolved = runTest ./systemd-resolved.nix; 1479 systemd-shutdown = runTest ./systemd-shutdown.nix; 1480 systemd-ssh-proxy = runTest ./systemd-ssh-proxy.nix; 1481 systemd-sysupdate = runTest ./systemd-sysupdate.nix; 1482 systemd-sysusers-immutable = runTest ./systemd-sysusers-immutable.nix; 1483 systemd-sysusers-mutable = runTest ./systemd-sysusers-mutable.nix; 1484 systemd-sysusers-password-option-override-ordering = runTest ./systemd-sysusers-password-option-override-ordering.nix; 1485 systemd-timesyncd = runTest ./systemd-timesyncd.nix; 1486 systemd-timesyncd-nscd-dnssec = runTest ./systemd-timesyncd-nscd-dnssec.nix; 1487 systemd-user-linger = runTest ./systemd-user-linger.nix; 1488 systemd-user-tmpfiles-rules = runTest ./systemd-user-tmpfiles-rules.nix; 1489 systemd-userdbd = runTest ./systemd-userdbd.nix; 1490 systemtap = handleTest ./systemtap.nix { }; 1491 szurubooru = handleTest ./szurubooru.nix { }; 1492 taler = handleTest ./taler { }; 1493 tandoor-recipes = runTest ./tandoor-recipes.nix; 1494 tandoor-recipes-script-name = runTest ./tandoor-recipes-script-name.nix; 1495 tang = runTest ./tang.nix; 1496 taskchampion-sync-server = runTest ./taskchampion-sync-server.nix; 1497 taskserver = runTest ./taskserver.nix; 1498 tayga = runTest ./tayga.nix; 1499 technitium-dns-server = runTest ./technitium-dns-server.nix; 1500 teeworlds = runTest ./teeworlds.nix; 1501 telegraf = runTest ./telegraf.nix; 1502 teleport = handleTest ./teleport.nix { }; 1503 teleports = runTest ./teleports.nix; 1504 temporal = runTest ./temporal.nix; 1505 terminal-emulators = handleTest ./terminal-emulators.nix { }; 1506 thanos = runTest ./thanos.nix; 1507 thelounge = handleTest ./thelounge.nix { }; 1508 tiddlywiki = runTest ./tiddlywiki.nix; 1509 tigervnc = handleTest ./tigervnc.nix { }; 1510 tika = runTest ./tika.nix; 1511 timezone = runTest ./timezone.nix; 1512 timidity = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./timidity { }; 1513 tinc = handleTest ./tinc { }; 1514 tinydns = runTest ./tinydns.nix; 1515 tinyproxy = runTest ./tinyproxy.nix; 1516 tinywl = runTest ./tinywl.nix; 1517 tlsrpt = runTest ./tlsrpt.nix; 1518 tmate-ssh-server = runTest ./tmate-ssh-server.nix; 1519 tomcat = runTest ./tomcat.nix; 1520 tor = runTest ./tor.nix; 1521 tpm-ek = handleTest ./tpm-ek { }; 1522 # tracee requires bpf 1523 tracee = handleTestOn [ "x86_64-linux" ] ./tracee.nix { }; 1524 traefik = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./traefik.nix; 1525 trafficserver = runTest ./trafficserver.nix; 1526 transfer-sh = runTest ./transfer-sh.nix; 1527 transmission_3 = handleTest ./transmission.nix { transmission = pkgs.transmission_3; }; 1528 transmission_4 = handleTest ./transmission.nix { transmission = pkgs.transmission_4; }; 1529 trezord = runTest ./trezord.nix; 1530 trickster = runTest ./trickster.nix; 1531 trilium-server = runTestOn [ "x86_64-linux" ] ./trilium-server.nix; 1532 tsm-client-gui = runTest ./tsm-client-gui.nix; 1533 tt-rss = runTest ./web-apps/tt-rss.nix; 1534 ttyd = runTest ./web-servers/ttyd.nix; 1535 tuned = runTest ./tuned.nix; 1536 tuptime = runTest ./tuptime.nix; 1537 turbovnc-headless-server = runTest ./turbovnc-headless-server.nix; 1538 turn-rs = runTest ./turn-rs.nix; 1539 tusd = runTest ./tusd/default.nix; 1540 tuxguitar = runTest ./tuxguitar.nix; 1541 twingate = runTest ./twingate.nix; 1542 txredisapi = runTest ./txredisapi.nix; 1543 typesense = runTest ./typesense.nix; 1544 tzupdate = runTest ./tzupdate.nix; 1545 ucarp = runTest ./ucarp.nix; 1546 udisks2 = runTest ./udisks2.nix; 1547 ulogd = runTest ./ulogd/ulogd.nix; 1548 umami = runTest ./web-apps/umami.nix; 1549 umurmur = runTest ./umurmur.nix; 1550 unbound = runTest ./unbound.nix; 1551 unifi = runTest ./unifi.nix; 1552 unit-perl = runTest ./web-servers/unit-perl.nix; 1553 unit-php = runTest ./web-servers/unit-php.nix; 1554 upnp.iptables = handleTest ./upnp.nix { useNftables = false; }; 1555 upnp.nftables = handleTest ./upnp.nix { useNftables = true; }; 1556 uptermd = runTest ./uptermd.nix; 1557 uptime-kuma = runTest ./uptime-kuma.nix; 1558 urn-timer = runTest ./urn-timer.nix; 1559 usbguard = runTest ./usbguard.nix; 1560 user-activation-scripts = runTest ./user-activation-scripts.nix; 1561 user-enable-option = runTest ./user-enable-option.nix; 1562 user-expiry = runTest ./user-expiry.nix; 1563 user-home-mode = runTest ./user-home-mode.nix; 1564 userborn = runTest ./userborn.nix; 1565 userborn-immutable-etc = runTest ./userborn-immutable-etc.nix; 1566 userborn-immutable-users = runTest ./userborn-immutable-users.nix; 1567 userborn-mutable-etc = runTest ./userborn-mutable-etc.nix; 1568 userborn-mutable-users = runTest ./userborn-mutable-users.nix; 1569 ustreamer = runTest ./ustreamer.nix; 1570 uwsgi = runTest ./uwsgi.nix; 1571 v2ray = runTest ./v2ray.nix; 1572 varnish60 = runTest { 1573 imports = [ ./varnish.nix ]; 1574 _module.args.package = pkgs.varnish60; 1575 }; 1576 varnish77 = runTest { 1577 imports = [ ./varnish.nix ]; 1578 _module.args.package = pkgs.varnish77; 1579 }; 1580 vault = runTest ./vault.nix; 1581 vault-agent = runTest ./vault-agent.nix; 1582 vault-dev = runTest ./vault-dev.nix; 1583 vault-postgresql = runTest ./vault-postgresql.nix; 1584 vaultwarden = discoverTests (import ./vaultwarden.nix); 1585 vdirsyncer = runTest ./vdirsyncer.nix; 1586 vector = import ./vector { inherit runTest; }; 1587 velocity = runTest ./velocity.nix; 1588 vengi-tools = runTest ./vengi-tools.nix; 1589 victorialogs = import ./victorialogs { inherit runTest; }; 1590 victoriametrics = import ./victoriametrics { inherit runTest; }; 1591 victoriatraces = import ./victoriatraces { inherit runTest; }; 1592 vikunja = runTest ./vikunja.nix; 1593 virtualbox = handleTestOn [ "x86_64-linux" ] ./virtualbox.nix { }; 1594 vm-variant = handleTest ./vm-variant.nix { }; 1595 vscode-remote-ssh = handleTestOn [ "x86_64-linux" ] ./vscode-remote-ssh.nix { }; 1596 vscodium = import ./vscodium.nix { inherit runTest; }; 1597 vsftpd = runTest ./vsftpd.nix; 1598 waagent = runTest ./waagent.nix; 1599 wakapi = runTest ./wakapi.nix; 1600 warzone2100 = runTest ./warzone2100.nix; 1601 wasabibackend = runTest ./wasabibackend.nix; 1602 wastebin = runTest ./wastebin.nix; 1603 watchdogd = runTest ./watchdogd.nix; 1604 webhook = runTest ./webhook.nix; 1605 weblate = runTest ./web-apps/weblate.nix; 1606 wg-access-server = runTest ./wg-access-server.nix; 1607 whisparr = runTest ./whisparr.nix; 1608 whoami = runTest ./whoami.nix; 1609 whoogle-search = runTest ./whoogle-search.nix; 1610 wiki-js = runTest ./wiki-js.nix; 1611 wine = handleTest ./wine.nix { }; 1612 wireguard = import ./wireguard { 1613 inherit pkgs runTest; 1614 inherit (pkgs) lib; 1615 }; 1616 without-nix = runTest ./without-nix.nix; 1617 wmderland = runTest ./wmderland.nix; 1618 wordpress = runTest ./wordpress.nix; 1619 workout-tracker = runTest ./workout-tracker.nix; 1620 wpa_supplicant = import ./wpa_supplicant.nix { inherit pkgs runTest; }; 1621 wrappers = runTest ./wrappers.nix; 1622 writefreely = import ./web-apps/writefreely.nix { inherit pkgs runTest; }; 1623 wstunnel = runTest ./wstunnel.nix; 1624 xandikos = runTest ./xandikos.nix; 1625 xautolock = runTest ./xautolock.nix; 1626 xfce = runTest ./xfce.nix; 1627 xfce-wayland = runTest ./xfce-wayland.nix; 1628 xmonad = runTest ./xmonad.nix; 1629 xmonad-xdg-autostart = runTest ./xmonad-xdg-autostart.nix; 1630 xpadneo = runTest ./xpadneo.nix; 1631 xrdp = runTest ./xrdp.nix; 1632 xrdp-with-audio-pulseaudio = runTest ./xrdp-with-audio-pulseaudio.nix; 1633 xscreensaver = runTest ./xscreensaver.nix; 1634 xss-lock = runTest ./xss-lock.nix; 1635 xterm = runTest ./xterm.nix; 1636 xxh = runTest ./xxh.nix; 1637 yarr = runTest ./yarr.nix; 1638 ydotool = import ./ydotool.nix { 1639 inherit (pkgs) lib; 1640 inherit runTest; 1641 }; 1642 yggdrasil = runTest ./yggdrasil.nix; 1643 your_spotify = runTest ./your_spotify.nix; 1644 zammad = runTest ./zammad.nix; 1645 zenohd = runTest ./zenohd.nix; 1646 zeronet-conservancy = runTest ./zeronet-conservancy.nix; 1647 zfs = handleTest ./zfs.nix { }; 1648 zigbee2mqtt = runTest ./zigbee2mqtt.nix; 1649 zipline = runTest ./zipline.nix; 1650 zoneminder = runTest ./zoneminder.nix; 1651 zookeeper = runTest ./zookeeper.nix; 1652 zoom-us = runTest ./zoom-us.nix; 1653 zram-generator = runTest ./zram-generator.nix; 1654 zrepl = runTest ./zrepl.nix; 1655 zwave-js = runTest ./zwave-js.nix; 1656 zwave-js-ui = runTest ./zwave-js-ui.nix; 1657 # keep-sorted end 1658}