Haiku on Proxmox

Has anyone got Haiku running in Proxmox? The various hardware configurations that I have tried so far end up with Haiku getting to the red rocket and stopping.
I am sure it works in some config, since at its base Proxmox uses KVM I believe.
Thanks!

Sounds like the video driver it wants to use does not work, but the fallback one does. Try booting with failsafe graphics.
(either select this in the bootloader or edit the kernel settings file in the image)

Select Standard VGA when created the VM, then virtuio for network and scsi…

I just booted to desktop that way, and form some reason networking doesn’t work correctly in the nightly but otherwise it works fine. I’m getting a DHCP address and DNS set but things dont’ work right after that for some reason. (Tried Intel and Realtek emulated cards also in addition to Virtuio).

Edit:
Figured that out just select Ostype = other rather than Linux and it will work networking at all. So to recap, default settings , select the ISO, select Other OS, select Standard VGA , Virtuio SCSI and Virtuio net. And it should just work. This is on the latest release version of Proxmox 7.4. Edit: upgraded to proxmox 8.0.4 and it continues to work the same.

3 Likes

For running Haiku in a VM, I’ve had the best luck with VMWare…and there’s a free version for non-commercial use

This worked great, thanks!
Could we get the virtualization help guide updated to maybe include this?

Just adding some info on on going testing of this setup. I found that for some reason networking isnt’ completely stable under KVM … not sure why also haiku itself seems somewhat unstable if you try to update it you get networking lockups.

In any case that doesn’t seem right to me as probably a lot of the developers are using QEMU / KVM to host Haiku.

Are you using the virtio nic? Works fine for me at least.

Yes I was but I also tried the others, didn’t make any difference. I mean in web+ I can get around 200mbps down currently but pkgman often crawls at around 3MBps on the latest release, previously it was around 500KBps when I was noticing the problems, and I noticed this across several releases from the past few months (say December - late January at least).

Also it would mostly occur when there were a large number of updates required. So I can’t confirm if its fixed or not since the recent release doesn’t have many updates yet.

Is the issue just with pkgman hitting the repositories then?
If there is something I can try to replicate please let me know. I am on already on a nightly and updated as of yesterday.

No I am pretty sure it is a problem in the haiku networking stack as well as package management itself.

Hello!

I’ve checked out the excellent guide at Emulating Haiku in Proxmox | Haiku Project .

A couple of things I didn’t see covered:

  1. i440fx vs. Q35 (Machine Type)
  2. SeaBIOS vs. OMVF (UEFI)

Does Haiku work better (or not work at all) with Q35 and or OMVF? I usually use those on all my VMs–I only have some that need it, but I like to standardize my templates.

Thanks!

I just checked my Proxmox VM and all of those options are working for me, so you should be able to use the options you want.

Q35 works, but then you need to select another network adapter, because for some reason e1000 with q35 ends up using 100% CPU. I think virtio_net is fine.

Thank you both for your help. I really appreciate you taking the time to look.

I did notice I had to disable secure boot to get the install ISO to mount.

I’m not making it through the installer; I get the blandest sounding error I’ve seen in a while and the process terminates about halfway through. “General” … something. (Unfortunately, I already deleted the VM so I could redo it.)

I suspect I might have a wonky ISO image. I’m going to redownload it and try again. If it doesn’t work, I’ll definitely get some screenshots and post a separate thread.

Thanks again!

I’m about to get back to this, and I realized that I forgot to ask whether y’all enabled the EFI disk. I assume Haiku needs it?

EDIT: After reading up a bit, I added the EFI disk, as an EFI BIOS needs it for storing boot order and other similar things. (The nice thing about virtualization is it does force you to actually learn how things work that you never really thought about before.)

I have a VM up and running, and did run into a couple issues worth mentioning:

  1. The Default display in Proxmox’s hardware settings for the VM gives me ridiculously huge desktop that I can’t change the resolution on. Something like 2800x2800. Changing it to VirtIO GPU gets me a 1280x800 display, which is at least usable. Given Haiku’s retro-1990s vibe, it actually feels appropriate. :slight_smile: . I’d have killed for a 1280x800 monitor in 1995.
  2. The resolution is locked, still. 32 bpp is the only option available. For resolutions, if I try to change something and apply it, I get an error: “The screen mode could not be set: Unknown mode.” I wonder if I need to give the VirtIO driver more RAM?
  3. For some reason, I can’t detach the installer ISO. I think this is what made me think it was broken last time; I installed it and shut it down and then removed the ISO before rebooting. This isn’t catastrophic, but it’s just strange. If I remove the ISO while the VM is shut down, I get a UEFI boot error that says it can’t find the virtual SCSI disk.

When I have more time, I’ll poke at that last one. I think if I grab the EFI address for the HDD from the system while it’s working/bootable, I can remove the ISO and then go into OMVF and re-add/correct the boot entry for the SCSI virtual disk.

N.B.: Haiku does not have QEMU Guest Agent support yet. Among other things, my understanding is that means that Proxmox can’t gracefully shutdown/suspend/snapshot a Haiku VM during a backup job.

I want to confirm this, and then figure out if it’s possible to set up a separate job that will back up Haiku only if the VM is shut down.

Haiku can boot in both BIOS and EFI modes. On a VM it’s probably much easier to ignore EFI and just use BIOS mode, unless the VM is EFI-only for some reason.

As you noticed, in UEFI, screen resolution is locked after boot. If you have the possibility, use legacy BIOS mode and you will be able to change it.

1 Like

Thanks! It wouldn’t have occurred to me that the BIOS type was locking it.

Is that a Haiku issue, generally, or specific to virtualizing Haiku?

I’ll attempt redoing the VM with a legacy BIOS. I haven’t done much yet except the first system update to prove the internet connection worked. :slight_smile:

Are there any performance implications of using the legacy BIOS over UEFI?

It is generic and also true on bare metal. It’s due to fact that with UEFI you have to define a framebuffer early at boot.
I don’t remember someone noticing a difference in performance.

That makes sense. Thanks for explaining. :slight_smile:

Do you think it would be possible to edit the virtualization instructions here to add a warning against changing the BIOS type?

Now that I know UEFI isn’t supported, it also makes sense that the VM wouldn’t boot and couldn’t find its boot disk anymore after removing the install CD.

I’m not familiar with the process of requesting changes to the documentation yet.