do not strip appname from color theme files
[ardour.git] / tools / linux_packaging / stage2.run.in
index ea83a57e207ff6cd771431671719f15fb945ec7f..5241e806d4592a33c279ada9782f904c18dccb26 100755 (executable)
@@ -287,7 +287,7 @@ if %REPLACE_GCC5%; then
                echo ""
                echo "WARNING: GCC4/5 libstdc++ ABI Mismatch"
                echo ""
-               echo "Ardour was compiled with gcc5, your system uses an older version of the"
+               echo "${PGM_NAME} was compiled with gcc5, your system uses an older version of the"
                echo "standard c++ library. Plugins on your system may not load or plugin-UIs"
                echo "may cause crashes."
                echo ""
@@ -302,7 +302,7 @@ else
                echo ""
                echo "WARNING: GCC4/5 libstdc++ ABI Mismatch"
                echo ""
-               echo "Ardour was compiled with gcc4, your system uses a newer version of the"
+               echo "${PGM_NAME} was compiled with gcc4, your system uses a newer version of the"
                echo "standard c++ library. Plugins on your system may not load or plugin-UIs"
                echo "may cause crashes."
                echo ""
@@ -313,6 +313,19 @@ else
        fi
 fi
 
+if %REPLACE_WINE%; then
+       if test -z "`which wine`"; then
+               echo ""
+               echo "!!! ERROR !!! - 'wine' was not found."
+               echo ""
+               echo "This version of ${PGM_NAME} with Windows VST support requires wine."
+               echo "https://www.winehq.org/"
+               echo ""
+               read -p "Press ENTER to exit installer:" BLAH
+               exit 1
+       fi
+fi
+
 #####################
 # Unpack the bundle
 #####################
@@ -375,6 +388,54 @@ then
        HAS_XDG="F"
 fi
 
+#################################################
+# Set up libwine.so
+#################################################
+if %REPLACE_WINE%; then
+       echo ""
+       echo "Searching libwine.so (Windows VST support)"
+       # we need to add libwine to ardour's LD_LIBRARY_PATH
+       # libwine itself includes paths to the various system-components
+       # which may be different on each platform.
+       #
+       # There's some chicken/egg here: ardour.exe.so is linked against libwine.so
+       # at build-time. wine/wineloader assumes a windows-application (which does not use libwine
+       # directly) and does not set up the LD path to libwine itself. the application terminates
+       # (missing libs) before it even starts..
+       #
+       # wine itself does not provide means to find the location of libwine.
+       # /usr/bin/wine is usually shell-script and libwine.so can be found in
+       # various places on different distros.
+       #
+       # if this check were quick and easy.. it should be done in the startup-script, but it's not
+       # so here we go... (updating wine may require re-installing ardour)
+       #
+       # on recent Ubuntu wine does load both:
+       #   /usr/lib/i386-linux-gnu/libwine.so.1
+       # AND
+       #   /usr/lib/x86_64-linux-gnu/libwine.so.1
+       # so we need to work around this (thanks).
+       # (this hack break 64bit LinuxVST builds, but we don't do those anyway)
+
+       LIBWINE=$(
+               LD_DEBUG=files wine `pwd`/${BUNDLE_DIR}/lib/ardour-vst-scanner.exe.so 2>&1 \
+                                                | grep -e "calling init:.*libwine" \
+                                                | sed 's/^.*calling init: //' \
+                                                | grep -v x86_64-linux-gnu \
+                                                | uniq \
+                       )
+       if ! test -f "$LIBWINE"; then
+               echo ""
+               echo "!!! ERROR !!! - 'libwine.so*' was not found."
+               echo ""
+               read -p "Press ENTER to exit installer:" BLAH
+               exit 1
+       fi
+       echo "Using: $LIBWINE"
+  # this replaces/overwrites the bundled libwine
+       cp -L "$LIBWINE" `pwd`/${BUNDLE_DIR}/lib/libwine.so.1
+fi
+
 #################################################
 # Check if system libs are OK (libc, etc)
 #################################################
