Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.
Sign upinstaller should replace /boot/efi/qubes/xen.efi if it exists #2990
Comments
freddierice
changed the title from
Install Fails
to
installer should replace /boot/efi/qubes/xen.efi if it exists
Aug 8, 2017
andrewdavidwong
added
bug
C: xen
labels
Aug 9, 2017
andrewdavidwong
added this to the Release 4.0 milestone
Aug 9, 2017
marmarek
referenced this issue
Aug 14, 2017
Closed
Post install step fails running /usr/bin/qubes-prefs default-kernel #3028
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
freddierice
Sep 20, 2017
I'd like to contribute, but there are a couple of ways that this issue could be fixed.
- Allow for both qubes 3.2 and qubes 4.0 compatible
xen.efito exist (i.e. name the 4.0-rc1 compatiblexen.efisomething like/boot/efi/qubes/4.0-rc1.efi) - Overwrite the previous
xen.efi, breaking qubes 3.2.
Realistically, a user should only have one version of qubes on their computer. If 2) is the expected behavior, then the user should be notified in the installer.
Thoughts?
freddierice
commented
Sep 20, 2017
|
I'd like to contribute, but there are a couple of ways that this issue could be fixed.
Realistically, a user should only have one version of qubes on their computer. If 2) is the expected behavior, then the user should be notified in the installer. Thoughts? |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
marmarek
Sep 20, 2017
Member
I think it should be 2). One subdirectory in /boot/efi/EFI should be used only by one OS. It isn't only about xen.efi, but also xen.cfg, kernel, initrd.
BTW there is a way to have multiple Qubes instances at the same machine - using different subdirectories in /boot/efi/EFI. There is no UI for that, but you can manually copy/rename "qubes" to for example "qubes3.2", "qubes4" etc, then use efibootmgr to adjust boot entries. I don't think we need to support this automatically.
|
I think it should be 2). One subdirectory in /boot/efi/EFI should be used only by one OS. It isn't only about xen.efi, but also xen.cfg, kernel, initrd. BTW there is a way to have multiple Qubes instances at the same machine - using different subdirectories in /boot/efi/EFI. There is no UI for that, but you can manually copy/rename "qubes" to for example "qubes3.2", "qubes4" etc, then use efibootmgr to adjust boot entries. I don't think we need to support this automatically. |
This was referenced Sep 20, 2017
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
marmarek
Sep 21, 2017
Member
Actually I'm surprised this happens, because installation of xen-hypevisor package should replace xen.efi. See here:
https://github.com/QubesOS/qubes-vmm-xen/blob/d48f41f123f33387fa5691231466be3e38ea7c16/xen.spec#L533-L549
Anyway, I'm going to merge the current fix, until the code above start working again.
|
Actually I'm surprised this happens, because installation of xen-hypevisor package should replace Anyway, I'm going to merge the current fix, until the code above start working again. |
freddierice commentedAug 8, 2017
•
edited
Edited 1 time
-
freddierice
edited Aug 8, 2017 (most recent)
Qubes OS version (e.g.,
R3.2):R4.0-rc1
Affected TemplateVMs (e.g.,
fedora-23, if applicable):n/a
Expected behavior:
/boot/efi/qubes/xen.efishould be updated to the newest efi file.Actual behavior:
If the file /boot/efi/qubes/xen.efi already exists (i.e. from a previous install of qubes), it will not get replaced with a newer version.
Steps to reproduce the behavior:
General notes:
I found the source of the error in
anaconda/pyanaconda/bootloader.pyon line 1855:The newest
xen.efidoes not get copied if an older one exists.Related issues:
In the specific case of upgrading from Qubes 3.2 to 4.0, there is a switch from Xen 4.6 to 4.8, which in turn caused countless errors in the interaction between the Xen tooling and the Xen HVM.