From 724683c27fd35e4828e35320ccfc62f885ca20bc Mon Sep 17 00:00:00 2001 From: Daan De Meyer Date: Tue, 9 May 2023 13:47:43 +0200 Subject: [PATCH] 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. --- .../20-final/mkosi.extra/usr/lib/tmpfiles.d/99-mkosi.conf | 3 +++ mkosi.presets/20-final/mkosi.finalize | 4 ++++ 2 files changed, 7 insertions(+) create mode 100644 mkosi.presets/20-final/mkosi.extra/usr/lib/tmpfiles.d/99-mkosi.conf create mode 100755 mkosi.presets/20-final/mkosi.finalize 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 -- 2.47.3