Important
As defined by SemVer 2.0.0, versions in the 0.x.y range are inherently unstable and may introduce breaking changes at any time.
violet (pronounced /vjɔlɛt/) is a work-in-progress operating system centered around a fully asynchronous and non-blocking architecture. The project is in an early development phase, focused on maturing these architectural foundations into a scalable, general-purpose system for modern hardware.
This project uses Zig. We recommend using zvm to install and manage Zig versions seamlessly.
Note
The required Zig version is 0.17.0.
To run a virtual instance of violet on your host machine, you will also need QEMU 11.1.2.
Thanks to violet's build system, compiling an operating system has never been easier.
zig build -Dboard=<BOARD>See SUPPORT.md for a complete list of supported boards. Not specifying any board will create a generic image for a given architecture (default to the host machine) :
zig build -Darch=<ARCH>Supported architectures are aarch64 and riscv64.
To instantly build and boot the OS in a virtual machine, simply type:
zig build run -Darch=<ARCH>violetOS is in early development ; there is no usable software yet.
First download latest/raspberry_pi4.img.xz (unavailable) or nightly/raspberry_pi4.img.xz.
If you use Rufus or Balena Etcher it should directly accept the compressed image. If you use another tool, you may need to uncompress it first.
Since, the SD driver of the RPi4 is slower than the USB driver, we recommend using an USB device instead of the SD card to run violetOS, it avoids a lot of potential issues and make boot and usage significantly more fast and stable.
To install violetOS on an Apple Silicon device (with M1/M2/M3 SoC), you can use the dedicated install script:
curl -sL https://repo.violetos.org/alx/install.sh | EXPERT=1 shDistributed under the Apache License, Version 2.0. See LICENSE and NOTICE.md for more information.