@@ -439,7 +500,7 @@ else
 fi
 
 PGM_EXEC_PATH="${INSTALL_DEST_BASE}/${PGM_FULL_NAME}/bin/${PGM_EXEC_FILE}"
-ICON_PATH="${INSTALL_DEST_BASE}/${PGM_FULL_NAME}/share/icons"
+ICON_PATH="${INSTALL_DEST_BASE}/${PGM_FULL_NAME}/share/resources"
 MENU_FILE_PATH="${INSTALL_DEST_BASE}/${PGM_FULL_NAME}/share"
 
 ################################
@@ -502,15 +563,15 @@ ${SUPER} mv /tmp/${MENU_FILE} ${MENU_FILE_PATH}/.
 if [ "T" = ${HAS_XDG} ];
 then
        echo "Adding ${PGM_NAME} to the applications menu"
-       ${SUPER} xdg-icon-resource install --context apps --size 16 ${ICON_PATH}/${PGM_NAME_LOWER}_icon_16px.png ${ICON_NAME}
-       ${SUPER} xdg-icon-resource install --context apps --size 22 ${ICON_PATH}/${PGM_NAME_LOWER}_icon_22px.png ${ICON_NAME}
-       ${SUPER} xdg-icon-resource install --context apps --size 32 ${ICON_PATH}/${PGM_NAME_LOWER}_icon_32px.png ${ICON_NAME}
-       ${SUPER} xdg-icon-resource install --context apps --size 48 ${ICON_PATH}/${PGM_NAME_LOWER}_icon_48px.png ${ICON_NAME}
-       ${SUPER} xdg-icon-resource install --context apps --size 256 ${ICON_PATH}/${PGM_NAME_LOWER}_icon_256px.png ${ICON_NAME}
+       ${SUPER} xdg-icon-resource install --context apps --size 16 ${ICON_PATH}/${PGM_NAME}-icon_16px.png ${ICON_NAME}
+       ${SUPER} xdg-icon-resource install --context apps --size 22 ${ICON_PATH}/${PGM_NAME}-icon_22px.png ${ICON_NAME}
+       ${SUPER} xdg-icon-resource install --context apps --size 32 ${ICON_PATH}/${PGM_NAME}-icon_32px.png ${ICON_NAME}
+       ${SUPER} xdg-icon-resource install --context apps --size 48 ${ICON_PATH}/${PGM_NAME}-icon_48px.png ${ICON_NAME}
+       ${SUPER} xdg-icon-resource install --context apps --size 256 ${ICON_PATH}/${PGM_NAME}-icon_256px.png ${ICON_NAME}
 
-       if [ -e ${ICON_PATH}/${PGM_NAME_LOWER}_icon.svg -a -d /usr/share/icons/hicolor/scalable/apps ]; 
+       if [ -e ${ICON_PATH}/${PGM_NAME}_icon.svg -a -d /usr/share/icons/hicolor/scalable/apps ];
        then
-               ${SUPER} cp -f ${ICON_PATH}/${PGM_NAME_LOWER}_icon.svg  /usr/share/icons/hicolor/scalable/apps/${ICON_NAME}.svg
+               ${SUPER} cp -f ${ICON_PATH}/${PGM_NAME}_icon.svg  /usr/share/icons/hicolor/scalable/apps/${ICON_NAME}.svg
        fi
 
        ${SUPER} xdg-desktop-menu install ${MENU_FILE_PATH}/${MENU_FILE}
@@ -784,7 +845,7 @@ then
                echo ""
                echo "!!! WARNING !!! - Your system seems to use frequency scaling."
                echo "This can have a serious impact on audio latency."
-               echo "For best results turn it off, e.g. by chosing the 'performance' governor."
+               echo "For best results turn it off, e.g. by choosing the 'performance' governor."
                echo ""
                read -p "Press ENTER to continue:" BLAH
        fi