From d17f5d793c8c4a09dba8d9086d4c4b9603cf08fb Mon Sep 17 00:00:00 2001 From: Wes Date: Thu, 26 Mar 2026 17:54:13 -0700 Subject: [PATCH] feat: DMG drag-to-Applications install experience (#199) Co-authored-by: Claude Opus 4.6 (1M context) --- .github/workflows/sprout-desktop-release.yml | 21 ++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/.github/workflows/sprout-desktop-release.yml b/.github/workflows/sprout-desktop-release.yml index c4c2185fa..035375fac 100644 --- a/.github/workflows/sprout-desktop-release.yml +++ b/.github/workflows/sprout-desktop-release.yml @@ -106,13 +106,26 @@ jobs: - name: Create DMG from signed app run: | + brew install create-dmg DMG_DIR="desktop/src-tauri/target/release/bundle/dmg" mkdir -p "${DMG_DIR}" rm -f "${DMG_DIR}"/*.dmg - hdiutil create -volname "Sprout" \ - -srcfolder desktop/src-tauri/target/release/bundle/macos/Sprout.app \ - -ov -format UDZO \ - "${DMG_DIR}/Sprout_${RELEASE_VERSION}_aarch64.dmg" + set +e + create-dmg \ + --volname "Sprout" \ + --window-pos 200 120 \ + --window-size 600 400 \ + --icon-size 128 \ + --icon "Sprout.app" 150 200 \ + --app-drop-link 450 200 \ + --hide-extension "Sprout.app" \ + --no-internet-enable \ + "${DMG_DIR}/Sprout_${RELEASE_VERSION}_aarch64.dmg" \ + "desktop/src-tauri/target/release/bundle/macos/Sprout.app" + EXIT_CODE=$? + if [ $EXIT_CODE -ne 0 ] && [ $EXIT_CODE -ne 2 ]; then + exit $EXIT_CODE + fi - name: Create updater archive from signed app env: