]> git.ipfire.org Git - thirdparty/mkosi.git/commitdiff
Run with --offline=no when Subvolumes= is used in repart definition files
authorDaan De Meyer <daan.j.demeyer@gmail.com>
Mon, 14 Aug 2023 16:46:36 +0000 (18:46 +0200)
committerJörg Behrmann <behrmann@physik.fu-berlin.de>
Tue, 15 Aug 2023 08:14:27 +0000 (10:14 +0200)
mkosi/__init__.py

index 9bffb91923b9835bcebb9c21b60b0c1332368dc5..ee69cfda0a880fda5dd3537a02d1d4ac068c3ed3 100644 (file)
@@ -1345,6 +1345,12 @@ def make_image(state: MkosiState, skip: Sequence[str] = [], split: bool = False)
     if state.config.repart_dirs:
         for d in state.config.repart_dirs:
             cmdline += ["--definitions", d]
+
+        # Subvolumes= only works with --offline=no.
+        grep = run(["grep", "--recursive", "--include=*.conf", "Subvolumes=", *state.config.repart_dirs],
+                   stdout=subprocess.DEVNULL, check=False)
+        if grep.returncode == 0:
+            cmdline += ["--offline=no"]
     else:
         definitions = state.workspace / "repart-definitions"
         if not definitions.exists():