export zig_version := "master" hello-world: echo "Hello World" # Full zig install setup-zig: setup-zig-lib setup-zig-path setup-zls # Install zig into ~/.local/zig setup-zig-lib: #!/usr/bin/env bash mkdir -p ~/.local/zig set -euxo pipefail zig_download="$(mktemp --suffix=zig_download)" zig_download_url="$(curl -s https://ziglang.org/download/index.json | jq -r ".${zig_version}.[\"x86_64-linux\"].tarball")" zig_download_file="${zig_download_url##*/}" curl -s -o "${zig_download}" "${zig_download_url}" tar xvf "${zig_download}" -C ~/.local/zig >/dev/null rm -f ~/.local/zig/zig-bin ln -s ~/.local/zig/${zig_download_file%%.tar.xz} ~/.local/zig/zig-bin rm -f "${zig_download}" setup-zls: #!/usr/bin/env bash which -a zig || source ~/.bashrc ./setup-vim.sh zls-install setup-zig-path: #!/usr/bin/env bash mkdir -p ~/.bashrc.d cat <<'EOF'>~/.bashrc.d/zig # Custom zig path if [[ -d "$HOME/.local/zig/zig-bin" ]]; then PATH="$HOME/.local/zig/zig-bin:$PATH" fi export PATH EOF