Lyre is an effort to write a modern, fast, and useful operating system.
Join the Discord chat.
- Keeping the code as simple and easy to understand as possible, while not sacrificing performance and prioritising code correctness.
- Making a usable OS which can run on real hardware, not just on emulators or virtual machines.
- Targetting modern 64-bit architectures, CPU features, and multi-core computing.
- Maintaining good source-level compatibility with Linux to allow to easily port programs over.
- Having fun.
Note: Lyre is still pre-alpha software not meant for daily or production usage!
Photo by Pixabay: https://www.pexels.com/photo/gray-and-black-galaxy-wallpaper-2150/
You can grab a pre-built nightly Lyre image at https://github.com/lyre-os/lyre/releases
Make sure to boot the ISO with enough memory (8+GiB) as, for now, Lyre loads its entire root filesystem in a ramdisk in order to be able to more easily boot on real hardware.
The following is a distro-agnostic list of packages needed to build Lyre.
Skip to a paragraph for your host distro if there is any.
GNU make
, curl
, git
, mercurial
, bsdtar
, xorriso
, and qemu
to test it.
sudo apt install make curl git mercurial libarchive-tools xorriso qemu-system-x86
sudo pacman -S --needed make curl git mercurial libarchive xorriso qemu
To build the distro, which includes the cross toolchain necessary to build kernel and ports, as well as the kernel itself, run:
make distro-base # Build the base distribution.
make all # Make filesystem and ISO.
This will build a minimal distro image. The make distro-full
target
is also avaliable to build the full distro; this step will take a while.
In Linux, if KVM is available, run with
make run-kvm
In macOS, if hvf is available, run with
make run-hvf
To run without any acceleration, run with
make run