Merge pull request #39 from projecthorus/actions_tests

Github actions for OSX builds
master v0.3.17
Mark Jessop 2024-04-27 09:47:22 +09:30 zatwierdzone przez GitHub
commit 0ef8cd6fb1
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: B5690EEEBB952194
2 zmienionych plików z 114 dodań i 3 usunięć

Wyświetl plik

@ -91,6 +91,9 @@ jobs:
python-version: '3.11'
cache: 'pip' # caching pip dependencies
- name: Install Homebrew dependencies
run: brew install portaudio
- name: Install pyAudio wheel
run: pip install pyaudio
@ -107,11 +110,74 @@ jobs:
cp horusdemodlib/build/src/libhorus.dylib .
- name: Run pyinstaller
run: pyinstaller horus-gui_osx.spec
run: pyinstaller horus-gui_osx_runner.spec
- name: Create the DMG file
run: hdiutil create -format UDZO -srcfolder dist/horus-gui.app dist/horus-gui_OSX-M1.dmg
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: horus-gui_OSX-M1.zip
path: dist/horus-gui.app
retention-days: 2
path: dist/horus-gui_OSX-M1.dmg
retention-days: 2
# Currently having issues with portaudio and these builds...
# build-osx-intel:
# runs-on: [macos-13]
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
# - name: Checkout horusdemodlib
# uses: actions/checkout@v4
# with:
# repository: "projecthorus/horusdemodlib"
# ref: "master"
# path: "horusdemodlib"
# - name: Build horusdemodlib
# run: |
# cd horusdemodlib
# mkdir build
# cd build
# cmake ..
# make
# - uses: actions/setup-python@v5
# with:
# python-version: '3.11'
# cache: 'pip' # caching pip dependencies
# - name: Install Homebrew dependencies
# run: brew install portaudio
# - name: Install pyAudio wheel
# run: pip install pyaudio
# - name: Install other dependencies
# run: pip install -r requirements.txt
# - name: Install pyinstaller
# run: pip install pyinstaller
# - name: Prep file locations
# shell: bash
# run: |
# mkdir -p dist
# cp horusdemodlib/build/src/libhorus.dylib .
# - name: Run pyinstaller
# run: pyinstaller horus-gui_osx_runner.spec
# - name: Create the DMG file
# run: hdiutil create -format UDZO -srcfolder dist/horus-gui.app dist/horus-gui_OSX-Intel.dmg
# - name: Upload Artifact
# uses: actions/upload-artifact@v4
# with:
# name: horus-gui_OSX-Intel.zip
# path: dist/horus-gui_OSX-Intel.dmg
# retention-days: 2

Wyświetl plik

@ -0,0 +1,45 @@
# -*- mode: python ; coding: utf-8 -*-
block_cipher = None
a = Analysis(['horus-gui.py'],
pathex=['.'],
binaries=[('libhorus.dylib','.')],
datas=[],
hiddenimports=[],
hookspath=[],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
noarchive=False)
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
exe = EXE(pyz,
a.scripts,
[],
exclude_binaries=True,
name='horus-gui',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
console=False , icon='doc/horus_logo.icns')
coll = COLLECT(exe,
a.binaries,
a.zipfiles,
a.datas,
strip=False,
upx=True,
upx_exclude=[],
name='horus-gui')
app = BUNDLE(coll,
name='horus-gui.app',
icon='doc/horus_logo.icns',
bundle_identifier=None,
info_plist={
'NSMicrophoneUsageDescription': 'Horus-GUI needs audio access to receive telemetry.'
},
)