Skip to content

Commit

Permalink
Tweaks to packaging, bump release
Browse files Browse the repository at this point in the history
Signed-off-by: falkTX <[email protected]>
  • Loading branch information
falkTX committed Feb 6, 2024
1 parent cd1bba4 commit 9f50f41
Show file tree
Hide file tree
Showing 7 changed files with 255 additions and 23 deletions.
53 changes: 34 additions & 19 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -82,16 +82,19 @@ jobs:
./utils/plugin-builder/validate-plugins.sh
# FIXME dirty carla leaves temp folders around
rm -rf *.tmp
- name: Set sha8
- name: Set version tag for release
if: ${{ startsWith(github.ref, 'refs/tags/') }}
run: |
echo "VERSION_TAG=$(echo ${{ github.event.pull_request.number || github.event.release.tag_name || github.sha }} | cut -c1-8)" >> $GITHUB_ENV
echo "VERSION_TAG=$(cat VERSION)" >> $GITHUB_ENV
- name: Set version tag for non-release
if: ${{ ! startsWith(github.ref, 'refs/tags/') }}
run: |
echo "VERSION_TAG=$(echo ${{ github.event.pull_request.number || github.sha }} | cut -c1-8)" >> $GITHUB_ENV
- name: Pack
if: steps.cache.outputs.cache-hit == 'true'
run: |
mkdir mod-desktop-${{ env.VERSION_TAG }}-linux-x86_64
mv build mod-desktop-${{ env.VERSION_TAG }}-linux-x86_64/mod-desktop
cp utils/linux/mod-desktop.* mod-desktop-${{ env.VERSION_TAG }}-linux-x86_64/
tar chJf mod-desktop-${{ env.VERSION_TAG }}-linux-x86_64.tar.xz mod-desktop-${{ env.VERSION_TAG }}-linux-x86_64
./utils/linux/linux-tar.sh
mv mod-desktop-*.tar.xz mod-desktop-${{ env.VERSION_TAG }}-linux-x86_64-debug.tar.xz
- uses: actions/upload-artifact@v3
if: ${{ matrix.container == env.RELEASE_OS_LINUX }}
with:
Expand Down Expand Up @@ -172,16 +175,19 @@ jobs:
./utils/plugin-builder/validate-plugins.sh
# FIXME dirty carla leaves temp folders around
rm -rf *.tmp
- name: Set sha8
- name: Set version tag for release
if: ${{ startsWith(github.ref, 'refs/tags/') }}
run: |
echo "VERSION_TAG=$(cat VERSION)" >> $GITHUB_ENV
- name: Set version tag for non-release
if: ${{ ! startsWith(github.ref, 'refs/tags/') }}
run: |
echo "VERSION_TAG=$(echo ${{ github.event.pull_request.number || github.event.release.tag_name || github.sha }} | cut -c1-8)" >> $GITHUB_ENV
echo "VERSION_TAG=$(echo ${{ github.event.pull_request.number || github.sha }} | cut -c1-8)" >> $GITHUB_ENV
- name: Pack
if: steps.cache.outputs.cache-hit == 'true'
run: |
mkdir mod-desktop-${{ env.VERSION_TAG }}-linux-x86_64-debug
mv build mod-desktop-${{ env.VERSION_TAG }}-linux-x86_64-debug/mod-desktop
cp utils/linux/mod-desktop.* mod-desktop-${{ env.VERSION_TAG }}-linux-x86_64-debug/
tar chJf mod-desktop-${{ env.VERSION_TAG }}-linux-x86_64-debug.tar.xz mod-desktop-${{ env.VERSION_TAG }}-linux-x86_64-debug
./utils/linux/linux-tar.sh
mv mod-desktop-*.tar.xz mod-desktop-${{ env.VERSION_TAG }}-linux-x86_64-debug.tar.xz
- uses: actions/upload-artifact@v3
if: ${{ matrix.container == env.RELEASE_OS_LINUX }}
with:
Expand Down Expand Up @@ -234,9 +240,14 @@ jobs:
./utils/plugin-builder/validate-plugins.sh ${{ matrix.target }}
# FIXME dirty carla leaves temp folders around
rm -rf *.tmp
- name: Set sha8
- name: Set version tag for release
if: ${{ startsWith(github.ref, 'refs/tags/') }}
run: |
echo "VERSION_TAG=$(echo ${{ github.event.pull_request.number || github.event.release.tag_name || github.sha }} | cut -c1-8)" >> $GITHUB_ENV
echo "VERSION_TAG=$(cat VERSION)" >> $GITHUB_ENV
- name: Set version tag for non-release
if: ${{ ! startsWith(github.ref, 'refs/tags/') }}
run: |
echo "VERSION_TAG=$(echo ${{ github.event.pull_request.number || github.sha }} | cut -c1-8)" >> $GITHUB_ENV
- name: Pack
if: steps.cache.outputs.cache-hit == 'true'
run: |
Expand Down Expand Up @@ -300,17 +311,21 @@ jobs:
./utils/plugin-builder/validate-plugins.sh
# FIXME dirty carla leaves temp folders around
rm -rf *.tmp
- name: Set sha8
- name: Set version tag for release
if: ${{ startsWith(github.ref, 'refs/tags/') }}
run: |
echo "VERSION_TAG=$(cat VERSION)" >> $GITHUB_ENV
- name: Set version tag for non-release
if: ${{ ! startsWith(github.ref, 'refs/tags/') }}
run: |
echo "VERSION_TAG=$(echo ${{ github.event.pull_request.number || github.event.release.tag_name || github.sha }} | cut -c1-8)" >> $GITHUB_ENV
echo "VERSION_TAG=$(echo ${{ github.event.pull_request.number || github.sha }} | cut -c1-8)" >> $GITHUB_ENV
- name: Pack
if: steps.cache.outputs.cache-hit == 'true'
run: |
xvfb-run ./utils/win64/win64-installer.sh
mv mod-desktop-*.exe mod-desktop-${{ env.VERSION_TAG }}-win64.exe
rm -rf build/innosetup-*
mv build mod-desktop-${{ env.VERSION_TAG }}-win64
zip -r -9 mod-desktop-${{ env.VERSION_TAG }}-win64.zip mod-desktop-${{ env.VERSION_TAG }}-win64
./utils/win64/win64-zip.sh
mv mod-desktop-*.zip mod-desktop-${{ env.VERSION_TAG }}-win64.zip
- uses: actions/upload-artifact@v4
if: ${{ matrix.container == env.RELEASE_OS_WIN64 }}
with:
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.0.7
0.0.8
22 changes: 22 additions & 0 deletions utils/linux/linux-tar.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#!/bin/bash

