Merge pull request #22 from Sudo-Ivan/universal-mac-build

Update build configuration for macOS and update artifact naming.
This commit was merged in pull request #22.
This commit is contained in:
2025-12-05 22:43:57 -06:00
committed by GitHub
2 changed files with 22 additions and 11 deletions

View File

@@ -59,7 +59,7 @@ jobs:
run: npm run build-frontend
- name: Upload frontend artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: frontend-build
path: meshchatx/public
@@ -79,18 +79,21 @@ jobs:
python: "3.12"
release_artifacts: "dist/*-win-installer.exe,dist/*-win-portable.exe"
build_input: build_windows
dist_script: dist-prebuilt
- name: mac
os: macos-13
os: macos-14
node: 18
python: "3.11"
release_artifacts: "dist/*-mac.dmg"
release_artifacts: "dist/*-mac-*.dmg"
build_input: build_mac
dist_script: dist:mac-universal
- name: linux
os: ubuntu-latest
node: 22
python: "3.12"
release_artifacts: "dist/*-linux.AppImage,dist/*-linux.deb,python-dist/*.whl"
build_input: build_linux
dist_script: dist-prebuilt
permissions:
contents: write
steps:
@@ -150,7 +153,7 @@ jobs:
if: |
github.event_name == 'push' ||
(github.event_name == 'workflow_dispatch' && inputs[matrix.build_input] == true)
uses: actions/download-artifact@v4
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
with:
name: frontend-build
path: meshchatx/public
@@ -173,11 +176,11 @@ jobs:
mv dist/*.whl python-dist/
rm -rf dist
- name: Build Electron App
- name: Build Electron App (Universal)
if: |
github.event_name == 'push' ||
(github.event_name == 'workflow_dispatch' && inputs[matrix.build_input] == true)
run: npm run dist-prebuilt
run: npm run ${{ matrix.dist_script }}
- name: Upload build artifacts
if: |
@@ -189,7 +192,7 @@ jobs:
path: |
dist/*-win-installer.exe
dist/*-win-portable.exe
dist/*-mac.dmg
dist/*-mac-*.dmg
dist/*-linux.AppImage
dist/*-linux.deb
python-dist/*.whl
@@ -204,7 +207,7 @@ jobs:
contents: write
steps:
- name: Download all artifacts
uses: actions/download-artifact@v4
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4
with:
path: artifacts

View File

@@ -12,7 +12,9 @@
"electron-postinstall": "electron-builder install-app-deps",
"electron": "npm run electron-postinstall && npm run build && electron .",
"dist": "npm run electron-postinstall && npm run build && electron-builder --publish=never",
"dist-prebuilt": "npm run electron-postinstall && npm run build-backend && electron-builder --publish=never"
"dist-prebuilt": "npm run electron-postinstall && npm run build-backend && electron-builder --publish=never",
"dist:mac-arm64": "npm run electron-postinstall && npm run build && electron-builder --mac --arm64 --publish=never",
"dist:mac-universal": "npm run electron-postinstall && npm run build && electron-builder --mac --universal --publish=never"
},
"license": "MIT",
"engines": {
@@ -36,9 +38,15 @@
"buildResources": "electron/build"
},
"mac": {
"target": "dmg",
"target": {
"target": "dmg",
"arch": [
"universal"
]
},
"identity": null,
"artifactName": "ReticulumMeshChat-v${version}-${os}.${ext}",
"artifactName": "ReticulumMeshChat-v${version}-mac-${arch}.${ext}",
"x64ArchFiles": "Contents/Resources/app/electron/build/exe/**",
"extendInfo": {
"NSMicrophoneUsageDescription": "Microphone access is only needed for Audio Calls",
"com.apple.security.device.audio-input": true