From: Daan De Meyer Date: Mon, 18 Sep 2023 12:08:07 +0000 (+0200) Subject: Make sure the root directory is a regular directory if Overlay= is enabled X-Git-Tag: v17~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b27a558f7242a3ec713e7cca3aa8a5b7ffed514d;p=thirdparty%2Fmkosi.git Make sure the root directory is a regular directory if Overlay= is enabled overlayfs combined with a btrfs subvolume as the upperdir results in EXDEV when trying to access files from a lowerdir, so let's make sure we use a regular directory when Overlay= is enabled. Fixes #1904 --- diff --git a/mkosi/state.py b/mkosi/state.py index 19b489632..3b3b6d200 100644 --- a/mkosi/state.py +++ b/mkosi/state.py @@ -16,7 +16,13 @@ class MkosiState: self.workspace = workspace with umask(~0o755): - make_tree(self.config, self.root) + # Using a btrfs subvolume as the upperdir in an overlayfs results in EXDEV so make sure we create + # the root directory as a regular directory if the Overlay= option is enabled. + if config.overlay: + self.root.mkdir() + else: + make_tree(self.config, self.root) + self.staging.mkdir() self.pkgmngr.mkdir() self.install_dir.mkdir(exist_ok=True)