Bug 2234640 - Installer webUI doesn't allow to install system without separate boot partition
Summary: Installer webUI doesn't allow to install system without separate boot partition
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: anaconda
Version: rawhide
Hardware: Unspecified
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Radek Vykydal
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: RejectedBlocker AcceptedFreezeException
Depends On:
Blocks: BetaFreezeException, F40BetaFreezeException AnacondaWebUITracker
TreeView+ depends on / blocked
 
Reported: 2023-08-25 04:19 UTC by Geraldo Simião
Modified: 2024-02-07 20:16 UTC (History)
14 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2024-02-07 20:16:05 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Geraldo Simião 2023-08-25 04:19:36 UTC
On traditional anaconda interface you can install fedora using a partition layout without a separate partition for the /boot mount point (using ext4 or even btrfs) and the installed system works normally, without problems.

Now, with webUI, its impossible to go ahead with the install process without assigning a separate partition for the /boot mount point.

It's strange when we realise that even /boot/efi option (wich is essencial to be on a specially formated separated partition) isn't present as "required" on the mount point assignment page but /boot is.

Reproducible: Always

Steps to Reproduce:
1.start installation using "modify disk storage" for setting up a custom partition layout
2.go to mount point assingment
3.try to install without a separate /boot partition (hopping the system is installed with the /boot mount point on the same partition the root is

Actual Results:  
Cannot go ahead with the installation process

Expected Results:  
Complete installation succesfully, and get a system installed with /boot and / on the same partition (ext4 for example, or even btrfs, whatever)

Fedora-Workstation-Live-x86_64-39-20230824.n.0.iso
anaconda-webui-39.32-1.fc39.x86_64

Comment 1 Jiri Konecny 2023-08-25 11:20:22 UTC
Hi, yes the /boot/efi is not required is a known issue.

I wonder if we would like to allow installation of the system without /boot. As I understand it's a strong requirement to have separate partition for this. However, yes, we should allow to use BTRFS subvolume if that is not possible right now.

Comment 2 Geraldo Simião 2023-08-25 12:57:10 UTC
Yeah, I understand this is a recommendation (use separate partition for /boot), but as far as I know, and searching for the documentation, it isn't mandatory (I didn't find any rule on that) and may be a problem for people with previous fedora installs without this separate partition whanting to do a new install but keeping their files on old /home and reusing their old partitions but without separate /boot.

Comment 3 Adam Williamson 2023-08-25 23:10:43 UTC
I think Geraldo is right, we don't really need to enforce the use of a /boot partition. I'm not sure it's even terribly useful, really, unless someone knows something I don't.

Do you have any reference for it being a "strong requirement"? Let's pull in some bootloader-adjacent folks for an opinion...Peter, Robbie, the context here is there's a new UI for anaconda which is enforcing a hard requirement that /boot be a separate partition. What do you think about this?

Comment 4 Fedora Blocker Bugs Application 2023-09-01 17:30:15 UTC
Proposed as a Blocker for 39-beta by Fedora user geraldosimiao using the blocker tracking app because:

 Based on the criterion https://fedoraproject.org/wiki/Fedora_39_Beta_Release_Criteria#Installer_customization
"The WG or SIG responsible for each Edition has the definitive say on what is or is not considered a 'significant functional customization' for that Edition. " So if the workstation SIG have strong arguments to stop users from installing without a separate /boot partition then it must be document that.

Comment 5 František Zatloukal 2023-09-04 17:59:07 UTC
Discussed during the 2023-09-04 blocker review meeting: [1]

The decision to classify this bug as a RejectedBlocker (Beta) AcceptedFreezeException (Beta) was made:

"This does not really violate any Beta criteria, though we see significant concerns with whether it's appropriate for anaconda to suddenly start enforcing a requirement for a separate /boot when it did not previously. Accepted as an FE - if we do change this, it makes sense to do so for Beta, not change it between Beta and Final."

[1] https://meetbot-raw.fedoraproject.org/fedora-blocker-review/2023-09-04/f39-blocker-review.2023-09-04-16.00.log.txt

Comment 6 Adam Williamson 2023-09-05 17:54:32 UTC
CCing some more bootloader folks, since Robbie left and Peter isn't always around.

