From 05187ea56d0f88bd2bcb8ace6c2632580864150b Mon Sep 17 00:00:00 2001 From: Martin Pulec Date: Fri, 4 Apr 2025 15:44:40 +0200 Subject: [PATCH] AppImage: bundle aux data for IM magickwand --- .github/scripts/Linux/prepare.sh | 2 +- data/scripts/Linux-AppImage/AppRun | 4 ++++ data/scripts/Linux-AppImage/create-appimage.sh | 17 +++++++++++++++++ 3 files changed, 22 insertions(+), 1 deletion(-) diff --git a/.github/scripts/Linux/prepare.sh b/.github/scripts/Linux/prepare.sh index c563cc12e..872278ada 100755 --- a/.github/scripts/Linux/prepare.sh +++ b/.github/scripts/Linux/prepare.sh @@ -22,7 +22,7 @@ sudo apt install fonts-dejavu-core sudo apt --no-install-recommends install nvidia-cuda-toolkit sudo apt install libglew-dev libglfw3-dev sudo apt install libglm-dev -sudo apt install libmagickwand-dev +sudo apt install imagemagick libmagickwand-dev sudo apt install libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev sudo apt install libsoxr-dev libspeexdsp-dev sudo apt install libssl-dev diff --git a/data/scripts/Linux-AppImage/AppRun b/data/scripts/Linux-AppImage/AppRun index 5e33c99da..428f8f385 100755 --- a/data/scripts/Linux-AppImage/AppRun +++ b/data/scripts/Linux-AppImage/AppRun @@ -25,6 +25,10 @@ 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" +export MAGICK_CONFIGURE_PATH="$DIR/etc/IM" +export MAGICK_CODER_FILTER_PATH="$DIR/usr/share/IM/filters" +export MAGICK_CODER_MODULE_PATH="$DIR/usr/share/IM/coders" + get_tools() {( find "$DIR/usr/bin" -mindepth 1 -exec basename {} \; | tr '\n' ' ' )} diff --git a/data/scripts/Linux-AppImage/create-appimage.sh b/data/scripts/Linux-AppImage/create-appimage.sh index cdd23e899..655e1d85e 100755 --- a/data/scripts/Linux-AppImage/create-appimage.sh +++ b/data/scripts/Linux-AppImage/create-appimage.sh @@ -58,6 +58,23 @@ if [ -n "$QT_DIR" ]; then PLUGIN_LIBS=$(find "$DST_PLUGIN_DIR" -type f) fi +if [ -f $APPPREFIX/lib/ultragrid/ultragrid_vo_pp_text.so ]; then + if ! command -v convert >/dev/null; then + handle_error 'IM convert missing! (needed for bundle)' + fi + # https://stackoverflow.com/a/53355763 + conf_path=$(convert -list configure | + sed -n '/CONFIGURE_PATH/ { s/[A-Z_]* *//; p; q; }') + codr_path=$(convert -list configure | + sed -n '/CODER_PATH/ { s/[A-Z_]* *//; p; q; }') + filt_path=$(convert -list configure | + sed -n '/FILTER_PATH/ { s/[A-Z_]* *//; p; q; }') + mkdir $APPDIR/etc $APPPREFIX/share/IM + cp -r "$conf_path" $APPDIR/etc/IM + cp -r "$codr_path" $APPPREFIX/share/IM/coders + cp -r "$filt_path" $APPPREFIX/share/IM/filters +fi + add_fonts() { # for GUI+testcard2 if ! command -v fc-match >/dev/null; then handle_error "fc-match not found, not copying fonts!"