SkiftOS is an open source operating system developed practically from scratch, without relying on a Linux kernel or BSD.
Warning: the developer himself states that the project is still in its early stages and should not be used as a primary operating system or in production.
Developed primarily in C++20, it aims to combine:
- simplicity;
- modularity;
- modern design;
- clean APIs;
- integrated graphical interface.
Unlike many hobby OS that focus only on the kernel, SkiftOS has practically its own entire stack:
- Bootloader
- Microkernel
- Graphics framework
- Standard library
- UI toolkit
- Desktop Environment
- Native applications
All developed specifically for the system.
Main components:
- Hjert: The system's microkernel.
- Karm: The project's base library.
- KarmUI: Reactive graphics framework inspired by modern technologies.
- Hideo: The graphical environment (Desktop Environment).
Technologies used:
The project makes use of several modern technologies:
- C++20
- LLVM/Clang
- Ninja
- NASM
- Python
- QEMU
- x86-64 architecture
- microkernel
- IPC
- Capability-based Security
Installation
Currently the project does not have a traditional installer.
The recommended way is to compile the system from source code.
On Linux or macOS install:
- Git
- Clang (18+)
- LLVM
- Ninja
- NASM
- Python 3.11+
- QEMU
- SDL2
- mtools
- liburing
The official manual provides specific commands for Ubuntu and Arch Linux.
In short: clone the project
git clone https://codeberg.org/skift/os.git
cd skift
Set up the environment:
./skift.sh tools setup
Then check if everything was installed correctly:
./skift.sh tools doctor
Install dependencies:
./skift.sh install
Build:
To start the system in QEMU:
./skift.sh boot
You can also run just the graphical shell:
./skift.sh run --release hideo-shell
Or generate a disk image:
./skift.sh dist --format=hdd
Usage
After starting the virtual machine, the system loads its own graphical interface.
Available features include:
- window manager;
- terminal;
- text editor;
- image viewer;
- native applications;
- integrated desktop.
There are still several limitations, as the project continues under active development.
SkiftOS is one of the most interesting hobby OS projects today. Instead of just implementing a functional kernel, it aims to deliver a complete experience, including microkernel, standard library, graphics framework, desktop, and its own applications.
For more information, visit the SkiftOS repository.
Top comments (0)