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:
19
.github/workflows/build.yml
vendored
19
.github/workflows/build.yml
vendored
@@ -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
|
||||
|
||||
|
||||
14
package.json
14
package.json
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user