Skip to content

docs(apt): signing key is configured; show the verified install path - #41

Merged
vietanhdev merged 1 commit into
mainfrom
docs/apt-signing-configured
Jul 20, 2026
Merged

docs(apt): signing key is configured; show the verified install path#41
vietanhdev merged 1 commit into
mainfrom
docs/apt-signing-configured

Conversation

@vietanhdev

Copy link
Copy Markdown
Owner

A GPG signing key is now configured as APT_GPG_PRIVATE_KEY / APT_GPG_PASSPHRASE, so the next tagged release will publish a signed APT repository and the generated index page will switch to signed-by=.

docs/download.md (from #39) says the repo is unsigned and will stay that way until a key exists. That becomes wrong at the next release.

The awkward part, handled explicitly

The currently published repository is still unsigned — signing only takes effect when a release actually runs. So [trusted=yes] remains the instruction that works today and keeps its warning. The signed-by= commands are shown below it, clearly marked as taking effect from the next release, rather than replacing instructions that would not work yet.

The repository's own index.html is generated from whichever form the release actually published, so it cannot drift from reality. This page now says so.

Verification

Before writing any of this I extracted the Update APT repository step's shell from the merged workflow on main and ran it against the real signing key:

signed the Release file with 665B0501813B5351
PASS: detached sig verifies vs published key
PASS: InRelease verifies vs published key
PASS: tampered Release rejected
... 18/18

That verifies against the published public key alone — which is what a user's apt does — so the claim that the next release produces a working signed repo is tested, not assumed.

Docs build passes.

A GPG signing key is now set as APT_GPG_PRIVATE_KEY / APT_GPG_PASSPHRASE,
so the next tagged release publishes a signed repository and the generated
index page switches to signed-by=.

The published repository is still unsigned until that release happens, so
[trusted=yes] stays the working instruction and is still labelled as
skipping verification. The signed commands sit below it, marked as taking
effect from the next release, rather than replacing instructions that do
not work yet.

Verified end to end before writing this: the release step's shell was
extracted from the merged workflow and run against the real key, and the
resulting InRelease and Release.gpg verify against the published public
key alone -- which is what a user's apt actually does.
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 20, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
❌ Deployment failed
View logs
thinkutils e8baf91 Jul 20 2026, 03:42 AM

@vietanhdev
vietanhdev merged commit 0778ff7 into main Jul 20, 2026
9 of 10 checks passed
@vietanhdev
vietanhdev deleted the docs/apt-signing-configured branch July 20, 2026 03:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant