HowTo: setup rEFInd to boot Haiku

I’ve just built a new PC (MSI x570 Tomahawk, Ryzen 3700x, 32Gb 3200 memory, 2x 1Tb Nvme drives) and installed a fresh Haiku R1B2 to the box, and installed rEFInd boot manager for triple booting, and decided to write a quick HowTo guide to help some users if they experience UEFI boot based problems. Most users FORGET to install the Haiku EFI boot loader, and will not be able to boot Haiku. Follow these simple steps, and you should be OK on supported hardware.

rEFInd is a boot manager (https://www.rodsbooks.com/refind/) which is easist to install from Linux/Mac, however this guide will use Windows10 assuming most new users will start from there. Sadly, there is no easy to use installer for rEFInd under Windows, so you will have to do it manually.

  1. download the Haiku R1B2 beta (https://www.haiku-os.org/get-haiku/r1beta2/) and follow the instructions to create a bootable USB flash disk (https://www.haiku-os.org/guides/installing/making_haiku_usb_stick).
  2. download rEFInd (https://sourceforge.net/projects/refind/)
  3. Locate Command Prompt in the Start menu, right-click it, and select Run as Administrator.
  4. Type mountvol X: /S in the Administrator Command Prompt window. This makes the ESP accessible as drive X: from that window. (You can use a drive identifier other than X: if you like.)
  5. Change into the main rEFInd package download directory, so that the refind subdirectory is visible when you type dir . Eg. cd Downloads/refind
  6. Type xcopy /E refind X:\EFI\refind\ to copy the refind directory tree to the ESP’s EFI directory. You must include the trailing backslash from this command.
  7. Type X: to change to the ESP.
  8. Type cd EFI
  9. Type mkdir Haiku. From the X:\EFI folder, you should see “Microsoft”, “Boot”, Haiku", “refind” subdirectories.
  10. from the Haiku USB flash stick volume (lets say E:), copy the file BootX64.EFI loader to X:\EFI\Haiku. Eg. copy E:\EFI\Boot\BOOTx64.EFI x:\EFI\Haiku\BOOTX64.EFI
    You should then have a file called X:\EFI\Haiku\BOOTX64.EFI
  11. navigate to the refind subdirectory cd X:\EFI\refind
  12. Rename the refind.conf-sample file to refind.conf ren refind.conf-sample refind.conf

Restart, and the UEFI loader will start the rEFInd boot manager, offering a GUI to boot an available OS, including Haiku, and it should boot to desktop.

Speaking of supported Hardware, the MSI x570 Tomahawk has working sound (Realtek ALC1200), however the Realtek 8125B Ethernet driver isn’t supported yet (FreeBSD 12 developers are porting the OpenBSD driver https://man.openbsd.org/rge across), as well as the Intel Wi-Fi 6 ASX200 driver which is also undergoing FreeBSD development currently, so once FreeBSD support is available, Haiku may not be that far behind. For the time being, I just installed a cheap PCI-X network card (Intel EXPI9301CTBLK) to get wired internet, and use a $49 TP-Link AC750 WiFi travel router to get WiFi connection working with Haiku. This little router is great for getting WiFi to laptops as well.

6 Likes

Is there a way to install refind from Haiku?

Yes, but only by placing it in the fallback location in the esp where the haiku loader is normally. Rename it to something else first then you can put refind there and it will find the haiku loader on the esp.

I wrote some notes up mostly for my own purposes, but might be of use to you. Due to it’s lack of protections Haiku is one of the easiest systems for messing around with the EFI partition.

1 Like