Skip to content

Commit ce499d5

Browse files
committed
installers for macos/windows; no ios/android builds for now
1 parent a396b7f commit ce499d5

1 file changed

Lines changed: 59 additions & 26 deletions

File tree

.github/workflows/build-desktop.yml

Lines changed: 59 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -24,22 +24,29 @@ jobs:
2424
- name: Build macOS
2525
run: flutter build macos --release
2626

27-
- name: Prepare macOS artifact
27+
- name: Create macOS DMG
2828
run: |
29-
rm -rf "build/View Source Vibe.app" 2>/dev/null || true
30-
mv "build/macos/Build/Products/Release/View Source Vibe.app" "build/View Source Vibe.app"
31-
32-
- name: Upload macOS artifact
29+
brew install create-dmg
30+
create-dmg \
31+
--volname "View Source Vibe" \
32+
--window-pos 200 120 \
33+
--window-size 600 300 \
34+
--icon-size 100 \
35+
--app-drop-link 425 120 \
36+
"ViewSourceVibe.dmg" \
37+
"build/macos/Build/Products/Release/View Source Vibe.app"
38+
39+
- name: Upload macOS DMG
3340
uses: actions/upload-artifact@v4
3441
with:
3542
name: ViewSourceVibe-macOS
36-
path: build/View Source Vibe.app
43+
path: ViewSourceVibe.dmg
3744

3845
build-windows:
3946
runs-on: windows-latest
4047
steps:
4148
- uses: actions/checkout@v4
42-
49+
4350
- name: Setup Flutter
4451
uses: subosito/flutter-action@v2
4552
with:
@@ -51,15 +58,43 @@ jobs:
5158

5259
- name: Build Windows
5360
run: flutter build windows --release
54-
55-
- name: Upload Windows artifact
61+
62+
- name: Create Windows installer
63+
run: |
64+
$iss = @"
65+
[Setup]
66+
AppName=View Source Vibe
67+
AppVersion=${{ github.ref_name }}
68+
DefaultDirName={autopf}\View Source Vibe
69+
OutputDir=installer
70+
OutputBaseFilename=ViewSourceVibe-Setup
71+
Compression=lzma
72+
SolidCompression=yes
73+
ArchitecturesInstallIn64BitMode=x64compatible
74+
75+
[Files]
76+
Source: "build\windows\x64\runner\Release\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
77+
78+
[Icons]
79+
Name: "{autoprograms}\View Source Vibe"; Filename: "{app}\view_source_vibe.exe"
80+
Name: "{autodesktop}\View Source Vibe"; Filename: "{app}\view_source_vibe.exe"
81+
82+
[Run]
83+
Filename: "{app}\view_source_vibe.exe"; Description: "Launch View Source Vibe"; Flags: nowait postinstall skipifsilent
84+
"@
85+
$iss | Out-File -FilePath setup.iss -Encoding UTF8
86+
& "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" setup.iss
87+
shell: pwsh
88+
89+
- name: Upload Windows installer
5690
uses: actions/upload-artifact@v4
5791
with:
5892
name: ViewSourceVibe-Windows
59-
path: build/windows/x64/runner/Release
93+
path: installer/ViewSourceVibe-Setup.exe
6094

6195

6296
build-ios:
97+
if: false
6398
runs-on: macos-latest
6499
steps:
65100
- uses: actions/checkout@v4
@@ -76,17 +111,21 @@ jobs:
76111
- name: Build iOS
77112
run: flutter build ios --release --no-codesign
78113

114+
- name: Package iOS artifact
115+
run: zip -r ViewSourceVibe-iOS.zip build/ios/iphoneos/Runner.app
116+
79117
- name: Upload iOS artifact
80118
uses: actions/upload-artifact@v4
81119
with:
82120
name: ViewSourceVibe-iOS
83-
path: build/ios/iphoneos/Runner.app
121+
path: ViewSourceVibe-iOS.zip
84122

85123
build-android:
124+
if: false
86125
runs-on: ubuntu-latest
87126
steps:
88127
- uses: actions/checkout@v4
89-
128+
90129
- name: Setup Flutter
91130
uses: subosito/flutter-action@v2
92131
with:
@@ -116,40 +155,34 @@ jobs:
116155
ANDROID_KEY_ALIAS: ${{ secrets.ANDROID_KEY_ALIAS }}
117156
ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD }}
118157
ANDROID_KEYSTORE_PATH: ${{ github.workspace }}/android/app/release.keystore
119-
158+
120159
- name: Upload Android APK
121160
uses: actions/upload-artifact@v4
122161
with:
123162
name: ViewSourceVibe-Android-APK
124163
path: build/app/outputs/apk/release/app-release.apk
125-
164+
126165
- name: Upload Android App Bundle
127166
uses: actions/upload-artifact@v4
128167
with:
129168
name: ViewSourceVibe-Android-AAB
130169
path: build/app/outputs/bundle/release/app-release.aab
131170

132171
create-release:
133-
needs: [build-macos, build-windows, build-ios, build-android]
172+
needs: [build-macos, build-windows]
134173
runs-on: ubuntu-latest
135174
if: startsWith(github.ref, 'refs/tags/')
136175
permissions:
137176
contents: write
138177
steps:
139178
- uses: actions/download-artifact@v4
140179

141-
- name: Package artifacts
142-
run: |
143-
zip -r ViewSourceVibe-macOS.zip ViewSourceVibe-macOS/
144-
zip -r ViewSourceVibe-Windows.zip ViewSourceVibe-Windows/
145-
zip -r ViewSourceVibe-iOS.zip ViewSourceVibe-iOS/
146-
147180
- name: Create Release
148181
uses: softprops/action-gh-release@v2
149182
with:
150183
files: |
151-
ViewSourceVibe-macOS.zip
152-
ViewSourceVibe-Windows.zip
153-
ViewSourceVibe-iOS.zip
154-
ViewSourceVibe-Android-APK/app-release.apk
155-
ViewSourceVibe-Android-AAB/app-release.aab
184+
ViewSourceVibe-macOS/ViewSourceVibe.dmg
185+
ViewSourceVibe-Windows/ViewSourceVibe-Setup.exe
186+
# ViewSourceVibe-iOS/ViewSourceVibe-iOS.zip
187+
# ViewSourceVibe-Android-APK/app-release.apk
188+
# ViewSourceVibe-Android-AAB/app-release.aab

0 commit comments

Comments
 (0)