Skip to content

Publish releases from this fork (point auto-update at JeanBaptisteRenard/switchboard) - #39

Merged
JeanBaptisteRenard merged 1 commit into
devsuitup:mainfrom
ymajoros:feat/publish-to-jbr-releases
Jun 8, 2026
Merged

JeanBaptisteRenard merged 1 commit into
devsuitup:mainfrom
ymajoros:feat/publish-to-jbr-releases

Conversation

@ymajoros

@ymajoros ymajoros commented Jun 5, 2026

Copy link
Copy Markdown

What

One-line change: build.publish.owner doctlyJeanBaptisteRenard in package.json.

Why

build.yml is already a full release pipeline — on a v* tag it builds mac/win/linux(x64+arm64) and the publish job runs gh release create (a draft Release with all binaries attached) in this repo. It's just never been triggered, so there are no releases yet.

The gap: build.publish still points at doctly/switchboard. electron-builder bakes that into the auto-update metadata (latest*.yml / app-update.yml), so an app published from this fork would check doctly for updates — wrong. This points the update channel at the repo that actually hosts the releases.

After merge

Push a v* tag (e.g. bump version and tag v0.0.31) → the workflow cuts a draft release with installable binaries + correct auto-update. The release-upload itself already targets this repo (gh release create uses the running repo's token), so nothing else is needed.

Caveats

  • mac/win artifacts are unsigned unless CSC_LINK/CSC_KEY_PASSWORD/APPLE_* secrets are set (users get the usual 'unidentified developer' prompt). Linux AppImage/deb need no signing and are clean.
  • This is a fork-divergence from upstream (upstream's publish correctly stays doctly); appropriate since this fork is self-maintained and well ahead of upstream.

…here

The build.yml release pipeline already builds mac/win/linux and creates a
GitHub Release on any `v*` tag — but `build.publish` still points at
doctly/switchboard. electron-builder bakes that target into the auto-update
metadata (latest*.yml / app-update.yml), so a build published from this fork
would check doctly for updates instead of this repo.

Point `publish.owner` at JeanBaptisteRenard so the generated update metadata
matches where the releases actually land. The release job itself already
uploads to this repo via `gh release create`, so no workflow change is needed
— pushing a `v*` tag now produces a (draft) release with working auto-update.

Note: mac/win artifacts will be unsigned unless CSC_LINK / APPLE_* secrets are
set on the repo (same as before); Linux AppImage/deb need no signing.

@JeanBaptisteRenard JeanBaptisteRenard left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed end-to-end (config + the full release pipeline + the auto-update runtime). The one-liner is correct: build.publish.owner governs both the --publish target and the app-update.yml/latest*.yml feed URL baked into the packaged app — pointing it at this repo, which is where build.yml's publish job actually uploads, is exactly right. electron-updater is already fully wired in main.js (checks at T+5s then every 4h), and the latest*.yml metadata files are generated and uploaded. No regression surface for the existing AppImage.

Merging. Two things to flag for when you actually cut the first release (neither blocks this merge):

  1. Draft releases are invisible to electron-updater — after a v* tag, the workflow creates a --draft release; you must click "Publish" in the GitHub UI to activate the update feed. (Good thing — it's a review gate before users see the update.)
  2. notarize: true + no Apple secrets = the mac build job errors out (not a graceful unsigned fallback), which would block the whole pipeline. I'll send a tiny follow-up flipping notarize to false so the first release can ship unsigned-but-green; you can wire the APPLE_* secrets later if you want signed mac builds.

Nice catch on the auto-update channel pointing at the wrong repo — thanks! 🙏

@JeanBaptisteRenard
JeanBaptisteRenard merged commit 25c75c3 into devsuitup:main Jun 8, 2026
7 checks passed
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.

2 participants