Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
Education
geonext
geonext
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File geonext of Package geonext
#!/bin/bash #--------------------------------------------- # Script to start GEONExT #--------------------------------------------- #--------------------------------------------- # Used environment variables: # # GN_SCRIPTNAME=<name of originally called script to start GeoGebra> # If unset, name of this script will be used. # # GN_PATH=<path of directory containing geonext.jar> # If unset, path of this script will be used. # In this case if the path of script does not contain the geonext.jar file, /usr/share/geonext will be used. # # GN_SYS_CONFIG_PATH=<path of system directory containing geonext.conf> # # GN_CONFIG_PATH=<path of directory containing .config/$GN_SCRIPTNAME/geonext.conf> # If unset, $HOME will be used. # # JAVACMD=<Java command> # If unset, java will be used. # # GN_XMS=<initial Java heap size> # If unset, 32m will be used. # # GN_XMX=<maximum Java heap size> # If unset, 1024m will be used. # # GN_DJAVA_LIBRARY_PATH=<native library path> # # GN_DSUN_JAVA2D_XRENDER=<boolean> # # GN_DSUN_JAVA2D_OPENGL=<boolean> #--------------------------------------------- # If $GN_SCRIPTNAME not set, use name of this script. if [ -z "$GN_SCRIPTNAME" ]; then GN_SCRIPTNAME="$(basename $0)" fi #--------------------------------------------- # If $GN_PATH not set, use path of this script. if [ -z "$GN_PATH" ]; then GN_PATH="${BASH_SOURCE[0]}" if [ -h "${GN_PATH}" ]; then while [ -h "${GN_PATH}" ]; do GN_PATH=`readlink "${GN_PATH}"` done fi pushd . > /dev/null cd `dirname ${GN_PATH}` > /dev/null GN_PATH=`pwd` popd > /dev/null test -r "${GN_PATH}/geonext.jar" || GN_PATH='/usr/share/geonext' fi #--------------------------------------------- # If $GN_CONFIG_PATH not set, use $HOME. if [ -z "$GN_CONFIG_PATH" ]; then GN_CONFIG_PATH="$HOME" fi #--------------------------------------------- # If $JAVACMD not set, use java. if [ -z "$JAVACMD" ]; then JAVACMD='java' fi #--------------------------------------------- # If $GN_XMS not set, use 32m. if [ -z "$GN_XMS" ]; then GN_XMS='32m' fi #--------------------------------------------- # If $GN_XMX not set, use 1024m. if [ -z "$GN_XMX" ]; then GN_XMX='1024m' fi #--------------------------------------------- # If $GN_SYS_CONFIG_PATH is set, read system config files (if exist). if [ -n "$GN_SYS_CONFIG_PATH" ]; then if [ -e "$GN_SYS_CONFIG_PATH/geonext.conf" ]; then . "$GN_SYS_CONFIG_PATH/geonext.conf" fi if [ -e "$GN_SYS_CONFIG_PATH/geonext.conf.local" ]; then . "$GN_SYS_CONFIG_PATH/geonext.conf.local" fi fi #--------------------------------------------- # Prefer default settings from system config files. if [ -n "$DEFAULT_JAVACMD" ]; then JAVACMD="$DEFAULT_JAVACMD" unset DEFAULT_JAVACMD fi if [ -n "$DEFAULT_GN_XMS" ]; then GN_XMS="$DEFAULT_GN_XMS" unset DEFAULT_GN_XMS fi if [ -n "$DEFAULT_GN_XMX" ]; then GN_XMX="$DEFAULT_GN_XMX" unset DEFAULT_GN_XMX fi if [ -n "$DEFAULT_GN_DJAVA_LIBRARY_PATH" ]; then GN_DJAVA_LIBRARY_PATH="$DEFAULT_GN_DJAVA_LIBRARY_PATH" unset DEFAULT_GN_DJAVA_LIBRARY_PATH fi if [ -n "$DEFAULT_GN_DSUN_JAVA2D_XRENDER" ]; then GN_DSUN_JAVA2D_XRENDER="$DEFAULT_GN_DSUN_JAVA2D_XRENDER" unset DEFAULT_GN_DSUN_JAVA2D_XRENDER fi if [ -n "$DEFAULT_GN_DSUN_JAVA2D_OPENGL" ]; then GN_DSUN_JAVA2D_OPENGL="$DEFAULT_GN_DSUN_JAVA2D_OPENGL" unset DEFAULT_GN_DSUN_JAVA2D_OPENGL fi #--------------------------------------------- # Read user config file (if exists) and rewrite it. GN_CONFIG_FILE="$GN_CONFIG_PATH/.config/$GN_SCRIPTNAME/geonext.conf" if [ ! -w "$GN_CONFIG_FILE" ]; then if [ ! -e "$GN_CONFIG_FILE" -a -w "$GN_CONFIG_PATH/.config/$GN_SCRIPTNAME" ]; then touch "$GN_CONFIG_FILE" elif [ ! -e "$GN_CONFIG_PATH/.config/$GN_SCRIPTNAME" -a -w "$GN_CONFIG_PATH/.config" ]; then mkdir "$GN_CONFIG_PATH/.config/$GN_SCRIPTNAME" touch "$GN_CONFIG_FILE" elif [ ! -e "$GN_CONFIG_PATH/.config" -a -w "$GN_CONFIG_PATH" ]; then mkdir "$GN_CONFIG_PATH/.config" mkdir "$GN_CONFIG_PATH/.config/$GN_SCRIPTNAME" touch "$GN_CONFIG_FILE" fi fi if [ -w "$GN_CONFIG_FILE" ]; then . "$GN_CONFIG_FILE" true > "$GN_CONFIG_FILE" cat > "$GN_CONFIG_FILE" << EOF # This is the default GEONExT configuration file. It shows what the defaults # for various options happen to be. # # If you don't need to change the default, you shouldn't uncomment the line. # Doing so may cause run-time problems. # JAVA OPTIONS # ----------------------------------------------------------------------------- # Set Java command, e.g. '/usr/bin/java'. # `if [ ! -n "$DEFAULT_JAVACMD" ]; then echo "#DEFAULT_JAVACMD='$JAVACMD'"; else echo "DEFAULT_JAVACMD='$DEFAULT_JAVACMD'"; fi` # Set initial Java heap size, e.g. '32m'. # `if [ ! -n "$DEFAULT_GN_XMS" ]; then echo "#DEFAULT_GN_XMS='$GN_XMS'"; else echo "DEFAULT_GN_XMS='$DEFAULT_GN_XMS'"; fi` # Set maximum Java heap size, e.g '512m'. # `if [ ! -n "$DEFAULT_GN_XMX" ]; then echo "#DEFAULT_GN_XMX='$GN_XMX'"; else echo "DEFAULT_GN_XMX='$DEFAULT_GN_XMX'"; fi` # Set native library path, e.g. '/usr/lib/jni'. # `if [ ! -n "$DEFAULT_GN_DJAVA_LIBRARY_PATH" -a -n "$GN_DJAVA_LIBRARY_PATH" ]; then echo "#DEFAULT_GN_DJAVA_LIBRARY_PATH='$GN_DJAVA_LIBRARY_PATH'"; elif [ ! -n "$DEFAULT_GN_DJAVA_LIBRARY_PATH" -a ! -n "$GN_DJAVA_LIBRARY_PATH" ]; then echo "#DEFAULT_GN_DJAVA_LIBRARY_PATH=''"; else echo "DEFAULT_GN_DJAVA_LIBRARY_PATH='$DEFAULT_GN_DJAVA_LIBRARY_PATH'"; fi` # Enable/disable the Xrender pipeline (true/false). # `if [ ! -n "$DEFAULT_GN_DSUN_JAVA2D_XRENDER" -a -n "$GN_DSUN_JAVA2D_XRENDER" ]; then echo "#DEFAULT_GN_DSUN_JAVA2D_XRENDER='$GN_DSUN_JAVA2D_XRENDER'"; elif [ ! -n "$DEFAULT_GN_DSUN_JAVA2D_XRENDER" -a ! -n "$GN_DSUN_JAVA2D_XRENDER" ]; then echo "#DEFAULT_GN_DSUN_JAVA2D_XRENDER=''"; else echo "DEFAULT_GN_DSUN_JAVA2D_XRENDER='$DEFAULT_GN_DSUN_JAVA2D_XRENDER'"; fi` # Enable/disable the OpenGL pipeline (true/false). # `if [ ! -n "$DEFAULT_GN_DSUN_JAVA2D_OPENGL" -a -n "$GN_DSUN_JAVA2D_OPENGL" ]; then echo "#DEFAULT_GN_DSUN_JAVA2D_OPENGL='$GN_DSUN_JAVA2D_OPENGL'"; elif [ ! -n "$DEFAULT_GN_DSUN_JAVA2D_OPENGL" -a ! -n "$GN_DSUN_JAVA2D_OPENGL" ]; then echo "#DEFAULT_GN_DSUN_JAVA2D_OPENGL=''"; else echo "DEFAULT_GN_DSUN_JAVA2D_OPENGL='$DEFAULT_GN_DSUN_JAVA2D_OPENGL'"; fi` EOF fi #--------------------------------------------- # Prefer default settings from user config file. if [ -n "$DEFAULT_JAVACMD" ]; then JAVACMD="$DEFAULT_JAVACMD" fi if [ -n "$DEFAULT_GN_XMS" ]; then GN_XMS="$DEFAULT_GN_XMS" fi if [ -n "$DEFAULT_GN_XMX" ]; then GN_XMX="$DEFAULT_GN_XMX" fi if [ -n "$DEFAULT_GN_DJAVA_LIBRARY_PATH" ]; then GN_DJAVA_LIBRARY_PATH="$DEFAULT_GN_DJAVA_LIBRARY_PATH" fi if [ -n "$DEFAULT_GN_DSUN_JAVA2D_XRENDER" ]; then GN_DSUN_JAVA2D_XRENDER="$DEFAULT_GN_DSUN_JAVA2D_XRENDER" fi if [ -n "$DEFAULT_GN_DSUN_JAVA2D_OPENGL" ]; then GN_DSUN_JAVA2D_OPENGL="$DEFAULT_GN_DSUN_JAVA2D_OPENGL" fi #--------------------------------------------- # Define usage function. function func_usage() { cat << _USAGE Usage: $GN_SCRIPTNAME [Java-options] [GEONExT-options] [FILE] GEONExT - Dynamic mathematics software Java options: -JavaCMD=<command> Set Java command, default $JAVACMD -Xms<size> Set initial Java heap size, default $GN_XMS -Xmx<size> Set maximum Java heap size, default $GN_XMX -Djava.library.path=<path> Set native library path`if [ -n "$GN_DJAVA_LIBRARY_PATH" ]; then echo ", default $GN_DJAVA_LIBRARY_PATH"; fi` -Dsun.java2d.xrender=<boolean> Enable/disable the Xrender pipeline (Use True for verbose output and true for non-verbose output)`if [ -n "$GN_DSUN_JAVA2D_XRENDER" ]; then echo ", default $GN_DSUN_JAVA2D_XRENDER"; fi` -Dsun.java2d.opengl=<boolean> Enable/disable the OpenGL pipeline (Use True for verbose output and true for non-verbose output)`if [ -n "$GN_DSUN_JAVA2D_OPENGL" ]; then echo ", default $GN_DSUN_JAVA2D_OPENGL"; fi` GEONExT options: --help Print this help message _USAGE } #--------------------------------------------- # Check for option --help and pass Java options to Java. for i in "$@"; do case "$i" in --help | --hel | --he | --h ) func_usage; exit 0 ;; esac if [ $(expr match "$i" '.*-Xms') -ne 0 ]; then GN_XMS=${i:4} shift $((1)) elif [ $(expr match "$i" '.*-Xmx') -ne 0 ]; then GN_XMX=${i:4} shift $((1)) elif [ $(expr match "$i" '.*-Djava.library.path=') -ne 0 ]; then GN_DJAVA_LIBRARY_PATH=${i:20} shift $((1)) elif [ $(expr match "$i" '.*-Dsun.java2d.xrender=') -ne 0 ]; then GN_DSUN_JAVA2D_XRENDER=${i:21} shift $((1)) elif [ $(expr match "$i" '.*-Dsun.java2d.opengl=') -ne 0 ]; then GN_DSUN_JAVA2D_OPENGL=${i:20} shift $((1)) elif [ $(expr match "$i" '.*-JavaCMD=') -ne 0 ]; then JAVACMD=${i:9} shift $((1)) fi done JAVA_OPTS=("-Xms$GN_XMS" "-Xmx$GN_XMX") if [ -n "$GN_DJAVA_LIBRARY_PATH" ]; then JAVA_OPTS[${#JAVA_OPTS[*]}]="-Djava.library.path=$GN_DJAVA_LIBRARY_PATH" fi if [ -n "$GN_DSUN_JAVA2D_XRENDER" ]; then JAVA_OPTS[${#JAVA_OPTS[*]}]="-Dsun.java2d.xrender=$GN_DSUN_JAVA2D_XRENDER" fi if [ -n "$GN_DSUN_JAVA2D_OPENGL" ]; then JAVA_OPTS[${#JAVA_OPTS[*]}]="-Dsun.java2d.opengl=$GN_DSUN_JAVA2D_OPENGL" fi #--------------------------------------------- # Run exec "$JAVACMD" "${JAVA_OPTS[@]}" -cp "$GN_PATH/geonext.jar" "geonext/Geonext" "$@"
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor