HyperTask Fri, 15 Mar 2019 21:39:02 +0000 installation https://issues.hyperbola.info/ FS#1366: [ISO][UEFI] Replace Syslinux with rEFInd David P. Tue, 12 Mar 2019 22:18:45 +0000 Actual v0.2 ISOs use Syslinux UEFI Boot Manager for supporting EFI systems. However, I wanted to request its replacement by rEFInd, which is much, much better.

Here is why Syslinux should not be used, at least for more advanced tasks than just booting the OS:

  • UEFI Syslinux application syslinux.efi cannot be signed by sbsign (from sbsigntools) for UEFI Secure Boot. Bug report: [3]
  • Using TAB to edit kernel parameters in UEFI Syslinux menu might lead to garbaged display (text on top of one another). Bug report: [4]
  • UEFI Syslinux does not support chainloading other EFI applications like UEFI Shell or Memtest86+. Enhancement request: [5]
  • In some cases, UEFI Syslinux might not boot in some Virtual Machines like QEMU/OVMF or VirtualBox or some VMware products/versions and in some UEFI emulation environments like DUET. A Syslinux contributor has confirmed no such issues present on VMware Workstation 10.0.2 and Syslinux-6.02 or later. Bug reports: [6], [7] and [8]
  • Memdisk is not available for UEFI. Enhancement request: [9]

The citations are from the ArchWiki, check it out for more info.

From all of those points, I have confirmed the 3rd and 4th ones. These are a PITA, because EFI Shell is super useful (Parabola and Arch has it in its ISOs) and not being able to test it in VMs make it harded for ISO testers since they’ve to take more time on writing the image to the USB... etc.

rEFInd doesn’t have these issues, plus, it can be easily testes with QEMU. Try this:

  1. install ovmf package
  2. run the following, and specify the latest Milky Way ISO:
/bin/qemu-system-x86_64 -soundhw ac97 \
      -k es -machine accel=kvm -m 1024 \
      -boot once=d,menu=off -net nic -net user -rtc base=localtime \
      -bios /usr/share/ovmf/x64/OVMF_CODE.fd -cdrom /path/to/file.iso

You will see errors in the CLI. Now, try with my customized ISO (dir with ISO file, sign [key: 6DB9C4B4F0D8C0DC432CF6E4227CA7C556B2BA78], and sha512 checksum), the same steps as above. You’ll see that it successfully boots, and has UEFI Shell apps.

Here is my hyperiso fork. Take a look at the refind/* branches. The refind/with-uefi-shell has EFI Shell from Tianocore EDK2 latest stable tag, and refind/without-uefi-shell, well, doesn’t have it. Note that the binary files from refind/with-uefi-shell are downloaded from upstream and they’re sha512 checksumed. If for any reason you cannot do that way, there’s the other branch as an alternative.

P.S.: I see that actual configs have configured syslinux.efi to show other boot menus rather than the “Boot Hyperbola” option, but I tested it in my PC with UEFI enabled and it just showed the mentioned option

https://issues.hyperbola.info/index.php?do=details&task_id=1366 https://issues.hyperbola.info/index.php?do=details&task_id=1366
FS#183: UEFI boot not working J. Doe Sat, 30 Dec 2017 18:27:59 +0000 Booting from UEFI with a USB gives the message:

No configuration file found

0.2 and 0.2.1

https://issues.hyperbola.info/index.php?do=details&task_id=183 https://issues.hyperbola.info/index.php?do=details&task_id=183