@@ -34,7 +34,7 @@ mkdir -p "${APP_BUNDLE}/Contents/Resources"
3434cp " ${BUILD_DIR} /${APP_NAME} " " ${APP_BUNDLE} /Contents/MacOS/"
3535
3636# Copy resources
37- cp -R " Sources/Zero/Resources/" " ${APP_BUNDLE} /Contents/Resources/"
37+ cp -R " Sources/Zero/Resources/" " ${APP_BUNDLE} /Contents/Resources/" || true
3838
3939# Step 4: Generate Info.plist
4040echo " 📝 Generating Info.plist..."
@@ -48,7 +48,7 @@ cat > "${APP_BUNDLE}/Contents/Info.plist" << EOF
4848 <key>CFBundleExecutable</key>
4949 <string>${APP_NAME} </string>
5050 <key>CFBundleIconFile</key>
51- <string>AppIcon </string>
51+ <string>logo </string>
5252 <key>CFBundleIdentifier</key>
5353 <string>com.zero.ide</string>
5454 <key>CFBundleInfoDictionaryVersion</key>
@@ -69,20 +69,20 @@ cat > "${APP_BUNDLE}/Contents/Info.plist" << EOF
6969</plist>
7070EOF
7171
72- # Step 5: Generate icon (if script exists)
73- if [ -f " scripts/generate-icons.sh" ]; then
74- echo " 🎨 Generating app icons..."
75- bash scripts/generate-icons.sh
76- fi
77-
78- # Step 6: Sign the app (if certificate is available)
79- if security find-identity -v -p codesigning | grep -q " Developer ID" ; then
80- echo " 🔏 Signing app..."
81- codesign --force --deep --sign " Developer ID Application" " ${APP_BUNDLE} "
72+ # Step 5: Code signing (if available, otherwise ad-hoc sign)
73+ echo " 🔏 Signing app..."
74+ if security find-identity -v -p codesigning 2> /dev/null | grep -q " Developer ID" ; then
75+ codesign --force --deep --sign " Developer ID Application" " ${APP_BUNDLE} " 2> /dev/null || \
76+ codesign --force --deep --sign - " ${APP_BUNDLE} "
8277else
83- echo " ⚠️ No Developer ID certificate found. Skipping code signing."
78+ echo " ⚠️ Using ad-hoc signing (no Developer ID certificate)"
79+ codesign --force --deep --sign - " ${APP_BUNDLE} " 2> /dev/null || true
8480fi
8581
82+ # Step 6: Verify signature
83+ echo " ✅ Verifying signature..."
84+ codesign -v " ${APP_BUNDLE} " 2> /dev/null || echo " ⚠️ Signature verification skipped"
85+
8686# Step 7: Create DMG
8787echo " 💿 Creating DMG..."
8888
@@ -99,7 +99,11 @@ hdiutil create \
9999 -srcfolder " ${DMG_TEMP} " \
100100 -ov \
101101 -format UDZO \
102- " ${RELEASE_DIR} /${DMG_NAME} "
102+ " ${RELEASE_DIR} /${DMG_NAME} " || {
103+ echo " ❌ DMG creation failed"
104+ rm -rf " ${DMG_TEMP} "
105+ exit 1
106+ }
103107
104108# Clean up temp directory
105109rm -rf " ${DMG_TEMP} "
@@ -116,26 +120,31 @@ cat > "${RELEASE_DIR}/RELEASE_NOTES.md" << EOF
116120# Zero ${VERSION}
117121
118122## What's New
119- -
120-
121- ## Improvements
122- -
123-
124- ## Bug Fixes
125- -
123+ - Initial release of Zero IDE
124+ - Docker-based development environment
125+ - GitHub integration
126+ - Git operations (commit, branch, push, pull)
127+ - Java support with Maven/Gradle
126128
127129## Download
128130- [${DMG_NAME} ](https://github.com/ori0o0p/Zero/releases/download/v${VERSION} /${DMG_NAME} )
129131- SHA256: \` $( cat ${RELEASE_DIR} /${DMG_NAME} .sha256 | cut -d ' ' -f 1) \`
130132
131133## Requirements
132134- macOS 14.0 or later
133- - Docker Desktop
135+ - Docker Desktop installed and running
134136
135137## Installation
1361381. Download the DMG file
1371392. Open the DMG and drag Zero to Applications
1381403. Launch Zero from Applications
141+ 4. On first launch, allow Zero in System Preferences > Security & Privacy
142+
143+ ## Known Issues
144+ -
145+
146+ ## Feedback
147+ Please report issues at: https://github.com/ori0o0p/Zero/issues
139148EOF
140149
141150echo " "
@@ -145,7 +154,8 @@ echo "📦 Files in ${RELEASE_DIR}/:"
145154ls -lh ${RELEASE_DIR} /
146155echo " "
147156echo " 📝 Next steps:"
148- echo " 1. Review ${RELEASE_DIR} /RELEASE_NOTES.md"
149- echo " 2. Create a new release on GitHub"
150- echo " 3. Upload ${RELEASE_DIR} /${DMG_NAME} "
157+ echo " 1. Test the app: open ${RELEASE_DIR} /${APP_NAME} .app"
158+ echo " 2. Review ${RELEASE_DIR} /RELEASE_NOTES.md"
159+ echo " 3. Create a new release on GitHub: https://github.com/ori0o0p/Zero/releases/new"
160+ echo " 4. Upload ${RELEASE_DIR} /${DMG_NAME} "
151161echo " "
0 commit comments