Add macOS CI
This commit is contained in:
57
.github/workflows/ci.yml
vendored
57
.github/workflows/ci.yml
vendored
@@ -14,14 +14,14 @@ jobs:
|
|||||||
image: bilelmoussaoui/flatpak-github-actions:gnome-46
|
image: bilelmoussaoui/flatpak-github-actions:gnome-46
|
||||||
options: --privileged
|
options: --privileged
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Flatpak Builder
|
- name: Flatpak Builder
|
||||||
uses: flatpak/flatpak-github-actions/flatpak-builder@v6.3
|
uses: flatpak/flatpak-github-actions/flatpak-builder@v6.3
|
||||||
with:
|
with:
|
||||||
bundle: page.kramo.Cartridges.Devel.flatpak
|
bundle: page.kramo.Cartridges.Devel.flatpak
|
||||||
manifest-path: build-aux/flatpak/page.kramo.Cartridges.Devel.json
|
manifest-path: build-aux/flatpak/page.kramo.Cartridges.Devel.json
|
||||||
|
|
||||||
windows:
|
windows:
|
||||||
name: Windows
|
name: Windows
|
||||||
@@ -51,10 +51,49 @@ jobs:
|
|||||||
timeout 2 cartridges; [ "$?" -eq "124" ]
|
timeout 2 cartridges; [ "$?" -eq "124" ]
|
||||||
|
|
||||||
- name: Inno Setup
|
- name: Inno Setup
|
||||||
run: iscc ".\_build\windows\Cartridges.iss"
|
run: iscc ".\_build\build-aux\windows\Cartridges.iss"
|
||||||
|
|
||||||
- name: Upload Artifact
|
- name: Upload Artifact
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: Windows Installer
|
name: Windows Installer
|
||||||
path: _build/windows/Output/Cartridges Setup.exe
|
path: _build/build-aux/windows/Output/Cartridges Windows.exe
|
||||||
|
|
||||||
|
macos:
|
||||||
|
name: macOS
|
||||||
|
runs-on: macos-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set up Homebrew
|
||||||
|
id: set-up-homebrew
|
||||||
|
uses: Homebrew/actions/setup-homebrew@master
|
||||||
|
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: |
|
||||||
|
brew install meson pygobject3 libadwaita adwaita-icon-theme desktop-file-utils pyinstaller pillow
|
||||||
|
pip3 install --break-system-packages requests PyYAML
|
||||||
|
|
||||||
|
- name: Meson Build
|
||||||
|
run: |
|
||||||
|
meson setup _build
|
||||||
|
ninja install -C _build
|
||||||
|
|
||||||
|
- name: PyInstaller
|
||||||
|
env:
|
||||||
|
PYTHONPATH: /opt/homebrew/opt/homebrew/lib/python3.12/site-packages
|
||||||
|
run: |
|
||||||
|
cd build-aux/macos
|
||||||
|
pyinstaller ./cartridges.spec
|
||||||
|
|
||||||
|
- name: Zip
|
||||||
|
run: |
|
||||||
|
cd build-aux/macos/dist
|
||||||
|
zip -yr Cartridges\ macOS.zip Cartridges.app
|
||||||
|
|
||||||
|
- name: Upload Artifact
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
path: build-aux/macos/dist/Cartridges macOS.zip
|
||||||
|
name: macOS Application
|
||||||
|
|||||||
7
.github/workflows/publish-release.yml
vendored
7
.github/workflows/publish-release.yml
vendored
@@ -1,8 +1,7 @@
|
|||||||
name: Publish Release
|
name: Publish Release
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
tags:
|
tags: "*"
|
||||||
"*"
|
|
||||||
|
|
||||||
concurrency:
|
concurrency:
|
||||||
group: release-${{ github.sha }}
|
group: release-${{ github.sha }}
|
||||||
@@ -41,7 +40,9 @@ jobs:
|
|||||||
- name: Publish release
|
- name: Publish release
|
||||||
uses: softprops/action-gh-release@v2.0.6
|
uses: softprops/action-gh-release@v2.0.6
|
||||||
with:
|
with:
|
||||||
files: Windows Installer/Cartridges Setup.exe
|
files: |
|
||||||
|
Windows Installer/Cartridges Windows.exe
|
||||||
|
macOS Application/Cartridges macOS.zip
|
||||||
fail_on_unmatched_files: true
|
fail_on_unmatched_files: true
|
||||||
tag_name: ${{ steps.get_tag_name.outputs.tag_name }}
|
tag_name: ${{ steps.get_tag_name.outputs.tag_name }}
|
||||||
body_path: release_notes
|
body_path: release_notes
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ DefaultDirName={autopf64}\{#MyAppName}
|
|||||||
DisableProgramGroupPage=yes
|
DisableProgramGroupPage=yes
|
||||||
LicenseFile=..\..\LICENSE
|
LicenseFile=..\..\LICENSE
|
||||||
PrivilegesRequiredOverridesAllowed=dialog
|
PrivilegesRequiredOverridesAllowed=dialog
|
||||||
OutputBaseFilename=Cartridges Setup
|
OutputBaseFilename=Cartridges Windows
|
||||||
SetupIconFile=..\..\build-aux\windows\icon.ico
|
SetupIconFile=..\..\build-aux\windows\icon.ico
|
||||||
Compression=lzma
|
Compression=lzma
|
||||||
SolidCompression=yes
|
SolidCompression=yes
|
||||||
|
|||||||
Reference in New Issue
Block a user