From: Septatrix <24257556+septatrix@users.noreply.github.com> Date: Wed, 28 May 2025 17:08:31 +0000 (+0200) Subject: Generate initrds outside of umask context manager X-Git-Tag: v26~205 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=eaa37f7c6ca3b9d9eb5a606a227abc08ea22eb67;p=thirdparty%2Fmkosi.git Generate initrds outside of umask context manager --- diff --git a/mkosi/__init__.py b/mkosi/__init__.py index 664432e88..24c2c5ef9 100644 --- a/mkosi/__init__.py +++ b/mkosi/__init__.py @@ -1986,14 +1986,16 @@ def install_type1( dst.mkdir(parents=True, exist_ok=True) entry.parent.mkdir(parents=True, exist_ok=True) - kmods = build_kernel_modules_initrd(context, kver) - dtb = None if context.config.devicetree: dtb = dst / context.config.devicetree with umask(~0o700): dtb.parent.mkdir(parents=True, exist_ok=True) + microcode = finalize_microcode(context) + initrds = finalize_initrds(context) + kmods = build_kernel_modules_initrd(context, kver) + with umask(~0o600): if ( want_efi(context.config) @@ -2006,10 +2008,8 @@ def install_type1( kimg = Path(shutil.copy2(context.root / kimg, dst / "vmlinuz")) initrds = [ - Path(shutil.copy2(initrd, dst.parent / initrd.name)) - for initrd in finalize_microcode(context) + finalize_initrds(context) - ] - initrds += [Path(shutil.copy2(kmods, dst / "kernel-modules.initrd"))] + Path(shutil.copy2(initrd, dst.parent / initrd.name)) for initrd in microcode + initrds + ] + [Path(shutil.copy2(kmods, dst / "kernel-modules.initrd"))] if dtb: shutil.copy2(find_devicetree(context, kver), dtb)