OBS-URL: https://build.opensuse.org/package/show/Java:packages/vuze?expand=0&rev=3
225 lines
6.9 KiB
Diff
225 lines
6.9 KiB
Diff
diff -up azureus-5.7.6.0/org/gudy/azureus2/platform/unix/startupScript.startupScript azureus-5.7.6.0/org/gudy/azureus2/platform/unix/startupScript
|
|
--- azureus-5.7.6.0/org/gudy/azureus2/platform/unix/startupScript.startupScript 2016-11-18 18:41:58.000000000 +0100
|
|
+++ azureus-5.7.6.0/org/gudy/azureus2/platform/unix/startupScript 2017-11-21 20:28:08.552801627 +0100
|
|
@@ -1,15 +1,24 @@
|
|
#!/bin/bash
|
|
|
|
######## CONFIGURATION OPTIONS ########
|
|
-AUTOUPDATE_SCRIPT=1 # change to 0 if you don't want your changes overwritten on next SCRIPT_VERSION change
|
|
-JAVA_PROGRAM_DIR="" # use full path to java bin dir, ex. "/usr/java/j2sdk1.4.2/bin/"
|
|
-#PROGRAM_DIR="/home/username/apps/azureus" # use full path to Azureus bin dir
|
|
-JAVA_ARGS="-Xmx256m"
|
|
+AUTOUPDATE_SCRIPT=0 # change to 0 if you don't want your changes overwritten on next SCRIPT_VERSION change
|
|
+JAVA_PROGRAM_DIR="/usr/lib/jvm/jre/bin/" # use full path to java bin dir, ex. "/usr/java/j2sdk1.4.2/bin/"
|
|
+PROGRAM_DIR="$HOME/.azureus/app" # use full path to Azureus bin dir
|
|
+mkdir -p ${PROGRAM_DIR}
|
|
+
|
|
+#Workaround for SWT problem with wayland
|
|
+export GDK_BACKEND=x11
|
|
|
|
#export MOZILLA_FIVE_HOME="/path/to/gre" # Full path to GRE/Mozilla. When commenting out this line, also comment out the next line
|
|
#if [ "$LD_LIBRARY_PATH x" = " x" ]; then export LD_LIBRARY_PATH=$MOZILLA_FIVE_HOME; else export LD_LIBRARY_PATH=$MOZILLA_FIVE_HOME:$LD_LIBRARY_PATH; fi
|
|
+
|
|
+
|
|
#######################################
|
|
|
|
+LIBDIR=/usr/lib
|
|
+export LD_LIBRARY_PATH=$LIBDIR/eclipse/plugins/:$LIBDIR/eclipse/:$LIBDIR CLASSPATH=`build-classpath swt json-simple bcprov apache-commons-cli apache-commons-lang reload4j`:/usr/share/azureus/Azureus2.jar
|
|
+
|
|
+
|
|
######## YOU PROBABLY DO NOT WANT TO TOUCH ANYTHING BELOW! ########
|
|
|
|
SCRIPT_VERSION=6
|
|
@@ -35,153 +44,27 @@ MSG_JAVABORK="Java appeared to have cras
|
|
|
|
SKIP_GCJ=1
|
|
|
|
-look_for_java()
|
|
-{
|
|
- # check if java is in path. If it is, we do not need to search
|
|
- if command -v java &>/dev/null; then
|
|
- if check_version ; then
|
|
- echo $MSG11
|
|
- return 0
|
|
- fi
|
|
- fi
|
|
-
|
|
- echo $MSG_JAVASEARCH
|
|
-
|
|
-
|
|
- JAVA_CHECK_DIRS="/usr/java/latest /usr/java /usr/lib/jvm/latest /usr/lib/jvm"
|
|
- for JAVADIR in $JAVA_CHECK_DIRS; do
|
|
- IFS=$'\n'
|
|
- potential_java_dirs=(`ls -1 "$JAVADIR" | sort | tac 2>/dev/null`)
|
|
- IFS=
|
|
- for D in "${potential_java_dirs[@]}"; do
|
|
- if [[ -d "$JAVADIR/$D" && -x "$JAVADIR/$D/bin/java" ]]; then
|
|
- JAVA_PROGRAM_DIR="$JAVADIR/$D/bin/"
|
|
- echo $MSG2 $JAVA_PROGRAM_DIR
|
|
- if check_version ; then
|
|
- return 0
|
|
- fi
|
|
- fi
|
|
- done
|
|
- done
|
|
-
|
|
- if [ $SKIP_GCJ ] ; then
|
|
- echo $MSG_RECHECK
|
|
- SKIP_GCJ=
|
|
- if look_for_java ; then
|
|
- return 0
|
|
- else
|
|
- return 1
|
|
- fi
|
|
- else
|
|
- echo $MSG8 "${JAVADIR}/" $MSG9 ; echo $MSG_JAVA_BELOW_MIN
|
|
- fi
|
|
- return 1
|
|
-}
|
|
-
|
|
-check_version()
|
|
-{
|
|
- if [ $SKIP_GCJ ] ; then
|
|
- JAVA_ISGCJ=`"${JAVA_PROGRAM_DIR}java" -version 2>&1 | grep "gcj"`
|
|
- if [ ! "$JAVA_ISGCJ x" = " x" ] ; then
|
|
- echo $MSG_ISGCJ
|
|
- return 1
|
|
- fi
|
|
- fi
|
|
-
|
|
- JAVA_HEADER=`"${JAVA_PROGRAM_DIR}java" -version 2>&1 | head -n 1`
|
|
- JAVA_IMPL=`echo ${JAVA_HEADER} | cut -f1 -d' '`
|
|
- if [ "$JAVA_IMPL" = "#" ] ; then
|
|
- echo $MSG_JAVABORK
|
|
- ${JAVA_PROGRAM_DIR}java -version 2>&1
|
|
- exit 1
|
|
- else
|
|
- VERSION=`echo ${JAVA_HEADER} | sed "s/^.* version \"\(.*\)\"/\1/"`
|
|
- if echo $VERSION | grep "^1.[0-5]" ; then
|
|
- echo $MSG_JAVA_TOO_OLD "[${JAVA_PROGRAM_DIR}java = ${VERSION}]" ; echo $MSG_JAVA_BELOW_MIN
|
|
- return 1
|
|
- else
|
|
- echo $MSG5 "[${JAVA_PROGRAM_DIR}java = ${JAVA_IMPL} ${VERSION}]" ; echo $MSG6
|
|
- return 0
|
|
- fi
|
|
- fi
|
|
-}
|
|
-
|
|
runJavaOutput()
|
|
{
|
|
- # assume we can write to the user's home..
|
|
-
|
|
- ${JAVA_PROGRAM_DIR}java "${JAVA_ARGS}" \
|
|
+ TMP_SCRIPT=$(mktemp)
|
|
+
|
|
+ ${JAVA_PROGRAM_DIR}java ${JAVA_ARGS} \
|
|
-cp "${CLASSPATH}" \
|
|
-Djava.library.path="${PROGRAM_DIR}" \
|
|
-Dazureus.install.path="${PROGRAM_DIR}" \
|
|
-Dazureus.script="$0" \
|
|
$JAVA_PROPS \
|
|
- "$@" > ~/azScript
|
|
- if [ -f ~/azScript ]; then
|
|
- chmod +x ~/azScript
|
|
- . ~/azScript
|
|
- rm ~/azScript
|
|
- fi
|
|
-}
|
|
-
|
|
-moveInSWT()
|
|
-{
|
|
- if [ "$(echo ${PROGRAM_DIR}/swt/*.jar)" = "${PROGRAM_DIR}/swt/*.jar" ]; then
|
|
- # No swt dir
|
|
- return;
|
|
- fi
|
|
- if [ "`${JAVA_PROGRAM_DIR}java -cp \"${CLASSPATH}\" org.gudy.azureus2.platform.JavaBitMode`" = "64" ]; then
|
|
- SWTFILE="swt64"
|
|
- else
|
|
- SWTFILE="swt32"
|
|
- fi
|
|
- if [[ "${VERSION}" > "1.8" ]]; then
|
|
- if [ -f "${PROGRAM_DIR}/swt/${SWTFILE}-J8.jar" ]; then
|
|
- SWTFILE="${SWTFILE}-J8";
|
|
- fi
|
|
- fi
|
|
-
|
|
- if [ -f "${PROGRAM_DIR}/swt.jar" ]; then
|
|
- SWTVER=`unzip -cq "${PROGRAM_DIR}/swt.jar" version.txt | sed "s/^version \(.*\)/\1/"`
|
|
- fi
|
|
- SWTVERNEW=`unzip -cq "${PROGRAM_DIR}/swt/${SWTFILE}.jar" version.txt | sed "s/^version \(.*\)/\1/"`
|
|
- if [[ ( "${SWTVER}" != "" ) && ( "${SWTVERNEW}" > "${SWTVER}" ) ]]; then
|
|
- echo "Upgrading SWT from ${SWTVER} to ${SWTVERNEW}"
|
|
- rm "${PROGRAM_DIR}/swt.jar"
|
|
- fi
|
|
-
|
|
- if [ ! -f "${PROGRAM_DIR}/swt.jar" ]; then
|
|
- cp "${PROGRAM_DIR}/swt/${SWTFILE}.jar" "${PROGRAM_DIR}/swt.jar"
|
|
- echo "Using ${SWTFILE} ${SWTVERNEW}"
|
|
- else
|
|
- echo "SWT ${SWTVER}"
|
|
- fi
|
|
+ "$@" > $TMP_SCRIPT
|
|
+
|
|
+ if [ -f $TMP_SCRIPT ]; then
|
|
+ chmod +x $TMP_SCRIPT
|
|
+ . $TMP_SCRIPT
|
|
+ rm $TMP_SCRIPT
|
|
+ fi
|
|
}
|
|
|
|
-
|
|
echo $MSG_STARTING
|
|
|
|
-# locate and test the java executable
|
|
-if [ "$JAVA_PROGRAM_DIR" == "" ]; then
|
|
- if ! look_for_java ; then
|
|
- exit 1
|
|
- fi
|
|
-fi
|
|
-
|
|
-# get the app dir if not already defined
|
|
-if [ -z "$PROGRAM_DIR" ]; then
|
|
- PROGRAM_DIR=`dirname "$0"`
|
|
- PROGRAM_DIR=`cd "$PROGRAM_DIR"; pwd`
|
|
-else
|
|
- if [ "$(echo ${PROGRAM_DIR}/*.jar)" = "${PROGRAM_DIR}/*.jar" ]; then
|
|
- echo "You seem to have set an invalid PROGRAM_DIR, unable to continue!"
|
|
- exit 1
|
|
- elif [ ! -f "${PROGRAM_DIR}/Azureus2.jar" ]; then
|
|
- echo "Unable to locate Azureus2.jar in $PROGRAM_DIR, aborting!"
|
|
- exit 1
|
|
- fi
|
|
-fi
|
|
-
|
|
# Change path here so we can do for loop on program dirs with spaces
|
|
cd "${PROGRAM_DIR}"
|
|
|
|
@@ -190,17 +73,8 @@ for FILE in ./*.jar; do
|
|
CLASSPATH="${CLASSPATH:+${CLASSPATH}:}$FILE"
|
|
done
|
|
|
|
-moveInSWT
|
|
-
|
|
# setup Java System Properties (no spaces in values)
|
|
-JAVA_PROPS="-Dazureus.script.version=${SCRIPT_VERSION}"
|
|
-if [ ! "$JAVA_ISGCJ x" = " x" ] ; then
|
|
- JAVA_PROPS="$JAVA_PROPS -Dgnu.gcj.runtime.VMClassLoader.library_control=never"
|
|
-fi
|
|
-
|
|
-# some distros symlink application level plugins into the users's plugin directory..
|
|
-# remove all symlinks in user's plugin directory
|
|
-find ~/.azureus/plugins -maxdepth 1 -type l -xtype d -exec rm {} \;
|
|
+JAVA_PROPS="-Dazureus.script.version=${SCRIPT_VERSION} -Dorg.eclipse.swt.browser.UseWebKitGTK=true -Dazureus.skipSWTcheck=1"
|
|
|
|
runJavaOutput "org.gudy.azureus2.platform.unix.ScriptBeforeStartup" "$@";
|
|
|
|
@@ -210,7 +84,7 @@ echo "${JAVA_PROGRAM_DIR}java ${JAVA_ARG
|
|
# Don't use "exec -a Azureus ..." here as exec quits this script after completion,
|
|
# preventing ScriptAfterShutdown from running, which installs updates and does
|
|
# restarts
|
|
-${JAVA_PROGRAM_DIR}java "${JAVA_ARGS}" \
|
|
+${JAVA_PROGRAM_DIR}java ${JAVA_ARGS} \
|
|
-cp "${CLASSPATH}" \
|
|
-Djava.library.path="${PROGRAM_DIR}" \
|
|
-Dazureus.install.path="${PROGRAM_DIR}" \
|