Skip to main content

desktop-release

Cut and publish ryOS Electron desktop releases on GitHub. Covers bumping package.json version, tagging v*, triggering Build Electron, and verifying the GitHub release. Use when the user asks to release the desktop app, bump the desktop version, trigger an Electron build, or publish macOS/Windows installers.

소스 정보

저장소
ryokun6/ryos
최근 소스 활동
2026년 6월 28일 11:54
감지된 SKILL.md 언어
영어
스타
1,268
포크
186

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
desktop-release
description
Cut and publish ryOS Electron desktop releases on GitHub. Covers bumping package.json version, tagging v*, triggering Build Electron, and verifying the GitHub release. Use when the user asks to release the desktop app, bump the desktop version, trigger an Electron build, or publish macOS/Windows installers.
# Desktop Release (Electron) ryOS desktop builds are **Electron** artifacts published by GitHub Actions. The **desktop app version** lives in `package.json` (`version` field). Do **not** confuse it with the web app version in `scripts/generate-build-version.ts` / `public/version.json` — those are separate. ## Workflow | Item | Location | |------|----------| | CI workflow | `.github/workflows/build-electron.yml` | | Builder config | `electron-builder.yml` | | Build scripts | `bun run electron:build:mac`, `bun run electron:build:windows` | | Output artifacts | `release/` (DMG, ZIP, NSIS, `latest-mac.yml`, `latest.yml`) | ### Triggers 1. **Versioned release (preferred)** — push a tag matching `v*` (e.g. `v1.0.9`) - Builds macOS + Windows - Publishes GitHub release **ryOS v1.0.9** (tag = version) - Sets release as latest 2. **Manual / dev build** — `workflow_dispatch` on `main` - Republishes to the **`desktop`** tag (overwrites assets) - Use for unsigned test builds, not semver releases ## Release checklist ``` - [ ] 1. Confirm main is clean and up to date - [ ] 2. Bump package.json version (semver, e.g. 1.0.8 → 1.0.9) - [ ] 3. Commit and push to main - [ ] 4. Create and push tag v{version} (must match package.json) - [ ] 5. Verify Build Electron workflow started - [ ] 6. Confirm GitHub release assets when CI completes ``` ## Standard release commands Replace `1.0.9` with the target version. ```bash # 1. Bump version in package.json, then: git add package.json git commit -m "$(cat <<'EOF' Bump desktop app version to 1.0.9. EOF )" git push origin main git tag v1.0.9 git push origin v1.0.9 ``` ## Verify CI ```bash gh run list --workflow=build-electron.yml --limit 3 gh run watch # optional: pass run ID from list output ``` When the run succeeds, check: - https://github.com/ryokun6/ryos/releases/tag/v1.0.9 Expected assets: - macOS: `ryOS_{version}_aarch64.dmg`, `.zip`, `.zip.blockmap`, `latest-mac.yml` - Windows: `ryOS_{version}_x64.exe`, `.exe.blockmap`, `latest.yml` ## Manual workflow dispatch (no new tag) Only when the user explicitly wants a **`desktop`** channel rebuild, not a semver release: ```bash gh workflow run build-electron.yml --ref main ``` This does **not** bump version. Artifacts land on the `desktop` release with overwrite. ## Version rules - **Bump only `package.json` `version`** for desktop releases. - **Tag name must be `v` + that version** (`1.0.9` → `v1.0.9`). - Check existing tags before choosing a version: `git tag -l 'v1.0.*'` and `gh release list --limit 5`. - Do not re-tag an existing release unless the user explicitly requests a rebuild of that version (requires deleting/moving the old tag — ask first). ## Git safety - Never force-push `main` or tags unless the user explicitly asks. - Do not commit unrelated files with the version bump. - Do not amend pushed commits. ## Local builds (optional) For local verification before tagging (requires signing secrets in `.env.local` for mac): ```bash bun run electron:build:mac # signed + notarized when Apple env is set bun run electron:build:windows ``` Local builds do not publish to GitHub. Production releases should go through the CI workflow. ## CI secrets (reference) macOS signed builds need GitHub Actions secrets documented in `.github/workflows/build-electron.yml` (`APPLE_*`, `EVS_*`). If CI fails on signing, inspect the workflow log — do not paste secret values. ## When the user asks to "trigger a desktop build" 1. Ask for the target version if not stated (suggest next patch bump from latest tag). 2. Bump `package.json`, commit, push, tag, push tag. 3. Report the Actions run URL and expected release tag.
GitHub에서 보기