From: Kill Your TV Date: Mon, 18 Apr 2011 16:43:40 +0000 Subject: path substitution The purpose of this patch is the change the values handled by the Izpack based installer. Non-applicable sections (e.g., portable & windows) are also removed for the Debian wrapper.config to try to prevent confusion. --- installer/resources/eepget | 2 +- installer/resources/i2prouter | 82 ++++-------------------------------- installer/resources/runplain.sh | 4 +- installer/resources/wrapper.config | 70 ++++++------------------------ 4 files changed, 24 insertions(+), 134 deletions(-) --- a/installer/resources/eepget +++ b/installer/resources/eepget @@ -1,3 +1,3 @@ #!/bin/sh -I2P="%INSTALL_PATH" +I2P="/usr/share/i2p" java -cp "$I2P/lib/i2p.jar" net.i2p.util.EepGet "$@" --- a/installer/resources/i2prouter +++ b/installer/resources/i2prouter @@ -10,7 +10,7 @@ # wrapper configuration file. # # If this script fails to successfully invoke i2psvc on your platform, -# try the runplain.sh script instead. +# try the i2prouter-nowrapper script instead. # # This software is the proprietary information of Tanuki Software. # You shall use it only in accordance with the terms of the @@ -24,21 +24,12 @@ # These settings can be modified to fit the needs of your application # Optimized for use with version 3.5.17 of the Wrapper. -# Paths -# Note that (percent)INSTALL_PATH, (percent)USER_HOME, and (percent)SYSTEM_java_io_tmpdir -# should have been replaced by the izpack installer. -# If you did not run the installer, replace them with the appropriate paths. -I2P="%INSTALL_PATH" -if [ "`uname -s`" == "Darwin" ]; then - if [ -d "%USER_HOME/Library/Application Support" ]; then - I2P_CONFIG_DIR="%USER_HOME/Library/Application Support/i2p" - else - I2P_CONFIG_DIR="%USER_HOME/.i2p" - fi -else - I2P_CONFIG_DIR="%USER_HOME/.i2p" -fi -I2PTEMP="%SYSTEM_java_io_tmpdir" +# Read config file if found +[ -f /etc/default/i2p ] && . /etc/default/i2p + +I2P="/usr/share/i2p" +I2P_CONFIG_DIR="$HOME/.i2p" +I2PTEMP="/tmp" # PORTABLE installation: # Use the following instead. #I2PTEMP="%INSTALL_PATH" @@ -69,8 +60,8 @@ #RUN_AS_USER= # Wrapper -WRAPPER_CMD="$I2P/i2psvc" -WRAPPER_CONF="$I2P/wrapper.config" +WRAPPER_CMD="/usr/sbin/wrapper" +WRAPPER_CONF="/etc/i2p/wrapper.config" # Priority at which to run the wrapper. See "man nice" for valid priorities. # nice is only used if a priority is specified. @@ -175,48 +166,6 @@ # Workaround for Gentoo JAVABINARY=$(awk -F'=' '/^ *wrapper\.java\.command/{print $2}' "$WRAPPER_CONF") -if [ -e /etc/gentoo-release ]; then - if [ $JAVABINARY = java ]; then - if [ -x /etc/java-config-2/current-system-vm/bin/java ]; then - JAVABINARY="/etc/java-config-2/current-system-vm/bin/java" - else - echo "Please set wrapper.java.command in $WRAPPER_CONF" - exit 1 - fi - fi -fi - -WRAPPER_URL="http://www.i2p2.de/manualwrapper" -unsupported() { - echo "The most likely reason is that a supported version of the java" - echo "wrapper is not available in the I2P installation package for your" - echo "platform. It may be possible to manually download and install" - echo "a compatible wrapper for your system." - echo "See ${WRAPPER_URL} for hints." - echo - echo "In the meantime, you may start I2P by running the script" - echo "${I2P}/runplain.sh" - echo -} - -failed() { - echo "**`gettext 'Failed to load the wrapper'`**" - case `uname -s` in - FreeBSD) - echo - echo "The wrapper requires libiconv to be on your system." - echo "It can be installed with pkg_add -r libiconv" - echo - exit 1 - ;; - *) - echo - unsupported - exit 1 - ;; - esac -} - if [ -n "$FIXED_COMMAND" ] then COMMAND="$FIXED_COMMAND" @@ -928,9 +877,6 @@ # The string passed to eval must handles spaces in paths correctly. COMMAND_LINE="$CMDNICE \"$WRAPPER_CMD\" \"$WRAPPER_CONF\" wrapper.syslog.ident=\"$APP_NAME\" wrapper.java.command=\"$JAVABINARY\" wrapper.pidfile=\"$PIDFILE\" wrapper.name=\"$APP_NAME\" wrapper.displayname=\"$APP_LONG_NAME\" $ANCHORPROP $STATUSPROP $COMMANDPROP $LOCKPROP $LOGPROP wrapper.script.version=3.5.17 $ADDITIONAL_PARA" eval $COMMAND_LINE - if [ "$?" -ne "0" ]; then - failed - fi else eval echo `gettext '$APP_LONG_NAME is already running.'` exit 1 @@ -1054,9 +1000,6 @@ # The string passed to eval must handles spaces in paths correctly. COMMAND_LINE="$CMDNICE \"$WRAPPER_CMD\" \"$WRAPPER_CONF\" wrapper.syslog.ident=\"$APP_NAME\" wrapper.java.command=\"$JAVABINARY\" wrapper.pidfile=\"$PIDFILE\" wrapper.name=\"$APP_NAME\" wrapper.displayname=\"$APP_LONG_NAME\" wrapper.daemonize=TRUE $ANCHORPROP $IGNOREPROP $STATUSPROP $COMMANDPROP $LOCKPROP $LOGPROP wrapper.script.version=3.5.17 $ADDITIONAL_PARA" eval $COMMAND_LINE - if [ "$?" -ne "0" ]; then - failed - fi else eval echo `gettext '$APP_LONG_NAME is already running.'` exit 1 @@ -1793,7 +1736,7 @@ } showsetusermesg() { - echo "`gettext \"Please edit $0 and set the variable RUN_AS_USER\"`." + echo "`gettext "Please edit /etc/default/i2p and set the variable RUN_AS_USER"`." } checkifstartingasroot() { @@ -1801,7 +1744,7 @@ echo "`gettext 'Running I2P as the root user is *not* recommended.'`" showsetusermesg echo - echo "`gettext \"To run as root anyway, edit $0 and set ALLOW_ROOT=true.\"`" + echo "`gettext \"To run as root anyway, edit /etc/default/i2p and set ALLOW_ROOT=true.\"`" exit 1 fi } @@ -1866,23 +1809,9 @@ status ;; - 'install') - installdaemon - if [ ! `grep ^RUN_AS_USER $0` ]; then - echo - showsetusermesg - fi - echo - echo "You may want to disable the browser from launching at startup at" - echo "http://127.0.0.1:7657/configclients" - echo - echo "I2P_CONFIG_DIR is currently set to $I2P_CONFIG_DIR." - echo "Change the value in $0 if this is not" - echo "appropriate for your configuration." - ;; - - 'remove' | 'uninstall') - removedaemon + 'install' | 'remove' | 'uninstall') + echo "Use \"dpkg-reconfigure i2p\" to configure the initscript." + exit 1 ;; 'dump') --- a/installer/resources/runplain.sh +++ b/installer/resources/runplain.sh @@ -11,8 +11,8 @@ # Note that (percent)INSTALL_PATH and (percent)SYSTEM_java_io_tmpdir # should have been replaced by the izpack installer. # If you did not run the installer, replace them with the appropriate path. -I2P="%INSTALL_PATH" -I2PTEMP="%SYSTEM_java_io_tmpdir" +I2P="/usr/share/i2p" +I2PTEMP="/tmp" # Having IPv6 enabled can cause problems with certain configurations. Changing the # next value to true may help. --- a/installer/resources/wrapper.config +++ b/installer/resources/wrapper.config @@ -8,22 +8,13 @@ # click "Shutdown", wait 11 minutes, then start i2p. # # WARNING - The wrapper is NOT run (and this file is not used) -# if you start I2P with the 'no window' icon on Windows, or -# with the runplain.sh script on Linux. Use the 'restartable' -# icon on Windows or the i2prouter script on Linux to run the wrapper. +# if you start I2P with the i2prouter-nowrapper script in Linux. +# Use i2prouter or the initscript to run the wrapper. # # NOTE - Directory organization: # The standard I2P Installation will set up a "split" directory structure # with code in the install directory, data and configuration files in the # user's home directory, and temporary files in the system temporary directory. -# To set up a single-directory "portable" installation suitable for -# a USB stick, make several changes specified below (search for PORTABLE). -# -# NOTE - The izpack installer performs variable subsitiution on this -# file upon installation. If you did not use izpack, you must -# find and replace all instances of (dollar)INSTALL_PATH and -# (dollar)SYSTEM_java_io_tmpdir with appropriate values -# (perhaps . and /var/tmp, respectively) # #******************************************************************** # Java Application @@ -60,13 +51,14 @@ # classes, or all the classes of i2p.jar, are in a different directory). # Be sure there are no other duplicate classes. # -wrapper.java.classpath.1=$INSTALL_PATH/lib/*.jar +wrapper.java.classpath.1=/usr/share/i2p/lib/*.jar +wrapper.java.classpath.2=/usr/share/java/wrapper.jar # uncomment this to use the system classpath as well (e.g. to get tools.jar) -# wrapper.java.classpath.2=%CLASSPATH% +# wrapper.java.classpath.3=%CLASSPATH% -# Java Library Path (location of Wrapper.DLL or libwrapper.so) -wrapper.java.library.path.1=$INSTALL_PATH -wrapper.java.library.path.2=$INSTALL_PATH/lib +# Java Library Path (location of libjbigi/libjcpuid) +wrapper.java.library.path.1=/usr/lib/jni +wrapper.java.library.path.2=/usr/share/java/lib # Java Bits. On applicable platforms, tells the JVM to run in 32 or 64-bit mode. wrapper.java.additional.auto_bits=TRUE @@ -76,7 +68,7 @@ wrapper.java.additional.1=-DloggerFilenameOverride=logs/log-router-@.txt wrapper.java.additional.2=-Dorg.mortbay.http.Version.paranoid=true wrapper.java.additional.3=-Dorg.mortbay.xml.XmlParser.NotValidating=true -wrapper.java.additional.4=-Di2p.dir.base="$INSTALL_PATH" +wrapper.java.additional.4=-Di2p.dir.base=/usr/share/i2p wrapper.java.additional.4.stripquotes=TRUE # On some IPv6 enabled systems, I2P and other network-enabled java applications @@ -143,11 +135,7 @@ # You may wish to change this. # NOTE: On Linux/Mac this is overridden in the i2prouter script; changes here will have no effect. # System temp directory: -wrapper.logfile=$SYSTEM_java_io_tmpdir/wrapper.log -# PORTABLE installation: -# Use the following instead. I2P will find the logfile here, -# no need for a wrapper.java.additional line too. -#wrapper.logfile=$INSTALL_PATH/wrapper.log +#wrapper.logfile=/tmp/wrapper.log # Format of output for the log file. # The format consists of the tokens 'L' for log level, 'P' for prefix, 'D' for thread, @@ -217,11 +205,7 @@ # Linux/Mac users, do not set here, see settings in the i2prouter script. # Directory must exist or the wrapper will fail to start. # System temp directory: -#wrapper.java.pidfile=$SYSTEM_java_io_tmpdir/routerjvm.pid -# PORTABLE installation: -# Use the following instead. -#wrapper.java.pidfile=$INSTALL_PATH/routerjvm.pid -# pid file for the service monitoring the JVM +#wrapper.java.pidfile=/tmp/routerjvm.pid # # From i2prouter: # @@ -235,10 +219,7 @@ # Linux/Mac users, do not set here, see settings in the i2prouter script. # Directory must exist or the wrapper will fail to start. # System temp directory: -#wrapper.pidfile=$SYSTEM_java_io_tmpdir/i2p.pid -# PORTABLE installation: -# Use the following instead. -#wrapper.pidfile=$INSTALL_PATH/i2p.pid +#wrapper.pidfile=/tmp/i2p.pid #******************************************************************** # Wrapper General Properties @@ -255,30 +236,3 @@ wrapper.umask=0022 wrapper.java.umask=0022 wrapper.logfile.umask=077 - -#******************************************************************** -# Wrapper NT Service Properties -#******************************************************************** -# WARNING - Do not modify any of these properties when an application -# using this configuration file has been installed as a service. -# Please uninstall the service before modifying this section. The -# service can then be reinstalled. - -# Name of the service -wrapper.ntservice.name=i2p - -# Display name of the service -wrapper.ntservice.displayname=I2P Service - -# Description of the service -wrapper.ntservice.description=The I2P router service - -# Service dependencies. Add dependencies as needed starting from 1 -wrapper.ntservice.dependency.1= - -# Mode in which the service is installed. AUTO_START or DEMAND_START -wrapper.ntservice.starttype=AUTO_START - -# Allow the service to interact with the desktop. -wrapper.ntservice.interactive=false - --- a/installer/resources/locale/po/messages_de.po +++ b/installer/resources/locale/po/messages_de.po @@ -192,14 +192,14 @@ msgstr "Falls gestartet, fordere einen Java Thread dump an" #: ../i2prouter:1788 -msgid "Please edit $0 and set the variable RUN_AS_USER" -msgstr "Bitte bearbeite $0 und setze die Variable RUN_AS_USER" +msgid "Please edit /etc/default/i2p and set the variable RUN_AS_USER" +msgstr "Bitte bearbeite /etc/default/i2p und setze die Variable RUN_AS_USER" #: ../i2prouter:1793 msgid "Running I2P as the root user is *not* recommended." msgstr "I2P als root Benutzer auszuführen ist *nicht* empfehlenswert." #: ../i2prouter:1796 -msgid "To run as root anyway, edit $0 and set ALLOW_ROOT=true." +msgid "To run as root anyway, edit /etc/default/i2p and set ALLOW_ROOT=true." msgstr "" -"Um I2P trotzdem als root auszuführen bearbeite $0 und setze ALLOW_ROOT=true." +"Um I2P trotzdem als root auszuführen bearbeite /etc/default/i2p und setze ALLOW_ROOT=true." --- a/installer/resources/locale/po/messages_en.po +++ b/installer/resources/locale/po/messages_en.po @@ -185,7 +185,7 @@ msgstr "" #: ../i2prouter:1788 -msgid "Please edit $0 and set the variable RUN_AS_USER" +msgid "Please edit /etc/default/i2p and set the variable RUN_AS_USER" msgstr "" #: ../i2prouter:1793 @@ -193,5 +193,5 @@ msgstr "" #: ../i2prouter:1796 -msgid "To run as root anyway, edit $0 and set ALLOW_ROOT=true." +msgid "To run as root anyway, edit /etc/default/i2p and set ALLOW_ROOT=true." msgstr "" --- a/installer/resources/locale/po/messages_fr.po +++ b/installer/resources/locale/po/messages_fr.po @@ -187,7 +187,7 @@ msgstr "" #: ../i2prouter:1780 -msgid "Please edit $0 and set the variable RUN_AS_USER" +msgid "Please edit /etc/default/i2p and set the variable RUN_AS_USER" msgstr "" #: ../i2prouter:1785 @@ -196,5 +196,5 @@ "Faire fonctionner I2P en tant qu'utilisateur root n'est *pas* recommandé." #: ../i2prouter:1788 -msgid "To run as root anyway, edit $0 and set ALLOW_ROOT=true." +msgid "To run as root anyway, edit /etc/default/i2p and set ALLOW_ROOT=true." msgstr "" --- a/installer/resources/locale/po/messages_it.po +++ b/installer/resources/locale/po/messages_it.po @@ -187,7 +187,7 @@ msgstr "" #: ../i2prouter:1780 -msgid "Please edit $0 and set the variable RUN_AS_USER" +msgid "Please edit /etc/default/i2p and set the variable RUN_AS_USER" msgstr "" #: ../i2prouter:1785 @@ -195,5 +195,5 @@ msgstr "" #: ../i2prouter:1788 -msgid "To run as root anyway, edit $0 and set ALLOW_ROOT=true." +msgid "To run as root anyway, edit /etc/default/i2p and set ALLOW_ROOT=true." msgstr "" --- a/installer/resources/locale/po/messages_ru.po +++ b/installer/resources/locale/po/messages_ru.po @@ -188,7 +188,7 @@ msgstr "" #: ../i2prouter:1780 -msgid "Please edit $0 and set the variable RUN_AS_USER" +msgid "Please edit /etc/default/i2p and set the variable RUN_AS_USER" msgstr "" #: ../i2prouter:1785 @@ -196,5 +196,5 @@ msgstr "" #: ../i2prouter:1788 -msgid "To run as root anyway, edit $0 and set ALLOW_ROOT=true." +msgid "To run as root anyway, edit /etc/default/i2p and set ALLOW_ROOT=true." msgstr ""