From: Daan De Meyer Date: Tue, 9 May 2023 11:47:43 +0000 (+0200) Subject: mkosi: Store /etc under /usr/share/factory/mkosi X-Git-Tag: v254-rc1~488^2~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=724683c27fd35e4828e35320ccfc62f885ca20bc;p=thirdparty%2Fsystemd.git mkosi: Store /etc under /usr/share/factory/mkosi If we're making a /usr only image, we still want to populate /etc fully on first boot. To make that possible, let's copy /etc to /usr/share/factory/mkosi in a finalize script, which runs after all changes to the image have been made. Let's also add a tmpfiles snippet that merges /usr/share/factory/mkosi with /etc on boot to populate /etc. --- diff --git a/mkosi.presets/20-final/mkosi.extra/usr/lib/tmpfiles.d/99-mkosi.conf b/mkosi.presets/20-final/mkosi.extra/usr/lib/tmpfiles.d/99-mkosi.conf new file mode 100644 index 00000000000..dac79ba4ed2 --- /dev/null +++ b/mkosi.presets/20-final/mkosi.extra/usr/lib/tmpfiles.d/99-mkosi.conf @@ -0,0 +1,3 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +C+! /etc - - - - /usr/share/factory/mkosi diff --git a/mkosi.presets/20-final/mkosi.finalize b/mkosi.presets/20-final/mkosi.finalize new file mode 100755 index 00000000000..74b810c152b --- /dev/null +++ b/mkosi.presets/20-final/mkosi.finalize @@ -0,0 +1,4 @@ +#!/bin/sh +# SPDX-License-Identifier: LGPL-2.1-or-later + +cp --archive --recursive --no-target-directory --reflink=auto "$BUILDROOT"/etc "$BUILDROOT"/usr/share/factory/mkosi