From: Daan De Meyer Date: Tue, 9 May 2023 09:07:29 +0000 (+0200) Subject: Make sure we build initrd with same force as final image X-Git-Tag: v15~174^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9140d44e135507d77301f09d7fb6fe6693c7ee68;p=thirdparty%2Fmkosi.git Make sure we build initrd with same force as final image --- diff --git a/mkosi/__init__.py b/mkosi/__init__.py index 5b6504a97..16c2b9abc 100644 --- a/mkosi/__init__.py +++ b/mkosi/__init__.py @@ -775,13 +775,13 @@ def install_unified_kernel(state: MkosiState, roothash: Optional[str]) -> None: "--make-initrd", "yes", "--bootable", "no", "--manifest-format", "", - "-f", + *(["-f"] * state.args.force), "build", ]) config = presets[0] unlink_output(args, config) - build_image(state.uid, state.gid, config) + build_image(state.uid, state.gid, args, config) initrds = [config.output_dir / config.output] @@ -1590,7 +1590,7 @@ def invoke_repart(state: MkosiState, skip: Sequence[str] = [], split: bool = Fal return f"roothash={roothash}" if roothash else f"usrhash={usrhash}" if usrhash else None, split_paths -def build_image(uid: int, gid: int, config: MkosiConfig) -> None: +def build_image(uid: int, gid: int, args: MkosiArgs, config: MkosiConfig) -> None: workspace = tempfile.TemporaryDirectory(dir=config.workspace_dir or Path.cwd(), prefix=".mkosi.tmp") workspace_dir = Path(workspace.name) cache = config.cache_dir or workspace_dir / "cache" @@ -1598,6 +1598,7 @@ def build_image(uid: int, gid: int, config: MkosiConfig) -> None: state = MkosiState( uid=uid, gid=gid, + args=args, config=config, workspace=workspace_dir, cache=cache, @@ -2267,7 +2268,7 @@ def run_verb(args: MkosiArgs, presets: Sequence[MkosiConfig]) -> None: def target() -> None: # Get the user UID/GID either on the host or in the user namespace running the build uid, gid = become_root() - build_image(uid, gid, config) + build_image(uid, gid, args, config) # We only want to run the build in a user namespace but not the following steps. Since we # can't rejoin the parent user namespace after unsharing from it, let's run the build in a diff --git a/mkosi/state.py b/mkosi/state.py index fa7c2b855..77ab1aab3 100644 --- a/mkosi/state.py +++ b/mkosi/state.py @@ -5,7 +5,7 @@ import importlib from pathlib import Path from mkosi.btrfs import btrfs_maybe_make_subvolume -from mkosi.config import MkosiConfig +from mkosi.config import MkosiArgs, MkosiConfig from mkosi.distributions import DistributionInstaller from mkosi.log import die @@ -16,6 +16,7 @@ class MkosiState: uid: int gid: int + args: MkosiArgs config: MkosiConfig workspace: Path cache: Path