diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a3da383a5..379c491fe 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -115,12 +115,6 @@ jobs: tools: opensuse - distro: ubuntu tools: opensuse - # rpm in Debian is currently missing - # https://github.com/rpm-software-management/rpm/commit/ea3187cfcf9cac87e5bc5e7db79b0338da9e355e - - distro: fedora - tools: debian - - distro: centos - tools: debian # This combination results in rpm failing because of SIGPIPE. # TODO: Try again once Arch gets a new rpm release. - distro: centos diff --git a/mkosi/installer/__init__.py b/mkosi/installer/__init__.py index 1a37fee2e..7e8fdce26 100644 --- a/mkosi/installer/__init__.py +++ b/mkosi/installer/__init__.py @@ -56,6 +56,7 @@ def mounts(cls, context: Context) -> list[PathString]: Path("/var") / d / subdir / p.relative_to(src), ] for p in caches + if (context.config.package_cache_dir_or_default() / d / subdir / p.relative_to(src)).exists() ) return mounts diff --git a/mkosi/kmod.py b/mkosi/kmod.py index 9b2eeeb45..3d8cba725 100644 --- a/mkosi/kmod.py +++ b/mkosi/kmod.py @@ -164,6 +164,9 @@ def gen_required_kernel_modules( yield modulesd yield modulesd / "kernel" + if (root / "usr/lib/firmware").exists(): + yield root / "usr/lib/firmware" + for d in (modulesd, root / "usr/lib/firmware"): for p in (root / d).rglob("*"): if p.is_dir(): diff --git a/mkosi/run.py b/mkosi/run.py index 4960de4c3..f5a9e0b4e 100644 --- a/mkosi/run.py +++ b/mkosi/run.py @@ -210,7 +210,7 @@ def preexec() -> None: log_process_failure(cmdline, e.returncode) if ARG_DEBUG_SHELL.get(): subprocess.run( - [*sandbox, "sh"], + [*sandbox, "bash"], check=False, stdin=sys.stdin, text=True,