fix: revert built app name to uppercase Goose (#5206)

This commit is contained in:
Zane
2025-10-16 13:11:30 -07:00
committed by GitHub
parent b48a7ffd29
commit f0da14bff8
16 changed files with 72 additions and 72 deletions
+10 -10
View File
@@ -192,10 +192,10 @@ jobs:
source_job_url="https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
unsigned_url="s3://block-goose-artifacts-bucket-production/unsigned/goose-${GITHUB_SHA}-${{ github.run_id }}-intel.zip"
zip -q -u -r out/goose-darwin-x64/goose_intel_mac.zip entitlements.plist
zip -q -u -r out/Goose-darwin-x64/Goose_intel_mac.zip entitlements.plist
# upload unsigned goose to transfer bucket so it can be passed to lambda
aws s3 cp --quiet out/goose-darwin-x64/goose_intel_mac.zip "${unsigned_url}"
aws s3 cp --quiet out/Goose-darwin-x64/Goose_intel_mac.zip "${unsigned_url}"
# begin signing
echo "🚀 launching signing process"
@@ -247,7 +247,7 @@ jobs:
# download the signed app from S3
echo "⬇️ downloading signed app"
aws s3 cp --quiet "${signed_url}" out/goose-darwin-x64/goose_intel_mac.zip
aws s3 cp --quiet "${signed_url}" out/Goose-darwin-x64/Goose_intel_mac.zip
working-directory: ui/desktop
- name: Final cleanup before artifact upload
@@ -261,26 +261,26 @@ jobs:
- name: Upload Desktop artifact
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # pin@v4
with:
name: goose-darwin-x64
path: ui/desktop/out/goose-darwin-x64/goose_intel_mac.zip
name: Goose-darwin-x64
path: ui/desktop/out/Goose-darwin-x64/Goose_intel_mac.zip
- name: Quick launch test (macOS)
if: ${{ inputs.quick_test }}
run: |
# Ensure no quarantine attributes (if needed)
xattr -cr "ui/desktop/out/goose-darwin-x64/goose.app"
echo "Opening goose.app..."
open -g "ui/desktop/out/goose-darwin-x64/goose.app"
xattr -cr "ui/desktop/out/Goose-darwin-x64/Goose.app"
echo "Opening Goose.app..."
open -g "ui/desktop/out/Goose-darwin-x64/Goose.app"
# Give the app a few seconds to start and write logs
sleep 5
# Check if it's running
if pgrep -f "goose.app/Contents/MacOS/goose" > /dev/null; then
if pgrep -f "Goose.app/Contents/MacOS/Goose" > /dev/null; then
echo "App appears to be running."
else
echo "App did not stay open. Possible crash or startup error."
exit 1
fi
# Kill the app to clean up
pkill -f "goose.app/Contents/MacOS/goose"
pkill -f "Goose.app/Contents/MacOS/Goose"
+3 -3
View File
@@ -180,21 +180,21 @@ jobs:
- name: Upload .deb package
uses: actions/upload-artifact@v4
with:
name: goose-linux-x64-deb
name: Goose-linux-x64-deb
path: ui/desktop/out/make/deb/x64/*.deb
if-no-files-found: error
- name: Upload .rpm package
uses: actions/upload-artifact@v4
with:
name: goose-linux-x64-rpm
name: Goose-linux-x64-rpm
path: ui/desktop/out/make/rpm/x64/*.rpm
if-no-files-found: error
- name: Upload combined Linux packages
uses: actions/upload-artifact@v4
with:
name: goose-linux-x64
name: Goose-linux-x64
path: |
ui/desktop/out/make/deb/x64/*.deb
ui/desktop/out/make/rpm/x64/*.rpm
+20 -20
View File
@@ -284,12 +284,12 @@ jobs:
- name: Copy exe/dll to final out folder and prepare flat distribution
run: |
cd ui/desktop
mkdir -p ./out/goose-win32-x64/resources/bin
rsync -av src/bin/ out/goose-win32-x64/resources/bin/
mkdir -p ./out/Goose-win32-x64/resources/bin
rsync -av src/bin/ out/Goose-win32-x64/resources/bin/
# Create flat distribution structure
mkdir -p ./dist-windows
cp -r ./out/goose-win32-x64/* ./dist-windows/
cp -r ./out/Goose-win32-x64/* ./dist-windows/
# Verify the final structure
echo "📋 Final flat distribution structure:"
@@ -318,8 +318,8 @@ jobs:
wget -q https://github.com/ebourg/jsign/releases/download/6.0/jsign-6.0.jar -O jsign.jar
echo "05ca18d4ab7b8c2183289b5378d32860f0ea0f3bdab1f1b8cae5894fb225fa8a jsign.jar" | sha256sum -c
# Sign the main Electron executable (goose.exe)
echo "🔐 Signing main Electron executable: goose.exe"
# Sign the main Electron executable (Goose.exe)
echo "🔐 Signing main Electron executable: Goose.exe"
cd ui/desktop/dist-windows/
java -jar ${GITHUB_WORKSPACE}/jsign.jar \
@@ -329,12 +329,12 @@ jobs:
--alias windows-codesign \
--certfile "${GITHUB_WORKSPACE}/block-codesign-cert.pem" \
--tsaurl "http://timestamp.digicert.com" \
--name "goose" \
--name "Goose" \
--url "https://github.com/block/goose" \
"goose.exe"
"Goose.exe"
osslsigncode verify goose.exe
echo "✅ Main executable goose.exe signed successfully"
osslsigncode verify Goose.exe
echo "✅ Main executable Goose.exe signed successfully"
# Sign the backend executable (goosed.exe)
echo "🔐 Signing backend executable: goosed.exe"
@@ -347,7 +347,7 @@ jobs:
--alias windows-codesign \
--certfile "${GITHUB_WORKSPACE}/block-codesign-cert.pem" \
--tsaurl "http://timestamp.digicert.com" \
--name "goose Backend" \
--name "Goose Backend" \
--url "https://github.com/block/goose" \
"goosed.exe"
@@ -357,8 +357,8 @@ jobs:
# Show final file status
echo "📋 Final signed files:"
cd ../../
ls -la goose.exe
sha256sum goose.exe
ls -la Goose.exe
sha256sum Goose.exe
ls -la resources/bin/goosed.exe
sha256sum resources/bin/goosed.exe
@@ -371,8 +371,8 @@ jobs:
run: |
echo "📋 Verifying both signed executables in final distribution:"
echo "Main executable:"
ls -la ui/desktop/dist-windows/goose.exe
osslsigncode verify ui/desktop/dist-windows/goose.exe
ls -la ui/desktop/dist-windows/Goose.exe
osslsigncode verify ui/desktop/dist-windows/Goose.exe
echo "✅ Main executable signature verification passed"
echo "Backend executable:"
@@ -387,18 +387,18 @@ jobs:
echo "📦 Creating Windows zip package..."
# Create a zip file from the dist-windows directory
zip -r "goose-win32-x64.zip" dist-windows/
zip -r "Goose-win32-x64.zip" dist-windows/
echo "✅ Windows zip package created:"
ls -la goose-win32-x64.zip
ls -la Goose-win32-x64.zip
# Also create the zip in the expected output structure for consistency
mkdir -p out/goose-win32-x64/
cp goose-win32-x64.zip out/goose-win32-x64/
mkdir -p out/Goose-win32-x64/
cp Goose-win32-x64.zip out/Goose-win32-x64/
# 11) Upload the final Windows build
- name: Upload Windows build artifacts
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # pin@v4
with:
name: goose-win32-x64
path: ui/desktop/out/goose-win32-x64/goose-win32-x64.zip
name: Goose-win32-x64
path: ui/desktop/out/Goose-win32-x64/Goose-win32-x64.zip
+10 -10
View File
@@ -226,10 +226,10 @@ jobs:
source_job_url="https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
unsigned_url="s3://block-goose-artifacts-bucket-production/unsigned/goose-${GITHUB_SHA}-${{ github.run_id }}-arm64.zip"
zip -q -u -r out/goose-darwin-arm64/goose.zip entitlements.plist
zip -q -u -r out/Goose-darwin-arm64/Goose.zip entitlements.plist
# upload unsigned goose to transfer bucket so it can be passed to lambda
aws s3 cp --quiet out/goose-darwin-arm64/goose.zip "${unsigned_url}"
aws s3 cp --quiet out/Goose-darwin-arm64/Goose.zip "${unsigned_url}"
# begin signing
echo "🚀 launching signing process"
@@ -281,7 +281,7 @@ jobs:
# download the signed app from S3
echo "⬇️ downloading signed app"
aws s3 cp --quiet "${signed_url}" out/goose-darwin-arm64/goose.zip
aws s3 cp --quiet "${signed_url}" out/Goose-darwin-arm64/Goose.zip
working-directory: ui/desktop
- name: Final cleanup before artifact upload
@@ -296,26 +296,26 @@ jobs:
id: upload-app-bundle
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # pin@v4
with:
name: goose-darwin-arm64
path: ui/desktop/out/goose-darwin-arm64/goose.zip
name: Goose-darwin-arm64
path: ui/desktop/out/Goose-darwin-arm64/Goose.zip
- name: Quick launch test (macOS)
if: ${{ inputs.quick_test }}
run: |
# Ensure no quarantine attributes (if needed)
xattr -cr "ui/desktop/out/goose-darwin-arm64/goose.app"
echo "Opening goose.app..."
open -g "ui/desktop/out/goose-darwin-arm64/goose.app"
xattr -cr "ui/desktop/out/Goose-darwin-arm64/Goose.app"
echo "Opening Goose.app..."
open -g "ui/desktop/out/Goose-darwin-arm64/Goose.app"
# Give the app a few seconds to start and write logs
sleep 5
# Check if it's running
if pgrep -f "goose.app/Contents/MacOS/goose" > /dev/null; then
if pgrep -f "Goose.app/Contents/MacOS/Goose" > /dev/null; then
echo "App appears to be running."
else
echo "App did not stay open. Possible crash or startup error."
exit 1
fi
# Kill the app to clean up
pkill -f "goose.app/Contents/MacOS/goose"
pkill -f "Goose.app/Contents/MacOS/Goose"
+1 -1
View File
@@ -116,7 +116,7 @@ jobs:
token: ${{ secrets.GITHUB_TOKEN }}
artifacts: |
goose-*.tar.bz2
goose*.zip
Goose*.zip
*.deb
*.rpm
download_cli.sh
+1 -1
View File
@@ -118,7 +118,7 @@ jobs:
token: ${{ secrets.GITHUB_TOKEN }}
artifacts: |
goose-*.tar.bz2
goose*.zip
Goose*.zip
*.deb
*.rpm
download_cli.sh
@@ -81,7 +81,7 @@ jobs:
- name: Download Intel artifact
uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # pin@v4
with:
name: goose-darwin-x64
name: Goose-darwin-x64
path: intel-dist
- name: Comment on PR with Intel download link
@@ -91,7 +91,7 @@ jobs:
body: |
### macOS Intel Desktop App (x64)
[💻 Download macOS Desktop App (Intel x64, signed)](https://nightly.link/${{ github.repository }}/actions/runs/${{ github.run_id }}/goose-darwin-x64.zip)
[💻 Download macOS Desktop App (Intel x64, signed)](https://nightly.link/${{ github.repository }}/actions/runs/${{ github.run_id }}/Goose-darwin-x64.zip)
**Instructions:**
After downloading, unzip the file and drag the goose.app to your Applications folder. The app is signed and notarized for macOS.
@@ -82,7 +82,7 @@ jobs:
- name: Download Windows artifact
uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # pin@v4
with:
name: desktop-windows-dist
name: Goose-win32-x64
path: windows-dist
- name: Comment on PR with Windows download link
@@ -92,9 +92,9 @@ jobs:
body: |
### Windows Desktop App
[🪟 Download Windows Desktop App (x64, signed)](https://nightly.link/${{ github.repository }}/actions/runs/${{ github.run_id }}/desktop-windows-dist.zip)
[🪟 Download Windows Desktop App (x64, signed)](https://nightly.link/${{ github.repository }}/actions/runs/${{ github.run_id }}/Goose-win32-x64.zip)
**Instructions:**
After downloading, unzip the file and run goose.exe. The app is signed for Windows.
After downloading, unzip the file and run Goose.exe. The app is signed for Windows.
This link is provided by nightly.link and will work even if you're not logged into GitHub.
+2 -2
View File
@@ -123,7 +123,7 @@ jobs:
- name: Download ARM64 artifact
uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # pin@v4
with:
name: goose-darwin-arm64
name: Goose-darwin-arm64
path: arm64-dist
- name: Comment on PR with ARM64 download link
@@ -133,7 +133,7 @@ jobs:
body: |
### macOS ARM64 Desktop App (Apple Silicon)
[📱 Download macOS Desktop App (arm64, unsigned)](https://nightly.link/${{ github.repository }}/actions/runs/${{ github.run_id }}/goose-darwin-arm64.zip)
[📱 Download macOS Desktop App (arm64, unsigned)](https://nightly.link/${{ github.repository }}/actions/runs/${{ github.run_id }}/Goose-darwin-arm64.zip)
**Instructions:**
After downloading, unzip the file and drag the goose.app to a location you prefer. The app is unsigned, so to run it run `xattr -r -d com.apple.quarantine '/path/to/goose.app'` and then open the app
+1 -1
View File
@@ -24,7 +24,7 @@ jobs:
body: |
### macOS ARM64 Desktop App (Apple Silicon)
[📱 Download macOS Desktop App (arm64, unsigned)](https://nightly.link/${{ github.repository }}/actions/runs/${{ github.run_id }}/goose-darwin-arm64.zip)
[📱 Download macOS Desktop App (arm64, unsigned)](https://nightly.link/${{ github.repository }}/actions/runs/${{ github.run_id }}/Goose-darwin-arm64.zip)
**Instructions:**
After downloading, unzip the file and drag the goose.app to a location you prefer. The app is unsigned, so to run it run `xattr -r -d com.apple.quarantine '/path/to/goose.app'` and then open the app
+2 -2
View File
@@ -105,7 +105,7 @@ jobs:
token: ${{ secrets.GITHUB_TOKEN }}
artifacts: |
goose-*.tar.bz2
goose*.zip
Goose*.zip
*.deb
*.rpm
download_cli.sh
@@ -122,7 +122,7 @@ jobs:
token: ${{ secrets.GITHUB_TOKEN }}
artifacts: |
goose-*.tar.bz2
goose*.zip
Goose*.zip
*.deb
*.rpm
download_cli.sh
@@ -8,13 +8,13 @@ const DesktopInstallButtons = () => {
<div className="pill-button">
<Link
className="button button--primary button--lg"
to="https://github.com/block/goose/releases/download/stable/goose.zip"
to="https://github.com/block/goose/releases/download/stable/Goose.zip"
>
<IconDownload /> macOS Silicon
</Link>
<Link
className="button button--primary button--lg"
to="https://github.com/block/goose/releases/download/stable/goose_intel_mac.zip"
to="https://github.com/block/goose/releases/download/stable/Goose_intel_mac.zip"
>
<IconDownload /> macOS Intel
</Link>
@@ -8,7 +8,7 @@ const WindowsDesktopInstallButtons = () => {
<div className="pill-button">
<Link
className="button button--primary button--lg"
to="https://github.com/block/goose/releases/download/stable/goose-win32-x64.zip"
to="https://github.com/block/goose/releases/download/stable/Goose-win32-x64.zip"
>
<IconDownload /> Windows
</Link>
+4 -4
View File
@@ -65,8 +65,8 @@ module.exports = {
{
name: '@electron-forge/maker-deb',
config: {
name: 'goose',
bin: 'goose',
name: 'Goose',
bin: 'Goose',
maintainer: 'Block, Inc.',
homepage: 'https://block.github.io/goose/',
categories: ['Development'],
@@ -79,8 +79,8 @@ module.exports = {
{
name: '@electron-forge/maker-rpm',
config: {
name: 'goose',
bin: 'goose',
name: 'Goose',
bin: 'Goose',
maintainer: 'Block, Inc.',
homepage: 'https://block.github.io/goose/',
categories: ['Development'],
+6 -6
View File
@@ -1,8 +1,8 @@
{
"name": "goose-app",
"productName": "goose",
"productName": "Goose",
"version": "1.9.0",
"description": "goose App",
"description": "Goose App",
"engines": {
"node": "^22.17.1"
},
@@ -16,11 +16,11 @@
"start:test-error": "GOOSE_TEST_ERROR=true electron-forge start",
"package": "electron-forge package",
"make": "electron-forge make",
"bundle:default": "node scripts/prepare-platform-binaries.js && npm run make && (cd out/goose-darwin-arm64 && ditto -c -k --sequesterRsrc --keepParent goose.app goose.zip) || echo 'out/goose-darwin-arm64 not found; either the binary is not built or you are not on macOS'",
"bundle:alpha": "ALPHA=true node scripts/prepare-platform-binaries.js && ALPHA=true npm run make && (cd out/goose-darwin-arm64 && ditto -c -k --sequesterRsrc --keepParent goose.app goose_alpha.zip) || echo 'out/goose-darwin-arm64 not found; either the binary is not built or you are not on macOS'",
"bundle:default": "node scripts/prepare-platform-binaries.js && npm run make && (cd out/Goose-darwin-arm64 && ditto -c -k --sequesterRsrc --keepParent Goose.app Goose.zip) || echo 'out/Goose-darwin-arm64 not found; either the binary is not built or you are not on macOS'",
"bundle:alpha": "ALPHA=true node scripts/prepare-platform-binaries.js && ALPHA=true npm run make && (cd out/Goose-darwin-arm64 && ditto -c -k --sequesterRsrc --keepParent Goose.app Goose_alpha.zip) || echo 'out/Goose-darwin-arm64 not found; either the binary is not built or you are not on macOS'",
"bundle:windows": "node scripts/build-main.js && ELECTRON_PLATFORM=win32 node scripts/prepare-platform-binaries.js && npm run make -- --platform=win32 --arch=x64",
"bundle:intel": "node scripts/prepare-platform-binaries.js && npm run make -- --arch=x64 && cd out/goose-darwin-x64 && ditto -c -k --sequesterRsrc --keepParent goose.app goose_intel_mac.zip",
"debug": "echo 'run --remote-debugging-port=8315' && lldb out/goose-darwin-arm64/goose.app",
"bundle:intel": "node scripts/prepare-platform-binaries.js && npm run make -- --arch=x64 && cd out/Goose-darwin-x64 && ditto -c -k --sequesterRsrc --keepParent Goose.app Goose_intel_mac.zip",
"debug": "echo 'run --remote-debugging-port=8315' && lldb out/Goose-darwin-arm64/Goose.app",
"test-e2e": "npm run generate-api && playwright test",
"test-e2e:dev": "npm run generate-api && playwright test --reporter=list --retries=0 --max-failures=1",
"test-e2e:ui": "npm run generate-api && playwright test --ui",
+4 -4
View File
@@ -91,16 +91,16 @@ export class GitHubUpdater {
if (platform === 'darwin') {
// macOS
if (arch === 'arm64') {
assetName = 'goose.zip';
assetName = 'Goose.zip';
} else {
assetName = 'goose_intel_mac.zip';
assetName = 'Goose_intel_mac.zip';
}
} else if (platform === 'win32') {
// Windows - for future support
assetName = 'goose-win32-x64.zip';
assetName = 'Goose-win32-x64.zip';
} else {
// Linux - for future support
assetName = `goose-linux-${arch}.zip`;
assetName = `Goose-linux-${arch}.zip`;
}
log.info(`GitHubUpdater: Looking for asset named: ${assetName}`);