set -e

if [ ! -d build ]; then
echo "Please run this script from the root folder"
exit
fi

rm -rf mod-ui/mod/__pycache__
rm -rf mod-ui/mod/communication/__pycache__
rm -rf mod-ui/modtools/__pycache__
./utils/pack-html.sh

[ -n "${PAWPAW_DEBUG}" ] && [ "${PAWPAW_DEBUG}" -eq 1 ] && SUFFIX="-debug"

ARCH=$(uname -m)
VERSION="$(cat VERSION)"
mkdir mod-desktop-${VERSION}-linux-${ARCH}${SUFFIX}
mv build mod-desktop-${VERSION}-linux-${ARCH}${SUFFIX}/mod-desktop
cp utils/linux/mod-desktop.* mod-desktop-${VERSION}-linux-${ARCH}${SUFFIX}/
tar chJf mod-desktop-${VERSION}-linux-${ARCH}${SUFFIX}.tar.xz mod-desktop-${VERSION}-linux-${ARCH}${SUFFIX}
172 changes: 172 additions & 0 deletions utils/pack-html.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,172 @@
#!/bin/bash

set -e

if [ ! -d build ]; then
echo "Please run this script from the root folder"
exit
fi

ROOT="$(pwd)"

if [ -e build/mod-desktop.app ]; then
HTML_DIR="build/mod-desktop.app/Contents/Resources/html"
else
HTML_DIR="build/html"
fi

rm -rf "${HTML_DIR}"
mkdir "${HTML_DIR}"
cd "${HTML_DIR}"

