Repository navigation
docs: point the README downloads at this repository's own releases - #3
Merged
Merged
Conversation
The download table is machine-written: release.yml's changelog job regenerates everything between the install-links markers on each v* tag and merges the result. It hardcoded upstream's repository in the asset URLs, so the links described builds this repository never produced, and the job that would refresh them was gated to upstream and never ran here. The table has sat on v0.29.5 since. Take the repository from GITHUB_REPOSITORY rather than a literal, and open the guards on the path that gets there: the checks, the release build, checksums and the changelog job itself. The remaining four jobs stay pinned to upstream on purpose, because they act on upstream's behalf against services a fork has no business touching: notify-discord posts to their webhook, deploy-website and docker publish to their host and registry, and update-flake rewrites flake.nix to point at their AppImages. A comment above the jobs records which guard a new job wants. In the table itself the links now go to the releases page rather than to pinned asset filenames, since this repository has published no release yet and a direct asset URL would be a guaranteed 404. The first tagged release replaces them with direct links.
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.
Which issue does this PR fix?
How to test
README.md— every Download link now goes to this repository's releasesrelease.yml: the checks/release/checksums/changelog jobs run here, whilenotify-discord,deploy-website,dockerandupdate-flakestay pinned upstreamv*tag, thechangelogjob rewrites the table between the install-links markers with direct asset URLs under this repositoryChecklist
pnpm format && pnpm lint && pnpm testlocally and it passesAI usage (required)
Tick exactly one. Ticking neither, ticking both, or deleting this section closes the PR automatically.
What this changes
The README download table is not hand-maintained:
release.yml'schangelogjob regenerates everything between<!-- install-links-start -->and<!-- install-links-end -->on eachv*tag, then opens and auto-merges a docs PR with the result.Two things kept that from working here. The job hardcoded
BASE="https://github.com/zhom/donutbrowser/releases/download/${TAG}", and it was gated ongithub.repository == 'zhom/donutbrowser'so it never ran. The table has therefore sat on v0.29.5 pointing at upstream.BASEnow comes fromGITHUB_REPOSITORY.security-scan,lint-js,lint-rust,codeql,spellcheck(allneeds:ofrelease), plusrelease,checksumsandchangelog.notify-discord,deploy-website,dockerandupdate-flakestay pinned to upstream deliberately — they post to upstream's webhook, publish to upstream's host and registry, and rewriteflake.nixto point at upstream's AppImages. A comment above the job list records which guard a newly added job should take.On the links in the table right now
They point at the releases page, not at pinned asset filenames, because this repository has published no release yet — a direct asset URL such as
.../releases/download/v0.29.5/Donut_0.29.5_aarch64.dmgwould be a guaranteed 404 here. The first tagged release replaces them with direct links via the generator.Deliberately not touched
brew install --cask donut,curl -fsSL https://donutbrowser.com/install.sh | sh, thenix run github:zhom/donutbrowserline and the release badge all still resolve upstream. Each depends on infrastructure this repository does not have (a cask, a hosted install script, a maintained flake), so repointing them would break them rather than fix them.Verification
TAG=v0.30.0andGITHUB_REPOSITORY=Locutusque/donutbrowser: the markers survive and the table is regenerated with correct direct asset URLs.actionlintclean onrelease.yml;typosclean.Generated by Claude Code