nixpkgs/nixos/tests/all-tests.nix

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

1507 lines
66 KiB
Nix
Raw Normal View History

{
system,
pkgs,
# Projects the test configuration into a the desired value; usually
# the test runner: `config: config.test`.
callTest,
}:
# The return value of this function will be an attrset with arbitrary depth and
2025-04-06 11:32:43 -07:00
# the `anything` returned by callTest at its test leaves.
# The tests not supported by `system` will be replaced with `{}`, so that
# `passthru.tests` can contain links to those without breaking on architectures
# where said tests are unsupported.
# Example callTest that just extracts the derivation from the test:
# callTest = t: t.test;
with pkgs.lib;
let
discoverTests =
val:
if isAttrs val then
if hasAttr "test" val then
callTest val
else
mapAttrs (n: s: if n == "passthru" then s else discoverTests s) val
else if isFunction val then
# Tests based on make-test-python.nix will return the second lambda
# in that file, which are then forwarded to the test definition
# following the `import make-test-python.nix` expression
# (if it is a function).
discoverTests (val {
inherit system pkgs;
})
else
val;
2025-02-21 10:14:58 +01:00
/**
Evaluate a test and return a derivation that runs the test as its builder.
This function is deprecated in favor of runTest and runTestOn, which works
by passing a module instead of a specific set of arguments.
Benefits of runTest and runTestOn:
- Define values for any test option
- Use imports to compose tests
- Access the module arguments like hostPkgs and config.node.pkgs
- Portable to other VM hosts, specifically Darwin
- Faster evaluation, using a single `pkgs` instance
Changes required to migrate to runTest:
- Remove any `import ../make-test-python.nix` or similar calls, leaving only
the callback function.
- Convert the function header to make it a module.
Packages can be taken from the following. For VM host portability, use
- `config.node.pkgs.<name>` or `config.nodes.foo.nixpkgs.pkgs.<name>` to refer
to the Nixpkgs used on the VM guest(s).
- `hostPkgs.<name>` when invoking commands on the VM host (e.g. in Python
`os.system("foo")`)
- Since the runTest argument is a module instead of a function, arguments
must be passed as option definitions.
You may declare explicit `options` for the test parameter(s), or use the
less explicit `_module.args.<name>` to pass arguments to the module.
Example call with arguments:
runTest {
imports = [ ./test.nix ];
_module.args.getPackage = pkgs: pkgs.foo_1_2;
}
- If your test requires any definitions in `nixpkgs.*` options, set
`node.pkgsReadOnly = false` in the test configuration.
*/
handleTest = path: args: discoverTests (import path ({ inherit system pkgs; } // args));
2025-02-21 10:14:58 +01:00
/**
See handleTest
*/
handleTestOn =
systems: path: args:
if elem system systems then handleTest path args else { };
nixosLib = import ../lib {
# Experimental features need testing too, but there's no point in warning
# about it, so we enable the feature flag.
featureFlags.minimalModules = { };
};
evalMinimalConfig = module: nixosLib.evalModules { modules = [ module ]; };
inherit
(rec {
doRunTest =
arg:
((import ../lib/testing-python.nix { inherit system pkgs; }).evalTest {
imports = [
arg
readOnlyPkgs
];
}).config.result;
findTests =
tree:
if tree ? recurseForDerivations && tree.recurseForDerivations then
mapAttrs (k: findTests) (builtins.removeAttrs tree [ "recurseForDerivations" ])
else
callTest tree;
runTest =
arg:
let
r = doRunTest arg;
in
findTests r;
runTestOn = systems: arg: if elem system systems then runTest arg else { };
})
2025-02-21 10:14:58 +01:00
/**
See https://nixos.org/manual/nixos/unstable/#sec-calling-nixos-tests
*/
runTest
2025-02-21 10:14:58 +01:00
/**
See https://nixos.org/manual/nixos/unstable/#sec-calling-nixos-tests
*/
runTestOn
;
# Using a single instance of nixpkgs makes test evaluation faster.
# To make sure we don't accidentally depend on a modified pkgs, we make the
# related options read-only. We need to test the right configuration.
#
# If your service depends on a nixpkgs setting, first try to avoid that, but
# otherwise, you can remove the readOnlyPkgs import and test your service as
# usual.
readOnlyPkgs =
# TODO: We currently accept this for nixosTests, so that the `pkgs` argument
# is consistent with `pkgs` in `pkgs.nixosTests`. Can we reinitialize
# it with `allowAliases = false`?
# warnIf pkgs.config.allowAliases "nixosTests: pkgs includes aliases."
{
_file = "${__curPos.file} readOnlyPkgs";
_class = "nixosTest";
node.pkgs = pkgs.pkgsLinux;
};
in
{
# Testing the test driver
nixos-test-driver = {
extra-python-packages = handleTest ./nixos-test-driver/extra-python-packages.nix { };
lib-extend = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./nixos-test-driver/lib-extend.nix { };
node-name = runTest ./nixos-test-driver/node-name.nix;
busybox = runTest ./nixos-test-driver/busybox.nix;
driver-timeout =
pkgs.runCommand "ensure-timeout-induced-failure"
{
failed = pkgs.testers.testBuildFailure (
(runTest ./nixos-test-driver/timeout.nix).config.rawTestDerivation
);
}
''
grep -F "timeout reached; test terminating" $failed/testBuildFailure.log
# The program will always be terminated by SIGTERM (143) if it waits for the deadline thread.
[[ 143 = $(cat $failed/testBuildFailure.exit) ]]
touch $out
'';
};
# NixOS vm tests and non-vm unit tests
_3proxy = runTest ./3proxy.nix;
aaaaxy = runTest ./aaaaxy.nix;
acme = import ./acme/default.nix { inherit runTest; };
acme-dns = runTest ./acme-dns.nix;
actual = runTest ./actual.nix;
adguardhome = runTest ./adguardhome.nix;
aesmd = runTestOn [ "x86_64-linux" ] ./aesmd.nix;
agate = runTest ./web-servers/agate.nix;
agda = runTest ./agda.nix;
2025-02-16 09:49:59 -08:00
age-plugin-tpm-decrypt = runTest ./age-plugin-tpm-decrypt.nix;
2023-02-27 00:17:06 +02:00
agnos = discoverTests (import ./agnos.nix);
2024-10-14 23:25:16 +02:00
agorakit = runTest ./web-apps/agorakit.nix;
airsonic = runTest ./airsonic.nix;
akkoma = runTestOn [ "x86_64-linux" "aarch64-linux" ] {
imports = [ ./akkoma.nix ];
_module.args.confined = false;
};
akkoma-confined = runTestOn [ "x86_64-linux" "aarch64-linux" ] {
imports = [ ./akkoma.nix ];
_module.args.confined = true;
};
alice-lg = runTest ./alice-lg.nix;
alloy = runTest ./alloy.nix;
allTerminfo = runTest ./all-terminfo.nix;
alps = runTest ./alps.nix;
amazon-cloudwatch-agent = runTest ./amazon-cloudwatch-agent.nix;
amazon-init-shell = runTest ./amazon-init-shell.nix;
amazon-ssm-agent = runTest ./amazon-ssm-agent.nix;
2023-08-10 20:42:41 +02:00
amd-sev = runTest ./amd-sev.nix;
angie-api = runTest ./angie-api.nix;
anki-sync-server = runTest ./anki-sync-server.nix;
2025-03-22 14:03:09 +08:00
anubis = runTest ./anubis.nix;
anuko-time-tracker = runTest ./anuko-time-tracker.nix;
apcupsd = runTest ./apcupsd.nix;
apfs = runTest ./apfs.nix;
appliance-repart-image = runTest ./appliance-repart-image.nix;
appliance-repart-image-verity-store = runTest ./appliance-repart-image-verity-store.nix;
apparmor = runTest ./apparmor;
archi = runTest ./archi.nix;
aria2 = runTest ./aria2.nix;
armagetronad = runTest ./armagetronad.nix;
2024-11-21 12:52:14 +08:00
artalk = runTest ./artalk.nix;
atd = runTest ./atd.nix;
atop = import ./atop.nix { inherit pkgs runTest; };
atticd = runTest ./atticd.nix;
atuin = runTest ./atuin.nix;
2025-04-15 23:16:23 +00:00
ax25 = handleTest ./ax25.nix { };
audiobookshelf = runTest ./audiobookshelf.nix;
auth-mysql = runTest ./auth-mysql.nix;
authelia = runTest ./authelia.nix;
auto-cpufreq = runTest ./auto-cpufreq.nix;
autobrr = runTest ./autobrr.nix;
avahi = runTest {
imports = [ ./avahi.nix ];
_module.args.networkd = false;
};
avahi-with-resolved = runTest {
imports = [ ./avahi.nix ];
_module.args.networkd = true;
};
ayatana-indicators = runTest ./ayatana-indicators.nix;
babeld = runTest ./babeld.nix;
bazarr = runTest ./bazarr.nix;
bcachefs = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./bcachefs.nix;
beanstalkd = runTest ./beanstalkd.nix;
bees = runTest ./bees.nix;
2024-05-17 21:19:41 +02:00
benchexec = handleTest ./benchexec.nix { };
binary-cache = runTest {
imports = [ ./binary-cache.nix ];
_module.args.compression = "zstd";
};
binary-cache-no-compression = runTest {
imports = [ ./binary-cache.nix ];
_module.args.compression = "none";
};
binary-cache-xz = runTest {
imports = [ ./binary-cache.nix ];
_module.args.compression = "xz";
};
bind = runTest ./bind.nix;
2022-01-25 15:15:52 +01:00
bird = handleTest ./bird.nix { };
2023-04-12 09:20:16 +02:00
birdwatcher = handleTest ./birdwatcher.nix { };
bitbox-bridge = runTest ./bitbox-bridge.nix;
2020-07-21 13:43:32 +02:00
bitcoind = handleTest ./bitcoind.nix { };
bittorrent = handleTest ./bittorrent.nix { };
2020-06-23 13:09:03 +02:00
blockbook-frontend = handleTest ./blockbook-frontend.nix { };
2022-02-10 19:44:18 -03:00
blocky = handleTest ./blocky.nix { };
2021-05-25 21:13:29 +03:00
boot = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./boot.nix { };
bootspec = handleTestOn [ "x86_64-linux" ] ./bootspec.nix { };
boot-stage1 = handleTest ./boot-stage1.nix { };
boot-stage2 = handleTest ./boot-stage2.nix { };
borgbackup = handleTest ./borgbackup.nix { };
2024-03-02 12:24:17 +01:00
borgmatic = handleTest ./borgmatic.nix { };
botamusique = runTest ./botamusique.nix;
bpf = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./bpf.nix { };
2023-06-29 10:43:06 +08:00
bpftune = handleTest ./bpftune.nix { };
2022-01-26 14:03:05 +01:00
breitbandmessung = handleTest ./breitbandmessung.nix { };
brscan5 = handleTest ./brscan5.nix { };
2021-05-30 12:00:00 +00:00
btrbk = handleTest ./btrbk.nix { };
2022-10-02 12:42:57 +02:00
btrbk-doas = handleTest ./btrbk-doas.nix { };
btrbk-no-timer = handleTest ./btrbk-no-timer.nix { };
btrbk-section-order = handleTest ./btrbk-section-order.nix { };
budgie = handleTest ./budgie.nix { };
buildbot = runTest ./buildbot.nix;
2020-11-29 20:00:38 -03:00
buildkite-agents = handleTest ./buildkite-agents.nix { };
c2fmzq = handleTest ./c2fmzq.nix { };
caddy = runTest ./caddy.nix;
cadvisor = handleTestOn [ "x86_64-linux" ] ./cadvisor.nix { };
cage = handleTest ./cage.nix { };
cagebreak = handleTest ./cagebreak.nix { };
calibre-web = runTest ./calibre-web.nix;
calibre-server = import ./calibre-server.nix { inherit pkgs runTest; };
canaille = handleTest ./canaille.nix { };
2023-04-07 16:36:13 +03:00
castopod = handleTest ./castopod.nix { };
2020-12-09 13:01:56 +01:00
cassandra_3_0 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_3_0; };
cassandra_3_11 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_3_11; };
2022-04-06 13:03:07 +02:00
cassandra_4 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_4; };
2023-08-15 06:34:32 +03:00
centrifugo = runTest ./centrifugo.nix;
ceph-multi-node = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./ceph-multi-node.nix { };
ceph-single-node = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./ceph-single-node.nix { };
ceph-single-node-bluestore = handleTestOn [
"aarch64-linux"
"x86_64-linux"
] ./ceph-single-node-bluestore.nix { };
ceph-single-node-bluestore-dmcrypt = handleTestOn [
"aarch64-linux"
"x86_64-linux"
] ./ceph-single-node-bluestore-dmcrypt.nix { };
certmgr = handleTest ./certmgr.nix { };
cfssl = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./cfssl.nix { };
cgit = runTest ./cgit.nix;
charliecloud = handleTest ./charliecloud.nix { };
2024-08-16 18:14:15 +02:00
chromadb = runTest ./chromadb.nix;
chromium = (handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./chromium.nix { }).stable or { };
2023-08-10 02:02:33 +02:00
chrony = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./chrony.nix { };
2023-01-15 14:06:58 +01:00
chrony-ptp = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./chrony-ptp.nix { };
2022-09-05 15:40:17 +08:00
cinnamon = handleTest ./cinnamon.nix { };
2023-11-20 00:10:36 +08:00
cinnamon-wayland = handleTest ./cinnamon-wayland.nix { };
cjdns = handleTest ./cjdns.nix { };
clatd = runTest ./clatd.nix;
clickhouse = handleTest ./clickhouse.nix { };
cloud-init = handleTest ./cloud-init.nix { };
cloud-init-hostname = handleTest ./cloud-init-hostname.nix { };
2023-01-01 23:19:37 +00:00
cloudlog = handleTest ./cloudlog.nix { };
cntr = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./cntr.nix { };
cockpit = handleTest ./cockpit.nix { };
2020-11-29 20:00:38 -03:00
cockroachdb = handleTestOn [ "x86_64-linux" ] ./cockroachdb.nix { };
code-server = handleTest ./code-server.nix { };
2022-10-24 20:08:00 +00:00
coder = handleTest ./coder.nix { };
2021-12-22 12:00:00 +00:00
collectd = handleTest ./collectd.nix { };
2024-04-15 13:57:37 +02:00
commafeed = handleTest ./commafeed.nix { };
2023-01-26 00:22:21 +01:00
connman = handleTest ./connman.nix { };
2019-11-24 15:08:53 +01:00
consul = handleTest ./consul.nix { };
2023-04-25 16:54:08 +02:00
consul-template = handleTest ./consul-template.nix { };
containers-bridge = handleTest ./containers-bridge.nix { };
containers-custom-pkgs.nix = handleTest ./containers-custom-pkgs.nix { };
containers-ephemeral = handleTest ./containers-ephemeral.nix { };
containers-extra_veth = handleTest ./containers-extra_veth.nix { };
containers-hosts = handleTest ./containers-hosts.nix { };
containers-imperative = handleTest ./containers-imperative.nix { };
containers-ip = handleTest ./containers-ip.nix { };
containers-macvlans = handleTest ./containers-macvlans.nix { };
containers-names = handleTest ./containers-names.nix { };
2021-02-24 14:02:57 +01:00
containers-nested = handleTest ./containers-nested.nix { };
containers-physical_interfaces = handleTest ./containers-physical_interfaces.nix { };
containers-portforward = handleTest ./containers-portforward.nix { };
containers-reloadable = handleTest ./containers-reloadable.nix { };
containers-require-bind-mounts = handleTest ./containers-require-bind-mounts.nix { };
containers-restart_networking = handleTest ./containers-restart_networking.nix { };
containers-tmpfs = handleTest ./containers-tmpfs.nix { };
containers-unified-hierarchy = handleTest ./containers-unified-hierarchy.nix { };
2020-06-05 14:54:29 +02:00
convos = handleTest ./convos.nix { };
2020-01-07 11:52:32 -05:00
corerad = handleTest ./corerad.nix { };
2025-04-06 13:22:49 +05:30
cosmic = runTest {
imports = [ ./cosmic.nix ];
_module.args.testName = "cosmic";
_module.args.enableAutologin = false;
_module.args.enableXWayland = true;
};
2025-04-06 13:23:14 +05:30
cosmic-autologin = runTest {
imports = [ ./cosmic.nix ];
_module.args.testName = "cosmic-autologin";
_module.args.enableAutologin = true;
_module.args.enableXWayland = true;
};
2025-04-06 13:23:43 +05:30
cosmic-noxwayland = runTest {
imports = [ ./cosmic.nix ];
_module.args.testName = "cosmic-noxwayland";
_module.args.enableAutologin = false;
_module.args.enableXWayland = false;
};
cosmic-autologin-noxwayland = runTest {
imports = [ ./cosmic.nix ];
_module.args.testName = "cosmic-autologin-noxwayland";
_module.args.enableAutologin = true;
_module.args.enableXWayland = false;
};
coturn = handleTest ./coturn.nix { };
couchdb = handleTest ./couchdb.nix { };
2024-04-02 12:16:53 +02:00
crabfit = handleTest ./crabfit.nix { };
cri-o = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./cri-o.nix { };
cryptpad = runTest ./cryptpad.nix;
cups-pdf = runTest ./cups-pdf.nix;
2023-07-21 14:37:48 -04:00
curl-impersonate = handleTest ./curl-impersonate.nix { };
custom-ca = handleTest ./custom-ca.nix { };
2020-07-22 10:34:57 +02:00
croc = handleTest ./croc.nix { };
2025-02-23 17:35:38 +00:00
cross-seed = runTest ./cross-seed.nix;
cyrus-imap = runTest ./cyrus-imap.nix;
2023-05-01 17:39:19 -06:00
darling = handleTest ./darling.nix { };
2024-07-01 21:42:50 +02:00
darling-dmg = runTest ./darling-dmg.nix;
2023-09-03 02:30:30 +08:00
dae = handleTest ./dae.nix { };
davis = runTest ./davis.nix;
2023-11-14 21:58:11 +01:00
db-rest = handleTest ./db-rest.nix { };
2023-06-14 16:27:19 +08:00
dconf = handleTest ./dconf.nix { };
ddns-updater = handleTest ./ddns-updater.nix { };
2023-09-17 20:04:28 +02:00
deconz = handleTest ./deconz.nix { };
2023-04-25 11:34:09 +08:00
deepin = handleTest ./deepin.nix { };
deluge = handleTest ./deluge.nix { };
dendrite = handleTest ./matrix/dendrite.nix { };
2024-07-20 21:25:05 +02:00
dependency-track = handleTest ./dependency-track.nix { };
devpi-server = handleTest ./devpi-server.nix { };
2021-09-20 01:43:54 +02:00
dex-oidc = handleTest ./dex-oidc.nix { };
dhparams = handleTest ./dhparams.nix { };
disable-installer-tools = handleTest ./disable-installer-tools.nix { };
2021-03-14 15:44:34 +01:00
discourse = handleTest ./discourse.nix { };
dnscrypt-proxy2 = handleTestOn [ "x86_64-linux" ] ./dnscrypt-proxy2.nix { };
dnsdist = import ./dnsdist.nix { inherit pkgs runTest; };
doas = runTest ./doas.nix;
docker = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./docker.nix;
docker-rootless = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./docker-rootless.nix;
docker-registry = runTest ./docker-registry.nix;
docker-tools = handleTestOn [ "x86_64-linux" ] ./docker-tools.nix { };
docker-tools-nix-shell = runTest ./docker-tools-nix-shell.nix;
docker-tools-cross = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./docker-tools-cross.nix;
docker-tools-overlay = runTestOn [ "x86_64-linux" ] ./docker-tools-overlay.nix;
2025-04-01 09:26:12 +02:00
docling-serve = runTest ./docling-serve.nix;
documize = handleTest ./documize.nix { };
2022-07-14 11:57:37 +02:00
documentation = pkgs.callPackage ../modules/misc/documentation/test.nix { inherit nixosLib; };
doh-proxy-rust = handleTest ./doh-proxy-rust.nix { };
dokuwiki = runTest ./dokuwiki.nix;
dolibarr = runTest ./dolibarr.nix;
2021-11-13 23:00:20 +01:00
domination = handleTest ./domination.nix { };
dovecot = handleTest ./dovecot.nix { };
2023-12-23 15:53:20 -06:00
drawterm = discoverTests (import ./drawterm.nix);
2021-11-30 21:42:29 +01:00
drbd = handleTest ./drbd.nix { };
2024-03-14 00:12:18 +05:30
druid = handleTestOn [ "x86_64-linux" ] ./druid { };
drbd-driver = handleTest ./drbd-driver.nix { };
2023-11-27 09:45:10 -08:00
dublin-traceroute = handleTest ./dublin-traceroute.nix { };
earlyoom = handleTestOn [ "x86_64-linux" ] ./earlyoom.nix { };
2023-04-25 13:07:08 +02:00
early-mount-options = handleTest ./early-mount-options.nix { };
ec2-config = (handleTestOn [ "x86_64-linux" ] ./ec2.nix { }).boot-ec2-config or { };
ec2-nixops = (handleTestOn [ "x86_64-linux" ] ./ec2.nix { }).boot-ec2-nixops or { };
2025-03-06 02:00:59 +01:00
echoip = runTest ./echoip.nix;
ecryptfs = handleTest ./ecryptfs.nix { };
fscrypt = handleTest ./fscrypt.nix { };
2023-10-18 04:13:16 +02:00
fastnetmon-advanced = runTest ./fastnetmon-advanced.nix;
2024-07-03 11:24:22 +02:00
eintopf = handleTest ./eintopf.nix { };
ejabberd = handleTest ./xmpp/ejabberd.nix { };
elk = handleTestOn [ "x86_64-linux" ] ./elk.nix { };
emacs-daemon = runTest ./emacs-daemon.nix;
2022-10-22 15:53:35 +03:00
endlessh = handleTest ./endlessh.nix { };
2022-09-23 23:39:38 +03:00
endlessh-go = handleTest ./endlessh-go.nix { };
2020-05-24 14:20:58 +02:00
engelsystem = handleTest ./engelsystem.nix { };
enlightenment = handleTest ./enlightenment.nix { };
env = handleTest ./env.nix { };
2022-12-28 15:09:54 +01:00
envfs = handleTest ./envfs.nix { };
2025-03-31 17:17:52 -04:00
envoy = runTest {
imports = [ ./envoy.nix ];
_module.args.envoyPackage = pkgs.envoy;
};
2025-03-31 17:17:52 -04:00
envoy-bin = runTest {
imports = [ ./envoy.nix ];
_module.args.envoyPackage = pkgs.envoy-bin;
};
2020-05-24 20:39:23 +02:00
ergo = handleTest ./ergo.nix { };
2022-01-12 21:47:27 +01:00
ergochat = handleTest ./ergochat.nix { };
2023-07-29 11:20:37 +01:00
eris-server = handleTest ./eris-server.nix { };
2023-03-22 22:48:59 +01:00
esphome = handleTest ./esphome.nix { };
etc = pkgs.callPackage ../modules/system/etc/test.nix { inherit evalMinimalConfig; };
activation = pkgs.callPackage ../modules/system/activation/test.nix { };
activation-lib = pkgs.callPackage ../modules/system/activation/lib/test.nix { };
activation-var = runTest ./activation/var.nix;
activation-nix-channel = runTest ./activation/nix-channel.nix;
activation-etc-overlay-mutable = runTest ./activation/etc-overlay-mutable.nix;
activation-etc-overlay-immutable = runTest ./activation/etc-overlay-immutable.nix;
2023-10-17 16:40:26 +02:00
activation-perlless = runTest ./activation/perlless.nix;
etcd = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./etcd/etcd.nix { };
etcd-cluster = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./etcd/etcd-cluster.nix { };
2021-03-28 23:49:45 +02:00
etebase-server = handleTest ./etebase-server.nix { };
2020-11-30 22:10:07 +01:00
etesync-dav = handleTest ./etesync-dav.nix { };
2025-02-22 02:27:12 +01:00
evcc = runTest ./evcc.nix;
fail2ban = runTest ./fail2ban.nix;
2023-06-18 02:59:06 +02:00
fakeroute = handleTest ./fakeroute.nix { };
fancontrol = runTest ./fancontrol.nix;
2023-07-25 12:45:54 -05:00
fanout = handleTest ./fanout.nix { };
2023-03-12 14:19:03 +08:00
fcitx5 = handleTest ./fcitx5 { };
2024-06-26 22:17:12 -07:00
fedimintd = runTest ./fedimintd.nix;
fenics = handleTest ./fenics.nix { };
ferm = handleTest ./ferm.nix { };
2023-10-15 10:40:11 +02:00
ferretdb = handleTest ./ferretdb.nix { };
fider = runTest ./fider.nix;
2024-05-21 19:27:45 +03:00
filesender = handleTest ./filesender.nix { };
2024-02-03 22:40:40 +01:00
filesystems-overlayfs = runTest ./filesystems-overlayfs.nix;
firefly-iii = runTest ./firefly-iii.nix;
firefly-iii-data-importer = runTest ./firefly-iii-data-importer.nix;
firefox = runTest {
imports = [ ./firefox.nix ];
_module.args.firefoxPackage = pkgs.firefox;
};
firefox-beta = runTest {
imports = [ ./firefox.nix ];
_module.args.firefoxPackage = pkgs.firefox-beta;
};
firefox-devedition = runTest {
imports = [ ./firefox.nix ];
_module.args.firefoxPackage = pkgs.firefox-devedition;
};
firefox-esr = runTest {
# used in `tested` job
imports = [ ./firefox.nix ];
_module.args.firefoxPackage = pkgs.firefox-esr;
};
firefox-esr-128 = runTest {
imports = [ ./firefox.nix ];
_module.args.firefoxPackage = pkgs.firefox-esr-128;
};
firefoxpwa = handleTest ./firefoxpwa.nix { };
2020-08-07 18:45:20 +02:00
firejail = handleTest ./firejail.nix { };
firewall = handleTest ./firewall.nix { nftables = false; };
firewall-nftables = handleTest ./firewall.nix { nftables = true; };
2024-12-21 22:27:11 +02:00
fish = runTest ./fish.nix;
2025-01-21 02:09:45 +01:00
firezone = handleTest ./firezone/firezone.nix { };
flannel = handleTestOn [ "x86_64-linux" ] ./flannel.nix { };
2024-07-05 23:06:17 +03:00
flaresolverr = handleTest ./flaresolverr.nix { };
2024-06-05 15:14:56 -03:00
flood = handleTest ./flood.nix { };
floorp = runTest {
imports = [ ./firefox.nix ];
_module.args.firefoxPackage = pkgs.floorp;
};
fluent-bit = runTest ./fluent-bit.nix;
2019-07-30 00:35:27 +09:00
fluentd = handleTest ./fluentd.nix { };
fluidd = handleTest ./fluidd.nix { };
fontconfig-default-fonts = handleTest ./fontconfig-default-fonts.nix { };
forgejo = import ./forgejo.nix {
inherit runTest;
forgejoPackage = pkgs.forgejo;
};
forgejo-lts = import ./forgejo.nix {
inherit runTest;
forgejoPackage = pkgs.forgejo-lts;
};
freenet = runTest ./freenet.nix;
2020-01-07 16:53:34 +02:00
freeswitch = handleTest ./freeswitch.nix { };
freetube = discoverTests (import ./freetube.nix);
2025-01-09 23:18:07 +01:00
freshrss = handleTest ./freshrss { };
frigate = runTest ./frigate.nix;
2025-03-23 16:23:27 +01:00
froide-govplan = runTest ./web-apps/froide-govplan.nix;
frp = handleTest ./frp.nix { };
frr = handleTest ./frr.nix { };
fsck = handleTest ./fsck.nix { };
2022-12-20 23:05:02 -05:00
fsck-systemd-stage-1 = handleTest ./fsck.nix { systemdStage1 = true; };
2020-07-29 19:40:38 +02:00
ft2-clone = handleTest ./ft2-clone.nix { };
2023-05-24 09:48:02 -03:00
legit = handleTest ./legit.nix { };
2022-06-07 06:53:15 -04:00
mimir = handleTest ./mimir.nix { };
2024-05-03 10:35:19 +02:00
gancio = handleTest ./gancio.nix { };
garage = handleTest ./garage { };
2024-09-19 21:34:10 +02:00
gatus = runTest ./gatus.nix;
2022-08-11 20:10:58 +10:00
gemstash = handleTest ./gemstash.nix { };
geoclue2 = runTest ./geoclue2.nix;
2023-11-17 23:29:45 +01:00
geoserver = runTest ./geoserver.nix;
gerrit = runTest ./gerrit.nix;
geth = handleTest ./geth.nix { };
2021-05-20 01:15:28 +02:00
ghostunnel = handleTest ./ghostunnel.nix { };
gitdaemon = handleTest ./gitdaemon.nix { };
gitea = handleTest ./gitea.nix { giteaPackage = pkgs.gitea; };
github-runner = runTest ./github-runner.nix;
gitlab = runTest ./gitlab.nix;
gitolite = handleTest ./gitolite.nix { };
gitolite-fcgiwrap = handleTest ./gitolite-fcgiwrap.nix { };
2024-07-01 09:32:41 +02:00
glance = runTest ./glance.nix;
2024-04-01 22:44:08 +02:00
glances = runTest ./glances.nix;
glitchtip = runTest ./glitchtip.nix;
2019-08-17 01:28:43 +02:00
glusterfs = handleTest ./glusterfs.nix { };
gnome = runTest ./gnome.nix;
2023-10-15 15:57:54 +02:00
gnome-extensions = handleTest ./gnome-extensions.nix { };
2022-12-28 22:45:22 +01:00
gnome-flashback = handleTest ./gnome-flashback.nix { };
gnome-xorg = handleTest ./gnome-xorg.nix { };
2023-10-22 23:04:25 +02:00
gns3-server = handleTest ./gns3-server.nix { };
2023-02-02 18:17:40 +01:00
gnupg = handleTest ./gnupg.nix { };
2024-07-15 00:44:11 +05:30
goatcounter = handleTest ./goatcounter.nix { };
2025-02-24 15:26:44 +01:00
go-camo = handleTest ./go-camo.nix { };
go-neb = runTest ./go-neb.nix;
2021-04-09 14:57:33 +00:00
gobgpd = handleTest ./gobgpd.nix { };
gocd-agent = handleTest ./gocd-agent.nix { };
gocd-server = handleTest ./gocd-server.nix { };
gokapi = runTest ./gokapi.nix;
2022-09-10 18:01:37 +02:00
gollum = handleTest ./gollum.nix { };
2022-12-21 01:08:48 +01:00
gonic = handleTest ./gonic.nix { };
2019-05-16 21:29:17 -04:00
google-oslogin = handleTest ./google-oslogin { };
gopro-tool = handleTest ./gopro-tool.nix { };
2023-10-25 13:54:47 +02:00
goss = handleTest ./goss.nix { };
2024-07-11 03:07:40 -04:00
gotenberg = handleTest ./gotenberg.nix { };
2020-11-29 20:00:38 -03:00
gotify-server = handleTest ./gotify-server.nix { };
gotosocial = runTest ./web-apps/gotosocial.nix;
grafana = handleTest ./grafana { };
graphite = handleTest ./graphite.nix { };
2024-11-10 09:53:20 +01:00
grav = runTest ./web-apps/grav.nix;
graylog = handleTest ./graylog.nix { };
greetd-no-shadow = handleTest ./greetd-no-shadow.nix { };
grocy = runTest ./grocy.nix;
2023-10-16 16:58:19 +00:00
grow-partition = runTest ./grow-partition.nix;
grub = handleTest ./grub.nix { };
2023-06-16 19:12:42 +02:00
guacamole-server = handleTest ./guacamole-server.nix { };
2023-10-29 14:44:03 +08:00
guix = handleTest ./guix { };
gvisor = handleTest ./gvisor.nix { };
2025-03-21 22:23:01 +07:00
h2o = import ./web-servers/h2o { inherit recurseIntoAttrs runTest; };
2022-01-08 18:38:34 +05:30
hadoop = import ./hadoop {
inherit handleTestOn;
package = pkgs.hadoop;
2024-06-24 09:25:57 +05:30
};
hadoop_3_3 = import ./hadoop {
inherit handleTestOn;
package = pkgs.hadoop_3_3;
2022-01-08 18:38:34 +05:30
};
hadoop2 = import ./hadoop {
inherit handleTestOn;
package = pkgs.hadoop2;
};
haka = handleTest ./haka.nix { };
2022-03-02 18:00:16 +01:00
haste-server = handleTest ./haste-server.nix { };
haproxy = handleTest ./haproxy.nix { };
hardened = handleTest ./hardened.nix { };
harmonia = runTest ./harmonia.nix;
headscale = handleTest ./headscale.nix { };
2022-06-10 14:31:00 +02:00
healthchecks = handleTest ./web-apps/healthchecks.nix { };
2022-03-29 01:49:17 +05:30
hbase2 = handleTest ./hbase.nix { package = pkgs.hbase2; };
hbase_2_5 = handleTest ./hbase.nix { package = pkgs.hbase_2_5; };
hbase_2_4 = handleTest ./hbase.nix { package = pkgs.hbase_2_4; };
2022-03-29 01:49:17 +05:30
hbase3 = handleTest ./hbase.nix { package = pkgs.hbase3; };
hedgedoc = handleTest ./hedgedoc.nix { };
2020-11-27 19:20:36 +00:00
herbstluftwm = handleTest ./herbstluftwm.nix { };
2024-06-15 15:25:40 +02:00
homebox = handleTest ./homebox.nix { };
2024-12-27 18:36:59 +01:00
homer = handleTest ./homer { };
homepage-dashboard = runTest ./homepage-dashboard.nix;
2023-08-17 18:08:48 +02:00
honk = runTest ./honk.nix;
2020-11-29 20:00:38 -03:00
installed-tests = pkgs.recurseIntoAttrs (handleTest ./installed-tests { });
2021-09-07 19:44:12 +02:00
invidious = handleTest ./invidious.nix { };
2024-06-09 20:09:25 +02:00
iosched = handleTest ./iosched.nix { };
2024-04-22 05:58:48 +08:00
isolate = handleTest ./isolate.nix { };
livebook-service = handleTest ./livebook-service.nix { };
2023-12-24 22:23:15 +01:00
pyload = handleTest ./pyload.nix { };
oci-containers = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./oci-containers.nix { };
2021-11-02 01:48:47 +01:00
odoo = handleTest ./odoo.nix { };
odoo17 = handleTest ./odoo.nix { package = pkgs.odoo17; };
odoo16 = handleTest ./odoo.nix { package = pkgs.odoo16; };
odoo15 = handleTest ./odoo.nix { package = pkgs.odoo15; };
# 9pnet_virtio used to mount /nix partition doesn't support
# hibernation. This test happens to work on x86_64-linux but
# not on other platforms.
hibernate = handleTestOn [ "x86_64-linux" ] ./hibernate.nix { };
hibernate-systemd-stage-1 = handleTestOn [ "x86_64-linux" ] ./hibernate.nix {
systemdStage1 = true;
};
hitch = handleTest ./hitch { };
hledger-web = handleTest ./hledger-web.nix { };
2021-07-18 09:51:49 +02:00
hockeypuck = handleTest ./hockeypuck.nix { };
home-assistant = runTest ./home-assistant.nix;
hostname = handleTest ./hostname.nix { };
hound = handleTest ./hound.nix { };
2020-12-29 11:13:26 -05:00
hub = handleTest ./git/hub.nix { };
hydra = runTest ./hydra;
i3wm = handleTest ./i3wm.nix { };
icingaweb2 = runTest ./icingaweb2.nix;
ifm = handleTest ./ifm.nix { };
iftop = handleTest ./iftop.nix { };
2024-07-02 20:18:19 +01:00
immich = handleTest ./web-apps/immich.nix { };
2024-11-29 11:26:07 -08:00
immich-public-proxy = handleTest ./web-apps/immich-public-proxy.nix { };
incron = handleTest ./incron.nix { };
incus = pkgs.recurseIntoAttrs (
handleTest ./incus {
lts = false;
inherit system pkgs;
}
);
incus-lts = pkgs.recurseIntoAttrs (handleTest ./incus { inherit system pkgs; });
influxdb = handleTest ./influxdb.nix { };
influxdb2 = handleTest ./influxdb2.nix { };
initrd-network-openvpn = handleTestOn [ "x86_64-linux" "i686-linux" ] ./initrd-network-openvpn { };
2020-11-29 20:00:38 -03:00
initrd-network-ssh = handleTest ./initrd-network-ssh { };
initrd-luks-empty-passphrase = handleTest ./initrd-luks-empty-passphrase.nix { };
initrdNetwork = handleTest ./initrd-network.nix { };
initrd-secrets = handleTest ./initrd-secrets.nix { };
nixos/grub: Name initrd-secrets by system, not by initrd Previously, secrets were named according to the initrd they were associated with. This created a problem: If secrets were changed whilst the initrd remained the same, there were two versions of the secrets with one initrd. The result was that only one version of the secrets would by recorded into the /boot partition and get used. AFAICT this would only be the oldest version of the secrets for the given initrd version. This manifests as #114594, which I found frustrating while trying to use initrd secrets for the first time. While developing the secrets I found I could not get new versions of the secrets to take effect. Additionally, it's a nasty issue to run into if you had cause to change the initrd secrets for credential rotation, etc, if you change them and discover you cannot, or alternatively that you can't roll back as you would expect. Additional changes in this patch. * Add a regression test that switching to another grub configuration with the alternate secrets works. This test relies on the fact that it is not changing the initrd. I have checked that the test fails if I undo my change. * Persist the useBootLoader disk state, similarly to other boot state. * I had to do this, otherwise I could not find a route to testing the alternate boot configuration. I did attempt a few different ways of testing this, including directly running install-grub.pl, but what I've settled on is most like what a user would do and avoids depending on lots of internal details. * Making tests that test the boot are a bit tricky (see hibernate.nix and installer.nix for inspiration), I found that in addition to having to copy quite a bit of code I still couldn't get things to work as desired since the bootloader state was being clobbered. My change to persist the useBootLoader state could break things, conceptually. I need some help here discovering if that is the case, possibly by letting this run through a staging CI if there is one. Fix #114594. cc potential reviewers: @lopsided98 (original implementer) @joachifm (original reviewer), @wkennington (numerous fixes to grub-install.pl), @lheckemann (wrote original secrets test).
2023-01-05 12:28:32 +00:00
initrd-secrets-changing = handleTest ./initrd-secrets-changing.nix { };
input-remapper = handleTest ./input-remapper.nix { };
inspircd = handleTest ./inspircd.nix { };
installer = handleTest ./installer.nix { };
installer-systemd-stage-1 = handleTest ./installer-systemd-stage-1.nix { };
2023-03-17 21:39:03 +13:00
intune = handleTest ./intune.nix { };
invoiceplane = runTest ./invoiceplane.nix;
2020-02-02 12:00:00 +00:00
iodine = handleTest ./iodine.nix { };
ipv6 = handleTest ./ipv6.nix { };
iscsi-multipath-root = handleTest ./iscsi-multipath-root.nix { };
iscsi-root = handleTest ./iscsi-root.nix { };
isso = handleTest ./isso.nix { };
jackett = handleTest ./jackett.nix { };
jellyfin = handleTest ./jellyfin.nix { };
jenkins = handleTest ./jenkins.nix { };
jenkins-cli = handleTest ./jenkins-cli.nix { };
2021-10-15 11:00:24 -07:00
jibri = handleTest ./jibri.nix { };
jirafeau = handleTest ./jirafeau.nix { };
2020-03-18 04:23:15 +01:00
jitsi-meet = handleTest ./jitsi-meet.nix { };
jool = import ./jool.nix { inherit pkgs runTest; };
jotta-cli = handleTest ./jotta-cli.nix { };
k3s = handleTest ./k3s { };
kafka = handleTest ./kafka { };
kanboard = runTest ./web-apps/kanboard.nix;
kanidm = handleTest ./kanidm.nix { };
kanidm-provisioning = handleTest ./kanidm-provisioning.nix { };
2022-10-10 10:46:25 +05:30
karma = handleTest ./karma.nix { };
2023-04-30 00:27:25 -03:00
kavita = handleTest ./kavita.nix { };
kbd-setfont-decompress = handleTest ./kbd-setfont-decompress.nix { };
kbd-update-search-paths-patch = handleTest ./kbd-update-search-paths-patch.nix { };
kea = runTest ./kea.nix;
2019-12-22 07:45:31 +00:00
keepalived = handleTest ./keepalived.nix { };
keepassxc = handleTest ./keepassxc.nix { };
2019-01-11 04:36:51 +00:00
kerberos = handleTest ./kerberos/default.nix { };
2021-04-07 11:57:58 -04:00
kernel-generic = handleTest ./kernel-generic.nix { };
kernel-latest-ath-user-regd = handleTest ./kernel-latest-ath-user-regd.nix { };
kernel-rust = handleTest ./kernel-rust.nix { };
nixos/keter: init Enable keter module Keter is an apploader which: 1. has the old app running on a port. 2. loads a new one, and wait for that to complete 3. switches the old with the new one once the new one finished loading. It supports more functionality but this use case is the primary one being used by supercede. Adds keter as a module to nixos. Currently keter is unusable with nix, because it relies on bundeling of a tar and uploading that to a specific folder. These expressions automate these devops tasks, with especially nixops in mind. This will work with versions above 1.8 The test seems to work. This uses a new version of keter which has good support for status code on error pages. We're using this config at production at supercede so it should be fine. Squash log: ========== mention keter in changelog Update generated release notes Always restart keter on failure This is a little bit of extra stability in case keter crashes. Which can happen under extreme conditions (DoS attacks). Update nixos/doc/manual/release-notes/rl-2205.section.md Co-authored-by: ckie <25263210+ckiee@users.noreply.github.com> Update nixos/modules/module-list.nix Co-authored-by: ckie <25263210+ckiee@users.noreply.github.com> Remove sanitization don't put domain in as a string Update nixos/tests/keter.nix Co-authored-by: ckie <25263210+ckiee@users.noreply.github.com> add jappie as module maintainer Use type path instead of two seperate options Fix generated docs added test machinery to figure out why it's failing Fix the test, use console output run nixpkgs-fmt on all modules Inline config file. This get's rid of a lot of inderection as well. Run nix format remove comment simplify executable for test delete config file add config for keter root Remove after redis clause set keter root by default to /var/lib/keter Update nixos/modules/services/web-servers/keter/default.nix Co-authored-by: ckie <25263210+ckiee@users.noreply.github.com> Update nixos/modules/services/web-servers/keter/default.nix Co-authored-by: ckie <25263210+ckiee@users.noreply.github.com> Update nixos/modules/services/web-servers/keter/default.nix Co-authored-by: ckie <25263210+ckiee@users.noreply.github.com> fix nit add newlines add default text and move description in a long description Delete rather obvious comment fix release db thing remove longDescription and put it in a comment instead change description of mkEnalbeOption explain what keter does by using the hackage synopsis set domain to keterDomain and same for executable move comment to where it's happening fix type error add formatting better comment try add seperate user for keter Revert "try add seperate user for keter" This reverts commit d3522d36c96117335bfa072e6f453406c244e940. Doing this breaks the setup set default to avoid needing cap_net_bind_service remove weird comment use example fields eleborated on process leakage Update nixos/modules/services/web-servers/keter/default.nix Co-authored-by: ckie <25263210+ckiee@users.noreply.github.com> run nixpkgs-fmt update docs Fix formatting, set keter package by default format our little nixexpr replace '' -> " where possible drop indent for multiline string make description much shorter regen docs database
2022-05-18 09:41:54 -04:00
keter = handleTest ./keter.nix { };
kexec = runTest ./kexec.nix;
keycloak = discoverTests (import ./keycloak.nix);
keyd = handleTest ./keyd.nix { };
keymap = handleTest ./keymap.nix { };
kimai = runTest ./kimai.nix;
2025-01-01 10:10:00 +08:00
kmonad = runTest ./kmonad.nix;
knot = runTest ./knot.nix;
2022-08-12 23:52:52 +02:00
komga = handleTest ./komga.nix { };
krb5 = discoverTests (import ./krb5);
2021-02-26 13:06:18 +01:00
ksm = handleTest ./ksm.nix { };
2022-09-26 00:16:03 +05:30
kthxbye = handleTest ./kthxbye.nix { };
kubernetes = handleTestOn [ "x86_64-linux" ] ./kubernetes { };
kubo = import ./kubo { inherit recurseIntoAttrs runTest; };
2022-08-16 15:03:37 +02:00
ladybird = handleTest ./ladybird.nix { };
2022-08-16 20:33:08 +02:00
languagetool = handleTest ./languagetool.nix { };
2023-09-17 17:12:55 +02:00
lanraragi = handleTest ./lanraragi.nix { };
latestKernel.login = handleTest ./login.nix { latestKernel = true; };
2024-09-26 19:01:36 +02:00
lavalink = runTest ./lavalink.nix;
leaps = handleTest ./leaps.nix { };
lemmy = handleTest ./lemmy.nix { };
2021-11-15 08:46:20 -03:00
libinput = handleTest ./libinput.nix { };
librenms = runTest ./librenms.nix;
2021-11-18 19:10:48 +01:00
libresprite = handleTest ./libresprite.nix { };
2024-05-09 20:22:57 +02:00
libreswan = runTest ./libreswan.nix;
2024-05-09 20:24:56 +02:00
libreswan-nat = runTest ./libreswan-nat.nix;
librewolf = runTest {
imports = [ ./firefox.nix ];
_module.args.firefoxPackage = pkgs.librewolf;
};
2022-07-15 21:00:28 +01:00
libuiohook = handleTest ./libuiohook.nix { };
2022-08-22 05:17:06 +02:00
libvirtd = handleTest ./libvirtd.nix { };
2021-11-15 08:46:20 -03:00
lidarr = handleTest ./lidarr.nix { };
lightdm = handleTest ./lightdm.nix { };
lighttpd = runTest ./lighttpd.nix;
2019-03-16 08:24:23 -04:00
limesurvey = handleTest ./limesurvey.nix { };
limine = import ./limine { inherit runTest; };
listmonk = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./listmonk.nix { };
2025-03-16 10:37:16 +01:00
litellm = runTest ./litellm.nix;
2021-07-30 17:41:54 +02:00
litestream = handleTest ./litestream.nix { };
2023-04-27 15:26:57 +02:00
lldap = handleTest ./lldap.nix { };
2024-05-12 17:07:22 -05:00
localsend = handleTest ./localsend.nix { };
2020-11-23 17:53:21 -08:00
locate = handleTest ./locate.nix { };
login = handleTest ./login.nix { };
logrotate = handleTest ./logrotate.nix { };
2019-06-27 18:11:09 +02:00
loki = handleTest ./loki.nix { };
luks = handleTest ./luks.nix { };
2022-02-01 18:21:11 +01:00
lvm2 = handleTest ./lvm2 { };
lxc = handleTest ./lxc { };
lxd = pkgs.recurseIntoAttrs (handleTest ./lxd { inherit handleTestOn; });
2021-10-20 23:39:53 +02:00
lxd-image-server = handleTest ./lxd-image-server.nix { };
#logstash = handleTest ./logstash.nix {};
2024-08-05 23:12:50 +02:00
lomiri = discoverTests (import ./lomiri.nix);
2024-06-19 16:23:11 +02:00
lomiri-calculator-app = runTest ./lomiri-calculator-app.nix;
2025-02-13 20:14:15 +01:00
lomiri-calendar-app = runTest ./lomiri-calendar-app.nix;
2024-07-24 19:18:05 +02:00
lomiri-camera-app = runTest ./lomiri-camera-app.nix;
2024-06-29 21:24:57 +02:00
lomiri-clock-app = runTest ./lomiri-clock-app.nix;
2024-08-24 23:09:29 +02:00
lomiri-docviewer-app = runTest ./lomiri-docviewer-app.nix;
2024-06-07 11:37:49 +02:00
lomiri-filemanager-app = runTest ./lomiri-filemanager-app.nix;
2024-11-27 19:31:56 +01:00
lomiri-mediaplayer-app = runTest ./lomiri-mediaplayer-app.nix;
2025-02-09 15:39:44 +01:00
lomiri-music-app = runTest ./lomiri-music-app.nix;
2024-08-14 15:26:08 +02:00
lomiri-gallery-app = runTest ./lomiri-gallery-app.nix;
lomiri-system-settings = runTest ./lomiri-system-settings.nix;
lorri = handleTest ./lorri/default.nix { };
2025-01-27 00:06:25 +08:00
lxqt = handleTest ./lxqt.nix { };
2024-03-20 16:48:22 +08:00
ly = handleTest ./ly.nix { };
2023-04-21 08:59:13 +02:00
maddy = discoverTests (import ./maddy { inherit handleTest; });
2022-04-01 10:41:31 +08:00
maestral = handleTest ./maestral.nix { };
magic-wormhole-mailbox-server = runTest ./magic-wormhole-mailbox-server.nix;
2020-11-29 20:00:38 -03:00
magnetico = handleTest ./magnetico.nix { };
mailcatcher = runTest ./mailcatcher.nix;
mailhog = runTest ./mailhog.nix;
mailpit = runTest ./mailpit.nix;
mailman = runTest ./mailman.nix;
man = runTest ./man.nix;
mariadb-galera = handleTest ./mysql/mariadb-galera.nix { };
marytts = handleTest ./marytts.nix { };
mastodon = pkgs.recurseIntoAttrs (handleTest ./web-apps/mastodon { inherit handleTestOn; });
2023-03-25 17:02:52 +01:00
pixelfed = discoverTests (import ./web-apps/pixelfed { inherit handleTestOn; });
2023-01-08 23:44:00 +08:00
mate = handleTest ./mate.nix { };
2024-03-12 22:29:08 +08:00
mate-wayland = handleTest ./mate-wayland.nix { };
matter-server = handleTest ./matter-server.nix { };
matomo = runTest ./matomo.nix;
2025-02-08 21:50:53 +02:00
matrix-alertmanager = runTest ./matrix/matrix-alertmanager.nix;
matrix-appservice-irc = runTest ./matrix/appservice-irc.nix;
matrix-conduit = handleTest ./matrix/conduit.nix { };
matrix-synapse = handleTest ./matrix/synapse.nix { };
matrix-synapse-workers = handleTest ./matrix/synapse-workers.nix { };
mautrix-meta-postgres = handleTest ./matrix/mautrix-meta-postgres.nix { };
mautrix-meta-sqlite = handleTest ./matrix/mautrix-meta-sqlite.nix { };
mattermost = handleTest ./mattermost { };
mealie = handleTest ./mealie.nix { };
2023-08-10 20:43:26 +02:00
mediamtx = handleTest ./mediamtx.nix { };
mediatomb = handleTest ./mediatomb.nix { };
mediawiki = handleTest ./mediawiki.nix { };
meilisearch = handleTest ./meilisearch.nix { };
memcached = runTest ./memcached.nix;
2022-10-19 10:49:57 +02:00
merecat = handleTest ./merecat.nix { };
2019-08-18 09:28:16 +02:00
metabase = handleTest ./metabase.nix { };
2024-02-10 22:43:17 +08:00
mihomo = handleTest ./mihomo.nix { };
2023-01-15 00:28:32 +01:00
mindustry = handleTest ./mindustry.nix { };
2020-11-28 12:42:10 -05:00
minecraft = handleTest ./minecraft.nix { };
2020-11-28 12:42:46 -05:00
minecraft-server = handleTest ./minecraft-server.nix { };
2020-11-29 20:00:38 -03:00
minidlna = handleTest ./minidlna.nix { };
2018-12-21 10:36:58 -08:00
miniflux = handleTest ./miniflux.nix { };
minio = handleTest ./minio.nix { };
2024-06-10 15:55:54 +02:00
miracle-wm = runTest ./miracle-wm.nix;
2025-03-22 13:55:56 +01:00
miriway = runTest ./miriway.nix;
misc = handleTest ./misc.nix { };
2024-06-12 17:34:42 +02:00
misskey = handleTest ./misskey.nix { };
2021-05-30 17:33:09 +02:00
mjolnir = handleTest ./matrix/mjolnir.nix { };
mobilizon = runTest ./mobilizon.nix;
2021-08-13 20:55:15 +02:00
mod_perl = handleTest ./mod_perl.nix { };
molly-brown = handleTest ./molly-brown.nix { };
2024-01-05 03:10:12 -08:00
mollysocket = handleTest ./mollysocket.nix { };
monado = handleTest ./monado.nix { };
2024-03-19 21:54:05 +01:00
monetdb = handleTest ./monetdb.nix { };
monica = runTest ./web-apps/monica.nix;
mongodb = runTest ./mongodb.nix;
2025-01-21 17:27:18 +01:00
mongodb-ce = runTest (
{ config, ... }:
{
imports = [ ./mongodb.nix ];
defaults.services.mongodb.package = config.node.pkgs.mongodb-ce;
}
);
moodle = runTest ./moodle.nix;
2022-03-22 15:35:39 -07:00
moonraker = handleTest ./moonraker.nix { };
2024-11-14 23:40:14 +01:00
mopidy = handleTest ./mopidy.nix { };
morph-browser = runTest ./morph-browser.nix;
morty = handleTest ./morty.nix { };
mosquitto = runTest ./mosquitto.nix;
2021-10-06 21:51:07 +02:00
moosefs = handleTest ./moosefs.nix { };
2025-04-02 03:37:58 +07:00
movim = import ./web-apps/movim { inherit recurseIntoAttrs runTest; };
mpd = runTest ./mpd.nix;
mpv = runTest ./mpv.nix;
mtp = handleTest ./mtp.nix { };
2023-02-03 09:28:48 +00:00
multipass = handleTest ./multipass.nix { };
mumble = runTest ./mumble.nix;
# Fails on aarch64-linux at the PDF creation step - need to debug this on an
# aarch64 machine..
musescore = handleTestOn [ "x86_64-linux" ] ./musescore.nix { };
2024-05-18 01:10:54 +02:00
music-assistant = runTest ./music-assistant.nix;
munin = handleTest ./munin.nix { };
mutableUsers = handleTest ./mutable-users.nix { };
2024-03-18 17:40:30 +01:00
mycelium = handleTest ./mycelium { };
2023-12-18 23:31:29 +02:00
mympd = handleTest ./mympd.nix { };
mysql = handleTest ./mysql/mysql.nix { };
mysql-autobackup = handleTest ./mysql/mysql-autobackup.nix { };
mysql-backup = handleTest ./mysql/mysql-backup.nix { };
mysql-replication = handleTest ./mysql/mysql-replication.nix { };
n8n = runTest ./n8n.nix;
2024-05-03 20:40:22 +02:00
nagios = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./nagios.nix { };
nar-serve = handleTest ./nar-serve.nix { };
nat.firewall = handleTest ./nat.nix { withFirewall = true; };
nat.standalone = handleTest ./nat.nix { withFirewall = false; };
nat.nftables.firewall = handleTest ./nat.nix {
withFirewall = true;
nftables = true;
};
nat.nftables.standalone = handleTest ./nat.nix {
withFirewall = false;
nftables = true;
};
2021-06-26 13:58:40 +02:00
nats = handleTest ./nats.nix { };
navidrome = handleTest ./navidrome.nix { };
nbd = handleTest ./nbd.nix { };
2020-06-07 23:59:12 +02:00
ncdns = handleTest ./ncdns.nix { };
2025-01-01 17:15:26 -08:00
ncps = runTest ./ncps.nix;
ncps-custom-cache-datapath = runTest {
imports = [ ./ncps.nix ];
defaults.services.ncps.cache.dataPath = "/path/to/ncps";
};
2019-02-03 16:47:01 +01:00
ndppd = handleTest ./ndppd.nix { };
nix-channel = pkgs.callPackage ../modules/config/nix-channel/test.nix { };
nebula = handleTest ./nebula.nix { };
2022-08-14 19:59:15 +03:00
netbird = handleTest ./netbird.nix { };
2024-03-16 19:13:51 +01:00
nimdow = handleTest ./nimdow.nix { };
2019-02-01 14:29:54 +01:00
neo4j = handleTest ./neo4j.nix { };
netdata = handleTest ./netdata.nix { };
networking.scripted = handleTest ./networking/networkd-and-scripted.nix { networkd = false; };
networking.networkd = handleTest ./networking/networkd-and-scripted.nix { networkd = true; };
networking.networkmanager = handleTest ./networking/networkmanager.nix { };
netbox_3_7 = handleTest ./web-apps/netbox/default.nix { netbox = pkgs.netbox_3_7; };
netbox_4_1 = handleTest ./web-apps/netbox/default.nix { netbox = pkgs.netbox_4_1; };
netbox_4_2 = handleTest ./web-apps/netbox/default.nix { netbox = pkgs.netbox_4_2; };
netbox-upgrade = handleTest ./web-apps/netbox-upgrade.nix { };
# TODO: put in networking.nix after the test becomes more complete
networkingProxy = handleTest ./networking-proxy.nix { };
nextcloud = handleTest ./nextcloud { };
nextflow = runTestOn [ "x86_64-linux" ] ./nextflow.nix;
nextjs-ollama-llm-ui = runTest ./web-apps/nextjs-ollama-llm-ui.nix;
nexus = handleTest ./nexus.nix { };
# TODO: Test nfsv3 + Kerberos
nfs3 = handleTest ./nfs { version = 3; };
nfs4 = handleTest ./nfs { version = 4; };
nghttpx = handleTest ./nghttpx.nix { };
nginx = runTest ./nginx.nix;
nginx-auth = runTest ./nginx-auth.nix;
nginx-etag = runTest ./nginx-etag.nix;
nginx-etag-compression = runTest ./nginx-etag-compression.nix;
nginx-globalredirect = runTest ./nginx-globalredirect.nix;
nginx-http3 = import ./nginx-http3.nix { inherit pkgs runTest; };
nginx-mime = runTest ./nginx-mime.nix;
nginx-modsecurity = runTest ./nginx-modsecurity.nix;
nginx-moreheaders = runTest ./nginx-moreheaders.nix;
2022-09-18 14:54:04 +02:00
nginx-njs = handleTest ./nginx-njs.nix { };
nginx-proxyprotocol = runTest ./nginx-proxyprotocol/default.nix;
nginx-pubhtml = runTest ./nginx-pubhtml.nix;
nginx-redirectcode = runTest ./nginx-redirectcode.nix;
nginx-sso = runTest ./nginx-sso.nix;
nginx-status-page = runTest ./nginx-status-page.nix;
nginx-tmpdir = runTest ./nginx-tmpdir.nix;
nginx-unix-socket = runTest ./nginx-unix-socket.nix;
nginx-variants = import ./nginx-variants.nix { inherit pkgs runTest; };
nifi = runTestOn [ "x86_64-linux" ] ./web-apps/nifi.nix;
2021-07-26 12:00:05 +02:00
nitter = handleTest ./nitter.nix { };
nix-config = handleTest ./nix-config.nix { };
2022-04-11 21:51:29 +03:00
nix-ld = handleTest ./nix-ld.nix { };
nix-misc = handleTest ./nix/misc.nix { };
nix-upgrade = handleTest ./nix/upgrade.nix { inherit (pkgs) nixVersions; };
2023-10-17 15:25:17 +03:00
nix-required-mounts = runTest ./nix-required-mounts;
nix-serve = runTest ./nix-serve.nix;
nix-serve-ssh = handleTest ./nix-serve-ssh.nix { };
2021-10-18 00:38:58 +02:00
nixops = handleTest ./nixops/default.nix { };
nixos-generate-config = handleTest ./nixos-generate-config.nix { };
nixos-rebuild-install-bootloader = handleTestOn [
"x86_64-linux"
] ./nixos-rebuild-install-bootloader.nix { };
nixos-rebuild-install-bootloader-ng = handleTestOn [
"x86_64-linux"
] ./nixos-rebuild-install-bootloader.nix { withNg = true; };
nixos-rebuild-specialisations = runTestOn [ "x86_64-linux" ] {
imports = [ ./nixos-rebuild-specialisations.nix ];
_module.args.withNg = false;
};
nixos-rebuild-specialisations-ng = runTestOn [ "x86_64-linux" ] {
imports = [ ./nixos-rebuild-specialisations.nix ];
_module.args.withNg = true;
};
nixos-rebuild-target-host = runTest {
imports = [ ./nixos-rebuild-target-host.nix ];
_module.args.withNg = false;
};
nixos-rebuild-target-host-ng = runTest {
imports = [ ./nixos-rebuild-target-host.nix ];
_module.args.withNg = true;
};
nixpkgs = pkgs.callPackage ../modules/misc/nixpkgs/test.nix { inherit evalMinimalConfig; };
nixseparatedebuginfod = handleTest ./nixseparatedebuginfod.nix { };
node-red = runTest ./node-red.nix;
nomad = runTest ./nomad.nix;
non-default-filesystems = handleTest ./non-default-filesystems.nix { };
non-switchable-system = runTest ./non-switchable-system.nix;
2022-01-22 10:06:13 +08:00
noto-fonts = handleTest ./noto-fonts.nix { };
noto-fonts-cjk-qt-default-weight = handleTest ./noto-fonts-cjk-qt-default-weight.nix { };
novacomd = handleTestOn [ "x86_64-linux" ] ./novacomd.nix { };
2023-11-02 20:43:20 +13:00
npmrc = handleTest ./npmrc.nix { };
nscd = handleTest ./nscd.nix { };
nsd = handleTest ./nsd.nix { };
2022-09-01 14:36:19 +02:00
ntfy-sh = handleTest ./ntfy-sh.nix { };
ntfy-sh-migration = handleTest ./ntfy-sh-migration.nix { };
2024-10-19 14:26:27 -04:00
ntpd = handleTest ./ntpd.nix { };
2023-10-31 14:28:49 +00:00
ntpd-rs = handleTest ./ntpd-rs.nix { };
nvidia-container-toolkit = runTest ./nvidia-container-toolkit.nix;
2024-02-01 13:34:05 -05:00
nvmetcfg = handleTest ./nvmetcfg.nix { };
nzbget = handleTest ./nzbget.nix { };
2020-10-04 16:06:53 +02:00
nzbhydra2 = handleTest ./nzbhydra2.nix { };
ocis = handleTest ./ocis.nix { };
2024-04-06 23:41:28 +02:00
oddjobd = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./oddjobd.nix { };
obs-studio = runTest ./obs-studio.nix;
2020-11-04 20:37:50 -05:00
oh-my-zsh = handleTest ./oh-my-zsh.nix { };
ollama = runTest ./ollama.nix;
ollama-cuda = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./ollama-cuda.nix;
ollama-rocm = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./ollama-rocm.nix;
ombi = handleTest ./ombi.nix { };
2019-10-23 01:20:56 +11:00
openarena = handleTest ./openarena.nix { };
openldap = handleTest ./openldap.nix { };
opensearch = discoverTests (import ./opensearch.nix);
openresty-lua = handleTest ./openresty-lua.nix { };
opensmtpd = handleTest ./opensmtpd.nix { };
opensmtpd-rspamd = handleTest ./opensmtpd-rspamd.nix { };
2023-08-08 22:00:52 +02:00
opensnitch = handleTest ./opensnitch.nix { };
openssh = handleTest ./openssh.nix { };
octoprint = handleTest ./octoprint.nix { };
openstack-image-metadata =
(handleTestOn [ "x86_64-linux" ] ./openstack-image.nix { }).metadata or { };
2020-11-29 20:00:38 -03:00
openstack-image-userdata =
(handleTestOn [ "x86_64-linux" ] ./openstack-image.nix { }).userdata or { };
2021-01-08 13:48:00 -03:00
opentabletdriver = handleTest ./opentabletdriver.nix { };
opentelemetry-collector = handleTest ./opentelemetry-collector.nix { };
2024-09-16 16:37:49 +02:00
open-web-calendar = handleTest ./web-apps/open-web-calendar.nix { };
2023-11-02 01:28:20 +01:00
ocsinventory-agent = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./ocsinventory-agent.nix { };
2025-03-14 09:09:38 +01:00
orthanc = runTest ./orthanc.nix;
2021-09-23 10:48:29 +02:00
owncast = handleTest ./owncast.nix { };
2023-05-17 13:10:57 +02:00
outline = handleTest ./outline.nix { };
2020-12-20 21:18:54 +01:00
image-contents = handleTest ./image-contents.nix { };
2023-05-15 15:33:37 +02:00
openvscode-server = handleTest ./openvscode-server.nix { };
2024-06-04 16:07:06 +05:30
open-webui = runTest ./open-webui.nix;
openvswitch = runTest ./openvswitch.nix;
2019-08-21 00:27:14 +02:00
orangefs = handleTest ./orangefs.nix { };
os-prober = handleTestOn [ "x86_64-linux" ] ./os-prober.nix { };
2023-07-19 11:59:22 +02:00
osquery = handleTestOn [ "x86_64-linux" ] ./osquery.nix { };
2019-01-05 13:13:10 +01:00
osrm-backend = handleTest ./osrm-backend.nix { };
2019-01-23 10:19:23 +01:00
overlayfs = handleTest ./overlayfs.nix { };
2022-03-08 02:46:26 +01:00
pacemaker = handleTest ./pacemaker.nix { };
2019-04-24 16:45:29 +08:00
packagekit = handleTest ./packagekit.nix { };
pam-file-contents = handleTest ./pam/pam-file-contents.nix { };
pam-oath-login = handleTest ./pam/pam-oath-login.nix { };
pam-u2f = handleTest ./pam/pam-u2f.nix { };
pam-ussh = handleTest ./pam/pam-ussh.nix { };
pam-zfs-key = handleTest ./pam/zfs-key.nix { };
paretosecurity = runTest ./paretosecurity.nix;
pass-secret-service = handleTest ./pass-secret-service.nix { };
patroni = handleTestOn [ "x86_64-linux" ] ./patroni.nix { };
pantalaimon = handleTest ./matrix/pantalaimon.nix { };
pantheon = handleTest ./pantheon.nix { };
pantheon-wayland = handleTest ./pantheon-wayland.nix { };
paperless = handleTest ./paperless.nix { };
2021-06-02 18:19:37 +02:00
parsedmarc = handleTest ./parsedmarc { };
password-option-override-ordering = handleTest ./password-option-override-ordering.nix { };
2020-11-29 20:00:38 -03:00
pdns-recursor = handleTest ./pdns-recursor.nix { };
2024-11-09 20:46:47 -07:00
pds = handleTest ./pds.nix { };
peerflix = handleTest ./peerflix.nix { };
2022-12-01 17:32:15 +01:00
peering-manager = handleTest ./web-apps/peering-manager.nix { };
2021-05-31 14:23:06 +03:00
peertube = handleTestOn [ "x86_64-linux" ] ./web-apps/peertube.nix { };
peroxide = handleTest ./peroxide.nix { };
pgadmin4 = runTest ./pgadmin4.nix;
pgbouncer = handleTest ./pgbouncer.nix { };
2023-11-23 13:59:27 +03:00
pghero = runTest ./pghero.nix;
pgweb = runTest ./pgweb.nix;
pgmanage = handleTest ./pgmanage.nix { };
2022-08-02 12:34:37 -07:00
phosh = handleTest ./phosh.nix { };
2024-02-05 23:51:17 -08:00
photonvision = handleTest ./photonvision.nix { };
2023-01-15 00:16:35 +01:00
photoprism = handleTest ./photoprism.nix { };
2025-03-14 19:11:10 +01:00
php = import ./php/default.nix {
inherit runTest;
php = pkgs.php;
};
php81 = import ./php/default.nix {
inherit runTest;
php = pkgs.php81;
};
php82 = import ./php/default.nix {
inherit runTest;
php = pkgs.php82;
};
php83 = import ./php/default.nix {
inherit runTest;
php = pkgs.php83;
};
php84 = import ./php/default.nix {
inherit runTest;
php = pkgs.php84;
};
2022-06-29 04:17:38 +09:00
phylactery = handleTest ./web-apps/phylactery.nix { };
pict-rs = handleTest ./pict-rs.nix { };
2024-02-09 20:06:25 +01:00
pingvin-share = handleTest ./pingvin-share.nix { };
pinnwand = runTest ./pinnwand.nix;
2023-11-14 23:09:23 +01:00
plantuml-server = handleTest ./plantuml-server.nix { };
plasma-bigscreen = handleTest ./plasma-bigscreen.nix { };
plasma5 = handleTest ./plasma5.nix { };
2024-02-05 19:04:04 +03:00
plasma6 = handleTest ./plasma6.nix { };
2021-11-01 04:34:10 +08:00
plasma5-systemd-start = handleTest ./plasma5-systemd-start.nix { };
2021-05-21 23:15:23 +02:00
plausible = handleTest ./plausible.nix { };
playwright-python = handleTest ./playwright-python.nix { };
please = handleTest ./please.nix { };
2020-11-08 15:10:14 +01:00
pleroma = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./pleroma.nix { };
2020-11-13 15:00:34 +01:00
plikd = handleTest ./plikd.nix { };
plotinus = handleTest ./plotinus.nix { };
pocket-id = handleTest ./pocket-id.nix { };
2021-04-14 17:15:41 +00:00
podgrab = handleTest ./podgrab.nix { };
podman = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./podman/default.nix { };
podman-tls-ghostunnel = handleTestOn [
"aarch64-linux"
"x86_64-linux"
] ./podman/tls-ghostunnel.nix { };
2022-06-17 20:04:54 +02:00
polaris = handleTest ./polaris.nix { };
2021-01-08 03:03:00 +00:00
pomerium = handleTestOn [ "x86_64-linux" ] ./pomerium.nix { };
2023-05-21 18:53:52 +02:00
portunus = handleTest ./portunus.nix { };
postfix = handleTest ./postfix.nix { };
postfix-raise-smtpd-tls-security-level =
handleTest ./postfix-raise-smtpd-tls-security-level.nix
{ };
2021-05-18 23:34:03 -05:00
postfixadmin = handleTest ./postfixadmin.nix { };
2025-04-09 15:14:31 +02:00
postgres-websockets = runTest ./postgres-websockets.nix;
postgresql = handleTest ./postgresql { };
2025-03-28 17:09:32 +01:00
postgrest = runTest ./postgrest.nix;
powerdns = handleTest ./powerdns.nix { };
powerdns-admin = handleTest ./powerdns-admin.nix { };
power-profiles-daemon = handleTest ./power-profiles-daemon.nix { };
pppd = handleTest ./pppd.nix { };
predictable-interface-names = handleTest ./predictable-interface-names.nix { };
2023-05-13 17:36:03 +02:00
pretalx = runTest ./web-apps/pretalx.nix;
prefect = runTest ./prefect.nix;
2024-03-14 12:43:39 +01:00
pretix = runTest ./web-apps/pretix.nix;
printing-socket = runTest {
imports = [ ./printing.nix ];
_module.args.socket = true;
_module.args.listenTcp = true;
};
printing-service = runTest {
imports = [ ./printing.nix ];
_module.args.socket = false;
_module.args.listenTcp = true;
};
printing-socket-notcp = runTest {
imports = [ ./printing.nix ];
_module.args.socket = true;
_module.args.listenTcp = false;
};
printing-service-notcp = runTest {
imports = [ ./printing.nix ];
_module.args.socket = false;
_module.args.listenTcp = false;
};
2024-04-24 15:15:25 +02:00
private-gpt = handleTest ./private-gpt.nix { };
2024-09-29 22:57:42 +05:30
privatebin = runTest ./privatebin.nix;
2021-03-03 17:18:09 +01:00
privoxy = handleTest ./privoxy.nix { };
prometheus = handleTest ./prometheus { };
prometheus-exporters = handleTest ./prometheus-exporters.nix { };
prosody = handleTest ./xmpp/prosody.nix { };
prosody-mysql = handleTest ./xmpp/prosody-mysql.nix { };
proxy = handleTest ./proxy.nix { };
2021-10-10 08:54:22 -07:00
prowlarr = handleTest ./prowlarr.nix { };
2020-07-29 19:00:33 +02:00
pt2-clone = handleTest ./pt2-clone.nix { };
pykms = handleTest ./pykms.nix { };
2021-12-01 11:06:18 +01:00
public-inbox = handleTest ./public-inbox.nix { };
2023-04-07 09:34:25 +03:00
pufferpanel = handleTest ./pufferpanel.nix { };
2021-11-30 14:51:06 +01:00
pulseaudio = discoverTests (import ./pulseaudio.nix);
qboot = handleTestOn [ "x86_64-linux" "i686-linux" ] ./qboot.nix { };
qemu-vm-restrictnetwork = handleTest ./qemu-vm-restrictnetwork.nix { };
qemu-vm-volatile-root = runTest ./qemu-vm-volatile-root.nix;
qemu-vm-external-disk-image = runTest ./qemu-vm-external-disk-image.nix;
2024-02-23 00:00:37 +01:00
qemu-vm-store = runTest ./qemu-vm-store.nix;
2024-09-16 12:51:21 +02:00
qgis = handleTest ./qgis.nix { package = pkgs.qgis; };
qgis-ltr = handleTest ./qgis.nix { package = pkgs.qgis-ltr; };
2023-06-16 08:19:47 +02:00
qownnotes = handleTest ./qownnotes.nix { };
qtile = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./qtile/default.nix;
quake3 = handleTest ./quake3.nix { };
2023-11-01 19:48:51 +01:00
quicktun = handleTest ./quicktun.nix { };
2024-06-04 22:39:48 +01:00
quickwit = handleTest ./quickwit.nix { };
quorum = handleTest ./quorum.nix { };
rabbitmq = handleTest ./rabbitmq.nix { };
radarr = handleTest ./radarr.nix { };
radicale = handleTest ./radicale.nix { };
2024-05-25 02:23:48 +02:00
radicle = runTest ./radicle.nix;
ragnarwm = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./ragnarwm.nix;
rasdaemon = handleTest ./rasdaemon.nix { };
rathole = runTest ./rathole.nix;
2023-03-12 20:54:23 +01:00
readarr = handleTest ./readarr.nix { };
2024-01-28 12:56:32 +08:00
realm = handleTest ./realm.nix { };
2025-01-02 21:09:06 +01:00
readeck = runTest ./readeck.nix;
2025-02-27 21:08:16 +01:00
rebuilderd = runTest ./rebuilderd.nix;
2019-08-31 20:17:33 +02:00
redis = handleTest ./redis.nix { };
redlib = handleTest ./redlib.nix { };
redmine = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./redmine.nix { };
2024-06-08 17:56:52 +02:00
renovate = handleTest ./renovate.nix { };
replace-dependencies = handleTest ./replace-dependencies { };
2025-02-12 22:23:15 +01:00
reposilite = runTest ./reposilite.nix;
restartByActivationScript = handleTest ./restart-by-activation-script.nix { };
2024-03-16 07:27:14 +01:00
restic-rest-server = handleTest ./restic-rest-server.nix { };
2020-01-30 16:31:52 -05:00
restic = handleTest ./restic.nix { };
retroarch = handleTest ./retroarch.nix { };
rke2 = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./rke2 { };
2023-10-05 14:32:38 +02:00
rkvm = handleTest ./rkvm { };
2024-11-18 22:56:12 +09:00
rmfakecloud = runTest ./rmfakecloud.nix;
2020-08-30 18:31:54 +02:00
robustirc-bridge = handleTest ./robustirc-bridge.nix { };
roundcube = handleTest ./roundcube.nix { };
2025-02-07 09:21:45 +01:00
routinator = handleTest ./routinator.nix { };
rosenpass = handleTest ./rosenpass.nix { };
2023-05-15 14:09:28 +02:00
rshim = handleTest ./rshim.nix { };
rspamd = handleTest ./rspamd.nix { };
rspamd-trainer = handleTest ./rspamd-trainer.nix { };
rss-bridge = handleTest ./web-apps/rss-bridge { };
rss2email = handleTest ./rss2email.nix { };
rstudio-server = handleTest ./rstudio-server.nix { };
rsyncd = handleTest ./rsyncd.nix { };
rsyslogd = handleTest ./rsyslogd.nix { };
2024-04-24 16:09:06 +08:00
rtkit = runTest ./rtkit.nix;
2024-06-23 20:38:41 -03:00
rtorrent = handleTest ./rtorrent.nix { };
2025-04-14 01:17:22 +02:00
rush = runTest ./rush.nix;
2024-12-10 14:53:02 +01:00
rustls-libssl = handleTest ./rustls-libssl.nix { };
rxe = handleTest ./rxe.nix { };
2021-09-21 13:38:22 +02:00
sabnzbd = handleTest ./sabnzbd.nix { };
samba = runTest ./samba.nix;
samba-wsdd = handleTest ./samba-wsdd.nix { };
2024-01-01 12:00:00 +00:00
sane = handleTest ./sane.nix { };
sanoid = handleTest ./sanoid.nix { };
2024-10-03 11:39:24 +02:00
saunafs = handleTest ./saunafs.nix { };
scaphandre = handleTest ./scaphandre.nix { };
schleuder = handleTest ./schleuder.nix { };
2024-03-24 21:03:03 +00:00
scion-freestanding-deployment = handleTest ./scion/freestanding-deployment { };
scrutiny = runTest ./scrutiny.nix;
sddm = handleTest ./sddm.nix { };
2024-12-14 06:44:37 -04:00
sdl3 = handleTest ./sdl3.nix { };
seafile = handleTest ./seafile.nix { };
searx = runTest ./searx.nix;
2023-08-25 10:59:57 +05:30
seatd = handleTest ./seatd.nix { };
2024-10-26 01:50:55 +08:00
send = runTest ./send.nix;
service-runner = handleTest ./service-runner.nix { };
2025-02-20 03:00:31 +01:00
servo = runTest ./servo.nix;
2024-12-10 11:55:20 +01:00
shadps4 = runTest ./shadps4.nix;
2023-04-19 13:13:54 +00:00
sftpgo = runTest ./sftpgo.nix;
2022-03-20 22:39:04 +01:00
sfxr-qt = handleTest ./sfxr-qt.nix { };
sgt-puzzles = handleTest ./sgt-puzzles.nix { };
2020-12-23 13:28:30 -05:00
shadow = handleTest ./shadow.nix { };
shadowsocks = handleTest ./shadowsocks { };
shattered-pixel-dungeon = handleTest ./shattered-pixel-dungeon.nix { };
shiori = handleTest ./shiori.nix { };
signal-desktop = runTest ./signal-desktop.nix;
2024-03-16 17:12:16 +01:00
silverbullet = handleTest ./silverbullet.nix { };
simple = handleTest ./simple.nix { };
2023-06-27 12:58:10 +08:00
sing-box = handleTest ./sing-box.nix { };
2023-11-04 21:43:15 -04:00
slimserver = handleTest ./slimserver.nix { };
slurm = handleTest ./slurm.nix { };
2023-12-02 16:05:57 +02:00
snmpd = handleTest ./snmpd.nix { };
smokeping = handleTest ./smokeping.nix { };
snapcast = runTest ./snapcast.nix;
snapper = handleTest ./snapper.nix { };
2023-04-26 17:46:15 +02:00
snipe-it = runTest ./web-apps/snipe-it.nix;
soapui = handleTest ./soapui.nix { };
soft-serve = handleTest ./soft-serve.nix { };
2020-05-12 18:32:39 +02:00
sogo = handleTest ./sogo.nix { };
soju = handleTest ./soju.nix { };
2021-05-20 22:03:39 +02:00
solanum = handleTest ./solanum.nix { };
2020-11-29 20:00:38 -03:00
sonarr = handleTest ./sonarr.nix { };
2023-11-10 14:52:15 +01:00
sonic-server = handleTest ./sonic-server.nix { };
sourcehut = handleTest ./sourcehut { };
spacecookie = handleTest ./spacecookie.nix { };
spark = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./spark { };
2024-10-21 18:34:20 +11:00
spiped = runTest ./spiped.nix;
sqlite3-to-mysql = handleTest ./sqlite3-to-mysql.nix { };
2025-01-27 12:10:54 +01:00
squid = handleTest ./squid.nix { };
2020-01-18 12:00:00 +00:00
sslh = handleTest ./sslh.nix { };
2023-11-08 20:47:33 +00:00
ssh-agent-auth = handleTest ./ssh-agent-auth.nix { };
ssh-audit = handleTest ./ssh-audit.nix { };
sssd = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./sssd.nix { };
sssd-ldap = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./sssd-ldap.nix { };
2023-09-02 20:27:11 +02:00
stalwart-mail = handleTest ./stalwart-mail.nix { };
2023-04-16 19:24:06 -04:00
stargazer = runTest ./web-servers/stargazer.nix;
starship = runTest ./starship.nix;
2024-12-24 15:27:25 -08:00
stash = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./stash.nix { };
static-web-server = runTest ./web-servers/static-web-server.nix;
2021-11-12 21:37:11 +01:00
step-ca = handleTestOn [ "x86_64-linux" ] ./step-ca.nix { };
stratis = handleTest ./stratis { };
strongswan-swanctl = handleTest ./strongswan-swanctl.nix { };
2023-11-23 22:03:03 -05:00
stub-ld = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./stub-ld.nix { };
2022-02-22 14:08:43 -08:00
stunnel = handleTest ./stunnel.nix { };
sudo = handleTest ./sudo.nix { };
sudo-rs = runTest ./sudo-rs.nix;
2024-03-30 20:07:35 -05:00
sunshine = handleTest ./sunshine.nix { };
2024-05-22 14:45:16 +02:00
suricata = handleTest ./suricata.nix { };
2024-01-18 22:11:16 +01:00
suwayomi-server = handleTest ./suwayomi-server.nix { };
2022-10-04 11:08:46 +08:00
swap-file-btrfs = handleTest ./swap-file-btrfs.nix { };
2022-06-22 04:11:23 +02:00
swap-partition = handleTest ./swap-partition.nix { };
swap-random-encryption = handleTest ./swap-random-encryption.nix { };
swapspace = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./swapspace.nix { };
sway = handleTest ./sway.nix { };
2024-04-29 15:47:59 -04:00
swayfx = handleTest ./swayfx.nix { };
switchTest = runTest {
imports = [ ./switch-test.nix ];
defaults.system.switch.enableNg = false;
};
switchTestNg = runTest {
imports = [ ./switch-test.nix ];
defaults.system.switch.enableNg = true;
};
2024-08-10 15:17:06 +01:00
sx = handleTest ./sx.nix { };
2019-07-06 20:56:30 +02:00
sympa = handleTest ./sympa.nix { };
2020-07-23 00:13:26 -07:00
syncthing = handleTest ./syncthing.nix { };
2023-05-23 16:58:38 +03:00
syncthing-no-settings = handleTest ./syncthing-no-settings.nix { };
syncthing-init = handleTest ./syncthing-init.nix { };
syncthing-many-devices = handleTest ./syncthing-many-devices.nix { };
2018-11-17 15:02:00 +01:00
syncthing-relay = handleTest ./syncthing-relay.nix { };
sysinit-reactivation = runTest ./sysinit-reactivation.nix;
systemd = handleTest ./systemd.nix { };
2019-11-25 00:03:55 +01:00
systemd-analyze = handleTest ./systemd-analyze.nix { };
systemd-binfmt = handleTestOn [ "x86_64-linux" ] ./systemd-binfmt.nix { };
systemd-boot = handleTest ./systemd-boot.nix { };
systemd-bpf = handleTest ./systemd-bpf.nix { };
systemd-confinement = handleTest ./systemd-confinement { };
systemd-coredump = handleTest ./systemd-coredump.nix { };
systemd-cryptenroll = handleTest ./systemd-cryptenroll.nix { };
systemd-credentials-tpm2 = handleTest ./systemd-credentials-tpm2.nix { };
systemd-escaping = handleTest ./systemd-escaping.nix { };
systemd-initrd-bridge = handleTest ./systemd-initrd-bridge.nix { };
systemd-initrd-btrfs-raid = handleTest ./systemd-initrd-btrfs-raid.nix { };
systemd-initrd-luks-fido2 = handleTest ./systemd-initrd-luks-fido2.nix { };
systemd-initrd-luks-keyfile = handleTest ./systemd-initrd-luks-keyfile.nix { };
systemd-initrd-luks-empty-passphrase = handleTest ./initrd-luks-empty-passphrase.nix {
systemdStage1 = true;
};
systemd-initrd-luks-password = handleTest ./systemd-initrd-luks-password.nix { };
systemd-initrd-luks-tpm2 = handleTest ./systemd-initrd-luks-tpm2.nix { };
systemd-initrd-luks-unl0kr = handleTest ./systemd-initrd-luks-unl0kr.nix { };
systemd-initrd-modprobe = handleTest ./systemd-initrd-modprobe.nix { };
systemd-initrd-shutdown = handleTest ./systemd-shutdown.nix { systemdStage1 = true; };
2022-03-20 16:11:32 -04:00
systemd-initrd-simple = handleTest ./systemd-initrd-simple.nix { };
systemd-initrd-swraid = handleTest ./systemd-initrd-swraid.nix { };
systemd-initrd-vconsole = handleTest ./systemd-initrd-vconsole.nix { };
2022-06-29 01:01:59 -04:00
systemd-initrd-networkd = handleTest ./systemd-initrd-networkd.nix { };
2022-08-03 06:36:11 -04:00
systemd-initrd-networkd-ssh = handleTest ./systemd-initrd-networkd-ssh.nix { };
systemd-initrd-networkd-openvpn = handleTestOn [
"x86_64-linux"
"i686-linux"
] ./initrd-network-openvpn { systemdStage1 = true; };
2023-08-24 23:57:46 -04:00
systemd-initrd-vlan = handleTest ./systemd-initrd-vlan.nix { };
systemd-journal = handleTest ./systemd-journal.nix { };
systemd-journal-gateway = handleTest ./systemd-journal-gateway.nix { };
2022-09-01 14:55:30 +02:00
systemd-journal-upload = handleTest ./systemd-journal-upload.nix { };
2023-10-05 17:52:07 +03:00
systemd-lock-handler = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./systemd-lock-handler.nix;
systemd-machinectl = handleTest ./systemd-machinectl.nix { };
systemd-networkd = handleTest ./systemd-networkd.nix { };
systemd-networkd-bridge = handleTest ./systemd-networkd-bridge.nix { };
2019-11-16 22:13:51 +11:00
systemd-networkd-dhcpserver = handleTest ./systemd-networkd-dhcpserver.nix { };
systemd-networkd-dhcpserver-static-leases =
handleTest ./systemd-networkd-dhcpserver-static-leases.nix
{ };
systemd-networkd-ipv6-prefix-delegation =
handleTest ./systemd-networkd-ipv6-prefix-delegation.nix
{ };
2020-11-29 20:00:38 -03:00
systemd-networkd-vrf = handleTest ./systemd-networkd-vrf.nix { };
systemd-no-tainted = handleTest ./systemd-no-tainted.nix { };
systemd-nspawn = handleTest ./systemd-nspawn.nix { };
systemd-nspawn-configfile = handleTest ./systemd-nspawn-configfile.nix { };
systemd-oomd = handleTest ./systemd-oomd.nix { };
systemd-portabled = handleTest ./systemd-portabled.nix { };
2023-01-19 20:04:29 +01:00
systemd-repart = handleTest ./systemd-repart.nix { };
2024-05-20 19:37:01 -04:00
systemd-resolved = handleTest ./systemd-resolved.nix { };
2024-09-18 16:01:09 +02:00
systemd-ssh-proxy = runTest ./systemd-ssh-proxy.nix;
systemd-shutdown = handleTest ./systemd-shutdown.nix { };
2023-07-17 17:20:32 +02:00
systemd-sysupdate = runTest ./systemd-sysupdate.nix;
2023-11-19 23:16:14 +01:00
systemd-sysusers-mutable = runTest ./systemd-sysusers-mutable.nix;
systemd-sysusers-immutable = runTest ./systemd-sysusers-immutable.nix;
systemd-sysusers-password-option-override-ordering = runTest ./systemd-sysusers-password-option-override-ordering.nix;
2020-11-29 20:00:38 -03:00
systemd-timesyncd = handleTest ./systemd-timesyncd.nix { };
systemd-timesyncd-nscd-dnssec = handleTest ./systemd-timesyncd-nscd-dnssec.nix { };
systemd-user-linger = handleTest ./systemd-user-linger.nix { };
systemd-user-tmpfiles-rules = handleTest ./systemd-user-tmpfiles-rules.nix { };
systemd-misc = handleTest ./systemd-misc.nix { };
systemd-userdbd = handleTest ./systemd-userdbd.nix { };
systemd-homed = handleTest ./systemd-homed.nix { };
systemtap = handleTest ./systemtap.nix { };
startx = import ./startx.nix { inherit pkgs runTest; };
tests/taler: init basic test Test build and services start, but libeufin-bank fails when trying to access the database to change the admin's password. We need to execute the command as the libeufin-bank user. tests/taler: add master private key tests/taler: rewrite `register_bank_account` to Nix tests/taler: rename libeufin node to bank tests/taler: use xtaler wire_type instead of iban tests/taler: remove redundant data from conf files tests/taler: enable exchange account tests/taler: remove unused talerConfig tests/taler: add client node and attempt a withdrawal tests/taler: systemd_run optional user and group args tests/taler: refactor and make a withdrawal tests/taler: refactor tasks into subtests tests/taler: properly read and test balance tests/taler: refactor commands and add comments nixos/taler: rename private key tests/taler: enable nexus service in bank node tests/taler: nexus fake incoming payment test tests/taler: use correct path for nexus client keys tests/taler: add merchant node tests/taler: merchant register instance tests/taler: init pay for order merchant tests/taler: fix payto uri tests/taler: withdraw smaller amount This makes the test faster tests/taler: verify balance tests/nixos: debugging merchant payment, cleanup tests/taler: fix libeufin command, use curl to register accounts tests/taler: add basic online test tests/taler: move nodes into separate directory tests/taler: fix insufficient balance error Turns out that the exchange wire fees need to be set up (even if they're 0) in order for the CLI wallet to deposit coins into the merchant's bank account. tests/taler: improve node importing, port forwarding tests/taler: import scripts from a separate file tests/taler: move tests into a sub-directory tests/taler: manually start services, cleanup This results in less overhead and conflict since components will not try to prematurely connect to the ones that haven't finished their set up. tests/taler: remove online test This was used to debug the insufficient balance problem, but it's not really that useful by itself. tests/taler: add nexus keys tests/taler: use bank initalAccounts option taler/tests: use initialAccount tests/taler: make nexus work tests/taler: don't run nexus test if there is no internet tests/taler: use openFirewall, remove manual package install fix(test): evaluation errors fix(test): create nexus role by enabling createLocalDatabase
2024-07-23 18:20:41 +01:00
taler = handleTest ./taler { };
2022-09-17 16:36:39 +02:00
tandoor-recipes = handleTest ./tandoor-recipes.nix { };
tandoor-recipes-script-name = handleTest ./tandoor-recipes-script-name.nix { };
tang = handleTest ./tang.nix { };
taskserver = handleTest ./taskserver.nix { };
taskchampion-sync-server = handleTest ./taskchampion-sync-server.nix { };
2022-10-12 21:16:02 +02:00
tayga = handleTest ./tayga.nix { };
technitium-dns-server = handleTest ./technitium-dns-server.nix { };
teeworlds = handleTest ./teeworlds.nix { };
2025-03-12 12:11:18 +10:00
telegraf = runTest ./telegraf.nix;
2022-01-10 13:46:47 +01:00
teleport = handleTest ./teleport.nix { };
2024-07-04 20:36:22 +02:00
teleports = runTest ./teleports.nix;
2022-01-10 21:29:04 -05:00
thelounge = handleTest ./thelounge.nix { };
terminal-emulators = handleTest ./terminal-emulators.nix { };
thanos = handleTest ./thanos.nix { };
tiddlywiki = handleTest ./tiddlywiki.nix { };
tigervnc = handleTest ./tigervnc.nix { };
2024-07-12 12:59:00 +02:00
tika = runTest ./tika.nix;
2019-12-02 23:28:53 +01:00
timezone = handleTest ./timezone.nix { };
timidity = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./timidity { };
tinc = handleTest ./tinc { };
2019-05-16 23:42:02 +02:00
tinydns = handleTest ./tinydns.nix { };
2023-05-05 21:02:11 +02:00
tinyproxy = handleTest ./tinyproxy.nix { };
tinywl = handleTest ./tinywl.nix { };
tmate-ssh-server = handleTest ./tmate-ssh-server.nix { };
tomcat = handleTest ./tomcat.nix { };
tor = handleTest ./tor.nix { };
tpm-ek = handleTest ./tpm-ek { };
traefik = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./traefik.nix;
2021-04-10 01:48:51 +09:00
trafficserver = handleTest ./trafficserver.nix { };
2024-01-25 12:23:53 +08:00
transfer-sh = handleTest ./transfer-sh.nix { };
transmission_3 = handleTest ./transmission.nix { transmission = pkgs.transmission_3; };
2023-09-23 21:27:17 +10:00
transmission_4 = handleTest ./transmission.nix { transmission = pkgs.transmission_4; };
# tracee requires bpf
tracee = handleTestOn [ "x86_64-linux" ] ./tracee.nix { };
2019-08-16 17:00:07 +02:00
trezord = handleTest ./trezord.nix { };
2019-11-01 11:03:23 +01:00
trickster = handleTest ./trickster.nix { };
2020-11-29 20:00:38 -03:00
trilium-server = handleTestOn [ "x86_64-linux" ] ./trilium-server.nix { };
tsm-client-gui = handleTest ./tsm-client-gui.nix { };
ttyd = handleTest ./web-servers/ttyd.nix { };
2024-11-16 23:27:27 +01:00
tt-rss = handleTest ./web-apps/tt-rss.nix { };
txredisapi = handleTest ./txredisapi.nix { };
2020-03-24 23:45:49 +01:00
tuptime = handleTest ./tuptime.nix { };
turbovnc-headless-server = handleTest ./turbovnc-headless-server.nix { };
2024-09-11 10:51:45 +08:00
turn-rs = handleTest ./turn-rs.nix { };
tuxguitar = runTest ./tuxguitar.nix;
twingate = runTest ./twingate.nix;
2023-07-19 00:29:30 +02:00
typesense = handleTest ./typesense.nix { };
2021-06-13 22:00:25 +02:00
ucarp = handleTest ./ucarp.nix { };
udisks2 = handleTest ./udisks2.nix { };
ulogd = handleTest ./ulogd/ulogd.nix { };
2025-03-06 15:37:18 +03:00
umurmur = handleTest ./umurmur.nix { };
2020-11-29 20:00:38 -03:00
unbound = handleTest ./unbound.nix { };
2021-12-17 15:55:13 -08:00
unifi = handleTest ./unifi.nix { };
unit-php = runTest ./web-servers/unit-php.nix;
2024-09-08 19:45:16 +02:00
unit-perl = handleTest ./web-servers/unit-perl.nix { };
2023-06-22 00:08:31 +07:00
upnp.iptables = handleTest ./upnp.nix { useNftables = false; };
upnp.nftables = handleTest ./upnp.nix { useNftables = true; };
2022-03-17 17:57:23 +01:00
uptermd = handleTest ./uptermd.nix { };
2022-09-23 07:04:23 +02:00
uptime-kuma = handleTest ./uptime-kuma.nix { };
2024-02-04 19:59:22 +01:00
urn-timer = handleTest ./urn-timer.nix { };
2021-01-16 23:15:52 +01:00
usbguard = handleTest ./usbguard.nix { };
2024-08-07 14:56:05 +02:00
userborn = runTest ./userborn.nix;
userborn-mutable-users = runTest ./userborn-mutable-users.nix;
userborn-immutable-users = runTest ./userborn-immutable-users.nix;
userborn-mutable-etc = runTest ./userborn-mutable-etc.nix;
userborn-immutable-etc = runTest ./userborn-immutable-etc.nix;
2021-02-15 14:40:54 -08:00
user-activation-scripts = handleTest ./user-activation-scripts.nix { };
user-enable-option = runTest ./user-enable-option.nix;
user-expiry = runTest ./user-expiry.nix;
user-home-mode = handleTest ./user-home-mode.nix { };
2024-03-21 03:30:37 +00:00
ustreamer = handleTest ./ustreamer.nix { };
2019-05-27 23:03:22 +02:00
uwsgi = handleTest ./uwsgi.nix { };
2020-06-12 16:12:51 +08:00
v2ray = handleTest ./v2ray.nix { };
varnish60 = runTest {
imports = [ ./varnish.nix ];
_module.args.package = pkgs.varnish60;
};
varnish75 = runTest {
imports = [ ./varnish.nix ];
_module.args.package = pkgs.varnish75;
};
varnish76 = runTest {
imports = [ ./varnish.nix ];
_module.args.package = pkgs.varnish76;
};
vault = handleTest ./vault.nix { };
2023-04-25 15:58:30 +02:00
vault-agent = handleTest ./vault-agent.nix { };
vault-dev = handleTest ./vault-dev.nix { };
2021-01-04 17:54:03 +01:00
vault-postgresql = handleTest ./vault-postgresql.nix { };
vaultwarden = discoverTests (import ./vaultwarden.nix);
2023-11-29 20:47:43 +01:00
vdirsyncer = handleTest ./vdirsyncer.nix { };
vector = handleTest ./vector { };
2025-02-22 00:08:42 +01:00
velocity = runTest ./velocity.nix;
2021-11-21 18:09:17 +01:00
vengi-tools = handleTest ./vengi-tools.nix { };
victoriametrics = handleTest ./victoriametrics { };
2021-06-26 14:26:17 +02:00
vikunja = handleTest ./vikunja.nix { };
virtualbox = handleTestOn [ "x86_64-linux" ] ./virtualbox.nix { };
2025-03-18 20:32:43 +00:00
vm-variant = handleTest ./vm-variant.nix { };
vscode-remote-ssh = handleTestOn [ "x86_64-linux" ] ./vscode-remote-ssh.nix { };
vscodium = discoverTests (import ./vscodium.nix);
vsftpd = handleTest ./vsftpd.nix { };
2024-12-06 23:32:16 +08:00
waagent = handleTest ./waagent.nix { };
2025-03-17 18:09:54 +00:00
wakapi = runTest ./wakapi.nix;
2022-11-24 20:46:05 +01:00
warzone2100 = handleTest ./warzone2100.nix { };
2020-06-18 14:19:13 +02:00
wasabibackend = handleTest ./wasabibackend.nix { };
wastebin = runTest ./wastebin.nix;
2024-01-19 23:38:27 +01:00
watchdogd = handleTest ./watchdogd.nix { };
2020-03-22 12:49:51 +01:00
webhook = runTest ./webhook.nix;
weblate = handleTest ./web-apps/weblate.nix { };
2024-05-25 22:32:17 +03:00
whisparr = handleTest ./whisparr.nix { };
2025-04-09 16:51:16 +02:00
whoami = runTest ./whoami.nix;
2024-10-16 02:16:15 +02:00
whoogle-search = handleTest ./whoogle-search.nix { };
wiki-js = runTest ./wiki-js.nix;
wine = handleTest ./wine.nix { };
wireguard = handleTest ./wireguard { };
2024-03-09 17:20:01 +01:00
wg-access-server = handleTest ./wg-access-server.nix { };
without-nix = handleTest ./without-nix.nix { };
2021-01-27 23:44:27 +09:00
wmderland = handleTest ./wmderland.nix { };
2024-03-16 14:26:22 +05:30
workout-tracker = handleTest ./workout-tracker.nix { };
wpa_supplicant = import ./wpa_supplicant.nix { inherit pkgs runTest; };
wordpress = runTest ./wordpress.nix;
wrappers = handleTest ./wrappers.nix { };
writefreely = import ./web-apps/writefreely.nix { inherit pkgs runTest; };
wstunnel = runTest ./wstunnel.nix;
xandikos = runTest ./xandikos.nix;
xautolock = runTest ./xautolock.nix;
xfce = runTest ./xfce.nix;
xfce-wayland = runTest ./xfce-wayland.nix;
xmonad = runTest ./xmonad.nix;
xmonad-xdg-autostart = runTest ./xmonad-xdg-autostart.nix;
xpadneo = runTest ./xpadneo.nix;
xrdp = runTest ./xrdp.nix;
xrdp-with-audio-pulseaudio = runTest ./xrdp-with-audio-pulseaudio.nix;
xscreensaver = runTest ./xscreensaver.nix;
xss-lock = runTest ./xss-lock.nix;
xterm = runTest ./xterm.nix;
xxh = runTest ./xxh.nix;
yabar = runTest ./yabar.nix;
ydotool = handleTest ./ydotool.nix { };
yggdrasil = runTest ./yggdrasil.nix;
your_spotify = runTest ./your_spotify.nix;
zammad = runTest ./zammad.nix;
zenohd = runTest ./zenohd.nix;
zeronet-conservancy = runTest ./zeronet-conservancy.nix;
2020-02-03 18:33:26 +01:00
zfs = handleTest ./zfs.nix { };
zigbee2mqtt_1 = runTest {
imports = [ ./zigbee2mqtt.nix ];
_module.args.package = pkgs.zigbee2mqtt_1;
};
zigbee2mqtt_2 = runTest {
imports = [ ./zigbee2mqtt.nix ];
_module.args.package = pkgs.zigbee2mqtt_2;
};
zipline = runTest ./zipline.nix;
zoneminder = runTest ./zoneminder.nix;
zookeeper = runTest ./zookeeper.nix;
zram-generator = runTest ./zram-generator.nix;
zrepl = runTest ./zrepl.nix;
zsh-history = runTest ./zsh-history.nix;
zwave-js = runTest ./zwave-js.nix;
zwave-js-ui = runTest ./zwave-js-ui.nix;
}