1{ system, pkgs, callTest }:
2# The return value of this function will be an attrset with arbitrary depth and
3# the `anything` returned by callTest at its test leafs.
4# The tests not supported by `system` will be replaced with `{}`, so that
5# `passthru.tests` can contain links to those without breaking on architectures
6# where said tests are unsupported.
7# Example callTest that just extracts the derivation from the test:
8# callTest = t: t.test;
9
10with pkgs.lib;
11
12let
13 discoverTests = val:
14 if !isAttrs val then val
15 else if hasAttr "test" val then callTest val
16 else mapAttrs (n: s: discoverTests s) val;
17 handleTest = path: args:
18 discoverTests (import path ({ inherit system pkgs; } // args));
19 handleTestOn = systems: path: args:
20 if elem system systems then handleTest path args
21 else {};
22in
23{
24 _3proxy = handleTest ./3proxy.nix {};
25 acme = handleTest ./acme.nix {};
26 agda = handleTest ./agda.nix {};
27 airsonic = handleTest ./airsonic.nix {};
28 amazon-init-shell = handleTest ./amazon-init-shell.nix {};
29 apparmor = handleTest ./apparmor.nix {};
30 atd = handleTest ./atd.nix {};
31 atop = handleTest ./atop.nix {};
32 avahi = handleTest ./avahi.nix {};
33 avahi-with-resolved = handleTest ./avahi.nix { networkd = true; };
34 babeld = handleTest ./babeld.nix {};
35 bazarr = handleTest ./bazarr.nix {};
36 bcachefs = handleTestOn ["x86_64-linux" "aarch64-linux"] ./bcachefs.nix {};
37 beanstalkd = handleTest ./beanstalkd.nix {};
38 bees = handleTest ./bees.nix {};
39 bind = handleTest ./bind.nix {};
40 bitcoind = handleTest ./bitcoind.nix {};
41 bittorrent = handleTest ./bittorrent.nix {};
42 blockbook-frontend = handleTest ./blockbook-frontend.nix {};
43 boot = handleTestOn ["x86_64-linux" "aarch64-linux"] ./boot.nix {};
44 boot-stage1 = handleTest ./boot-stage1.nix {};
45 borgbackup = handleTest ./borgbackup.nix {};
46 botamusique = handleTest ./botamusique.nix {};
47 btrbk = handleTest ./btrbk.nix {};
48 buildbot = handleTest ./buildbot.nix {};
49 buildkite-agents = handleTest ./buildkite-agents.nix {};
50 caddy = handleTest ./caddy.nix {};
51 cadvisor = handleTestOn ["x86_64-linux"] ./cadvisor.nix {};
52 cage = handleTest ./cage.nix {};
53 cagebreak = handleTest ./cagebreak.nix {};
54 calibre-web = handleTest ./calibre-web.nix {};
55 cassandra_2_1 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_2_1; };
56 cassandra_2_2 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_2_2; };
57 cassandra_3_0 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_3_0; };
58 cassandra_3_11 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_3_11; };
59 ceph-multi-node = handleTestOn ["x86_64-linux"] ./ceph-multi-node.nix {};
60 ceph-single-node = handleTestOn ["x86_64-linux"] ./ceph-single-node.nix {};
61 ceph-single-node-bluestore = handleTestOn ["x86_64-linux"] ./ceph-single-node-bluestore.nix {};
62 certmgr = handleTest ./certmgr.nix {};
63 cfssl = handleTestOn ["x86_64-linux"] ./cfssl.nix {};
64 charliecloud = handleTest ./charliecloud.nix {};
65 chromium = (handleTestOn ["x86_64-linux"] ./chromium.nix {}).stable or {};
66 cjdns = handleTest ./cjdns.nix {};
67 clickhouse = handleTest ./clickhouse.nix {};
68 cloud-init = handleTest ./cloud-init.nix {};
69 cntr = handleTest ./cntr.nix {};
70 cockroachdb = handleTestOn ["x86_64-linux"] ./cockroachdb.nix {};
71 consul = handleTest ./consul.nix {};
72 containers-bridge = handleTest ./containers-bridge.nix {};
73 containers-custom-pkgs.nix = handleTest ./containers-custom-pkgs.nix {};
74 containers-ephemeral = handleTest ./containers-ephemeral.nix {};
75 containers-extra_veth = handleTest ./containers-extra_veth.nix {};
76 containers-hosts = handleTest ./containers-hosts.nix {};
77 containers-imperative = handleTest ./containers-imperative.nix {};
78 containers-ip = handleTest ./containers-ip.nix {};
79 containers-macvlans = handleTest ./containers-macvlans.nix {};
80 containers-names = handleTest ./containers-names.nix {};
81 containers-nested = handleTest ./containers-nested.nix {};
82 containers-physical_interfaces = handleTest ./containers-physical_interfaces.nix {};
83 containers-portforward = handleTest ./containers-portforward.nix {};
84 containers-reloadable = handleTest ./containers-reloadable.nix {};
85 containers-restart_networking = handleTest ./containers-restart_networking.nix {};
86 containers-tmpfs = handleTest ./containers-tmpfs.nix {};
87 convos = handleTest ./convos.nix {};
88 corerad = handleTest ./corerad.nix {};
89 coturn = handleTest ./coturn.nix {};
90 couchdb = handleTest ./couchdb.nix {};
91 cri-o = handleTestOn ["x86_64-linux"] ./cri-o.nix {};
92 custom-ca = handleTest ./custom-ca.nix {};
93 croc = handleTest ./croc.nix {};
94 cryptpad = handleTest ./cryptpad.nix {};
95 deluge = handleTest ./deluge.nix {};
96 dendrite = handleTest ./dendrite.nix {};
97 dex-oidc = handleTest ./dex-oidc.nix {};
98 dhparams = handleTest ./dhparams.nix {};
99 disable-installer-tools = handleTest ./disable-installer-tools.nix {};
100 discourse = handleTest ./discourse.nix {};
101 dnscrypt-proxy2 = handleTestOn ["x86_64-linux"] ./dnscrypt-proxy2.nix {};
102 dnscrypt-wrapper = handleTestOn ["x86_64-linux"] ./dnscrypt-wrapper {};
103 doas = handleTest ./doas.nix {};
104 docker = handleTestOn ["x86_64-linux"] ./docker.nix {};
105 docker-edge = handleTestOn ["x86_64-linux"] ./docker-edge.nix {};
106 docker-registry = handleTest ./docker-registry.nix {};
107 docker-tools = handleTestOn ["x86_64-linux"] ./docker-tools.nix {};
108 docker-tools-cross = handleTestOn ["x86_64-linux" "aarch64-linux"] ./docker-tools-cross.nix {};
109 docker-tools-overlay = handleTestOn ["x86_64-linux"] ./docker-tools-overlay.nix {};
110 documize = handleTest ./documize.nix {};
111 dokuwiki = handleTest ./dokuwiki.nix {};
112 domination = handleTest ./domination.nix {};
113 dovecot = handleTest ./dovecot.nix {};
114 ec2-config = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-config or {};
115 ec2-nixops = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-nixops or {};
116 ecryptfs = handleTest ./ecryptfs.nix {};
117 ejabberd = handleTest ./xmpp/ejabberd.nix {};
118 elk = handleTestOn ["x86_64-linux"] ./elk.nix {};
119 engelsystem = handleTest ./engelsystem.nix {};
120 enlightenment = handleTest ./enlightenment.nix {};
121 env = handleTest ./env.nix {};
122 ergo = handleTest ./ergo.nix {};
123 etcd = handleTestOn ["x86_64-linux"] ./etcd.nix {};
124 etcd-cluster = handleTestOn ["x86_64-linux"] ./etcd-cluster.nix {};
125 etebase-server = handleTest ./etebase-server.nix {};
126 etesync-dav = handleTest ./etesync-dav.nix {};
127 fancontrol = handleTest ./fancontrol.nix {};
128 fcitx = handleTest ./fcitx {};
129 ferm = handleTest ./ferm.nix {};
130 firefox = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox; };
131 firefox-esr = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-esr; }; # used in `tested` job
132 firefox-esr-91 = handleTest ./firefox.nix { firefoxPackage = pkgs.firefox-esr-91; };
133 firejail = handleTest ./firejail.nix {};
134 firewall = handleTest ./firewall.nix {};
135 fish = handleTest ./fish.nix {};
136 flannel = handleTestOn ["x86_64-linux"] ./flannel.nix {};
137 fluentd = handleTest ./fluentd.nix {};
138 fluidd = handleTest ./fluidd.nix {};
139 fontconfig-default-fonts = handleTest ./fontconfig-default-fonts.nix {};
140 freeswitch = handleTest ./freeswitch.nix {};
141 fsck = handleTest ./fsck.nix {};
142 ft2-clone = handleTest ./ft2-clone.nix {};
143 gerrit = handleTest ./gerrit.nix {};
144 ghostunnel = handleTest ./ghostunnel.nix {};
145 gitdaemon = handleTest ./gitdaemon.nix {};
146 gitea = handleTest ./gitea.nix {};
147 gitlab = handleTest ./gitlab.nix {};
148 gitolite = handleTest ./gitolite.nix {};
149 gitolite-fcgiwrap = handleTest ./gitolite-fcgiwrap.nix {};
150 glusterfs = handleTest ./glusterfs.nix {};
151 gnome = handleTest ./gnome.nix {};
152 gnome-xorg = handleTest ./gnome-xorg.nix {};
153 go-neb = handleTest ./go-neb.nix {};
154 gobgpd = handleTest ./gobgpd.nix {};
155 gocd-agent = handleTest ./gocd-agent.nix {};
156 gocd-server = handleTest ./gocd-server.nix {};
157 google-oslogin = handleTest ./google-oslogin {};
158 gotify-server = handleTest ./gotify-server.nix {};
159 grafana = handleTest ./grafana.nix {};
160 graphite = handleTest ./graphite.nix {};
161 graylog = handleTest ./graylog.nix {};
162 grocy = handleTest ./grocy.nix {};
163 grub = handleTest ./grub.nix {};
164 gvisor = handleTest ./gvisor.nix {};
165 hadoop.all = handleTestOn [ "x86_64-linux" ] ./hadoop/hadoop.nix {};
166 hadoop.hdfs = handleTestOn [ "x86_64-linux" ] ./hadoop/hdfs.nix {};
167 hadoop.yarn = handleTestOn [ "x86_64-linux" ] ./hadoop/yarn.nix {};
168 handbrake = handleTestOn ["x86_64-linux"] ./handbrake.nix {};
169 haproxy = handleTest ./haproxy.nix {};
170 hardened = handleTest ./hardened.nix {};
171 hedgedoc = handleTest ./hedgedoc.nix {};
172 herbstluftwm = handleTest ./herbstluftwm.nix {};
173 installed-tests = pkgs.recurseIntoAttrs (handleTest ./installed-tests {});
174 invidious = handleTest ./invidious.nix {};
175 oci-containers = handleTestOn ["x86_64-linux"] ./oci-containers.nix {};
176 odoo = handleTest ./odoo.nix {};
177 # 9pnet_virtio used to mount /nix partition doesn't support
178 # hibernation. This test happens to work on x86_64-linux but
179 # not on other platforms.
180 hibernate = handleTestOn ["x86_64-linux"] ./hibernate.nix {};
181 hitch = handleTest ./hitch {};
182 hledger-web = handleTest ./hledger-web.nix {};
183 hocker-fetchdocker = handleTest ./hocker-fetchdocker {};
184 hockeypuck = handleTest ./hockeypuck.nix { };
185 home-assistant = handleTest ./home-assistant.nix {};
186 hostname = handleTest ./hostname.nix {};
187 hound = handleTest ./hound.nix {};
188 hub = handleTest ./git/hub.nix {};
189 hydra = handleTest ./hydra {};
190 i3wm = handleTest ./i3wm.nix {};
191 icingaweb2 = handleTest ./icingaweb2.nix {};
192 iftop = handleTest ./iftop.nix {};
193 ihatemoney = handleTest ./ihatemoney {};
194 incron = handleTest ./incron.nix {};
195 influxdb = handleTest ./influxdb.nix {};
196 initrd-network-openvpn = handleTest ./initrd-network-openvpn {};
197 initrd-network-ssh = handleTest ./initrd-network-ssh {};
198 initrdNetwork = handleTest ./initrd-network.nix {};
199 initrd-secrets = handleTest ./initrd-secrets.nix {};
200 inspircd = handleTest ./inspircd.nix {};
201 installer = handleTest ./installer.nix {};
202 iodine = handleTest ./iodine.nix {};
203 ipfs = handleTest ./ipfs.nix {};
204 ipv6 = handleTest ./ipv6.nix {};
205 iscsi-root = handleTest ./iscsi-root.nix {};
206 jackett = handleTest ./jackett.nix {};
207 jellyfin = handleTest ./jellyfin.nix {};
208 jenkins = handleTest ./jenkins.nix {};
209 jibri = handleTest ./jibri.nix {};
210 jirafeau = handleTest ./jirafeau.nix {};
211 jitsi-meet = handleTest ./jitsi-meet.nix {};
212 k3s = handleTest ./k3s.nix {};
213 kafka = handleTest ./kafka.nix {};
214 kbd-setfont-decompress = handleTest ./kbd-setfont-decompress.nix {};
215 kbd-update-search-paths-patch = handleTest ./kbd-update-search-paths-patch.nix {};
216 kea = handleTest ./kea.nix {};
217 keepalived = handleTest ./keepalived.nix {};
218 keepassxc = handleTest ./keepassxc.nix {};
219 kerberos = handleTest ./kerberos/default.nix {};
220 kernel-generic = handleTest ./kernel-generic.nix {};
221 kernel-latest-ath-user-regd = handleTest ./kernel-latest-ath-user-regd.nix {};
222 kexec = handleTest ./kexec.nix {};
223 keycloak = discoverTests (import ./keycloak.nix);
224 keymap = handleTest ./keymap.nix {};
225 knot = handleTest ./knot.nix {};
226 krb5 = discoverTests (import ./krb5 {});
227 ksm = handleTest ./ksm.nix {};
228 kubernetes = handleTestOn ["x86_64-linux"] ./kubernetes {};
229 latestKernel.login = handleTest ./login.nix { latestKernel = true; };
230 leaps = handleTest ./leaps.nix {};
231 libinput = handleTest ./libinput.nix {};
232 libreddit = handleTest ./libreddit.nix {};
233 libresprite = handleTest ./libresprite.nix {};
234 libreswan = handleTest ./libreswan.nix {};
235 lidarr = handleTest ./lidarr.nix {};
236 lightdm = handleTest ./lightdm.nix {};
237 limesurvey = handleTest ./limesurvey.nix {};
238 litestream = handleTest ./litestream.nix {};
239 locate = handleTest ./locate.nix {};
240 login = handleTest ./login.nix {};
241 loki = handleTest ./loki.nix {};
242 lxd = handleTest ./lxd.nix {};
243 lxd-image = handleTest ./lxd-image.nix {};
244 lxd-nftables = handleTest ./lxd-nftables.nix {};
245 lxd-image-server = handleTest ./lxd-image-server.nix {};
246 #logstash = handleTest ./logstash.nix {};
247 lorri = handleTest ./lorri/default.nix {};
248 magic-wormhole-mailbox-server = handleTest ./magic-wormhole-mailbox-server.nix {};
249 magnetico = handleTest ./magnetico.nix {};
250 mailcatcher = handleTest ./mailcatcher.nix {};
251 mailhog = handleTest ./mailhog.nix {};
252 mariadb-galera-mariabackup = handleTest ./mysql/mariadb-galera-mariabackup.nix {};
253 mariadb-galera-rsync = handleTest ./mysql/mariadb-galera-rsync.nix {};
254 matomo = handleTest ./matomo.nix {};
255 matrix-appservice-irc = handleTest ./matrix-appservice-irc.nix {};
256 matrix-synapse = handleTest ./matrix-synapse.nix {};
257 mediawiki = handleTest ./mediawiki.nix {};
258 meilisearch = handleTest ./meilisearch.nix {};
259 memcached = handleTest ./memcached.nix {};
260 metabase = handleTest ./metabase.nix {};
261 minecraft = handleTest ./minecraft.nix {};
262 minecraft-server = handleTest ./minecraft-server.nix {};
263 minidlna = handleTest ./minidlna.nix {};
264 miniflux = handleTest ./miniflux.nix {};
265 minio = handleTest ./minio.nix {};
266 misc = handleTest ./misc.nix {};
267 mjolnir = handleTest ./matrix/mjolnir.nix {};
268 mod_perl = handleTest ./mod_perl.nix {};
269 moinmoin = handleTest ./moinmoin.nix {};
270 mongodb = handleTest ./mongodb.nix {};
271 moodle = handleTest ./moodle.nix {};
272 morty = handleTest ./morty.nix {};
273 mosquitto = handleTest ./mosquitto.nix {};
274 mpd = handleTest ./mpd.nix {};
275 mpv = handleTest ./mpv.nix {};
276 mumble = handleTest ./mumble.nix {};
277 musescore = handleTest ./musescore.nix {};
278 munin = handleTest ./munin.nix {};
279 mutableUsers = handleTest ./mutable-users.nix {};
280 mxisd = handleTest ./mxisd.nix {};
281 mysql = handleTest ./mysql/mysql.nix {};
282 mysql-autobackup = handleTest ./mysql/mysql-autobackup.nix {};
283 mysql-backup = handleTest ./mysql/mysql-backup.nix {};
284 mysql-replication = handleTest ./mysql/mysql-replication.nix {};
285 n8n = handleTest ./n8n.nix {};
286 nagios = handleTest ./nagios.nix {};
287 nano = handleTest ./nano.nix {};
288 nar-serve = handleTest ./nar-serve.nix {};
289 nat.firewall = handleTest ./nat.nix { withFirewall = true; };
290 nat.firewall-conntrack = handleTest ./nat.nix { withFirewall = true; withConntrackHelpers = true; };
291 nat.standalone = handleTest ./nat.nix { withFirewall = false; };
292 nats = handleTest ./nats.nix {};
293 navidrome = handleTest ./navidrome.nix {};
294 ncdns = handleTest ./ncdns.nix {};
295 ndppd = handleTest ./ndppd.nix {};
296 nebula = handleTest ./nebula.nix {};
297 neo4j = handleTest ./neo4j.nix {};
298 netdata = handleTest ./netdata.nix {};
299 networking.networkd = handleTest ./networking.nix { networkd = true; };
300 networking.scripted = handleTest ./networking.nix { networkd = false; };
301 specialisation = handleTest ./specialisation.nix {};
302 # TODO: put in networking.nix after the test becomes more complete
303 networkingProxy = handleTest ./networking-proxy.nix {};
304 nextcloud = handleTest ./nextcloud {};
305 nexus = handleTest ./nexus.nix {};
306 # TODO: Test nfsv3 + Kerberos
307 nfs3 = handleTest ./nfs { version = 3; };
308 nfs4 = handleTest ./nfs { version = 4; };
309 nghttpx = handleTest ./nghttpx.nix {};
310 nginx = handleTest ./nginx.nix {};
311 nginx-auth = handleTest ./nginx-auth.nix {};
312 nginx-etag = handleTest ./nginx-etag.nix {};
313 nginx-pubhtml = handleTest ./nginx-pubhtml.nix {};
314 nginx-sandbox = handleTestOn ["x86_64-linux"] ./nginx-sandbox.nix {};
315 nginx-sso = handleTest ./nginx-sso.nix {};
316 nginx-variants = handleTest ./nginx-variants.nix {};
317 nitter = handleTest ./nitter.nix {};
318 nix-serve = handleTest ./nix-ssh-serve.nix {};
319 nix-ssh-serve = handleTest ./nix-ssh-serve.nix {};
320 nixops = handleTest ./nixops/default.nix {};
321 nixos-generate-config = handleTest ./nixos-generate-config.nix {};
322 node-red = handleTest ./node-red.nix {};
323 nomad = handleTest ./nomad.nix {};
324 novacomd = handleTestOn ["x86_64-linux"] ./novacomd.nix {};
325 nsd = handleTest ./nsd.nix {};
326 nzbget = handleTest ./nzbget.nix {};
327 nzbhydra2 = handleTest ./nzbhydra2.nix {};
328 oh-my-zsh = handleTest ./oh-my-zsh.nix {};
329 ombi = handleTest ./ombi.nix {};
330 openarena = handleTest ./openarena.nix {};
331 openldap = handleTest ./openldap.nix {};
332 openresty-lua = handleTest ./openresty-lua.nix {};
333 opensmtpd = handleTest ./opensmtpd.nix {};
334 opensmtpd-rspamd = handleTest ./opensmtpd-rspamd.nix {};
335 openssh = handleTest ./openssh.nix {};
336 openstack-image-metadata = (handleTestOn ["x86_64-linux"] ./openstack-image.nix {}).metadata or {};
337 openstack-image-userdata = (handleTestOn ["x86_64-linux"] ./openstack-image.nix {}).userdata or {};
338 opentabletdriver = handleTest ./opentabletdriver.nix {};
339 owncast = handleTest ./owncast.nix {};
340 image-contents = handleTest ./image-contents.nix {};
341 orangefs = handleTest ./orangefs.nix {};
342 os-prober = handleTestOn ["x86_64-linux"] ./os-prober.nix {};
343 osrm-backend = handleTest ./osrm-backend.nix {};
344 overlayfs = handleTest ./overlayfs.nix {};
345 packagekit = handleTest ./packagekit.nix {};
346 pam-oath-login = handleTest ./pam-oath-login.nix {};
347 pam-u2f = handleTest ./pam-u2f.nix {};
348 pantalaimon = handleTest ./matrix/pantalaimon.nix {};
349 pantheon = handleTest ./pantheon.nix {};
350 paperless-ng = handleTest ./paperless-ng.nix {};
351 parsedmarc = handleTest ./parsedmarc {};
352 pdns-recursor = handleTest ./pdns-recursor.nix {};
353 peerflix = handleTest ./peerflix.nix {};
354 peertube = handleTestOn ["x86_64-linux"] ./web-apps/peertube.nix {};
355 pgjwt = handleTest ./pgjwt.nix {};
356 pgmanage = handleTest ./pgmanage.nix {};
357 php = handleTest ./php {};
358 php74 = handleTest ./php { php = pkgs.php74; };
359 php80 = handleTest ./php { php = pkgs.php80; };
360 pinnwand = handleTest ./pinnwand.nix {};
361 plasma5 = handleTest ./plasma5.nix {};
362 plasma5-systemd-start = handleTest ./plasma5-systemd-start.nix {};
363 plausible = handleTest ./plausible.nix {};
364 pleroma = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./pleroma.nix {};
365 plikd = handleTest ./plikd.nix {};
366 plotinus = handleTest ./plotinus.nix {};
367 podgrab = handleTest ./podgrab.nix {};
368 podman = handleTestOn ["x86_64-linux"] ./podman.nix {};
369 podman-dnsname = handleTestOn ["x86_64-linux"] ./podman-dnsname.nix {};
370 podman-tls-ghostunnel = handleTestOn ["x86_64-linux"] ./podman-tls-ghostunnel.nix {};
371 pomerium = handleTestOn ["x86_64-linux"] ./pomerium.nix {};
372 postfix = handleTest ./postfix.nix {};
373 postfix-raise-smtpd-tls-security-level = handleTest ./postfix-raise-smtpd-tls-security-level.nix {};
374 postfixadmin = handleTest ./postfixadmin.nix {};
375 postgis = handleTest ./postgis.nix {};
376 postgresql = handleTest ./postgresql.nix {};
377 postgresql-wal-receiver = handleTest ./postgresql-wal-receiver.nix {};
378 powerdns = handleTest ./powerdns.nix {};
379 power-profiles-daemon = handleTest ./power-profiles-daemon.nix {};
380 pppd = handleTest ./pppd.nix {};
381 predictable-interface-names = handleTest ./predictable-interface-names.nix {};
382 printing = handleTest ./printing.nix {};
383 privacyidea = handleTest ./privacyidea.nix {};
384 privoxy = handleTest ./privoxy.nix {};
385 prometheus = handleTest ./prometheus.nix {};
386 prometheus-exporters = handleTest ./prometheus-exporters.nix {};
387 prosody = handleTest ./xmpp/prosody.nix {};
388 prosodyMysql = handleTest ./xmpp/prosody-mysql.nix {};
389 proxy = handleTest ./proxy.nix {};
390 prowlarr = handleTest ./prowlarr.nix {};
391 pt2-clone = handleTest ./pt2-clone.nix {};
392 qboot = handleTestOn ["x86_64-linux" "i686-linux"] ./qboot.nix {};
393 quorum = handleTest ./quorum.nix {};
394 rabbitmq = handleTest ./rabbitmq.nix {};
395 radarr = handleTest ./radarr.nix {};
396 radicale = handleTest ./radicale.nix {};
397 rasdaemon = handleTest ./rasdaemon.nix {};
398 redis = handleTest ./redis.nix {};
399 redmine = handleTest ./redmine.nix {};
400 restartByActivationScript = handleTest ./restart-by-activation-script.nix {};
401 restic = handleTest ./restic.nix {};
402 robustirc-bridge = handleTest ./robustirc-bridge.nix {};
403 roundcube = handleTest ./roundcube.nix {};
404 rspamd = handleTest ./rspamd.nix {};
405 rss2email = handleTest ./rss2email.nix {};
406 rsyslogd = handleTest ./rsyslogd.nix {};
407 rxe = handleTest ./rxe.nix {};
408 samba = handleTest ./samba.nix {};
409 samba-wsdd = handleTest ./samba-wsdd.nix {};
410 sanoid = handleTest ./sanoid.nix {};
411 sddm = handleTest ./sddm.nix {};
412 seafile = handleTest ./seafile.nix {};
413 searx = handleTest ./searx.nix {};
414 service-runner = handleTest ./service-runner.nix {};
415 shadow = handleTest ./shadow.nix {};
416 shadowsocks = handleTest ./shadowsocks {};
417 shattered-pixel-dungeon = handleTest ./shattered-pixel-dungeon.nix {};
418 shiori = handleTest ./shiori.nix {};
419 signal-desktop = handleTest ./signal-desktop.nix {};
420 simple = handleTest ./simple.nix {};
421 slurm = handleTest ./slurm.nix {};
422 smokeping = handleTest ./smokeping.nix {};
423 snapcast = handleTest ./snapcast.nix {};
424 snapper = handleTest ./snapper.nix {};
425 sogo = handleTest ./sogo.nix {};
426 solanum = handleTest ./solanum.nix {};
427 solr = handleTest ./solr.nix {};
428 sonarr = handleTest ./sonarr.nix {};
429 spacecookie = handleTest ./spacecookie.nix {};
430 spark = handleTestOn ["x86_64-linux"] ./spark {};
431 sslh = handleTest ./sslh.nix {};
432 sssd = handleTestOn ["x86_64-linux"] ./sssd.nix {};
433 sssd-ldap = handleTestOn ["x86_64-linux"] ./sssd-ldap.nix {};
434 strongswan-swanctl = handleTest ./strongswan-swanctl.nix {};
435 sudo = handleTest ./sudo.nix {};
436 sway = handleTest ./sway.nix {};
437 switchTest = handleTest ./switch-test.nix {};
438 sympa = handleTest ./sympa.nix {};
439 syncthing = handleTest ./syncthing.nix {};
440 syncthing-init = handleTest ./syncthing-init.nix {};
441 syncthing-relay = handleTest ./syncthing-relay.nix {};
442 systemd = handleTest ./systemd.nix {};
443 systemd-analyze = handleTest ./systemd-analyze.nix {};
444 systemd-binfmt = handleTestOn ["x86_64-linux"] ./systemd-binfmt.nix {};
445 systemd-boot = handleTest ./systemd-boot.nix {};
446 systemd-confinement = handleTest ./systemd-confinement.nix {};
447 systemd-cryptenroll = handleTest ./systemd-cryptenroll.nix {};
448 systemd-journal = handleTest ./systemd-journal.nix {};
449 systemd-networkd = handleTest ./systemd-networkd.nix {};
450 systemd-networkd-dhcpserver = handleTest ./systemd-networkd-dhcpserver.nix {};
451 systemd-networkd-ipv6-prefix-delegation = handleTest ./systemd-networkd-ipv6-prefix-delegation.nix {};
452 systemd-networkd-vrf = handleTest ./systemd-networkd-vrf.nix {};
453 systemd-nspawn = handleTest ./systemd-nspawn.nix {};
454 systemd-timesyncd = handleTest ./systemd-timesyncd.nix {};
455 systemd-unit-path = handleTest ./systemd-unit-path.nix {};
456 taskserver = handleTest ./taskserver.nix {};
457 telegraf = handleTest ./telegraf.nix {};
458 tiddlywiki = handleTest ./tiddlywiki.nix {};
459 tigervnc = handleTest ./tigervnc.nix {};
460 timezone = handleTest ./timezone.nix {};
461 tinc = handleTest ./tinc {};
462 tinydns = handleTest ./tinydns.nix {};
463 tor = handleTest ./tor.nix {};
464 trac = handleTest ./trac.nix {};
465 # traefik test relies on docker-containers
466 traefik = handleTestOn ["x86_64-linux"] ./traefik.nix {};
467 trafficserver = handleTest ./trafficserver.nix {};
468 transmission = handleTest ./transmission.nix {};
469 trezord = handleTest ./trezord.nix {};
470 trickster = handleTest ./trickster.nix {};
471 trilium-server = handleTestOn ["x86_64-linux"] ./trilium-server.nix {};
472 txredisapi = handleTest ./txredisapi.nix {};
473 tuptime = handleTest ./tuptime.nix {};
474 turbovnc-headless-server = handleTest ./turbovnc-headless-server.nix {};
475 tuxguitar = handleTest ./tuxguitar.nix {};
476 ucarp = handleTest ./ucarp.nix {};
477 udisks2 = handleTest ./udisks2.nix {};
478 unbound = handleTest ./unbound.nix {};
479 unit-php = handleTest ./web-servers/unit-php.nix {};
480 upnp = handleTest ./upnp.nix {};
481 usbguard = handleTest ./usbguard.nix {};
482 user-activation-scripts = handleTest ./user-activation-scripts.nix {};
483 uwsgi = handleTest ./uwsgi.nix {};
484 v2ray = handleTest ./v2ray.nix {};
485 vault = handleTest ./vault.nix {};
486 vault-postgresql = handleTest ./vault-postgresql.nix {};
487 vaultwarden = handleTest ./vaultwarden.nix {};
488 vector = handleTest ./vector.nix {};
489 victoriametrics = handleTest ./victoriametrics.nix {};
490 vikunja = handleTest ./vikunja.nix {};
491 virtualbox = handleTestOn ["x86_64-linux"] ./virtualbox.nix {};
492 vscodium = discoverTests (import ./vscodium.nix);
493 wasabibackend = handleTest ./wasabibackend.nix {};
494 wiki-js = handleTest ./wiki-js.nix {};
495 wireguard = handleTest ./wireguard {};
496 without-nix = handleTest ./without-nix.nix {};
497 wmderland = handleTest ./wmderland.nix {};
498 wpa_supplicant = handleTest ./wpa_supplicant.nix {};
499 wordpress = handleTest ./wordpress.nix {};
500 xandikos = handleTest ./xandikos.nix {};
501 xautolock = handleTest ./xautolock.nix {};
502 xfce = handleTest ./xfce.nix {};
503 xmonad = handleTest ./xmonad.nix {};
504 xrdp = handleTest ./xrdp.nix {};
505 xss-lock = handleTest ./xss-lock.nix {};
506 xterm = handleTest ./xterm.nix {};
507 yabar = handleTest ./yabar.nix {};
508 yggdrasil = handleTest ./yggdrasil.nix {};
509 zfs = handleTest ./zfs.nix {};
510 zigbee2mqtt = handleTest ./zigbee2mqtt.nix {};
511 zoneminder = handleTest ./zoneminder.nix {};
512 zookeeper = handleTest ./zookeeper.nix {};
513 zsh-history = handleTest ./zsh-history.nix {};
514}