Prerequisites
Before you begin, ensure you have:- Basic familiarity with Nix and the Nix language
- Git installed on your system
- For NixOS: A working NixOS installation or the lilith ISO
- For macOS: macOS with Nix or Lix installed
- For WSL: Windows with WSL2 enabled
Choose your platform
Select the platform you want to install on:NixOS
Install on a NixOS system
macOS
Install on macOS with nix-darwin
WSL
Install on Windows Subsystem for Linux
NixOS installation
There are two approaches to installing on NixOS: using the custom lilith ISO or performing a manual installation.Option 1: Using the lilith ISO (recommended)
The lilith ISO is a custom NixOS installer that includes theiznix-install script for easy deployment.
Download the ISO
Run the installer
Once booted, run the Follow the prompts to configure your installation.
iznix-install script included in the ISO:Option 2: Manual installation
If you prefer to install manually or already have NixOS installed:Install NixOS
If you don’t have NixOS yet, follow the official installation guide.
Dual boot with Windows
If you’re setting up dual boot with Windows and want secure boot:
Follow the lanzaboote quick start guide for additional secure boot setup.
macOS installation
Install the configuration on macOS using nix-darwin.Enter a development shell
Clone the repository and enter a development shell to access required tools:
Configure your host
Create or modify a darwin host configuration in Add it to
systems/. See systems/tatsumaki/ for an example:systems/default.nix:Provision the system
Run the provision command to set up nix-darwin:This will:
- Install nix-darwin
- Apply your configuration
- Remove the non-declarative Lix installation
On macOS, some GUI applications are installed via Homebrew (managed declaratively) because they’re not available in nixpkgs or work better as native .app bundles.
WSL installation
Install the configuration on Windows Subsystem for Linux.Install NixOS-WSL
Follow the NixOS-WSL installation guide to get a basic NixOS environment running in WSL.
Configure your WSL host
The Register it as a WSL host:
valkyrie host is a WSL configuration example. Create your own or modify it:Post-installation steps
After installing on any platform, you’ll want to:Set up secrets
Replace the encrypted secrets with your own using SOPS. See the secrets management guide for details.
Customize your user configuration
Modify
home/isabel/ (or create your own user directory) to customize:- Shell configuration
- Editor settings
- Application preferences
- Package lists
Useful commands
Here are some commands you’ll use frequently:Next steps
Now that you have the configuration installed, explore these topics:Profiles
Learn about the available system profiles and how to use them
Modules
Discover the modular components you can enable or disable
Configuration
Deep dive into customizing your system configuration
Secrets
Set up encrypted secrets management with SOPS
Troubleshooting
Build fails with secret errors
The repository includes encrypted secrets that won’t work for you. Either:- Remove secret references from your host configuration
- Set up your own secrets using SOPS
Module not found errors
Make sure your host is properly registered insystems/default.nix and you’ve run the rebuild command from the repository root.
macOS provision fails
Ensure you have Lix installed and are running the provision command from withinnix develop.