weaveback is a self-contained Rust binary (or a set of four binaries in the tarball release). HTML documentation rendering is built in via weaveback-docgen, which uses the Rust acdc AsciiDoc parser directly — no Ruby or external AsciiDoc toolchain required.

PlantUML diagram support requires a JDK and a plantuml.jar (pass --plantuml-jar <path> to weaveback-docgen).

The installer script handles binary download and, optionally, JDK installation.

Python 3 is required. It is available on every supported platform.

# Clone or download the repo, then:
python3 scripts/install.py

With PlantUML support (installs JDK):

python3 scripts/install.py --diagrams

Build from source instead of downloading a release binary:

python3 scripts/install.py --source

Full options:

  --diagrams          Install JDK (for PlantUML via --plantuml-jar)
  --source            Build from source (requires cargo / Rust toolchain)
  --prefix DIR        Install binary to DIR
                        default: ~/.local/bin          (Linux/macOS)
                                 %LOCALAPPDATA%\Programs\weaveback  (Windows)
  --version VER       Pin to a specific release, e.g. v0.4.1

The script detects your package manager (paru/yay, apt, dnf, brew, winget, choco, scoop), downloads the right binary from GitHub releases, and (with --diagrams) installs a JDK for PlantUML rendering.

On Arch Linux it installs the binary via paru -S weaveback-bin instead of downloading a tarball.

Manual installation

Arch Linux

paru -S weaveback-bin       # or: yay -S weaveback-bin
# with diagrams:
sudo pacman -S jdk-openjdk

Debian / Ubuntu

# Download the .deb from https://github.com/giannifer7/weaveback/releases/latest
sudo apt install ./weaveback_*.deb
# with diagrams:
sudo apt install default-jdk-headless

Fedora / RHEL

sudo dnf install ./weaveback-*.rpm
# with diagrams:
sudo dnf install java-latest-openjdk-headless

macOS

No pre-built macOS binary is provided yet. Build from source:

cargo install --path crates/weaveback
# with diagrams:
brew install openjdk

Windows

Download weaveback.exe from the latest release and place it somewhere on your %PATH%, or use the installer script which handles this automatically via winreg.

rem with diagrams:
winget install Microsoft.OpenJDK.21

Any Linux (musl, no package manager)

Quick one-liner for the binary only:

curl -sL https://github.com/giannifer7/weaveback/releases/latest/download/weaveback-musl \
     -o ~/.local/bin/weaveback && chmod +x ~/.local/bin/weaveback

Pre-built binary reference

File Platform Notes

weaveback-x86_64-linux.tar.gz

Linux x86_64

glibc — tarball with all four binaries

weaveback-glibc

Linux x86_64

glibc, single binary

weaveback-musl

Linux x86_64

musl (fully static, works on any Linux)

weaveback-fedora

Fedora/RHEL

*.deb

Debian/Ubuntu

*.rpm

Fedora/RHEL

weaveback.exe

Windows x86_64

native MSVC build

weaveback-mingw64.exe

Windows x86_64

MinGW cross-compiled

The musl builds are fully statically linked — use them on old distros, Alpine, or containers where glibc version is uncertain.

Build from source

git clone https://github.com/giannifer7/weaveback
cd weaveback
cargo build --release
# binary: target/release/weaveback

Nix

nix profile install github:giannifer7/weaveback

Or in a flake:

inputs.weaveback.url = "github:giannifer7/weaveback";
environment.systemPackages = [ inputs.weaveback.packages.x86_64-linux.default ];