]> git.ipfire.org Git - thirdparty/mkosi.git/commitdiff
Reduce duplication between mkosi-initrd and mkosi-addon
authorDaan De Meyer <daan.j.demeyer@gmail.com>
Tue, 21 Jan 2025 09:15:29 +0000 (10:15 +0100)
committerDaan De Meyer <daan.j.demeyer@gmail.com>
Tue, 21 Jan 2025 10:45:47 +0000 (11:45 +0100)
mkosi/addon.py
mkosi/initrd.py

index 819f13774dc212e8aadf179cb71646bd8132a551..37d1d3d09be397b3a1c970bf7f82a4794e381070 100644 (file)
@@ -9,7 +9,7 @@ from pathlib import Path
 import mkosi.resources
 from mkosi.config import DocFormat
 from mkosi.documentation import show_docs
-from mkosi.initrd import initrd_common_args, initrd_finalize, process_crypttab
+from mkosi.initrd import include_system_config, initrd_common_args, initrd_finalize, process_crypttab
 from mkosi.log import log_setup
 from mkosi.run import run, uncaught_exception_handler
 from mkosi.types import PathString
@@ -69,15 +69,7 @@ def main() -> None:
                 "--output-mode=600",
             ]
 
-        for d in (
-            "/usr/lib/mkosi-addon",
-            "/usr/local/lib/mkosi-addon",
-            "/run/mkosi-addon",
-            "/etc/mkosi-addon",
-        ):
-            if Path(d).exists():
-                cmdline += ["--include", d]
-
+        cmdline += include_system_config("mkosi-addon")
         cmdline += process_crypttab(staging_dir)
 
         if Path("/etc/kernel/cmdline").exists():
index 751df9fd5f88db5bceb840fdecc3b19a0fdb250f..d8f9abc0d62ed894ccae6bd162ccee3d7da168ec 100644 (file)
@@ -176,6 +176,17 @@ def initrd_common_args(parser: argparse.ArgumentParser) -> None:
     )
 
 
+def include_system_config(name: str) -> list[str]:
+    cmdline = []
+
+    for d in ("/usr/lib", "/usr/local/lib", "/run", "/etc"):
+        p = Path(d) / name
+        if p.exists():
+            cmdline += ["--include", os.fspath(p)]
+
+    return cmdline
+
+
 @uncaught_exception_handler()
 def main() -> None:
     log_setup()
@@ -255,14 +266,7 @@ def main() -> None:
             if args.format != OutputFormat.directory.value:
                 cmdline += ["--output-mode=600"]
 
-        for d in (
-            "/usr/lib/mkosi-initrd",
-            "/usr/local/lib/mkosi-initrd",
-            "/run/mkosi-initrd",
-            "/etc/mkosi-initrd",
-        ):
-            if Path(d).exists():
-                cmdline += ["--include", d]
+        cmdline += include_system_config("mkosi-initrd")
 
         # Make sure we don't use any of mkosi's default repositories.
         for p in (