#!/bin/sh # README # Builds swingmusic binary for aarch64 aka ARM64 architecture # Run # ./buildswingmusic.sh # chmod a+x swingmusicbuilder/swingmusic/dist/swingmusic # .swingmusicbuilder/swingmusic/dist/swingmusic --port --host # Notes # Poetry installer and pipx install poetry are both broken on ARM64 Raspberry Pi OS # Moving or renaming venv directory (comment inline below) will break that venv. # Additional poetry bug ongoing https://github.com/python-poetry/poetry/issues/5250 (comment inline below) # Changed to bash shebang above from repo build script setting of zsh pacman-key --init pacman-key --populate archlinuxarm pacman -Sy --noconfirm pacman -S yarn git --noconfirm sed -i -e 's/#RemoteFileSigLevel = Required/RemoteFileSigLevel = Optional/g' /etc/pacman.conf pacman -U https://github.com/jensgrunzer1/pyhon311-for-aarch64/raw/refs/heads/main/python311-3.11.9-2-aarch64.pkg.tar.xz --noconfirm pacman -Su --noconfirm mkdir swingmusicbuilder cd swingmusicbuilder git clone https://github.com/swing-opensource/swingmusic-client.git git clone https://github.com/swing-opensource/swingmusic.git # Manual poetry installation as installers are broken. python3 -m venv poetry source poetry/bin/activate cd swingmusic pip install -U pip setuptools pip install poetry cd ../swingmusic-client yarn install yarn build --outDir ../swingmusic/client cd ../swingmusic # Fixes poetry issue 5250. export PYTHON_KEYRING_BACKEND=keyring.backends.fail.Keyring poetry install # Swing gives error if this is not set. Set to version of repo you cloned. export SWINGMUSIC_APP_VERSION="1.4.8" poetry run python manage.py --build