Skip to content

Quick Install

The install script handles everything: installing git, enabling flakes, detecting your hardware, letting you pick a model, and building the system.

Requirements

  • NixOS (recommended). The agent manages the system through configuration.nix.
  • 16GB+ RAM for the recommended model (qwen3:30b-a3b). Smaller models work with less RAM but have degraded tool calling.
  • 20GB+ free disk for the model weights and container images.

Run the Installer

curl -sSL https://codeberg.org/ewrogers/nurvus/raw/branch/main/install.sh | sudo bash

The script will:

  1. Install git (needed for flakes)
  2. Enable Nix flakes in your configuration
  3. Detect your RAM, disk space, and GPU
  4. Show you which models fit your system and let you choose
  5. Let you pick a context size (4k/8k/16k/32k)
  6. If an AMD or NVIDIA GPU is detected, offer to enable GPU acceleration (ROCm or CUDA)
  7. Optionally set CPU/memory limits so Demi doesn't hog the system
  8. Optionally create a non-root user with access to run demi
  9. Create a flake.nix, rebuild NixOS, and pull the model

Once it finishes, log in and run demi.

Existing Flake Users

If you already have a flake-based NixOS config, add nurvus as an input:

{
  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
    nurvus.url = "git+https://codeberg.org/ewrogers/nurvus";
  };

  outputs = { nixpkgs, nurvus, ... }: {
    nixosConfigurations.my-homelab = nixpkgs.lib.nixosSystem {
      modules = [
        ./configuration.nix
        nurvus.nixosModules.default
        {
          nixpkgs.hostPlatform = "x86_64-linux";  # or "aarch64-linux"
          services.nurvus.enable = true;
        }
      ];
    };
  };
}

Then rebuild:

sudo nixos-rebuild switch --flake .#my-homelab
ollama pull qwen3:30b-a3b
demi