feat: one-line install via GitHub Pages - #3
Merged
Merged
Conversation
Installing meant cloning the repo and building it with cargo, which asks for a
Rust toolchain before you can see whether you want the tool at all. The release
workflow already publishes binaries for four targets, so the pieces to skip
that were there — nothing was serving them.
Add install.sh, which resolves the latest release, picks the tarball matching
the machine's architecture and libc, verifies it against the release's
SHA256SUMS, and installs to ~/.local/bin (or /usr/local/bin as root), adding
that to PATH when it is missing. Plain POSIX sh, curl or wget, no jq.
Serve it, plus a small landing page, from GitHub Pages via a new workflow so
the documented one-liner has somewhere to point:
curl -fsSL https://tuna4ll.github.io/ratfetch/install.sh | sh
The source builds stay in the README under "Manual setup" — they are still the
answer for architectures without a prebuilt binary, and for hacking on it.
tutkuofnight
force-pushed
the
feat/install-script-and-pages
branch
from
August 31, 2026 20:20
d660f6b to
e255037
Compare
tuna4ll
approved these changes
Aug 31, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #2.
Installing meant cloning the repo and building it with cargo, which asks for a Rust toolchain before you can see whether you want the tool at all. The release workflow already publishes binaries for four targets — nothing was serving them.
curl -fsSL https://tuna4ll.github.io/ratfetch/install.sh | shWhat is here
install.sh— resolves the latest release, picks the tarball matching the machine's architecture and libc (x86_64/aarch64, gnu/musl), verifies it against the release'sSHA256SUMSand refuses to install on a mismatch, then installs to~/.local/bin(or/usr/local/binas root) and adds that to PATH when it is missing. Plain POSIX sh, curl or wget, no jq.RATFETCH_VERSION,RATFETCH_INSTALL_DIRandRATFETCH_NO_MODIFY_PATHoverride the defaults.site/index.html— a small landing page: the one-liner with a copy button, the demo screenshot, the manual routes. Light and dark..github/workflows/pages.yml— publishessite/plusinstall.shto GitHub Pages on push tomain, so the installer is served at the URL above. Syntax-checks the script before deploying.No change to
release.yml— the existing tarballs andSHA256SUMSare exactly what the installer consumes.Before this works
GitHub Pages has to be switched on for the repo: Settings → Pages → Source: GitHub Actions. The workflow deploys on the first push to
mainafter that.Tested
Ran end to end against the published v0.1.0 release on x86_64 glibc: resolved the tag, verified the checksum, installed,
ratfetch --versionreportedratfetch 0.1.0.AUR was the other suggestion in #2 — worth doing, but it is a separate packaging track and does not block this one.