diff --git a/.github/workflows/run_script.yml b/.github/workflows/run_script.yml index 15acce9..77b259b 100644 --- a/.github/workflows/run_script.yml +++ b/.github/workflows/run_script.yml @@ -8,7 +8,7 @@ jobs: runs-on: macos-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: recursive @@ -16,19 +16,24 @@ jobs: working-directory: ${{github.workspace}} run: brew install dfu-util + - name: Setup Python 3.11 + uses: actions/setup-python@v5 + with: + python-version: '3.11' + - name: Run Packaging Script working-directory: ${{github.workspace}} run: CLEAR_INTL=1 ./build.sh - name: Archive Artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: Heavy-MacOS-Universal path: ${{github.workspace}}/Heavy - name: Release Artifacts - uses: softprops/action-gh-release@v1 + uses: softprops/action-gh-release@v2 if: startsWith(github.ref, 'refs/tags/') with: prerelease: true @@ -42,23 +47,28 @@ jobs: - name: Install Packages run: choco install make -y - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: recursive + - name: Setup Python 3.11 + uses: actions/setup-python@v5 + with: + python-version: '3.11' + - name: Run Packaging Script working-directory: ${{github.workspace}} run: ./build.bat - name: Archive Artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: Heavy-Win64 path: ${{github.workspace}}/Heavy - name: Release Artifacts - uses: softprops/action-gh-release@v1 + uses: softprops/action-gh-release@v2 if: startsWith(github.ref, 'refs/tags/') with: prerelease: true @@ -70,27 +80,33 @@ jobs: runs-on: ubuntu-20.04 steps: - name: Install Dependencies (apt) - run: sudo add-apt-repository ppa:deadsnakes/ppa && sudo apt update && sudo apt install -y git binutils python3.11-full curl tar gzip xz-utils make patchelf libusb-dev build-essential rsync wget dfu-util + run: sudo apt update && sudo apt install -y git binutils curl tar gzip xz-utils make patchelf libusb-dev build-essential rsync wget dfu-util #deps for build-anywhere: csh gawk autoconf automake autotools-dev wget m4 flex bison texinfo unzip help2man meson gperf lzip libtool-bin patch ninja-build libstdc++6 libncurses5-dev - - uses: actions/checkout@v3 + + - uses: actions/checkout@v4 with: submodules: recursive env: PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + - name: Setup Python 3.11 + uses: actions/setup-python@v5 + with: + python-version: '3.11' + - name: Run Packaging Script working-directory: ${{github.workspace}} run: bash ./build.sh - name: Archive Artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: Heavy-Linux-x64 path: ${{github.workspace}}/Heavy - name: Release Artifacts - uses: softprops/action-gh-release@v1 + uses: softprops/action-gh-release@v2 if: startsWith(github.ref, 'refs/tags/') with: prerelease: true diff --git a/.gitmodules b/.gitmodules index 0580645..6016b13 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "dpf"] path = dpf url = https://github.com/DISTRHO/DPF.git +[submodule "dpf-widgets"] + path = dpf-widgets + url = git@github.com:DISTRHO/DPF-Widgets.git diff --git a/build.bat b/build.bat index 57f4661..177bfca 100644 --- a/build.bat +++ b/build.bat @@ -26,21 +26,19 @@ cd .. xcopy /E /H /C /I libdaisy Heavy\usr\lib\libdaisy xcopy /E /H /C /I dpf Heavy\usr\lib\dpf +xcopy /E /H /C /I dpf-widgets Heavy\usr\lib\dpf-widgets :: Package heavy using pyinstaller python -m ensurepip -python -m pip install hvcc\. -python -m pip install pyinstaller +python -m pip install poetry poetry-pyinstaller-plugin -FOR /F "tokens=*" %%g IN ('python -m site --user-site') do (SET PYTHON_SITE=%%g) -python resources\run_pyinstaller.py -n Heavy --noconfirm --windowed --paths %PYTHON_SITE% .\hvcc\hvcc\__init__.py --collect-data json2daisy --add-data=".\hvcc\hvcc\generators;.\generators" --add-data=".\hvcc\hvcc\core;.\hvcc\core" --add-data=".\hvcc\hvcc\generators;.\hvcc\generators" --add-data=".\hvcc\hvcc\interpreters;.\hvcc\interpreters" +cd hvcc +poetry build +cd .. -copy .\dist\Heavy\json2daisy\resources\component_defs.json .\dist\Heavy\json2daisy\resources\seed.json -move .\dist\Heavy .\Heavy\usr\bin\ +mkdir .\Heavy\usr\bin\Heavy\ -del /s /q .\dist\* -del /s /q .\build\* -del /s /q .\__init__.spec +move .\hvcc\dist\pyinstaller\win_amd64\Heavy.exe .\Heavy\usr\bin\Heavy\ cp VERSION Heavy\VERSION diff --git a/build.sh b/build.sh index cbb2957..e7df1e9 100755 --- a/build.sh +++ b/build.sh @@ -152,24 +152,22 @@ popd cp -rf ./libdaisy ./Heavy/lib/libdaisy cp -rf ./dpf ./Heavy/lib/dpf +cp -rf ./dpf-widgets ./Heavy/lib/dpf-widgets # Package Heavy with pyinstaller python3 -m ensurepip -python3 -m pip install hvcc/. -python3 -m pip install pyinstaller +python3 -m pip install poetry poetry-pyinstaller-plugin + +pushd hvcc +poetry build +popd + +mkdir -p Heavy/bin/Heavy if [[ "$OSTYPE" == "linux-gnu"* ]]; then - python3 ./resources/run_pyinstaller.py -n Heavy --noconfirm --paths $(python3 -m site --user-site) ./hvcc/hvcc/__init__.py --collect-data json2daisy --add-data="./hvcc/hvcc/generators:./generators" --add-data="./hvcc/hvcc/core:./hvcc/core" --add-data="./hvcc/hvcc/generators:./hvcc/generators" --add-data="./hvcc/hvcc/interpreters:./hvcc/interpreters" + mv ./hvcc/dist/pyinstaller/manylinux_2_31_x86_64/Heavy Heavy/bin/Heavy/ elif [[ "$OSTYPE" == "darwin"* ]]; then - python3 ./resources/run_pyinstaller.py -n Heavy --noconfirm --paths $(python3 -m site --user-site) --target-architecture x86_64 ./hvcc/hvcc/__init__.py --collect-data json2daisy --add-data="./hvcc/hvcc/generators:./generators" --add-data="./hvcc/hvcc/core:./hvcc/core" --add-data="./hvcc/hvcc/generators:./hvcc/generators" --add-data="./hvcc/hvcc/interpreters:./hvcc/interpreters" + mv ./hvcc/dist/pyinstaller/macosx_14_0_arm64/Heavy Heavy/bin/Heavy/ fi -cp ./dist/Heavy/json2daisy/resources/component_defs.json ./dist/Heavy/json2daisy/resources/seed.json - -mv ./dist/Heavy Heavy/bin/Heavy - -rm -rf ./dist -rm -rf ./build -rm -rf ./Heavy.spec - cp VERSION ./Heavy/VERSION diff --git a/dpf b/dpf index 1504e7d..f581516 160000 --- a/dpf +++ b/dpf @@ -1 +1 @@ -Subproject commit 1504e7d327bfe0eac6a889cecd199c963d35532f +Subproject commit f5815166356e85a5fe244f6024c2e401f04b10fa diff --git a/dpf-widgets b/dpf-widgets new file mode 160000 index 0000000..0b67fb4 --- /dev/null +++ b/dpf-widgets @@ -0,0 +1 @@ +Subproject commit 0b67fb4957ad74a8c7b0579370ff6edeab65e6f6 diff --git a/hvcc b/hvcc index 948e213..e6d2b93 160000 --- a/hvcc +++ b/hvcc @@ -1 +1 @@ -Subproject commit 948e2139676734e5b0367819374922a8afa851b6 +Subproject commit e6d2b9361ea3d46ba762fb207946d693adeb2498