Skip to content

liveboot/OS

Repository files navigation

Liveboot Logo

Modern rescue OS - ISO built with Nix

NixOS Badge GitHub Badge

🛠️ Building

Requirements

optional:

  • QEMU - for VM
  • OVMF - for VM with UEFI support
  • nixfmt - for linting and formatting

Note

Depending on your local Nix installation, you may have to run some of the following commands with elevated privileges.

Clone the repo:

git clone https://github.com/liveboot/OS liveboot-os
cd liveboot-os

Important

It's very important to clone instead of downloading the source as-is. Nix relies on information by Git, saved in the hidden .git folder. This folder is missing on source code downloads.

ISO

./iso.sh

Building can take quite a while. Subsequent builds using the same packages are cached.

If you are regularly building Liveboot.org, you may notice your disk usage steadily going up. This happens because of old packages still residing in the Nix store. See section below.

VM

./vm.sh [uefi]

Running the VM-script will attempt to build the ISO first, ensuring it's up-to-date.

By default, the VM will boot in legacy (BIOS) mode. You can optionally run it in UEFI mode. For the latter, sometimes the OVMF can't be found automatically. In that case, specify OVMF as an environment variable, containing the path pointing to OVMF.fd:

OVMF="/path/to/OVMF.fd" ./vm.sh uefi

💻 Developing

Linting/Formatting

We provide some helper scripts for typical housekeeping:

./lint.sh
./format.sh

Updating packages

This will bump the flake.lock file:

nix flake update

As usually lots of Nix store entries are invalidated, it's a good idea to clean up your local store afterwards:

nix-store --gc

About

The Liveboot operating system ISO, based on NixOS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published