Skip to content

Commit b22ee0b

Browse files
committed
Fix macOS asset path
1 parent 170a271 commit b22ee0b

1 file changed

Lines changed: 53 additions & 21 deletions

File tree

.github/workflows/build.yml

Lines changed: 53 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,16 @@ jobs:
1717
include:
1818
- os: ubuntu-latest
1919
python-version: "3.12"
20-
extra: linux
20+
platform: linux
2121
- os: windows-latest
2222
python-version: "3.12"
23-
extra: windows
23+
platform: windows
2424
- os: macos-latest
2525
python-version: "3.12"
26-
extra: mac
26+
platform: mac
2727

2828
steps:
29-
- name: Check out repository
29+
- name: Checkout repository
3030
uses: actions/checkout@v4
3131

3232
- name: Set up Python
@@ -35,14 +35,19 @@ jobs:
3535
python-version: ${{ matrix.python-version }}
3636
cache: pip
3737

38-
- name: Install dependencies
38+
- name: Install Python dependencies
3939
run: |
4040
python -m pip install --upgrade pip
4141
pip install .
4242
43-
# Linux + Windows
44-
- name: Build Linux/Windows app
45-
if: matrix.extra != 'mac'
43+
- name: Install Linux system dependencies
44+
if: matrix.platform == 'linux'
45+
run: |
46+
sudo apt-get update
47+
sudo apt-get install -y patchelf libgl1 libegl1 libxkbcommon-x11-0 libxcb-cursor0
48+
49+
- name: Build Linux and Windows app
50+
if: matrix.platform != 'mac'
4651
uses: Nuitka/Nuitka-Action@main
4752
with:
4853
nuitka-version: main
@@ -53,18 +58,12 @@ jobs:
5358
include-package: PyQt5
5459
include-package-data: matplotlib
5560
include-data-dir: vowspace/assets=vowspace/assets
56-
windows-icon-from-ico: vowspace/assets/vowspace.ico
57-
linux-icon: vowspace/assets/vowspace.png
58-
product-name: VowSpace
5961
output-file: VowSpace
60-
file-description: VowSpace
61-
file-version: 1.4.5
62-
product-version: 1.4.5
6362
output-dir: build
63+
assume-yes-for-downloads: true
6464

65-
# macOS
6665
- name: Build macOS app
67-
if: matrix.extra == 'mac'
66+
if: matrix.platform == 'mac'
6867
uses: Nuitka/Nuitka-Action@main
6968
with:
7069
nuitka-version: main
@@ -74,7 +73,7 @@ jobs:
7473
include-qt-plugins: platforms,platformthemes,imageformats
7574
include-package: PyQt5
7675
include-package-data: matplotlib
77-
include-data-dir: vowspace/assets=vowspace/assets
76+
include-data-dir: vowspace/assets=resources/assets
7877
macos-app-icon: vowspace/assets/vowspace.icns
7978
macos-app-name: VowSpace
8079
macos-signed-app-name: com.alicagank.vowspace
@@ -83,10 +82,43 @@ jobs:
8382
output-file: VowSpace
8483
file-description: VowSpace
8584
output-dir: build
85+
assume-yes-for-downloads: true
86+
87+
- name: Package Linux build
88+
if: matrix.platform == 'linux'
89+
run: |
90+
cd build
91+
tar -czf VowSpace-linux.tar.gz main.dist
92+
93+
- name: Package Windows build
94+
if: matrix.platform == 'windows'
95+
shell: pwsh
96+
run: |
97+
Compress-Archive -Path build/main.dist -DestinationPath build/VowSpace-windows.zip
98+
99+
- name: Package macOS build
100+
if: matrix.platform == 'mac'
101+
run: |
102+
cd build
103+
zip -r VowSpace-macOS.zip main.app
104+
105+
- name: Upload Linux artifact
106+
if: matrix.platform == 'linux'
107+
uses: actions/upload-artifact@v4
108+
with:
109+
name: VowSpace-linux
110+
path: build/VowSpace-linux.tar.gz
111+
112+
- name: Upload Windows artifact
113+
if: matrix.platform == 'windows'
114+
uses: actions/upload-artifact@v4
115+
with:
116+
name: VowSpace-windows
117+
path: build/VowSpace-windows.zip
86118

87-
- name: Upload artifacts
119+
- name: Upload macOS artifact
120+
if: matrix.platform == 'mac'
88121
uses: actions/upload-artifact@v4
89122
with:
90-
name: VowSpace-${{ matrix.extra }}
91-
path: build/**
92-
include-hidden-files: true
123+
name: VowSpace-macOS
124+
path: build/VowSpace-macOS.zip

0 commit comments

Comments
 (0)