Getting Started with MochiOS
⚠️ Warning: Experimental Status MochiOS is currently in early development. We are actively restructuring the system files and hierarchy. This version is Experimental and may be unstable. It is intended for developers and researchers; it is not yet suitable for general use.
Running and Testing MochiOS
Current limitations: This version only supports testing via QEMU (Virtual Machine) and chroot environments.
1. Running via Virtual Machine (QEMU)
This method allows you to boot MochiOS from an image file (.img), simulating an execution on real hardware.
1.1 Prerequisites & Dependencies
Ensure your host system has QEMU and OVMF (for UEFI support) installed:
- Arch Linux / Manjaro / CachyOS:
sudo pacman -Syu sudo pacman -S qemu-full ovmf - Ubuntu / Debian:
sudo apt update sudo apt install -y qemu-system-x86 ovmf
1.2 Execution Command
Use the following command to boot the system. Adjust the paths to your image and OVMF binary as necessary:
qemu-system-x86_64 \
-m 2G \
-drive file="mochios-amd64.img",format=raw,if=virtio \
-bios "/usr/share/ovmf/x64/OVMF_CODE.fd" \
-vga virtio \
-display sdl
(Note: The OVMF path varies by distribution. You may change -display sdl to gtk or cocoa depending on your host environment.)
2. Accessing via chroot
If you need to modify the root filesystem, install packages, or debug the RootFS directly without booting the full kernel, use the chroot method.
2.1 Mounting Essential Virtual Filesystems
Assuming your RootFS is located at ~/mochios-rootfs, bind-mount the necessary host directories first:
# Mount proc, sys, and dev
sudo mount -t proc /proc ~/mochios-rootfs/proc
sudo mount --rbind /sys ~/mochios-rootfs/sys
sudo mount --make-rslave ~/mochios-rootfs/sys
sudo mount --rbind /dev ~/mochios-rootfs/dev
sudo mount --make-rslave ~/mochios-rootfs/dev
2.2 Entering the Environment
sudo chroot ~/mochios-rootfs /bin/bash
Note: Always remember to umount these directories after exiting the chroot environment to prevent host system instability.
Technical Overview & Roadmap
Filesystem Hierarchy
MochiOS utilizes a unique directory structure, aiming for a cleaner separation between system files, libraries, and user data compared to traditional FHS.
/System: Core OS binaries and kernel modules./Library: Shared frameworks and system resources./Users: User home directories and preferences.
Build System
The project is currently optimized for building on an Arch Linux host.
- Core Core: High-performance async-first core written in Rust.
- Styling: UI components follow Material Design 3 (MD3) specifications.
Upcoming Roadmap
- Implement VirtIO networking drivers.
- Stable implementation of the custom RootFS hierarchy.
- Integration of the MikoCSS/Cogeden generator for system UI.
- Support for high-end workstation hardware (AMD EPYC/Threadripper).