Test failures in Docker #1202

Open
opened 2026-04-28 19:37:16 +00:00 by mweinelt · 2 comments
Member

Describe the bug

When building Lix inside a Docker container, I use docker.nix-community.org/nixpkgs/nix-flakes, I see various test failures and at least one test blocks until timeout.

Steps To Reproduce

docker run -it --rm docker.nix-community.org/nixpkgs/nix-flakes
git clone https://git.lix.systems/lix-project/lix
cd lix
nix develop
just setup
just test

Expected behavior

Tests are succeeding or skipped, when they don't work in Docker.

nix --version output

faaa14a303

x86_64-linux

Additional context

List of failing tests
lix> mesonCheckPhase flags: --suite=installcheck --max-lines=10000 --timeout-multiplier=0
lix>  1/76 lix:installcheck / functional-test-infra                                   OK              0.46s
lix>  2/76 lix:installcheck / functional-repair-chroot                                SKIP            0.39s   exit status 77
lix>  3/76 lix:installcheck / functional-init                                         OK              0.51s
lix>  4/76 lix:installcheck / functional-fetchPath                                    OK              0.56s
lix>  5/76 lix:installcheck / functional-legacy-ssh-store                             OK              0.70s
lix>  6/76 lix:installcheck / functional-build-remote-input-addressed                 SKIP            0.51s   exit status 77
lix>  7/76 lix:installcheck / functional-nix-shell-regression-533                     OK              0.81s
lix>  8/76 lix:installcheck / functional-fixed                                        OK              1.04s
lix>  9/76 lix:installcheck / functional-build-remote-content-addressed-fixed         SKIP            0.58s   exit status 77
lix> 10/76 lix:installcheck / functional-fetchGitLocked                               OK              1.42s
lix> 11/76 lix:installcheck / functional-fetchTree-file                               OK              1.57s
lix> 12/76 lix:installcheck / functional-readfile-context                             OK              1.58s
lix> 13/76 lix:installcheck / functional-substitute-with-invalid-ca                   OK              1.80s
lix> 14/76 lix:installcheck / functional-referrers                                    OK              1.89s
lix> 15/76 lix:installcheck / functional-experimental-features                        OK              2.11s
lix> 16/76 lix:installcheck / functional-secure-drv-outputs                           OK              1.99s
lix> 17/76 lix:installcheck / functional-binary-cache-regression-fj647                OK              2.23s
lix> 18/76 lix:installcheck / functional-linux-sandbox                                SKIP            0.55s   exit status 77
lix> 19/76 lix:installcheck / functional-supplementary-groups                         SKIP            0.49s   exit status 77
lix> 20/76 lix:installcheck / functional-filter-source                                OK              0.85s
lix> 21/76 lix:installcheck / functional-config                                       OK              1.19s
lix> 22/76 lix:installcheck / functional-gc-concurrent                                OK              2.74s
lix> 23/76 lix:installcheck / functional-misc                                         OK              1.04s
lix> 24/76 lix:installcheck / functional-restricted                                   OK              2.81s
lix> 25/76 lix:installcheck / functional-structured-attrs                             OK              0.85s
lix> 26/76 lix:installcheck / functional-nix-shell-structured-attrs                   OK              2.91s
lix> 27/76 lix:installcheck / functional-export                                       OK              1.87s
lix> 28/76 lix:installcheck / functional-fetchers                                     OK              3.34s
lix> 29/76 lix:installcheck / functional-db-migration                                 SKIP            0.48s   exit status 77
lix> 30/76 lix:installcheck / functional-logging                                      OK              2.42s
lix> 31/76 lix:installcheck / functional-bash-profile                                 OK              0.52s
lix> 32/76 lix:installcheck / functional-fetchurl                                     OK              3.49s
lix> 33/76 lix:installcheck / functional-derivation-json                              OK              0.76s
lix> 34/76 lix:installcheck / functional-dependencies                                 OK              3.20s
lix> 35/76 lix:installcheck / functional-shell                                        SKIP            1.43s   exit status 77
lix> 36/76 lix:installcheck / functional-nix-build                                    OK              3.79s
lix> 37/76 lix:installcheck / functional-pre-hook                                     OK              1.29s
lix> 38/76 lix:installcheck / functional-nar-access                                   OK              3.23s
lix> 39/76 lix:installcheck / functional-nested-sandboxing                            SKIP            0.51s   exit status 77
lix> 40/76 lix:installcheck / functional-gc-runtime                                   OK              3.88s
lix> 41/76 lix:installcheck / functional-extra-sandbox-profile                        SKIP            0.48s   exit status 77
lix> 42/76 lix:installcheck / functional-flakes-show                                  OK              0.94s
lix> 43/76 lix:installcheck / functional-nix-collect-garbage-d                        OK              4.12s
lix> 44/76 lix:installcheck / functional-export-graph                                 OK              4.03s
lix> 45/76 lix:installcheck / functional-gc-non-blocking                              OK              4.07s
lix> 46/76 lix:installcheck / functional-plugins                                      OK              0.62s
lix> 47/76 lix:installcheck / functional-read-only-store                              OK              1.16s
lix> 48/76 lix:installcheck / functional-nix-copy-ssh                                 OK              1.80s
lix> 49/76 lix:installcheck / functional-test-libstoreconsumer                        OK              0.81s
lix> 50/76 lix:installcheck / functional-repair                                       OK              4.30s
lix> 51/76 lix:installcheck / functional-check-reqs                                   OK              3.90s
lix> 52/76 lix:installcheck / functional-multiple-outputs                             OK              4.34s
lix> 53/76 lix:installcheck / functional-redirected-filter-source                     OK              0.78s
lix> 54/76 lix:installcheck / functional-build-dry                                    OK              2.33s
lix> 55/76 lix:installcheck / functional-nix-channel                                  OK              4.03s
lix> 56/76 lix:installcheck / functional-regression-484                               OK              0.88s
lix> 57/76 lix:installcheck / functional-signing                                      OK              4.38s
lix> 58/76 lix:installcheck / functional-mtls-substituter-ssl-client-cert             OK              1.04s
lix> 59/76 lix:installcheck / functional-eval-store                                   OK              2.13s
lix> 60/76 lix:installcheck / functional-nix-copy-ssh-ng                              OK              2.43s
lix> 61/76 lix:installcheck / functional-nix-collect-garbage-dry-run                  OK              5.04s
lix> 62/76 lix:installcheck / functional-repl                                         OK              4.43s
lix> 63/76 lix:installcheck / functional-fetchGitRefs                                 OK              5.33s
lix> 64/76 lix:installcheck / functional-fetchGitSubmodules                           OK              5.19s
lix> 65/76 lix:installcheck / functional-check                                        OK              5.87s
lix> 66/76 lix:installcheck / functional-nix-shell-basic                              OK              5.90s
lix> 67/76 lix:installcheck / repl-characterization-tests                             OK              2.39s
lix> 68/76 lix:installcheck / functional-post-hook                                    OK              3.70s
lix> 69/76 lix:installcheck / functional-gc                                           OK              6.67s
lix> ▶ 70/76 commands/test_build/test_timeout.py::test_timeout_close_log[files0]      FAIL          
lix> ▶ 70/76 cli/test_profile.py::TestKeepEnvDerivations.test_keep_derivations_enabled[files0] FAIL          
lix> ▶ 70/76 flakes/test_develop.py::TestDevelop.test_sets_in_nix_shell[extra_args1-files0] FAIL          
lix> ▶ 70/76 commands/test_build/test_timeout.py::test_timeout_nix3_silent[files0]    FAIL          
lix> ▶ 70/76 cli/test_profile.py::TestKeepEnvDerivations.test_keep_derivations_disabled[files0] FAIL          
lix> ▶ 70/76 flakes/test_develop.py::test_ignoring_lockfile_does_not_break_develop[files0] FAIL          
lix> ▶ 70/76 cli/test_store.py::test_path_from_hash_part[files0]                      FAIL          
lix> ▶ 70/76 build/test_build_jobless.py::test_j0_with_local_jobs[files0]             FAIL          
lix> ▶ 70/76 build/test_ca.py::test_missing_cert_in_ia_builds[False-files0]           FAIL          
lix> ▶ 70/76 build/test_ca.py::test_missing_cert_in_fod_builds[False--files0]         FAIL          
lix> ▶ 70/76 build/test_ca.py::test_missing_cert_in_fod_builds[False-/nowhere-files0] FAIL          
lix> 71/76 lix:installcheck / functional-user-envs                                    OK              8.42s
lix> ▶ 70/76 build/test_ca.py::test_presence_cert_in_fod_builds[False-cert-files0]    FAIL          
lix> 72/76 lix:installcheck / functional-fetchGit                                     OK              8.48s
lix> 73/76 lix:installcheck / functional-binary-cache                                 OK              8.64s
lix> ▶ 70/76 build/test_ca.py::test_presence_cert_in_fod_builds[False-symlinked-cert-files0] FAIL          
lix> ▶ 70/76 build/test_ca.py::TestCertClobberingInFODs.test_no_env[False-files0]     FAIL          
lix> ▶ 70/76 commands/test_build/test_build_fod.py::test_url_mismatch[files0]         FAIL          
lix> ▶ 70/76 build/test_ca.py::TestCertClobberingInFODs.test_with_env_with_flag[False-files0] FAIL          
lix> ▶ 70/76 commands/test_build/test_build_fod.py::test_url_keep_going_1[files0]     FAIL          
lix> ▶ 70/76 build/test_ca.py::TestCertClobberingInFODs.test_with_env_no_flag[False-files0] FAIL          
lix> ▶ 70/76 commands/test_build/test_build_fod.py::test_url_keep_going_2[files0]     FAIL          
lix> ▶ 70/76 build/test_ca.py::TestCertClobberingInFODs.test_with_valid_env_no_flag[False-files0] FAIL          
lix> ▶ 70/76 commands/test_build/test_build_fod.py::test_missing_dependency[files0]   FAIL          
lix> ▶ 70/76 commands/test_build/test_build_fod.py::test_missing_dependency_keep_going[files0] FAIL          
lix> ▶ 70/76 build/test_delete.py::test_regression_6572_independent[files0]           FAIL          
lix> ▶ 70/76 commands/test_build/test_build_fod.py::test_build_inaccessible_build_dir[files0] FAIL          
lix> ▶ 70/76 build/test_delete.py::test_regression_6572_dependent[files0]             FAIL          
lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_outputs[files0] FAIL          
lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_circumflex_0[files0] FAIL          
lix> ▶ 70/76 build/test_fixed.py::test_bad[files0]                                    FAIL          
lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_circumflex_1[files0] FAIL          s passed
lix> ▶ 70/76 build/test_fixed.py::test_good[files0]                                   FAIL           subtests passed
lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_circumflex_2[files0] FAIL          assed
lix> ▶ 70/76 build/test_fixed.py::test_good2[files0]                                  FAIL           subtests passed
lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_outputs_to_install[files0] FAIL          
lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_outputs_to_install_overridden_0[files0] FAIL          
lix> ▶ 70/76 build/test_fixed.py::test_other_store_references[files0]                 FAIL           subtests passed
lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_outputs_to_install_overridden_1[files0] FAIL          
lix> ▶ 70/76 build/test_fixed.py::test_illegal_references[files0]                     FAIL           subtests passed
lix> ▶ 70/76 flakes/test_cli.py::test_eval_system_takes_effect                        FAIL           subtests passed
lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_non_drv[files0] FAIL          sts passed
lix> ▶ 70/76 build/test_fixed.py::test_parallel_same[files0]                          FAIL           subtests passed
lix> ▶ 70/76 flakes/test_cli.py::TestGetFlake.test_unlocked_impure_works              FAIL           subtests passed
lix> ▶ 70/76 build/test_import_from_derivation.py::test_warn_ifd[files0]              FAIL           subtests passed
lix> ▶ 70/76 flakes/test_cli.py::TestGetFlake.test_locked_url_pure_works              FAIL           subtests passed
lix> ▶ 70/76 build/test_import_from_derivation.py::test_allow_ifd[files0]             FAIL          
lix> ▶ 70/76 build/test_output_normalization.py::test_output_normalization[files0]    FAIL          
lix> ▶ 70/76 build/test_pass_as_file.py::test_pass_as_file[files0]                    FAIL          
lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_drv_first[files0] FAIL          
lix> 74/76 lix:installcheck / functional-gc-auto                                      OK             11.56s
lix> 75/76 lix:installcheck / functional-remote-store                                 OK             11.65s
lix> ▶ 70/76 build/test_substitution.py::test_substitution_fallback_good_first        FAIL          
lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_drv_first_second[files0] FAIL          
lix> ▶ 70/76 build/test_substitution.py::test_substitution_fallback_bad_first         FAIL          
lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_drv_star[files0] FAIL          
lix> ▶ 70/76 build/test_substitution.py::test_substitution_fallback_may_build         FAIL          
lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_impure[files0] FAIL          ubtests passed
lix> ▶ 70/76 build/test_substitution.py::test_substitution_fallback_no_build          FAIL           subtests passed
lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_stdin_stuff[files0] FAIL          passed
lix> ▶ 70/76 commands/test_store_delete/test_unlink.py::test_store_delete_unlink[files0] FAIL          btests passed
lix> ▶ 70/76 commands/test_build/test_build_output_cycles.py::test_cycle[files0]      FAIL           subtests passed
lix> ▶ 70/76 commands/test_store_delete/test_unlink.py::test_store_delete_unlink_closure[files0] FAIL          assed
lix> ▶ 70/76 commands/test_build/test_build_output_cycles.py::test_cycle_in_dependency[files0] FAIL           passed
lix> ▶ 70/76 commands/test_why_depends.py::test_command_doesnt_crash[files0]          FAIL           subtests passed
lix> ▶ 70/76 commands/test_build/test_build_output_cycles.py::test_cycle_with_deps[files0] FAIL          ests passed
lix> ▶ 70/76 commands/test_why_depends.py::test_fast_depends[files0]                  FAIL           subtests passed
lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_references_detected[files0] FAIL          sts passed
lix> ▶ 70/76 commands/test_why_depends.py::test_precise_depends[files0]               FAIL           subtests passed
lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_allowed_references_error[files0] FAIL          
lix> ▶ 70/76 commands/test_why_depends.py::test_self_ref[files0]                      FAIL          
lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_allowed_references_ok[test4-files0] FAIL          
lix> ▶ 70/76 commands/test_why_depends.py::test_all[files0]                           FAIL          
lix> ▶ 70/76 store/test_gc.py::test_selfref_gc[files0]                                FAIL          
lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_allowed_references_ok[test5-files0] FAIL          
lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_allowed_references_ok[test7-files0] FAIL          
lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_allowed_reference_self_reference[files0] FAIL          
lix> ▶ 70/76 cli/test_fmt.py::TestFmt.test_no_args[files0]                            FAIL          
lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_disallowed_references[files0] FAIL          
lix> ▶ 70/76 cli/test_fmt.py::TestFmt.test_forwarding[files0]                         FAIL          731 subtests passed
lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_structured_attrs_discard[files0] FAIL          assed
lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up_without_installable[files0] FAIL          
lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_reference_specifier[files0] FAIL          sts passed
lix> ▶ 70/76 cli/test_profile.py::TestUpgradeProfile.test_nix_env_upgrade[files0]     FAIL           subtests passed
lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_regression_partial_build[files0] FAIL          assed
lix> ▶ 70/76 cli/test_profile.py::TestUpgradeProfile.test_upgrade_from_v2[files0]     FAIL           subtests passed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball0-flags0-files0] FAIL          ts passed
lix> ▶ 70/76 store/test_optimise_store.py::TestOptimizeStore.test_optimise_store[files0] FAIL          btests passed
lix> ▶ 70/76 flakes/test_cli.py::TestWithNonFlake.TestFetchIsLazy.test_deps_fetched_when_present[files0] FAIL          
lix> ▶ 70/76 cli/test_profile.py::TestBasicOperations.test_xdg_base_dir_support[files0] FAIL          ubtests passed
lix> ▶ 70/76 cli/test_profile.py::TestBasicOperations.test_wipe_history[files0]       FAIL           subtests passed
lix> ▶ 70/76 store/test_optimise_store.py::TestOptimizeStore.test_optimise_store_daemon[legacy-combined-files0] FAIL          
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball0-flags1-files0] FAIL          ts passed
lix> ▶ 70/76 cli/test_profile.py::TestBasicOperations.test_install_non_flake[files0]  FAIL           subtests passed
lix> ▶ 70/76 store/test_placeholders.py::test_placeholders[files0]                    FAIL           subtests passed
lix> ▶ 70/76 cli/test_profile.py::TestBasicOperations.test_install_different_sources[files0] FAIL          ts passed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball0-flags2-files0] FAIL          
lix> ▶ 70/76 cli/test_profile.py::TestBasicOperations.test_priority[files0]           FAIL          
lix> ▶ 70/76 store/test_simple.py::test_out_path[files0]                              FAIL          
lix> ▶ 70/76 flakes/test_cli.py::test_symlinks_in_flakes_are_not_flakes               FAIL          
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball0-flags3-files0] FAIL          
lix> ▶ 70/76 cli/test_profile.py::TestProfileContentUpgrade.test_upgrade_succeeded[files0] FAIL          
lix> ▶ 70/76 flakes/test_subdir_flake.py::test_subdir_flake[files0]                   FAIL          
lix> ▶ 70/76 cli/test_profile.py::TestProfileContentUpgrade.test_diff_closures_works[files0] FAIL          
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball1-flags0-files0] FAIL          
lix> ▶ 70/76 cli/test_profile.py::TestProfileContentUpgrade.test_rollback_works[files0] FAIL          
lix> ▶ 70/76 cli/test_profile.py::test_uninstall[files0]                              FAIL          
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball1-flags1-files0] FAIL          
lix> ▶ 70/76 cli/test_profile.py::test_output_override[files0]                        FAIL          
lix> ▶ 70/76 flakes/test_cli.py::test_flakes_gcroots                                  FAIL          891 subtests passed
lix> ▶ 70/76 cli/test_profile.py::test_conflict_resolution_cppnix_8284[files0]        FAIL           subtests passed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball1-flags2-files0] FAIL          ts passed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball1-flags3-files0] FAIL          ts passed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball2-flags0-files0] FAIL          ts passed
lix> ▶ 70/76 flakes/test_inputs.py::test_subdir_self_path[files0]                     FAIL           subtests passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_build_attr                            FAIL           subtests passed
lix> ▶ 70/76 flakes/test_inputs.py::test_git_subdir_self_path[files0]                 FAIL           subtests passed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball2-flags1-files0] FAIL          ts passed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball2-flags2-files0] FAIL          ts passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_build_without_attr_registry           FAIL          
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball2-flags3-files0] FAIL          
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_tarball_symlink_extraction[tarball0-files0] FAIL          
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_build_without_attr_url[]              FAIL          
lix> ▶ 70/76 commands/test_build/test_timeout.py::test_timeout_timeout[files0]        FAIL          
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_tarball_symlink_extraction[tarball1-files0] FAIL          
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[git+file://-args1] FAIL          
lix> ▶ 70/76 commands/test_build/test_timeout.py::test_timeout_max_log[files0]        FAIL          
lix> ▶ 70/76 flakes/test_build_paths.py::TestBuild.test_build_a12[files0]             FAIL          
lix> ▶ 70/76 commands/test_build/test_timeout.py::test_timeout_silent[files0]         FAIL          977 subtests passed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_tarball_symlink_extraction[tarball2-files0] FAIL          sed
lix> ▶ 70/76 flakes/test_bundle.py::test_bundle[.                                     FAIL           subtests passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_build_without_attr_url[git+file://]   FAIL           subtests passed
lix> ▶ 70/76 flakes/test_run.py::TestFlakeRun.test_run_succeeds[appAsApp-files0]      FAIL           subtests passed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball0-import (fetchTree "file://{tarball}")-files0] FAIL          
lix> ▶ 70/76 flakes/test_bundle.py::test_bundle[.                                     FAIL           subtests passed
lix> ▶ 70/76 flakes/test_run.py::TestFlakeRun.test_run_succeeds[pkgAsPkg-files0]      FAIL           subtests passed
lix> ▶ 70/76 flakes/test_bundle.py::test_bundle[.                                     FAIL           subtests passed
lix> 76/76 lix:installcheck / functional-binary-cache-build-remote                    OK             17.58sests passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[git+file://-args2] FAIL          
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball0-import (fetchTree {{ type = "tarball"; url = "file://{tarball}"; }})-files0] FAIL          
lix> ▶ 70/76 flakes/test_bundle.py::test_bundle[.                                     FAIL           subtests passed
lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args0-files0] FAIL          d
lix> ▶ 70/76 flakes/test_bundle.py::test_bundle[.                                     FAIL          1 subtests passed
lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args1-files0] FAIL          ed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball0-import (fetchTree {{ type = "tarball"; url = "file://{tarball}"; narHash = "{tar_hash}"; }})-files0] FAIL          
lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args2-files0] FAIL          ed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball1-import (fetchTree "file://{tarball}")-files0] FAIL          
lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args3-files0] FAIL          ed
lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args4-files0] FAIL          ed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[git+file://-args3] FAIL          
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball1-import (fetchTree {{ type = "tarball"; url = "file://{tarball}"; }})-files0] FAIL          
lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args5-files0] FAIL          ed
lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args6-files0] FAIL          ed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball1-import (fetchTree {{ type = "tarball"; url = "file://{tarball}"; narHash = "{tar_hash}"; }})-files0] FAIL          
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_impure_build_unlocked_deps_succeeds_with_no_write FAIL          assed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball2-import (fetchTree "file://{tarball}")-files0] FAIL          
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball2-import (fetchTree {{ type = "tarball"; url = "file://{tarball}"; }})-files0] FAIL          
lix> ▶ 70/76 store/cache/test_cache_compressions.py::test_cache_compressions[br-files0] FAIL          subtests passed
lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball2-import (fetchTree {{ type = "tarball"; url = "file://{tarball}"; narHash = "{tar_hash}"; }})-files0] FAIL          
lix> ▶ 70/76 store/cache/test_cache_compressions.py::test_cache_compressions[zstd-files0] FAIL          btests passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_indirect_dependencies                 FAIL          1 subtests passed
lix> ▶ 70/76 store/cache/test_cache_compressions.py::test_cache_compressions[xz-files0] FAIL          subtests passed
lix> ▶ 70/76 store/cache/test_compression_levels.py::test_compression_levels[files0]  FAIL          4 subtests passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestIncompleteLockfile.test_build[sth%20sth] FAIL          subtests passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_build_unlocked_succeeds_with_no_write FAIL          7 subtests passed
lix> ▶ 70/76 store/cache/test_substitute_truncated_nar.py::test_substitute_truncated_nar FAIL          ubtests passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_bare_repo                             FAIL          0 subtests passed
lix> ▶ 70/76 flakes/test_develop.py::TestDevelop.test_env_passthrough[files0]         FAIL          1074 subtests passed
lix> ▶ 70/76 flakes/test_config.py::TestFlakeConfig.test_post_hook_ignored_without_accept_config[files0] FAIL          
lix> ▶ 70/76 flakes/test_develop.py::TestDevelop.test_no_env_passthrough_on_ignore_environment[files0] FAIL          
lix> ▶ 70/76 flakes/test_config.py::TestFlakeConfig.test_post_hook_ignored_with_no_accept_config[files0] FAIL          
lix> ▶ 70/76 flakes/test_develop.py::TestDevelop.TestShell.test_shell_is_bash_interactive[extra_args0-files0] FAIL          
lix> ▶ 70/76 flakes/test_config.py::TestFlakeConfig.test_post_hook_runs_with_accept_config[files0] FAIL          ssed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_deep_build                            FAIL          3 subtests passed
lix> ▶ 70/76 flakes/test_develop.py::TestDevelop.TestShell.test_shell_is_bash_interactive[extra_args1-files0] FAIL          
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_tarball                               FAIL          5 subtests passed
lix> ▶ 70/76 flakes/test_develop.py::TestDevelop.test_sets_in_nix_shell[extra_args0-files0] FAIL          ests passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_rerunning_builds_does_not_change_lockfile FAIL          
lix> ▶ 70/76 flakes/test_cli.py::TestAddPath.test_add_flake                           FAIL          1098 subtests passed
lix> ▶ 70/76 flakes/test_cli.py::TestWithNonFlake.test_flake_lock_updates[files0]     FAIL          9 subtests passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_tarball_with_sri                      FAIL          1 subtests passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[-args2] FAIL          ests passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[-args0] FAIL          ests passed
lix> ▶ 70/76 store/test_dump_db.py::test_dump_db[files0]                              FAIL          0 subtests passed
lix> ▶ 70/76 flakes/test_cli.py::TestWithNonFlake.test_build_nonflake[files0]         FAIL          1 subtests passed
[1/25/26 built, 339 copied (3873.8 MiB), 679.8 MiB DL] building lix-2.96.0-devpre20260428-dev_faaa14a (installCheckPh[1/25/26 built, 339 copied (3873.8 MiB), 679.8 MiB DL] building lix-2.96.0-devpre20260428-dev_faaa14a (installCheckPhlix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[-args3] FAIL          ubtests passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[-args1] FAIL          ests passed
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestIncompleteLockfile.test_build[sth sth] FAIL          8 subtests passed
lix> ▶ 70/76 flakes/test_cli.py::TestWithNonFlake.TestFetchIsLazy.test_deps_not_fetched_unless_needed[files0] FAIL          
lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[git+file://-args0] FAIL          
lix> ▶ 70/76 flakes/test_mercurial.py::TestFlakeHg.test_build[files0]                 FAIL          1124 subtests passed
lix> ▶ 70/76 flakes/test_mercurial.py::TestFlakeHg.TestLocked.test_build[--no-registries-files0] FAIL          ts passed
lix> ▶ 70/76 flakes/test_mercurial.py::TestFlakeHg.TestLocked.test_build[--no-use-registries-files0] FAIL          assed
[1/25/26 built, 339 copied (3873.8 MiB), 679.8 MiB DL] building lix-2.96.0-devpre20260428-dev_faaa14a (installCheckPhase)
## Describe the bug When building Lix inside a Docker container, I use docker.nix-community.org/nixpkgs/nix-flakes, I see various test failures and at least one test blocks until timeout. ## Steps To Reproduce ``` docker run -it --rm docker.nix-community.org/nixpkgs/nix-flakes git clone https://git.lix.systems/lix-project/lix cd lix nix develop just setup just test ``` ## Expected behavior Tests are succeeding or skipped, when they don't work in Docker. ## `nix --version` output https://git.lix.systems/lix-project/lix/commit/faaa14a303dabc6309a52cc8e5eba86f9e29ccaf x86_64-linux ## Additional context <details><summary>List of failing tests</summary> <pre> lix> mesonCheckPhase flags: --suite=installcheck --max-lines=10000 --timeout-multiplier=0 lix> 1/76 lix:installcheck / functional-test-infra OK 0.46s lix> 2/76 lix:installcheck / functional-repair-chroot SKIP 0.39s exit status 77 lix> 3/76 lix:installcheck / functional-init OK 0.51s lix> 4/76 lix:installcheck / functional-fetchPath OK 0.56s lix> 5/76 lix:installcheck / functional-legacy-ssh-store OK 0.70s lix> 6/76 lix:installcheck / functional-build-remote-input-addressed SKIP 0.51s exit status 77 lix> 7/76 lix:installcheck / functional-nix-shell-regression-533 OK 0.81s lix> 8/76 lix:installcheck / functional-fixed OK 1.04s lix> 9/76 lix:installcheck / functional-build-remote-content-addressed-fixed SKIP 0.58s exit status 77 lix> 10/76 lix:installcheck / functional-fetchGitLocked OK 1.42s lix> 11/76 lix:installcheck / functional-fetchTree-file OK 1.57s lix> 12/76 lix:installcheck / functional-readfile-context OK 1.58s lix> 13/76 lix:installcheck / functional-substitute-with-invalid-ca OK 1.80s lix> 14/76 lix:installcheck / functional-referrers OK 1.89s lix> 15/76 lix:installcheck / functional-experimental-features OK 2.11s lix> 16/76 lix:installcheck / functional-secure-drv-outputs OK 1.99s lix> 17/76 lix:installcheck / functional-binary-cache-regression-fj647 OK 2.23s lix> 18/76 lix:installcheck / functional-linux-sandbox SKIP 0.55s exit status 77 lix> 19/76 lix:installcheck / functional-supplementary-groups SKIP 0.49s exit status 77 lix> 20/76 lix:installcheck / functional-filter-source OK 0.85s lix> 21/76 lix:installcheck / functional-config OK 1.19s lix> 22/76 lix:installcheck / functional-gc-concurrent OK 2.74s lix> 23/76 lix:installcheck / functional-misc OK 1.04s lix> 24/76 lix:installcheck / functional-restricted OK 2.81s lix> 25/76 lix:installcheck / functional-structured-attrs OK 0.85s lix> 26/76 lix:installcheck / functional-nix-shell-structured-attrs OK 2.91s lix> 27/76 lix:installcheck / functional-export OK 1.87s lix> 28/76 lix:installcheck / functional-fetchers OK 3.34s lix> 29/76 lix:installcheck / functional-db-migration SKIP 0.48s exit status 77 lix> 30/76 lix:installcheck / functional-logging OK 2.42s lix> 31/76 lix:installcheck / functional-bash-profile OK 0.52s lix> 32/76 lix:installcheck / functional-fetchurl OK 3.49s lix> 33/76 lix:installcheck / functional-derivation-json OK 0.76s lix> 34/76 lix:installcheck / functional-dependencies OK 3.20s lix> 35/76 lix:installcheck / functional-shell SKIP 1.43s exit status 77 lix> 36/76 lix:installcheck / functional-nix-build OK 3.79s lix> 37/76 lix:installcheck / functional-pre-hook OK 1.29s lix> 38/76 lix:installcheck / functional-nar-access OK 3.23s lix> 39/76 lix:installcheck / functional-nested-sandboxing SKIP 0.51s exit status 77 lix> 40/76 lix:installcheck / functional-gc-runtime OK 3.88s lix> 41/76 lix:installcheck / functional-extra-sandbox-profile SKIP 0.48s exit status 77 lix> 42/76 lix:installcheck / functional-flakes-show OK 0.94s lix> 43/76 lix:installcheck / functional-nix-collect-garbage-d OK 4.12s lix> 44/76 lix:installcheck / functional-export-graph OK 4.03s lix> 45/76 lix:installcheck / functional-gc-non-blocking OK 4.07s lix> 46/76 lix:installcheck / functional-plugins OK 0.62s lix> 47/76 lix:installcheck / functional-read-only-store OK 1.16s lix> 48/76 lix:installcheck / functional-nix-copy-ssh OK 1.80s lix> 49/76 lix:installcheck / functional-test-libstoreconsumer OK 0.81s lix> 50/76 lix:installcheck / functional-repair OK 4.30s lix> 51/76 lix:installcheck / functional-check-reqs OK 3.90s lix> 52/76 lix:installcheck / functional-multiple-outputs OK 4.34s lix> 53/76 lix:installcheck / functional-redirected-filter-source OK 0.78s lix> 54/76 lix:installcheck / functional-build-dry OK 2.33s lix> 55/76 lix:installcheck / functional-nix-channel OK 4.03s lix> 56/76 lix:installcheck / functional-regression-484 OK 0.88s lix> 57/76 lix:installcheck / functional-signing OK 4.38s lix> 58/76 lix:installcheck / functional-mtls-substituter-ssl-client-cert OK 1.04s lix> 59/76 lix:installcheck / functional-eval-store OK 2.13s lix> 60/76 lix:installcheck / functional-nix-copy-ssh-ng OK 2.43s lix> 61/76 lix:installcheck / functional-nix-collect-garbage-dry-run OK 5.04s lix> 62/76 lix:installcheck / functional-repl OK 4.43s lix> 63/76 lix:installcheck / functional-fetchGitRefs OK 5.33s lix> 64/76 lix:installcheck / functional-fetchGitSubmodules OK 5.19s lix> 65/76 lix:installcheck / functional-check OK 5.87s lix> 66/76 lix:installcheck / functional-nix-shell-basic OK 5.90s lix> 67/76 lix:installcheck / repl-characterization-tests OK 2.39s lix> 68/76 lix:installcheck / functional-post-hook OK 3.70s lix> 69/76 lix:installcheck / functional-gc OK 6.67s lix> ▶ 70/76 commands/test_build/test_timeout.py::test_timeout_close_log[files0] FAIL lix> ▶ 70/76 cli/test_profile.py::TestKeepEnvDerivations.test_keep_derivations_enabled[files0] FAIL lix> ▶ 70/76 flakes/test_develop.py::TestDevelop.test_sets_in_nix_shell[extra_args1-files0] FAIL lix> ▶ 70/76 commands/test_build/test_timeout.py::test_timeout_nix3_silent[files0] FAIL lix> ▶ 70/76 cli/test_profile.py::TestKeepEnvDerivations.test_keep_derivations_disabled[files0] FAIL lix> ▶ 70/76 flakes/test_develop.py::test_ignoring_lockfile_does_not_break_develop[files0] FAIL lix> ▶ 70/76 cli/test_store.py::test_path_from_hash_part[files0] FAIL lix> ▶ 70/76 build/test_build_jobless.py::test_j0_with_local_jobs[files0] FAIL lix> ▶ 70/76 build/test_ca.py::test_missing_cert_in_ia_builds[False-files0] FAIL lix> ▶ 70/76 build/test_ca.py::test_missing_cert_in_fod_builds[False--files0] FAIL lix> ▶ 70/76 build/test_ca.py::test_missing_cert_in_fod_builds[False-/nowhere-files0] FAIL lix> 71/76 lix:installcheck / functional-user-envs OK 8.42s lix> ▶ 70/76 build/test_ca.py::test_presence_cert_in_fod_builds[False-cert-files0] FAIL lix> 72/76 lix:installcheck / functional-fetchGit OK 8.48s lix> 73/76 lix:installcheck / functional-binary-cache OK 8.64s lix> ▶ 70/76 build/test_ca.py::test_presence_cert_in_fod_builds[False-symlinked-cert-files0] FAIL lix> ▶ 70/76 build/test_ca.py::TestCertClobberingInFODs.test_no_env[False-files0] FAIL lix> ▶ 70/76 commands/test_build/test_build_fod.py::test_url_mismatch[files0] FAIL lix> ▶ 70/76 build/test_ca.py::TestCertClobberingInFODs.test_with_env_with_flag[False-files0] FAIL lix> ▶ 70/76 commands/test_build/test_build_fod.py::test_url_keep_going_1[files0] FAIL lix> ▶ 70/76 build/test_ca.py::TestCertClobberingInFODs.test_with_env_no_flag[False-files0] FAIL lix> ▶ 70/76 commands/test_build/test_build_fod.py::test_url_keep_going_2[files0] FAIL lix> ▶ 70/76 build/test_ca.py::TestCertClobberingInFODs.test_with_valid_env_no_flag[False-files0] FAIL lix> ▶ 70/76 commands/test_build/test_build_fod.py::test_missing_dependency[files0] FAIL lix> ▶ 70/76 commands/test_build/test_build_fod.py::test_missing_dependency_keep_going[files0] FAIL lix> ▶ 70/76 build/test_delete.py::test_regression_6572_independent[files0] FAIL lix> ▶ 70/76 commands/test_build/test_build_fod.py::test_build_inaccessible_build_dir[files0] FAIL lix> ▶ 70/76 build/test_delete.py::test_regression_6572_dependent[files0] FAIL lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_outputs[files0] FAIL lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_circumflex_0[files0] FAIL lix> ▶ 70/76 build/test_fixed.py::test_bad[files0] FAIL lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_circumflex_1[files0] FAIL s passed lix> ▶ 70/76 build/test_fixed.py::test_good[files0] FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_circumflex_2[files0] FAIL assed lix> ▶ 70/76 build/test_fixed.py::test_good2[files0] FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_outputs_to_install[files0] FAIL lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_outputs_to_install_overridden_0[files0] FAIL lix> ▶ 70/76 build/test_fixed.py::test_other_store_references[files0] FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_outputs_to_install_overridden_1[files0] FAIL lix> ▶ 70/76 build/test_fixed.py::test_illegal_references[files0] FAIL subtests passed lix> ▶ 70/76 flakes/test_cli.py::test_eval_system_takes_effect FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_non_drv[files0] FAIL sts passed lix> ▶ 70/76 build/test_fixed.py::test_parallel_same[files0] FAIL subtests passed lix> ▶ 70/76 flakes/test_cli.py::TestGetFlake.test_unlocked_impure_works FAIL subtests passed lix> ▶ 70/76 build/test_import_from_derivation.py::test_warn_ifd[files0] FAIL subtests passed lix> ▶ 70/76 flakes/test_cli.py::TestGetFlake.test_locked_url_pure_works FAIL subtests passed lix> ▶ 70/76 build/test_import_from_derivation.py::test_allow_ifd[files0] FAIL lix> ▶ 70/76 build/test_output_normalization.py::test_output_normalization[files0] FAIL lix> ▶ 70/76 build/test_pass_as_file.py::test_pass_as_file[files0] FAIL lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_drv_first[files0] FAIL lix> 74/76 lix:installcheck / functional-gc-auto OK 11.56s lix> 75/76 lix:installcheck / functional-remote-store OK 11.65s lix> ▶ 70/76 build/test_substitution.py::test_substitution_fallback_good_first FAIL lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_drv_first_second[files0] FAIL lix> ▶ 70/76 build/test_substitution.py::test_substitution_fallback_bad_first FAIL lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_drv_star[files0] FAIL lix> ▶ 70/76 build/test_substitution.py::test_substitution_fallback_may_build FAIL lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_impure[files0] FAIL ubtests passed lix> ▶ 70/76 build/test_substitution.py::test_substitution_fallback_no_build FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_build_multiple_outputs.py::test_build_stdin_stuff[files0] FAIL passed lix> ▶ 70/76 commands/test_store_delete/test_unlink.py::test_store_delete_unlink[files0] FAIL btests passed lix> ▶ 70/76 commands/test_build/test_build_output_cycles.py::test_cycle[files0] FAIL subtests passed lix> ▶ 70/76 commands/test_store_delete/test_unlink.py::test_store_delete_unlink_closure[files0] FAIL assed lix> ▶ 70/76 commands/test_build/test_build_output_cycles.py::test_cycle_in_dependency[files0] FAIL passed lix> ▶ 70/76 commands/test_why_depends.py::test_command_doesnt_crash[files0] FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_build_output_cycles.py::test_cycle_with_deps[files0] FAIL ests passed lix> ▶ 70/76 commands/test_why_depends.py::test_fast_depends[files0] FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_references_detected[files0] FAIL sts passed lix> ▶ 70/76 commands/test_why_depends.py::test_precise_depends[files0] FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_allowed_references_error[files0] FAIL lix> ▶ 70/76 commands/test_why_depends.py::test_self_ref[files0] FAIL lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_allowed_references_ok[test4-files0] FAIL lix> ▶ 70/76 commands/test_why_depends.py::test_all[files0] FAIL lix> ▶ 70/76 store/test_gc.py::test_selfref_gc[files0] FAIL lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_allowed_references_ok[test5-files0] FAIL lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_allowed_references_ok[test7-files0] FAIL lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_allowed_reference_self_reference[files0] FAIL lix> ▶ 70/76 cli/test_fmt.py::TestFmt.test_no_args[files0] FAIL lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_disallowed_references[files0] FAIL lix> ▶ 70/76 cli/test_fmt.py::TestFmt.test_forwarding[files0] FAIL 731 subtests passed lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_structured_attrs_discard[files0] FAIL assed lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up_without_installable[files0] FAIL lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_reference_specifier[files0] FAIL sts passed lix> ▶ 70/76 cli/test_profile.py::TestUpgradeProfile.test_nix_env_upgrade[files0] FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_reference_checks.py::test_regression_partial_build[files0] FAIL assed lix> ▶ 70/76 cli/test_profile.py::TestUpgradeProfile.test_upgrade_from_v2[files0] FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball0-flags0-files0] FAIL ts passed lix> ▶ 70/76 store/test_optimise_store.py::TestOptimizeStore.test_optimise_store[files0] FAIL btests passed lix> ▶ 70/76 flakes/test_cli.py::TestWithNonFlake.TestFetchIsLazy.test_deps_fetched_when_present[files0] FAIL lix> ▶ 70/76 cli/test_profile.py::TestBasicOperations.test_xdg_base_dir_support[files0] FAIL ubtests passed lix> ▶ 70/76 cli/test_profile.py::TestBasicOperations.test_wipe_history[files0] FAIL subtests passed lix> ▶ 70/76 store/test_optimise_store.py::TestOptimizeStore.test_optimise_store_daemon[legacy-combined-files0] FAIL lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball0-flags1-files0] FAIL ts passed lix> ▶ 70/76 cli/test_profile.py::TestBasicOperations.test_install_non_flake[files0] FAIL subtests passed lix> ▶ 70/76 store/test_placeholders.py::test_placeholders[files0] FAIL subtests passed lix> ▶ 70/76 cli/test_profile.py::TestBasicOperations.test_install_different_sources[files0] FAIL ts passed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball0-flags2-files0] FAIL lix> ▶ 70/76 cli/test_profile.py::TestBasicOperations.test_priority[files0] FAIL lix> ▶ 70/76 store/test_simple.py::test_out_path[files0] FAIL lix> ▶ 70/76 flakes/test_cli.py::test_symlinks_in_flakes_are_not_flakes FAIL lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball0-flags3-files0] FAIL lix> ▶ 70/76 cli/test_profile.py::TestProfileContentUpgrade.test_upgrade_succeeded[files0] FAIL lix> ▶ 70/76 flakes/test_subdir_flake.py::test_subdir_flake[files0] FAIL lix> ▶ 70/76 cli/test_profile.py::TestProfileContentUpgrade.test_diff_closures_works[files0] FAIL lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball1-flags0-files0] FAIL lix> ▶ 70/76 cli/test_profile.py::TestProfileContentUpgrade.test_rollback_works[files0] FAIL lix> ▶ 70/76 cli/test_profile.py::test_uninstall[files0] FAIL lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball1-flags1-files0] FAIL lix> ▶ 70/76 cli/test_profile.py::test_output_override[files0] FAIL lix> ▶ 70/76 flakes/test_cli.py::test_flakes_gcroots FAIL 891 subtests passed lix> ▶ 70/76 cli/test_profile.py::test_conflict_resolution_cppnix_8284[files0] FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball1-flags2-files0] FAIL ts passed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball1-flags3-files0] FAIL ts passed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball2-flags0-files0] FAIL ts passed lix> ▶ 70/76 flakes/test_inputs.py::test_subdir_self_path[files0] FAIL subtests passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_build_attr FAIL subtests passed lix> ▶ 70/76 flakes/test_inputs.py::test_git_subdir_self_path[files0] FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball2-flags1-files0] FAIL ts passed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball2-flags2-files0] FAIL ts passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_build_without_attr_registry FAIL lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tarball[tarball2-flags3-files0] FAIL lix> ▶ 70/76 commands/test_build/test_tarball.py::test_tarball_symlink_extraction[tarball0-files0] FAIL lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_build_without_attr_url[] FAIL lix> ▶ 70/76 commands/test_build/test_timeout.py::test_timeout_timeout[files0] FAIL lix> ▶ 70/76 commands/test_build/test_tarball.py::test_tarball_symlink_extraction[tarball1-files0] FAIL lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[git+file://-args1] FAIL lix> ▶ 70/76 commands/test_build/test_timeout.py::test_timeout_max_log[files0] FAIL lix> ▶ 70/76 flakes/test_build_paths.py::TestBuild.test_build_a12[files0] FAIL lix> ▶ 70/76 commands/test_build/test_timeout.py::test_timeout_silent[files0] FAIL 977 subtests passed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_tarball_symlink_extraction[tarball2-files0] FAIL sed lix> ▶ 70/76 flakes/test_bundle.py::test_bundle[. FAIL subtests passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_build_without_attr_url[git+file://] FAIL subtests passed lix> ▶ 70/76 flakes/test_run.py::TestFlakeRun.test_run_succeeds[appAsApp-files0] FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball0-import (fetchTree "file://{tarball}")-files0] FAIL lix> ▶ 70/76 flakes/test_bundle.py::test_bundle[. FAIL subtests passed lix> ▶ 70/76 flakes/test_run.py::TestFlakeRun.test_run_succeeds[pkgAsPkg-files0] FAIL subtests passed lix> ▶ 70/76 flakes/test_bundle.py::test_bundle[. FAIL subtests passed lix> 76/76 lix:installcheck / functional-binary-cache-build-remote OK 17.58sests passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[git+file://-args2] FAIL lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball0-import (fetchTree {{ type = "tarball"; url = "file://{tarball}"; }})-files0] FAIL lix> ▶ 70/76 flakes/test_bundle.py::test_bundle[. FAIL subtests passed lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args0-files0] FAIL d lix> ▶ 70/76 flakes/test_bundle.py::test_bundle[. FAIL 1 subtests passed lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args1-files0] FAIL ed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball0-import (fetchTree {{ type = "tarball"; url = "file://{tarball}"; narHash = "{tar_hash}"; }})-files0] FAIL lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args2-files0] FAIL ed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball1-import (fetchTree "file://{tarball}")-files0] FAIL lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args3-files0] FAIL ed lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args4-files0] FAIL ed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[git+file://-args3] FAIL lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball1-import (fetchTree {{ type = "tarball"; url = "file://{tarball}"; }})-files0] FAIL lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args5-files0] FAIL ed lix> ▶ 70/76 flakes/test_search_path.py::TestFlakeSearchPath.test_flake_search_goes_up[args6-files0] FAIL ed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball1-import (fetchTree {{ type = "tarball"; url = "file://{tarball}"; narHash = "{tar_hash}"; }})-files0] FAIL lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_impure_build_unlocked_deps_succeeds_with_no_write FAIL assed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball2-import (fetchTree "file://{tarball}")-files0] FAIL lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball2-import (fetchTree {{ type = "tarball"; url = "file://{tarball}"; }})-files0] FAIL lix> ▶ 70/76 store/cache/test_cache_compressions.py::test_cache_compressions[br-files0] FAIL subtests passed lix> ▶ 70/76 commands/test_build/test_tarball.py::test_fetch_tree[tarball2-import (fetchTree {{ type = "tarball"; url = "file://{tarball}"; narHash = "{tar_hash}"; }})-files0] FAIL lix> ▶ 70/76 store/cache/test_cache_compressions.py::test_cache_compressions[zstd-files0] FAIL btests passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_indirect_dependencies FAIL 1 subtests passed lix> ▶ 70/76 store/cache/test_cache_compressions.py::test_cache_compressions[xz-files0] FAIL subtests passed lix> ▶ 70/76 store/cache/test_compression_levels.py::test_compression_levels[files0] FAIL 4 subtests passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestIncompleteLockfile.test_build[sth%20sth] FAIL subtests passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_build_unlocked_succeeds_with_no_write FAIL 7 subtests passed lix> ▶ 70/76 store/cache/test_substitute_truncated_nar.py::test_substitute_truncated_nar FAIL ubtests passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_bare_repo FAIL 0 subtests passed lix> ▶ 70/76 flakes/test_develop.py::TestDevelop.test_env_passthrough[files0] FAIL 1074 subtests passed lix> ▶ 70/76 flakes/test_config.py::TestFlakeConfig.test_post_hook_ignored_without_accept_config[files0] FAIL lix> ▶ 70/76 flakes/test_develop.py::TestDevelop.test_no_env_passthrough_on_ignore_environment[files0] FAIL lix> ▶ 70/76 flakes/test_config.py::TestFlakeConfig.test_post_hook_ignored_with_no_accept_config[files0] FAIL lix> ▶ 70/76 flakes/test_develop.py::TestDevelop.TestShell.test_shell_is_bash_interactive[extra_args0-files0] FAIL lix> ▶ 70/76 flakes/test_config.py::TestFlakeConfig.test_post_hook_runs_with_accept_config[files0] FAIL ssed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_deep_build FAIL 3 subtests passed lix> ▶ 70/76 flakes/test_develop.py::TestDevelop.TestShell.test_shell_is_bash_interactive[extra_args1-files0] FAIL lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_tarball FAIL 5 subtests passed lix> ▶ 70/76 flakes/test_develop.py::TestDevelop.test_sets_in_nix_shell[extra_args0-files0] FAIL ests passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_rerunning_builds_does_not_change_lockfile FAIL lix> ▶ 70/76 flakes/test_cli.py::TestAddPath.test_add_flake FAIL 1098 subtests passed lix> ▶ 70/76 flakes/test_cli.py::TestWithNonFlake.test_flake_lock_updates[files0] FAIL 9 subtests passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.test_tarball_with_sri FAIL 1 subtests passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[-args2] FAIL ests passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[-args0] FAIL ests passed lix> ▶ 70/76 store/test_dump_db.py::test_dump_db[files0] FAIL 0 subtests passed lix> ▶ 70/76 flakes/test_cli.py::TestWithNonFlake.test_build_nonflake[files0] FAIL 1 subtests passed [1/25/26 built, 339 copied (3873.8 MiB), 679.8 MiB DL] building lix-2.96.0-devpre20260428-dev_faaa14a (installCheckPh[1/25/26 built, 339 copied (3873.8 MiB), 679.8 MiB DL] building lix-2.96.0-devpre20260428-dev_faaa14a (installCheckPhlix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[-args3] FAIL ubtests passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[-args1] FAIL ests passed lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestIncompleteLockfile.test_build[sth sth] FAIL 8 subtests passed lix> ▶ 70/76 flakes/test_cli.py::TestWithNonFlake.TestFetchIsLazy.test_deps_not_fetched_unless_needed[files0] FAIL lix> ▶ 70/76 flakes/test_cli.py::TestBuild.TestLockedFlake2.test_locked_build_works[git+file://-args0] FAIL lix> ▶ 70/76 flakes/test_mercurial.py::TestFlakeHg.test_build[files0] FAIL 1124 subtests passed lix> ▶ 70/76 flakes/test_mercurial.py::TestFlakeHg.TestLocked.test_build[--no-registries-files0] FAIL ts passed lix> ▶ 70/76 flakes/test_mercurial.py::TestFlakeHg.TestLocked.test_build[--no-use-registries-files0] FAIL assed [1/25/26 built, 339 copied (3873.8 MiB), 679.8 MiB DL] building lix-2.96.0-devpre20260428-dev_faaa14a (installCheckPhase) </pre> </details>
Author
Member
# warning: user namespaces do not work on this system: Operation not permitted
# warning: auto-disabling sandboxing because the prerequisite namespaces are not available
# building '/tmp/nix-shell.T5xVpl/pytest-of-root/pytest-0/popen-gw10/test_cache_compressions_br_fil0/nix/store/pv7jqbch6an978xjlnb34wa1kskzzv35-dependencies-input-1.drv'...
# bash: /tmp/nix-shell.T5xVpl/pytest-of-root/pytest-0/popen-gw10/test_cache_compressions_br_fil0/nix/store/bzwh4fmgrvc613syn4mgi58g65vivcv2-builder-dependencies-input-1.sh: Permission denied
# error: builder for '/tmp/nix-shell.T5xVpl/pytest-of-root/pytest-0/popen-gw10/test_cache_compressions_br_fil0/nix/store/pv7jqbch6an978xjlnb34wa1kskzzv35-dependencies-input-1.drv' failed with exit code 1
# error: 1 dependencies of derivation '/tmp/nix-shell.T5xVpl/pytest-of-root/pytest-0/popen-gw10/test_cache_compressions_br_fil0/nix/store/3lziz6vv7jk7q7jk4ndhv0szzmj84nnc-dependencies-top.drv' failed to build

Looks like the same permission error for most/all test failures.

``` # warning: user namespaces do not work on this system: Operation not permitted # warning: auto-disabling sandboxing because the prerequisite namespaces are not available # building '/tmp/nix-shell.T5xVpl/pytest-of-root/pytest-0/popen-gw10/test_cache_compressions_br_fil0/nix/store/pv7jqbch6an978xjlnb34wa1kskzzv35-dependencies-input-1.drv'... # bash: /tmp/nix-shell.T5xVpl/pytest-of-root/pytest-0/popen-gw10/test_cache_compressions_br_fil0/nix/store/bzwh4fmgrvc613syn4mgi58g65vivcv2-builder-dependencies-input-1.sh: Permission denied # error: builder for '/tmp/nix-shell.T5xVpl/pytest-of-root/pytest-0/popen-gw10/test_cache_compressions_br_fil0/nix/store/pv7jqbch6an978xjlnb34wa1kskzzv35-dependencies-input-1.drv' failed with exit code 1 # error: 1 dependencies of derivation '/tmp/nix-shell.T5xVpl/pytest-of-root/pytest-0/popen-gw10/test_cache_compressions_br_fil0/nix/store/3lziz6vv7jk7q7jk4ndhv0szzmj84nnc-dependencies-top.drv' failed to build ``` Looks like the same permission error for most/all test failures.
Owner

we looked at the test failures when we sat next to each other and docker was not only denying user namespace but also mount namespaces. unless we have the test suite detect that this is happening before starting any tests and then treating the system the same way it treats macos (or dynamically disable the test suite when we detect that we may be running in docker) this is not fixable.

we looked at the test failures when we sat next to each other and docker was not only denying user namespace but also mount namespaces. unless we have the test suite detect that this is happening before starting *any* tests and then treating the system the same way it treats macos (or dynamically disable the test suite when we detect that we may be running in docker) this is not fixable.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lix-project/lix#1202
No description provided.