summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzlg <zlg@gentoo.org>2015-05-22 05:44:58 +0000
committerzlg <zlg@gentoo.org>2015-05-22 05:44:58 +0000
commitf79eb9a12ea81ef87321469d70e6a89d8bc6e0ca (patch)
tree6759fb96c269eb69d1b6004c084c900339c66a1d /net-p2p/i2p
parentVersion bump. (diff)
downloadgentoo-2-f79eb9a12ea81ef87321469d70e6a89d8bc6e0ca.tar.gz
gentoo-2-f79eb9a12ea81ef87321469d70e6a89d8bc6e0ca.tar.bz2
gentoo-2-f79eb9a12ea81ef87321469d70e6a89d8bc6e0ca.zip
New ebuild for i2p wrt 297660. Thanks Andrey Tikhomirov, M. B., Chaser, et al
(Portage version: 2.2.20/cvs/Linux x86_64, signed Manifest commit with key 5039E170)
Diffstat (limited to 'net-p2p/i2p')
-rw-r--r--net-p2p/i2p/ChangeLog11
-rw-r--r--net-p2p/i2p/Manifest7
-rw-r--r--net-p2p/i2p/files/i2p-0.9.18_fix-paths.patch137
-rw-r--r--net-p2p/i2p/files/i2p.initd36
-rw-r--r--net-p2p/i2p/files/i2p.service13
-rw-r--r--net-p2p/i2p/i2p-0.9.18.ebuild97
-rw-r--r--net-p2p/i2p/metadata.xml10
7 files changed, 311 insertions, 0 deletions
diff --git a/net-p2p/i2p/ChangeLog b/net-p2p/i2p/ChangeLog
new file mode 100644
index 000000000000..ffd279deb07e
--- /dev/null
+++ b/net-p2p/i2p/ChangeLog
@@ -0,0 +1,11 @@
+# ChangeLog for net-p2p/i2p
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/i2p/ChangeLog,v 1.1 2015/05/22 05:44:58 zlg Exp $
+
+*i2p-0.9.18 (22 May 2015)
+
+ 22 May 2015; Daniel Campbell <zlg@gentoo.org> +i2p-0.9.18.ebuild,
+ +files/i2p-0.9.18_fix-paths.patch, +files/i2p.initd, +files/i2p.service,
+ +metadata.xml:
+ Add ebuild wrt bug 297660. Thanks Andrey Tikhomirov, M.B., Chaser, et al
+
diff --git a/net-p2p/i2p/Manifest b/net-p2p/i2p/Manifest
new file mode 100644
index 000000000000..54a2a5b13f1c
--- /dev/null
+++ b/net-p2p/i2p/Manifest
@@ -0,0 +1,7 @@
+AUX i2p-0.9.18_fix-paths.patch 5512 SHA256 6c5925d5520c864de751a96b619f8a46aa3cd625c08df1689b890352617adeef SHA512 05722506129d4a929dd5aca9a5054151346ec94d00206726772e6088b69ae727bc45b1104702e9bf515b08e0f8a05abe8aafe82082317f2d93cf28ea86dde55e WHIRLPOOL 50860da84690041a8ba360b25fc689c22c47932c7a03636c3618e160846460d903df6f4df08aa5052e8c24219a9a41004161c5d46d7c7e324ac687cde4b7ff88
+AUX i2p.initd 1177 SHA256 b14aaa3457784b3dd71e0cd4df2c801b1115801b418611b3ae4af2d5bd8e4976 SHA512 16a2fb5fe72fe979943d76c985558a6fc93886e2896784bcbce8191d63f31abee298967fd1d4824c98c02e64a92ce5c01d7c57415a70da160254fd1b3976bf48 WHIRLPOOL a27930fa66d7c0d2b2cd918be203915525fe965f9b9e31cc045c25eef1e62a5befb5070fa0b17b56270a5da043ac01a21283789fe16ee16b676926263319e638
+AUX i2p.service 244 SHA256 62b078c9cb011474fd1e73f29995a3e9106f6e48c90fff6e46010908676c4086 SHA512 409438616aa655630e0e3256052fee831a8f68728b67eef077f5ea303d6dcccb06bbb549af5ee1023ef60ee6fa264d0170d991dbbdc0cc70335b030c73a7e6c8 WHIRLPOOL fa51dde6b4dfa51881736fe3f85507f9d0f86f1b7889c485dafa099fe5af94a289a5274c7f197af8d838b829a838344eb7652d006ae09b898b00c14786e5636d
+DIST i2psource_0.9.18.tar.bz2 24147960 SHA256 6f02f38c933662874c485cb52ca800a9e07c36e74a26fdfeece65e25979beb4b SHA512 6cc336f94f8e4331b26d6e42958808f193ad3709ab6098981077c9390749233fb3d20df5c8fea34ec7810bc8846fd2e11ed7a79bf7c1ec68402b1ccacae999d6 WHIRLPOOL 467285b189af69b300c56756992e53979aa049515cb89ce0d5cbff80b9270c4ab1188f419dd0206b2406780b36ddde73861b5e2e69c7b2e7d8ed00b7bcaaa7a7
+EBUILD i2p-0.9.18.ebuild 2998 SHA256 ebecbf2b55d3fecc14989a9e124a4fb21a2db5b364f72cdd51939e268f8dc5ba SHA512 1645061d9b8907cd15c79817d18f96c26e7a06ee09cb3244ebcb45c0473140b33753ac716c942d13dda54728650066821dd8402ca0d4f05b7ffa6975dd2ec429 WHIRLPOOL f94f75b23cf747d699ed4fa9772818bc2124d039790a2899ad7e09fc60b225ab48b08eddbd912fbfda752dca03cbfd4a6e5520c713bb402c0e68cc0346fcef5b
+MISC ChangeLog 375 SHA256 ff32d05d871658eab3dab0ed0c18c210e0596764c04ba09b398792fabc63a3ca SHA512 bfaa440cb3fa29925606e9929aa8bdd19561999635381e944dc7aee737ce468db0ccdba19facaf8285485745741b3aed0ed6a84efca981fd0479e28ffaea1d94 WHIRLPOOL 47cff201503e282f6f185824f198749a2ef01a8adb88814425bb36ac07fb38d579b188bad2c903825f8789cc220c1dbf79dff986d56f1500f4ce75a7de819781
+MISC metadata.xml 482 SHA256 9122ea15f789fb627a0d0779d44bb89bf10eb051e8b0d3216947c64d303673c1 SHA512 f29b998f6f96ccb20f915dc14e99d884993d77210ba6c65aba9b662e8561a329c621ee9049b7504fb916b7eff8090b9ef236c9ed48c632283287df8fe9cc2908 WHIRLPOOL 5c6f2d5ab6e23d0d3224d3ae568bdf255a6dcd2740b09b70239860560f7f40a8c1987e7a188299b1221ca961b75530503004a81bb9496d939507ba1f1414f676
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..1899bc681a26
--- /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
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/i2p/files/i2p.initd,v 1.1 2015/05/22 05:44:58 zlg Exp $
+
+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..1c991298b0e5
--- /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
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/i2p/i2p-0.9.18.ebuild,v 1.1 2015/05/22 05:44:58 zlg Exp $
+
+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..e7203d0c8f6a
--- /dev/null
+++ b/net-p2p/i2p/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>java</herd>
+<maintainer><email>maintainer-wanted@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>