at 23.11-beta 47 kB view raw
1{ system, 2 pkgs, 3 4 # Projects the test configuration into a the desired value; usually 5 # the test runner: `config: config.test`. 6 callTest, 7 8}: 9# The return value of this function will be an attrset with arbitrary depth and 10# the `anything` returned by callTest at its test leafs. 11# The tests not supported by `system` will be replaced with `{}`, so that 12# `passthru.tests` can contain links to those without breaking on architectures 13# where said tests are unsupported. 14# Example callTest that just extracts the derivation from the test: 15# callTest = t: t.test; 16 17with pkgs.lib; 18 19let 20 discoverTests = val: 21 if isAttrs val 22 then 23 if hasAttr "test" val then callTest val 24 else mapAttrs (n: s: if n == "passthru" then s else discoverTests s) val 25 else if isFunction val 26 then 27 # Tests based on make-test-python.nix will return the second lambda 28 # in that file, which are then forwarded to the test definition 29 # following the `import make-test-python.nix` expression 30 # (if it is a function). 31 discoverTests (val { inherit system pkgs; }) 32 else val; 33 handleTest = path: args: 34 discoverTests (import path ({ inherit system pkgs; } // args)); 35 handleTestOn = systems: path: args: 36 if elem system systems then handleTest path args 37 else {}; 38 39 nixosLib = import ../lib { 40 # Experimental features need testing too, but there's no point in warning 41 # about it, so we enable the feature flag. 42 featureFlags.minimalModules = {}; 43 }; 44 evalMinimalConfig = module: nixosLib.evalModules { modules = [ module ]; }; 45 46 inherit 47 (rec { 48 doRunTest = arg: ((import ../lib/testing-python.nix { inherit system pkgs; }).evalTest { 49 imports = [ arg readOnlyPkgs ]; 50 }).config.result; 51 findTests = tree: 52 if tree?recurseForDerivations && tree.recurseForDerivations 53 then 54 mapAttrs 55 (k: findTests) 56 (builtins.removeAttrs tree ["recurseForDerivations"]) 57 else callTest tree; 58 59 runTest = arg: let r = doRunTest arg; in findTests r; 60 runTestOn = systems: arg: 61 if elem system systems then runTest arg 62 else {}; 63 }) 64 runTest 65 runTestOn 66 ; 67 68 # Using a single instance of nixpkgs makes test evaluation faster. 69 # To make sure we don't accidentally depend on a modified pkgs, we make the 70 # related options read-only. We need to test the right configuration. 71 # 72 # If your service depends on a nixpkgs setting, first try to avoid that, but 73 # otherwise, you can remove the readOnlyPkgs import and test your service as 74 # usual. 75 readOnlyPkgs = 76 # TODO: We currently accept this for nixosTests, so that the `pkgs` argument 77 # is consistent with `pkgs` in `pkgs.nixosTests`. Can we reinitialize 78 # it with `allowAliases = false`? 79 # warnIf pkgs.config.allowAliases "nixosTests: pkgs includes aliases." 80 { 81 _class = "nixosTest"; 82 node.pkgs = pkgs; 83 }; 84 85in { 86 87 # Testing the test driver 88 nixos-test-driver = { 89 extra-python-packages = handleTest ./nixos-test-driver/extra-python-packages.nix {}; 90 lib-extend = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./nixos-test-driver/lib-extend.nix {}; 91 node-name = runTest ./nixos-test-driver/node-name.nix; 92 busybox = runTest ./nixos-test-driver/busybox.nix; 93 driver-timeout = pkgs.runCommand "ensure-timeout-induced-failure" { 94 failed = pkgs.testers.testBuildFailure ((runTest ./nixos-test-driver/timeout.nix).config.rawTestDerivation); 95 } '' 96 grep -F "timeout reached; test terminating" $failed/testBuildFailure.log 97 # The program will always be terminated by SIGTERM (143) if it waits for the deadline thread. 98 [[ 143 = $(cat $failed/testBuildFailure.exit) ]] 99 touch $out 100 ''; 101 }; 102 103 # NixOS vm tests and non-vm unit tests 104 105 _3proxy = runTest ./3proxy.nix; 106 aaaaxy = runTest ./aaaaxy.nix; 107 acme = runTest ./acme.nix; 108 acme-dns = handleTest ./acme-dns.nix {}; 109 adguardhome = runTest ./adguardhome.nix; 110 aesmd = runTestOn ["x86_64-linux"] ./aesmd.nix; 111 agate = runTest ./web-servers/agate.nix; 112 agda = handleTest ./agda.nix {}; 113 airsonic = handleTest ./airsonic.nix {}; 114 akkoma = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./akkoma.nix {}; 115 akkoma-confined = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./akkoma.nix { confined = true; }; 116 alice-lg = handleTest ./alice-lg.nix {}; 117 allTerminfo = handleTest ./all-terminfo.nix {}; 118 alps = handleTest ./alps.nix {}; 119 amazon-init-shell = handleTest ./amazon-init-shell.nix {}; 120 amazon-ssm-agent = handleTest ./amazon-ssm-agent.nix {}; 121 amd-sev = runTest ./amd-sev.nix; 122 anbox = runTest ./anbox.nix; 123 anuko-time-tracker = handleTest ./anuko-time-tracker.nix {}; 124 apcupsd = handleTest ./apcupsd.nix {}; 125 apfs = runTest ./apfs.nix; 126 appliance-repart-image = runTest ./appliance-repart-image.nix; 127 apparmor = handleTest ./apparmor.nix {}; 128 archi = handleTest ./archi.nix {}; 129 atd = handleTest ./atd.nix {}; 130 atop = handleTest ./atop.nix {}; 131 atuin = handleTest ./atuin.nix {}; 132 audiobookshelf = handleTest ./audiobookshelf.nix {}; 133 auth-mysql = handleTest ./auth-mysql.nix {}; 134 authelia = handleTest ./authelia.nix {}; 135 avahi = handleTest ./avahi.nix {}; 136 avahi-with-resolved = handleTest ./avahi.nix { networkd = true; }; 137 babeld = handleTest ./babeld.nix {}; 138 bazarr = handleTest ./bazarr.nix {}; 139 bcachefs = handleTestOn ["x86_64-linux" "aarch64-linux"] ./bcachefs.nix {}; 140 beanstalkd = handleTest ./beanstalkd.nix {}; 141 bees = handleTest ./bees.nix {}; 142 binary-cache = handleTest ./binary-cache.nix {}; 143 bind = handleTest ./bind.nix {}; 144 bird = handleTest ./bird.nix {}; 145 birdwatcher = handleTest ./birdwatcher.nix {}; 146 bitcoind = handleTest ./bitcoind.nix {}; 147 bittorrent = handleTest ./bittorrent.nix {}; 148 blockbook-frontend = handleTest ./blockbook-frontend.nix {}; 149 blocky = handleTest ./blocky.nix {}; 150 boot = handleTestOn ["x86_64-linux" "aarch64-linux"] ./boot.nix {}; 151 bootspec = handleTestOn ["x86_64-linux"] ./bootspec.nix {}; 152 boot-stage1 = handleTest ./boot-stage1.nix {}; 153 borgbackup = handleTest ./borgbackup.nix {}; 154 botamusique = handleTest ./botamusique.nix {}; 155 bpf = handleTestOn ["x86_64-linux" "aarch64-linux"] ./bpf.nix {}; 156 bpftune = handleTest ./bpftune.nix {}; 157 breitbandmessung = handleTest ./breitbandmessung.nix {}; 158 brscan5 = handleTest ./brscan5.nix {}; 159 btrbk = handleTest ./btrbk.nix {}; 160 btrbk-doas = handleTest ./btrbk-doas.nix {}; 161 btrbk-no-timer = handleTest ./btrbk-no-timer.nix {}; 162 btrbk-section-order = handleTest ./btrbk-section-order.nix {}; 163 budgie = handleTest ./budgie.nix {}; 164 buildbot = handleTest ./buildbot.nix {}; 165 buildkite-agents = handleTest ./buildkite-agents.nix {}; 166 c2fmzq = handleTest ./c2fmzq.nix {}; 167 caddy = handleTest ./caddy.nix {}; 168 cadvisor = handleTestOn ["x86_64-linux"] ./cadvisor.nix {}; 169 cage = handleTest ./cage.nix {}; 170 cagebreak = handleTest ./cagebreak.nix {}; 171 calibre-web = handleTest ./calibre-web.nix {}; 172 calibre-server = handleTest ./calibre-server.nix {}; 173 castopod = handleTest ./castopod.nix {}; 174 cassandra_3_0 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_3_0; }; 175 cassandra_3_11 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_3_11; }; 176 cassandra_4 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_4; }; 177 centrifugo = runTest ./centrifugo.nix; 178 ceph-multi-node = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./ceph-multi-node.nix {}; 179 ceph-single-node = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./ceph-single-node.nix {}; 180 ceph-single-node-bluestore = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./ceph-single-node-bluestore.nix {}; 181 certmgr = handleTest ./certmgr.nix {}; 182 cfssl = handleTestOn ["aarch64-linux" "x86_64-linux"] ./cfssl.nix {}; 183 cgit = handleTest ./cgit.nix {}; 184 charliecloud = handleTest ./charliecloud.nix {}; 185 chromium = (handleTestOn ["aarch64-linux" "x86_64-linux"] ./chromium.nix {}).stable or {}; 186 chrony = handleTestOn ["aarch64-linux" "x86_64-linux"] ./chrony.nix {}; 187 chrony-ptp = handleTestOn ["aarch64-linux" "x86_64-linux"] ./chrony-ptp.nix {}; 188 cinnamon = handleTest ./cinnamon.nix {}; 189 cjdns = handleTest ./cjdns.nix {}; 190 clickhouse = handleTest ./clickhouse.nix {}; 191 cloud-init = handleTest ./cloud-init.nix {}; 192 cloud-init-hostname = handleTest ./cloud-init-hostname.nix {}; 193 cloudlog = handleTest ./cloudlog.nix {}; 194 cntr = handleTestOn ["aarch64-linux" "x86_64-linux"] ./cntr.nix {}; 195 cockpit = handleTest ./cockpit.nix {}; 196 cockroachdb = handleTestOn ["x86_64-linux"] ./cockroachdb.nix {}; 197 coder = handleTest ./coder.nix {}; 198 collectd = handleTest ./collectd.nix {}; 199 connman = handleTest ./connman.nix {}; 200 consul = handleTest ./consul.nix {}; 201 consul-template = handleTest ./consul-template.nix {}; 202 containers-bridge = handleTest ./containers-bridge.nix {}; 203 containers-custom-pkgs.nix = handleTest ./containers-custom-pkgs.nix {}; 204 containers-ephemeral = handleTest ./containers-ephemeral.nix {}; 205 containers-extra_veth = handleTest ./containers-extra_veth.nix {}; 206 containers-hosts = handleTest ./containers-hosts.nix {}; 207 containers-imperative = handleTest ./containers-imperative.nix {}; 208 containers-ip = handleTest ./containers-ip.nix {}; 209 containers-macvlans = handleTest ./containers-macvlans.nix {}; 210 containers-names = handleTest ./containers-names.nix {}; 211 containers-nested = handleTest ./containers-nested.nix {}; 212 containers-physical_interfaces = handleTest ./containers-physical_interfaces.nix {}; 213 containers-portforward = handleTest ./containers-portforward.nix {}; 214 containers-reloadable = handleTest ./containers-reloadable.nix {}; 215 containers-restart_networking = handleTest ./containers-restart_networking.nix {}; 216 containers-tmpfs = handleTest ./containers-tmpfs.nix {}; 217 containers-unified-hierarchy = handleTest ./containers-unified-hierarchy.nix {}; 218 convos = handleTest ./convos.nix {}; 219 corerad = handleTest ./corerad.nix {}; 220 coturn = handleTest ./coturn.nix {}; 221 couchdb = handleTest ./couchdb.nix {}; 222 cri-o = handleTestOn ["aarch64-linux" "x86_64-linux"] ./cri-o.nix {}; 223 cups-pdf = handleTest ./cups-pdf.nix {}; 224 curl-impersonate = handleTest ./curl-impersonate.nix {}; 225 custom-ca = handleTest ./custom-ca.nix {}; 226 croc = handleTest ./croc.nix {}; 227 darling = handleTest ./darling.nix {}; 228 dae = handleTest ./dae.nix {}; 229 dconf = handleTest ./dconf.nix {}; 230 deconz = handleTest ./deconz.nix {}; 231 deepin = handleTest ./deepin.nix {}; 232 deluge = handleTest ./deluge.nix {}; 233 dendrite = handleTest ./matrix/dendrite.nix {}; 234 dex-oidc = handleTest ./dex-oidc.nix {}; 235 dhparams = handleTest ./dhparams.nix {}; 236 disable-installer-tools = handleTest ./disable-installer-tools.nix {}; 237 discourse = handleTest ./discourse.nix {}; 238 dnscrypt-proxy2 = handleTestOn ["x86_64-linux"] ./dnscrypt-proxy2.nix {}; 239 dnscrypt-wrapper = runTestOn ["x86_64-linux"] ./dnscrypt-wrapper; 240 dnsdist = handleTest ./dnsdist.nix {}; 241 doas = handleTest ./doas.nix {}; 242 docker = handleTestOn ["aarch64-linux" "x86_64-linux"] ./docker.nix {}; 243 docker-rootless = handleTestOn ["aarch64-linux" "x86_64-linux"] ./docker-rootless.nix {}; 244 docker-registry = handleTest ./docker-registry.nix {}; 245 docker-tools = handleTestOn ["x86_64-linux"] ./docker-tools.nix {}; 246 docker-tools-cross = handleTestOn ["x86_64-linux" "aarch64-linux"] ./docker-tools-cross.nix {}; 247 docker-tools-overlay = handleTestOn ["x86_64-linux"] ./docker-tools-overlay.nix {}; 248 documize = handleTest ./documize.nix {}; 249 documentation = pkgs.callPackage ../modules/misc/documentation/test.nix { inherit nixosLib; }; 250 doh-proxy-rust = handleTest ./doh-proxy-rust.nix {}; 251 dokuwiki = handleTest ./dokuwiki.nix {}; 252 dolibarr = handleTest ./dolibarr.nix {}; 253 domination = handleTest ./domination.nix {}; 254 dovecot = handleTest ./dovecot.nix {}; 255 drbd = handleTest ./drbd.nix {}; 256 earlyoom = handleTestOn ["x86_64-linux"] ./earlyoom.nix {}; 257 early-mount-options = handleTest ./early-mount-options.nix {}; 258 ec2-config = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-config or {}; 259 ec2-nixops = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-nixops or {}; 260 ecryptfs = handleTest ./ecryptfs.nix {}; 261 fscrypt = handleTest ./fscrypt.nix {}; 262 fastnetmon-advanced = runTest ./fastnetmon-advanced.nix; 263 ejabberd = handleTest ./xmpp/ejabberd.nix {}; 264 elk = handleTestOn ["x86_64-linux"] ./elk.nix {}; 265 emacs-daemon = handleTest ./emacs-daemon.nix {}; 266 endlessh = handleTest ./endlessh.nix {}; 267 endlessh-go = handleTest ./endlessh-go.nix {}; 268 engelsystem = handleTest ./engelsystem.nix {}; 269 enlightenment = handleTest ./enlightenment.nix {}; 270 env = handleTest ./env.nix {}; 271 envfs = handleTest ./envfs.nix {}; 272 envoy = handleTest ./envoy.nix {}; 273 ergo = handleTest ./ergo.nix {}; 274 ergochat = handleTest ./ergochat.nix {}; 275 eris-server = handleTest ./eris-server.nix {}; 276 esphome = handleTest ./esphome.nix {}; 277 etc = pkgs.callPackage ../modules/system/etc/test.nix { inherit evalMinimalConfig; }; 278 activation = pkgs.callPackage ../modules/system/activation/test.nix { }; 279 activation-var = runTest ./activation/var.nix; 280 activation-nix-channel = runTest ./activation/nix-channel.nix; 281 etcd = handleTestOn ["x86_64-linux"] ./etcd.nix {}; 282 etcd-cluster = handleTestOn ["x86_64-linux"] ./etcd-cluster.nix {}; 283 etebase-server = handleTest ./etebase-server.nix {}; 284 etesync-dav = handleTest ./etesync-dav.nix {}; 285 evcc = handleTest ./evcc.nix {}; 286 fail2ban = handleTest ./fail2ban.nix { }; 287 fakeroute = handleTest ./fakeroute.nix {}; 288 fancontrol = handleTest ./fancontrol.nix {}; 289 fanout = handleTest ./fanout.nix {}; 290 fcitx5 = handleTest ./fcitx5 {}; 291 fenics = handleTest ./fenics.nix {}; 292 ferm = handleTest ./ferm.nix {}; 293 ferretdb = handleTest ./ferretdb.nix {}; 294 firefox = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox; }; 295 firefox-beta = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-beta; }; 296 firefox-devedition = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-devedition; }; 297 firefox-esr = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-esr; }; # used in `tested` job 298 firefox-esr-115 = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-esr-115; }; 299 firejail = handleTest ./firejail.nix {}; 300 firewall = handleTest ./firewall.nix { nftables = false; }; 301 firewall-nftables = handleTest ./firewall.nix { nftables = true; }; 302 fish = handleTest ./fish.nix {}; 303 flannel = handleTestOn ["x86_64-linux"] ./flannel.nix {}; 304 floorp = handleTest ./firefox.nix { firefoxPackage = pkgs.floorp; }; 305 fluentd = handleTest ./fluentd.nix {}; 306 fluidd = handleTest ./fluidd.nix {}; 307 fontconfig-default-fonts = handleTest ./fontconfig-default-fonts.nix {}; 308 forgejo = handleTest ./forgejo.nix { }; 309 freenet = handleTest ./freenet.nix {}; 310 freeswitch = handleTest ./freeswitch.nix {}; 311 freetube = discoverTests (import ./freetube.nix); 312 freshrss-sqlite = handleTest ./freshrss-sqlite.nix {}; 313 freshrss-pgsql = handleTest ./freshrss-pgsql.nix {}; 314 frigate = handleTest ./frigate.nix {}; 315 frp = handleTest ./frp.nix {}; 316 frr = handleTest ./frr.nix {}; 317 fsck = handleTest ./fsck.nix {}; 318 fsck-systemd-stage-1 = handleTest ./fsck.nix { systemdStage1 = true; }; 319 ft2-clone = handleTest ./ft2-clone.nix {}; 320 legit = handleTest ./legit.nix {}; 321 mimir = handleTest ./mimir.nix {}; 322 garage = handleTest ./garage {}; 323 gemstash = handleTest ./gemstash.nix {}; 324 gerrit = handleTest ./gerrit.nix {}; 325 geth = handleTest ./geth.nix {}; 326 ghostunnel = handleTest ./ghostunnel.nix {}; 327 gitdaemon = handleTest ./gitdaemon.nix {}; 328 gitea = handleTest ./gitea.nix { giteaPackage = pkgs.gitea; }; 329 github-runner = handleTest ./github-runner.nix {}; 330 gitlab = runTest ./gitlab.nix; 331 gitolite = handleTest ./gitolite.nix {}; 332 gitolite-fcgiwrap = handleTest ./gitolite-fcgiwrap.nix {}; 333 glusterfs = handleTest ./glusterfs.nix {}; 334 gnome = handleTest ./gnome.nix {}; 335 gnome-flashback = handleTest ./gnome-flashback.nix {}; 336 gnome-xorg = handleTest ./gnome-xorg.nix {}; 337 gnupg = handleTest ./gnupg.nix {}; 338 go-neb = handleTest ./go-neb.nix {}; 339 gobgpd = handleTest ./gobgpd.nix {}; 340 gocd-agent = handleTest ./gocd-agent.nix {}; 341 gocd-server = handleTest ./gocd-server.nix {}; 342 gollum = handleTest ./gollum.nix {}; 343 gonic = handleTest ./gonic.nix {}; 344 google-oslogin = handleTest ./google-oslogin {}; 345 goss = handleTest ./goss.nix {}; 346 gotify-server = handleTest ./gotify-server.nix {}; 347 gotosocial = runTest ./web-apps/gotosocial.nix; 348 grafana = handleTest ./grafana {}; 349 grafana-agent = handleTest ./grafana-agent.nix {}; 350 graphite = handleTest ./graphite.nix {}; 351 graylog = handleTest ./graylog.nix {}; 352 grocy = handleTest ./grocy.nix {}; 353 grow-partition = runTest ./grow-partition.nix; 354 grub = handleTest ./grub.nix {}; 355 guacamole-server = handleTest ./guacamole-server.nix {}; 356 gvisor = handleTest ./gvisor.nix {}; 357 hadoop = import ./hadoop { inherit handleTestOn; package=pkgs.hadoop; }; 358 hadoop_3_2 = import ./hadoop { inherit handleTestOn; package=pkgs.hadoop_3_2; }; 359 hadoop2 = import ./hadoop { inherit handleTestOn; package=pkgs.hadoop2; }; 360 haka = handleTest ./haka.nix {}; 361 haste-server = handleTest ./haste-server.nix {}; 362 haproxy = handleTest ./haproxy.nix {}; 363 hardened = handleTest ./hardened.nix {}; 364 harmonia = runTest ./harmonia.nix; 365 headscale = handleTest ./headscale.nix {}; 366 healthchecks = handleTest ./web-apps/healthchecks.nix {}; 367 hbase2 = handleTest ./hbase.nix { package=pkgs.hbase2; }; 368 hbase_2_4 = handleTest ./hbase.nix { package=pkgs.hbase_2_4; }; 369 hbase3 = handleTest ./hbase.nix { package=pkgs.hbase3; }; 370 hddfancontrol = handleTest ./hddfancontrol.nix {}; 371 hedgedoc = handleTest ./hedgedoc.nix {}; 372 herbstluftwm = handleTest ./herbstluftwm.nix {}; 373 homepage-dashboard = handleTest ./homepage-dashboard.nix {}; 374 honk = runTest ./honk.nix; 375 installed-tests = pkgs.recurseIntoAttrs (handleTest ./installed-tests {}); 376 invidious = handleTest ./invidious.nix {}; 377 livebook-service = handleTest ./livebook-service.nix {}; 378 oci-containers = handleTestOn ["aarch64-linux" "x86_64-linux"] ./oci-containers.nix {}; 379 odoo = handleTest ./odoo.nix {}; 380 odoo15 = handleTest ./odoo.nix { package = pkgs.odoo15; }; 381 # 9pnet_virtio used to mount /nix partition doesn't support 382 # hibernation. This test happens to work on x86_64-linux but 383 # not on other platforms. 384 hibernate = handleTestOn ["x86_64-linux"] ./hibernate.nix {}; 385 hibernate-systemd-stage-1 = handleTestOn ["x86_64-linux"] ./hibernate.nix { systemdStage1 = true; }; 386 hitch = handleTest ./hitch {}; 387 hledger-web = handleTest ./hledger-web.nix {}; 388 hocker-fetchdocker = handleTest ./hocker-fetchdocker {}; 389 hockeypuck = handleTest ./hockeypuck.nix { }; 390 home-assistant = handleTest ./home-assistant.nix {}; 391 hostname = handleTest ./hostname.nix {}; 392 hound = handleTest ./hound.nix {}; 393 hub = handleTest ./git/hub.nix {}; 394 hydra = handleTest ./hydra {}; 395 i3wm = handleTest ./i3wm.nix {}; 396 icingaweb2 = handleTest ./icingaweb2.nix {}; 397 iftop = handleTest ./iftop.nix {}; 398 incron = handleTest ./incron.nix {}; 399 incus = pkgs.recurseIntoAttrs (handleTest ./incus { inherit handleTestOn; }); 400 influxdb = handleTest ./influxdb.nix {}; 401 influxdb2 = handleTest ./influxdb2.nix {}; 402 initrd-network-openvpn = handleTest ./initrd-network-openvpn {}; 403 initrd-network-ssh = handleTest ./initrd-network-ssh {}; 404 initrd-luks-empty-passphrase = handleTest ./initrd-luks-empty-passphrase.nix {}; 405 initrdNetwork = handleTest ./initrd-network.nix {}; 406 initrd-secrets = handleTest ./initrd-secrets.nix {}; 407 initrd-secrets-changing = handleTest ./initrd-secrets-changing.nix {}; 408 input-remapper = handleTest ./input-remapper.nix {}; 409 inspircd = handleTest ./inspircd.nix {}; 410 installer = handleTest ./installer.nix {}; 411 installer-systemd-stage-1 = handleTest ./installer-systemd-stage-1.nix {}; 412 invoiceplane = handleTest ./invoiceplane.nix {}; 413 iodine = handleTest ./iodine.nix {}; 414 ipv6 = handleTest ./ipv6.nix {}; 415 iscsi-multipath-root = handleTest ./iscsi-multipath-root.nix {}; 416 iscsi-root = handleTest ./iscsi-root.nix {}; 417 isso = handleTest ./isso.nix {}; 418 jackett = handleTest ./jackett.nix {}; 419 jellyfin = handleTest ./jellyfin.nix {}; 420 jenkins = handleTest ./jenkins.nix {}; 421 jenkins-cli = handleTest ./jenkins-cli.nix {}; 422 jibri = handleTest ./jibri.nix {}; 423 jirafeau = handleTest ./jirafeau.nix {}; 424 jitsi-meet = handleTest ./jitsi-meet.nix {}; 425 jool = import ./jool.nix { inherit pkgs runTest; }; 426 k3s = handleTest ./k3s {}; 427 kafka = handleTest ./kafka.nix {}; 428 kanidm = handleTest ./kanidm.nix {}; 429 karma = handleTest ./karma.nix {}; 430 kavita = handleTest ./kavita.nix {}; 431 kbd-setfont-decompress = handleTest ./kbd-setfont-decompress.nix {}; 432 kbd-update-search-paths-patch = handleTest ./kbd-update-search-paths-patch.nix {}; 433 kea = handleTest ./kea.nix {}; 434 keepalived = handleTest ./keepalived.nix {}; 435 keepassxc = handleTest ./keepassxc.nix {}; 436 kerberos = handleTest ./kerberos/default.nix {}; 437 kernel-generic = handleTest ./kernel-generic.nix {}; 438 kernel-latest-ath-user-regd = handleTest ./kernel-latest-ath-user-regd.nix {}; 439 keter = handleTest ./keter.nix {}; 440 kexec = handleTest ./kexec.nix {}; 441 keycloak = discoverTests (import ./keycloak.nix); 442 keyd = handleTest ./keyd.nix {}; 443 keymap = handleTest ./keymap.nix {}; 444 knot = handleTest ./knot.nix {}; 445 komga = handleTest ./komga.nix {}; 446 krb5 = discoverTests (import ./krb5 {}); 447 ksm = handleTest ./ksm.nix {}; 448 kthxbye = handleTest ./kthxbye.nix {}; 449 kubernetes = handleTestOn ["x86_64-linux"] ./kubernetes {}; 450 kubo = import ./kubo { inherit recurseIntoAttrs runTest; }; 451 ladybird = handleTest ./ladybird.nix {}; 452 languagetool = handleTest ./languagetool.nix {}; 453 lanraragi = handleTest ./lanraragi.nix {}; 454 latestKernel.login = handleTest ./login.nix { latestKernel = true; }; 455 leaps = handleTest ./leaps.nix {}; 456 lemmy = handleTest ./lemmy.nix {}; 457 libinput = handleTest ./libinput.nix {}; 458 libreddit = handleTest ./libreddit.nix {}; 459 librenms = handleTest ./librenms.nix {}; 460 libresprite = handleTest ./libresprite.nix {}; 461 libreswan = handleTest ./libreswan.nix {}; 462 librewolf = handleTest ./firefox.nix { firefoxPackage = pkgs.librewolf; }; 463 libuiohook = handleTest ./libuiohook.nix {}; 464 libvirtd = handleTest ./libvirtd.nix {}; 465 lidarr = handleTest ./lidarr.nix {}; 466 lightdm = handleTest ./lightdm.nix {}; 467 lighttpd = handleTest ./lighttpd.nix {}; 468 limesurvey = handleTest ./limesurvey.nix {}; 469 listmonk = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./listmonk.nix {}; 470 litestream = handleTest ./litestream.nix {}; 471 lldap = handleTest ./lldap.nix {}; 472 locate = handleTest ./locate.nix {}; 473 login = handleTest ./login.nix {}; 474 logrotate = handleTest ./logrotate.nix {}; 475 loki = handleTest ./loki.nix {}; 476 luks = handleTest ./luks.nix {}; 477 lvm2 = handleTest ./lvm2 {}; 478 lxd = pkgs.recurseIntoAttrs (handleTest ./lxd { inherit handleTestOn; }); 479 lxd-image-server = handleTest ./lxd-image-server.nix {}; 480 #logstash = handleTest ./logstash.nix {}; 481 lorri = handleTest ./lorri/default.nix {}; 482 maddy = discoverTests (import ./maddy { inherit handleTest; }); 483 maestral = handleTest ./maestral.nix {}; 484 magic-wormhole-mailbox-server = handleTest ./magic-wormhole-mailbox-server.nix {}; 485 magnetico = handleTest ./magnetico.nix {}; 486 mailcatcher = handleTest ./mailcatcher.nix {}; 487 mailhog = handleTest ./mailhog.nix {}; 488 mailman = handleTest ./mailman.nix {}; 489 man = handleTest ./man.nix {}; 490 mariadb-galera = handleTest ./mysql/mariadb-galera.nix {}; 491 mastodon = discoverTests (import ./web-apps/mastodon { inherit handleTestOn; }); 492 pixelfed = discoverTests (import ./web-apps/pixelfed { inherit handleTestOn; }); 493 mate = handleTest ./mate.nix {}; 494 matomo = handleTest ./matomo.nix {}; 495 matrix-appservice-irc = handleTest ./matrix/appservice-irc.nix {}; 496 matrix-conduit = handleTest ./matrix/conduit.nix {}; 497 matrix-synapse = handleTest ./matrix/synapse.nix {}; 498 matrix-synapse-workers = handleTest ./matrix/synapse-workers.nix {}; 499 mattermost = handleTest ./mattermost.nix {}; 500 mediamtx = handleTest ./mediamtx.nix {}; 501 mediatomb = handleTest ./mediatomb.nix {}; 502 mediawiki = handleTest ./mediawiki.nix {}; 503 meilisearch = handleTest ./meilisearch.nix {}; 504 memcached = handleTest ./memcached.nix {}; 505 merecat = handleTest ./merecat.nix {}; 506 metabase = handleTest ./metabase.nix {}; 507 mindustry = handleTest ./mindustry.nix {}; 508 minecraft = handleTest ./minecraft.nix {}; 509 minecraft-server = handleTest ./minecraft-server.nix {}; 510 minidlna = handleTest ./minidlna.nix {}; 511 miniflux = handleTest ./miniflux.nix {}; 512 minio = handleTest ./minio.nix {}; 513 miriway = handleTest ./miriway.nix {}; 514 misc = handleTest ./misc.nix {}; 515 mjolnir = handleTest ./matrix/mjolnir.nix {}; 516 mobilizon = handleTest ./mobilizon.nix {}; 517 mod_perl = handleTest ./mod_perl.nix {}; 518 molly-brown = handleTest ./molly-brown.nix {}; 519 monica = handleTest ./web-apps/monica.nix {}; 520 mongodb = handleTest ./mongodb.nix {}; 521 moodle = handleTest ./moodle.nix {}; 522 moonraker = handleTest ./moonraker.nix {}; 523 morty = handleTest ./morty.nix {}; 524 mosquitto = handleTest ./mosquitto.nix {}; 525 moosefs = handleTest ./moosefs.nix {}; 526 mpd = handleTest ./mpd.nix {}; 527 mpv = handleTest ./mpv.nix {}; 528 mtp = handleTest ./mtp.nix {}; 529 multipass = handleTest ./multipass.nix {}; 530 mumble = handleTest ./mumble.nix {}; 531 # Fails on aarch64-linux at the PDF creation step - need to debug this on an 532 # aarch64 machine.. 533 musescore = handleTestOn ["x86_64-linux"] ./musescore.nix {}; 534 munin = handleTest ./munin.nix {}; 535 mutableUsers = handleTest ./mutable-users.nix {}; 536 mxisd = handleTest ./mxisd.nix {}; 537 mysql = handleTest ./mysql/mysql.nix {}; 538 mysql-autobackup = handleTest ./mysql/mysql-autobackup.nix {}; 539 mysql-backup = handleTest ./mysql/mysql-backup.nix {}; 540 mysql-replication = handleTest ./mysql/mysql-replication.nix {}; 541 n8n = handleTest ./n8n.nix {}; 542 nagios = handleTest ./nagios.nix {}; 543 nar-serve = handleTest ./nar-serve.nix {}; 544 nat.firewall = handleTest ./nat.nix { withFirewall = true; }; 545 nat.standalone = handleTest ./nat.nix { withFirewall = false; }; 546 nat.nftables.firewall = handleTest ./nat.nix { withFirewall = true; nftables = true; }; 547 nat.nftables.standalone = handleTest ./nat.nix { withFirewall = false; nftables = true; }; 548 nats = handleTest ./nats.nix {}; 549 navidrome = handleTest ./navidrome.nix {}; 550 nbd = handleTest ./nbd.nix {}; 551 ncdns = handleTest ./ncdns.nix {}; 552 ndppd = handleTest ./ndppd.nix {}; 553 nebula = handleTest ./nebula.nix {}; 554 netbird = handleTest ./netbird.nix {}; 555 neo4j = handleTest ./neo4j.nix {}; 556 netdata = handleTest ./netdata.nix {}; 557 networking.networkd = handleTest ./networking.nix { networkd = true; }; 558 networking.scripted = handleTest ./networking.nix { networkd = false; }; 559 netbox_3_5 = handleTest ./web-apps/netbox.nix { netbox = pkgs.netbox_3_5; }; 560 netbox_3_6 = handleTest ./web-apps/netbox.nix { netbox = pkgs.netbox_3_6; }; 561 netbox-upgrade = handleTest ./web-apps/netbox-upgrade.nix {}; 562 # TODO: put in networking.nix after the test becomes more complete 563 networkingProxy = handleTest ./networking-proxy.nix {}; 564 nextcloud = handleTest ./nextcloud {}; 565 nexus = handleTest ./nexus.nix {}; 566 # TODO: Test nfsv3 + Kerberos 567 nfs3 = handleTest ./nfs { version = 3; }; 568 nfs4 = handleTest ./nfs { version = 4; }; 569 nghttpx = handleTest ./nghttpx.nix {}; 570 nginx = handleTest ./nginx.nix {}; 571 nginx-auth = handleTest ./nginx-auth.nix {}; 572 nginx-etag = handleTest ./nginx-etag.nix {}; 573 nginx-globalredirect = handleTest ./nginx-globalredirect.nix {}; 574 nginx-http3 = handleTest ./nginx-http3.nix {}; 575 nginx-modsecurity = handleTest ./nginx-modsecurity.nix {}; 576 nginx-njs = handleTest ./nginx-njs.nix {}; 577 nginx-proxyprotocol = handleTest ./nginx-proxyprotocol {}; 578 nginx-pubhtml = handleTest ./nginx-pubhtml.nix {}; 579 nginx-sso = handleTest ./nginx-sso.nix {}; 580 nginx-status-page = handleTest ./nginx-status-page.nix {}; 581 nginx-tmpdir = handleTest ./nginx-tmpdir.nix {}; 582 nginx-unix-socket = handleTest ./nginx-unix-socket.nix {}; 583 nginx-variants = handleTest ./nginx-variants.nix {}; 584 nifi = handleTestOn ["x86_64-linux"] ./web-apps/nifi.nix {}; 585 nitter = handleTest ./nitter.nix {}; 586 nix-ld = handleTest ./nix-ld.nix {}; 587 nix-serve = handleTest ./nix-serve.nix {}; 588 nix-serve-ssh = handleTest ./nix-serve-ssh.nix {}; 589 nixops = handleTest ./nixops/default.nix {}; 590 nixos-generate-config = handleTest ./nixos-generate-config.nix {}; 591 nixos-rebuild-install-bootloader = handleTestOn ["x86_64-linux"] ./nixos-rebuild-install-bootloader.nix {}; 592 nixos-rebuild-specialisations = handleTestOn ["x86_64-linux"] ./nixos-rebuild-specialisations.nix {}; 593 nixpkgs = pkgs.callPackage ../modules/misc/nixpkgs/test.nix { inherit evalMinimalConfig; }; 594 node-red = handleTest ./node-red.nix {}; 595 nomad = handleTest ./nomad.nix {}; 596 non-default-filesystems = handleTest ./non-default-filesystems.nix {}; 597 non-switchable-system = runTest ./non-switchable-system.nix; 598 noto-fonts = handleTest ./noto-fonts.nix {}; 599 noto-fonts-cjk-qt-default-weight = handleTest ./noto-fonts-cjk-qt-default-weight.nix {}; 600 novacomd = handleTestOn ["x86_64-linux"] ./novacomd.nix {}; 601 nscd = handleTest ./nscd.nix {}; 602 nsd = handleTest ./nsd.nix {}; 603 ntfy-sh = handleTest ./ntfy-sh.nix {}; 604 nzbget = handleTest ./nzbget.nix {}; 605 nzbhydra2 = handleTest ./nzbhydra2.nix {}; 606 oh-my-zsh = handleTest ./oh-my-zsh.nix {}; 607 ombi = handleTest ./ombi.nix {}; 608 openarena = handleTest ./openarena.nix {}; 609 openldap = handleTest ./openldap.nix {}; 610 opensearch = discoverTests (import ./opensearch.nix); 611 openresty-lua = handleTest ./openresty-lua.nix {}; 612 opensmtpd = handleTest ./opensmtpd.nix {}; 613 opensmtpd-rspamd = handleTest ./opensmtpd-rspamd.nix {}; 614 opensnitch = handleTest ./opensnitch.nix {}; 615 openssh = handleTest ./openssh.nix {}; 616 octoprint = handleTest ./octoprint.nix {}; 617 openstack-image-metadata = (handleTestOn ["x86_64-linux"] ./openstack-image.nix {}).metadata or {}; 618 openstack-image-userdata = (handleTestOn ["x86_64-linux"] ./openstack-image.nix {}).userdata or {}; 619 opentabletdriver = handleTest ./opentabletdriver.nix {}; 620 opentelemetry-collector = handleTest ./opentelemetry-collector.nix {}; 621 ocsinventory-agent = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./ocsinventory-agent.nix {}; 622 owncast = handleTest ./owncast.nix {}; 623 outline = handleTest ./outline.nix {}; 624 image-contents = handleTest ./image-contents.nix {}; 625 openvscode-server = handleTest ./openvscode-server.nix {}; 626 orangefs = handleTest ./orangefs.nix {}; 627 os-prober = handleTestOn ["x86_64-linux"] ./os-prober.nix {}; 628 osquery = handleTestOn ["x86_64-linux"] ./osquery.nix {}; 629 osrm-backend = handleTest ./osrm-backend.nix {}; 630 overlayfs = handleTest ./overlayfs.nix {}; 631 pacemaker = handleTest ./pacemaker.nix {}; 632 packagekit = handleTest ./packagekit.nix {}; 633 pam-file-contents = handleTest ./pam/pam-file-contents.nix {}; 634 pam-oath-login = handleTest ./pam/pam-oath-login.nix {}; 635 pam-u2f = handleTest ./pam/pam-u2f.nix {}; 636 pam-ussh = handleTest ./pam/pam-ussh.nix {}; 637 pam-zfs-key = handleTest ./pam/zfs-key.nix {}; 638 pass-secret-service = handleTest ./pass-secret-service.nix {}; 639 patroni = handleTestOn ["x86_64-linux"] ./patroni.nix {}; 640 pantalaimon = handleTest ./matrix/pantalaimon.nix {}; 641 pantheon = handleTest ./pantheon.nix {}; 642 paperless = handleTest ./paperless.nix {}; 643 parsedmarc = handleTest ./parsedmarc {}; 644 pdns-recursor = handleTest ./pdns-recursor.nix {}; 645 peerflix = handleTest ./peerflix.nix {}; 646 peering-manager = handleTest ./web-apps/peering-manager.nix {}; 647 peertube = handleTestOn ["x86_64-linux"] ./web-apps/peertube.nix {}; 648 peroxide = handleTest ./peroxide.nix {}; 649 pgadmin4 = handleTest ./pgadmin4.nix {}; 650 pgbouncer = handleTest ./pgbouncer.nix {}; 651 pgjwt = handleTest ./pgjwt.nix {}; 652 pgmanage = handleTest ./pgmanage.nix {}; 653 phosh = handleTest ./phosh.nix {}; 654 photoprism = handleTest ./photoprism.nix {}; 655 php = handleTest ./php {}; 656 php81 = handleTest ./php { php = pkgs.php81; }; 657 php82 = handleTest ./php { php = pkgs.php82; }; 658 php83 = handleTest ./php { php = pkgs.php83; }; 659 phylactery = handleTest ./web-apps/phylactery.nix {}; 660 pict-rs = handleTest ./pict-rs.nix {}; 661 pinnwand = handleTest ./pinnwand.nix {}; 662 plantuml-server = handleTest ./plantuml-server.nix {}; 663 plasma-bigscreen = handleTest ./plasma-bigscreen.nix {}; 664 plasma5 = handleTest ./plasma5.nix {}; 665 plasma5-systemd-start = handleTest ./plasma5-systemd-start.nix {}; 666 plausible = handleTest ./plausible.nix {}; 667 please = handleTest ./please.nix {}; 668 pleroma = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./pleroma.nix {}; 669 plikd = handleTest ./plikd.nix {}; 670 plotinus = handleTest ./plotinus.nix {}; 671 podgrab = handleTest ./podgrab.nix {}; 672 podman = handleTestOn ["aarch64-linux" "x86_64-linux"] ./podman/default.nix {}; 673 podman-tls-ghostunnel = handleTestOn ["aarch64-linux" "x86_64-linux"] ./podman/tls-ghostunnel.nix {}; 674 polaris = handleTest ./polaris.nix {}; 675 pomerium = handleTestOn ["x86_64-linux"] ./pomerium.nix {}; 676 portunus = handleTest ./portunus.nix { }; 677 postfix = handleTest ./postfix.nix {}; 678 postfix-raise-smtpd-tls-security-level = handleTest ./postfix-raise-smtpd-tls-security-level.nix {}; 679 postfixadmin = handleTest ./postfixadmin.nix {}; 680 postgis = handleTest ./postgis.nix {}; 681 apache_datasketches = handleTest ./apache_datasketches.nix {}; 682 postgresql = handleTest ./postgresql.nix {}; 683 postgresql-jit = handleTest ./postgresql-jit.nix {}; 684 postgresql-wal-receiver = handleTest ./postgresql-wal-receiver.nix {}; 685 powerdns = handleTest ./powerdns.nix {}; 686 powerdns-admin = handleTest ./powerdns-admin.nix {}; 687 power-profiles-daemon = handleTest ./power-profiles-daemon.nix {}; 688 pppd = handleTest ./pppd.nix {}; 689 predictable-interface-names = handleTest ./predictable-interface-names.nix {}; 690 printing-socket = handleTest ./printing.nix { socket = true; }; 691 printing-service = handleTest ./printing.nix { socket = false; }; 692 privoxy = handleTest ./privoxy.nix {}; 693 prometheus = handleTest ./prometheus.nix {}; 694 prometheus-exporters = handleTest ./prometheus-exporters.nix {}; 695 prosody = handleTest ./xmpp/prosody.nix {}; 696 prosody-mysql = handleTest ./xmpp/prosody-mysql.nix {}; 697 proxy = handleTest ./proxy.nix {}; 698 prowlarr = handleTest ./prowlarr.nix {}; 699 pt2-clone = handleTest ./pt2-clone.nix {}; 700 pykms = handleTest ./pykms.nix {}; 701 public-inbox = handleTest ./public-inbox.nix {}; 702 pufferpanel = handleTest ./pufferpanel.nix {}; 703 pulseaudio = discoverTests (import ./pulseaudio.nix); 704 qboot = handleTestOn ["x86_64-linux" "i686-linux"] ./qboot.nix {}; 705 qemu-vm-restrictnetwork = handleTest ./qemu-vm-restrictnetwork.nix {}; 706 qemu-vm-volatile-root = runTest ./qemu-vm-volatile-root.nix; 707 qemu-vm-external-disk-image = runTest ./qemu-vm-external-disk-image.nix; 708 qgis = handleTest ./qgis.nix { qgisPackage = pkgs.qgis; }; 709 qgis-ltr = handleTest ./qgis.nix { qgisPackage = pkgs.qgis-ltr; }; 710 qownnotes = handleTest ./qownnotes.nix {}; 711 quake3 = handleTest ./quake3.nix {}; 712 quorum = handleTest ./quorum.nix {}; 713 rabbitmq = handleTest ./rabbitmq.nix {}; 714 radarr = handleTest ./radarr.nix {}; 715 radicale = handleTest ./radicale.nix {}; 716 ragnarwm = handleTest ./ragnarwm.nix {}; 717 rasdaemon = handleTest ./rasdaemon.nix {}; 718 readarr = handleTest ./readarr.nix {}; 719 redis = handleTest ./redis.nix {}; 720 redmine = handleTest ./redmine.nix {}; 721 restartByActivationScript = handleTest ./restart-by-activation-script.nix {}; 722 restic = handleTest ./restic.nix {}; 723 retroarch = handleTest ./retroarch.nix {}; 724 rkvm = handleTest ./rkvm {}; 725 robustirc-bridge = handleTest ./robustirc-bridge.nix {}; 726 roundcube = handleTest ./roundcube.nix {}; 727 rosenpass = handleTest ./rosenpass.nix {}; 728 rshim = handleTest ./rshim.nix {}; 729 rspamd = handleTest ./rspamd.nix {}; 730 rss2email = handleTest ./rss2email.nix {}; 731 rstudio-server = handleTest ./rstudio-server.nix {}; 732 rsyncd = handleTest ./rsyncd.nix {}; 733 rsyslogd = handleTest ./rsyslogd.nix {}; 734 rxe = handleTest ./rxe.nix {}; 735 sabnzbd = handleTest ./sabnzbd.nix {}; 736 samba = handleTest ./samba.nix {}; 737 samba-wsdd = handleTest ./samba-wsdd.nix {}; 738 sanoid = handleTest ./sanoid.nix {}; 739 scaphandre = handleTest ./scaphandre.nix {}; 740 schleuder = handleTest ./schleuder.nix {}; 741 sddm = handleTest ./sddm.nix {}; 742 seafile = handleTest ./seafile.nix {}; 743 searx = handleTest ./searx.nix {}; 744 service-runner = handleTest ./service-runner.nix {}; 745 sftpgo = runTest ./sftpgo.nix; 746 sfxr-qt = handleTest ./sfxr-qt.nix {}; 747 sgt-puzzles = handleTest ./sgt-puzzles.nix {}; 748 shadow = handleTest ./shadow.nix {}; 749 shadowsocks = handleTest ./shadowsocks {}; 750 shattered-pixel-dungeon = handleTest ./shattered-pixel-dungeon.nix {}; 751 shiori = handleTest ./shiori.nix {}; 752 signal-desktop = handleTest ./signal-desktop.nix {}; 753 simple = handleTest ./simple.nix {}; 754 sing-box = handleTest ./sing-box.nix {}; 755 slimserver = handleTest ./slimserver.nix {}; 756 slurm = handleTest ./slurm.nix {}; 757 smokeping = handleTest ./smokeping.nix {}; 758 snapcast = handleTest ./snapcast.nix {}; 759 snapper = handleTest ./snapper.nix {}; 760 snipe-it = runTest ./web-apps/snipe-it.nix; 761 soapui = handleTest ./soapui.nix {}; 762 soft-serve = handleTest ./soft-serve.nix {}; 763 sogo = handleTest ./sogo.nix {}; 764 solanum = handleTest ./solanum.nix {}; 765 sonarr = handleTest ./sonarr.nix {}; 766 sourcehut = handleTest ./sourcehut.nix {}; 767 spacecookie = handleTest ./spacecookie.nix {}; 768 spark = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./spark {}; 769 sqlite3-to-mysql = handleTest ./sqlite3-to-mysql.nix {}; 770 sslh = handleTest ./sslh.nix {}; 771 ssh-audit = handleTest ./ssh-audit.nix {}; 772 sssd = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./sssd.nix {}; 773 sssd-ldap = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./sssd-ldap.nix {}; 774 stalwart-mail = handleTest ./stalwart-mail.nix {}; 775 stargazer = runTest ./web-servers/stargazer.nix; 776 starship = handleTest ./starship.nix {}; 777 static-web-server = handleTest ./web-servers/static-web-server.nix {}; 778 step-ca = handleTestOn ["x86_64-linux"] ./step-ca.nix {}; 779 stratis = handleTest ./stratis {}; 780 strongswan-swanctl = handleTest ./strongswan-swanctl.nix {}; 781 stunnel = handleTest ./stunnel.nix {}; 782 sudo = handleTest ./sudo.nix {}; 783 sudo-rs = handleTest ./sudo-rs.nix {}; 784 swap-file-btrfs = handleTest ./swap-file-btrfs.nix {}; 785 swap-partition = handleTest ./swap-partition.nix {}; 786 swap-random-encryption = handleTest ./swap-random-encryption.nix {}; 787 sway = handleTest ./sway.nix {}; 788 switchTest = handleTest ./switch-test.nix {}; 789 sympa = handleTest ./sympa.nix {}; 790 syncthing = handleTest ./syncthing.nix {}; 791 syncthing-no-settings = handleTest ./syncthing-no-settings.nix {}; 792 syncthing-init = handleTest ./syncthing-init.nix {}; 793 syncthing-many-devices = handleTest ./syncthing-many-devices.nix {}; 794 syncthing-relay = handleTest ./syncthing-relay.nix {}; 795 systemd = handleTest ./systemd.nix {}; 796 systemd-analyze = handleTest ./systemd-analyze.nix {}; 797 systemd-binfmt = handleTestOn ["x86_64-linux"] ./systemd-binfmt.nix {}; 798 systemd-boot = handleTest ./systemd-boot.nix {}; 799 systemd-bpf = handleTest ./systemd-bpf.nix {}; 800 systemd-confinement = handleTest ./systemd-confinement.nix {}; 801 systemd-coredump = handleTest ./systemd-coredump.nix {}; 802 systemd-cryptenroll = handleTest ./systemd-cryptenroll.nix {}; 803 systemd-credentials-tpm2 = handleTest ./systemd-credentials-tpm2.nix {}; 804 systemd-escaping = handleTest ./systemd-escaping.nix {}; 805 systemd-initrd-bridge = handleTest ./systemd-initrd-bridge.nix {}; 806 systemd-initrd-btrfs-raid = handleTest ./systemd-initrd-btrfs-raid.nix {}; 807 systemd-initrd-luks-fido2 = handleTest ./systemd-initrd-luks-fido2.nix {}; 808 systemd-initrd-luks-keyfile = handleTest ./systemd-initrd-luks-keyfile.nix {}; 809 systemd-initrd-luks-empty-passphrase = handleTest ./initrd-luks-empty-passphrase.nix { systemdStage1 = true; }; 810 systemd-initrd-luks-password = handleTest ./systemd-initrd-luks-password.nix {}; 811 systemd-initrd-luks-tpm2 = handleTest ./systemd-initrd-luks-tpm2.nix {}; 812 systemd-initrd-modprobe = handleTest ./systemd-initrd-modprobe.nix {}; 813 systemd-initrd-shutdown = handleTest ./systemd-shutdown.nix { systemdStage1 = true; }; 814 systemd-initrd-simple = handleTest ./systemd-initrd-simple.nix {}; 815 systemd-initrd-swraid = handleTest ./systemd-initrd-swraid.nix {}; 816 systemd-initrd-vconsole = handleTest ./systemd-initrd-vconsole.nix {}; 817 systemd-initrd-networkd = handleTest ./systemd-initrd-networkd.nix {}; 818 systemd-initrd-networkd-ssh = handleTest ./systemd-initrd-networkd-ssh.nix {}; 819 systemd-initrd-networkd-openvpn = handleTest ./initrd-network-openvpn { systemdStage1 = true; }; 820 systemd-initrd-vlan = handleTest ./systemd-initrd-vlan.nix {}; 821 systemd-journal = handleTest ./systemd-journal.nix {}; 822 systemd-machinectl = handleTest ./systemd-machinectl.nix {}; 823 systemd-networkd = handleTest ./systemd-networkd.nix {}; 824 systemd-networkd-dhcpserver = handleTest ./systemd-networkd-dhcpserver.nix {}; 825 systemd-networkd-dhcpserver-static-leases = handleTest ./systemd-networkd-dhcpserver-static-leases.nix {}; 826 systemd-networkd-ipv6-prefix-delegation = handleTest ./systemd-networkd-ipv6-prefix-delegation.nix {}; 827 systemd-networkd-vrf = handleTest ./systemd-networkd-vrf.nix {}; 828 systemd-no-tainted = handleTest ./systemd-no-tainted.nix {}; 829 systemd-nspawn = handleTest ./systemd-nspawn.nix {}; 830 systemd-nspawn-configfile = handleTest ./systemd-nspawn-configfile.nix {}; 831 systemd-oomd = handleTest ./systemd-oomd.nix {}; 832 systemd-portabled = handleTest ./systemd-portabled.nix {}; 833 systemd-repart = handleTest ./systemd-repart.nix {}; 834 systemd-shutdown = handleTest ./systemd-shutdown.nix {}; 835 systemd-sysupdate = runTest ./systemd-sysupdate.nix; 836 systemd-timesyncd = handleTest ./systemd-timesyncd.nix {}; 837 systemd-user-tmpfiles-rules = handleTest ./systemd-user-tmpfiles-rules.nix {}; 838 systemd-misc = handleTest ./systemd-misc.nix {}; 839 systemd-userdbd = handleTest ./systemd-userdbd.nix {}; 840 systemd-homed = handleTest ./systemd-homed.nix {}; 841 tandoor-recipes = handleTest ./tandoor-recipes.nix {}; 842 tang = handleTest ./tang.nix {}; 843 taskserver = handleTest ./taskserver.nix {}; 844 tayga = handleTest ./tayga.nix {}; 845 teeworlds = handleTest ./teeworlds.nix {}; 846 telegraf = handleTest ./telegraf.nix {}; 847 teleport = handleTest ./teleport.nix {}; 848 thelounge = handleTest ./thelounge.nix {}; 849 terminal-emulators = handleTest ./terminal-emulators.nix {}; 850 tiddlywiki = handleTest ./tiddlywiki.nix {}; 851 tigervnc = handleTest ./tigervnc.nix {}; 852 timescaledb = handleTest ./timescaledb.nix {}; 853 promscale = handleTest ./promscale.nix {}; 854 timezone = handleTest ./timezone.nix {}; 855 tinc = handleTest ./tinc {}; 856 tinydns = handleTest ./tinydns.nix {}; 857 tinyproxy = handleTest ./tinyproxy.nix {}; 858 tinywl = handleTest ./tinywl.nix {}; 859 tmate-ssh-server = handleTest ./tmate-ssh-server.nix { }; 860 tomcat = handleTest ./tomcat.nix {}; 861 tor = handleTest ./tor.nix {}; 862 traefik = handleTestOn ["aarch64-linux" "x86_64-linux"] ./traefik.nix {}; 863 trafficserver = handleTest ./trafficserver.nix {}; 864 transmission = handleTest ./transmission.nix { transmission = pkgs.transmission; }; 865 transmission_4 = handleTest ./transmission.nix { transmission = pkgs.transmission_4; }; 866 # tracee requires bpf 867 tracee = handleTestOn ["x86_64-linux"] ./tracee.nix {}; 868 trezord = handleTest ./trezord.nix {}; 869 trickster = handleTest ./trickster.nix {}; 870 trilium-server = handleTestOn ["x86_64-linux"] ./trilium-server.nix {}; 871 tsja = handleTest ./tsja.nix {}; 872 tsm-client-gui = handleTest ./tsm-client-gui.nix {}; 873 txredisapi = handleTest ./txredisapi.nix {}; 874 tuptime = handleTest ./tuptime.nix {}; 875 turbovnc-headless-server = handleTest ./turbovnc-headless-server.nix {}; 876 tuxguitar = handleTest ./tuxguitar.nix {}; 877 twingate = runTest ./twingate.nix; 878 typesense = handleTest ./typesense.nix {}; 879 ucarp = handleTest ./ucarp.nix {}; 880 udisks2 = handleTest ./udisks2.nix {}; 881 ulogd = handleTest ./ulogd/ulogd.nix {}; 882 unbound = handleTest ./unbound.nix {}; 883 unifi = handleTest ./unifi.nix {}; 884 unit-php = handleTest ./web-servers/unit-php.nix {}; 885 upnp = handleTest ./upnp.nix {}; 886 uptermd = handleTest ./uptermd.nix {}; 887 uptime-kuma = handleTest ./uptime-kuma.nix {}; 888 usbguard = handleTest ./usbguard.nix {}; 889 user-activation-scripts = handleTest ./user-activation-scripts.nix {}; 890 user-expiry = runTest ./user-expiry.nix; 891 user-home-mode = handleTest ./user-home-mode.nix {}; 892 uwsgi = handleTest ./uwsgi.nix {}; 893 v2ray = handleTest ./v2ray.nix {}; 894 varnish60 = handleTest ./varnish.nix { package = pkgs.varnish60; }; 895 varnish74 = handleTest ./varnish.nix { package = pkgs.varnish74; }; 896 vault = handleTest ./vault.nix {}; 897 vault-agent = handleTest ./vault-agent.nix {}; 898 vault-dev = handleTest ./vault-dev.nix {}; 899 vault-postgresql = handleTest ./vault-postgresql.nix {}; 900 vaultwarden = handleTest ./vaultwarden.nix {}; 901 vector = handleTest ./vector.nix {}; 902 vengi-tools = handleTest ./vengi-tools.nix {}; 903 victoriametrics = handleTest ./victoriametrics.nix {}; 904 vikunja = handleTest ./vikunja.nix {}; 905 virtualbox = handleTestOn ["x86_64-linux"] ./virtualbox.nix {}; 906 vscode-remote-ssh = handleTestOn ["x86_64-linux"] ./vscode-remote-ssh.nix {}; 907 vscodium = discoverTests (import ./vscodium.nix); 908 vsftpd = handleTest ./vsftpd.nix {}; 909 warzone2100 = handleTest ./warzone2100.nix {}; 910 wasabibackend = handleTest ./wasabibackend.nix {}; 911 webhook = runTest ./webhook.nix; 912 wiki-js = handleTest ./wiki-js.nix {}; 913 wine = handleTest ./wine.nix {}; 914 wireguard = handleTest ./wireguard {}; 915 without-nix = handleTest ./without-nix.nix {}; 916 wmderland = handleTest ./wmderland.nix {}; 917 wpa_supplicant = handleTest ./wpa_supplicant.nix {}; 918 wordpress = handleTest ./wordpress.nix {}; 919 wrappers = handleTest ./wrappers.nix {}; 920 writefreely = handleTest ./web-apps/writefreely.nix {}; 921 xandikos = handleTest ./xandikos.nix {}; 922 xautolock = handleTest ./xautolock.nix {}; 923 xfce = handleTest ./xfce.nix {}; 924 xmonad = handleTest ./xmonad.nix {}; 925 xmonad-xdg-autostart = handleTest ./xmonad-xdg-autostart.nix {}; 926 xpadneo = handleTest ./xpadneo.nix {}; 927 xrdp = handleTest ./xrdp.nix {}; 928 xss-lock = handleTest ./xss-lock.nix {}; 929 xterm = handleTest ./xterm.nix {}; 930 xxh = handleTest ./xxh.nix {}; 931 yabar = handleTest ./yabar.nix {}; 932 yggdrasil = handleTest ./yggdrasil.nix {}; 933 zammad = handleTest ./zammad.nix {}; 934 zeronet-conservancy = handleTest ./zeronet-conservancy.nix {}; 935 zfs = handleTest ./zfs.nix {}; 936 zigbee2mqtt = handleTest ./zigbee2mqtt.nix {}; 937 zoneminder = handleTest ./zoneminder.nix {}; 938 zookeeper = handleTest ./zookeeper.nix {}; 939 zram-generator = handleTest ./zram-generator.nix {}; 940 zrepl = handleTest ./zrepl.nix {}; 941 zsh-history = handleTest ./zsh-history.nix {}; 942 zwave-js = handleTest ./zwave-js.nix {}; 943}