#encoding=UTF-8 #******************************************************************** # Wrapper Properties # # WARNING - for any changes to take effect, you must completely # stop the router and the wrapper. Clicking 'Restart' on your # router console will NOT reread this file! You must # 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. # # 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 wrapper.java.command=java # Specify a specific java binary: #set.JAVA_HOME=/java/path #wrapper.java.command=%JAVA_HOME%/bin/java # Gentoo uses the following: #wrapper.java.command=/etc/java-config-2/current-system-vm/bin/java # Tell the Wrapper to log the full generated Java command line. #wrapper.java.command.loglevel=INFO # Java Main class. This class must implement the WrapperListener interface # or guarantee that the WrapperManager class is initialized. Helper # classes are provided to do this for you. See the Integration section # of the documentation for details. wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp # Java Classpath (include wrapper.jar) Add class path elements as # needed starting from 1 # # Doing it this way means we can add new apps without asking people # to update their wrapper.config. # The downside is that we lose control over classpath order, # This is fine for new installs (where the uninstall jars # copy.jar, delete.jar, and exec.jar containing duplicate FileUtil # 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 # uncomment this to use the system classpath as well (e.g. to get tools.jar) # wrapper.java.classpath.2=%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 Bits. On applicable platforms, tells the JVM to run in 32 or 64-bit mode. wrapper.java.additional.auto_bits=TRUE # Java Additional Parameters # Numbers must be consecutive (except for stripquotes) 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.stripquotes=TRUE # On some IPv6 enabled systems, I2P and other network-enabled java applications # may fail to start. For examples see # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=560044. # Two things that may help if you experience this issue # 1) "echo 0 > /proc/sys/net/ipv6/bindv6only" as root; or # 2) uncomment the next two lines: #wrapper.java.additional.5=-Djava.net.preferIPv4Stack=true #wrapper.java.additional.6=-Djava.net.preferIPv6Addresses=false # Jetty says this is a security risk # Uncommenting this won't help as the router forces it to true # If you really need this, you have to set it in jetty.xml # somehow - not sure exactly but here's a clue: # org.mortbay.util.FileResource.setCheckAliases(false) # wrapper.java.additional.7=-Dorg.mortbay.util.FileResource.checkAliases=false # PORTABLE installation: # uncomment the following #wrapper.java.additional.7=-Di2p.dir.pid="$INSTALL_PATH" #wrapper.java.additional.7.stripquotes=TRUE #wrapper.java.additional.8=-Di2p.dir.temp="$INSTALL_PATH" #wrapper.java.additional.8.stripquotes=TRUE #wrapper.java.additional.9=-Di2p.dir.config="$INSTALL_PATH" #wrapper.java.additional.9.stripquotes=TRUE # # Uncomment this for better performance. # If it doesn't work, server mode is not available in your JVM. # This may not be required if your machine is already "server-class". # See http://java.sun.com/j2se/1.5.0/docs/guide/vm/server-class.html #wrapper.java.additional.7=-server # Initial Java Heap Size (in MB) #wrapper.java.initmemory=4 # Maximum Java Heap Size (in MB) # The JVM's default is 64MB, and I2P can work fine in that, but to handle # lots of I2PSnark activity in the same JVM, increasing the default max heap # size should help. Feel free to reduce this if not using I2PSnark in the jvm # High-bandwidth routers may need to increase to 256 or more. # # WARNING - for any changes to take effect, you must completely # stop the router and the wrapper. Clicking 'Restart' on your # router console will NOT reread this file! You must # click "Shutdown", wait 11 minutes, then start i2p. # wrapper.java.maxmemory=128 # Application parameters. Add parameters as needed starting from 1 wrapper.app.parameter.1=net.i2p.router.Router #******************************************************************** # Wrapper Logging Properties #******************************************************************** # Enables Debug output from the Wrapper. # wrapper.debug=TRUE # Format of output for the console. (See docs for formats) wrapper.console.format=PM # Log Level for console output. (See docs for log levels) wrapper.console.loglevel=INFO # Log file to use for wrapper output logging. # You may wish to change this on linux so the log is # preserved across OS restarts. 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 # Format of output for the log file. # The format consists of the tokens 'L' for log level, 'P' for prefix, 'D' for thread, # 'T' for time, 'Z' for millisecond time, and 'M' for message # Unfortunately the log timezone cannot be changed, see # http://www.nabble.com/Log-message-timezone-td23651317.html wrapper.logfile.format=TM # Log Level for log file output. (See docs for log levels) wrapper.logfile.loglevel=INFO # Maximum size that the log file will be allowed to grow to before # the log is rolled. Size is specified in bytes. The default value # of 0, disables log rolling. May abbreviate with the 'k' (kb) or # 'm' (mb) suffix. For example: 10m = 10 megabytes. wrapper.logfile.maxsize=1m # Maximum number of rolled log files which will be allowed before old # files are deleted. The default value of 0 implies no limit. wrapper.logfile.maxfiles=2 # Log Level for sys/event log output. (See docs for log levels) wrapper.syslog.loglevel=NONE # these will shut down or crash the JVM wrapper.signal.mode.usr1=IGNORE wrapper.signal.mode.usr2=IGNORE # choose what to do if the JVM kills itself based on the exit code wrapper.on_exit.default=SHUTDOWN wrapper.on_exit.0=SHUTDOWN wrapper.on_exit.1=SHUTDOWN # OOM wrapper.on_exit.10=RESTART # graceful shutdown wrapper.on_exit.2=SHUTDOWN # hard shutdown wrapper.on_exit.3=SHUTDOWN # hard restart wrapper.on_exit.4=RESTART # hard restart wrapper.on_exit.5=RESTART # the router may take a few seconds to save state, etc wrapper.jvm_exit.timeout=60 # give the OS 60s to clear all the old sockets / etc before restarting # Let's change the default from 60 to 15 seconds and see if anyone moans.. wrapper.restart.delay=15 wrapper.ping.interval=300 # The ping timeout must be at least 5 seconds longer than the value of wrapper.ping.interval. # Extend this if you are getting 'JVM appears hung' shutdowns. wrapper.ping.timeout=320 # use the wrapper's internal timer thread. otherwise this would # force a restart of the router during daylight savings time as well # as any time that the OS clock changes wrapper.use_system_time=false # pid file for the JVM # If you plan to have multiple wrappers running on the same machine, # you should copy this file, change the location or file name, # and edit the i2prouter script to change the WRAPPER_CONF setting # to point to the new wrapper.config location. 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 # # From i2prouter: # # PIDDIR="." # APP_NAME="i2p" # PIDFILE="$PIDDIR/$APP_NAME.pid" # # This means i2prouter looks for './i2p.pid'. # See comments above for wrapper.java.pidfile wrapper.pidfile=$SYSTEM_java_io_tmpdir/i2p.pid # PORTABLE installation: # Use the following instead. #wrapper.pidfile=$INSTALL_PATH/i2p.pid #******************************************************************** # Wrapper General Properties #******************************************************************** # Allow for the use of non-contiguous numbered properties wrapper.ignore_sequence_gaps=TRUE # Title to use when running as a console wrapper.console.title=I2P Service # Set permissions used when creating files # See http://wrapper.tanukisoftware.com/doc/english/prop-umask.html # for a detailed explanation of these settings. 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