projects:multiboot-minipc
Table of Contents
Multiboot mini-pc (rare OS showcase)
The mini-pc is used to showcase rare Operating Systems.
It currently hosts:
- Chimera Linux: Linux with musl as libc, apk as package manager and FreeBSD userspace utilities
- DragonFly BSD: Fork of FreeBSD
Disk layout (GPT):
- Partition 1: Chimera /boot/efi, FAT32
- Partition 2: Chimera /boot, FAT32
- Partition 3: Chimera /, ext4
- Partition 4: Haiku /, Be File System
- Partition 5: 9front, custom subpartition
- Partition 6: Dragonfly, custom bsd subpartition
Troubleshooting
I don't have time to choose the OS to boot to
By default the machine should boot in GRUB with no countdown timer, leaving you time to choose which OS you want to boot. If this isn’t the case, put Chimera Linux on a USB drive, boot on it (RAM mode), then:
# mount /dev/sda3 /mnt # mount /dev/sda2 /mnt/boot # mount /dev/sda1 /mnt/boot/efi # chimera-chroot /mnt # grub-install /dev/sda # update-grub
The keyboard is all broken on DragonFly BSD
Off a fresh install, DragonFly BSD doesn't seem to be able to detect different keyboard layout automatically (e.g. US vs. UK keyboard). If the keyboard is all jumbled, try another keyboard with a different layout.
At present (2025/12/24): only keyboards with UK layout will work properly.
Reinstall guide
In case something broke real bad or the SSD is getting upgraded, here is how to reinstall the system:
- Start with Chimera Linux for the initial partition table. Follow its documentation.
- The Haiku installation is straightforward, follow one of the many tutorials or videos online. Note that this will override GRUB. Follow the Troubleshooting section above if you want to recover it at this point.
- 9front: TODO: remember the painpoints. Note that this will override GRUB. Follow the Troubleshooting section above if you want to recover it at this point.
- The default DragonflyBSD installer won’t let you install it on part of the disk. Follow this very manual installation guide to get around that.
GRUB configuration
- Set
GRUB_TIMEOUTto-1in/etc/default/grub - Add the following to
/etc/grub.d/40_custom:
menuentry "Haiku" {
set root=(hd0,gpt1)
chainloader ($root)/EFI/BOOT/HAIKU.EFI
}
menuentry "9front" {
set root=(hd0,gpt5)
chainloader ($root)/efi/boot/bootx64.efi
}
menuentry "Dragonfly BSD" {
set root=(hd0,gpt1)
chainloader ($root)/EFI/BOOT/DFLY.EFI
}
projects/multiboot-minipc.txt · Last modified: by kit-ty-kate
