Building
This guide provides instructions for building skiftOS from source.
Prerequisites
- Linux or macOS
 - Clang (18 or later)
 - Python (3.11.5 or later)
 - Tools: 
llvm,clang,ninja,nasm,qemu - Installation: Use your system's package manager (e.g., 
apton Ubuntu) to install these dependencies. 
Instructions
- 
Prerequisites:
Verify that you have the required dependencies installed.
Ubuntu
apt update apt install build-essential git ninja-build libsdl2-dev nasm gcc-multilib qemu-system-x86 mtools liburing-dev bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" llvm 17Arch Linux
pacman -Syu git clang llvm nasm qemu-full gptfdisk mtools liburing sdl2 - 
Clone the Repository:
git clone https://github.com/skift-org/skift.git cd skift - 
Check Build Status (Optional):
Look at the build status badge for any potential issues:
 - 
Set Up Build Environment:
./skift.sh tools setup🛈 Note
On Ubuntu, this step also installs dependencies. - 
Verify Setup:
./skift.sh tools doctor - 
Download Dependencies:
./skift.sh model install - 
Build and Run:
- 
In Virtual Machine:
./skift.sh boot🛈 Note
Requires a graphical environment and QEMU with graphics support (SDL or GTK). For headless servers, build a disk image instead:./skift.sh dist --format=hdd - 
In simulator:
./skift.sh run --release hideo-shell🛈 Note
The--releaseflag is optional and can be omitted for a debug build. 
Enjoy! You now have a working installation of skiftOS.
Need Help? Join the Discord server for assistance in the
#build-issueschannel. -