4 # Projects the test configuration into a the desired value; usually
5 # the test runner: `config: config.test`.
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;
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
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; })
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
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 = {};
44 evalMinimalConfig = module: nixosLib.evalModules { modules = [ module ]; };
48 doRunTest = arg: ((import ../lib/testing-python.nix { inherit system pkgs; }).evalTest {
49 imports = [ arg readOnlyPkgs ];
52 if tree?recurseForDerivations && tree.recurseForDerivations
56 (builtins.removeAttrs tree ["recurseForDerivations"])
59 runTest = arg: let r = doRunTest arg; in findTests r;
60 runTestOn = systems: arg:
61 if elem system systems then runTest arg
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.
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
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."
81 _file = "${__curPos.file} readOnlyPkgs";
83 node.pkgs = pkgs.pkgsLinux;
88 # Testing the test driver
90 extra-python-packages = handleTest ./nixos-test-driver/extra-python-packages.nix {};
91 lib-extend = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./nixos-test-driver/lib-extend.nix {};
92 node-name = runTest ./nixos-test-driver/node-name.nix;
93 busybox = runTest ./nixos-test-driver/busybox.nix;
94 driver-timeout = pkgs.runCommand "ensure-timeout-induced-failure" {
95 failed = pkgs.testers.testBuildFailure ((runTest ./nixos-test-driver/timeout.nix).config.rawTestDerivation);
97 grep -F "timeout reached; test terminating" $failed/testBuildFailure.log
98 # The program will always be terminated by SIGTERM (143) if it waits for the deadline thread.
99 [[ 143 = $(cat $failed/testBuildFailure.exit) ]]
104 # NixOS vm tests and non-vm unit tests
106 _3proxy = runTest ./3proxy.nix;
107 aaaaxy = runTest ./aaaaxy.nix;
108 acme = runTest ./acme.nix;
109 acme-dns = handleTest ./acme-dns.nix {};
110 adguardhome = runTest ./adguardhome.nix;
111 aesmd = runTestOn ["x86_64-linux"] ./aesmd.nix;
112 agate = runTest ./web-servers/agate.nix;
113 agda = handleTest ./agda.nix {};
114 airsonic = handleTest ./airsonic.nix {};
115 akkoma = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./akkoma.nix {};
116 akkoma-confined = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./akkoma.nix { confined = true; };
117 alice-lg = handleTest ./alice-lg.nix {};
118 alloy = handleTest ./alloy.nix {};
119 allTerminfo = handleTest ./all-terminfo.nix {};
120 alps = handleTest ./alps.nix {};
121 amazon-init-shell = handleTest ./amazon-init-shell.nix {};
122 amazon-ssm-agent = handleTest ./amazon-ssm-agent.nix {};
123 amd-sev = runTest ./amd-sev.nix;
124 anbox = runTest ./anbox.nix;
125 angie-api = handleTest ./angie-api.nix {};
126 anki-sync-server = handleTest ./anki-sync-server.nix {};
127 anuko-time-tracker = handleTest ./anuko-time-tracker.nix {};
128 apcupsd = handleTest ./apcupsd.nix {};
129 apfs = runTest ./apfs.nix;
130 appliance-repart-image = runTest ./appliance-repart-image.nix;
131 appliance-repart-image-verity-store = runTest ./appliance-repart-image-verity-store.nix;
132 apparmor = handleTest ./apparmor.nix {};
133 archi = handleTest ./archi.nix {};
134 aria2 = handleTest ./aria2.nix {};
135 armagetronad = handleTest ./armagetronad.nix {};
136 artalk = handleTest ./artalk.nix {};
137 atd = handleTest ./atd.nix {};
138 atop = handleTest ./atop.nix {};
139 atticd = runTest ./atticd.nix;
140 atuin = handleTest ./atuin.nix {};
141 audiobookshelf = handleTest ./audiobookshelf.nix {};
142 auth-mysql = handleTest ./auth-mysql.nix {};
143 authelia = handleTest ./authelia.nix {};
144 avahi = handleTest ./avahi.nix {};
145 avahi-with-resolved = handleTest ./avahi.nix { networkd = true; };
146 ayatana-indicators = runTest ./ayatana-indicators.nix;
147 babeld = handleTest ./babeld.nix {};
148 bazarr = handleTest ./bazarr.nix {};
149 bcachefs = handleTestOn ["x86_64-linux" "aarch64-linux"] ./bcachefs.nix {};
150 beanstalkd = handleTest ./beanstalkd.nix {};
151 bees = handleTest ./bees.nix {};
152 benchexec = handleTest ./benchexec.nix {};
153 binary-cache = handleTest ./binary-cache.nix {};
154 bind = handleTest ./bind.nix {};
155 bird = handleTest ./bird.nix {};
156 birdwatcher = handleTest ./birdwatcher.nix {};
157 bitcoind = handleTest ./bitcoind.nix {};
158 bittorrent = handleTest ./bittorrent.nix {};
159 blockbook-frontend = handleTest ./blockbook-frontend.nix {};
160 blocky = handleTest ./blocky.nix {};
161 boot = handleTestOn ["x86_64-linux" "aarch64-linux"] ./boot.nix {};
162 bootspec = handleTestOn ["x86_64-linux"] ./bootspec.nix {};
163 boot-stage1 = handleTest ./boot-stage1.nix {};
164 borgbackup = handleTest ./borgbackup.nix {};
165 borgmatic = handleTest ./borgmatic.nix {};
166 botamusique = handleTest ./botamusique.nix {};
167 bpf = handleTestOn ["x86_64-linux" "aarch64-linux"] ./bpf.nix {};
168 bpftune = handleTest ./bpftune.nix {};
169 breitbandmessung = handleTest ./breitbandmessung.nix {};
170 brscan5 = handleTest ./brscan5.nix {};
171 btrbk = handleTest ./btrbk.nix {};
172 btrbk-doas = handleTest ./btrbk-doas.nix {};
173 btrbk-no-timer = handleTest ./btrbk-no-timer.nix {};
174 btrbk-section-order = handleTest ./btrbk-section-order.nix {};
175 budgie = handleTest ./budgie.nix {};
176 buildbot = handleTest ./buildbot.nix {};
177 buildkite-agents = handleTest ./buildkite-agents.nix {};
178 c2fmzq = handleTest ./c2fmzq.nix {};
179 caddy = handleTest ./caddy.nix {};
180 cadvisor = handleTestOn ["x86_64-linux"] ./cadvisor.nix {};
181 cage = handleTest ./cage.nix {};
182 cagebreak = handleTest ./cagebreak.nix {};
183 calibre-web = handleTest ./calibre-web.nix {};
184 calibre-server = handleTest ./calibre-server.nix {};
185 castopod = handleTest ./castopod.nix {};
186 cassandra_3_0 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_3_0; };
187 cassandra_3_11 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_3_11; };
188 cassandra_4 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_4; };
189 centrifugo = runTest ./centrifugo.nix;
190 ceph-multi-node = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./ceph-multi-node.nix {};
191 ceph-single-node = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./ceph-single-node.nix {};
192 ceph-single-node-bluestore = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./ceph-single-node-bluestore.nix {};
193 ceph-single-node-bluestore-dmcrypt = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./ceph-single-node-bluestore-dmcrypt.nix {};
194 certmgr = handleTest ./certmgr.nix {};
195 cfssl = handleTestOn ["aarch64-linux" "x86_64-linux"] ./cfssl.nix {};
196 cgit = handleTest ./cgit.nix {};
197 charliecloud = handleTest ./charliecloud.nix {};
198 chromadb = runTest ./chromadb.nix;
199 chromium = (handleTestOn ["aarch64-linux" "x86_64-linux"] ./chromium.nix {}).stable or {};
200 chrony = handleTestOn ["aarch64-linux" "x86_64-linux"] ./chrony.nix {};
201 chrony-ptp = handleTestOn ["aarch64-linux" "x86_64-linux"] ./chrony-ptp.nix {};
202 cinnamon = handleTest ./cinnamon.nix {};
203 cinnamon-wayland = handleTest ./cinnamon-wayland.nix {};
204 cjdns = handleTest ./cjdns.nix {};
205 clatd = handleTest ./clatd.nix {};
206 clickhouse = handleTest ./clickhouse.nix {};
207 cloud-init = handleTest ./cloud-init.nix {};
208 cloud-init-hostname = handleTest ./cloud-init-hostname.nix {};
209 cloudlog = handleTest ./cloudlog.nix {};
210 cntr = handleTestOn ["aarch64-linux" "x86_64-linux"] ./cntr.nix {};
211 cockpit = handleTest ./cockpit.nix {};
212 cockroachdb = handleTestOn ["x86_64-linux"] ./cockroachdb.nix {};
213 code-server = handleTest ./code-server.nix {};
214 coder = handleTest ./coder.nix {};
215 collectd = handleTest ./collectd.nix {};
216 commafeed = handleTest ./commafeed.nix {};
217 connman = handleTest ./connman.nix {};
218 consul = handleTest ./consul.nix {};
219 consul-template = handleTest ./consul-template.nix {};
220 containers-bridge = handleTest ./containers-bridge.nix {};
221 containers-custom-pkgs.nix = handleTest ./containers-custom-pkgs.nix {};
222 containers-ephemeral = handleTest ./containers-ephemeral.nix {};
223 containers-extra_veth = handleTest ./containers-extra_veth.nix {};
224 containers-hosts = handleTest ./containers-hosts.nix {};
225 containers-imperative = handleTest ./containers-imperative.nix {};
226 containers-ip = handleTest ./containers-ip.nix {};
227 containers-macvlans = handleTest ./containers-macvlans.nix {};
228 containers-names = handleTest ./containers-names.nix {};
229 containers-nested = handleTest ./containers-nested.nix {};
230 containers-physical_interfaces = handleTest ./containers-physical_interfaces.nix {};
231 containers-portforward = handleTest ./containers-portforward.nix {};
232 containers-reloadable = handleTest ./containers-reloadable.nix {};
233 containers-require-bind-mounts = handleTest ./containers-require-bind-mounts.nix {};
234 containers-restart_networking = handleTest ./containers-restart_networking.nix {};
235 containers-tmpfs = handleTest ./containers-tmpfs.nix {};
236 containers-unified-hierarchy = handleTest ./containers-unified-hierarchy.nix {};
237 convos = handleTest ./convos.nix {};
238 corerad = handleTest ./corerad.nix {};
239 coturn = handleTest ./coturn.nix {};
240 couchdb = handleTest ./couchdb.nix {};
241 crabfit = handleTest ./crabfit.nix {};
242 cri-o = handleTestOn ["aarch64-linux" "x86_64-linux"] ./cri-o.nix {};
243 cryptpad = runTest ./cryptpad.nix;
244 cups-pdf = handleTest ./cups-pdf.nix {};
245 curl-impersonate = handleTest ./curl-impersonate.nix {};
246 custom-ca = handleTest ./custom-ca.nix {};
247 croc = handleTest ./croc.nix {};
248 cyrus-imap = runTest ./cyrus-imap.nix;
249 darling = handleTest ./darling.nix {};
250 darling-dmg = runTest ./darling-dmg.nix;
251 dae = handleTest ./dae.nix {};
252 davis = handleTest ./davis.nix {};
253 db-rest = handleTest ./db-rest.nix {};
254 dconf = handleTest ./dconf.nix {};
255 ddns-updater = handleTest ./ddns-updater.nix {};
256 deconz = handleTest ./deconz.nix {};
257 deepin = handleTest ./deepin.nix {};
258 deluge = handleTest ./deluge.nix {};
259 dendrite = handleTest ./matrix/dendrite.nix {};
260 dependency-track = handleTest ./dependency-track.nix {};
261 devpi-server = handleTest ./devpi-server.nix {};
262 dex-oidc = handleTest ./dex-oidc.nix {};
263 dhparams = handleTest ./dhparams.nix {};
264 disable-installer-tools = handleTest ./disable-installer-tools.nix {};
265 discourse = handleTest ./discourse.nix {};
266 dnscrypt-proxy2 = handleTestOn ["x86_64-linux"] ./dnscrypt-proxy2.nix {};
267 dnsdist = import ./dnsdist.nix { inherit pkgs runTest; };
268 doas = handleTest ./doas.nix {};
269 docker = handleTestOn ["aarch64-linux" "x86_64-linux"] ./docker.nix {};
270 docker-rootless = handleTestOn ["aarch64-linux" "x86_64-linux"] ./docker-rootless.nix {};
271 docker-registry = handleTest ./docker-registry.nix {};
272 docker-tools = handleTestOn ["x86_64-linux"] ./docker-tools.nix {};
273 docker-tools-nix-shell = runTest ./docker-tools-nix-shell.nix;
274 docker-tools-cross = handleTestOn ["x86_64-linux" "aarch64-linux"] ./docker-tools-cross.nix {};
275 docker-tools-overlay = handleTestOn ["x86_64-linux"] ./docker-tools-overlay.nix {};
276 documize = handleTest ./documize.nix {};
277 documentation = pkgs.callPackage ../modules/misc/documentation/test.nix { inherit nixosLib; };
278 doh-proxy-rust = handleTest ./doh-proxy-rust.nix {};
279 dokuwiki = handleTest ./dokuwiki.nix {};
280 dolibarr = handleTest ./dolibarr.nix {};
281 domination = handleTest ./domination.nix {};
282 dovecot = handleTest ./dovecot.nix {};
283 drawterm = discoverTests (import ./drawterm.nix);
284 drbd = handleTest ./drbd.nix {};
285 druid = handleTestOn [ "x86_64-linux" ] ./druid {};
286 dublin-traceroute = handleTest ./dublin-traceroute.nix {};
287 earlyoom = handleTestOn ["x86_64-linux"] ./earlyoom.nix {};
288 early-mount-options = handleTest ./early-mount-options.nix {};
289 ec2-config = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-config or {};
290 ec2-nixops = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-nixops or {};
291 ecryptfs = handleTest ./ecryptfs.nix {};
292 fscrypt = handleTest ./fscrypt.nix {};
293 fastnetmon-advanced = runTest ./fastnetmon-advanced.nix;
294 eintopf = handleTest ./eintopf.nix {};
295 ejabberd = handleTest ./xmpp/ejabberd.nix {};
296 elk = handleTestOn ["x86_64-linux"] ./elk.nix {};
297 emacs-daemon = handleTest ./emacs-daemon.nix {};
298 endlessh = handleTest ./endlessh.nix {};
299 endlessh-go = handleTest ./endlessh-go.nix {};
300 engelsystem = handleTest ./engelsystem.nix {};
301 enlightenment = handleTest ./enlightenment.nix {};
302 env = handleTest ./env.nix {};
303 envfs = handleTest ./envfs.nix {};
304 envoy = handleTest ./envoy.nix {};
305 ergo = handleTest ./ergo.nix {};
306 ergochat = handleTest ./ergochat.nix {};
307 eris-server = handleTest ./eris-server.nix {};
308 esphome = handleTest ./esphome.nix {};
309 etc = pkgs.callPackage ../modules/system/etc/test.nix { inherit evalMinimalConfig; };
310 activation = pkgs.callPackage ../modules/system/activation/test.nix { };
311 activation-lib = pkgs.callPackage ../modules/system/activation/lib/test.nix { };
312 activation-var = runTest ./activation/var.nix;
313 activation-nix-channel = runTest ./activation/nix-channel.nix;
314 activation-etc-overlay-mutable = runTest ./activation/etc-overlay-mutable.nix;
315 activation-etc-overlay-immutable = runTest ./activation/etc-overlay-immutable.nix;
316 activation-perlless = runTest ./activation/perlless.nix;
317 etcd = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./etcd/etcd.nix {};
318 etcd-cluster = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./etcd/etcd-cluster.nix {};
319 etebase-server = handleTest ./etebase-server.nix {};
320 etesync-dav = handleTest ./etesync-dav.nix {};
321 evcc = handleTest ./evcc.nix {};
322 fail2ban = handleTest ./fail2ban.nix { };
323 fakeroute = handleTest ./fakeroute.nix {};
324 fancontrol = handleTest ./fancontrol.nix {};
325 fanout = handleTest ./fanout.nix {};
326 fcitx5 = handleTest ./fcitx5 {};
327 fedimintd = runTest ./fedimintd.nix;
328 fenics = handleTest ./fenics.nix {};
329 ferm = handleTest ./ferm.nix {};
330 ferretdb = handleTest ./ferretdb.nix {};
331 filesender = handleTest ./filesender.nix {};
332 filesystems-overlayfs = runTest ./filesystems-overlayfs.nix;
333 firefly-iii = handleTest ./firefly-iii.nix {};
334 firefly-iii-data-importer = handleTest ./firefly-iii-data-importer.nix {};
335 firefox = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox; };
336 firefox-beta = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-beta; };
337 firefox-devedition = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-devedition; };
338 firefox-esr = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-esr; }; # used in `tested` job
339 firefox-esr-115 = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-esr-115; };
340 firefox-esr-128 = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-esr-128; };
341 firefoxpwa = handleTest ./firefoxpwa.nix {};
342 firejail = handleTest ./firejail.nix {};
343 firewall = handleTest ./firewall.nix { nftables = false; };
344 firewall-nftables = handleTest ./firewall.nix { nftables = true; };
345 fish = handleTest ./fish.nix {};
346 flannel = handleTestOn ["x86_64-linux"] ./flannel.nix {};
347 flaresolverr = handleTest ./flaresolverr.nix {};
348 flood = handleTest ./flood.nix {};
349 floorp = handleTest ./firefox.nix { firefoxPackage = pkgs.floorp; };
350 fluentd = handleTest ./fluentd.nix {};
351 fluidd = handleTest ./fluidd.nix {};
352 fontconfig-default-fonts = handleTest ./fontconfig-default-fonts.nix {};
353 forgejo = handleTest ./forgejo.nix { forgejoPackage = pkgs.forgejo; };
354 forgejo-lts = handleTest ./forgejo.nix { forgejoPackage = pkgs.forgejo-lts; };
355 freenet = handleTest ./freenet.nix {};
356 freeswitch = handleTest ./freeswitch.nix {};
357 freetube = discoverTests (import ./freetube.nix);
358 freshrss-extensions = handleTest ./freshrss-extensions.nix {};
359 freshrss-sqlite = handleTest ./freshrss-sqlite.nix {};
360 freshrss-pgsql = handleTest ./freshrss-pgsql.nix {};
361 freshrss-http-auth = handleTest ./freshrss-http-auth.nix {};
362 freshrss-none-auth = handleTest ./freshrss-none-auth.nix {};
363 frigate = handleTest ./frigate.nix {};
364 frp = handleTest ./frp.nix {};
365 frr = handleTest ./frr.nix {};
366 fsck = handleTest ./fsck.nix {};
367 fsck-systemd-stage-1 = handleTest ./fsck.nix { systemdStage1 = true; };
368 ft2-clone = handleTest ./ft2-clone.nix {};
369 legit = handleTest ./legit.nix {};
370 mimir = handleTest ./mimir.nix {};
371 gancio = handleTest ./gancio.nix {};
372 garage = handleTest ./garage {};
373 gatus = runTest ./gatus.nix;
374 gemstash = handleTest ./gemstash.nix {};
375 geoserver = runTest ./geoserver.nix;
376 gerrit = handleTest ./gerrit.nix {};
377 geth = handleTest ./geth.nix {};
378 ghostunnel = handleTest ./ghostunnel.nix {};
379 gitdaemon = handleTest ./gitdaemon.nix {};
380 gitea = handleTest ./gitea.nix { giteaPackage = pkgs.gitea; };
381 github-runner = handleTest ./github-runner.nix {};
382 gitlab = runTest ./gitlab.nix;
383 gitolite = handleTest ./gitolite.nix {};
384 gitolite-fcgiwrap = handleTest ./gitolite-fcgiwrap.nix {};
385 glance = runTest ./glance.nix;
386 glusterfs = handleTest ./glusterfs.nix {};
387 gnome = handleTest ./gnome.nix {};
388 gnome-extensions = handleTest ./gnome-extensions.nix {};
389 gnome-flashback = handleTest ./gnome-flashback.nix {};
390 gnome-xorg = handleTest ./gnome-xorg.nix {};
391 gns3-server = handleTest ./gns3-server.nix {};
392 gnupg = handleTest ./gnupg.nix {};
393 goatcounter = handleTest ./goatcounter.nix {};
394 go-neb = handleTest ./go-neb.nix {};
395 gobgpd = handleTest ./gobgpd.nix {};
396 gocd-agent = handleTest ./gocd-agent.nix {};
397 gocd-server = handleTest ./gocd-server.nix {};
398 gollum = handleTest ./gollum.nix {};
399 gonic = handleTest ./gonic.nix {};
400 google-oslogin = handleTest ./google-oslogin {};
401 goss = handleTest ./goss.nix {};
402 gotenberg = handleTest ./gotenberg.nix {};
403 gotify-server = handleTest ./gotify-server.nix {};
404 gotosocial = runTest ./web-apps/gotosocial.nix;
405 grafana = handleTest ./grafana {};
406 grafana-agent = handleTest ./grafana-agent.nix {};
407 graphite = handleTest ./graphite.nix {};
408 graylog = handleTest ./graylog.nix {};
409 greetd-no-shadow = handleTest ./greetd-no-shadow.nix {};
410 grocy = handleTest ./grocy.nix {};
411 grow-partition = runTest ./grow-partition.nix;
412 grub = handleTest ./grub.nix {};
413 guacamole-server = handleTest ./guacamole-server.nix {};
414 guix = handleTest ./guix {};
415 gvisor = handleTest ./gvisor.nix {};
416 hadoop = import ./hadoop { inherit handleTestOn; package=pkgs.hadoop; };
417 hadoop_3_3 = import ./hadoop { inherit handleTestOn; package=pkgs.hadoop_3_3; };
418 hadoop2 = import ./hadoop { inherit handleTestOn; package=pkgs.hadoop2; };
419 haka = handleTest ./haka.nix {};
420 haste-server = handleTest ./haste-server.nix {};
421 haproxy = handleTest ./haproxy.nix {};
422 hardened = handleTest ./hardened.nix {};
423 harmonia = runTest ./harmonia.nix;
424 headscale = handleTest ./headscale.nix {};
425 healthchecks = handleTest ./web-apps/healthchecks.nix {};
426 hbase2 = handleTest ./hbase.nix { package=pkgs.hbase2; };
427 hbase_2_5 = handleTest ./hbase.nix { package=pkgs.hbase_2_5; };
428 hbase_2_4 = handleTest ./hbase.nix { package=pkgs.hbase_2_4; };
429 hbase3 = handleTest ./hbase.nix { package=pkgs.hbase3; };
430 hddfancontrol = handleTest ./hddfancontrol.nix {};
431 hedgedoc = handleTest ./hedgedoc.nix {};
432 herbstluftwm = handleTest ./herbstluftwm.nix {};
433 homebox = handleTest ./homebox.nix {};
434 homepage-dashboard = handleTest ./homepage-dashboard.nix {};
435 honk = runTest ./honk.nix;
436 installed-tests = pkgs.recurseIntoAttrs (handleTest ./installed-tests {});
437 invidious = handleTest ./invidious.nix {};
438 isolate = handleTest ./isolate.nix {};
439 livebook-service = handleTest ./livebook-service.nix {};
440 pyload = handleTest ./pyload.nix {};
441 oci-containers = handleTestOn ["aarch64-linux" "x86_64-linux"] ./oci-containers.nix {};
442 odoo = handleTest ./odoo.nix {};
443 odoo17 = handleTest ./odoo.nix { package = pkgs.odoo17; };
444 odoo16 = handleTest ./odoo.nix { package = pkgs.odoo16; };
445 odoo15 = handleTest ./odoo.nix { package = pkgs.odoo15; };
446 # 9pnet_virtio used to mount /nix partition doesn't support
447 # hibernation. This test happens to work on x86_64-linux but
448 # not on other platforms.
449 hibernate = handleTestOn ["x86_64-linux"] ./hibernate.nix {};
450 hibernate-systemd-stage-1 = handleTestOn ["x86_64-linux"] ./hibernate.nix { systemdStage1 = true; };
451 hitch = handleTest ./hitch {};
452 hledger-web = handleTest ./hledger-web.nix {};
453 hockeypuck = handleTest ./hockeypuck.nix { };
454 home-assistant = handleTest ./home-assistant.nix {};
455 hostname = handleTest ./hostname.nix {};
456 hound = handleTest ./hound.nix {};
457 hub = handleTest ./git/hub.nix {};
458 hydra = handleTest ./hydra {};
459 i3wm = handleTest ./i3wm.nix {};
460 icingaweb2 = handleTest ./icingaweb2.nix {};
461 ifm = handleTest ./ifm.nix {};
462 iftop = handleTest ./iftop.nix {};
463 immich = handleTest ./web-apps/immich.nix {};
464 incron = handleTest ./incron.nix {};
465 incus = pkgs.recurseIntoAttrs (handleTest ./incus { inherit handleTestOn; inherit (pkgs) incus; });
466 incus-lts = pkgs.recurseIntoAttrs (handleTest ./incus { inherit handleTestOn; });
467 influxdb = handleTest ./influxdb.nix {};
468 influxdb2 = handleTest ./influxdb2.nix {};
469 initrd-network-openvpn = handleTestOn [ "x86_64-linux" "i686-linux" ] ./initrd-network-openvpn {};
470 initrd-network-ssh = handleTest ./initrd-network-ssh {};
471 initrd-luks-empty-passphrase = handleTest ./initrd-luks-empty-passphrase.nix {};
472 initrdNetwork = handleTest ./initrd-network.nix {};
473 initrd-secrets = handleTest ./initrd-secrets.nix {};
474 initrd-secrets-changing = handleTest ./initrd-secrets-changing.nix {};
475 input-remapper = handleTest ./input-remapper.nix {};
476 inspircd = handleTest ./inspircd.nix {};
477 installer = handleTest ./installer.nix {};
478 installer-systemd-stage-1 = handleTest ./installer-systemd-stage-1.nix {};
479 intune = handleTest ./intune.nix {};
480 invoiceplane = handleTest ./invoiceplane.nix {};
481 iodine = handleTest ./iodine.nix {};
482 ipv6 = handleTest ./ipv6.nix {};
483 iscsi-multipath-root = handleTest ./iscsi-multipath-root.nix {};
484 iscsi-root = handleTest ./iscsi-root.nix {};
485 isso = handleTest ./isso.nix {};
486 jackett = handleTest ./jackett.nix {};
487 jellyfin = handleTest ./jellyfin.nix {};
488 jenkins = handleTest ./jenkins.nix {};
489 jenkins-cli = handleTest ./jenkins-cli.nix {};
490 jibri = handleTest ./jibri.nix {};
491 jirafeau = handleTest ./jirafeau.nix {};
492 jitsi-meet = handleTest ./jitsi-meet.nix {};
493 jool = import ./jool.nix { inherit pkgs runTest; };
494 jotta-cli = handleTest ./jotta-cli.nix {};
495 k3s = handleTest ./k3s {};
496 kafka = handleTest ./kafka.nix {};
497 kanidm = handleTest ./kanidm.nix {};
498 kanidm-provisioning = handleTest ./kanidm-provisioning.nix {};
499 karma = handleTest ./karma.nix {};
500 kavita = handleTest ./kavita.nix {};
501 kbd-setfont-decompress = handleTest ./kbd-setfont-decompress.nix {};
502 kbd-update-search-paths-patch = handleTest ./kbd-update-search-paths-patch.nix {};
503 kea = handleTest ./kea.nix {};
504 keepalived = handleTest ./keepalived.nix {};
505 keepassxc = handleTest ./keepassxc.nix {};
506 kerberos = handleTest ./kerberos/default.nix {};
507 kernel-generic = handleTest ./kernel-generic.nix {};
508 kernel-latest-ath-user-regd = handleTest ./kernel-latest-ath-user-regd.nix {};
509 kernel-rust = handleTest ./kernel-rust.nix {};
510 keter = handleTest ./keter.nix {};
511 kexec = handleTest ./kexec.nix {};
512 keycloak = discoverTests (import ./keycloak.nix);
513 keyd = handleTest ./keyd.nix {};
514 keymap = handleTest ./keymap.nix {};
515 knot = handleTest ./knot.nix {};
516 komga = handleTest ./komga.nix {};
517 krb5 = discoverTests (import ./krb5);
518 ksm = handleTest ./ksm.nix {};
519 kthxbye = handleTest ./kthxbye.nix {};
520 kubernetes = handleTestOn ["x86_64-linux"] ./kubernetes {};
521 kubo = import ./kubo { inherit recurseIntoAttrs runTest; };
522 ladybird = handleTest ./ladybird.nix {};
523 languagetool = handleTest ./languagetool.nix {};
524 lanraragi = handleTest ./lanraragi.nix {};
525 latestKernel.login = handleTest ./login.nix { latestKernel = true; };
526 leaps = handleTest ./leaps.nix {};
527 lemmy = handleTest ./lemmy.nix {};
528 libinput = handleTest ./libinput.nix {};
529 librenms = handleTest ./librenms.nix {};
530 libresprite = handleTest ./libresprite.nix {};
531 libreswan = runTest ./libreswan.nix;
532 libreswan-nat = runTest ./libreswan-nat.nix;
533 librewolf = handleTest ./firefox.nix { firefoxPackage = pkgs.librewolf; };
534 libuiohook = handleTest ./libuiohook.nix {};
535 libvirtd = handleTest ./libvirtd.nix {};
536 lidarr = handleTest ./lidarr.nix {};
537 lightdm = handleTest ./lightdm.nix {};
538 lighttpd = handleTest ./lighttpd.nix {};
539 limesurvey = handleTest ./limesurvey.nix {};
540 listmonk = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./listmonk.nix {};
541 litestream = handleTest ./litestream.nix {};
542 lldap = handleTest ./lldap.nix {};
543 localsend = handleTest ./localsend.nix {};
544 locate = handleTest ./locate.nix {};
545 login = handleTest ./login.nix {};
546 logrotate = handleTest ./logrotate.nix {};
547 loki = handleTest ./loki.nix {};
548 luks = handleTest ./luks.nix {};
549 lvm2 = handleTest ./lvm2 {};
550 lxc = handleTest ./lxc {};
551 lxd = pkgs.recurseIntoAttrs (handleTest ./lxd { inherit handleTestOn; });
552 lxd-image-server = handleTest ./lxd-image-server.nix {};
553 #logstash = handleTest ./logstash.nix {};
554 lomiri = discoverTests (import ./lomiri.nix);
555 lomiri-calculator-app = runTest ./lomiri-calculator-app.nix;
556 lomiri-camera-app = runTest ./lomiri-camera-app.nix;
557 lomiri-clock-app = runTest ./lomiri-clock-app.nix;
558 lomiri-docviewer-app = runTest ./lomiri-docviewer-app.nix;
559 lomiri-filemanager-app = runTest ./lomiri-filemanager-app.nix;
560 lomiri-gallery-app = runTest ./lomiri-gallery-app.nix;
561 lomiri-system-settings = handleTest ./lomiri-system-settings.nix {};
562 lorri = handleTest ./lorri/default.nix {};
563 ly = handleTest ./ly.nix {};
564 maddy = discoverTests (import ./maddy { inherit handleTest; });
565 maestral = handleTest ./maestral.nix {};
566 magic-wormhole-mailbox-server = handleTest ./magic-wormhole-mailbox-server.nix {};
567 magnetico = handleTest ./magnetico.nix {};
568 mailcatcher = handleTest ./mailcatcher.nix {};
569 mailhog = handleTest ./mailhog.nix {};
570 mailpit = handleTest ./mailpit.nix {};
571 mailman = handleTest ./mailman.nix {};
572 man = handleTest ./man.nix {};
573 mariadb-galera = handleTest ./mysql/mariadb-galera.nix {};
574 mastodon = pkgs.recurseIntoAttrs (handleTest ./web-apps/mastodon { inherit handleTestOn; });
575 pixelfed = discoverTests (import ./web-apps/pixelfed { inherit handleTestOn; });
576 mate = handleTest ./mate.nix {};
577 mate-wayland = handleTest ./mate-wayland.nix {};
578 matter-server = handleTest ./matter-server.nix {};
579 matomo = handleTest ./matomo.nix {};
580 matrix-appservice-irc = runTest ./matrix/appservice-irc.nix;
581 matrix-conduit = handleTest ./matrix/conduit.nix {};
582 matrix-synapse = handleTest ./matrix/synapse.nix {};
583 matrix-synapse-workers = handleTest ./matrix/synapse-workers.nix {};
584 mautrix-meta-postgres = handleTest ./matrix/mautrix-meta-postgres.nix {};
585 mautrix-meta-sqlite = handleTest ./matrix/mautrix-meta-sqlite.nix {};
586 mattermost = handleTest ./mattermost.nix {};
587 mealie = handleTest ./mealie.nix {};
588 mediamtx = handleTest ./mediamtx.nix {};
589 mediatomb = handleTest ./mediatomb.nix {};
590 mediawiki = handleTest ./mediawiki.nix {};
591 meilisearch = handleTest ./meilisearch.nix {};
592 memcached = handleTest ./memcached.nix {};
593 merecat = handleTest ./merecat.nix {};
594 metabase = handleTest ./metabase.nix {};
595 mihomo = handleTest ./mihomo.nix {};
596 mindustry = handleTest ./mindustry.nix {};
597 minecraft = handleTest ./minecraft.nix {};
598 minecraft-server = handleTest ./minecraft-server.nix {};
599 minidlna = handleTest ./minidlna.nix {};
600 miniflux = handleTest ./miniflux.nix {};
601 minio = handleTest ./minio.nix {};
602 miracle-wm = runTest ./miracle-wm.nix;
603 miriway = handleTest ./miriway.nix {};
604 misc = handleTest ./misc.nix {};
605 misskey = handleTest ./misskey.nix {};
606 mjolnir = handleTest ./matrix/mjolnir.nix {};
607 mobilizon = handleTest ./mobilizon.nix {};
608 mod_perl = handleTest ./mod_perl.nix {};
609 molly-brown = handleTest ./molly-brown.nix {};
610 mollysocket = handleTest ./mollysocket.nix { };
611 monado = handleTest ./monado.nix {};
612 monetdb = handleTest ./monetdb.nix {};
613 monica = handleTest ./web-apps/monica.nix {};
614 mongodb = handleTest ./mongodb.nix {};
615 moodle = handleTest ./moodle.nix {};
616 moonraker = handleTest ./moonraker.nix {};
617 morph-browser = handleTest ./morph-browser.nix { };
618 morty = handleTest ./morty.nix {};
619 mosquitto = handleTest ./mosquitto.nix {};
620 moosefs = handleTest ./moosefs.nix {};
621 movim = discoverTests (import ./web-apps/movim { inherit handleTestOn; });
622 mpd = handleTest ./mpd.nix {};
623 mpv = handleTest ./mpv.nix {};
624 mtp = handleTest ./mtp.nix {};
625 multipass = handleTest ./multipass.nix {};
626 mumble = handleTest ./mumble.nix {};
627 # Fails on aarch64-linux at the PDF creation step - need to debug this on an
629 musescore = handleTestOn ["x86_64-linux"] ./musescore.nix {};
630 music-assistant = runTest ./music-assistant.nix;
631 munin = handleTest ./munin.nix {};
632 mutableUsers = handleTest ./mutable-users.nix {};
633 mycelium = handleTest ./mycelium {};
634 mympd = handleTest ./mympd.nix {};
635 mysql = handleTest ./mysql/mysql.nix {};
636 mysql-autobackup = handleTest ./mysql/mysql-autobackup.nix {};
637 mysql-backup = handleTest ./mysql/mysql-backup.nix {};
638 mysql-replication = handleTest ./mysql/mysql-replication.nix {};
639 n8n = handleTest ./n8n.nix {};
640 nagios = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./nagios.nix {};
641 nar-serve = handleTest ./nar-serve.nix {};
642 nat.firewall = handleTest ./nat.nix { withFirewall = true; };
643 nat.standalone = handleTest ./nat.nix { withFirewall = false; };
644 nat.nftables.firewall = handleTest ./nat.nix { withFirewall = true; nftables = true; };
645 nat.nftables.standalone = handleTest ./nat.nix { withFirewall = false; nftables = true; };
646 nats = handleTest ./nats.nix {};
647 navidrome = handleTest ./navidrome.nix {};
648 nbd = handleTest ./nbd.nix {};
649 ncdns = handleTest ./ncdns.nix {};
650 ndppd = handleTest ./ndppd.nix {};
651 nix-channel = pkgs.callPackage ../modules/config/nix-channel/test.nix { };
652 nebula = handleTest ./nebula.nix {};
653 netbird = handleTest ./netbird.nix {};
654 nimdow = handleTest ./nimdow.nix {};
655 neo4j = handleTest ./neo4j.nix {};
656 netdata = handleTest ./netdata.nix {};
657 networking.scripted = handleTest ./networking/networkd-and-scripted.nix { networkd = false; };
658 networking.networkd = handleTest ./networking/networkd-and-scripted.nix { networkd = true; };
659 networking.networkmanager = handleTest ./networking/networkmanager.nix {};
660 netbox_3_6 = handleTest ./web-apps/netbox.nix { netbox = pkgs.netbox_3_6; };
661 netbox_3_7 = handleTest ./web-apps/netbox.nix { netbox = pkgs.netbox_3_7; };
662 netbox_4_0 = handleTest ./web-apps/netbox.nix { netbox = pkgs.netbox_4_0; };
663 netbox_4_1 = handleTest ./web-apps/netbox.nix { netbox = pkgs.netbox_4_1; };
664 netbox-upgrade = handleTest ./web-apps/netbox-upgrade.nix {};
665 # TODO: put in networking.nix after the test becomes more complete
666 networkingProxy = handleTest ./networking-proxy.nix {};
667 nextcloud = handleTest ./nextcloud {};
668 nextflow = handleTestOn ["x86_64-linux"] ./nextflow.nix {};
669 nextjs-ollama-llm-ui = runTest ./web-apps/nextjs-ollama-llm-ui.nix;
670 nexus = handleTest ./nexus.nix {};
671 # TODO: Test nfsv3 + Kerberos
672 nfs3 = handleTest ./nfs { version = 3; };
673 nfs4 = handleTest ./nfs { version = 4; };
674 nghttpx = handleTest ./nghttpx.nix {};
675 nginx = handleTest ./nginx.nix {};
676 nginx-auth = handleTest ./nginx-auth.nix {};
677 nginx-etag = handleTest ./nginx-etag.nix {};
678 nginx-etag-compression = handleTest ./nginx-etag-compression.nix {};
679 nginx-globalredirect = handleTest ./nginx-globalredirect.nix {};
680 nginx-http3 = handleTest ./nginx-http3.nix {};
681 nginx-mime = handleTest ./nginx-mime.nix {};
682 nginx-modsecurity = handleTest ./nginx-modsecurity.nix {};
683 nginx-moreheaders = handleTest ./nginx-moreheaders.nix {};
684 nginx-njs = handleTest ./nginx-njs.nix {};
685 nginx-proxyprotocol = handleTest ./nginx-proxyprotocol {};
686 nginx-pubhtml = handleTest ./nginx-pubhtml.nix {};
687 nginx-redirectcode = handleTest ./nginx-redirectcode.nix {};
688 nginx-sso = handleTest ./nginx-sso.nix {};
689 nginx-status-page = handleTest ./nginx-status-page.nix {};
690 nginx-tmpdir = handleTest ./nginx-tmpdir.nix {};
691 nginx-unix-socket = handleTest ./nginx-unix-socket.nix {};
692 nginx-variants = handleTest ./nginx-variants.nix {};
693 nifi = handleTestOn ["x86_64-linux"] ./web-apps/nifi.nix {};
694 nitter = handleTest ./nitter.nix {};
695 nix-config = handleTest ./nix-config.nix {};
696 nix-ld = handleTest ./nix-ld.nix {};
697 nix-misc = handleTest ./nix/misc.nix {};
698 nix-upgrade = handleTest ./nix/upgrade.nix {inherit (pkgs) nixVersions;};
699 nix-required-mounts = runTest ./nix-required-mounts;
700 nix-serve = runTest ./nix-serve.nix;
701 nix-serve-ssh = handleTest ./nix-serve-ssh.nix {};
702 nixops = handleTest ./nixops/default.nix {};
703 nixos-generate-config = handleTest ./nixos-generate-config.nix {};
704 nixos-rebuild-install-bootloader = handleTestOn ["x86_64-linux"] ./nixos-rebuild-install-bootloader.nix {};
705 nixos-rebuild-specialisations = runTestOn ["x86_64-linux"] ./nixos-rebuild-specialisations.nix;
706 nixos-rebuild-target-host = runTest ./nixos-rebuild-target-host.nix;
707 nixpkgs = pkgs.callPackage ../modules/misc/nixpkgs/test.nix { inherit evalMinimalConfig; };
708 nixseparatedebuginfod = handleTest ./nixseparatedebuginfod.nix {};
709 node-red = handleTest ./node-red.nix {};
710 nomad = handleTest ./nomad.nix {};
711 non-default-filesystems = handleTest ./non-default-filesystems.nix {};
712 non-switchable-system = runTest ./non-switchable-system.nix;
713 noto-fonts = handleTest ./noto-fonts.nix {};
714 noto-fonts-cjk-qt-default-weight = handleTest ./noto-fonts-cjk-qt-default-weight.nix {};
715 novacomd = handleTestOn ["x86_64-linux"] ./novacomd.nix {};
716 npmrc = handleTest ./npmrc.nix {};
717 nscd = handleTest ./nscd.nix {};
718 nsd = handleTest ./nsd.nix {};
719 ntfy-sh = handleTest ./ntfy-sh.nix {};
720 ntfy-sh-migration = handleTest ./ntfy-sh-migration.nix {};
721 ntpd = handleTest ./ntpd.nix {};
722 ntpd-rs = handleTest ./ntpd-rs.nix {};
723 nvidia-container-toolkit = runTest ./nvidia-container-toolkit.nix;
724 nvmetcfg = handleTest ./nvmetcfg.nix {};
725 nzbget = handleTest ./nzbget.nix {};
726 nzbhydra2 = handleTest ./nzbhydra2.nix {};
727 ocis = handleTest ./ocis.nix {};
728 oddjobd = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./oddjobd.nix {};
729 obs-studio = handleTest ./obs-studio.nix {};
730 oh-my-zsh = handleTest ./oh-my-zsh.nix {};
731 ollama = runTest ./ollama.nix;
732 ollama-cuda = runTestOn ["x86_64-linux" "aarch64-linux"] ./ollama-cuda.nix;
733 ollama-rocm = runTestOn ["x86_64-linux" "aarch64-linux"] ./ollama-rocm.nix;
734 ombi = handleTest ./ombi.nix {};
735 openarena = handleTest ./openarena.nix {};
736 openldap = handleTest ./openldap.nix {};
737 opensearch = discoverTests (import ./opensearch.nix);
738 openresty-lua = handleTest ./openresty-lua.nix {};
739 opensmtpd = handleTest ./opensmtpd.nix {};
740 opensmtpd-rspamd = handleTest ./opensmtpd-rspamd.nix {};
741 opensnitch = handleTest ./opensnitch.nix {};
742 openssh = handleTest ./openssh.nix {};
743 octoprint = handleTest ./octoprint.nix {};
744 openstack-image-metadata = (handleTestOn ["x86_64-linux"] ./openstack-image.nix {}).metadata or {};
745 openstack-image-userdata = (handleTestOn ["x86_64-linux"] ./openstack-image.nix {}).userdata or {};
746 opentabletdriver = handleTest ./opentabletdriver.nix {};
747 opentelemetry-collector = handleTest ./opentelemetry-collector.nix {};
748 ocsinventory-agent = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./ocsinventory-agent.nix {};
749 owncast = handleTest ./owncast.nix {};
750 outline = handleTest ./outline.nix {};
751 image-contents = handleTest ./image-contents.nix {};
752 openvscode-server = handleTest ./openvscode-server.nix {};
753 open-webui = runTest ./open-webui.nix;
754 openvswitch = runTest ./openvswitch.nix;
755 orangefs = handleTest ./orangefs.nix {};
756 os-prober = handleTestOn ["x86_64-linux"] ./os-prober.nix {};
757 osquery = handleTestOn ["x86_64-linux"] ./osquery.nix {};
758 osrm-backend = handleTest ./osrm-backend.nix {};
759 overlayfs = handleTest ./overlayfs.nix {};
760 pacemaker = handleTest ./pacemaker.nix {};
761 packagekit = handleTest ./packagekit.nix {};
762 pam-file-contents = handleTest ./pam/pam-file-contents.nix {};
763 pam-oath-login = handleTest ./pam/pam-oath-login.nix {};
764 pam-u2f = handleTest ./pam/pam-u2f.nix {};
765 pam-ussh = handleTest ./pam/pam-ussh.nix {};
766 pam-zfs-key = handleTest ./pam/zfs-key.nix {};
767 pass-secret-service = handleTest ./pass-secret-service.nix {};
768 patroni = handleTestOn ["x86_64-linux"] ./patroni.nix {};
769 pantalaimon = handleTest ./matrix/pantalaimon.nix {};
770 pantheon = handleTest ./pantheon.nix {};
771 paperless = handleTest ./paperless.nix {};
772 parsedmarc = handleTest ./parsedmarc {};
773 pdns-recursor = handleTest ./pdns-recursor.nix {};
774 peerflix = handleTest ./peerflix.nix {};
775 peering-manager = handleTest ./web-apps/peering-manager.nix {};
776 peertube = handleTestOn ["x86_64-linux"] ./web-apps/peertube.nix {};
777 peroxide = handleTest ./peroxide.nix {};
778 pg_anonymizer = handleTest ./pg_anonymizer.nix {};
779 pgadmin4 = handleTest ./pgadmin4.nix {};
780 pgbouncer = handleTest ./pgbouncer.nix {};
781 pghero = runTest ./pghero.nix;
782 pgjwt = handleTest ./pgjwt.nix {};
783 pgmanage = handleTest ./pgmanage.nix {};
784 pgvecto-rs = handleTest ./pgvecto-rs.nix {};
785 phosh = handleTest ./phosh.nix {};
786 photonvision = handleTest ./photonvision.nix {};
787 photoprism = handleTest ./photoprism.nix {};
788 php = handleTest ./php {};
789 php81 = handleTest ./php { php = pkgs.php81; };
790 php82 = handleTest ./php { php = pkgs.php82; };
791 php83 = handleTest ./php { php = pkgs.php83; };
792 php84 = handleTest ./php { php = pkgs.php84; };
793 phylactery = handleTest ./web-apps/phylactery.nix {};
794 pict-rs = handleTest ./pict-rs.nix {};
795 pingvin-share = handleTest ./pingvin-share.nix {} ;
796 pinnwand = handleTest ./pinnwand.nix {};
797 plantuml-server = handleTest ./plantuml-server.nix {};
798 plasma-bigscreen = handleTest ./plasma-bigscreen.nix {};
799 plasma5 = handleTest ./plasma5.nix {};
800 plasma6 = handleTest ./plasma6.nix {};
801 plasma5-systemd-start = handleTest ./plasma5-systemd-start.nix {};
802 plausible = handleTest ./plausible.nix {};
803 playwright-python = handleTest ./playwright-python.nix {};
804 please = handleTest ./please.nix {};
805 pleroma = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./pleroma.nix {};
806 plikd = handleTest ./plikd.nix {};
807 plotinus = handleTest ./plotinus.nix {};
808 podgrab = handleTest ./podgrab.nix {};
809 podman = handleTestOn ["aarch64-linux" "x86_64-linux"] ./podman/default.nix {};
810 podman-tls-ghostunnel = handleTestOn ["aarch64-linux" "x86_64-linux"] ./podman/tls-ghostunnel.nix {};
811 polaris = handleTest ./polaris.nix {};
812 pomerium = handleTestOn ["x86_64-linux"] ./pomerium.nix {};
813 portunus = handleTest ./portunus.nix { };
814 postfix = handleTest ./postfix.nix {};
815 postfix-raise-smtpd-tls-security-level = handleTest ./postfix-raise-smtpd-tls-security-level.nix {};
816 postfixadmin = handleTest ./postfixadmin.nix {};
817 postgis = handleTest ./postgis.nix {};
818 apache_datasketches = handleTest ./apache_datasketches.nix {};
819 postgresql = handleTest ./postgresql.nix {};
820 postgresql-jit = handleTest ./postgresql-jit.nix {};
821 postgresql-wal-receiver = handleTest ./postgresql-wal-receiver.nix {};
822 postgresql-tls-client-cert = handleTest ./postgresql-tls-client-cert.nix {};
823 postgresql-wal2json = handleTest ./postgresql-wal2json.nix {};
824 powerdns = handleTest ./powerdns.nix {};
825 powerdns-admin = handleTest ./powerdns-admin.nix {};
826 power-profiles-daemon = handleTest ./power-profiles-daemon.nix {};
827 pppd = handleTest ./pppd.nix {};
828 predictable-interface-names = handleTest ./predictable-interface-names.nix {};
829 pretalx = runTest ./web-apps/pretalx.nix;
830 pretix = runTest ./web-apps/pretix.nix;
831 printing-socket = handleTest ./printing.nix { socket = true; listenTcp = true; };
832 printing-service = handleTest ./printing.nix { socket = false; listenTcp = true; };
833 printing-socket-notcp = handleTest ./printing.nix { socket = true; listenTcp = false; };
834 printing-service-notcp = handleTest ./printing.nix { socket = false; listenTcp = false; };
835 private-gpt = handleTest ./private-gpt.nix {};
836 privatebin = runTest ./privatebin.nix;
837 privoxy = handleTest ./privoxy.nix {};
838 prometheus = handleTest ./prometheus {};
839 prometheus-exporters = handleTest ./prometheus-exporters.nix {};
840 prosody = handleTest ./xmpp/prosody.nix {};
841 prosody-mysql = handleTest ./xmpp/prosody-mysql.nix {};
842 proxy = handleTest ./proxy.nix {};
843 prowlarr = handleTest ./prowlarr.nix {};
844 pt2-clone = handleTest ./pt2-clone.nix {};
845 pykms = handleTest ./pykms.nix {};
846 public-inbox = handleTest ./public-inbox.nix {};
847 pufferpanel = handleTest ./pufferpanel.nix {};
848 pulseaudio = discoverTests (import ./pulseaudio.nix);
849 qboot = handleTestOn ["x86_64-linux" "i686-linux"] ./qboot.nix {};
850 qemu-vm-restrictnetwork = handleTest ./qemu-vm-restrictnetwork.nix {};
851 qemu-vm-volatile-root = runTest ./qemu-vm-volatile-root.nix;
852 qemu-vm-external-disk-image = runTest ./qemu-vm-external-disk-image.nix;
853 qemu-vm-store = runTest ./qemu-vm-store.nix;
854 qgis = handleTest ./qgis.nix { package = pkgs.qgis; };
855 qgis-ltr = handleTest ./qgis.nix { package = pkgs.qgis-ltr; };
856 qownnotes = handleTest ./qownnotes.nix {};
857 qtile = handleTestOn ["x86_64-linux" "aarch64-linux"] ./qtile/default.nix {};
858 quake3 = handleTest ./quake3.nix {};
859 quicktun = handleTest ./quicktun.nix {};
860 quickwit = handleTest ./quickwit.nix {};
861 quorum = handleTest ./quorum.nix {};
862 rabbitmq = handleTest ./rabbitmq.nix {};
863 radarr = handleTest ./radarr.nix {};
864 radicale = handleTest ./radicale.nix {};
865 radicle = runTest ./radicle.nix;
866 ragnarwm = handleTest ./ragnarwm.nix {};
867 rasdaemon = handleTest ./rasdaemon.nix {};
868 rathole = handleTest ./rathole.nix {};
869 readarr = handleTest ./readarr.nix {};
870 realm = handleTest ./realm.nix {};
871 redis = handleTest ./redis.nix {};
872 redlib = handleTest ./redlib.nix {};
873 redmine = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./redmine.nix {};
874 renovate = handleTest ./renovate.nix {};
875 replace-dependencies = handleTest ./replace-dependencies {};
876 restartByActivationScript = handleTest ./restart-by-activation-script.nix {};
877 restic-rest-server = handleTest ./restic-rest-server.nix {};
878 restic = handleTest ./restic.nix {};
879 retroarch = handleTest ./retroarch.nix {};
880 rke2 = handleTestOn ["aarch64-linux" "x86_64-linux"] ./rke2 {};
881 rkvm = handleTest ./rkvm {};
882 robustirc-bridge = handleTest ./robustirc-bridge.nix {};
883 roundcube = handleTest ./roundcube.nix {};
884 rosenpass = handleTest ./rosenpass.nix {};
885 rshim = handleTest ./rshim.nix {};
886 rspamd = handleTest ./rspamd.nix {};
887 rspamd-trainer = handleTest ./rspamd-trainer.nix {};
888 rss-bridge = handleTest ./web-apps/rss-bridge.nix {};
889 rss2email = handleTest ./rss2email.nix {};
890 rstudio-server = handleTest ./rstudio-server.nix {};
891 rsyncd = handleTest ./rsyncd.nix {};
892 rsyslogd = handleTest ./rsyslogd.nix {};
893 rtorrent = handleTest ./rtorrent.nix {};
894 rxe = handleTest ./rxe.nix {};
895 sabnzbd = handleTest ./sabnzbd.nix {};
896 samba = handleTest ./samba.nix {};
897 samba-wsdd = handleTest ./samba-wsdd.nix {};
898 sane = handleTest ./sane.nix {};
899 sanoid = handleTest ./sanoid.nix {};
900 saunafs = handleTest ./saunafs.nix {};
901 scaphandre = handleTest ./scaphandre.nix {};
902 schleuder = handleTest ./schleuder.nix {};
903 scion-freestanding-deployment = handleTest ./scion/freestanding-deployment {};
904 scrutiny = handleTest ./scrutiny.nix {};
905 sddm = handleTest ./sddm.nix {};
906 seafile = handleTest ./seafile.nix {};
907 searx = runTest ./searx.nix;
908 seatd = handleTest ./seatd.nix {};
909 send = runTest ./send.nix;
910 service-runner = handleTest ./service-runner.nix {};
911 sftpgo = runTest ./sftpgo.nix;
912 sfxr-qt = handleTest ./sfxr-qt.nix {};
913 sgt-puzzles = handleTest ./sgt-puzzles.nix {};
914 shadow = handleTest ./shadow.nix {};
915 shadowsocks = handleTest ./shadowsocks {};
916 shattered-pixel-dungeon = handleTest ./shattered-pixel-dungeon.nix {};
917 shiori = handleTest ./shiori.nix {};
918 signal-desktop = handleTest ./signal-desktop.nix {};
919 silverbullet = handleTest ./silverbullet.nix {};
920 simple = handleTest ./simple.nix {};
921 sing-box = handleTest ./sing-box.nix {};
922 slimserver = handleTest ./slimserver.nix {};
923 slurm = handleTest ./slurm.nix {};
924 snmpd = handleTest ./snmpd.nix {};
925 smokeping = handleTest ./smokeping.nix {};
926 snapcast = handleTest ./snapcast.nix {};
927 snapper = handleTest ./snapper.nix {};
928 snipe-it = runTest ./web-apps/snipe-it.nix;
929 soapui = handleTest ./soapui.nix {};
930 soft-serve = handleTest ./soft-serve.nix {};
931 sogo = handleTest ./sogo.nix {};
932 soju = handleTest ./soju.nix {};
933 solanum = handleTest ./solanum.nix {};
934 sonarr = handleTest ./sonarr.nix {};
935 sonic-server = handleTest ./sonic-server.nix {};
936 sourcehut = handleTest ./sourcehut {};
937 spacecookie = handleTest ./spacecookie.nix {};
938 spark = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./spark {};
939 spiped = runTest ./spiped.nix;
940 sqlite3-to-mysql = handleTest ./sqlite3-to-mysql.nix {};
941 sslh = handleTest ./sslh.nix {};
942 ssh-agent-auth = handleTest ./ssh-agent-auth.nix {};
943 ssh-audit = handleTest ./ssh-audit.nix {};
944 sssd = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./sssd.nix {};
945 sssd-ldap = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./sssd-ldap.nix {};
946 stalwart-mail = handleTest ./stalwart-mail.nix {};
947 stargazer = runTest ./web-servers/stargazer.nix;
948 starship = handleTest ./starship.nix {};
949 static-web-server = handleTest ./web-servers/static-web-server.nix {};
950 step-ca = handleTestOn ["x86_64-linux"] ./step-ca.nix {};
951 stratis = handleTest ./stratis {};
952 strongswan-swanctl = handleTest ./strongswan-swanctl.nix {};
953 stub-ld = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./stub-ld.nix {};
954 stunnel = handleTest ./stunnel.nix {};
955 sudo = handleTest ./sudo.nix {};
956 sudo-rs = handleTest ./sudo-rs.nix {};
957 sunshine = handleTest ./sunshine.nix {};
958 suricata = handleTest ./suricata.nix {};
959 suwayomi-server = handleTest ./suwayomi-server.nix {};
960 swap-file-btrfs = handleTest ./swap-file-btrfs.nix {};
961 swap-partition = handleTest ./swap-partition.nix {};
962 swap-random-encryption = handleTest ./swap-random-encryption.nix {};
963 swapspace = handleTestOn ["aarch64-linux" "x86_64-linux"] ./swapspace.nix {};
964 sway = handleTest ./sway.nix {};
965 swayfx = handleTest ./swayfx.nix {};
966 switchTest = handleTest ./switch-test.nix { ng = false; };
967 switchTestNg = handleTest ./switch-test.nix { ng = true; };
968 sx = handleTest ./sx.nix {};
969 sympa = handleTest ./sympa.nix {};
970 syncthing = handleTest ./syncthing.nix {};
971 syncthing-no-settings = handleTest ./syncthing-no-settings.nix {};
972 syncthing-init = handleTest ./syncthing-init.nix {};
973 syncthing-many-devices = handleTest ./syncthing-many-devices.nix {};
974 syncthing-relay = handleTest ./syncthing-relay.nix {};
975 sysinit-reactivation = runTest ./sysinit-reactivation.nix;
976 systemd = handleTest ./systemd.nix {};
977 systemd-analyze = handleTest ./systemd-analyze.nix {};
978 systemd-binfmt = handleTestOn ["x86_64-linux"] ./systemd-binfmt.nix {};
979 systemd-boot = handleTest ./systemd-boot.nix {};
980 systemd-bpf = handleTest ./systemd-bpf.nix {};
981 systemd-confinement = handleTest ./systemd-confinement {};
982 systemd-coredump = handleTest ./systemd-coredump.nix {};
983 systemd-cryptenroll = handleTest ./systemd-cryptenroll.nix {};
984 systemd-credentials-tpm2 = handleTest ./systemd-credentials-tpm2.nix {};
985 systemd-escaping = handleTest ./systemd-escaping.nix {};
986 systemd-initrd-bridge = handleTest ./systemd-initrd-bridge.nix {};
987 systemd-initrd-btrfs-raid = handleTest ./systemd-initrd-btrfs-raid.nix {};
988 systemd-initrd-luks-fido2 = handleTest ./systemd-initrd-luks-fido2.nix {};
989 systemd-initrd-luks-keyfile = handleTest ./systemd-initrd-luks-keyfile.nix {};
990 systemd-initrd-luks-empty-passphrase = handleTest ./initrd-luks-empty-passphrase.nix { systemdStage1 = true; };
991 systemd-initrd-luks-password = handleTest ./systemd-initrd-luks-password.nix {};
992 systemd-initrd-luks-tpm2 = handleTest ./systemd-initrd-luks-tpm2.nix {};
993 systemd-initrd-luks-unl0kr = handleTest ./systemd-initrd-luks-unl0kr.nix {};
994 systemd-initrd-modprobe = handleTest ./systemd-initrd-modprobe.nix {};
995 systemd-initrd-shutdown = handleTest ./systemd-shutdown.nix { systemdStage1 = true; };
996 systemd-initrd-simple = handleTest ./systemd-initrd-simple.nix {};
997 systemd-initrd-swraid = handleTest ./systemd-initrd-swraid.nix {};
998 systemd-initrd-vconsole = handleTest ./systemd-initrd-vconsole.nix {};
999 systemd-initrd-networkd = handleTest ./systemd-initrd-networkd.nix {};
1000 systemd-initrd-networkd-ssh = handleTest ./systemd-initrd-networkd-ssh.nix {};
1001 systemd-initrd-networkd-openvpn = handleTestOn [ "x86_64-linux" "i686-linux" ] ./initrd-network-openvpn { systemdStage1 = true; };
1002 systemd-initrd-vlan = handleTest ./systemd-initrd-vlan.nix {};
1003 systemd-journal = handleTest ./systemd-journal.nix {};
1004 systemd-journal-gateway = handleTest ./systemd-journal-gateway.nix {};
1005 systemd-journal-upload = handleTest ./systemd-journal-upload.nix {};
1006 systemd-lock-handler = runTestOn ["aarch64-linux" "x86_64-linux"] ./systemd-lock-handler.nix;
1007 systemd-machinectl = handleTest ./systemd-machinectl.nix {};
1008 systemd-networkd = handleTest ./systemd-networkd.nix {};
1009 systemd-networkd-bridge = handleTest ./systemd-networkd-bridge.nix {};
1010 systemd-networkd-dhcpserver = handleTest ./systemd-networkd-dhcpserver.nix {};
1011 systemd-networkd-dhcpserver-static-leases = handleTest ./systemd-networkd-dhcpserver-static-leases.nix {};
1012 systemd-networkd-ipv6-prefix-delegation = handleTest ./systemd-networkd-ipv6-prefix-delegation.nix {};
1013 systemd-networkd-vrf = handleTest ./systemd-networkd-vrf.nix {};
1014 systemd-no-tainted = handleTest ./systemd-no-tainted.nix {};
1015 systemd-nspawn = handleTest ./systemd-nspawn.nix {};
1016 systemd-nspawn-configfile = handleTest ./systemd-nspawn-configfile.nix {};
1017 systemd-oomd = handleTest ./systemd-oomd.nix {};
1018 systemd-portabled = handleTest ./systemd-portabled.nix {};
1019 systemd-repart = handleTest ./systemd-repart.nix {};
1020 systemd-resolved = handleTest ./systemd-resolved.nix {};
1021 systemd-shutdown = handleTest ./systemd-shutdown.nix {};
1022 systemd-sysupdate = runTest ./systemd-sysupdate.nix;
1023 systemd-sysusers-mutable = runTest ./systemd-sysusers-mutable.nix;
1024 systemd-sysusers-immutable = runTest ./systemd-sysusers-immutable.nix;
1025 systemd-timesyncd = handleTest ./systemd-timesyncd.nix {};
1026 systemd-timesyncd-nscd-dnssec = handleTest ./systemd-timesyncd-nscd-dnssec.nix {};
1027 systemd-user-linger = handleTest ./systemd-user-linger.nix {};
1028 systemd-user-tmpfiles-rules = handleTest ./systemd-user-tmpfiles-rules.nix {};
1029 systemd-misc = handleTest ./systemd-misc.nix {};
1030 systemd-userdbd = handleTest ./systemd-userdbd.nix {};
1031 systemd-homed = handleTest ./systemd-homed.nix {};
1032 systemtap = handleTest ./systemtap.nix {};
1033 tandoor-recipes = handleTest ./tandoor-recipes.nix {};
1034 tandoor-recipes-script-name = handleTest ./tandoor-recipes-script-name.nix {};
1035 tang = handleTest ./tang.nix {};
1036 taskserver = handleTest ./taskserver.nix {};
1037 taskchampion-sync-server = handleTest ./taskchampion-sync-server.nix {};
1038 tayga = handleTest ./tayga.nix {};
1039 technitium-dns-server = handleTest ./technitium-dns-server.nix {};
1040 teeworlds = handleTest ./teeworlds.nix {};
1041 telegraf = handleTest ./telegraf.nix {};
1042 teleport = handleTest ./teleport.nix {};
1043 teleports = runTest ./teleports.nix;
1044 thelounge = handleTest ./thelounge.nix {};
1045 terminal-emulators = handleTest ./terminal-emulators.nix {};
1046 thanos = handleTest ./thanos.nix {};
1047 tiddlywiki = handleTest ./tiddlywiki.nix {};
1048 tigervnc = handleTest ./tigervnc.nix {};
1049 tika = runTest ./tika.nix;
1050 timescaledb = handleTest ./timescaledb.nix {};
1051 timezone = handleTest ./timezone.nix {};
1052 timidity = handleTestOn ["aarch64-linux" "x86_64-linux"] ./timidity {};
1053 tinc = handleTest ./tinc {};
1054 tinydns = handleTest ./tinydns.nix {};
1055 tinyproxy = handleTest ./tinyproxy.nix {};
1056 tinywl = handleTest ./tinywl.nix {};
1057 tmate-ssh-server = handleTest ./tmate-ssh-server.nix { };
1058 tomcat = handleTest ./tomcat.nix {};
1059 tor = handleTest ./tor.nix {};
1060 traefik = handleTestOn ["aarch64-linux" "x86_64-linux"] ./traefik.nix {};
1061 trafficserver = handleTest ./trafficserver.nix {};
1062 transfer-sh = handleTest ./transfer-sh.nix {};
1063 transmission_3 = handleTest ./transmission.nix { transmission = pkgs.transmission_3; };
1064 transmission_4 = handleTest ./transmission.nix { transmission = pkgs.transmission_4; };
1065 # tracee requires bpf
1066 tracee = handleTestOn ["x86_64-linux"] ./tracee.nix {};
1067 trezord = handleTest ./trezord.nix {};
1068 trickster = handleTest ./trickster.nix {};
1069 trilium-server = handleTestOn ["x86_64-linux"] ./trilium-server.nix {};
1070 tsja = handleTest ./tsja.nix {};
1071 tsm-client-gui = handleTest ./tsm-client-gui.nix {};
1072 ttyd = handleTest ./web-servers/ttyd.nix {};
1073 txredisapi = handleTest ./txredisapi.nix {};
1074 tuptime = handleTest ./tuptime.nix {};
1075 turbovnc-headless-server = handleTest ./turbovnc-headless-server.nix {};
1076 turn-rs = handleTest ./turn-rs.nix {};
1077 tuxguitar = handleTest ./tuxguitar.nix {};
1078 twingate = runTest ./twingate.nix;
1079 typesense = handleTest ./typesense.nix {};
1080 ucarp = handleTest ./ucarp.nix {};
1081 udisks2 = handleTest ./udisks2.nix {};
1082 ulogd = handleTest ./ulogd/ulogd.nix {};
1083 unbound = handleTest ./unbound.nix {};
1084 unifi = handleTest ./unifi.nix {};
1085 unit-php = handleTest ./web-servers/unit-php.nix {};
1086 unit-perl = handleTest ./web-servers/unit-perl.nix {};
1087 upnp.iptables = handleTest ./upnp.nix { useNftables = false; };
1088 upnp.nftables = handleTest ./upnp.nix { useNftables = true; };
1089 uptermd = handleTest ./uptermd.nix {};
1090 uptime-kuma = handleTest ./uptime-kuma.nix {};
1091 urn-timer = handleTest ./urn-timer.nix {};
1092 usbguard = handleTest ./usbguard.nix {};
1093 userborn = runTest ./userborn.nix;
1094 userborn-mutable-users = runTest ./userborn-mutable-users.nix;
1095 userborn-immutable-users = runTest ./userborn-immutable-users.nix;
1096 userborn-mutable-etc = runTest ./userborn-mutable-etc.nix;
1097 userborn-immutable-etc = runTest ./userborn-immutable-etc.nix;
1098 user-activation-scripts = handleTest ./user-activation-scripts.nix {};
1099 user-expiry = runTest ./user-expiry.nix;
1100 user-home-mode = handleTest ./user-home-mode.nix {};
1101 ustreamer = handleTest ./ustreamer.nix {};
1102 uwsgi = handleTest ./uwsgi.nix {};
1103 v2ray = handleTest ./v2ray.nix {};
1104 varnish60 = handleTest ./varnish.nix { package = pkgs.varnish60; };
1105 varnish75 = handleTest ./varnish.nix { package = pkgs.varnish75; };
1106 vault = handleTest ./vault.nix {};
1107 vault-agent = handleTest ./vault-agent.nix {};
1108 vault-dev = handleTest ./vault-dev.nix {};
1109 vault-postgresql = handleTest ./vault-postgresql.nix {};
1110 vaultwarden = discoverTests (import ./vaultwarden.nix);
1111 vector = handleTest ./vector {};
1112 vengi-tools = handleTest ./vengi-tools.nix {};
1113 victoriametrics = handleTest ./victoriametrics.nix {};
1114 vikunja = handleTest ./vikunja.nix {};
1115 virtualbox = handleTestOn ["x86_64-linux"] ./virtualbox.nix {};
1116 vscode-remote-ssh = handleTestOn ["x86_64-linux"] ./vscode-remote-ssh.nix {};
1117 vscodium = discoverTests (import ./vscodium.nix);
1118 vsftpd = handleTest ./vsftpd.nix {};
1119 wakapi = handleTest ./wakapi.nix {};
1120 warzone2100 = handleTest ./warzone2100.nix {};
1121 wasabibackend = handleTest ./wasabibackend.nix {};
1122 wastebin = handleTest ./wastebin.nix {};
1123 watchdogd = handleTest ./watchdogd.nix {};
1124 webhook = runTest ./webhook.nix;
1125 weblate = handleTest ./web-apps/weblate.nix {};
1126 wiki-js = handleTest ./wiki-js.nix {};
1127 wine = handleTest ./wine.nix {};
1128 wireguard = handleTest ./wireguard {};
1129 wg-access-server = handleTest ./wg-access-server.nix {};
1130 without-nix = handleTest ./without-nix.nix {};
1131 wmderland = handleTest ./wmderland.nix {};
1132 workout-tracker = handleTest ./workout-tracker.nix {};
1133 wpa_supplicant = import ./wpa_supplicant.nix { inherit pkgs runTest; };
1134 wordpress = handleTest ./wordpress.nix {};
1135 wrappers = handleTest ./wrappers.nix {};
1136 writefreely = handleTest ./web-apps/writefreely.nix {};
1137 wstunnel = runTest ./wstunnel.nix;
1138 xandikos = handleTest ./xandikos.nix {};
1139 xautolock = handleTest ./xautolock.nix {};
1140 xfce = handleTest ./xfce.nix {};
1141 xmonad = handleTest ./xmonad.nix {};
1142 xmonad-xdg-autostart = handleTest ./xmonad-xdg-autostart.nix {};
1143 xpadneo = handleTest ./xpadneo.nix {};
1144 xrdp = handleTest ./xrdp.nix {};
1145 xrdp-with-audio-pulseaudio = handleTest ./xrdp-with-audio-pulseaudio.nix {};
1146 xscreensaver = handleTest ./xscreensaver.nix {};
1147 xss-lock = handleTest ./xss-lock.nix {};
1148 xterm = handleTest ./xterm.nix {};
1149 xxh = handleTest ./xxh.nix {};
1150 yabar = handleTest ./yabar.nix {};
1151 ydotool = handleTest ./ydotool.nix {};
1152 yggdrasil = handleTest ./yggdrasil.nix {};
1153 your_spotify = handleTest ./your_spotify.nix {};
1154 zammad = handleTest ./zammad.nix {};
1155 zeronet-conservancy = handleTest ./zeronet-conservancy.nix {};
1156 zfs = handleTest ./zfs.nix {};
1157 zigbee2mqtt = handleTest ./zigbee2mqtt.nix {};
1158 zoneminder = handleTest ./zoneminder.nix {};
1159 zookeeper = handleTest ./zookeeper.nix {};
1160 zram-generator = handleTest ./zram-generator.nix {};
1161 zrepl = handleTest ./zrepl.nix {};
1162 zsh-history = handleTest ./zsh-history.nix {};
1163 zwave-js = handleTest ./zwave-js.nix {};