Before installing Fedora the same problem was present with a Linux Mint system (where the grub was installed). Unable to fix that problem and also for other reasons I have removed Mint and have installed Fedora 34 KDE in its place hoping for Solus to be added to the Fedora boot loader list by default. But it’s absent.
Updating grub it looks like Solus is seen.
[cip@fedora ~]$ sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
[sudo] password for cip:
Generating grub configuration file ...
Found theme: /usr/share/grub/themes/Stylish/theme.txt
Found Solus (4.2) on /dev/nvme0n1p3
Adding boot menu entry for UEFI Firmware Settings ...
done
[cip@fedora ~]$
Here is some info on the partitions:
[cip@fedora ~]$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
nvme0n1 259:0 0 465.8G 0 disk
├─nvme0n1p1 259:1 0 600M 0 part /boot/efi
├─nvme0n1p2 259:2 0 1G 0 part /boot
├─nvme0n1p3 259:3 0 100G 0 part
├─nvme0n1p4 259:4 0 16M 0 part
├─nvme0n1p5 259:5 0 215.7G 0 part
└─nvme0n1p6 259:6 0 148.4G 0 part /home
But the boot list contains only Fedora and UEFI settings (because a Windows 10 installation is also not seen: that is a separate problem I think and I’ll post a separate post on that; it is separate because that problem was created by the Fedora installation; Solus being absent in bootloader was present before Fedora installation but I want it solved in Fedora).
Considering Identify the UUID for EFI system partition that systemd-boot resides on. , I think that (the Solus boot loader partition) must be the very partition Solus is on, /dev/nvme0n1p3, with the UUID 13383ed6-265a-43dc-bc53-273c15b66b00. Therefore I have added to etc/grub.d/40_custom the following lines:
sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
[sudo] password for cip:
Generating grub configuration file ...
Found theme: /usr/share/grub/themes/Stylish/theme.txt
Found Solus (4.2) on /dev/nvme0n1p3
Adding boot menu entry for UEFI Firmware Settings ...
error: ../grub-core/script/lexer.c:352:out of memory.
error: ../grub-core/script/lexer.c:352:syntax error.
error: ../grub-core/script/lexer.c:352:Incorrect command.
error: ../grub-core/script/lexer.c:352:syntax error.
Syntax error at line 252
Syntax errors are detected in generated GRUB config file.
Ensure that there are no errors in /etc/default/grub
and /etc/grub.d/* files or please file a bug report with
/boot/efi/EFI/fedora/grub.cfg.new file attached.
What can be wrong?
I think if I reboot at this point I’ll have no working boot loader. Removing the edit to etc/grub.d/40_custom fixes the above errors (goes back to the starting point).
sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
[sudo] password for cip:
Generating grub configuration file ...
Found theme: /usr/share/grub/themes/Stylish/theme.txt
Found Solus (4.2) on /dev/nvme0n1p3
Adding boot menu entry for UEFI Firmware Settings ...
error: ../grub-core/script/lexer.c:352:out of memory.
error: ../grub-core/script/lexer.c:352:syntax error.
error: ../grub-core/script/lexer.c:352:Incorrect command.
error: ../grub-core/script/lexer.c:352:syntax error.
Syntax error at line 254
Syntax errors are detected in generated GRUB config file.
Ensure that there are no errors in /etc/default/grub
and /etc/grub.d/* files or please file a bug report with
/boot/efi/EFI/fedora/grub.cfg.new file attached.
As for look inside your ESP and ensure that this path is correct: /EFI/org.clearlinux/bootloaderx64.efi. Solus may use a different name, the /dev/nvme0n1p1 partition is mounted (as seen in Partition Manager) but I don’t know where is it mounted, and I don’t see it in Dolphin devices.
It was installed in legacy mode on a different MBR drive, then it was copied on a GPT drive with gparted. But it was seen at some point on the drive it is now: could it be that at that moment legacy mode was enabled in BIOS? Is the legacy mode the only way a Solus like that one could be accessible?
I guess this solves it for Solus! Or would re-enabling legacy mode fix all this??
Windows was installed in UEFI, in fact an hour before Fedora. That’s my other topic. Do you think Windows can be restored? It is in fact the only way I could keep using Fedora… Could installing a Ubuntu-based distro in place of Solus bring access to Windows without losing access to Fedora?
Fedora should be able to boot UEFI windows. You shouldn’t need to install another distro to do that. In the worst case, you could probably chainload it the same way as above. You shouldn’t need to do that though.
That being said, the easiest solution might just be to install refind. It can boot both legacy and UEFI OSes with a setting change and otherwise should “just work”