-
-
Notifications
You must be signed in to change notification settings - Fork 330
154 lines (130 loc) · 3.82 KB
/
build.yml
File metadata and controls
154 lines (130 loc) · 3.82 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
name: Build Nugget
on:
workflow_dispatch:
inputs:
build_for_macos_intel:
description: 'Build macOS Intel'
required: false
default: true
type: boolean
build_for_macos_arm:
description: 'Build macOS ARM'
required: false
default: true
type: boolean
build_for_windows:
description: 'Build Windows'
required: false
default: true
type: boolean
build_for_linux:
description: 'Build Linux'
required: false
default: true
type: boolean
jobs:
build-macos-intel:
if: ${{ github.event.inputs.build_for_macos_intel == 'true' }}
runs-on: macos-15-intel
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.9.22'
- name: Create venv
run: |
python -m venv .env
source .env/bin/activate
pip install --upgrade pip
- name: Install dependencies
run: |
source .env/bin/activate
pip install pymobiledevice3
pip install PySide6-Essentials==6.7.3
pip install PyInstaller
pip install pyperclip
pip install ffmpeg==1.4
pip install ffmpeg-python==0.2.0
pip install opencv-python==4.13.0.90
- name: Build macOS (Intel)
run: |
source .env/bin/activate
python3 compile.py
- name: Zip Nugget.app (Intel)
run: |
cd dist
zip -r -y "Nugget_macOS_intel.zip" Nugget.app
- name: Upload ZIP (Intel)
uses: actions/upload-artifact@v4
with:
name: Nugget_macOS_intel
path: dist/Nugget_macOS_intel.zip
build-macos-arm:
if: ${{ github.event.inputs.build_for_macos_arm == 'true' }}
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Install dependencies
run: |
python3 -m pip install -U pip
pip install -r requirements.txt
- name: Build macOS (ARM)
run: python3 compile.py
- name: Zip Nugget.app (ARM)
run: |
cd dist
zip -r -y "Nugget_macOS_arm.zip" Nugget.app
- name: Upload ZIP (ARM)
uses: actions/upload-artifact@v4
with:
name: Nugget_macOS_arm
path: dist/Nugget_macOS_arm.zip
build-windows:
if: ${{ github.event.inputs.build_for_windows == 'true' }}
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Install dependencies
run: |
python -m pip install -U pip
pip install -r requirements.txt
- name: Build Windows
run: python compile.py
- name: Zip Nugget (Windows)
run: |
cd dist
Compress-Archive -Path Nugget -DestinationPath Nugget_Windows.zip
- name: Upload ZIP (Windows)
uses: actions/upload-artifact@v4
with:
name: Nugget_Windows
path: dist/Nugget_Windows.zip
build-linux:
if: ${{ github.event.inputs.build_for_linux == 'true' }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Install dependencies
run: |
python -m pip install -U pip
pip install -r requirements.txt
- name: Build Linux
run: python compile.py
- name: Tar Nugget (Linux)
run: |
cd dist
tar -cJf Nugget_Linux.tar.xz Nugget
- name: Upload TAR (Linux)
uses: actions/upload-artifact@v4
with:
name: Nugget_Linux
path: dist/Nugget_Linux.tar.xz