docs

What ReyaOS runs on, how to install it, and what you can do with it afterwards. The ISO folder has every release.

# hardware

# installing

! install erases the entire target disk, including other operating systems. Only install onto a disk you can afford to lose.

  1. Put the ISO on a Ventoy stick, write it to a USB stick with balenaEtcher, dd or Rufus in DD mode (this erases the stick), or burn it to a CD.
  2. Boot from it. ReyaOS then runs from memory and doesn't write anywhere by itself.
  3. disks shows the disks it can reach, install <disk> installs onto one after you type its name to confirm. The installed disk boots on BIOS and UEFI machines.

# programs

Everything except cd is a program in /apps; each explains itself with -h. A trailing & runs a program in the background, Esc stops the one in the foreground.

programpurpose
helplists the commands
ld [path]lists a directory
read <path>prints a file
write <file>full-screen editor (Ctrl+S saves, Esc discards)
create <path>creates a file, or a directory if the path ends with /
delete <path>deletes a file or empty directory (asks first)
rename <path> <name>renames within a directory
disks, lspci, ps, mem, uptimesystem information
dmesgthe kernel log: boot messages and network lines
kill <id>stops a thread
install <disk>installs ReyaOS onto a disk (erases it)
fetch, update, verify, rollbackupdates, see below
get <url> [file]downloads over HTTP, saves or prints it
host <name>looks up a host name
tcp <address> <port> [text]opens a TCP connection, sends the text, prints the answer
reboot, shutdownpower; shutdown switches off through ACPI

# files

/system    kernel, configuration, license texts
/apps      programs
/user      your files
/devices   virtual device files
/EFI/BOOT  the UEFI loader

# updates

An installed ReyaOS updates itself over the network. Every release is signed with Ed25519; ReyaOS checks the signature and every file's SHA-256, refuses older versions, keeps configuration you edited and the previous version for rollback.

fetch [root]checks the update server for a newer signed release
update [root]installs what fetch found, asks first
update --from <source> [root]updates offline from another system, e.g. update --from / /nvme0p1 from the USB stick
verify [root]lists system files that differ from the release
rollback [root]restores the previous version

# building

ReyaOS builds in WSL or Linux with Rust (stable, targets x86_64-unknown-none and x86_64-unknown-uefi), nasm, make, dosfstools, mtools, fdisk, console-setup and xorriso. make iso builds the installation medium; QEMU and OVMF run it.