python310Packages.pydeconz: 104 -> 105
[NixPkgs.git] / nixos / tests / all-tests.nix
blobcb3b9a248c0efed5c1e656f0b45915c95333664d
1 { system,
2   pkgs,
4   # Projects the test configuration into a the desired value; usually
5   # the test runner: `config: config.test`.
6   callTest,
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;
17 with pkgs.lib;
19 let
20   discoverTests = val:
21     if isAttrs val
22     then
23       if hasAttr "test" val then callTest val
24       else mapAttrs (n: s: 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 {};
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 ]; };
46   inherit
47     (rec {
48       doRunTest = arg: ((import ../lib/testing-python.nix { inherit system pkgs; }).evalTest {
49         imports = [ arg ];
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;
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     ;
68 in {
69   _3proxy = runTest ./3proxy.nix;
70   acme = runTest ./acme.nix;
71   adguardhome = runTest ./adguardhome.nix;
72   aesmd = runTest ./aesmd.nix;
73   agate = runTest ./web-servers/agate.nix;
74   agda = handleTest ./agda.nix {};
75   airsonic = handleTest ./airsonic.nix {};
76   allTerminfo = handleTest ./all-terminfo.nix {};
77   amazon-init-shell = handleTest ./amazon-init-shell.nix {};
78   apfs = handleTest ./apfs.nix {};
79   apparmor = handleTest ./apparmor.nix {};
80   atd = handleTest ./atd.nix {};
81   atop = handleTest ./atop.nix {};
82   auth-mysql = handleTest ./auth-mysql.nix {};
83   avahi = handleTest ./avahi.nix {};
84   avahi-with-resolved = handleTest ./avahi.nix { networkd = true; };
85   babeld = handleTest ./babeld.nix {};
86   bazarr = handleTest ./bazarr.nix {};
87   bcachefs = handleTestOn ["x86_64-linux" "aarch64-linux"] ./bcachefs.nix {};
88   beanstalkd = handleTest ./beanstalkd.nix {};
89   bees = handleTest ./bees.nix {};
90   bind = handleTest ./bind.nix {};
91   bird = handleTest ./bird.nix {};
92   bitcoind = handleTest ./bitcoind.nix {};
93   bittorrent = handleTest ./bittorrent.nix {};
94   blockbook-frontend = handleTest ./blockbook-frontend.nix {};
95   blocky = handleTest ./blocky.nix {};
96   boot = handleTestOn ["x86_64-linux" "aarch64-linux"] ./boot.nix {};
97   boot-stage1 = handleTest ./boot-stage1.nix {};
98   borgbackup = handleTest ./borgbackup.nix {};
99   botamusique = handleTest ./botamusique.nix {};
100   bpf = handleTestOn ["x86_64-linux" "aarch64-linux"] ./bpf.nix {};
101   breitbandmessung = handleTest ./breitbandmessung.nix {};
102   brscan5 = handleTest ./brscan5.nix {};
103   btrbk = handleTest ./btrbk.nix {};
104   btrbk-no-timer = handleTest ./btrbk-no-timer.nix {};
105   btrbk-section-order = handleTest ./btrbk-section-order.nix {};
106   buildbot = handleTest ./buildbot.nix {};
107   buildkite-agents = handleTest ./buildkite-agents.nix {};
108   caddy = handleTest ./caddy.nix {};
109   cadvisor = handleTestOn ["x86_64-linux"] ./cadvisor.nix {};
110   cage = handleTest ./cage.nix {};
111   cagebreak = handleTest ./cagebreak.nix {};
112   calibre-web = handleTest ./calibre-web.nix {};
113   cassandra_3_0 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_3_0; };
114   cassandra_3_11 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_3_11; };
115   ceph-multi-node = handleTestOn ["x86_64-linux"] ./ceph-multi-node.nix {};
116   ceph-single-node = handleTestOn ["x86_64-linux"] ./ceph-single-node.nix {};
117   ceph-single-node-bluestore = handleTestOn ["x86_64-linux"] ./ceph-single-node-bluestore.nix {};
118   certmgr = handleTest ./certmgr.nix {};
119   cfssl = handleTestOn ["aarch64-linux" "x86_64-linux"] ./cfssl.nix {};
120   charliecloud = handleTest ./charliecloud.nix {};
121   chromium = (handleTestOn ["aarch64-linux" "x86_64-linux"] ./chromium.nix {}).stable or {};
122   cinnamon = handleTest ./cinnamon.nix {};
123   cjdns = handleTest ./cjdns.nix {};
124   clickhouse = handleTest ./clickhouse.nix {};
125   cloud-init = handleTest ./cloud-init.nix {};
126   cloud-init-hostname = handleTest ./cloud-init-hostname.nix {};
127   cntr = handleTestOn ["aarch64-linux" "x86_64-linux"] ./cntr.nix {};
128   cockroachdb = handleTestOn ["x86_64-linux"] ./cockroachdb.nix {};
129   collectd = handleTest ./collectd.nix {};
130   consul = handleTest ./consul.nix {};
131   containers-bridge = handleTest ./containers-bridge.nix {};
132   containers-custom-pkgs.nix = handleTest ./containers-custom-pkgs.nix {};
133   containers-ephemeral = handleTest ./containers-ephemeral.nix {};
134   containers-extra_veth = handleTest ./containers-extra_veth.nix {};
135   containers-hosts = handleTest ./containers-hosts.nix {};
136   containers-imperative = handleTest ./containers-imperative.nix {};
137   containers-ip = handleTest ./containers-ip.nix {};
138   containers-macvlans = handleTest ./containers-macvlans.nix {};
139   containers-names = handleTest ./containers-names.nix {};
140   containers-nested = handleTest ./containers-nested.nix {};
141   containers-physical_interfaces = handleTest ./containers-physical_interfaces.nix {};
142   containers-portforward = handleTest ./containers-portforward.nix {};
143   containers-reloadable = handleTest ./containers-reloadable.nix {};
144   containers-restart_networking = handleTest ./containers-restart_networking.nix {};
145   containers-tmpfs = handleTest ./containers-tmpfs.nix {};
146   convos = handleTest ./convos.nix {};
147   corerad = handleTest ./corerad.nix {};
148   coturn = handleTest ./coturn.nix {};
149   couchdb = handleTest ./couchdb.nix {};
150   cri-o = handleTestOn ["aarch64-linux" "x86_64-linux"] ./cri-o.nix {};
151   custom-ca = handleTest ./custom-ca.nix {};
152   croc = handleTest ./croc.nix {};
153   deluge = handleTest ./deluge.nix {};
154   dendrite = handleTest ./matrix/dendrite.nix {};
155   dex-oidc = handleTest ./dex-oidc.nix {};
156   dhparams = handleTest ./dhparams.nix {};
157   disable-installer-tools = handleTest ./disable-installer-tools.nix {};
158   discourse = handleTest ./discourse.nix {};
159   dnscrypt-proxy2 = handleTestOn ["x86_64-linux"] ./dnscrypt-proxy2.nix {};
160   dnscrypt-wrapper = handleTestOn ["x86_64-linux"] ./dnscrypt-wrapper {};
161   dnsdist = handleTest ./dnsdist.nix {};
162   doas = handleTest ./doas.nix {};
163   docker = handleTestOn ["aarch64-linux" "x86_64-linux"] ./docker.nix {};
164   docker-rootless = handleTestOn ["aarch64-linux" "x86_64-linux"] ./docker-rootless.nix {};
165   docker-registry = handleTest ./docker-registry.nix {};
166   docker-tools = handleTestOn ["x86_64-linux"] ./docker-tools.nix {};
167   docker-tools-cross = handleTestOn ["x86_64-linux" "aarch64-linux"] ./docker-tools-cross.nix {};
168   docker-tools-overlay = handleTestOn ["x86_64-linux"] ./docker-tools-overlay.nix {};
169   documize = handleTest ./documize.nix {};
170   documentation = pkgs.callPackage ../modules/misc/documentation/test.nix { inherit nixosLib; };
171   doh-proxy-rust = handleTest ./doh-proxy-rust.nix {};
172   dokuwiki = handleTest ./dokuwiki.nix {};
173   dolibarr = handleTest ./dolibarr.nix {};
174   domination = handleTest ./domination.nix {};
175   dovecot = handleTest ./dovecot.nix {};
176   drbd = handleTest ./drbd.nix {};
177   earlyoom = handleTestOn ["x86_64-linux"] ./earlyoom.nix {};
178   ec2-config = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-config or {};
179   ec2-nixops = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-nixops or {};
180   ecryptfs = handleTest ./ecryptfs.nix {};
181   ejabberd = handleTest ./xmpp/ejabberd.nix {};
182   elk = handleTestOn ["x86_64-linux"] ./elk.nix {};
183   emacs-daemon = handleTest ./emacs-daemon.nix {};
184   endlessh = handleTest ./endlessh.nix {};
185   endlessh-go = handleTest ./endlessh-go.nix {};
186   engelsystem = handleTest ./engelsystem.nix {};
187   enlightenment = handleTest ./enlightenment.nix {};
188   env = handleTest ./env.nix {};
189   envoy = handleTest ./envoy.nix {};
190   ergo = handleTest ./ergo.nix {};
191   ergochat = handleTest ./ergochat.nix {};
192   etc = pkgs.callPackage ../modules/system/etc/test.nix { inherit evalMinimalConfig; };
193   etcd = handleTestOn ["x86_64-linux"] ./etcd.nix {};
194   etcd-cluster = handleTestOn ["x86_64-linux"] ./etcd-cluster.nix {};
195   etebase-server = handleTest ./etebase-server.nix {};
196   etesync-dav = handleTest ./etesync-dav.nix {};
197   extra-python-packages = handleTest ./extra-python-packages.nix {};
198   fancontrol = handleTest ./fancontrol.nix {};
199   fcitx = handleTest ./fcitx {};
200   fenics = handleTest ./fenics.nix {};
201   ferm = handleTest ./ferm.nix {};
202   firefox = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox; };
203   firefox-esr    = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-esr; }; # used in `tested` job
204   firefox-esr-102 = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-esr-102; };
205   firejail = handleTest ./firejail.nix {};
206   firewall = handleTest ./firewall.nix {};
207   fish = handleTest ./fish.nix {};
208   flannel = handleTestOn ["x86_64-linux"] ./flannel.nix {};
209   fluentd = handleTest ./fluentd.nix {};
210   fluidd = handleTest ./fluidd.nix {};
211   fontconfig-default-fonts = handleTest ./fontconfig-default-fonts.nix {};
212   freeswitch = handleTest ./freeswitch.nix {};
213   freshrss = handleTest ./freshrss.nix {};
214   frr = handleTest ./frr.nix {};
215   fsck = handleTest ./fsck.nix {};
216   ft2-clone = handleTest ./ft2-clone.nix {};
217   mimir = handleTest ./mimir.nix {};
218   garage = handleTest ./garage.nix {};
219   gerrit = handleTest ./gerrit.nix {};
220   geth = handleTest ./geth.nix {};
221   ghostunnel = handleTest ./ghostunnel.nix {};
222   gitdaemon = handleTest ./gitdaemon.nix {};
223   gitea = handleTest ./gitea.nix {};
224   gitlab = handleTest ./gitlab.nix {};
225   gitolite = handleTest ./gitolite.nix {};
226   gitolite-fcgiwrap = handleTest ./gitolite-fcgiwrap.nix {};
227   glusterfs = handleTest ./glusterfs.nix {};
228   gnome = handleTest ./gnome.nix {};
229   gnome-xorg = handleTest ./gnome-xorg.nix {};
230   go-neb = handleTest ./go-neb.nix {};
231   gobgpd = handleTest ./gobgpd.nix {};
232   gocd-agent = handleTest ./gocd-agent.nix {};
233   gocd-server = handleTest ./gocd-server.nix {};
234   gollum = handleTest ./gollum.nix {};
235   google-oslogin = handleTest ./google-oslogin {};
236   gotify-server = handleTest ./gotify-server.nix {};
237   grafana = handleTest ./grafana {};
238   grafana-agent = handleTest ./grafana-agent.nix {};
239   graphite = handleTest ./graphite.nix {};
240   graylog = handleTest ./graylog.nix {};
241   grocy = handleTest ./grocy.nix {};
242   grub = handleTest ./grub.nix {};
243   gvisor = handleTest ./gvisor.nix {};
244   hadoop = import ./hadoop { inherit handleTestOn; package=pkgs.hadoop; };
245   hadoop_3_2 = import ./hadoop { inherit handleTestOn; package=pkgs.hadoop_3_2; };
246   hadoop2 = import ./hadoop { inherit handleTestOn; package=pkgs.hadoop2; };
247   haka = handleTest ./haka.nix {};
248   haste-server = handleTest ./haste-server.nix {};
249   haproxy = handleTest ./haproxy.nix {};
250   hardened = handleTest ./hardened.nix {};
251   healthchecks = handleTest ./web-apps/healthchecks.nix {};
252   hbase1 = handleTest ./hbase.nix { package=pkgs.hbase1; };
253   hbase2 = handleTest ./hbase.nix { package=pkgs.hbase2; };
254   hbase3 = handleTest ./hbase.nix { package=pkgs.hbase3; };
255   hedgedoc = handleTest ./hedgedoc.nix {};
256   herbstluftwm = handleTest ./herbstluftwm.nix {};
257   installed-tests = pkgs.recurseIntoAttrs (handleTest ./installed-tests {});
258   invidious = handleTest ./invidious.nix {};
259   oci-containers = handleTestOn ["aarch64-linux" "x86_64-linux"] ./oci-containers.nix {};
260   odoo = handleTest ./odoo.nix {};
261   # 9pnet_virtio used to mount /nix partition doesn't support
262   # hibernation. This test happens to work on x86_64-linux but
263   # not on other platforms.
264   hibernate = handleTestOn ["x86_64-linux"] ./hibernate.nix {};
265   hibernate-systemd-stage-1 = handleTestOn ["x86_64-linux"] ./hibernate.nix { systemdStage1 = true; };
266   hitch = handleTest ./hitch {};
267   hledger-web = handleTest ./hledger-web.nix {};
268   hocker-fetchdocker = handleTest ./hocker-fetchdocker {};
269   hockeypuck = handleTest ./hockeypuck.nix { };
270   home-assistant = handleTest ./home-assistant.nix {};
271   hostname = handleTest ./hostname.nix {};
272   hound = handleTest ./hound.nix {};
273   hub = handleTest ./git/hub.nix {};
274   hydra = handleTest ./hydra {};
275   i3wm = handleTest ./i3wm.nix {};
276   icingaweb2 = handleTest ./icingaweb2.nix {};
277   iftop = handleTest ./iftop.nix {};
278   ihatemoney = handleTest ./ihatemoney {};
279   incron = handleTest ./incron.nix {};
280   influxdb = handleTest ./influxdb.nix {};
281   initrd-network-openvpn = handleTest ./initrd-network-openvpn {};
282   initrd-network-ssh = handleTest ./initrd-network-ssh {};
283   initrdNetwork = handleTest ./initrd-network.nix {};
284   initrd-secrets = handleTest ./initrd-secrets.nix {};
285   input-remapper = handleTest ./input-remapper.nix {};
286   inspircd = handleTest ./inspircd.nix {};
287   installer = handleTest ./installer.nix {};
288   installer-systemd-stage-1 = handleTest ./installer-systemd-stage-1.nix {};
289   invoiceplane = handleTest ./invoiceplane.nix {};
290   iodine = handleTest ./iodine.nix {};
291   ipv6 = handleTest ./ipv6.nix {};
292   iscsi-multipath-root = handleTest ./iscsi-multipath-root.nix {};
293   iscsi-root = handleTest ./iscsi-root.nix {};
294   isso = handleTest ./isso.nix {};
295   jackett = handleTest ./jackett.nix {};
296   jellyfin = handleTest ./jellyfin.nix {};
297   jenkins = handleTest ./jenkins.nix {};
298   jenkins-cli = handleTest ./jenkins-cli.nix {};
299   jibri = handleTest ./jibri.nix {};
300   jirafeau = handleTest ./jirafeau.nix {};
301   jitsi-meet = handleTest ./jitsi-meet.nix {};
302   k3s = handleTest ./k3s {};
303   kafka = handleTest ./kafka.nix {};
304   kanidm = handleTest ./kanidm.nix {};
305   karma = handleTest ./karma.nix {};
306   kbd-setfont-decompress = handleTest ./kbd-setfont-decompress.nix {};
307   kbd-update-search-paths-patch = handleTest ./kbd-update-search-paths-patch.nix {};
308   kea = handleTest ./kea.nix {};
309   keepalived = handleTest ./keepalived.nix {};
310   keepassxc = handleTest ./keepassxc.nix {};
311   kerberos = handleTest ./kerberos/default.nix {};
312   kernel-generic = handleTest ./kernel-generic.nix {};
313   kernel-latest-ath-user-regd = handleTest ./kernel-latest-ath-user-regd.nix {};
314   keter = handleTest ./keter.nix {};
315   kexec = handleTest ./kexec.nix {};
316   keycloak = discoverTests (import ./keycloak.nix);
317   keymap = handleTest ./keymap.nix {};
318   knot = handleTest ./knot.nix {};
319   komga = handleTest ./komga.nix {};
320   krb5 = discoverTests (import ./krb5 {});
321   ksm = handleTest ./ksm.nix {};
322   kthxbye = handleTest ./kthxbye.nix {};
323   kubernetes = handleTestOn ["x86_64-linux"] ./kubernetes {};
324   kubo = handleTest ./kubo.nix {};
325   ladybird = handleTest ./ladybird.nix {};
326   languagetool = handleTest ./languagetool.nix {};
327   latestKernel.login = handleTest ./login.nix { latestKernel = true; };
328   leaps = handleTest ./leaps.nix {};
329   lemmy = handleTest ./lemmy.nix {};
330   libinput = handleTest ./libinput.nix {};
331   libreddit = handleTest ./libreddit.nix {};
332   libresprite = handleTest ./libresprite.nix {};
333   libreswan = handleTest ./libreswan.nix {};
334   librewolf = handleTest ./firefox.nix { firefoxPackage = pkgs.librewolf; };
335   libuiohook = handleTest ./libuiohook.nix {};
336   libvirtd = handleTest ./libvirtd.nix {};
337   lidarr = handleTest ./lidarr.nix {};
338   lightdm = handleTest ./lightdm.nix {};
339   lighttpd = handleTest ./lighttpd.nix {};
340   limesurvey = handleTest ./limesurvey.nix {};
341   listmonk = handleTest ./listmonk.nix {};
342   litestream = handleTest ./litestream.nix {};
343   locate = handleTest ./locate.nix {};
344   login = handleTest ./login.nix {};
345   logrotate = handleTest ./logrotate.nix {};
346   loki = handleTest ./loki.nix {};
347   lvm2 = handleTest ./lvm2 {};
348   lxd = handleTest ./lxd.nix {};
349   lxd-nftables = handleTest ./lxd-nftables.nix {};
350   lxd-image-server = handleTest ./lxd-image-server.nix {};
351   #logstash = handleTest ./logstash.nix {};
352   lorri = handleTest ./lorri/default.nix {};
353   maddy = handleTest ./maddy.nix {};
354   maestral = handleTest ./maestral.nix {};
355   magic-wormhole-mailbox-server = handleTest ./magic-wormhole-mailbox-server.nix {};
356   magnetico = handleTest ./magnetico.nix {};
357   mailcatcher = handleTest ./mailcatcher.nix {};
358   mailhog = handleTest ./mailhog.nix {};
359   man = handleTest ./man.nix {};
360   mariadb-galera = handleTest ./mysql/mariadb-galera.nix {};
361   mastodon = handleTestOn ["x86_64-linux" "i686-linux" "aarch64-linux"] ./web-apps/mastodon.nix {};
362   matomo = handleTest ./matomo.nix {};
363   matrix-appservice-irc = handleTest ./matrix/appservice-irc.nix {};
364   matrix-conduit = handleTest ./matrix/conduit.nix {};
365   matrix-synapse = handleTest ./matrix/synapse.nix {};
366   mattermost = handleTest ./mattermost.nix {};
367   mediatomb = handleTest ./mediatomb.nix {};
368   mediawiki = handleTest ./mediawiki.nix {};
369   meilisearch = handleTest ./meilisearch.nix {};
370   memcached = handleTest ./memcached.nix {};
371   merecat = handleTest ./merecat.nix {};
372   metabase = handleTest ./metabase.nix {};
373   minecraft = handleTest ./minecraft.nix {};
374   minecraft-server = handleTest ./minecraft-server.nix {};
375   minidlna = handleTest ./minidlna.nix {};
376   miniflux = handleTest ./miniflux.nix {};
377   minio = handleTest ./minio.nix {};
378   misc = handleTest ./misc.nix {};
379   mjolnir = handleTest ./matrix/mjolnir.nix {};
380   mod_perl = handleTest ./mod_perl.nix {};
381   molly-brown = handleTest ./molly-brown.nix {};
382   mongodb = handleTest ./mongodb.nix {};
383   moodle = handleTest ./moodle.nix {};
384   moonraker = handleTest ./moonraker.nix {};
385   morty = handleTest ./morty.nix {};
386   mosquitto = handleTest ./mosquitto.nix {};
387   moosefs = handleTest ./moosefs.nix {};
388   mpd = handleTest ./mpd.nix {};
389   mpv = handleTest ./mpv.nix {};
390   mtp = handleTest ./mtp.nix {};
391   mumble = handleTest ./mumble.nix {};
392   musescore = handleTest ./musescore.nix {};
393   munin = handleTest ./munin.nix {};
394   mutableUsers = handleTest ./mutable-users.nix {};
395   mxisd = handleTest ./mxisd.nix {};
396   mysql = handleTest ./mysql/mysql.nix {};
397   mysql-autobackup = handleTest ./mysql/mysql-autobackup.nix {};
398   mysql-backup = handleTest ./mysql/mysql-backup.nix {};
399   mysql-replication = handleTest ./mysql/mysql-replication.nix {};
400   n8n = handleTest ./n8n.nix {};
401   nagios = handleTest ./nagios.nix {};
402   nar-serve = handleTest ./nar-serve.nix {};
403   nat.firewall = handleTest ./nat.nix { withFirewall = true; };
404   nat.firewall-conntrack = handleTest ./nat.nix { withFirewall = true; withConntrackHelpers = true; };
405   nat.standalone = handleTest ./nat.nix { withFirewall = false; };
406   nats = handleTest ./nats.nix {};
407   navidrome = handleTest ./navidrome.nix {};
408   nbd = handleTest ./nbd.nix {};
409   ncdns = handleTest ./ncdns.nix {};
410   ndppd = handleTest ./ndppd.nix {};
411   nebula = handleTest ./nebula.nix {};
412   netbird = handleTest ./netbird.nix {};
413   neo4j = handleTest ./neo4j.nix {};
414   netdata = handleTest ./netdata.nix {};
415   networking.networkd = handleTest ./networking.nix { networkd = true; };
416   networking.scripted = handleTest ./networking.nix { networkd = false; };
417   specialisation = handleTest ./specialisation.nix {};
418   netbox = handleTest ./web-apps/netbox.nix {};
419   # TODO: put in networking.nix after the test becomes more complete
420   networkingProxy = handleTest ./networking-proxy.nix {};
421   nextcloud = handleTest ./nextcloud {};
422   nexus = handleTest ./nexus.nix {};
423   # TODO: Test nfsv3 + Kerberos
424   nfs3 = handleTest ./nfs { version = 3; };
425   nfs4 = handleTest ./nfs { version = 4; };
426   nghttpx = handleTest ./nghttpx.nix {};
427   nginx = handleTest ./nginx.nix {};
428   nginx-auth = handleTest ./nginx-auth.nix {};
429   nginx-etag = handleTest ./nginx-etag.nix {};
430   nginx-http3 = handleTest ./nginx-http3.nix {};
431   nginx-modsecurity = handleTest ./nginx-modsecurity.nix {};
432   nginx-pubhtml = handleTest ./nginx-pubhtml.nix {};
433   nginx-sandbox = handleTestOn ["x86_64-linux"] ./nginx-sandbox.nix {};
434   nginx-sso = handleTest ./nginx-sso.nix {};
435   nginx-variants = handleTest ./nginx-variants.nix {};
436   nifi = handleTestOn ["x86_64-linux"] ./web-apps/nifi.nix {};
437   nitter = handleTest ./nitter.nix {};
438   nix-ld = handleTest ./nix-ld.nix {};
439   nix-serve = handleTest ./nix-serve.nix {};
440   nix-serve-ssh = handleTest ./nix-serve-ssh.nix {};
441   nixops = handleTest ./nixops/default.nix {};
442   nixos-generate-config = handleTest ./nixos-generate-config.nix {};
443   nixpkgs = pkgs.callPackage ../modules/misc/nixpkgs/test.nix { inherit evalMinimalConfig; };
444   node-red = handleTest ./node-red.nix {};
445   nomad = handleTest ./nomad.nix {};
446   non-default-filesystems = handleTest ./non-default-filesystems.nix {};
447   noto-fonts = handleTest ./noto-fonts.nix {};
448   novacomd = handleTestOn ["x86_64-linux"] ./novacomd.nix {};
449   nscd = handleTest ./nscd.nix {};
450   nsd = handleTest ./nsd.nix {};
451   ntfy-sh = handleTest ./ntfy-sh.nix {};
452   nzbget = handleTest ./nzbget.nix {};
453   nzbhydra2 = handleTest ./nzbhydra2.nix {};
454   oh-my-zsh = handleTest ./oh-my-zsh.nix {};
455   ombi = handleTest ./ombi.nix {};
456   openarena = handleTest ./openarena.nix {};
457   openldap = handleTest ./openldap.nix {};
458   openresty-lua = handleTest ./openresty-lua.nix {};
459   opensmtpd = handleTest ./opensmtpd.nix {};
460   opensmtpd-rspamd = handleTest ./opensmtpd-rspamd.nix {};
461   openssh = handleTest ./openssh.nix {};
462   openstack-image-metadata = (handleTestOn ["x86_64-linux"] ./openstack-image.nix {}).metadata or {};
463   openstack-image-userdata = (handleTestOn ["x86_64-linux"] ./openstack-image.nix {}).userdata or {};
464   opentabletdriver = handleTest ./opentabletdriver.nix {};
465   owncast = handleTest ./owncast.nix {};
466   image-contents = handleTest ./image-contents.nix {};
467   orangefs = handleTest ./orangefs.nix {};
468   os-prober = handleTestOn ["x86_64-linux"] ./os-prober.nix {};
469   osrm-backend = handleTest ./osrm-backend.nix {};
470   overlayfs = handleTest ./overlayfs.nix {};
471   pacemaker = handleTest ./pacemaker.nix {};
472   packagekit = handleTest ./packagekit.nix {};
473   pam-file-contents = handleTest ./pam/pam-file-contents.nix {};
474   pam-oath-login = handleTest ./pam/pam-oath-login.nix {};
475   pam-u2f = handleTest ./pam/pam-u2f.nix {};
476   pam-ussh = handleTest ./pam/pam-ussh.nix {};
477   pass-secret-service = handleTest ./pass-secret-service.nix {};
478   patroni = handleTest ./patroni.nix {};
479   pantalaimon = handleTest ./matrix/pantalaimon.nix {};
480   pantheon = handleTest ./pantheon.nix {};
481   paperless = handleTest ./paperless.nix {};
482   parsedmarc = handleTest ./parsedmarc {};
483   pdns-recursor = handleTest ./pdns-recursor.nix {};
484   peerflix = handleTest ./peerflix.nix {};
485   peertube = handleTestOn ["x86_64-linux"] ./web-apps/peertube.nix {};
486   pgadmin4 = handleTest ./pgadmin4.nix {};
487   pgadmin4-standalone = handleTest ./pgadmin4-standalone.nix {};
488   pgjwt = handleTest ./pgjwt.nix {};
489   pgmanage = handleTest ./pgmanage.nix {};
490   php = handleTest ./php {};
491   php80 = handleTest ./php { php = pkgs.php80; };
492   php81 = handleTest ./php { php = pkgs.php81; };
493   phylactery = handleTest ./web-apps/phylactery.nix {};
494   pict-rs = handleTest ./pict-rs.nix {};
495   pinnwand = handleTest ./pinnwand.nix {};
496   plasma-bigscreen = handleTest ./plasma-bigscreen.nix {};
497   plasma5 = handleTest ./plasma5.nix {};
498   plasma5-systemd-start = handleTest ./plasma5-systemd-start.nix {};
499   plausible = handleTest ./plausible.nix {};
500   please = handleTest ./please.nix {};
501   pleroma = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./pleroma.nix {};
502   plikd = handleTest ./plikd.nix {};
503   plotinus = handleTest ./plotinus.nix {};
504   podgrab = handleTest ./podgrab.nix {};
505   podman = handleTestOn ["aarch64-linux" "x86_64-linux"] ./podman/default.nix {};
506   podman-dnsname = handleTestOn ["aarch64-linux" "x86_64-linux"] ./podman/dnsname.nix {};
507   podman-tls-ghostunnel = handleTestOn ["aarch64-linux" "x86_64-linux"] ./podman/tls-ghostunnel.nix {};
508   polaris = handleTest ./polaris.nix {};
509   pomerium = handleTestOn ["x86_64-linux"] ./pomerium.nix {};
510   postfix = handleTest ./postfix.nix {};
511   postfix-raise-smtpd-tls-security-level = handleTest ./postfix-raise-smtpd-tls-security-level.nix {};
512   postfixadmin = handleTest ./postfixadmin.nix {};
513   postgis = handleTest ./postgis.nix {};
514   postgresql = handleTest ./postgresql.nix {};
515   postgresql-wal-receiver = handleTest ./postgresql-wal-receiver.nix {};
516   powerdns = handleTest ./powerdns.nix {};
517   powerdns-admin = handleTest ./powerdns-admin.nix {};
518   power-profiles-daemon = handleTest ./power-profiles-daemon.nix {};
519   pppd = handleTest ./pppd.nix {};
520   predictable-interface-names = handleTest ./predictable-interface-names.nix {};
521   printing = handleTest ./printing.nix {};
522   privacyidea = handleTest ./privacyidea.nix {};
523   privoxy = handleTest ./privoxy.nix {};
524   prometheus = handleTest ./prometheus.nix {};
525   prometheus-exporters = handleTest ./prometheus-exporters.nix {};
526   prosody = handleTest ./xmpp/prosody.nix {};
527   prosody-mysql = handleTest ./xmpp/prosody-mysql.nix {};
528   proxy = handleTest ./proxy.nix {};
529   prowlarr = handleTest ./prowlarr.nix {};
530   pt2-clone = handleTest ./pt2-clone.nix {};
531   pykms = handleTest ./pykms.nix {};
532   public-inbox = handleTest ./public-inbox.nix {};
533   pulseaudio = discoverTests (import ./pulseaudio.nix);
534   qboot = handleTestOn ["x86_64-linux" "i686-linux"] ./qboot.nix {};
535   quorum = handleTest ./quorum.nix {};
536   quake3 = handleTest ./quake3.nix {};
537   rabbitmq = handleTest ./rabbitmq.nix {};
538   radarr = handleTest ./radarr.nix {};
539   radicale = handleTest ./radicale.nix {};
540   rasdaemon = handleTest ./rasdaemon.nix {};
541   redis = handleTest ./redis.nix {};
542   redmine = handleTest ./redmine.nix {};
543   restartByActivationScript = handleTest ./restart-by-activation-script.nix {};
544   restic = handleTest ./restic.nix {};
545   retroarch = handleTest ./retroarch.nix {};
546   robustirc-bridge = handleTest ./robustirc-bridge.nix {};
547   roundcube = handleTest ./roundcube.nix {};
548   rspamd = handleTest ./rspamd.nix {};
549   rss2email = handleTest ./rss2email.nix {};
550   rstudio-server = handleTest ./rstudio-server.nix {};
551   rsyncd = handleTest ./rsyncd.nix {};
552   rsyslogd = handleTest ./rsyslogd.nix {};
553   rxe = handleTest ./rxe.nix {};
554   sabnzbd = handleTest ./sabnzbd.nix {};
555   samba = handleTest ./samba.nix {};
556   samba-wsdd = handleTest ./samba-wsdd.nix {};
557   sanoid = handleTest ./sanoid.nix {};
558   schleuder = handleTest ./schleuder.nix {};
559   sddm = handleTest ./sddm.nix {};
560   seafile = handleTest ./seafile.nix {};
561   searx = handleTest ./searx.nix {};
562   service-runner = handleTest ./service-runner.nix {};
563   sfxr-qt = handleTest ./sfxr-qt.nix {};
564   shadow = handleTest ./shadow.nix {};
565   shadowsocks = handleTest ./shadowsocks {};
566   shattered-pixel-dungeon = handleTest ./shattered-pixel-dungeon.nix {};
567   shiori = handleTest ./shiori.nix {};
568   signal-desktop = handleTest ./signal-desktop.nix {};
569   simple = handleTest ./simple.nix {};
570   slurm = handleTest ./slurm.nix {};
571   smokeping = handleTest ./smokeping.nix {};
572   snapcast = handleTest ./snapcast.nix {};
573   snapper = handleTest ./snapper.nix {};
574   soapui = handleTest ./soapui.nix {};
575   sogo = handleTest ./sogo.nix {};
576   solanum = handleTest ./solanum.nix {};
577   solr = handleTest ./solr.nix {};
578   sonarr = handleTest ./sonarr.nix {};
579   sourcehut = handleTest ./sourcehut.nix {};
580   spacecookie = handleTest ./spacecookie.nix {};
581   spark = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./spark {};
582   sslh = handleTest ./sslh.nix {};
583   sssd = handleTestOn ["x86_64-linux"] ./sssd.nix {};
584   sssd-ldap = handleTestOn ["x86_64-linux"] ./sssd-ldap.nix {};
585   starship = handleTest ./starship.nix {};
586   step-ca = handleTestOn ["x86_64-linux"] ./step-ca.nix {};
587   stratis = handleTest ./stratis {};
588   strongswan-swanctl = handleTest ./strongswan-swanctl.nix {};
589   stunnel = handleTest ./stunnel.nix {};
590   sudo = handleTest ./sudo.nix {};
591   swap-partition = handleTest ./swap-partition.nix {};
592   sway = handleTest ./sway.nix {};
593   switchTest = handleTest ./switch-test.nix {};
594   sympa = handleTest ./sympa.nix {};
595   syncthing = handleTest ./syncthing.nix {};
596   syncthing-init = handleTest ./syncthing-init.nix {};
597   syncthing-relay = handleTest ./syncthing-relay.nix {};
598   systemd = handleTest ./systemd.nix {};
599   systemd-analyze = handleTest ./systemd-analyze.nix {};
600   systemd-binfmt = handleTestOn ["x86_64-linux"] ./systemd-binfmt.nix {};
601   systemd-boot = handleTest ./systemd-boot.nix {};
602   systemd-bpf = handleTest ./systemd-bpf.nix {};
603   systemd-confinement = handleTest ./systemd-confinement.nix {};
604   systemd-coredump = handleTest ./systemd-coredump.nix {};
605   systemd-cryptenroll = handleTest ./systemd-cryptenroll.nix {};
606   systemd-escaping = handleTest ./systemd-escaping.nix {};
607   systemd-initrd-btrfs-raid = handleTest ./systemd-initrd-btrfs-raid.nix {};
608   systemd-initrd-luks-fido2 = handleTest ./systemd-initrd-luks-fido2.nix {};
609   systemd-initrd-luks-keyfile = handleTest ./systemd-initrd-luks-keyfile.nix {};
610   systemd-initrd-luks-password = handleTest ./systemd-initrd-luks-password.nix {};
611   systemd-initrd-luks-tpm2 = handleTest ./systemd-initrd-luks-tpm2.nix {};
612   systemd-initrd-modprobe = handleTest ./systemd-initrd-modprobe.nix {};
613   systemd-initrd-shutdown = handleTest ./systemd-shutdown.nix { systemdStage1 = true; };
614   systemd-initrd-simple = handleTest ./systemd-initrd-simple.nix {};
615   systemd-initrd-swraid = handleTest ./systemd-initrd-swraid.nix {};
616   systemd-journal = handleTest ./systemd-journal.nix {};
617   systemd-machinectl = handleTest ./systemd-machinectl.nix {};
618   systemd-networkd = handleTest ./systemd-networkd.nix {};
619   systemd-networkd-dhcpserver = handleTest ./systemd-networkd-dhcpserver.nix {};
620   systemd-networkd-dhcpserver-static-leases = handleTest ./systemd-networkd-dhcpserver-static-leases.nix {};
621   systemd-networkd-ipv6-prefix-delegation = handleTest ./systemd-networkd-ipv6-prefix-delegation.nix {};
622   systemd-networkd-vrf = handleTest ./systemd-networkd-vrf.nix {};
623   systemd-no-tainted = handleTest ./systemd-no-tainted.nix {};
624   systemd-nspawn = handleTest ./systemd-nspawn.nix {};
625   systemd-oomd = handleTest ./systemd-oomd.nix {};
626   systemd-portabled = handleTest ./systemd-portabled.nix {};
627   systemd-shutdown = handleTest ./systemd-shutdown.nix {};
628   systemd-timesyncd = handleTest ./systemd-timesyncd.nix {};
629   systemd-misc = handleTest ./systemd-misc.nix {};
630   tandoor-recipes = handleTest ./tandoor-recipes.nix {};
631   taskserver = handleTest ./taskserver.nix {};
632   teeworlds = handleTest ./teeworlds.nix {};
633   telegraf = handleTest ./telegraf.nix {};
634   teleport = handleTest ./teleport.nix {};
635   thelounge = handleTest ./thelounge.nix {};
636   terminal-emulators = handleTest ./terminal-emulators.nix {};
637   tiddlywiki = handleTest ./tiddlywiki.nix {};
638   tigervnc = handleTest ./tigervnc.nix {};
639   timezone = handleTest ./timezone.nix {};
640   tinc = handleTest ./tinc {};
641   tinydns = handleTest ./tinydns.nix {};
642   tinywl = handleTest ./tinywl.nix {};
643   tmate-ssh-server = handleTest ./tmate-ssh-server.nix { };
644   tomcat = handleTest ./tomcat.nix {};
645   tor = handleTest ./tor.nix {};
646   traefik = handleTestOn ["aarch64-linux" "x86_64-linux"] ./traefik.nix {};
647   trafficserver = handleTest ./trafficserver.nix {};
648   transmission = handleTest ./transmission.nix {};
649   # tracee requires bpf
650   tracee = handleTestOn ["x86_64-linux"] ./tracee.nix {};
651   trezord = handleTest ./trezord.nix {};
652   trickster = handleTest ./trickster.nix {};
653   trilium-server = handleTestOn ["x86_64-linux"] ./trilium-server.nix {};
654   tsm-client-gui = handleTest ./tsm-client-gui.nix {};
655   txredisapi = handleTest ./txredisapi.nix {};
656   tuptime = handleTest ./tuptime.nix {};
657   turbovnc-headless-server = handleTest ./turbovnc-headless-server.nix {};
658   tuxguitar = handleTest ./tuxguitar.nix {};
659   ucarp = handleTest ./ucarp.nix {};
660   udisks2 = handleTest ./udisks2.nix {};
661   unbound = handleTest ./unbound.nix {};
662   unifi = handleTest ./unifi.nix {};
663   unit-php = handleTest ./web-servers/unit-php.nix {};
664   upnp = handleTest ./upnp.nix {};
665   uptermd = handleTest ./uptermd.nix {};
666   uptime-kuma = handleTest ./uptime-kuma.nix {};
667   usbguard = handleTest ./usbguard.nix {};
668   user-activation-scripts = handleTest ./user-activation-scripts.nix {};
669   user-home-mode = handleTest ./user-home-mode.nix {};
670   uwsgi = handleTest ./uwsgi.nix {};
671   v2ray = handleTest ./v2ray.nix {};
672   varnish60 = handleTest ./varnish.nix { package = pkgs.varnish60; };
673   varnish71 = handleTest ./varnish.nix { package = pkgs.varnish71; };
674   varnish72 = handleTest ./varnish.nix { package = pkgs.varnish72; };
675   vault = handleTest ./vault.nix {};
676   vault-dev = handleTest ./vault-dev.nix {};
677   vault-postgresql = handleTest ./vault-postgresql.nix {};
678   vaultwarden = handleTest ./vaultwarden.nix {};
679   vector = handleTest ./vector.nix {};
680   vengi-tools = handleTest ./vengi-tools.nix {};
681   victoriametrics = handleTest ./victoriametrics.nix {};
682   vikunja = handleTest ./vikunja.nix {};
683   virtualbox = handleTestOn ["x86_64-linux"] ./virtualbox.nix {};
684   vscodium = discoverTests (import ./vscodium.nix);
685   vsftpd = handleTest ./vsftpd.nix {};
686   wasabibackend = handleTest ./wasabibackend.nix {};
687   wiki-js = handleTest ./wiki-js.nix {};
688   wine = handleTest ./wine.nix {};
689   wireguard = handleTest ./wireguard {};
690   without-nix = handleTest ./without-nix.nix {};
691   wmderland = handleTest ./wmderland.nix {};
692   wpa_supplicant = handleTest ./wpa_supplicant.nix {};
693   wordpress = handleTest ./wordpress.nix {};
694   writefreely = handleTest ./web-apps/writefreely.nix {};
695   xandikos = handleTest ./xandikos.nix {};
696   xautolock = handleTest ./xautolock.nix {};
697   xfce = handleTest ./xfce.nix {};
698   xmonad = handleTest ./xmonad.nix {};
699   xmonad-xdg-autostart = handleTest ./xmonad-xdg-autostart.nix {};
700   xpadneo = handleTest ./xpadneo.nix {};
701   xrdp = handleTest ./xrdp.nix {};
702   xss-lock = handleTest ./xss-lock.nix {};
703   xterm = handleTest ./xterm.nix {};
704   xxh = handleTest ./xxh.nix {};
705   yabar = handleTest ./yabar.nix {};
706   yggdrasil = handleTest ./yggdrasil.nix {};
707   zammad = handleTest ./zammad.nix {};
708   zeronet-conservancy = handleTest ./zeronet-conservancy.nix {};
709   zfs = handleTest ./zfs.nix {};
710   zigbee2mqtt = handleTest ./zigbee2mqtt.nix {};
711   zoneminder = handleTest ./zoneminder.nix {};
712   zookeeper = handleTest ./zookeeper.nix {};
713   zrepl = handleTest ./zrepl.nix {};
714   zsh-history = handleTest ./zsh-history.nix {};