This is a static render of the Sixohthree Wiki

Installing Zig

28th July 2026 at 11:50pm
#!/bin/bash

#
# Quick and dirty script to install the latest x86_64 build of Zig in /usr/local
#
# Not extensively tested. Use at your own risk!
#

cd /tmp

SOURCE=$(curl -s https://ziglang.org/download/index.json | jq -r '.master["x86_64-linux"].tarball')
#SOURCE="https://ziglang.org/builds/zig-x86_64-linux-0.17.0-dev.1476+91a29d707.tar.xz"
SOURCE_SIG="${SOURCE}.minisig"
PUBKEY="RWSGOq2NVecA2UPNdBUZykf1CCb147pkmdtYxgb3Ti+JO/wCYvhbAb/U"

TARFILE=$(basename "$SOURCE")
TARDIR=$(mktemp --tmpdir -d zig.XXXXXX)
TARBASEDIR=$(basename "$TARDIR")

# grab the signature and distribution
curl -O "$SOURCE_SIG"
curl -C - -O "$SOURCE"

# verify signature
minisign -V -P "$PUBKEY" -m "$TARFILE"
SIGCHECK=$?

if [ $SIGCHECK -ne 0 ]; then
  exit $SIGCHECK
fi

# extract
tar xJfv "$TARFILE" --one-top-level="$TARBASEDIR" --strip-components=1

# copy to /usr/local (note the weird cp /foo/. syntax)
sudo cp -rv "$TARDIR/lib/." "/usr/local/lib/zig"
sudo cp -v "$TARDIR/zig" "/usr/local/bin/zig"

# clean up
rm -rf "$TARDIR"