Prerequisites#

Linux is currently the only supported operating system for NGI Forge and requires the following tools to be installed.

Nix#

The most important requirement of NGI Forge is Nix. We recommend using the new Nix CLI and Flakes. For traditional Nix setup without Flakes, see the traditional-nix section.

Install Nix with Flakes included#

  1. Install Nix with new CLI and Flakes enabled:

curl -sSfL https://artifacts.nixos.org/nix-installer | sh -s -- install --enable-flakes
  1. Accept binaries pre-built by NGI Forge (optional, highly recommended):

export NIX_CONFIG="accept-flake-config = true"

Uninstall#

Run the following command to uninstall Nix:

/nix/nix-installer uninstall

Podman#

Podman and podman-compose are required for running applications in containers. Install them using your system package manager, for example on Fedora/RHEL:

sudo dnf install podman podman-compose

On Debian/Ubuntu:

sudo apt install podman podman-compose

On NixOS, follow the Podman setup instructions on the NixOS Wiki.

KVM#

Running applications in a NixOS VM requires KVM. This needs:

  • A CPU with hardware virtualization support (Intel VT-x or AMD-V)

  • KVM kernel modules loaded (kvm_intel or kvm_amd)

  • User access to /dev/kvm

Verify KVM is available:

lsmod | grep kvm

If the kvm module is missing, enable virtualization in your BIOS/UEFI settings and ensure the KVM kernel modules are loaded:

sudo modprobe kvm_intel   # Intel CPUs
sudo modprobe kvm_amd     # AMD CPUs