# Download Rugnux `rugnux` is one self-contained executable: no CUDA toolkit, no Qt, no service to run. Take the archive for your machine, unpack it into a directory of its own, and run it. The links point at the current release; the full list of what each release ships is on its release page. ```{eval-rst} .. jfjoch-downloads:: rugnux ``` On a machine with an NVIDIA GPU take the **GPU** archive: it is the only one that uses the card, and it also runs on a machine without one (it reports zero CUDA devices and takes the CPU path). The **CPU only** archive is smaller and for machines that will never have a GPU. A V100 needs the CUDA 12 build; the CUDA 13 builds start at Turing (T4). The driver versions and the GPU generations each build covers are in [Release contents](RELEASE_CONTENTS.md#gpu-generations-and-the-nvidia-driver). ## After downloading The archive has **no top-level directory**: it unpacks straight into `bin/` and `share/`, so always give it a directory of its own. ``` mkdir -p ~/rugnux tar xzf rugnux--linux-x86_64-cuda12.tgz -C ~/rugnux # Linux, macOS ~/rugnux/bin/rugnux # prints the usage ``` On Windows, extract the `.zip` into a folder and run `bin\rugnux.exe` from a terminal. On macOS the binary is signed and notarized; the first run of a freshly downloaded copy checks the notarization online. Nothing is written outside that directory, nothing needs root, and several versions can sit side by side; to remove one, delete its directory. Put `bin/` on your `PATH` to type `rugnux` rather than the full path, then: ``` rugnux dataset_master.h5 ``` [Rugnux](RUGNUX.md) takes it from there: what the run writes, what the terminal shows and the few options worth knowing. ## Linux packages On RHEL / Rocky 8 and 9 and Ubuntu 22.04 / 24.04, `rugnux` is also a package of its own in the [package repositories](REPOSITORIES.md), which keeps it current with the system's package manager: ``` sudo dnf install rugnux # RHEL / Rocky sudo apt install rugnux # Ubuntu ``` The package depends on nothing from the acquisition side and installs `/usr/bin/rugnux`. The repository's CUDA variant keeps cuFFT as a system dependency, where the archive above links it in; either works on the same machine. ## From source `cmake -S . -B build -DJFJOCH_RUGNUX_ONLY=ON` builds `rugnux` alone, on Linux, macOS and Windows, with every dependency fetched during the first configure. The flags that match the released binaries, and what a build needs on a Mac, are in [Installing Rugnux ▸ Building from source](RUGNUX_INSTALL.md#building-from-source). ## Memory and hardware A run wants host and GPU memory in proportion to the number of reflections it integrates, not to the detector: 16 GB of RAM and a 6 GB card for an ordinary sweep, 32 GB and 8 GB for the largest measured, and far more for a very large unit cell. The sizing table and the flags that lower it are in [Installing Rugnux ▸ Memory](RUGNUX_INSTALL.md#memory).