Skip to content

RustOS v0.1.2

Choose a tag to compare

@github-actions github-actions released this 02 May 07:26
· 104 commits to main since this release
e5fc93e

RustOS v0.1.2

Download

  • rustos-v0.1.2.img — UEFI bootable x86_64 disk image (GPT + EFI System Partition)

Flashing to USB (recommended)

Use the provided helper script to automatically download and flash this release:

curl -fsSL https://raw.githubusercontent.com/0xnullsect0r/RustOS/main/write_to_drive.sh | bash -s -- --drive /dev/sdX

Or download and run it manually:

./write_to_drive.sh --drive /dev/sdX

Replace /dev/sdX with your USB device (e.g. /dev/sdb). Do NOT use a partition (e.g. /dev/sdb1).

Windows (Rufus): Open Rufus, select the .img file, choose "DD image" mode.

Ensure your system is set to boot in UEFI mode (not Legacy/CSM). CSM/legacy BIOS is no longer required.

Testing in QEMU (UEFI)

Install OVMF firmware first:

sudo apt-get install ovmf        # Debian/Ubuntu
sudo pacman -S edk2-ovmf         # Arch
brew install qemu                # macOS (bundles OVMF)

Then run:

qemu-system-x86_64 \
  -drive if=pflash,format=raw,readonly=on,file=/usr/share/OVMF/OVMF_CODE.fd \
  -drive format=raw,file=rustos-v0.1.2.img \
  -device qemu-xhci,id=xhci \
  -drive if=none,id=usbdisk,file=YOUR_FAT32_DISK.img,format=raw \
  -device usb-storage,bus=xhci.0,drive=usbdisk \
  -serial stdio

What's in this release

  • UEFI bootloader — boots on any modern UEFI system without CSM/legacy mode
  • Interactive shell (help, ls, cd, cat, write, cp, mv, exec, usbscan, …)
  • ELF64 process loader — run programs from USB with exec /usb/yourprogram
  • USB mass storage (XHCI) — plug in a USB drive and run usbscan to mount it at /usb
  • FAT32 read support for USB drives
  • VGA text mode, async keyboard input
  • Heap allocator, interrupt handling (IDT/GDT/PIC)