Testing in a VM
The easiest way to try Nurvus is in a NixOS VM. You can use UTM (macOS), QEMU, or VirtualBox.
1. Download the NixOS Minimal ISO
Get the latest minimal ISO from nixos.org/download:
- x86_64:
nixos-minimal-*-x86_64-linux.iso - aarch64 (Apple Silicon):
nixos-minimal-*-aarch64-linux.iso
2. Create the VM
- RAM: 2GB minimum (Demi runs the TUI only, Ollama can run on a separate machine)
- Disk: 20GB+
- Network: Bridged or shared networking so you can SSH in
3. Install NixOS
Boot the ISO and run the NixOS installer:
sudo -i
parted /dev/vda -- mklabel gpt
parted /dev/vda -- mkpart root ext4 1MB -8GB
parted /dev/vda -- mkpart swap linux-swap -8GB 100%
parted /dev/vda -- mkpart ESP fat32 1MB 512MB
parted /dev/vda -- set 3 esp on
mkfs.ext4 -L nixos /dev/vda1
mkswap -L swap /dev/vda2
mkfs.fat -F 32 -n boot /dev/vda3
mount /dev/disk/by-label/nixos /mnt
mkdir -p /mnt/boot
mount /dev/disk/by-label/boot /mnt/boot
swapon /dev/vda2
nixos-generate-config --root /mnt
nixos-install
reboot
4. Install Nurvus
After rebooting into NixOS, run the install script:
5. Using a Remote Ollama
If your VM doesn't have enough RAM to run the LLM locally, point Demi at an Ollama instance on your host or another machine:
# In your flake.nix
services.nurvus = {
enable = true;
model = "qwen3:30b-a3b";
llmUrl = "http://<host-ip>:11434";
contextSize = 32768;
};
The NixOS module will skip installing local Ollama when using a remote URL.