From 1c98102f5df560bfa33abc4cd62ef9882ec15cc9 Mon Sep 17 00:00:00 2001 From: Zbigniew Jędrzejewski-Szmek Date: Nov 07 2023 21:22:58 +0000 Subject: Also build systemd-vmspawn --- diff --git a/30247ea76e72ed89a5d86ec9b78ca8f89a989258.patch b/30247ea76e72ed89a5d86ec9b78ca8f89a989258.patch new file mode 100644 index 0000000..e31a37a --- /dev/null +++ b/30247ea76e72ed89a5d86ec9b78ca8f89a989258.patch @@ -0,0 +1,182 @@ +From 30247ea76e72ed89a5d86ec9b78ca8f89a989258 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 7 Nov 2023 21:36:46 +0100 +Subject: [PATCH] man: many fixes systemd-vmspawn(1) + +- version information +- indentation and missing tags +- mkosi and qemu don't need root +--- + man/systemctl.xml | 8 +-- + man/systemd-vmspawn.xml | 118 +++++++++++++++++++++++----------------- + 2 files changed, 72 insertions(+), 54 deletions(-) + +diff --git a/man/systemd-vmspawn.xml b/man/systemd-vmspawn.xml +index bf3aaf028eafe..4ca6f1a74fd2f 100644 +--- a/man/systemd-vmspawn.xml ++++ b/man/systemd-vmspawn.xml +@@ -44,59 +44,73 @@ + The following options are understood: + + +- Image Options ++ Image Options + +- +- +- +- ++ ++ ++ ++ + +- Root file system disk image (or device node) for the virtual machine. +- +- ++ Root file system disk image (or device node) for the virtual machine. ++ ++ ++ ++ ++ + + + +- Host Configuration ++ Host Configuration ++ ++ ++ ++ SMP ++ ++ Configures the number of CPUs to start the virtual machine with. ++ Defaults to 1. ++ ++ ++ ++ ++ ++ ++ MEM ++ ++ Configures the amount of memory to start the virtual machine with. ++ Defaults to 2G. + +- +- +- SMP ++ ++ ++ + +- Configures the number of CPUs to start the virtual machine with. +- Defaults to 1. +- ++ ++ + +- +- MEM ++ Configures whether to use KVM. If the option is not specified KVM support will be ++ detected automatically. If true, KVM is always used, and if false, KVM is never used. + +- Configures the amount of memory to start the virtual machine with. +- Defaults to 2G. +- ++ ++ + +- +- ++ ++ + +- Configure whether to use KVM. +- If the option is not specified KVM support will be detected automatically. +- If yes is specified KVM is always used, and vice versa if no is set KVM is never used. +- ++ Start QEMU in graphical mode. + +- +- ++ ++ + +- Start QEMU in graphical mode. +- ++ ++ + +- +- ++ Configures whether to search for firmware which supports secure boot. If the option ++ is not specified, the first firmware which is detected will be used. If true, then the first ++ firmware with secure boot support will be selected. If false, then the first firmware without ++ secure boot will be selected. + +- Configure whether to search for firmware which supports secure boot. +- If the option is not specified the first firmware which is detected will be used. +- If the option is set to yes then the first firmware with secure boot support will be selected. +- If no is specified then the first firmware without secure boot will be selected. +- +- ++ ++ ++ + + + +@@ -116,19 +130,21 @@ + use C-style escaping (i.e. \n to embed a newline, or \x00 to + embed a NUL byte). Note that the invoking shell might already apply unescaping + once, hence this might require double escaping!. +- ++ ++ + + + +- +- Other ++ ++ ++ Other + +- +- +- +- +- +- ++ ++ ++ ++ ++ ++ + + + +@@ -139,8 +155,10 @@ + + Run an Arch Linux VM image generated by mkosi + +- # mkosi -d arch -p systemd -p linux --autologin -o image.raw -f build +- # systemd-vmspawn --image=image.raw ++ ++$ mkosi -d arch -p systemd -p linux --autologin -o image.raw -f build ++$ systemd-vmspawn --image=image.raw ++ + + + +@@ -155,7 +173,7 @@ + See Also + + systemd1, +- mkosi1, ++ mkosi1 + + + diff --git a/6527d175cda8c2e1feceb26eb7e3ec111ddc6ae4.patch b/6527d175cda8c2e1feceb26eb7e3ec111ddc6ae4.patch new file mode 100644 index 0000000..a204f81 --- /dev/null +++ b/6527d175cda8c2e1feceb26eb7e3ec111ddc6ae4.patch @@ -0,0 +1,24 @@ +From 6527d175cda8c2e1feceb26eb7e3ec111ddc6ae4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Tue, 7 Nov 2023 18:54:38 +0100 +Subject: [PATCH] vmspawn: shorted --help output to fit in 80 columns + +I think that "SB" is good enough here, the option name shows the unabbreviated +name. +--- + src/vmspawn/vmspawn.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/vmspawn/vmspawn.c b/src/vmspawn/vmspawn.c +index ab137df0a7155..00166b2f7a40f 100644 +--- a/src/vmspawn/vmspawn.c ++++ b/src/vmspawn/vmspawn.c +@@ -68,7 +68,7 @@ static int help(void) { + " --qemu-mem=MEM Configure guest's RAM size\n" + " --qemu-kvm= Configure whether to use KVM or not\n" + " --qemu-gui Start QEMU in graphical mode\n" +- " --secure-boot= Configure whether to search for firmware which supports Secure Boot\n\n" ++ " --secure-boot= Configure searching for firmware with SB support\n\n" + "%3$sCredentials:%4$s\n" + " --set-credential=ID:VALUE\n" + " Pass a credential with literal value to container.\n" diff --git a/split-files.py b/split-files.py index 83f1f46..0f1260e 100644 --- a/split-files.py +++ b/split-files.py @@ -93,6 +93,7 @@ for file in files(buildroot): elif re.search(r'''mymachines| machinectl| systemd-nspawn| + systemd-vmspawn| import-pubring.gpg| systemd-(machined|import|pull)| /machine.slice| diff --git a/systemd.spec b/systemd.spec index 8a40760..0dd7068 100644 --- a/systemd.spec +++ b/systemd.spec @@ -104,6 +104,8 @@ GIT_DIR=../../src/systemd/.git git diffab -M v233..master@{2017-06-15} -- hwdb/[ # https://bugzilla.redhat.com/show_bug.cgi?id=2164404 Patch0001: https://github.com/systemd/systemd/pull/26494.patch +Patch0002: https://github.com/systemd/systemd/pull/29913/commits/6527d175cda8c2e1feceb26eb7e3ec111ddc6ae4.patch +Patch0003: https://github.com/systemd/systemd/pull/29913/commits/30247ea76e72ed89a5d86ec9b78ca8f89a989258.patch # Those are downstream-only patches, but we don't want them in packit builds: # https://bugzilla.redhat.com/show_bug.cgi?id=1738828 @@ -451,8 +453,8 @@ License: LGPL-2.1-or-later %description container Systemd tools to spawn and manage containers and virtual machines. -This package contains systemd-nspawn, machinectl, systemd-machined, and -systemd-importd. +This package contains systemd-nspawn, systemd-vmspawn, machinectl, +systemd-machined, and systemd-importd. %package journal-remote # Name is the same as in Debian @@ -607,6 +609,7 @@ CONFIGURE_OPTS=( -Dqrencode=%[%{defined rhel}?"disabled":"enabled"] -Dgnutls=%[%{with gnutls}?"enabled":"disabled"] -Dmicrohttpd=enabled + -Dvmspawn=true -Dlibidn2=enabled -Dlibiptc=false -Dlibcurl=enabled