diff --git a/.github/scripts/Linux/prepare.sh b/.github/scripts/Linux/prepare.sh index 887166a49..ec6bd691a 100755 --- a/.github/scripts/Linux/prepare.sh +++ b/.github/scripts/Linux/prepare.sh @@ -51,6 +51,10 @@ sudo apt install libva-dev libdrm-dev libx11-dev libx11-xcb-dev libxcb-present-d sudo apt install qtbase5-dev +sf=TimGM6mb_but_fixed__piano_.sf2 # https://musical-artifacts.com/artifacts/2642 +curl http://frakira.fi.muni.cz/~xpulec/$sf -o "$HOME/$sf" +printf '%b' "SDL_SOUNDFONTS=$HOME/$sf\n" >> "$GITHUB_ENV" + # Install cross-platform deps "$GITHUB_WORKSPACE/.github/scripts/install-common-deps.sh" diff --git a/data/scripts/Linux-AppImage/AppRun b/data/scripts/Linux-AppImage/AppRun index 0380d3b45..f7db09355 100755 --- a/data/scripts/Linux-AppImage/AppRun +++ b/data/scripts/Linux-AppImage/AppRun @@ -26,6 +26,13 @@ QT_PLUGIN_PATH=$(set -- "$DIR"/usr/lib/qt?/plugins; echo "$1") export QT_PLUGIN_PATH export QT_QPA_PLATFORM_PLUGIN_PATH="$QT_PLUGIN_PATH/platforms" +if [ -z "${SDL_SOUNDFONTS-}" ] && [ -d "$DIR/usr/share/soundfonts" ]; then + SDL_SOUNDFONTS=$(find "$DIR/usr/share/soundfonts" -mindepth 1 | head -n 1) + export SDL_SOUNDFONTS + export SDL_FORCE_SOUNDFONTS=1 + fj_env="--env=SDL_SOUNDFONTS=${SDL_SOUNDFONTS} --env=SDL_FORCE_SOUNDFONTS=1" +fi + get_tools() {( LD_LIBRARY_PATH=$orig_ld_library_path find "$DIR/usr/bin" -mindepth 1 -exec basename {} \; | tr '\n' ' ' @@ -246,7 +253,7 @@ if [ -n "${ULTRAGRID_USE_FIREJAIL-}" ] && [ "$ULTRAGRID_USE_FIREJAIL" != 0 ] && if firejail --help | grep -q -- --keep-var-tmp; then FIREJAIL_OPTS="$FIREJAIL_OPTS --keep-var-tmp" fi - RUN="firejail --env=LD_PRELOAD=${LD_PRELOAD} --env=LD_LIBRARY_PATH=${LD_LIBRARY_PATH}${FJ_TMPDIR+ --env=TMPDIR=${FJ_TMPDIR}} --env=UG_FONT_DIR=${UG_FONT_DIR} $FIREJAIL_OPTS " + RUN="firejail --env=LD_PRELOAD=${LD_PRELOAD} --env=LD_LIBRARY_PATH=${LD_LIBRARY_PATH}${FJ_TMPDIR+ --env=TMPDIR=${FJ_TMPDIR}} --env=UG_FONT_DIR=${UG_FONT_DIR} ${fj_env-} $FIREJAIL_OPTS " if [ "${FIREJAIL_DEBUG:-}" ]; then printf "Firejail arguments:\n\t$RUN\n\n" fi diff --git a/data/scripts/Linux-AppImage/create-appimage.sh b/data/scripts/Linux-AppImage/create-appimage.sh index 805910d3f..989ece42d 100755 --- a/data/scripts/Linux-AppImage/create-appimage.sh +++ b/data/scripts/Linux-AppImage/create-appimage.sh @@ -56,8 +56,11 @@ add_fonts() { # for GUI+testcard2 cp "$FONT_PATH" $APPPREFIX/share/fonts done done + if ls $APPPREFIX/lib/*mixer* >/dev/null 2>&1 && [ -f "${SDL_SOUNDFONTS-nonexistent}" ]; then + mkdir -p $APPPREFIX/share/soundfonts + cp "$SDL_SOUNDFONTS" $APPPREFIX/share/soundfonts + fi } -add_fonts # copy dependencies mkdir -p $APPPREFIX/lib @@ -76,6 +79,8 @@ if ls $APPPREFIX/lib/libwayland-* >/dev/null 2>&1; then mv $APPPREFIX/lib/libwayland-* $APPPREFIX/lib/wayland fi +add_fonts + if command wget >/dev/null && wget -V | grep -q https; then dl() { wget -O - ${GITHUB_TOKEN+--header "Authorization: token $GITHUB_TOKEN"} "$1"