diff --git a/build.xml b/build.xml
index 66004c67f7..ca56f94182 100644
--- a/build.xml
+++ b/build.xml
@@ -45,7 +45,18 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1030,38 +1041,51 @@
-
+
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
+
+
+
+
diff --git a/debian/NEWS b/debian/NEWS
new file mode 100644
index 0000000000..c738572d52
--- /dev/null
+++ b/debian/NEWS
@@ -0,0 +1,9 @@
+i2p (0.8.6-5) UNRELEASED; urgency=low
+
+ The file /etc/i2p/wrapper.service is no longer shipped in this package.
+ Instead the file /etc/i2p/wrapper.config is used with the changes that used to
+ be in wrapper.service have been moved to the initscript. If you have changed
+ the amount of memory set aside for I2P, you'll need to make that change to
+ /etc/i2p/wrapper.config.
+
+ -- Kill Your TV Wed, 25 May 2011 22:17:05 +0000
diff --git a/debian/README.Debian b/debian/README.Debian
new file mode 100644
index 0000000000..ec626b7427
--- /dev/null
+++ b/debian/README.Debian
@@ -0,0 +1,23 @@
+There are a few changes in this package from upstream.
+
+- eepget and i2prouter are installed to /usr/bin.
+
+- If you run I2P using the i2prouter or runplain scripts,
+the wrapper.log is in /tmp and the other logs are in
+~/.i2p/logs.
+
+- If you run i2p with the initscript in /etc/init.d/i2p,
+all logs are written to /var/logs/i2p.
+
+- wrapper.config (in /etc/i2p) contains the settings for
+/usr/bin/i2prouter. wrapper.service in /etc/i2p is read when
+using the initscript.
+
+- SAM and BOB default to enabled out of the box.
+
+- jbigi is compiled as a dynamic .so. Unfortunately I can't
+ get jcpuid to compile, so I just 'steal' the .so from the
+ jbigi.jar file.
+
+- runplain.sh is stored in /usr/share/doc/i2p/examples.
+
diff --git a/debian/README.source b/debian/README.source
new file mode 100644
index 0000000000..5dde0bf848
--- /dev/null
+++ b/debian/README.source
@@ -0,0 +1,58 @@
+This package uses quilt to manage all modifications to the upstream
+source. Changes are stored in the source package as diffs in
+debian/patches and applied during the build.
+
+To configure quilt to use debian/patches instead of patches, you want
+either to export QUILT_PATCHES=debian/patches in your environment
+or use this snippet in your ~/.quiltrc:
+
+ for where in ./ ../ ../../ ../../../ ../../../../ ../../../../../; do
+ if [ -e ${where}debian/rules -a -d ${where}debian/patches ]; then
+ export QUILT_PATCHES=debian/patches
+ break
+ fi
+ done
+
+To get the fully patched source after unpacking the source package, cd to
+the root level of the source package and run:
+
+ quilt push -a
+
+The last patch listed in debian/patches/series will become the current
+patch.
+
+To add a new set of changes, first run quilt push -a, and then run:
+
+ quilt new
+
+where is a descriptive name for the patch, used as the filename in
+debian/patches. Then, for every file that will be modified by this patch,
+run:
+
+ quilt add
+
+before editing those files. You must tell quilt with quilt add what files
+will be part of the patch before making changes or quilt will not work
+properly. After editing the files, run:
+
+ quilt refresh
+
+to save the results as a patch.
+
+Alternately, if you already have an external patch and you just want to
+add it to the build system, run quilt push -a and then:
+
+ quilt import -P /path/to/patch
+ quilt push -a
+
+(add -p 0 to quilt import if needed). as above is the filename to
+use in debian/patches. The last quilt push -a will apply the patch to
+make sure it works properly.
+
+To remove an existing patch from the list of patches that will be applied,
+run:
+
+ quilt delete
+
+You may need to run quilt pop -a to unapply patches first before running
+this command.
diff --git a/debian/README.txt b/debian/README.txt
deleted file mode 100644
index e2b38b5429..0000000000
--- a/debian/README.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-This sets up a binary package with the following:
-
-- A new user i2psvc (a lot of people already have an i2p user)
-- i2psvc home is /var/lib/i2p
-- $I2P is /usr/share/i2p, owned by i2psvc
-- i2psvc router directory is /var/lib/i2p/i2p-config (hack in WorkingDir.java)
-- i2p daemon script in /etc/init.d/i2p
-- i2prouter and eepget scripts in /usr/bin for other users to run it
-- Users other than i2psvc cannot update via i2p, as they don't have
- write permissions in $I2P
-- Configured temp directory is /tmp
-- linux and linux64 (i386) wrapper libs only
-
-
-Todo:
-
-- Remove lib/jbigi.jar, just build and include dynamic libjbigi
- and the linux libjcpuid (and add dependency on libgmp)
-- Initial router.config for i2psvc (without confusing i2p that
- the router directory already exists):
- * Disable browser launch at startup
- * Move i2psnark dir, eepsite dir, log dir, etc. up one level
diff --git a/debian/buildpackage.sh b/debian/buildpackage.sh
deleted file mode 100755
index 5806a438f5..0000000000
--- a/debian/buildpackage.sh
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/bin/sh
-# This script takes one argument, which is the architecture to build for,
-# or "source".
-
-echo Target architecture: $1
-VERSION=`grep String\ VERSION ../core/java/src/net/i2p/CoreVersion.java | cut -d\" -f2`
-echo "I2P Version: ${VERSION}"
-builddir="packages/$1/i2p-${VERSION}"
-
-# dpkg-buildpackage doesn't have an option to change the output directory,
-# so copy or symlink i2p.i2p in ${builddir} and call dpkg-buildpackage
-# in that directory. The output files are generated one directory above.
-if [ "$1" = "source" ]; then
- cd ..
- ant clean
- # dpkg-source (called by dpkg-buildpackage) can't handle symlinks, so copy the i2p.i2p tree
- tempdir=../_i2p_copy_temp___
- cp -a . ${tempdir}
- mkdir -p debian/packages/$1
- mv ${tempdir} debian/${builddir}
- cd debian/${builddir}
- dpkg-buildpackage -I_MTN -Idebian/packages -S
-else
- mkdir -p ${builddir}
- cd ${builddir}
- # make symlinks for all files and dirs in i2p.i2p
- find ../../../.. -not -name . -and -not -name .. -maxdepth 1 -exec ln -fs {} \;
- dpkg-buildpackage -I_MTN -b -a$1
-fi
-if [ "$?" -ne 0 ]; then
- exit 1
-fi
-
-cd ../../..
-rm -rf ${builddir}
diff --git a/debian/changelog b/debian/changelog
index 110bae03b3..c242704292 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,30 +1,139 @@
-i2p (0.8.1-4) all; urgency=low
- * I2P 0.8.1-6
- * Closes: #448638
- -- Hungry Hobo Mon, 24 Nov 2010 17:14:57 +0000
+i2p (0.8.6-5) UNRELEASED; urgency=low
-i2p (0.8.1-3) all; urgency=low
- * I2P 0.8.1-3
- -- Hungry Hobo Mon, 21 Nov 2010 17:14:57 +0000
+ * Remove /etc/i2p/wrapper.service and add the changed configs to the
+ initscript.
+ * Create debian/copyright at build time.
-i2p (0.8.1) all; urgency=low
- * Speedups
- * Bugfixes
- * I2PSnark UI redesign
- * Debian packaging improvements
- -- Hungry Hobo Mon, 18 Nov 2010 17:14:57 +0000
+ -- Kill Your TV Wed, 25 May 2011 21:11:40 +0000
-i2p (0.8.0-1) all; urgency=low
- * I2P 0.8
- * Debian packaging improvements
- -- Hungry Hobo Mon, 08 Nov 2010 17:14:57 +0000
-i2p (0.7.10-0) testing; urgency=low
- * tweaks
- um...
- -- zzz Wed, 31 Jan 2010 17:14:57 +0000
+i2p (0.8.6-4) stable; urgency=low
+
+ * backported patch from 9a26dcaef3687ff7fa08cf3b3eb2180ebb2dedde to fix
+ missing "addWebApplications" in Jetty.
+
+ -- Kill Your TV Sun, 22 May 2011 19:00:37 +0000
+
+i2p (0.8.6-3) stable; urgency=low
+
+ [Kill Your TV]
+ * Creating libjbigi-jni packages again. Backported patch from MTN so that
+ jbigi can be built for i386
+ * Drop build-dep on unzip since jbigi can be built.
+ * Check to see if doc/libjbigi-jni is a directory and remove it. It is
+ supposed to be a symlink to doc/i2p
+ * Don't chown $I2P to i2psvc
+ * Add Build-Dep for tor-geoipdb and remove from debian/
+ * Add launch-i2psnark to doc/examples
+ * Remove obsolete build-dep on default-jdk-builddep
+ [Karl Goetz]
+ * Move adduser to depends from pre-depends
+ * Tidy postinst
+
+ -- Kill Your TV Fri, 20 May 2011 22:03:52 +0000
+
+i2p (0.8.6-2) stable; urgency=low
+
+ * Fix permissions bug for /var/run/i2p, reported by "signhere" on IRC
+
+ -- Kill Your TV Tue, 17 May 2011 16:30:29 +0000
+
+i2p (0.8.6-1) stable; urgency=low
+
+ * New upstream version
+
+ -- Kill Your TV Tue, 17 May 2011 12:30:07 +0000
+
+i2p (0.8.5-4) stable; urgency=low
+
+ * Correct lintian error
+
+ -- Kill Your TV Sun, 15 May 2011 16:20:39 +0000
+
+i2p (0.8.5-3) stable; urgency=low
+
+ * *Sigh* Set debian/i2p.default run_daemon to false
+
+ -- Kill Your TV Fri, 29 Apr 2011 09:54:39 +0000
+
+i2p (0.8.5-2) stable; urgency=low
+
+ * Change debconf priority to medium.
+ * RUN_DAEMON defaults to false. Earlier versions defaulted to true. Since
+ the priority is changing, this should as well.
+ * Split jbigi into its own source package
+ * Update geoip.txt
+ * Update Suggests:
+
+ -- Kill Your TV Mon, 25 Apr 2011 17:00:43 +0000
+
+i2p (0.8.5-1) stable; urgency=low
+
+ * New upstream
+
+ -- Kill Your TV Mon, 18 Apr 2011 15:41:42 +0000
+
+i2p (0.8.4-4) stable; urgency=low
+
+ * Update geoip from tor-0.2.2.23-alpha
+
+ -- Kill Your TV Sat, 09 Apr 2011 23:34:11 +0000
+
+i2p (0.8.4-3) stable; urgency=low
+
+ * Back out upgrade 'do you want to reboot' logic since it's utterly borked.
+
+ -- Kill Your TV Thu, 17 Mar 2011 18:54:09 +0000
+
+i2p (0.8.4-2) stable; urgency=low
+
+ * Stop including /usr/share/i2p/lib/jbigi.jar.
+ * Compile a dynamic jbigi and create a new package, libjbigi-jni. Since I
+ can't get jcpuid to compile I take this library from jbigi.jar.
+ Unfortunately it was not compiled with -fPIC, causing lintian to complain.
+ Additionally it is a 32bit compile, forcing libc-i386 to be installed on
+ amd64 boxes.
+ * Add dependency on libc-i386 because of jcpuid and a build-dep on unzip for
+ the same reason.
+ * Don't display errors generated from chowning files that don't exist.
+ * Bug fix: Somehow I missed packaging the geoip information before. Oops.
+ * Bug fix: Add history.txt to /usr/share/i2p. I didn't realize it was shown
+ in the console at /help.
+ * Since I'm packaging the missing geoip information, I use an updated
+ geoiodb from tor (taken from Debian package tor-geoipdb version
+ 0.2.2.22-alpha-1)
+ * Patching countries.txt to add entries that are in Maxmind's database.
+ * Now using debconf to ask about running as a daemon.
+ * From this point forward, users will be asked to confirm that they want to
+ upgrade this package, due to it requiring a router reboot.
+ * Updated README.Debian to better explain differences compared with
+ upstream.
+ * Add history.txt to /usr/share/i2p
+
+ -- Kill Your TV Sun, 13 Mar 2011 10:45:47 +0000
+
+i2p (0.8.4-1) stable; urgency=low
+
+ * New upstream version, monotone revision
+ fea6969d789a6b85396439be9906abb9b4a4a405
+
+ -- Kill Your TV Thu, 03 Mar 2011 11:37:37 +0000
+
+i2p (0.8.3-2) testing; urgency=low
+
+ * Minor changes to initscript
+
+ -- Kill Your TV Wed, 26 Jan 2011 14:29:50 +0000
+
+i2p (0.8.3-1) testing; urgency=low
+
+ * New upstream
+
+ -- Kill Your TV Mon, 24 Jan 2011 20:23:38 +0000
+
+i2p (0.8.2-1) testing; urgency=low
+
+ * Initial packaging
+
+ -- Kill Your TV Sun, 23 Jan 2011 00:03:31 +0000
-i2p (0.7-0) testing; urgency=low
- * just setting this debian thing up
- um...
- -- dream Wed, 01 Jan 2009 17:14:57 +0000
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000000..7f8f011eb7
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+7
diff --git a/debian/conffiles b/debian/conffiles
deleted file mode 100644
index 0c0895bbca..0000000000
--- a/debian/conffiles
+++ /dev/null
@@ -1,9 +0,0 @@
-/etc/init.d/i2p
-/etc/i2p/blocklist.txt
-/etc/i2p/clients.config
-/etc/i2p/hosts.txt
-/etc/i2p/i2psnark.config
-/etc/i2p/i2ptunnel.config
-/etc/i2p/jetty-i2psnark.xml
-/etc/i2p/systray.config
-/etc/i2p/wrapper.config
diff --git a/debian/control b/debian/control
index fbe7deb155..c8242d582f 100644
--- a/debian/control
+++ b/debian/control
@@ -1,19 +1,68 @@
Source: i2p
-Maintainer: Hungry Hobo
+Maintainer: Kill Your TV
+Uploaders: zzz
Section: net
-Standards-Version: 3.8.4
+Standards-Version: 3.9.2
Priority: optional
+Bugs: mailto:killyourtv@i2pmail.org
Homepage: http://www.i2p2.de/
-Build-Depends: libc6-dev (>= 2.10), sun-java6-jdk | openjdk-6-jdk | default-jdk | java-sdk, ant, fakeroot, gettext
+Build-Depends: debhelper (>= 7.0.50~),
+ ant,
+ debconf,
+ default-jdk,
+ libgmp3-dev,
+ po-debconf
+Build-Depends-Indep: junit, tor-geoipdb
Package: i2p
-Architecture: i386 amd64
+Architecture: all
Section: net
Priority: optional
-Depends: ${shlibs:Depends}, sun-java6-jre | default-jre | java-runtime
+Depends: ${misc:Depends}, ${java:Depends}, ${shlibs:Depends}, default-jre | java5-runtime | java6-runtime,
+ adduser,
+ libjbigi-jni (>= ${source:Version}),
+ libjbigi-jni (<< ${source:Version}.1~),
+ lsb-base (>= 3.2-14),
+ service-wrapper
+Suggests: tor,
+ i2pfox,
+ mail-client,
+ mail-reader,
+ news-reader,
+ polipo,
+ privoxy,
+ syndie,
+ www-browser,
+ xul-ext-torbutton
Description: Load-balanced unspoofable packet switching network
I2P is an anonymizing network, offering a simple layer that identity-sensitive
applications can use to securely communicate. All data is wrapped with several
layers of encryption, and the network is both distributed and dynamic, with no
trusted parties.
-Homepage: http://www.i2p2.de/
+
+Package: libjbigi-jni
+Architecture: any
+Section: java
+Priority: optional
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Homepage: http://www.i2p2.de/jbigi
+Description: Java Big Integer library
+ This Package contains the libjbigi JNI library
+ .
+ libjbigi is a math library that is part of the I2P installation. Use of this
+ library greatly enhances the efficiency of cryptographic algorithms, such as
+ the ones used by I2P. You can expect to see a 5-7x speed improvement on certain
+ tasks, such as elGamal encryption/decryption.
+
+Package: i2p-doc
+Architecture: all
+Section: doc
+Depends: ${misc:Depends}
+Suggests: i2p, default-jdk-doc
+Description: Documentation for I2P
+ I2P is an anonymizing network, offering a simple layer that identity-sensitive
+ applications can use to securely communicate. All data is wrapped with several
+ layers of encryption, and the network is both distributed and dynamic, with no
+ trusted parties.
+ .
+ This package contains the Javadoc files.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000000..bccf1ffb3a
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,267 @@
+This package was Debianized by kytv
+Sun, 23 Jan 2011 20:26:51 +0000
+
+It was downloaded from http://www.i2p2.de
+
+I2P is tracked upstream using the Monotone VCS
+Complete information on fetching the source with monotone can be found
+at http://www.i2p2.de/newdevelopers#getting-the-i2p-code
+
+
+
+This product includes both public domain code and licensed code as described below.
+For all code, unless otherwise stated in the appropriate license, the following applies:
+
+
+ NO WARRANTY
+
+ BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+
+
+LICENSES
+--------
+
+Core:
+Public domain except as listed below:
+
+ ElGamal and DSA code:
+ Copyright (c) 2003, TheCrypto
+ See licenses/LICENSE-ElGamalDSA.txt
+
+ SHA256 and HMAC-SHA256:
+ Copyright (c) 2000 - 2004 The Legion Of The Bouncy Castle
+ See licenses/LICENSE-SHA256.txt
+
+ AES code:
+ Under the Cryptix (MIT) license, written by the Cryptix team
+ (That's what our website says but all our AES code looks like it is public domain)
+
+ Crypto filters:
+ From the xlattice app - http://xlattice.sourceforge.net/
+ See licenses/LICENSE-BSD.txt
+
+ SNTP code:
+ Copyright (c) 2004, Adam Buckley
+ See licenses/LICENSE-SNTP.txt
+
+ PRNG:
+ Copyright (C) 2001, 2002, Free Software Foundation, Inc.
+ See licenses/LICENSE-LGPLv2.1.txt
+
+ GMP 4.1.3 / 4.1.4:
+ Copyright 1991, 1996, 1999, 2000 Free Software Foundation, Inc.
+ See licenses/LICENSE-LGPLv2.1.txt
+
+ HashCash code:
+ Copyright 2006 Gregory Rubin grrubin@gmail.com
+ See licenses/LICENSE-HashCash.txt
+
+ GettextResource from gettext v0.18:
+ Copyright (C) 2001, 2007 Free Software Foundation, Inc.
+ See licenses/LICENSE-LGPLv2.1.txt
+
+ SSLEepGet:
+ Contains some code Copyright 2006 Sun Microsystems, Inc.
+ See licenses/LICENSE-InstallCert.txt
+
+ BlockFile:
+ Copyright (c) 2006, Matthew Estes
+ See licenses/LICENSE-BlockFile.txt
+
+
+Router:
+Public domain except as listed below:
+ UPnP.java:
+ From freenet
+ See licenses/LICENSE-GPLv2.txt
+
+ UPnP subsystem 1.7:
+ Copyright (C) 2003-2006 Satoshi Konno
+ See licenses/LICENSE-UPnP.txt
+
+ GeoIP data free to use, courtesy http://ip-to-country.webhosting.info/
+
+
+Installer:
+ Launch4j 3.0.1:
+ Copyright (c) 2004, 2008 Grzegorz Kowal
+ See licenses/LICENSE-Launch4j.txt (in binary packages)
+ See installer/lib/launch4j/LICENSE.txt (in source packages)
+ The following projects are used by Launch4j...
+ MinGW binutils (http://www.mingw.org/)
+
+ Commons BeanUtils (http://jakarta.apache.org/commons/beanutils/)
+
+ Commons Logging (http://jakarta.apache.org/commons/logging/)
+ See licenses/LICENSE-Apache1.1.txt
+ See licenses/NOTICE-Commons-Logging.txt
+
+ XStream (http://xstream.codehaus.org/)
+ Copyright (c) 2003-2004, Joe Walnes
+ See licenses/LICENSE-XStream.txt
+
+ JGoodies Forms (http://www.jgoodies.com/freeware/forms/)
+ Copyright (c) 2002-2004 JGoodies Karsten Lentzsch. All rights reserved.
+ See licenses/LICENSE-JGoodies-Forms.txt
+
+ JGoodies Looks (http://www.jgoodies.com/freeware/looks/)
+ Copyright (c) 2003 JGoodies Karsten Lentzsch. All rights reserved.
+ See licenses/LICENSE-JGoodies-Looks.txt
+
+ Foxtrot (http://foxtrot.sourceforge.net/)
+ Copyright (c) 2002, Simone Bordet & Marco Cravero. All rights reserved.
+ See licenses/LICENSE-Foxtrot.txt
+
+ Nuvola Icon Theme (http://www.icon-king.com)
+ See licenses/LICENSE-LGPLv2.1.txt
+
+ Forms were created using Abeille Forms Designer (https://abeille.dev.java.net/)
+
+ Izpack 4.3.0:
+ Copyright (c) 2001-2008 Julien Ponge
+ See licenses/LICENSE-Apache2.0.txt
+
+
+
+Wrapper 3.1.1:
+ Copyright (c) 1999, 2004 Tanuki Software
+ See licenses/LICENSE-Wrapper.txt
+
+
+
+Applications:
+
+ Addressbook:
+ Copyright (c) 2004 Ragnarok
+ See licenses/LICENSE-Addressbook.txt
+
+ BOB:
+ Copyright (C) sponge
+ DWTFYWTPL
+
+ I2PSnark:
+ Copyright (C) 2003 Mark J. Wielaard
+ See licenses/LICENSE-GPLv2.txt
+ Silk icons: See licenses/LICENSE-SilkIcons.txt
+
+ I2PTunnel:
+ (c) 2003 - 2004 mihi
+ GPLv2 with exception.
+ See licenses/LICENSE-I2PTunnel.txt
+ See licenses/LICENSE-GPLv2.txt
+
+ I2PTunnel SOCKS Proxy:
+ Copyright (c) 2004 by human
+ GPLv2 with exception.
+ See licenses/LICENSE-I2PTunnel.txt
+ See licenses/LICENSE-GPLv2.txt
+
+ I2PTunnel UDP and Streamr:
+ By welterde.
+ See licenses/LICENSE-GPLv2.txt
+
+ Jetty 5.1.15:
+ Copyright 2000-2004 Mort Bay Consulting Pty. Ltd.
+ See licenses/LICENSE-Apache1.1.txt
+ See licenses/LICENSE-Apache2.0.txt
+ See licenses/NOTICE-Commons-Logging.txt
+
+ JRobin 1.5.9.1:
+ See licenses/LICENSE-LGPLv2.1.txt
+
+ Ministreaming Lib:
+ By mihi.
+ See licenses/LICENSE-BSD.txt
+
+ Proxyscript:
+ By Cervantes.
+ Public domain.
+
+ Router console:
+ Public domain.
+ Flag icons: public domain, courtesy mjames@gmail.com http://www.famfamfam.com/
+ Silk icons: See licenses/LICENSE-SilkIcons.txt
+
+ GeoIP Data:
+ Copyright (c) 2003 Direct Information Pvt. Ltd. All Rights Reserved.
+ See licenses/LICENSE-GeoIP.txt
+
+ Router Console and I2PSnark themes:
+ "Man with hat over face" & related images licensed under a Creative Commons 2.0 license.
+ Original photos by Florian Kuhlmann. http://www.flickr.com/photos/floriankuhlmann/3117758155
+
+ SAM:
+ Public domain.
+
+ Streaming Lib:
+ Public domain.
+
+ SusiDNS:
+ Copyright (C) 2005
+ See licenses/LICENSE-GPLv2.txt
+ Uses Apache Jakarta Standard Tag Library 1.1.2:
+ See licenses/LICENSE-Apache2.0.txt
+
+ SusiMail:
+ Copyright (C) 2004-2005
+ See licenses/LICENSE-GPLv2.txt
+
+ Systray:
+ Public domain.
+ Bundles systray4j code:
+ See licenses/LICENSE-GPLv2.txt
+
+
+
+Other Applications and Libraries
+--------------------------------
+The following applications and libraries are not used or bundled in
+binary packages, therefore the licenses are not included in binary
+distributions. See the source package for the additional license information.
+
+ Admin Manager:
+ Public domain
+
+ Atalk:
+ Public domain
+
+ BOB Demos:
+ Copyright (C) sponge
+ DWTFYWTPL
+
+ Desktopgui
+ Copyright (c) Mathias De Maré
+ See apps/desktopgui/LICENSE
+
+ SAM C Library:
+ Copyright (c) 2004, Matthew P. Cashdollar
+ See apps/sam/c/doc/license.txt
+
+ SAM C# Library:
+ Public domain.
+ See apps/sam/csharp/README
+
+ SAM Perl Library:
+ See licenses/LICENSE-GPLv2.txt
+
+ SAM Python Library:
+ Public domain.
diff --git a/debian/copyright.part1 b/debian/copyright.part1
deleted file mode 100644
index 009410c0d0..0000000000
--- a/debian/copyright.part1
+++ /dev/null
@@ -1,11 +0,0 @@
-This is the Debian package of I2P. The latest version of I2P can always be found at:
- http://www.i2p2.de/
-
-I2P was originally developed by jrandom and others. The main developer now is zzz.
-See http://www.i2p2.de/team for a list of past and present developers.
-
-I2P is maintained in Monotone. The current development version may be checked out
-by issuing the following two commands:
- mtn --db i2p.mtn dn init
- mtn --db i2p.mtn co mtn.i2p2.de i2p.i2p
-
diff --git a/debian/i2p-doc.doc-base b/debian/i2p-doc.doc-base
new file mode 100644
index 0000000000..222b794f4f
--- /dev/null
+++ b/debian/i2p-doc.doc-base
@@ -0,0 +1,9 @@
+Document: i2p-doc
+Title: API JavaDoc for i2p-doc
+Author:
+Abstract: This the API JavaDoc for i2p-doc
+Section: Programming/Java
+
+Format: HTML
+Index: /usr/share/doc/i2p/api
+Files: /usr/share/doc/i2p/api/*.html
diff --git a/debian/i2p-doc.install b/debian/i2p-doc.install
new file mode 100644
index 0000000000..fb5b592178
--- /dev/null
+++ b/debian/i2p-doc.install
@@ -0,0 +1 @@
+build/api usr/share/doc/i2p-doc
diff --git a/debian/i2p.config b/debian/i2p.config
new file mode 100755
index 0000000000..340266dbf4
--- /dev/null
+++ b/debian/i2p.config
@@ -0,0 +1,39 @@
+#!/bin/sh -e
+# I2P package configuration script
+
+conffile="/etc/default/i2p"
+
+get_config_file()
+{
+ config_field=$1
+ db_field=$2
+
+ if [ -f "$conffile" ] ; then
+ VALUE="$(grep "^[ ]*$config_field" $conffile | sed -e "s/^$config_field *= *\"\(.*\)\"/\1/g")"
+ if [ -n "$VALUE" ] ; then
+ db_set $db_field "$VALUE"
+ fi
+ fi
+}
+
+. /usr/share/debconf/confmodule
+db_version 2.0
+
+if [ "$1" = configure -o "$1" = reconfigure ] ; then
+ get_config_file STARTI2P i2p/daemon
+ get_config_file RUN_DAEMON i2p/daemon
+ db_input medium i2p/daemon || true
+
+ get_config_file I2PUSER i2p/user
+ db_input medium i2p/user || true
+ #db_input high i2p/stop_running_router || true
+
+ db_go
+ if dpkg --compare-versions "$2" lt 0.8.4-2 ; then
+ rm -f $conffile
+ fi
+
+fi
+
+exit 0
+
diff --git a/debian/i2p.default b/debian/i2p.default
new file mode 100644
index 0000000000..0bf8a47f0f
--- /dev/null
+++ b/debian/i2p.default
@@ -0,0 +1,13 @@
+# Defaults for i2p initscript (/etc/init.d/i2p)
+# This is a posix shell fragment
+
+# [automatically edited by postinst, do not change line format ]
+# Run 'dpkg-reconfigure -plow i2p' to change these values.
+
+# I2P daemon. If set to true, i2p will start automatically when
+# the computer boots
+RUN_DAEMON="false"
+
+# The user that runs the I2P daemon. By default this is set to i2psvc.
+# You may want to change this to use a manually installed I2P profile.
+I2PUSER="i2psvc"
diff --git a/debian/i2p.docs b/debian/i2p.docs
new file mode 100644
index 0000000000..ac63ab5ce8
--- /dev/null
+++ b/debian/i2p.docs
@@ -0,0 +1 @@
+pkg-temp/licenses
diff --git a/debian/i2p.examples b/debian/i2p.examples
new file mode 100644
index 0000000000..042c4dec8e
--- /dev/null
+++ b/debian/i2p.examples
@@ -0,0 +1,2 @@
+pkg-temp/runplain.sh
+apps/i2psnark/launch-i2psnark
diff --git a/debian/i2p.init b/debian/i2p.init
new file mode 100755
index 0000000000..c6dd2c61fb
--- /dev/null
+++ b/debian/i2p.init
@@ -0,0 +1,147 @@
+#!/bin/sh
+
+### BEGIN INIT INFO
+# Provides: i2p i2p-router
+# Required-Start: $remote_fs $syslog $named $network $time
+# Required-Stop: $remote_fs $syslog $named $network
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: start and stop the i2p router
+# Description: i2p is a load-balanced unspoofable packet switching network
+### END INIT INFO
+
+# Check permissions
+if [ "`id -ur`" != '0' ]; then
+ echo 'Error: you must be root.'
+ echo
+ exit 1
+fi
+
+PATH=/sbin:/usr/sbin:/bin:/usr/bin
+DESC="I2P Router"
+NAME="i2p"
+RUN="/var/run/$NAME"
+DAEMON="/usr/sbin/wrapper"
+PIDFILE="$RUN/$NAME.pid"
+JVMPIDFILE="$RUN/routerjvm.pid"
+I2P="/usr/share/i2p"
+I2PTEMP="/tmp/"
+WRAPPERLOG="/var/log/i2p/wrapper.log"
+ANCHORFILE="$I2PTEMP/i2p.anchor"
+
+# Don't touch these, edit /etc/default/i2p
+RUN_DAEMON="False"
+NICE=
+I2PUSER="i2psvc"
+
+I2P_ARGS="/etc/i2p/wrapper.config \
+ wrapper.java.additional.1=-DloggerFilenameOverride=/var/log/i2p/log-router-@.txt \
+ wrapper.java.additional.5=-Dwrapper.logfile=$WRAPPERLOG \
+ wrapper.logfile=$WRAPPERLOG \
+ wrapper.pidfile=$PIDFILE \
+ wrapper.anchorfile=$ANCHORFILE \
+ wrapper.java.pidfile=$JVMPIDFILE \
+ wrapper.daemonize=TRUE"
+
+
+
+# this isn't really needed since we depend on lsb-base (>= 3.2-14)
+[ -r /lib/lsb/init-functions ] && . /lib/lsb/init-functions
+[ -r /lib/init/vars.sh ] && . /lib/init/vars.sh
+
+# read config file
+[ -r /etc/default/$NAME ] && . /etc/default/$NAME
+
+case "$RUN_DAEMON" in
+ [NnFf]*)
+ log_action_msg "$DESC daemon disabled in /etc/default/$NAME".
+ exit 0
+ ;;
+esac
+
+
+# is the wrapper from the service-wrapper package even installed?
+# if not, bail NOW
+
+[ -x $DAEMON ] || exit 0
+
+# Ditto for i2prouter. Even though this script doesn't call it,
+# if it's not found the package probably hasn't been installed.
+
+[ -r /usr/bin/i2prouter ] || exit 0
+
+do_start()
+{
+ start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null\
+ || return 1
+ [ -d $RUN ] || mkdir $RUN
+ [ -r $PIDFILE ] || touch $PIDFILE
+ [ -r $JVMPIDFILE ] || touch $JVMPIDFILE
+ [ -d $I2PTEMP ] || mkdir $I2PTEMP
+ chown -Rf $I2PUSER:$I2PUSER $I2PTEMP/*i2p* $I2PTEMP/router.ping $RUN > /dev/null
+ chown -f -R $I2PUSER:adm /var/log/$NAME
+ TZ=UTC start-stop-daemon --start --quiet -c $I2PUSER --pidfile $PIDFILE --exec $DAEMON $NICE -- \
+ $I2P_ARGS || return 2
+}
+
+do_stop()
+{
+ start-stop-daemon --stop --quiet --retry=TERM/15/KILL/5 --pidfile $PIDFILE -u $I2PUSER
+ RETVAL="$?"
+ [ "$RETVAL" = 2 ] && return 2
+
+# start-stop-daemon --stop --quiet --oknodo --retry=TERM/15/KILL/5 -u $I2PUSER
+
+ start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
+
+ rm -f "$PIDFILE" "$JVMPIDFILE"
+ [ -d $RUN ] && rmdir $RUN
+}
+
+
+case "$1" in
+ start)
+ log_daemon_msg "Starting $DESC" "$NAME"
+ do_start
+ case "$?" in
+ 0|1) log_end_msg 0 ;;
+ 2) log_end_msg 1 ;;
+ esac
+ ;;
+ stop)
+ log_daemon_msg "Stopping $DESC" "$NAME"
+ do_stop
+ case "$?" in
+ 0|1) log_end_msg 0 ;;
+ 2) log_end_msg 1 ;;
+ esac
+ ;;
+ status)
+ status_of_proc -p $PIDFILE "$DAEMON" "$NAME" && exit 0 || exit $?
+ ;;
+ restart|force-reload)
+ log_daemon_msg "Restarting $DESC" "$NAME"
+ do_stop
+ case "$?" in
+ 0|1)
+ do_start
+ case "$?" in
+ 0) log_end_msg 0 ;;
+ 1) log_end_msg 1 ;; # Old process is still running
+ *) log_end_msg 1 ;; # Failed to start
+ esac
+ ;;
+ *)
+ # Failed to stop
+ log_end_msg 1
+ ;;
+ esac
+ ;;
+*)
+ N=/etc/init.d/$NAME
+ echo "Usage: $N {start|stop|status|restart|force-reload}" >&2
+ exit 3
+ ;;
+
+
+esac
diff --git a/debian/i2p.install b/debian/i2p.install
new file mode 100644
index 0000000000..41bfe13fd5
--- /dev/null
+++ b/debian/i2p.install
@@ -0,0 +1,17 @@
+pkg-temp/eepsite usr/share/i2p
+pkg-temp/docs usr/share/i2p/
+pkg-temp/scripts usr/share/i2p
+pkg-temp/webapps usr/share/i2p
+pkg-temp/lib/*.jar usr/share/i2p/lib
+pkg-temp/clients.config usr/share/i2p
+pkg-temp/i2psnark.config usr/share/i2p
+pkg-temp/i2ptunnel.config usr/share/i2p
+pkg-temp/systray.config usr/share/i2p
+pkg-temp/wrapper.config etc/i2p
+pkg-temp/*.xml usr/share/i2p
+pkg-temp/hosts.txt usr/share/i2p
+pkg-temp/blocklist.txt usr/share/i2p
+pkg-temp/geoip usr/share/i2p
+pkg-temp/eepget usr/bin
+pkg-temp/i2prouter usr/bin
+history.txt usr/share/i2p
diff --git a/debian/i2p.links b/debian/i2p.links
new file mode 100644
index 0000000000..d3ac5ed0ad
--- /dev/null
+++ b/debian/i2p.links
@@ -0,0 +1,7 @@
+var/lib/i2p/i2p-config/blocklist.txt etc/i2p/blocklist.txt
+var/lib/i2p/i2p-config/clients.config etc/i2p/clients.config
+var/lib/i2p/i2p-config/hosts.txt etc/i2p/hosts.txt
+var/lib/i2p/i2p-config/i2psnark.config etc/i2p/i2psnark.config
+var/lib/i2p/i2p-config/i2ptunnel.config etc/i2p/i2ptunnel.config
+var/lib/i2p/i2p-config/jetty-i2psnark.xml etc/i2p/jetty-i2psnark.xml
+var/lib/i2p/i2p-config/systray.config etc/i2p/systray.config
diff --git a/debian/i2p.manpages b/debian/i2p.manpages
new file mode 100644
index 0000000000..f2cce18012
--- /dev/null
+++ b/debian/i2p.manpages
@@ -0,0 +1 @@
+installer/resources/man/*.1
diff --git a/debian/i2p.postinst b/debian/i2p.postinst
new file mode 100755
index 0000000000..690cb4cef0
--- /dev/null
+++ b/debian/i2p.postinst
@@ -0,0 +1,111 @@
+#!/bin/sh -e
+
+I2PHOME=/var/lib/i2p
+I2P=/usr/share/i2p
+I2PUSER=i2psvc
+
+conffile="/etc/default/i2p"
+
+update_config_file()
+{
+ db_field=$1
+ config_field=$2
+
+ RET=false
+ db_get $db_field
+ if [ -n "$RET" ] ; then
+ if grep -q "^$config_field" $conffile ; then
+ # keep any admin changes, while replacing the variable content
+ sed "s/^[ ]*$config_field=\".*\"/$config_field=\"$RET\"/" < $conffile > $conffile.new &&
+ mv $conffile.new $conffile
+ else
+ echo "$config_field=\"$RET\"" >> $conffile
+ fi
+ fi
+}
+
+# Source debconf library -- we have a Depends line
+# to make sure it is there...
+. /usr/share/debconf/confmodule
+db_version 2.0
+
+
+case "$1" in
+ configure|reconfigure)
+ if [ -f $conffile ] ; then
+ sed -i -e 's/^[ ]*STARTI2P/RUN_DAEMON/g' $conffile
+ if ! grep -q RUN_DAEMON $conffile ; then
+ cat << EOF >> $conffile
+# I2P daemon. If set to true, I2P will start automatically
+# when your computer boots.
+RUN_DAEMON="false"
+EOF
+ fi
+ if ! grep -q I2PUSER $conffile ; then
+ cat << EOF >> $conffile
+# The user that runs the I2P daemon. By default this is set to i2psvc.
+# You may want to change this to use a manually installed I2P profile.
+I2PUSER="i2psvc"
+EOF
+ fi
+ else
+ cat << EOF >> $conffile
+# Defaults for i2p initscript (/etc/init.d/i2p)
+# This is a posix shell fragment
+
+# [automatically edited by postinst, do not change line format ]
+# Run 'dpkg-reconfigure -plow i2p' to change these values.
+
+# I2P daemon. If set to true, i2p will start automatically when
+# the computer boots
+RUN_DAEMON="false"
+
+# The user that runs the I2P daemon. By default this is set to i2psvc.
+# You may want to change this to use a manually installed I2P profile.
+I2PUSER="i2psvc"
+EOF
+ fi
+ update_config_file i2p/daemon RUN_DAEMON
+ update_config_file i2p/user I2PUSER
+
+ migrate_existing_user(){
+ # Adjust the user/group in /etc/passwd, mainly for upgrades from old packages that didn't
+ # create $I2PUSER as a system group/user
+ usermod -c "I2P Router Daemon" -m -d $I2PHOME -g $I2PUSER -s "/bin/false" \
+ -l $I2PUSER -e 1 > /dev/null 2>&1
+ echo "Existing user migrated, home directory moved to $I2PHOME"
+ }
+
+ # Create user and group as a system user.
+ adduser --system --quiet --group --home $I2PHOME $I2PUSER || migrate_existing_user
+
+ [ -d /var/log/i2p ] || mkdir -m0750 /var/log/i2p
+ chown -f -R $I2PUSER:adm /var/log/i2p
+
+ # Has someone set the permissions with dpkg-statoverride? If so, obey them.
+ if ! dpkg-statoverride --list $I2PHOME > /dev/null 2>&1
+ then
+ chown -f -R $I2PUSER:$I2PUSER $I2PHOME
+ chmod -f u=rwx,g=rxs,o= $I2PHOME
+ fi
+
+ ##if ! dpkg-statoverride --list $I2P > /dev/null
+ ##then
+ ## chown -f -R $I2PUSER:$I2PUSER $I2P
+ ##fi
+
+ db_stop
+;;
+abort-upgrade|abort-remove|abort-deconfigure)
+ echo "Aborting upgrade"
+ exit 0
+ ;;
+*)
+ echo "postinst called with unknown argument \`$1'" >&2
+ exit 0
+ ;;
+esac
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/i2p.templates b/debian/i2p.templates
new file mode 100644
index 0000000000..faab389190
--- /dev/null
+++ b/debian/i2p.templates
@@ -0,0 +1,26 @@
+Template: i2p/stop_running_router
+Type: boolean
+Default: false
+_Description: Automatically stop I2P when there are upgrades?
+ To update this package the I2P router will need to be restarted.
+ Any activity on the I2P network will be briefly interrupted
+ during the upgrade.
+
+Template: i2p/daemon
+Type: boolean
+Default: false
+_Description: Should the I2P router be started at boot?
+ The I2P router can be run as a daemon that starts automatically
+ when your computer boots up. This is the recommended configuration.
+
+Template: i2p/user
+Type: string
+Default: i2psvc
+_Description: I2P daemon user:
+ By default I2P is configured to run under the account i2psvc when running
+ as a daemon. To use an existing I2P profile you may enter a different
+ account name here. For example, if your previous I2P installation is at
+ /home/user/i2p, you may enter 'user' here.
+ .
+ A script to ease the transition from the manual installation to this deb
+ package is in development.
diff --git a/debian/i2pversion b/debian/i2pversion
new file mode 100755
index 0000000000..8c7a821faf
--- /dev/null
+++ b/debian/i2pversion
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+ROUTER=$(/bin/echo -ne "_")$(cat ./router/java/src/net/i2p/router/RouterVersion.java | grep -e "public final static long BUILD" | cut -f2 -d"=" | cut -f1 -d";" | sed -re "s/ //g")
+if [ "$ROUTER" = "_" ] ; then
+ ROUTER="_0"
+fi
+
+#
+# That was the easy one, now for the tough one.
+#
+
+CORE=$(cat core/java/src/net/i2p/CoreVersion.java | grep -e "public final static String VERSION" | cut -f2 -d'"' | sed -re "s/ //g")
+CORE1=$(/bin/echo -n $CORE.x.x | sed -re "s/(.*)\.(.*)\.(.*)\.(.*)/\1/")
+CORE2=$(/bin/echo -n $CORE.x | sed -re "s/(.*)\.(.*)\.(.*)\.(.*)/\1/")
+
+if [ "$CORE.x.x" = "$CORE1" ] ; then
+ CORE=$(/bin/echo -ne $CORE".0.0")
+fi
+if [ "$CORE.x" = "$CORE2" ] ; then
+ CORE=$(/bin/echo -ne $CORE".0")
+fi
+
+VERSION=$(/bin/echo $CORE$ROUTER)
+
+echo $VERSION
diff --git a/debian/libjbigi-jni.install b/debian/libjbigi-jni.install
new file mode 100644
index 0000000000..c56cc123ad
--- /dev/null
+++ b/debian/libjbigi-jni.install
@@ -0,0 +1,2 @@
+core/c/jbigi/*.so usr/lib/jni
+core/c/jcpuid/lib/freenet/support/CPUInformation/*.so usr/lib/jni
diff --git a/debian/libjbigi-jni.preinst b/debian/libjbigi-jni.preinst
new file mode 100644
index 0000000000..464371ac87
--- /dev/null
+++ b/debian/libjbigi-jni.preinst
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+if [ ! -z $2 ]; then
+ if dpkg --compare-versions $2 lt 0.8.6-4; then
+ test -d /usr/share/doc/libjbigi-jni \
+ && rm -rf /usr/share/doc/libjbigi-jni
+ fi
+fi
+
+#DEBHELPER#
diff --git a/debian/makerepo.sh b/debian/makerepo.sh
deleted file mode 100755
index 4f10786270..0000000000
--- a/debian/makerepo.sh
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/bin/sh
-# This script creates a Debian repository in ${DIR} using the reprepro tool.
-# The packages are signed with the key referenced in the newest changelog entry.
-
-set -e
-
-cd $(dirname $0)
-DIR=./repo
-CONFDIR=conf
-CONFFILE=${CONFDIR}/distributions
-
-SIGNER=`parsechangelog --file changelog | grep Maintainer | cut -d\< -f2 | cut -d\> -f1`
-KEYID=`gpg --list-keys "${SIGNER}" | cut -d: -f2 | grep -w pub | cut -d/ -f2 | cut -d\ -f1`
-echo Using signing key: ${SIGNER}
-echo Key ID: ${KEYID}
-
-# creating the reprepro config file dynamically allows us to specify the signer
-mkdir -p ${CONFDIR}
-echo "Origin: I2P" > ${CONFFILE}
-echo "Label: I2P Debian Repository" >> ${CONFFILE}
-echo "Suite: all" >> ${CONFFILE}
-echo "Codename: all" >> ${CONFFILE}
-echo "Architectures: i386 amd64 source" >> ${CONFFILE}
-echo "Components: main" >> ${CONFFILE}
-echo "SignWith: ${SIGNER}" >> ${CONFFILE}
-
-# create the repository
-echo Building the repository...
-find packages/ -name *.deb -exec reprepro --ask-passphrase --outdir ${DIR} includedeb all {} \;
-find packages/ -name *.changes -exec reprepro --ask-passphrase --outdir ${DIR} include all {} \;
-find packages/ -name *.dsc -exec reprepro --ask-passphrase --outdir ${DIR} includedsc all {} \;
-
-# export the public key
-gpg --armor --export ${SIGNER} > ${DIR}/0x${KEYID}.asc
-
-# remove the config file created above
-echo Cleaning up...
-rm -f ${CONFFILE}
-rmdir ${CONFDIR}
-
-echo Debian repository created in `pwd`/${DIR}.
diff --git a/debian/patches/0001-Update-paths.patch b/debian/patches/0001-Update-paths.patch
new file mode 100644
index 0000000000..35bbf10bd9
--- /dev/null
+++ b/debian/patches/0001-Update-paths.patch
@@ -0,0 +1,124 @@
+From: Kill Your TV
+Date: Mon, 18 Apr 2011 16:43:40 +0000
+Subject: Update-paths
+
+---
+ installer/resources/eepget | 2 +-
+ installer/resources/i2prouter | 8 ++++----
+ installer/resources/runplain.sh | 6 +++---
+ installer/resources/wrapper.config | 17 ++++++++---------
+ 4 files changed, 16 insertions(+), 17 deletions(-)
+
+diff --git a/installer/resources/eepget b/installer/resources/eepget
+index 080bcc8..f2e84ba 100644
+--- 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 "$@"
+diff --git a/installer/resources/i2prouter b/installer/resources/i2prouter
+index be6ef4f..8ebe059 100644
+--- a/installer/resources/i2prouter
++++ b/installer/resources/i2prouter
+@@ -22,8 +22,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"
+ # PORTABLE installation:
+ # Use the following instead.
+ #I2PTEMP="%INSTALL_PATH"
+@@ -33,8 +33,8 @@ APP_NAME="i2p"
+ APP_LONG_NAME="I2P Service"
+
+ # 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.
+diff --git a/installer/resources/runplain.sh b/installer/resources/runplain.sh
+index eaf2d29..e5530eb 100644
+--- a/installer/resources/runplain.sh
++++ b/installer/resources/runplain.sh
+@@ -11,12 +11,12 @@
+ # 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"
+
+ export CP="$I2P" ; for j in "$I2P/lib/*" ; do export CP="$CP:$j" ; done;
+ JAVA=java
+
+-JAVAOPTS="-Djava.library.path=$I2P:$I2P/lib -Di2p.dir.base=$I2P -DloggerFilenameOverride=logs/log-router-@.txt"
++JAVAOPTS="-Djava.library.path=/usr/lib/jni:$I2P/lib -Di2p.dir.base=$I2P -DloggerFilenameOverride=logs/log-router-@.txt"
+ nohup $JAVA -cp "$CP" $JAVAOPTS net.i2p.router.RouterLaunch > /dev/null 2>&1 &
+ echo $! > "$I2PTEMP/router.pid"
+diff --git a/installer/resources/wrapper.config b/installer/resources/wrapper.config
+index 380f94b..7bda095 100644
+--- a/installer/resources/wrapper.config
++++ b/installer/resources/wrapper.config
+@@ -45,20 +45,19 @@ wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp
+ # 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
+ # uncomment this to use the system classpath as well (e.g. to get tools.jar)
+-# wrapper.java.classpath.2=%CLASSPATH%
+-
++wrapper.java.classpath.2=/usr/share/java/wrapper.jar
+ # 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/lib/jni
++wrapper.java.library.path.2=/usr/share/java/lib
+
+ # 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=-Di2p.dir.base="/usr/share/i2p"
+ wrapper.java.additional.4.stripquotes=TRUE
+ # Jetty says this is a security risk
+ # Uncommenting this won't help as the router forces it to true
+@@ -116,7 +115,7 @@ wrapper.console.loglevel=INFO
+ # tell the router where to find the wrapper log
+ # (change X to the next available number)
+ # wrapper.java.additional.X=-Dwrapper.logfile=/path/to/wrapper.log
+-wrapper.logfile=$SYSTEM_java_io_tmpdir/wrapper.log
++wrapper.logfile=/tmp/wrapper.log
+ # PORTABLE installation:
+ # Use the following instead. I2P will find the logfile here,
+ # no need for a wrapper.java.additional line too.
+@@ -182,7 +181,7 @@ wrapper.use_system_time=false
+ # 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
++wrapper.java.pidfile=/tmp/routerjvm.pid
+ # PORTABLE installation:
+ # Use the following instead.
+ #wrapper.java.pidfile=$INSTALL_PATH/routerjvm.pid
+@@ -196,7 +195,7 @@ wrapper.java.pidfile=$SYSTEM_java_io_tmpdir/routerjvm.pid
+ #
+ # This means i2prouter looks for './i2p.pid'.
+ # See comments above for wrapper.java.pidfile
+-wrapper.pidfile=$SYSTEM_java_io_tmpdir/i2p.pid
++wrapper.pidfile=/tmp/i2p.pid
+ # PORTABLE installation:
+ # Use the following instead.
+ #wrapper.pidfile=$INSTALL_PATH/i2p.pid
+--
diff --git a/debian/patches/0002-disable-browser-launch.patch b/debian/patches/0002-disable-browser-launch.patch
new file mode 100644
index 0000000000..8821586107
--- /dev/null
+++ b/debian/patches/0002-disable-browser-launch.patch
@@ -0,0 +1,22 @@
+From: Kill Your TV
+Date: Mon, 18 Apr 2011 16:43:40 +0000
+Subject: disable browser launch
+
+---
+ installer/resources/clients.config | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/installer/resources/clients.config b/installer/resources/clients.config
+index 08c6c62..0506a45 100644
+--- a/installer/resources/clients.config
++++ b/installer/resources/clients.config
+@@ -51,7 +51,7 @@ clientApp.4.main=net.i2p.apps.systray.UrlLauncher
+ 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=
+--
diff --git a/debian/patches/0004-Update-path-of-jbigi-and-add-soname.patch b/debian/patches/0004-Update-path-of-jbigi-and-add-soname.patch
new file mode 100644
index 0000000000..3013b748ec
--- /dev/null
+++ b/debian/patches/0004-Update-path-of-jbigi-and-add-soname.patch
@@ -0,0 +1,33 @@
+From: Kill Your TV
+Date: Wed, 11 May 2011 00:12:04 +0000
+Subject: Update path of jbigi and add soname
+
+---
+ core/c/jbigi/mbuild_jbigi.sh | 6 +++---
+ 1 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/core/c/jbigi/mbuild_jbigi.sh b/core/c/jbigi/mbuild_jbigi.sh
+index 1e262a6..7581335 100755
+--- a/core/c/jbigi/mbuild_jbigi.sh
++++ b/core/c/jbigi/mbuild_jbigi.sh
+@@ -25,8 +25,8 @@ Darwin*)
+ LIBFILE="libjbigi.jnilib";;
+ *)
+ COMPILEFLAGS="-fPIC -Wall"
+- INCLUDES="-I. -I../../jbigi/include -I$JAVA_HOME/include -I$JAVA_HOME/include/linux"
+- LINKFLAGS="-shared -Wl,-soname,libjbigi.so"
++ INCLUDES="-I. -I./jbigi/include -I$JAVA_HOME/include -I$JAVA_HOME/include/linux"
++ LINKFLAGS="-shared -Wl,-soname,libjbigi.so.0"
+ LIBFILE="libjbigi.so";;
+ esac
+
+@@ -41,7 +41,7 @@ fi
+
+ echo "Compiling C code..."
+ rm -f jbigi.o $LIBFILE
+-$CC -c $COMPILEFLAGS $INCLUDES ../../jbigi/src/jbigi.c || exit 1
++$CC -c $COMPILEFLAGS $INCLUDES ./jbigi/src/jbigi.c || exit 1
+ $CC $LINKFLAGS $INCLUDES $INCLUDELIBS -o $LIBFILE jbigi.o $STATICLIBS || exit 1
+
+ exit 0
+--
diff --git a/debian/patches/0005-update-launch-i2psnark-paths.patch b/debian/patches/0005-update-launch-i2psnark-paths.patch
new file mode 100644
index 0000000000..94ccb4651b
--- /dev/null
+++ b/debian/patches/0005-update-launch-i2psnark-paths.patch
@@ -0,0 +1,44 @@
+From: Kill Your TV
+Date: Wed, 18 May 2011 11:32:14 +0000
+Subject: update launch-i2psnark paths
+
+---
+ apps/i2psnark/jetty-i2psnark.xml | 4 ++--
+ apps/i2psnark/launch-i2psnark | 3 ++-
+ 2 files changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/apps/i2psnark/jetty-i2psnark.xml b/apps/i2psnark/jetty-i2psnark.xml
+index b5d6d1e..b9b375e 100644
+--- a/apps/i2psnark/jetty-i2psnark.xml
++++ b/apps/i2psnark/jetty-i2psnark.xml
+@@ -55,7 +55,7 @@
+ i2psnark
+
+ /
+- webapps/i2psnark.war
++ /usr/share/i2p/webapps/i2psnark.war
+
+
+
+@@ -63,7 +63,7 @@
+
+
+ /themes
+- ./docs/themes
++ /usr/share/i2p/docs/themes
+
+
+
+diff --git a/apps/i2psnark/launch-i2psnark b/apps/i2psnark/launch-i2psnark
+index 023b5a2..03a4ed2 100755
+--- a/apps/i2psnark/launch-i2psnark
++++ b/apps/i2psnark/launch-i2psnark
+@@ -4,5 +4,6 @@
+ # The file jetty-i2psnark.xml must be present in the current directory.
+ # i2psnark will be accessed at http://127.0.0.1:8002/
+ #
+-I2P="."
++cd /var/lib/i2p/i2p-config
++I2P="/usr/share/i2p"
+ java -cp "$I2P/lib/i2psnark.jar:$I2P/lib/i2p.jar:$I2P/lib/mstreaming.jar:$I2P/lib/streaming.jar:$I2P/lib/commons-el.jar:$I2P/lib/commons-logging.jar:$I2P/lib/jasper-compiler.jar:$I2P/lib/jasper-runtime.jar:$I2P/lib/javax.servlet.jar:$I2P/lib/org.mortbay.jetty.jar" org.klomp.snark.web.RunStandalone "$@"
+--
diff --git a/debian/patches/0007-rename-jcpuid.patch b/debian/patches/0007-rename-jcpuid.patch
new file mode 100644
index 0000000000..d856b76ff0
--- /dev/null
+++ b/debian/patches/0007-rename-jcpuid.patch
@@ -0,0 +1,24 @@
+From: Kill Your TV
+Date: Wed, 25 May 2011 00:26:10 +0300
+Subject: rename jcpuid
+
+---
+ core/c/jcpuid/build.sh | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/core/c/jcpuid/build.sh b/core/c/jcpuid/build.sh
+index 244eb07..827e14b 100755
+--- a/core/c/jcpuid/build.sh
++++ b/core/c/jcpuid/build.sh
+@@ -37,8 +37,8 @@ FreeBSD*)
+ Linux*)
+ COMPILEFLAGS="-fPIC -Wall"
+ INCLUDES="-I. -Iinclude -I$JAVA_HOME/include -I$JAVA_HOME/include/linux"
+- LINKFLAGS="-shared -Wl,-soname,libjcpuid-x86-linux.so"
+- LIBFILE="lib/freenet/support/CPUInformation/libjcpuid-x86-linux.so";;
++ LINKFLAGS="-shared -Wl,-soname,libjcpuid.so"
++ LIBFILE="lib/freenet/support/CPUInformation/libjcpuid.so";;
+ esac
+
+ echo "Compiling C code..."
+--
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000000..68d807ccaa
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,5 @@
+0001-Update-paths.patch
+0002-disable-browser-launch.patch
+0004-Update-path-of-jbigi-and-add-soname.patch
+0005-update-launch-i2psnark-paths.patch
+0007-rename-jcpuid.patch
diff --git a/debian/po/POTFILES.in b/debian/po/POTFILES.in
new file mode 100644
index 0000000000..7c40bc5f72
--- /dev/null
+++ b/debian/po/POTFILES.in
@@ -0,0 +1 @@
+[type: gettext/rfc822deb] i2p.templates
diff --git a/debian/po/templates.pot b/debian/po/templates.pot
new file mode 100644
index 0000000000..4b181288ed
--- /dev/null
+++ b/debian/po/templates.pot
@@ -0,0 +1,70 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR , YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: i2p@packages.debian.org\n"
+"POT-Creation-Date: 2011-05-15 19:17+0300\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: LANGUAGE \n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../i2p.templates:1001
+msgid "Automatically stop I2P when there are upgrades?"
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../i2p.templates:1001
+msgid ""
+"To update this package the I2P router will need to be restarted. Any "
+"activity on the I2P network will be briefly interrupted during the upgrade."
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../i2p.templates:2001
+msgid "Should the I2P router be started at boot?"
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../i2p.templates:2001
+msgid ""
+"The I2P router can be run as a daemon that starts automatically when your "
+"computer boots up. This is the recommended configuration."
+msgstr ""
+
+#. Type: string
+#. Description
+#: ../i2p.templates:3001
+msgid "I2P daemon user:"
+msgstr ""
+
+#. Type: string
+#. Description
+#: ../i2p.templates:3001
+msgid ""
+"By default I2P is configured to run under the account i2psvc when running as "
+"a daemon. To use an existing I2P profile you may enter a different account "
+"name here. For example, if your previous I2P installation is at /home/user/"
+"i2p, you may enter 'user' here."
+msgstr ""
+
+#. Type: string
+#. Description
+#: ../i2p.templates:3001
+msgid ""
+"A script to ease the transition from the manual installation to this deb "
+"package is in development."
+msgstr ""
diff --git a/debian/rules b/debian/rules
index ea785e0d63..c7f2a2466d 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,127 +1,97 @@
#!/usr/bin/make -f
-VERSION=`grep String\ VERSION core/java/src/net/i2p/CoreVersion.java | cut -d\" -f2`
-SOURCEURL=http://mirror.i2p2.de/i2psource_${VERSION}.tar.bz2
+# Quoting Policy version 3.9.2.0, 2011-04-07 section 4.9:
-DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)
-ifeq ($(DEB_HOST_ARCH),i386)
-wrapperpath = installer/lib/wrapper/linux
-else ifeq ($(DEB_HOST_ARCH),amd64)
-wrapperpath = installer/lib/wrapper/linux64
-# other architectures could be supported by using runplain.sh
-endif
+# /start quote
+# For some packages, notably ones where the same source tree is compiled in
+# different ways to produce two binary packages, the build target does not make
+# much sense. For these packages it is good enough to provide two (or more)
+# targets (build-a and build-b or whatever) for each of the ways of building the
+# package, and a build target that does nothing. The binary target will have to
+# build the package in each of the possible ways and make the binary package out
+# of each.
+# ...
+# When a package has a configuration and build routine which takes a long time,
+# or when the makefiles are poorly designed, or when build needs to run clean
+# first, it is a good idea to touch build when the build process is complete.
+# This will ensure that if debian/rules build is run again it will not rebuild
+# the whole program.
+# /end quote
+
+# Since that fits building I2P very well, we override the build target.
+#
build:
- echo Target Architecture is $(DEB_HOST_ARCH)
-ifndef wrapperpath
- @echo "Architecture not supported: $(DEB_HOST_ARCH)"
- exit 1
-endif
- ant preppkg-linux-only
-
- mkdir -p debian/tmp/etc/init.d
- mkdir -p debian/tmp/etc/i2p
- mkdir -p debian/tmp/usr/share/i2p/lib
- mkdir -p debian/tmp/usr/share/doc/i2p
- mkdir -p debian/tmp/usr/share/man/man1
- mkdir -p debian/tmp/usr/lib/i2p
- mkdir -p debian/tmp/usr/bin
-
- cp -a debian/scripts/init debian/tmp/etc/init.d/i2p
-
- @# copy config templates to /etc/i2p
- cp -a pkg-temp/blocklist.txt debian/tmp/etc/i2p/
- cp -a pkg-temp/clients.config debian/tmp/etc/i2p/
- cp -a pkg-temp/hosts.txt debian/tmp/etc/i2p/
- cp -a pkg-temp/i2psnark.config debian/tmp/etc/i2p/
- cp -a pkg-temp/i2ptunnel.config debian/tmp/etc/i2p/
- cp -a pkg-temp/jetty-i2psnark.xml debian/tmp/etc/i2p/
- cp -a pkg-temp/systray.config debian/tmp/etc/i2p/
-
- @# copy architecture independent files to /usr/share/i2p and create symlinks to /etc/i2p/
- ln -s /etc/i2p/blocklist.txt debian/tmp/usr/share/i2p/blocklist.txt
- ln -s /etc/i2p/clients.config debian/tmp/usr/share/i2p/clients.config
- ln -s /etc/i2p/hosts.txt debian/tmp/usr/share/i2p/hosts.txt
- ln -s /etc/i2p/i2psnark.config debian/tmp/usr/share/i2p/i2psnark.config
- ln -s /etc/i2p/i2ptunnel.config debian/tmp/usr/share/i2p/i2ptunnel.config
- ln -s /etc/i2p/jetty-i2psnark.xml debian/tmp/usr/share/i2p/jetty-i2psnark.xml
- ln -s /etc/i2p/systray.config debian/tmp/usr/share/i2p/systray.config
- ln -s /etc/i2p/wrapper.config debian/tmp/usr/share/i2p/wrapper.config
- cp -a pkg-temp/docs debian/tmp/usr/share/i2p/
- cp -a pkg-temp/eepsite debian/tmp/usr/share/i2p/
- cp -a pkg-temp/geoip debian/tmp/usr/share/i2p/
- cp -a pkg-temp/lib/*.jar debian/tmp/usr/share/i2p/lib/
- cp -a pkg-temp/scripts debian/tmp/usr/share/i2p/
- cp -a pkg-temp/webapps debian/tmp/usr/share/i2p/
- cp -a pkg-temp/licenses debian/tmp/usr/share/doc/i2p/
- @# Create the Debian copyright file
- cat debian/copyright.part1 LICENSE.txt > debian/tmp/usr/share/doc/i2p/copyright
- @# delete all license files that are already in /usr/share/common-licenses/
- rm debian/tmp/usr/share/doc/i2p/licenses/LICENSE-Apache2.0.txt
- rm debian/tmp/usr/share/doc/i2p/licenses/LICENSE-GPLv2.txt
- rm debian/tmp/usr/share/doc/i2p/licenses/LICENSE-LGPLv2.1.txt
+ @echo 'The build target is disabled. Use the appropriate binary target.'
- @# man pages
- gzip -9c installer/resources/man/eepget.1 > debian/tmp/usr/share/man/man1/eepget.1.gz
- gzip -9c installer/resources/man/i2prouter.1 > debian/tmp/usr/share/man/man1/i2prouter.1.gz
+JAVA_HOME=/usr/lib/jvm/default-java
+I2P=$(CURDIR)/pkg-temp
+export JAVA_HOME I2P
+#export DEB_HOST_ARCH_CPU := $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU)
- @# copy wrapper files to /usr/lib/i2p (including wrapper.jar because it is architecture dependent)
- cp ${wrapperpath}/libwrapper.so debian/tmp/usr/lib/i2p/
- cp ${wrapperpath}/wrapper.jar debian/tmp/usr/lib/i2p/
- cp ${wrapperpath}/i2psvc debian/tmp/usr/lib/i2p/
- chmod +x debian/tmp/usr/lib/i2p/i2psvc
- strip debian/tmp/usr/lib/i2p/libwrapper.so
- strip debian/tmp/usr/lib/i2p/i2psvc
+%:
+ dh $@ --with quilt
- @# copy remaining executables to /usr/bin, replace INSTALL_PATH and SYSTEM_java_io_tmpdir
- sed 's|%INSTALL_PATH|/usr/share/i2p|g' pkg-temp/eepget > debian/tmp/usr/bin/eepget
- chmod +x debian/tmp/usr/bin/eepget
- cat pkg-temp/i2prouter | \
- sed 's|$$I2P/i2psvc|/usr/lib/i2p/i2psvc|g' | \
- sed 's|$$I2P/wrapper.config|/etc/i2p/wrapper.config|g' | \
- sed 's|%INSTALL_PATH|/usr/share/i2p|g' | \
- sed 's|%SYSTEM_java_io_tmpdir|/tmp|g' > debian/tmp/usr/bin/i2prouter
- chmod +x debian/tmp/usr/bin/i2prouter
- @# The first 4 sed commands each replace the first \$INSTALL_PATH that hasn't been replaced
- @# wrapper.java.classpath.1 --> /usr/share/i2p/lib/*.jar:/usr/lib/i2p/wrapper.jar
- @# wrapper.java.library.path.1 --> /usr/lib/i2p
- @# wrapper.java.library.path.2 --> /usr/lib/i2p
- @# i2p.dir.base --> /usr/share/i2p
- cat pkg-temp/wrapper.config | \
- sed '0,/$$INSTALL_PATH\/lib\/\*\.jar/s//\/usr\/share\/i2p\/lib\/*.jar\nwrapper.java.classpath.2=\/usr\/lib\/i2p\/wrapper.jar/' | \
- sed '0,/$$INSTALL_PATH/s//\/usr\/lib\/i2p/' | \
- sed '0,/$$INSTALL_PATH/s//\/usr\/lib\/i2p/' | \
- sed '0,/$$INSTALL_PATH/s//\/usr\/share\/i2p/' | \
- sed 's|$$SYSTEM_java_io_tmpdir|/tmp|g' > debian/tmp/etc/i2p/wrapper.config
- @# now do runplain.sh
- cat pkg-temp/runplain.sh | \
- sed 's|-Djava.library.path=$$I2P:$$I2P/lib|-Djava.library.path=/usr/lib/i2p|g' | \
- sed 's|%INSTALL_PATH|/usr/share/i2p|g' | \
- sed 's|%SYSTEM_java_io_tmpdir|/tmp|g' > debian/tmp/usr/share/i2p/runplain.sh
- chmod +x debian/tmp/usr/share/i2p/runplain.sh
+clean: createcopyright
+
+override_dh_auto_clean:
+ dh_auto_clean
+ ant distclean
+ # The next line is used by KYTV
+ # when building from source packages
+ #rm -f apps/jetty/jetty-5.1.15.tgz
+ rm -f core/c/jbigi/*.[s]o
+ rm -rf core/c/jcpuid/lib/
+ debconf-updatepo
+
+override_dh_auto_build:
+
+binary-indep: build-indep
+build-indep:
+ dh_prep
+ # The next line is used by KYTV when building from source packages
+ #[ -r jetty/jetty-5.1.15.tgz ] && ln -sf $(CURDIR)/jetty/jetty-5.1.15.tgz $(CURDIR)/apps/jetty/jetty-5.1.15.tgz
+ ant preppkg-linux javadoc
+ mv build/javadoc build/api
+ -cp -fv /usr/share/tor/geoip $(CURDIR)/pkg-temp/geoip/geoip.txt
- dpkg-shlibdeps debian/tmp/usr/lib/i2p/libwrapper.so
- dpkg-shlibdeps debian/tmp/usr/lib/i2p/i2psvc
-
- touch debian/build
-
- @# changelog
- gzip -9c history.txt > debian/tmp/usr/share/doc/i2p/changelog.gz
- gzip -9c debian/changelog > debian/tmp/usr/share/doc/i2p/changelog.Debian.gz
-binary: build
- mkdir -p debian/tmp/DEBIAN
- dpkg-gencontrol
- cp -a debian/scripts/postinst debian/scripts/postrm debian/scripts/prerm debian/conffiles debian/tmp/DEBIAN
- dpkg-deb -b debian/tmp ..
+binary-arch: build-arch
+build-arch:
+ # build jbigi
+ cd $(CURDIR)/core/c/jbigi && ./mbuild_jbigi.sh dynamic
+ # build jcpuid
+ cd $(CURDIR)/core/c/jcpuid && ./build.sh; fi
-binary-arch:
+binary: binary-arch binary-indep
-binary-indep:
+createcopyright:
+ @echo " *** Creating debian/copyright*** "
+ @rm -f $(CURDIR)/debian/copyright
+ @/bin/echo -e "This package was Debianized by kytv " >> $(CURDIR)/debian/copyright
+ @/bin/echo -e "Sun, 23 Jan 2011 20:26:51 +0000" >> $(CURDIR)/debian/copyright
+ @/bin/echo -e "\nIt was downloaded from http://www.i2p2.de" >> $(CURDIR)/debian/copyright
+ @/bin/echo -e "\nI2P is tracked upstream using the Monotone VCS" >> $(CURDIR)/debian/copyright
+ @/bin/echo -e "Complete information on fetching the source with monotone can be found" >> $(CURDIR)/debian/copyright
+ @/bin/echo -e "at http://www.i2p2.de/newdevelopers#getting-the-i2p-code\n\n\n" >> $(CURDIR)/debian/copyright
+ @/bin/cat $(CURDIR)/LICENSE.txt >> $(CURDIR)/debian/copyright
-clean:
- ant clean
- @exit 0
+
+override_dh_compress:
+ dh_compress -X.xsl -X.xml
+
+override_dh_installchangelogs:
+ dh_installchangelogs history.txt
+
+override_dh_installdocs:
+ dh_installdocs -plibjbigi-jni --link-doc=i2p
+ dh_installdocs --remaining-packages
+
+override_dh_dhlibdeps:
+ dh_shlibdeps -llibjbigi-jni debian/libjbigi-jni/usr/lib/jni/*.so
+
+#override_dh_installinit:
+# dh_installinit -r
get-orig-source:
- wget ${SOURCEURL}
+ uscan --verbose --rename --destdir $(CURDIR)/.. --watchfile debian/watch --force-download
diff --git a/debian/scripts/init b/debian/scripts/init
deleted file mode 100755
index e877bfd8a8..0000000000
--- a/debian/scripts/init
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/bin/sh
-
-### BEGIN INIT INFO
-# Provides: i2p
-# Required-Start: $remote_fs $syslog
-# Required-Stop: $remote_fs $syslog
-# Default-Start:
-# Default-Stop: 0 1 2 3 4 5 6
-# Short-Description: I2P anonymizing mixnet
-### END INIT INFO
-
-set -e
-
-. /lib/lsb/init-functions
-
-I2P () {
- su i2psvc -c "/usr/bin/i2prouter $1"
-}
-
-if [ `id -un` != "root" ]; then
- echo "This script ($0) must be run as root"
- exit 1
-fi
-
-case "$1" in
- start)
- log_daemon_msg "Starting I2P" "i2p"
- if I2P start; then
- log_end_msg 0
- else
- log_end_msg 1
- fi
- ;;
- stop)
- log_daemon_msg "Stopping I2P" "i2p"
- if I2P stop; then
- log_end_msg 0
- else
- log_end_msg 1
- fi
- ;;
- restart|force-reload)
- log_daemon_msg "Restarting I2P" "i2p"
- if I2P restart; then
- log_end_msg 0
- else
- log_end_msg 1
- fi
- ;;
- status)
- I2P status
- ;;
-
- *)
- log_action_msg "Usage: /etc/init.d/i2p {start|stop|restart|status}"
- exit 1
-esac
-
-exit 0
diff --git a/debian/scripts/postinst b/debian/scripts/postinst
deleted file mode 100755
index f6d7c034b5..0000000000
--- a/debian/scripts/postinst
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-set -e
-
-SVCHOME=/var/lib/i2p
-I2P=/usr/share/i2p
-I2PUSER=i2psvc
-
-useradd -d $SVCHOME -r $I2PUSER
-chown $I2PUSER:$I2PUSER $I2P -R
-mkdir -p $SVCHOME
-chown $I2PUSER:$I2PUSER $SVCHOME
-
-update-rc.d i2p defaults
-
-invoke-rc.d i2p start
diff --git a/debian/scripts/postrm b/debian/scripts/postrm
deleted file mode 100755
index 83f06ce781..0000000000
--- a/debian/scripts/postrm
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/bin/sh
-set -e
-
-# /etc/rc*.d/*i2p files
-update-rc.d -f i2p remove
-
-I2PUSER=i2psvc
-# delete $I2PUSER if it exists (it will not if this is a purge after a remove)
-# the "| cat" sets the exit code to zero so the script doesn't abort
-entry=`getent passwd | cut -d: -f1 | grep i2psvc | cat`
-if [ -n "$entry" ]; then
- exec userdel $I2PUSER
-fi
-
-# if somebody did updates in-network, there may be new files that dpkg
-# doesn't know about, so just to be sure
-I2P=/usr/share/i2p
-rm -rf $I2P
-
diff --git a/debian/scripts/prerm b/debian/scripts/prerm
deleted file mode 100755
index 1777a4ecba..0000000000
--- a/debian/scripts/prerm
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/bin/sh
-set -e
-
-invoke-rc.d i2p stop
-
-# stuff in /tmp
-TMPDIR=/tmp
-rm -f ${TMPDIR}/wrapper.log ${TMPDIR}/wrapper.log.1 ${TMPDIR}/wrapper.log.2 ${TMPDIR}/i2p.pid ${TMPDIR}/routerjvm.pid ${TMPDIR}/router.ping
-
-# dpkg doesn't know about these files, they were copied out of jbigi.jar by the router
-LIB=/usr/lib/i2p
-rm -f $LIB/libjbigi.so $LIB/libjcpuid.so
-
-# the home directory for the i2p daemon
-SVCHOME=/var/lib/i2p
-rm -rf $SVCHOME
-
-# if any user other than i2psvc has run i2p, the files in ~user/.i2p are not removed
-exit 0
diff --git a/debian/source/include-binaries b/debian/source/include-binaries
new file mode 100644
index 0000000000..47452d6c73
--- /dev/null
+++ b/debian/source/include-binaries
@@ -0,0 +1 @@
+apps/jetty/jetty-5.1.15.tgz
diff --git a/debian/source/local-options b/debian/source/local-options
new file mode 100644
index 0000000000..ea3c2fb791
--- /dev/null
+++ b/debian/source/local-options
@@ -0,0 +1,3 @@
+unapply-patches
+abort-on-upstream-changes
+
diff --git a/debian/source/options b/debian/source/options
new file mode 100644
index 0000000000..3fc59482d0
--- /dev/null
+++ b/debian/source/options
@@ -0,0 +1,2 @@
+compression="bzip2"
+compression-level=9
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000000..b33dbd242a
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,3 @@
+version=3
+
+http://mirror.i2p2.de/i2psource_(.*)\.tar\.bz2 debian uupdate