File 0004-startscript.patch of Package tuxguitar

From a5c036eeddba8d956431f2b537fa7aba10ead8aa Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fridrich=20=C5=A0trba?= <fridrich.strba@bluewin.ch>
Date: Fri, 21 Feb 2025 15:17:53 +0100
Subject: [PATCH 4/4] startscript

---
 .../common-linux/tuxguitar.sh                 | 151 +++++++++++++++++-
 1 file changed, 144 insertions(+), 7 deletions(-)

diff --git a/desktop/build-scripts/common-resources/common-linux/tuxguitar.sh b/desktop/build-scripts/common-resources/common-linux/tuxguitar.sh
index a213786ad..f059e32fb 100755
--- a/desktop/build-scripts/common-resources/common-linux/tuxguitar.sh
+++ b/desktop/build-scripts/common-resources/common-linux/tuxguitar.sh
@@ -1,20 +1,157 @@
 #!/bin/sh
-##SCRIPT DIR
-TG_DIR=`dirname $(realpath "$0")`
+
+# system dependencies
+swt_guess_()
+{
+    t="/usr/lib/eclipse/plugins/org.eclipse.swt.gtk.linux.*.jar"
+    [ -r "$t" ] && f="$t"
+    t="/etc/alternatives/swt.jar"
+    [ -r "$t" ] && f="$t"
+    t="/usr/share/java/swt.jar"
+    [ -r "$t" ] && f="$t"
+    t="/usr/lib/java/swt.jar"
+    [ -r "$t" ] && f="$t"
+    t="/usr/lib64/java/swt.jar"
+    [ -r "$t" ] && f="$t"
+    file -L "$f" >/dev/null 2>&1 || f=""
+    echo "$f"
+}
+
+itext_pdf_guess_()
+{
+    t="/usr/share/java/itext.jar"
+    [ -r "$t" ] && f="$t"
+    t="/usr/share/java/itext-pdf.jar"
+    [ -r "$t" ] && f="$t"
+    t="/usr/share/java/itextpdf/itextpdf.jar"
+    [ -r "$t" ] && f="$t"
+    file -L "$f" >/dev/null 2>&1 || f=""
+    echo "$f"
+}
+
+itext_xmlworker_guess_()
+{
+    t="/usr/share/java/xmlworker.jar"
+    [ -r "$t" ] && f="$t"
+    t="/usr/share/java/itext-xmlworker.jar"
+    [ -r "$t" ] && f="$t"
+    t="/usr/share/java/itextpdf/xmlworker.jar"
+    [ -r "$t" ] && f="$t"
+    file -L "$f" >/dev/null 2>&1 || f=""
+    echo "$f"
+}
+
 ##JAVA
 JAVA=`which java`
 ##LIBRARY_PATH
-LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${TG_DIR}/lib/
+LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:@LIBDIR@/tuxguitar
 ##CLASSPATH
-CLASSPATH=${CLASSPATH}:${TG_DIR}/lib/*
-CLASSPATH=${CLASSPATH}:${TG_DIR}/share/
-CLASSPATH=${CLASSPATH}:${TG_DIR}/dist/
+PACKAGE=${PACKAGE:=tuxguitar}
+PACKAGE_HOME=${PACKAGE_HOME:=/usr/share/java/${PACKAGE}/}
+t="${PACKAGE_HOME}/${PACKAGE}.jar"
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-alsa.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-ascii.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-awt-graphics.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-browser-ftp.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-community.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-compat.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-converter.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-debug-helper.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-editor-utils.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-fluidsynth.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-gervill.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-gm-settings.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-gm-utils.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-gpx.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-gtp.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-gtp-ui.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-image.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-jack.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-jack-ui.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-jsa.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-lib.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-lilypond.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-lilypond-ui.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-midi.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-midi-ui.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-musicxml.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-pdf.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-pdf-ui.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-ptb.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-svg.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-synth.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-synth-export.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-synth-gervill.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-synth-lv2.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-synth-vst.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-tef.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-tray.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-tuner.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-ui-toolkit.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-ui-toolkit-swt.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/${PACKAGE}-viewer.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=${PACKAGE_HOME}/gervill.jar
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=$(itext_pdf_guess_)
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=$(itext_xmlworker_guess_)
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t=$(swt_guess_)
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t="/usr/share/java/commons-compress.jar"
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
+t="/usr/share/java/commons-io.jar"
+[ -r "$t" ] && CLASSPATH=${CLASSPATH}:$t
 ##MAINCLASS
 MAINCLASS=org.herac.tuxguitar.app.TGMainSingleton
 ##JVM ARGUMENTS
 VM_ARGS="-Xmx512m"
+## SHAREPATH
+SHAREPATH=/usr/share/tuxguitar
 ##EXPORT VARS
 export CLASSPATH
 export LD_LIBRARY_PATH
 ##LAUNCH
-${JAVA} ${VM_ARGS} -cp :${CLASSPATH} -Dtuxguitar.home.path="${TG_DIR}" -Dtuxguitar.share.path="share/" -Djava.library.path="${LD_LIBRARY_PATH}" ${MAINCLASS} "$@"
+${JAVA} ${VM_ARGS} -cp :${CLASSPATH} -Dtuxguitar.share.path="${SHAREPATH}/" -Djava.library.path="${LD_LIBRARY_PATH}" ${MAINCLASS} "$@"
-- 
2.48.1

openSUSE Build Service is sponsored by