diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /net-p2p/i2p | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'net-p2p/i2p')
-rw-r--r-- | net-p2p/i2p/Manifest | 1 | ||||
-rw-r--r-- | net-p2p/i2p/files/i2p-0.9.18_fix-paths.patch | 137 | ||||
-rw-r--r-- | net-p2p/i2p/files/i2p.initd | 36 | ||||
-rw-r--r-- | net-p2p/i2p/files/i2p.service | 13 | ||||
-rw-r--r-- | net-p2p/i2p/i2p-0.9.18.ebuild | 97 | ||||
-rw-r--r-- | net-p2p/i2p/metadata.xml | 15 |
6 files changed, 299 insertions, 0 deletions
diff --git a/net-p2p/i2p/Manifest b/net-p2p/i2p/Manifest new file mode 100644 index 000000000000..cd5a61ebb019 --- /dev/null +++ b/net-p2p/i2p/Manifest @@ -0,0 +1 @@ +DIST i2psource_0.9.18.tar.bz2 24147960 SHA256 6f02f38c933662874c485cb52ca800a9e07c36e74a26fdfeece65e25979beb4b SHA512 6cc336f94f8e4331b26d6e42958808f193ad3709ab6098981077c9390749233fb3d20df5c8fea34ec7810bc8846fd2e11ed7a79bf7c1ec68402b1ccacae999d6 WHIRLPOOL 467285b189af69b300c56756992e53979aa049515cb89ce0d5cbff80b9270c4ab1188f419dd0206b2406780b36ddde73861b5e2e69c7b2e7d8ed00b7bcaaa7a7 diff --git a/net-p2p/i2p/files/i2p-0.9.18_fix-paths.patch b/net-p2p/i2p/files/i2p-0.9.18_fix-paths.patch new file mode 100644 index 000000000000..d1c207f10e96 --- /dev/null +++ b/net-p2p/i2p/files/i2p-0.9.18_fix-paths.patch @@ -0,0 +1,137 @@ +--- clients.config 2015-03-15 02:02:29.021408673 -0700 ++++ clients.config 2015-03-15 02:24:33.460308396 -0700 +@@ -60,7 +60,7 @@ + clientApp.4.name=Open Router Console in web browser at startup + clientApp.4.args=http://127.0.0.1:7657/ + clientApp.4.delay=3 +-clientApp.4.startOnLoad=true ++clientApp.4.startOnLoad=false + + # BOB bridge + clientApp.5.args= +--- eepget 2015-03-15 02:02:29.078407997 -0700 ++++ eepget 2015-03-15 02:17:51.441075791 -0700 +@@ -1,3 +1,3 @@ + #!/bin/sh +-I2P="%INSTALL_PATH" ++I2P="/usr/share/i2p" + java -cp "$I2P/lib/i2p.jar" net.i2p.util.EepGet "$@" +--- i2prouter 2015-03-15 02:02:29.079407985 -0700 ++++ i2prouter 2015-03-15 02:11:13.023194731 -0700 +@@ -28,20 +28,22 @@ + # 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" ++USER_HOME="$HOME" ++SYSTEM_java_io_tmpdir="$USER_HOME/.i2p" ++I2P="/usr/share/i2p" + if [ "`uname -s`" = "Darwin" ]; then +- if [ -d "%USER_HOME/Library/Application Support" ]; then +- I2P_CONFIG_DIR="%USER_HOME/Library/Application Support/i2p" ++ if [ -d "$USER_HOME/Library/Application Support" ]; then ++ I2P_CONFIG_DIR="$USER_HOME/Library/Application Support/i2p" + else +- I2P_CONFIG_DIR="%USER_HOME/.i2p" ++ I2P_CONFIG_DIR="$USER_HOME/.i2p" + fi + else +- I2P_CONFIG_DIR="%USER_HOME/.i2p" ++ I2P_CONFIG_DIR="$USER_HOME/.i2p" + fi +-I2PTEMP="%SYSTEM_java_io_tmpdir" ++I2PTEMP="$SYSTEM_java_io_tmpdir" + # PORTABLE installation: + # Use the following instead. +-#I2PTEMP="%INSTALL_PATH" ++#I2PTEMP="/usr/share/i2p" + + # Application + APP_NAME="i2p" +--- runplain.sh 2015-03-15 02:02:29.078407997 -0700 ++++ runplain.sh 2015-03-15 02:18:46.530422508 -0700 +@@ -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="$SYSTEM_java_io_tmpdir" + + # Having IPv6 enabled can cause problems with certain configurations. Changing the + # next value to true may help. +--- wrapper.config 2015-03-15 02:02:29.022408661 -0700 ++++ wrapper.config 2015-03-15 02:21:50.666238909 -0700 +@@ -60,13 +60,17 @@ + # 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/jakarta-jstl/lib/*.jar ++wrapper.java.classpath.3=/usr/share/java-service-wrapper/lib/*.jar ++wrapper.java.classpath.4=/usr/share/bcprov/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 ++wrapper.java.library.path.1=/usr/share/i2p ++wrapper.java.library.path.2=/usr/share/i2p/lib ++wrapper.java.library.path.3=/usr/lib/java-service-wrapper + + # Java Bits. On applicable platforms, tells the JVM to run in 32 or 64-bit mode. + wrapper.java.additional.auto_bits=TRUE +@@ -76,7 +80,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 +@@ -96,11 +100,11 @@ + # 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=-Di2p.dir.pid="/usr/share/i2p" + #wrapper.java.additional.7.stripquotes=TRUE +-#wrapper.java.additional.8=-Di2p.dir.temp="$INSTALL_PATH" ++#wrapper.java.additional.8=-Di2p.dir.temp="/usr/share/i2p" + #wrapper.java.additional.8.stripquotes=TRUE +-#wrapper.java.additional.9=-Di2p.dir.config="$INSTALL_PATH" ++#wrapper.java.additional.9=-Di2p.dir.config="/usr/share/i2p" + #wrapper.java.additional.9.stripquotes=TRUE + # + # Uncomment this for better performance. +@@ -147,7 +151,7 @@ + # 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=/usr/share/i2p/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, +@@ -220,7 +224,7 @@ + #wrapper.java.pidfile=$SYSTEM_java_io_tmpdir/routerjvm.pid + # PORTABLE installation: + # Use the following instead. +-#wrapper.java.pidfile=$INSTALL_PATH/routerjvm.pid ++#wrapper.java.pidfile=/usr/share/i2p/routerjvm.pid + # pid file for the service monitoring the JVM + # + # From i2prouter: +@@ -238,7 +242,7 @@ + #wrapper.pidfile=$SYSTEM_java_io_tmpdir/i2p.pid + # PORTABLE installation: + # Use the following instead. +-#wrapper.pidfile=$INSTALL_PATH/i2p.pid ++#wrapper.pidfile=/usr/share/i2p/i2p.pid + + #******************************************************************** + # Wrapper General Properties diff --git a/net-p2p/i2p/files/i2p.initd b/net-p2p/i2p/files/i2p.initd new file mode 100644 index 000000000000..ca39586113ed --- /dev/null +++ b/net-p2p/i2p/files/i2p.initd @@ -0,0 +1,36 @@ +#!/sbin/runscript +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +depend() { + need net +} + +HOME="/var/lib/i2p" +USER_HOME="$HOME" +JAVABINARY="/etc/java-config-2/current-system-vm/bin/java" +INSTALL_PATH="/usr/share/i2p" +I2P="$INSTALL_PATH" +I2P_CONFIG_DIR="$USER_HOME/.i2p" +SYSTEM_java_io_tmpdir="$I2P_CONFIG_DIR" +I2PTEMP="$SYSTEM_java_io_tmpdir" +LOGFILE="$I2P_CONFIG_DIR/wrapper.log" +PIDFILE="/var/run/i2p.pid" +WRAPPER_CMD="$I2P/i2psvc" +WRAPPER_CONF="$I2P/wrapper.config" + +start() { + ebegin "Starting I2P" + start-stop-daemon --start -b -m -u i2p --pidfile "$PIDFILE" --quiet --exec $WRAPPER_CMD -- -c $WRAPPER_CONF wrapper.daemonize=FALSE wrapper.syslog.ident=i2p wrapper.java.command="$JAVABINARY" wrapper.name=i2p wrapper.displayname="I2P Service" wrapper.statusfile="$I2P_CONFIG_DIR/i2p.status" wrapper.java.statusfile="$I2P_CONFIG_DIR/i2p.java.status" wrapper.logfile="$LOGFILE" + sleep 1 + [ -e "$PIDFILE" -a -e /proc/$(cat "$PIDFILE") ] + eend $? +} + +stop() { + ebegin "Stopping I2P" + start-stop-daemon --stop -u i2p --pidfile "$PIDFILE" --quiet --exec $WRAPPER_CMD -R SIGTERM/20 SIGKILL/20 -P + eend $? +} + diff --git a/net-p2p/i2p/files/i2p.service b/net-p2p/i2p/files/i2p.service new file mode 100644 index 000000000000..ccbadbd4d167 --- /dev/null +++ b/net-p2p/i2p/files/i2p.service @@ -0,0 +1,13 @@ +[Unit] +Description=Invisible Internet Project +After=network.target + +[Service] +User=i2p +Type=forking +ExecReload=/usr/bin/i2prouter restart +ExecStart=/usr/bin/i2prouter start +ExecStop=/usr/bin/i2prouter stop + +[Install] +WantedBy=multi-user.target diff --git a/net-p2p/i2p/i2p-0.9.18.ebuild b/net-p2p/i2p/i2p-0.9.18.ebuild new file mode 100644 index 000000000000..22ac101f0325 --- /dev/null +++ b/net-p2p/i2p/i2p-0.9.18.ebuild @@ -0,0 +1,97 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +inherit eutils java-pkg-2 java-ant-2 systemd user + +DESCRIPTION="A privacy-centric, anonymous network." +HOMEPAGE="https://geti2p.net" +SRC_URI="https://download.i2p2.de/releases/${PV}/i2psource_${PV}.tar.bz2" + +LICENSE="Apache-2.0 Artistic BSD CC-BY-2.5 CC-BY-3.0 CC-BY-SA-3.0 EPL-1.0 GPL-2 GPL-3 LGPL-2.1 LGPL-3 MIT public-domain WTFPL-2" +SLOT="0" +# Until the deps reach other arches +KEYWORDS="~amd64 ~x86" +IUSE="nls" +# dev-java/ant-core is automatically added due to java-ant-2.eclass +DEPEND=">=dev-java/bcprov-1.50 + dev-java/eclipse-ecj:* + dev-java/jakarta-jstl + dev-java/java-service-wrapper + dev-java/jrobin + dev-java/slf4j-api + dev-libs/gmp:* + nls? ( sys-devel/gettext ) + >=virtual/jdk-1.6:=" +RDEPEND="${DEPEND} >=virtual/jre-1.6" + +EANT_BUILD_TARGET="pkg" +EANT_GENTOO_CLASSPATH="jakarta-jstl,java-service-wrapper,jrobin,slf4j-api" + +pkg_setup() { + enewgroup i2p + enewuser i2p -1 -1 /var/lib/i2p i2p -m +} + +src_unpack() { + unpack ${A} + cd "${S}" + java-ant_rewrite-classpath +} + +src_prepare() { + # We're on GNU/Linux, we don't need .exe files + echo "noExe=true" > override.properties + if ! use nls; then + echo "require.gettext=false" >> override.properties + fi +} + +src_install() { + # Using ${D} here results in an error. Docs say use $ROOT + i2p_home="${ROOT}/usr/share/i2p" + # Patch the relevant files. This needs to be in src_install due to + # preinst() generating the files we're patching + cd pkg-temp + epatch "${FILESDIR}/i2p-0.9.18_fix-paths.patch" + + # This is ugly, but to satisfy all non-system .jar dependencies, jetty and + # systray4j would need to be packaged. The former would be too large a task + # for an unseasoned developer and systray4j hasn't been touched in over 10 + # years. This seems to be the most pragmatic solution + java-pkg_jarinto "${i2p_home}/lib" + for i in BOB commons-el commons-logging i2p i2psnark i2ptunnel \ + jasper-compiler jasper-runtime javax.servlet jbigi jetty* mstreaming org.mortbay.* router* \ + sam standard streaming systray systray4j; do + java-pkg_dojar lib/${i}.jar + done + + # Set up symlinks for binaries + dosym /usr/bin/wrapper ${i2p_home}/i2psvc + dosym ${i2p_home}/i2prouter /usr/bin/i2prouter + dosym ${i2p_home}/eepget /usr/bin/eepget + + # Install main files and basic documentation + exeinto ${i2p_home} + insinto ${i2p_home} + doins blocklist.txt hosts.txt *.config + doexe eepget i2prouter runplain.sh + dodoc history.txt INSTALL-headless.txt LICENSE.txt + doman man/* + + # Install other directories + doins -r certificates docs eepsite geoip scripts + dodoc -r licenses + java-pkg_dowar webapps/*.war + + # Install daemon files + newinitd "${FILESDIR}/i2p.initd" i2p + systemd_newunit "${FILESDIR}"/i2p.service i2p.service +} + +pkg_postinst() { + elog "Custom configuration belongs in /var/lib/i2p/.i2p/ to avoid being overwritten." + elog "I2P can be configured through the web interface at http://localhost:7657/index.jsp" +} diff --git a/net-p2p/i2p/metadata.xml b/net-p2p/i2p/metadata.xml new file mode 100644 index 000000000000..316d7cc335ca --- /dev/null +++ b/net-p2p/i2p/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>java</herd> +<herd>proxy-maintainers</herd> +<maintainer> + <email>sam@cmpct.info</email> + <description>Proxy-maintainer; add or CC them for bugs</description> +</maintainer> +<maintainer><email>zlg@gentoo.org</email></maintainer> +<longdescription>I2P is an anonymous network, exposing a simple layer that applications can use to anonymously and securely send messages to each other.</longdescription> +<use> +<flag name="nls">Adds Native Language Support using GNU gettext.</flag> +</use> +</pkgmetadata> |