diff --git a/.github/workflows/build-desktop.yml b/.github/workflows/build-desktop.yml index 26eb261..a06a0ce 100644 --- a/.github/workflows/build-desktop.yml +++ b/.github/workflows/build-desktop.yml @@ -354,12 +354,12 @@ jobs: node -e " const BASE = process.env.BASE_URL; const platforms = {}; - if (process.env.MAC_SIG && process.env.MAC_URL) - platforms['darwin-aarch64'] = { signature: process.env.MAC_SIG, url: BASE + '/' + process.env.MAC_URL }; - if (process.env.LIN_SIG && process.env.LIN_URL) - platforms['linux-x86_64'] = { signature: process.env.LIN_SIG, url: BASE + '/' + process.env.LIN_URL }; - if (process.env.WIN_SIG && process.env.WIN_URL) - platforms['windows-x86_64'] = { signature: process.env.WIN_SIG, url: BASE + '/' + process.env.WIN_URL }; + if (process.env.MAC_SIG) + platforms['darwin-aarch64'] = { signature: process.env.MAC_SIG, url: BASE + '/ClaudePrism-macOS.app.tar.gz' }; + if (process.env.LIN_SIG) + platforms['linux-x86_64'] = { signature: process.env.LIN_SIG, url: BASE + '/ClaudePrism-Linux.AppImage' }; + if (process.env.WIN_SIG) + platforms['windows-x86_64'] = { signature: process.env.WIN_SIG, url: BASE + '/ClaudePrism-Windows-setup.exe' }; const data = { version: '$VERSION', @@ -379,22 +379,28 @@ jobs: gh release view "$TAG" > /dev/null 2>&1 || \ gh release create "$TAG" --title "ClaudePrism $TAG" --generate-notes --draft - - name: Upload all assets to release + - name: Rename and upload assets env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | TAG="${{ steps.tag.outputs.tag }}" + mkdir -p upload - # Upload latest.json - gh release upload "$TAG" latest.json --clobber + # Rename platform artifacts to version-free names + find artifacts -name "*.dmg" | head -1 | xargs -I{} cp {} upload/ClaudePrism-macOS.dmg + find artifacts -name "*.app.tar.gz" | head -1 | xargs -I{} cp {} upload/ClaudePrism-macOS.app.tar.gz + find artifacts -name "*-setup.exe" | head -1 | xargs -I{} cp {} upload/ClaudePrism-Windows-setup.exe + find artifacts -name "*.msi" | head -1 | xargs -I{} cp {} upload/ClaudePrism-Windows.msi + find artifacts -name "*.deb" | head -1 | xargs -I{} cp {} upload/ClaudePrism-Linux.deb + find artifacts -name "*.rpm" | head -1 | xargs -I{} cp {} upload/ClaudePrism-Linux.rpm + find artifacts -name "*.AppImage" | head -1 | xargs -I{} cp {} upload/ClaudePrism-Linux.AppImage - # Upload all platform artifacts - find artifacts -type f \( \ - -name "*.dmg" -o -name "*.app.tar.gz" -o \ - -name "*.exe" -o -name "*.msi" -o \ - -name "*.deb" -o -name "*.rpm" -o -name "*.AppImage" \ - \) | while read -r file; do - echo "Uploading: $file" + cp latest.json upload/ + + echo "==> Uploading:" + ls -la upload/ + + for file in upload/*; do gh release upload "$TAG" "$file" --clobber done diff --git a/README.ja.md b/README.ja.md index 50b6544..c32fb73 100644 --- a/README.ja.md +++ b/README.ja.md @@ -24,13 +24,13 @@ Website   - + macOS 版をダウンロード   - + Windows 版をダウンロード   - + Linux 版をダウンロード

diff --git a/README.ko.md b/README.ko.md index dbd5703..ca06bec 100644 --- a/README.ko.md +++ b/README.ko.md @@ -24,13 +24,13 @@ Website   - + macOS 다운로드   - + Windows 다운로드   - + Linux 다운로드

diff --git a/README.md b/README.md index 386e81f..f90447a 100644 --- a/README.md +++ b/README.md @@ -24,13 +24,13 @@ Website   - + Download for macOS   - + Download for Windows   - + Download for Linux

diff --git a/README.zh-CN.md b/README.zh-CN.md index b12b8db..1c32230 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -22,9 +22,9 @@

官网 · - macOS · - Windows · - Linux · + macOS · + Windows · + Linux · 所有版本