cp ${ROOT}/src/mod-ui/html/*.html ./
cp ${ROOT}/src/mod-ui/html/favicon.ico ./

mkdir ./css
cp ${ROOT}/src/mod-ui/html/css/*.css ./css/

mkdir ./css/fontello
mkdir ./css/fontello/css
cp ${ROOT}/src/mod-ui/html/css/fontello/css/*.css ./css/fontello/css/

mkdir ./css/fontello/font
cp ${ROOT}/src/mod-ui/html/css/fontello/font/*.eot ./css/fontello/font/
cp ${ROOT}/src/mod-ui/html/css/fontello/font/*.svg ./css/fontello/font/
cp ${ROOT}/src/mod-ui/html/css/fontello/font/*.ttf ./css/fontello/font/
cp ${ROOT}/src/mod-ui/html/css/fontello/font/*.woff ./css/fontello/font/
cp ${ROOT}/src/mod-ui/html/css/fontello/font/*.woff2 ./css/fontello/font/

mkdir ./fonts
mkdir ./fonts/Ek-Mukta
mkdir ./fonts/Ek-Mukta/Ek-Mukta-200
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-200/*.eot ./fonts/Ek-Mukta/Ek-Mukta-200/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-200/*.svg ./fonts/Ek-Mukta/Ek-Mukta-200/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-200/*.ttf ./fonts/Ek-Mukta/Ek-Mukta-200/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-200/*.woff ./fonts/Ek-Mukta/Ek-Mukta-200/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-200/*.woff2 ./fonts/Ek-Mukta/Ek-Mukta-200/

mkdir ./fonts/Ek-Mukta/Ek-Mukta-600
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-600/*.eot ./fonts/Ek-Mukta/Ek-Mukta-600/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-600/*.svg ./fonts/Ek-Mukta/Ek-Mukta-600/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-600/*.ttf ./fonts/Ek-Mukta/Ek-Mukta-600/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-600/*.woff ./fonts/Ek-Mukta/Ek-Mukta-600/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-600/*.woff2 ./fonts/Ek-Mukta/Ek-Mukta-600/

mkdir ./fonts/Ek-Mukta/Ek-Mukta-700
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-700/*.eot ./fonts/Ek-Mukta/Ek-Mukta-700/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-700/*.svg ./fonts/Ek-Mukta/Ek-Mukta-700/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-700/*.ttf ./fonts/Ek-Mukta/Ek-Mukta-700/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-700/*.woff ./fonts/Ek-Mukta/Ek-Mukta-700/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-700/*.woff2 ./fonts/Ek-Mukta/Ek-Mukta-700/

mkdir ./fonts/Ek-Mukta/Ek-Mukta-regular
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-regular/*.eot ./fonts/Ek-Mukta/Ek-Mukta-regular/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-regular/*.svg ./fonts/Ek-Mukta/Ek-Mukta-regular/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-regular/*.ttf ./fonts/Ek-Mukta/Ek-Mukta-regular/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-regular/*.woff ./fonts/Ek-Mukta/Ek-Mukta-regular/
cp ${ROOT}/src/mod-ui/html/fonts/Ek-Mukta/Ek-Mukta-regular/*.woff2 ./fonts/Ek-Mukta/Ek-Mukta-regular/

mkdir ./fonts/comforta
cp ${ROOT}/src/mod-ui/html/fonts/comforta/*.ttf ./fonts/comforta/

mkdir ./fonts/cooper
cp ${ROOT}/src/mod-ui/html/fonts/cooper/*.eot ./fonts/cooper/
cp ${ROOT}/src/mod-ui/html/fonts/cooper/*.ttf ./fonts/cooper/
cp ${ROOT}/src/mod-ui/html/fonts/cooper/*.woff ./fonts/cooper/
cp ${ROOT}/src/mod-ui/html/fonts/cooper/*.woff2 ./fonts/cooper/

mkdir ./fonts/css
cp ${ROOT}/src/mod-ui/html/fonts/css/*.css ./fonts/css/

mkdir ./fonts/england-hand
cp ${ROOT}/src/mod-ui/html/fonts/england-hand/*.css ./fonts/england-hand/
cp ${ROOT}/src/mod-ui/html/fonts/england-hand/*.eot ./fonts/england-hand/
cp ${ROOT}/src/mod-ui/html/fonts/england-hand/*.svg ./fonts/england-hand/
cp ${ROOT}/src/mod-ui/html/fonts/england-hand/*.ttf ./fonts/england-hand/
cp ${ROOT}/src/mod-ui/html/fonts/england-hand/*.woff ./fonts/england-hand/

mkdir ./fonts/epf
cp ${ROOT}/src/mod-ui/html/fonts/epf/*.css ./fonts/epf/
cp ${ROOT}/src/mod-ui/html/fonts/epf/*.eot ./fonts/epf/
cp ${ROOT}/src/mod-ui/html/fonts/epf/*.svg ./fonts/epf/
cp ${ROOT}/src/mod-ui/html/fonts/epf/*.ttf ./fonts/epf/
cp ${ROOT}/src/mod-ui/html/fonts/epf/*.woff ./fonts/epf/

mkdir ./fonts/nexa
cp ${ROOT}/src/mod-ui/html/fonts/nexa/*.css ./fonts/nexa/
cp ${ROOT}/src/mod-ui/html/fonts/nexa/*.eot ./fonts/nexa/
cp ${ROOT}/src/mod-ui/html/fonts/nexa/*.svg ./fonts/nexa/
cp ${ROOT}/src/mod-ui/html/fonts/nexa/*.ttf ./fonts/nexa/
cp ${ROOT}/src/mod-ui/html/fonts/nexa/*.woff ./fonts/nexa/

mkdir ./fonts/pirulen
cp ${ROOT}/src/mod-ui/html/fonts/pirulen/*.css ./fonts/pirulen/
cp ${ROOT}/src/mod-ui/html/fonts/pirulen/*.eot ./fonts/pirulen/
cp ${ROOT}/src/mod-ui/html/fonts/pirulen/*.ttf ./fonts/pirulen/
cp ${ROOT}/src/mod-ui/html/fonts/pirulen/*.woff ./fonts/pirulen/

mkdir ./fonts/questrial
cp ${ROOT}/src/mod-ui/html/fonts/questrial/*.css ./fonts/questrial/
cp ${ROOT}/src/mod-ui/html/fonts/questrial/*.eot ./fonts/questrial/
cp ${ROOT}/src/mod-ui/html/fonts/questrial/*.svg ./fonts/questrial/
cp ${ROOT}/src/mod-ui/html/fonts/questrial/*.ttf ./fonts/questrial/
cp ${ROOT}/src/mod-ui/html/fonts/questrial/*.woff ./fonts/questrial/

mkdir ./img
cp ${ROOT}/src/mod-ui/html/img/*.gif ./img/
cp ${ROOT}/src/mod-ui/html/img/*.jpg ./img/
cp ${ROOT}/src/mod-ui/html/img/*.png ./img/
cp ${ROOT}/src/mod-ui/html/img/*.svg ./img/

mkdir ./img/cloud
cp ${ROOT}/src/mod-ui/html/img/cloud/*.png ./img/cloud/

mkdir ./img/favicon
cp ${ROOT}/src/mod-ui/html/img/favicon/*.png ./img/favicon/

mkdir ./img/icons
cp ${ROOT}/src/mod-ui/html/img/icons/*.css ./img/icons/
cp ${ROOT}/src/mod-ui/html/img/icons/*.svg ./img/icons/
cp ${ROOT}/src/mod-ui/html/img/icons/*.png ./img/icons/

mkdir ./img/icons/25
cp ${ROOT}/src/mod-ui/html/img/icons/25/*.png ./img/icons/25/

mkdir ./img/icons/36
cp ${ROOT}/src/mod-ui/html/img/icons/36/*.png ./img/icons/36/

mkdir ./img/social
cp ${ROOT}/src/mod-ui/html/img/social/*.png ./img/social/

mkdir ./include
cp ${ROOT}/src/mod-ui/html/include/*.html ./include/

mkdir ./js
cp ${ROOT}/src/mod-ui/html/js/*.js ./js/

mkdir ./js/utils
cp ${ROOT}/src/mod-ui/html/js/utils/*.js ./js/utils/

mkdir ./js/lib
cp ${ROOT}/src/mod-ui/html/js/lib/*.js ./js/lib/

mkdir ./js/lib/slick
cp ${ROOT}/src/mod-ui/html/js/lib/slick/*.js ./js/lib/slick/
cp ${ROOT}/src/mod-ui/html/js/lib/slick/*.css ./js/lib/slick/
cp ${ROOT}/src/mod-ui/html/js/lib/slick/*.gif ./js/lib/slick/

mkdir ./js/lib/slick/fonts
cp ${ROOT}/src/mod-ui/html/js/lib/slick/fonts/*.eot ./js/lib/slick/fonts/
cp ${ROOT}/src/mod-ui/html/js/lib/slick/fonts/*.svg ./js/lib/slick/fonts/
cp ${ROOT}/src/mod-ui/html/js/lib/slick/fonts/*.ttf ./js/lib/slick/fonts/
cp ${ROOT}/src/mod-ui/html/js/lib/slick/fonts/*.woff ./js/lib/slick/fonts/

mkdir ./resources
cp ${ROOT}/src/mod-ui/html/resources/*.html ./resources/

mkdir ./resources/pedals
cp ${ROOT}/src/mod-ui/html/resources/pedals/*.css ./resources/pedals/
cp ${ROOT}/src/mod-ui/html/resources/pedals/*.png ./resources/pedals/

mkdir ./resources/templates
cp ${ROOT}/src/mod-ui/html/resources/templates/*.html ./resources/templates/
5 changes: 3 additions & 2 deletions utils/win64/win64-installer.iss
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ UsePreviousAppDir=no
Name: "normal"; Description: "Full installation";

[Components]
Name: pedalboards; Description: "Factory pedalboards"; Types: normal; Flags: fixed;
Name: plugins; Description: "LV2 plugins"; Types: normal; Flags: fixed;

[Files]
Expand All @@ -30,6 +31,7 @@ Source: "..\..\build\jackd.exe"; DestDir: "{app}"; Flags: ignoreversion;
Source: "..\..\build\libjack64.dll"; DestDir: "{app}"; Flags: ignoreversion;
Source: "..\..\build\libjackserver64.dll"; DestDir: "{app}"; Flags: ignoreversion;
Source: "..\..\build\jack\jack-session.conf"; DestDir: "{app}\jack"; Flags: ignoreversion;
Source: "..\..\build\jack\jack_dummy.dll"; DestDir: "{app}\jack"; Flags: ignoreversion;
Source: "..\..\build\jack\jack_portaudio.dll"; DestDir: "{app}\jack"; Flags: ignoreversion;
Source: "..\..\build\jack\jack_winmme.dll"; DestDir: "{app}\jack"; Flags: ignoreversion;
Source: "..\..\build\jack\mod-host.dll"; DestDir: "{app}\jack"; Flags: ignoreversion;
Expand All @@ -47,8 +49,7 @@ Source: "..\..\build\styles\q*.dll"; DestDir: "{app}\styles"; Flags: ignoreversi
Source: "..\..\build\mod-pedalboard.exe"; DestDir: "{app}"; Flags: ignoreversion;
Source: "..\..\build\mod-ui.exe"; DestDir: "{app}"; Flags: ignoreversion;
Source: "..\..\build\libpython3.8.dll"; DestDir: "{app}"; Flags: ignoreversion;
Source: "..\..\build\default.pedalboard\manifest.ttl"; DestDir: "{app}\default.pedalboard"; Flags: ignoreversion;
Source: "..\..\build\default.pedalboard\*.png"; DestDir: "{app}\default.pedalboard"; Flags: ignoreversion;
Source: "..\..\build\default.pedalboard\*.*"; DestDir: "{app}\default.pedalboard"; Flags: ignoreversion;
Source: "..\..\build\html\*.html"; DestDir: "{app}\html"; Flags: ignoreversion;
Source: "..\..\build\html\favicon.ico"; DestDir: "{app}\html"; Flags: ignoreversion;
Source: "..\..\build\html\css\*.css"; DestDir: "{app}\html\css"; Flags: ignoreversion;
Expand Down
6 changes: 5 additions & 1 deletion utils/win64/win64-installer.sh
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,18 @@ if [ ! -f "${innodir}"/drive_c/InnoSetup/ISCC.exe ]; then
env WINEPREFIX="${innodir}" wine "${dlfile}" /allusers /dir=C:\\InnoSetup /nocancel /norestart /verysilent
fi

# generate plugins
# generate pedalboards and plugins
echo -n "" > utils/win64/win64-plugins.iss
IFS='
'
for f in $(find -L build/plugins/ -type f); do
d=$(dirname $(echo ${f} | sed "s|build/plugins/||"))
echo "Source: \"..\\..\\$(echo ${f} | tr '/' '\\')\"; DestDir: \"{app}\\plugins\\$(echo ${d} | tr '/' '\\')\"; Components: plugins; Flags: ignoreversion;" >> utils/win64/win64-plugins.iss
done
for f in $(find -L pedalboards/ -type f); do
d=$(dirname $(echo ${f} | sed "s|pedalboards/||"))
echo "Source: \"..\\$(echo ${f} | tr '/' '\\')\"; DestDir: \"{app}\\pedalboards\\$(echo ${d} | tr '/' '\\')\"; Components: pedalboards; Flags: ignoreversion;" >> utils/win64/win64-pedalboards.iss
done

# generate version
echo "#define VERSION \"$(cat VERSION)\"" > utils/win64/win64-version.iss
Expand Down
18 changes: 18 additions & 0 deletions utils/win64/win64-zip.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#!/bin/bash

set -e

if [ ! -d build ]; then
echo "Please run this script from the root folder"
exit
fi

rm -rf build/innosetup-*
rm -rf mod-ui/mod/__pycache__
rm -rf mod-ui/mod/communication/__pycache__
rm -rf mod-ui/modtools/__pycache__
./utils/pack-html.sh

VERSION="$(cat VERSION)"
mv build mod-desktop-${VERSION}-win64
zip -r -9 mod-desktop-${VERSION}-win64.zip mod-desktop-${VERSION}-win64

0 comments on commit 9f50f41

Please sign in to comment.