Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 38 additions & 0 deletions .github/workflows/winget.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Publish to winget

# Submits the Windows installer to microsoft/winget-pkgs whenever a GitHub
# Release is published, so `winget install 4nrry.OpenCherryDesktop` picks up new
# versions automatically.
#
# Prerequisites (one-time):
# 1. The package 4nrry.OpenCherryDesktop must exist in winget-pkgs (do the first
# submission manually with wingetcreate — see README/notes).
# 2. Add a repo secret WINGET_TOKEN: a GitHub Personal Access Token (classic)
# with the `public_repo` scope. The action uses it to fork winget-pkgs and
# open the PR. A fine-grained token also works (Contents + Pull requests
# read/write on your winget-pkgs fork).
#
# Note: `released` does not fire for releases marked "pre-release". If you tag
# alpha builds as pre-releases, change the trigger to `published`.

on:
release:
types: [released]

jobs:
publish:
runs-on: ubuntu-latest
steps:
- name: Strip leading "v" from the tag
id: ver
run: echo "version=${GITHUB_REF_NAME#v}" >> "$GITHUB_OUTPUT"

- name: Submit to winget-pkgs
uses: vedantmgoyal9/winget-releaser@v2
with:
identifier: 4nrry.OpenCherryDesktop
version: ${{ steps.ver.outputs.version }}
# Match only the Windows NSIS installer among the release assets
# (deb/rpm/dmg/AppImage/.sha256 files are ignored).
installers-regex: '_x64-setup\.exe$'
token: ${{ secrets.WINGET_TOKEN }}
2 changes: 1 addition & 1 deletion apps/desktop/src-tauri/tauri.conf.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "https://schema.tauri.app/config/2",
"productName": "opencherry",
"productName": "OpenCherry",
"version": "0.0.1",
"identifier": "ai.opencherry.desktop",
"build": {
Expand Down
15 changes: 15 additions & 0 deletions packaging/winget/4nrry.OpenCherryDesktop.installer.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# yaml-language-server: $schema=https://aka.ms/winget-manifest.installer.1.6.0.schema.json
PackageIdentifier: 4nrry.OpenCherryDesktop
PackageVersion: 0.0.1
InstallerType: nullsoft
Scope: user
InstallModes:
- silent
- silentWithProgress
ReleaseDate: 2026-06-26
Installers:
- Architecture: x64
InstallerUrl: https://github.com/4nrry/opencherry/releases/download/v0.0.1/OpenCherry_0.0.1_x64-setup.exe
InstallerSha256: E3D57BC2284A41F5A1C923B19C20B567A8440E29EA7CDAA6DC8F78DDB10A5D67
ManifestType: installer
ManifestVersion: 1.6.0
26 changes: 26 additions & 0 deletions packaging/winget/4nrry.OpenCherryDesktop.locale.en-US.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# yaml-language-server: $schema=https://aka.ms/winget-manifest.defaultLocale.1.6.0.schema.json
PackageIdentifier: 4nrry.OpenCherryDesktop
PackageVersion: 0.0.1
PackageLocale: en-US
Publisher: anrry
PublisherUrl: https://github.com/4nrry
PublisherSupportUrl: https://github.com/4nrry/opencherry/issues
PackageName: OpenCherry Desktop
PackageUrl: https://github.com/4nrry/opencherry
License: AGPL-3.0-or-later
LicenseUrl: https://github.com/4nrry/opencherry/blob/main/LICENSE
ShortDescription: Multi-repo x multi-agent control tower for AI-assisted coding.
Description: |-
OpenCherry is an open source, Ubuntu/GNOME-first desktop app that orchestrates
many Git repositories across many AI coding agents (Claude Code, OpenCode,
Codex, Gemini CLI, Aider, ...) from a single VS Code Source Control-style
interface.
Moniker: opencherry
Tags:
- ai
- developer-tools
- git
- tauri
- version-control
ManifestType: defaultLocale
ManifestVersion: 1.6.0
6 changes: 6 additions & 0 deletions packaging/winget/4nrry.OpenCherryDesktop.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# yaml-language-server: $schema=https://aka.ms/winget-manifest.version.1.6.0.schema.json
PackageIdentifier: 4nrry.OpenCherryDesktop
PackageVersion: 0.0.1
DefaultLocale: en-US
ManifestType: version
ManifestVersion: 1.6.0
Loading