Skip to content

Commit f6be4b8

Browse files
committed
fix: update macOS CI workflow to include zip notarization
Add support for notarizing a zip archive alongside individual binaries in the macOS CI workflow. The release now includes both a notarized zip and a tar.gz file for distribution. Update documentation to reflect the new usage options.
1 parent 5548c99 commit f6be4b8

1 file changed

Lines changed: 22 additions & 5 deletions

File tree

.github/workflows/build-turboquant-macos.yml

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -135,30 +135,41 @@ jobs:
135135
find build -name "*.dylib" -exec cp {} release/build/bin/ \; 2>/dev/null || true
136136
find build -name "*.metal" -path "*/bin/*" -exec cp {} release/build/bin/ \; 2>/dev/null || true
137137
cd release
138+
zip -r ../llama-turboquant-macos-arm64.zip .
138139
tar -czf ../llama-turboquant-macos-arm64.tar.gz .
139140
cd ..
140-
ls -lh llama-turboquant-macos-arm64.tar.gz
141+
ls -lh llama-turboquant-macos-arm64.zip llama-turboquant-macos-arm64.tar.gz
141142
142-
- name: Notarize binaries
143+
- name: Notarize release archive
143144
env:
144145
APPLE_ID: ${{ secrets.APPLE_ID }}
145146
APPLE_ID_PASSWORD: ${{ secrets.APPLE_ID_PASSWORD }}
146147
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
147148
run: |
149+
echo "=== Notarizing zip archive ==="
150+
xcrun notarytool submit llama-turboquant-macos-arm64.zip \
151+
--apple-id "$APPLE_ID" \
152+
--password "$APPLE_ID_PASSWORD" \
153+
--team-id "$APPLE_TEAM_ID" \
154+
--wait --timeout 10m
155+
echo "Stapling notarization ticket to zip..."
156+
xcrun stapler staple llama-turboquant-macos-arm64.zip
157+
158+
echo "=== Notarizing individual binaries (for tar.gz users) ==="
148159
for bin in build/bin/llama-server build/bin/llama-cli build/bin/llama-bench build/bin/llama-perplexity; do
149160
if [ -f "$bin" ]; then
150161
name=$(basename "$bin")
151-
echo "=== Notarizing $name ==="
162+
echo "--- Notarizing $name ---"
152163
zip -j "${name}.zip" "$bin"
153164
xcrun notarytool submit "${name}.zip" \
154165
--apple-id "$APPLE_ID" \
155166
--password "$APPLE_ID_PASSWORD" \
156167
--team-id "$APPLE_TEAM_ID" \
157168
--wait --timeout 10m
158169
rm "${name}.zip"
159-
echo "=== $name notarized ==="
160170
fi
161171
done
172+
echo "=== All notarization complete ==="
162173
163174
- name: Clean up keychain
164175
if: always()
@@ -190,7 +201,11 @@ jobs:
190201
191202
### Usage
192203
```bash
204+
# Option 1: zip (notarized + stapled)
205+
unzip llama-turboquant-macos-arm64.zip
206+
# Option 2: tar.gz
193207
tar -xzf llama-turboquant-macos-arm64.tar.gz
208+
194209
./build/bin/llama-server -m model.gguf --cache-type-k turbo3 --cache-type-v turbo3
195210
```
196211
@@ -199,6 +214,8 @@ jobs:
199214
```
200215
~/Library/Application Support/Atomic Chat/data/llamacpp/backends/<version>/macos-arm64/build/bin/llama-server
201216
```
202-
files: llama-turboquant-macos-arm64.tar.gz
217+
files: |
218+
llama-turboquant-macos-arm64.zip
219+
llama-turboquant-macos-arm64.tar.gz
203220
draft: false
204221
prerelease: true

0 commit comments

Comments
 (0)