{ pkgs ? import ../pkgs.nix, arionTestingFlags ? {} }: let inherit (pkgs) nixosTest recurseIntoAttrs arion lib; hasEvalModulesType = (lib.evalModules { modules = [ {} ]; })?type; in recurseIntoAttrs { test = nixosTest ./arion-test; nixosModuleWithDocker = lib.optionalAttrs hasEvalModulesType ( import ./nixos-virtualization-arion-test/test.nix pkgs { virtualisation.arion.backend = "docker"; } ); nixosModuleWithPodman = lib.optionalAttrs (hasEvalModulesType && arionTestingFlags.nixosHasPodmanDockerSocket) ( import ./nixos-virtualization-arion-test/test.nix pkgs { virtualisation.arion.backend = "podman-socket"; } ); testWithPodman = if arionTestingFlags.nixosHasPodmanDockerSocket then nixosTest (import ./arion-test { usePodman = true; inherit pkgs lib; }) else {}; testBuild = arion.build { # To be more accurately, you can do # pkgs = import ../examples/minimal/arion-pkgs.nix; # but this is quite efficient: inherit pkgs; modules = [ ../examples/minimal/arion-compose.nix ]; }; }