Bug 1206027 - fwupd + UEFI Capsule doesn't support transactional update system
Summary: fwupd + UEFI Capsule doesn't support transactional update system
Status: NEW
Alias: None
Product: openSUSE Tumbleweed
Classification: openSUSE
Component: Basesystem (show other bugs)
Version: Current
Hardware: Other Other
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: Tseng
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-12-05 10:10 UTC by Frederic Crozat
Modified: 2022-12-12 08:14 UTC (History)
1 user (show)

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Frederic Crozat 2022-12-05 10:10:51 UTC
While debugging https://bugzilla.opensuse.org/show_bug.cgi?id=1129466, I found a problem with current fwupd, transactional update system (MicroOS) and UEFI Capsule update.

To reproduce:
- edit /etc/fwupd/uefi_capsule.conf and uncomment in section [uefi_capsule]
EnableGrubChainLoad=true

- ensure you have an update requiring uefi capsule pending
- run fwupdmgr update
- check journal logs (journalctl -u fwupd.service):

fwupd[29391]: /usr/sbin/grub2-mkconfig: ligne 306: /boot/grub2/grub.cfg.new: Read-only file-system
fwupd[29786]: /usr/bin/grub2-editenv : error : can't open « /boot/grub2/grubenv » : Read-only file-system


fwupdmgr should be modified to call transactional-update grub.cfg instead of grub2-mkconfig on transactional system.
Comment 1 Tseng 2022-12-08 08:34:17 UTC
(In reply to Frederic Crozat from comment #0)
> While debugging https://bugzilla.opensuse.org/show_bug.cgi?id=1129466, I
> found a problem with current fwupd, transactional update system (MicroOS)
> and UEFI Capsule update.
> 
> To reproduce:
> - edit /etc/fwupd/uefi_capsule.conf and uncomment in section [uefi_capsule]
> EnableGrubChainLoad=true
> 
> - ensure you have an update requiring uefi capsule pending
> - run fwupdmgr update
> - check journal logs (journalctl -u fwupd.service):
> 
> fwupd[29391]: /usr/sbin/grub2-mkconfig: ligne 306: /boot/grub2/grub.cfg.new:
> Read-only file-system
> fwupd[29786]: /usr/bin/grub2-editenv : error : can't open «
> /boot/grub2/grubenv » : Read-only file-system
> 
> 
> fwupdmgr should be modified to call transactional-update grub.cfg instead of
> grub2-mkconfig on transactional system.

To reproduce this issue, can I just simply install MicroOS in Virtual Machine(QEMU/KVM) of opensuse-15.3 ? Or maybe I need to purchase Lenovo Z13 ? Many thanks.
Comment 2 Frederic Crozat 2022-12-12 08:14:26 UTC
(In reply to Tseng from comment #1)
> (In reply to Frederic Crozat from comment #0)
> > While debugging https://bugzilla.opensuse.org/show_bug.cgi?id=1129466, I
> > found a problem with current fwupd, transactional update system (MicroOS)
> > and UEFI Capsule update.
> > 
> > To reproduce:
> > - edit /etc/fwupd/uefi_capsule.conf and uncomment in section [uefi_capsule]
> > EnableGrubChainLoad=true
> > 
> > - ensure you have an update requiring uefi capsule pending
> > - run fwupdmgr update
> > - check journal logs (journalctl -u fwupd.service):
> > 
> > fwupd[29391]: /usr/sbin/grub2-mkconfig: ligne 306: /boot/grub2/grub.cfg.new:
> > Read-only file-system
> > fwupd[29786]: /usr/bin/grub2-editenv : error : can't open «
> > /boot/grub2/grubenv » : Read-only file-system
> > 
> > 
> > fwupdmgr should be modified to call transactional-update grub.cfg instead of
> > grub2-mkconfig on transactional system.
> 
> To reproduce this issue, can I just simply install MicroOS in Virtual
> Machine(QEMU/KVM) of opensuse-15.3 ? Or maybe I need to purchase Lenovo Z13
> ? Many thanks.

Please check with Gary or Jo, they have more knowledge about that. Or ask upstream.

There is probably some way to simulate a UEFI capsule for testing.