]> git.ipfire.org Git - thirdparty/mkosi.git/commitdiff
Generate initrds outside of umask context manager
authorSeptatrix <24257556+septatrix@users.noreply.github.com>
Wed, 28 May 2025 17:08:31 +0000 (19:08 +0200)
committerDaan De Meyer <daan.j.demeyer@gmail.com>
Wed, 4 Jun 2025 14:21:36 +0000 (16:21 +0200)
mkosi/__init__.py

index 664432e88ef57a98d94fcfe3f652ad4e0b3c276d..24c2c5ef90098b82244b0f9ef0d0e492378db064 100644 (file)
@@ -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)