Migrate systems to a static GRUB config

See: https://pagure.io/workstation-ostree-config/pull-request/591
     https://fedoraproject.org/wiki/Changes/ComposefsAtomicCoreOSIoT
     https://fedoraproject.org/wiki/Changes/ComposefsAtomicDesktops

Signed-off-by: Paul Whalen <pwhalen@fedoraproject.org>
This commit is contained in:
Paul Whalen 2025-02-27 15:28:38 -05:00
commit fdf36adb8b

View file

@ -12,21 +12,14 @@ postprocess:
# Transforms /usr/lib/ostree-boot into a bootupd-compatible update payload
/usr/bin/bootupctl backend generate-update-metadata
# Trigger a bootloader update on boot
cat > /usr/lib/systemd/system/bootloader-update.service << 'EOF'
[Unit]
Description=Update bootloader on boot
Documentation=https://github.com/coreos/bootupd
ConditionFirmware=uefi
# Enable migration to a static GRUB config
install -dm0755 /usr/lib/systemd/system/bootloader-update.service.d
cat > /usr/lib/systemd/system/bootloader-update.service.d/migrate-static-grub-config.conf << 'EOF'
[Service]
Type=oneshot
ExecStart=/usr/bin/bootupctl update
RemainAfterExit=yes
MountFlags=slave
[Install]
WantedBy=multi-user.target
ExecStart=/usr/bin/bootupctl migrate-static-grub-config
EOF
chmod 644 /usr/lib/systemd/system/bootloader-update.service
echo "enable bootloader-update.service" > /usr/lib/systemd/system-preset/81-iot.preset
echo "enable bootloader-update.service" >> /usr/lib/systemd/system-preset/80-iot.preset
# Turn permissive mode on for bootupd until all SELinux issues are fixed
semanage permissive --noreload --add bootupd_t