ITISYOU_OS

Build and run — ITISYOU OS V0.1

Reproducible environment, build, and QEMU instructions for a Windows host. Every command here is the exact command used in verification.

Prerequisites

ToolVersion usedLocation
Rust (rustup)nightly-2026-09-01 (1.100.0-nightly), pinned in rust-toolchain.tomlRUSTUP_HOME=E:\toolchains\rustup, CARGO_HOME=E:\toolchains\cargo
Targetx86_64-unknown-none + components rust-src, clippy, rustfmt, llvm-toolsvia rust-toolchain.toml
QEMU11.1.0 (qemu.weilnetz.de w64 build)E:\tools\qemu\qemu-system-x86_64.exe
OVMF (UEFI firmware)edk2 build shipped with QEMUE:\tools\qemu\share\edk2-x86_64-code.fd
Visual Studio Build ToolsVS2022 (MSVC linker, host tools only)system

Storage policy (operating rules §5): all toolchain caches and build output live on E:; bulk scratch on G:\claude-tmp; nothing project-related is intentionally written to C:.

scripts/env.ps1 sets this environment; every project script dot-sources it. Run scripts/doctor.ps1 to validate the environment without installing anything.

Build

scripts\build.ps1            # = cargo run -p image-builder -- target/images

This builds (via artifact dependencies) both kernel binaries for x86_64-unknown-none and produces four bootable images plus a checksum manifest in target/images/:

  • itisyou-kernel-{bios,uefi}.img — interactive kernel
  • itisyou-kernel-selftest-{bios,uefi}.img — in-kernel selftest suite
  • manifest.txt — sizes + SHA-256 for release evidence

Run in QEMU

scripts\run-qemu.ps1                      # UEFI (OVMF), display window
scripts\run-qemu.ps1 -Firmware bios       # legacy BIOS boot
scripts\run-qemu.ps1 -Headless            # serial only
scripts\run-qemu.ps1 -Selftest -Headless  # run the selftest kernel

Serial output appears on stdio. The kernel emits machine-readable boot-stage markers ([ITISYOU:B010] …); the grammar is defined in crates/kernel-core/src/marker.rs.

QEMU safety: only project-generated disposable images are ever attached; no host disk passthrough, no host filesystem sharing (plan §11.2).

Test

scripts\test.ps1     # host unit tests + 4-way QEMU boot/selftest matrix
scripts\verify.ps1   # full gate: doctor, fmt, clippy, tests, website, secret scan

QEMU evidence (serial logs + JSON results) is written to artifacts/qemu/ (git-ignored; summarized evidence lands in status/).