Skip to main content

Prerequisites

You need QEMU, xorriso, mkfs.ext2, and mass skill issue tolerance.
sudo apt install qemu-system-x86 xorriso e2fsprogs

Getting Started

Step 1: Clone the repository

git clone https://github.com/SlopLabs/slopos.git
cd slopos
git submodule update --init --recursive

Step 2: Setup Rust toolchain

make setup
This installs the pinned Rust nightly from rust-toolchain.toml.

Step 3: Spin the Wheel

make boot VIDEO=1
The Wheel of Fate decides if you boot successfully. Win the spin, enter the shell. Lose, reboot and try again.

Build Commands

CommandWhat it does
make boot VIDEO=1Boot with display window
make bootHeadless boot (serial only)
make boot-logBoot with timeout, saves to test_output.log
make testRun the test harness

Advanced Options

VIRGL=1 VIDEO=1 make boot         # GPU acceleration
QEMU_DISPLAY=gtk make boot VIDEO=1    # Force GTK
QEMU_DISPLAY=sdl make boot VIDEO=1    # Force SDL
DEBUG=1 make boot VIDEO=1             # Debug logging

Project Structure

slopos/
├── boot/       → GDT, IDT, TSS, early init, SYSCALL MSRs
├── core/       → scheduler, syscall handlers, task management  
├── mm/         → physical frames, virtual memory, ELF loader
├── drivers/    → PIT, PS/2, IOAPIC, VirtIO, PCI enumeration
├── video/      → framebuffer, graphics primitives, roulette wheel
├── fs/         → ext2 implementation
├── userland/   → shell, compositor, roulette, file manager
├── kernel/     → main entry point
└── lore/       → the sacred chronicles (worth reading)
Important: SlopOS requires LAPIC + IOAPIC hardware (or QEMU q35 machine with IOAPIC enabled). The legacy 8259 PIC path has been sacrificed to the Wheel of Fate.