Files
Jungfraujoch/docs/RUGNUX_DOWNLOAD.md
T
leonarski_f 9c543f60b6 docs: home page with the three programs, download pages for rugnux and the viewer, technical reference grouped below
The home page introduces Rugnux, the viewer and the acquisition system in three cards, with the
licence stated once, and the sidebar is regrouped by program: what a user of Rugnux or the viewer
needs comes first, and the algorithms, formats, interfaces, hardware and FPGA pages sit under one
collapsed "Technical reference" hub (TECHNICAL.md). No page moves, so every existing URL stays.

Download pages (RUGNUX_DOWNLOAD.md, VIEWER_DOWNLOAD.md) are rendered by a small Sphinx extension
(docs/_ext/jfjoch_downloads.py) from the `release` in conf.py, which update_version.sh rewrites,
so no version string on them is maintained by hand; a script then asks the Gitea API for the
newest published release and repoints the buttons at its assets, naming any archive that release
does not carry. Without network access the build-time links stand. JUNGFRAUJOCH.md is the
landing page of the acquisition side with its install pointers.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015CeEGgpKdfkCTJb3YNMJcu
(cherry picked from commit 050442592504ce879dc51d78b6d3d1c58268a800)
2026-10-25 07:20:28 +01:00

70 lines
3.0 KiB
Markdown

# 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-<version>-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).