Comment 7 Gerd Hoffmann 2023-09-06 06:44:57 UTC
(In reply to Adam Williamson from comment #3)
> I think Geraldo is right, we don't really need to enforce the use of a /boot
> partition. I'm not sure it's even terribly useful, really, unless someone
> knows something I don't.

The key point is that your boot loader must be able to read the linux kernel
etc.  So with a traditional fedora install using the grub boot loader (which
comes with a set of filesystem drivers) booting works just fine even with
/boot not being a separate file system.

When using other bootloaders things might look different.  When using
systemd-boot[1] you are restricted to the filesystems the firmware is able to
read, where the guaranteed baseline is only vfat.  The ideal solution in that
case would be to just make the ESP big enough and store everything there.
Problem with this is that fedora assumes the ESP is mounted at /boot/efi
and the kernels are stored in /boot, so that wouldn't work out.  Second best
solution is a separate /boot filesystem (using vfat like the ESP).  That is
compatible with fedora expectations and is also an option in case you have
to deal with an pre-existing but small ESP.

[1] https://fedoraproject.org/wiki/Changes/cleanup_systemd_install

Comment 8 Adam Williamson 2023-09-06 06:51:57 UTC
Well, we know what bootloader we're installing with, I think. We already adjust the required partitions to the circumstances: /boot/efi is only required for UEFI installs, a BIOS boot partition is only required for BIOS-on-GPT, and so on. It seems reasonable that we could have a requirement for separate /boot if installing with systemd-boot, but that doesn't mean we need to require one all the time.

Comment 9 Geraldo Simião 2023-09-08 01:31:26 UTC
I opened a fesco ticket about this
https://www.pagure.io/fesco/issue/3065

Comment 10 Adam Williamson 2023-09-12 22:15:49 UTC
As webUI has been deferred to F40, deferring the FE status of this bug.

Comment 11 Zbigniew Jędrzejewski-Szmek 2023-09-13 15:50:26 UTC
Gerd summarized the reasons why a separate partition for /boot is desirable.
It is possible to do an install without separate /boot, and while it works in various
scenarios, having a separate /boot covers various additional cases and is compatible with
various changes we might want to do in the future. So I think it's reasonable for Anaconda
to enforce this, to allow changes in the future and to make various different scenarios
similar. People who do installs via kickstart or similar can adjust without too much problem.

Comment 12 Adam Williamson 2023-09-13 15:57:00 UTC
I suppose one issue here is webUI does not currently have a way to *recommend* a partition. With GTK UI, there's the link you can click to 'create the partitions for me' (or whatever it says) which creates a /boot by default.

Maybe what we really want here is a way for web UI to show a row on its mount point assignment table for /boot by default, with a note like 'recommended' or something instead of 'required', but let you remove it if you want to?

Comment 13 Kamil Páral 2023-09-15 08:25:07 UTC
Since this has been deferred to F40 and might change in the meantime, removing the CommonBugs nomination at this moment.

Comment 14 Geraldo Simião 2023-09-15 15:05:13 UTC
(In reply to Adam Williamson from comment #12)
> I suppose one issue here is webUI does not currently have a way to
> *recommend* a partition. With GTK UI, there's the link you can click to
> 'create the partitions for me' (or whatever it says) which creates a /boot
> by default.
> 
> Maybe what we really want here is a way for web UI to show a row on its
> mount point assignment table for /boot by default, with a note like
> 'recommended' or something instead of 'required', but let you remove it if
> you want to?

I agree with you, if a separate partition for /boot is just desirable, and not essential, then its a good idea to just change the 'required' status for a 'recommended' one, and allow people who don't want to use it to proceed the installation without it.

Comment 15 Adam Williamson 2023-09-28 20:54:52 UTC
FESCo decided: "If a separate /boot partition is to become a hard requirement in the Anaconda UI, we would like this to go through the Change Process for Fedora 40" - https://pagure.io/fesco/issue/3065#comment-876172

Comment 16 Adam Williamson 2023-12-09 18:03:52 UTC
Note: the proposal submission deadline for system-wide Changes for F40 (I'd consider this to be a system-wide Change) is 2023-12-26. This must be proposed by then if you want to have this change in newUI and have newUI in F40.

Comment 17 Katerina Koukiou 2023-12-12 13:44:30 UTC
@Adam thanks for the heads up. We are close to having an upstream fix, on the direction of making the /boot recommended but not required. https://github.com/rhinstaller/anaconda/pull/5372

Comment 18 Adam Williamson 2024-02-07 20:16:05 UTC
Tested this with today's Rawhide nightly. /boot now shows as 'recommended', you can remove it, and I did a UEFI install with no /boot and it installed successfully and booted, so this looks good. Thanks.


Note You need to log in before you can comment on or make changes to this bug.