Subiquity crash on Lenovo X13s because UEFI variables not supported
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
subiquity |
New
|
Undecided
|
Unassigned | ||
curtin (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
The following crash occurs in curtin.
The device does not provide access to UEFI variables at runtime.
The error from efibootmgr should only result in a warning and not stop the installation process.
finish: cmd-install/
finish: cmd-install/
finish: cmd-install/
Traceback (most recent call last):
File "/snap/
ret = args.func(args)
File "/snap/
File "/snap/
File "/snap/
File "/snap/
File "/snap/
return subp(*args, **kwargs)
File "/snap/
return _subp(*args, **kwargs)
File "/snap/
raise ProcessExecutio
Command: ['unshare', '--fork', '--pid', '--', 'chroot', '/target', 'efibootmgr', '-v']
Exit code: 2
Reason: -
Stdout: ''
Stderr: EFI variables are not supported on this system.
Unexpected error while running command.
Command: ['unshare', '--fork', '--pid', '--', 'chroot', '/target', 'efibootmgr', '-v']
Exit code: 2
Reason: -
Stdout: ''
Stderr: EFI variables are not supported on this system.
summary: |
- Subiquity crash on Lenovo X13s + Subiquity crash on Lenovo X13s because UEFI variables not supported |
In curtin we could check if /sys/firmware/ efi/efivars exists. If it does not exist update_nvram has to be False.
I wonder why the problem did not occur on the U-Boot based riscv64 platforms. There EFI variables can be read but not set. Maybe as we start with a system without boot options we simply do not try to delete or reorder boot options.