Description of problem: With two completely empty drives, I have configured most of the system on vdb (biosboot, /boot, and /), and just placed /home on vda. I got warned that biosboot needs to be present on vda. I ignored that warning, and wanted to continue the installation. Quite weirdly, all summaries in anaconda had just blank spaces under "vda" and "vdb" sections, no partition listed. After starting the installation, anaconda crashed. Question #1: Is it an intentional change that in WebUI, I can no longer install BIOS bootloader to a different drive than the first one? Question #2: Should anaconda allow to start an installation, when its own criteria are not met? I.e. shouldn't the warning dialog prevent starting the installation? Question #3: How do we feel about anaconda crashes when the user ignores a warning? Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/dasbus/server/handler.py", line 455, in _method_callback result = self._handle_call( interface_name, ...<2 lines>... **additional_args ) File "/usr/lib/python3.13/site-packages/dasbus/server/handler.py", line 265, in _handle_call return handler(*parameters, **additional_args) File "/usr/lib64/python3.13/site-packages/pyanaconda/modules/common/task/task_interface.py", line 115, in Finish self.implementation.finish() ~~~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib64/python3.13/site-packages/pyanaconda/modules/common/task/task.py", line 176, in finish thread_manager.raise_if_error(self._thread_name) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib64/python3.13/site-packages/pyanaconda/core/threads.py", line 172, in raise_if_error raise exc_info[1] File "/usr/lib64/python3.13/site-packages/pyanaconda/core/threads.py", line 281, in run threading.Thread.run(self) ~~~~~~~~~~~~~~~~~~~~^^^^^^ File "/usr/lib64/python3.13/threading.py", line 992, in run self._target(*self._args, **self._kwargs) ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib64/python3.13/site-packages/pyanaconda/modules/common/task/task.py", line 97, in _thread_run_callback self._task_run_callback() ~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib64/python3.13/site-packages/pyanaconda/modules/common/task/task.py", line 110, in _task_run_callback self._set_result(self.run()) ~~~~~~~~^^ File "/usr/lib64/python3.13/site-packages/pyanaconda/modules/storage/installation.py", line 84, in run self._turn_on_filesystems( ~~~~~~~~~~~~~~~~~~~~~~~~~^ self._storage, ^^^^^^^^^^^^^^ callbacks=register ^^^^^^^^^^^^^^^^^^ ) ^ File "/usr/lib64/python3.13/site-packages/pyanaconda/modules/storage/installation.py", line 165, in _turn_on_filesystems self._setup_bootable_devices(storage) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^ File "/usr/lib64/python3.13/site-packages/pyanaconda/modules/storage/installation.py", line 184, in _setup_bootable_devices if boot.type == "mdarray": ^^^^^^^^^ AttributeError: 'NoneType' object has no attribute 'type' Version-Release number of selected component (if applicable): anaconda-42.27.3-1.fc42.x86_64 F42 Beta Workstation How reproducible: not sure. I saw a different error in the past, but couldn't done a few steps differently Steps to Reproduce: 1. have two completely clean disks, run in BIOS mode 2. add biosboot, /boot and / to vdb (sdb) 3. add /home to vda (sda) 4. ignore the warning and start the installation
Created attachment 2080243 [details] anaconda.log
Created attachment 2080244 [details] dbus.log
Created attachment 2080245 [details] packaging.log
Created attachment 2080246 [details] program.log
Created attachment 2080247 [details] storage.log
Created attachment 2080248 [details] webui.log
Created attachment 2080498 [details] bug demonstration video The problem can be easily reproduced. See the video.
(In reply to Kamil Páral from comment #0) > Question #1: > Is it an intentional change that in WebUI, I can no longer install BIOS > bootloader to a different drive than the first one? After discussion with devs on the Matrix channel, it's not intentional, just a TODO. I don't think the current limitation is well communicated, though. Also, we seem to require exactly this in our release criteria: "The installer must allow the user to choose which disk the system bootloader will be installed to, and to choose not to install one at all. " https://fedoraproject.org/wiki/Fedora_42_Final_Release_Criteria#Bootloader_disk_selection > Question #3: > How do we feel about anaconda crashes when the user ignores a warning? This is actually also covered in our criteria: "Reject or disallow invalid disk and volume configurations without crashing." https://fedoraproject.org/wiki/Fedora_42_Beta_Release_Criteria#Custom_partitioning Proposing as a blocker due to the two unsatisfied criteria mentioned above.
Hi Kamile, we would like to add support for this but currently I don't think there are many installations of Workstation who needs this feature. For that reason we decided to focus on different features. We can work on this limitation in the future releases and if this is necessary I would say netinstall iso is the good enough workaround for now. Do you agree?
Discussed during the 2025-03-17 blocker review meeting [1]: * AGREED: 2352573 - AcceptedBlocker (Final) - this is accepted as a violation of "Reject or disallow invalid disk and volume configurations without crashing". We agree that, for webUI, it will be satisfactory if it correctly prevents the user from attempting this configuration, rather than allowing the user to proceed and crashing. We consider the ability to do this in gtkUI to fulfill the requirement that this operation be possible, so we do not require webUI to implement it for F42 [1] https://meetbot-raw.fedoraproject.org/blocker-review_matrix_fedoraproject-org/2025-03-17/f42-blocker-review.2025-03-17-16.00.log.html
FEDORA-2025-9514d70fb8 (anaconda-webui-28-1.fc43) has been submitted as an update to Fedora 43. https://bodhi.fedoraproject.org/updates/FEDORA-2025-9514d70fb8
FEDORA-2025-9514d70fb8 (anaconda-webui-28-1.fc43) has been pushed to the Fedora 43 stable repository. If problem still persists, please make note of it in this bug report.
Reopening for blocker verification.
We're waiting for this update to land: https://bodhi.fedoraproject.org/updates/FEDORA-2025-a50e6b787b I've tested it and the bug is fixed. Anaconda now doesn't allow to proceed until biosboot is present on the first disk.
The update is stable, closing.
(In reply to Kamil Páral from comment #14) > Anaconda now doesn't allow to proceed > until biosboot is present on the first disk. We might want to document this temporary regression in anaconda capabilities. Adding CommonBugs.
The workaround is: If a user wants to install Fedora just to a single drive, but not the first one, they can only select that particular drive in anaconda interface, and then the installation allows to proceed and the (MBR-style) bootloader is installed to that particular drive. If a user wants to install Fedora to multiple drives (e.g. /home on a different drive than /), and the (MBR-style) bootloader should be on a different drive than the first drive, then a GTK UI needs to be used (e.g. Everything netinst).
Common Issue description: https://discussion.fedoraproject.org/t/common-issue/148708