diff --git a/apps/desktop/package.json b/apps/desktop/package.json index fdb3402..5ea12b3 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -1,6 +1,6 @@ { "name": "@claude-prism/desktop", - "version": "1.0.2", + "version": "1.0.3", "private": true, "type": "module", "scripts": { diff --git a/apps/desktop/src-tauri/Cargo.toml b/apps/desktop/src-tauri/Cargo.toml index 02429cd..4ef8f34 100644 --- a/apps/desktop/src-tauri/Cargo.toml +++ b/apps/desktop/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "claude-prism-desktop" -version = "1.0.2" +version = "1.0.3" description = "AI-powered LaTeX writing workspace" edition = "2021" diff --git a/apps/desktop/src-tauri/tauri.conf.json b/apps/desktop/src-tauri/tauri.conf.json index 2567f64..698ea0a 100644 --- a/apps/desktop/src-tauri/tauri.conf.json +++ b/apps/desktop/src-tauri/tauri.conf.json @@ -2,7 +2,7 @@ "$schema": "https://raw.githubusercontent.com/nicegui-unofficial/nicegui-tauri-template/main/src-tauri/tauri.conf-v2-schema.json", "identifier": "com.claude-prism.desktop", "productName": "ClaudePrism", - "version": "1.0.2", + "version": "1.0.3", "build": { "beforeDevCommand": "pnpm dev", "beforeBuildCommand": "pnpm build", diff --git a/package.json b/package.json index 7f059b7..ddb8053 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@claude-prism/root", "description": "Open-Source AI LaTeX writing workspace", - "version": "1.0.2", + "version": "1.0.3", "repository": { "type": "git", "url": "https://github.com/delibae/claude-prism" diff --git a/scripts/build-linux.sh b/scripts/build-linux.sh index 03b6365..9aa84b0 100755 --- a/scripts/build-linux.sh +++ b/scripts/build-linux.sh @@ -66,7 +66,7 @@ if [ -n "$APPIMAGE_PATH" ] && [ -n "$APPIMAGE_SIG" ]; then const data = JSON.parse(fs.readFileSync('$LATEST_JSON', 'utf8')); data.platforms['linux-x86_64'] = { signature: \`$SIGNATURE\`, - url: 'https://github.com/delibae/claude-prism/releases/download/$TAG/$APPIMAGE_FILENAME' + url: 'https://github.com/delibae/claude-prism/releases/download/$TAG/ClaudePrism-Linux.AppImage' }; fs.writeFileSync('$LATEST_JSON', JSON.stringify(data, null, 2)); " @@ -79,7 +79,7 @@ if [ -n "$APPIMAGE_PATH" ] && [ -n "$APPIMAGE_SIG" ]; then "platforms": { "linux-x86_64": { "signature": "$SIGNATURE", - "url": "https://github.com/delibae/claude-prism/releases/download/$TAG/$APPIMAGE_FILENAME" + "url": "https://github.com/delibae/claude-prism/releases/download/$TAG/ClaudePrism-Linux.AppImage" } } } diff --git a/scripts/build-macos.sh b/scripts/build-macos.sh index 42ae53b..1660efa 100755 --- a/scripts/build-macos.sh +++ b/scripts/build-macos.sh @@ -76,7 +76,7 @@ else const data = JSON.parse(fs.readFileSync('$LATEST_JSON', 'utf8')); data.platforms['darwin-aarch64'] = { signature: \`$SIGNATURE\`, - url: 'https://github.com/delibae/claude-prism/releases/download/$TAG/$UPDATE_FILENAME' + url: 'https://github.com/delibae/claude-prism/releases/download/$TAG/ClaudePrism-macOS.app.tar.gz' }; fs.writeFileSync('$LATEST_JSON', JSON.stringify(data, null, 2)); " @@ -89,7 +89,7 @@ else "platforms": { "darwin-aarch64": { "signature": "$SIGNATURE", - "url": "https://github.com/delibae/claude-prism/releases/download/$TAG/$UPDATE_FILENAME" + "url": "https://github.com/delibae/claude-prism/releases/download/$TAG/ClaudePrism-macOS.app.tar.gz" } } } @@ -103,8 +103,16 @@ echo "==> Uploading to GitHub Release $TAG" gh release view "$TAG" --repo delibae/claude-prism >/dev/null 2>&1 || \ gh release create "$TAG" --repo delibae/claude-prism --title "ClaudePrism $TAG" --generate-notes -UPLOAD_ASSETS=("$DMG_PATH") -[ -n "${UPDATE_TAR:-}" ] && UPLOAD_ASSETS+=("$UPDATE_TAR") +# Rename to version-free names +RENAMED_DMG="apps/desktop/src-tauri/target/ClaudePrism-macOS.dmg" +cp "$DMG_PATH" "$RENAMED_DMG" +UPLOAD_ASSETS=("$RENAMED_DMG") + +if [ -n "${UPDATE_TAR:-}" ]; then + RENAMED_TAR="apps/desktop/src-tauri/target/ClaudePrism-macOS.app.tar.gz" + cp "$UPDATE_TAR" "$RENAMED_TAR" + UPLOAD_ASSETS+=("$RENAMED_TAR") +fi [ -f "${LATEST_JSON:-}" ] && UPLOAD_ASSETS+=("$LATEST_JSON") gh release upload "$TAG" \