From a45f5374e4bbe6f45ffef759a8c6d2eca8a71932 Mon Sep 17 00:00:00 2001 From: zzz <zzz@mail.i2p> Date: Thu, 23 Aug 2018 22:10:04 +0000 Subject: [PATCH] Ubuntu 0.9.36 --- debian-alt/{artful => bionic}/changelog | 6 + debian-alt/bionic/rules | 219 ++++++++++++++++++++++++ debian-alt/doc/launchpad.txt | 10 +- debian-alt/precise/changelog | 6 + debian-alt/trusty/changelog | 6 + debian-alt/xenial/changelog | 6 + 6 files changed, 248 insertions(+), 5 deletions(-) rename debian-alt/{artful => bionic}/changelog (99%) create mode 100755 debian-alt/bionic/rules diff --git a/debian-alt/artful/changelog b/debian-alt/bionic/changelog similarity index 99% rename from debian-alt/artful/changelog rename to debian-alt/bionic/changelog index f0546b03b0..2c27b980e0 100644 --- a/debian-alt/artful/changelog +++ b/debian-alt/bionic/changelog @@ -1,3 +1,9 @@ +i2p (0.9.36-2ubuntu1) bionic; urgency=medium + + * New upstream version 0.9.36 + + -- zzz on i2p (key signing) <zzz@i2pmail.org> Wed, 23 Aug 2018 12:12:12 +0000 + i2p (0.9.35-1ubuntu1) artful; urgency=medium * New upstream version 0.9.35 diff --git a/debian-alt/bionic/rules b/debian-alt/bionic/rules new file mode 100755 index 0000000000..12cbd12397 --- /dev/null +++ b/debian-alt/bionic/rules @@ -0,0 +1,219 @@ +#!/usr/bin/make -f + +# Quoting Policy version 3.9.2.0, 2011-04-07 section 4.9: + +# /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 'The build target is disabled. Use the appropriate binary target.' + +#JAVA_HOME=/usr/lib/jvm/default-java +export DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH) +JAVA_HOME=/usr/lib/jvm/java-8-openjdk-$(DEB_HOST_ARCH) +I2P=$(CURDIR)/pkg-temp +ROUTERVERSION=$(CURDIR)/router/java/src/net/i2p/router/RouterVersion.java +export DEB_BUILD_HARDENING=1 + +# I2P's version will be displayed in the router console as "$I2PVERSION-$EXTRAPREFIX$DEBIANVERSION", eg. 0.8.12-0-deb1 +#export EXTRAPREFIX := deb +export JAVA_HOME I2P +export DEBIANVERSION := $(shell dpkg-parsechangelog |awk -F' ' '/^Version:/{print $$2}' |sed 's/.*-\([.0-9A-Za-z~+]\{1,\}\)$$/\1/') +# required for jbigi/jcpuid build +export BITS := $(shell dpkg-architecture -qDEB_HOST_ARCH_BITS) +#export DEB_HOST_ARCH_CPU := $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU) + +%: + dh $@ --with systemd,bash-completion + +clean: createcopyright + +override_dh_auto_clean: + -[ -r $(CURDIR)/debian/routerversion.java.bak ] && mv -f $(CURDIR)/debian/routerversion.java.bak $(ROUTERVERSION) + dh_auto_clean + ant distclean + find $(CURDIR)/core \( -name '*\.so' -o -name '*\.o' \) -exec rm -f {} \; + rm -rf $(CURDIR)/core/c/jcpuid/lib/ + rm -f $(CURDIR)/installer/lib/wrapper/all/wrapper.jar + rm -rf $(CURDIR)/debian/python-i2p + rm -f $(CURDIR)/override.properties + rm -f $(CURDIR)/apps/susidns/src/lib/standard.jar + rm -f $(CURDIR)/apps/susidns/src/lib/jstl.jar + rm -f $(CURDIR)/apps/susidns/src/lib/jstlel.jar + debconf-updatepo + +override_dh_auto_build: + +override_dh_systemd_enable: + # We purposely do not set I2P to start at boot. + # This matches the behavior of the initscript + # and the setting RUN_DAEMON=false in /etc/default/i2p + +binary-indep: build-indep +build-indep: + dh_prep + mkdir -p $(CURDIR)/installer/lib/wrapper/all + ln -sf /usr/share/java/wrapper.jar $(CURDIR)/installer/lib/wrapper/all/wrapper.jar + if [ ! -e $(CURDIR)/debian/routerversion.java.bak ]; then \ + cp $(ROUTERVERSION) $(CURDIR)/debian/routerversion.java.bak; \ + fi +ifeq "$(findstring deb,$(shell grep 'deb' $(ROUTERVERSION)))" "" + sed -e "s/\(.*EXTRA\ =\ \)[^ ]*\"\(.*\)\"/\1\"\2-$$EXTRAPREFIX$$DEBIANVERSION\"/" < $(ROUTERVERSION) > $(ROUTERVERSION).tmp + mv -f $(ROUTERVERSION).tmp $(ROUTERVERSION) +else + @echo "Already found deb in version, not doing anything" +endif + @# build options + @/bin/echo -e "javac.version=1.8" > $(CURDIR)/override.properties + @/bin/echo -e "javac.compilerargs=-bootclasspath $(JAVA_HOME)/jre/lib/rt.jar:$(JAVA_HOME)/jre/lib/jce.jar" >> $(CURDIR)/override.properties + @/bin/echo -e "javac.compilerargs7=-bootclasspath $(JAVA_HOME)/jre/lib/rt.jar:$(JAVA_HOME)/jre/lib/jce.jar" >> $(CURDIR)/override.properties + @/bin/echo -e "build.built-by=debian" >> $(CURDIR)/override.properties + @/bin/echo -e "build.reproducible=true" >> $(CURDIR)/override.properties + + @# debian and ubuntu: everywhere + @/bin/echo -e "with-geoip-database=true" >> $(CURDIR)/override.properties + + @# ubuntu: in xenial + @# debian: in jessie-backports stretch sid + @/bin/echo -e "with-libjetty9-java=true" >> $(CURDIR)/override.properties + mkdir -p $(CURDIR)/apps/jetty/jettylib + ln -sf /usr/share/java/jetty9-continuation.jar $(CURDIR)/apps/jetty/jettylib/jetty-continuation.jar + ln -sf /usr/share/java/jetty9-deploy.jar $(CURDIR)/apps/jetty/jettylib/jetty-deploy.jar + ln -sf /usr/share/java/jetty9-http.jar $(CURDIR)/apps/jetty/jettylib/jetty-http.jar + ln -sf /usr/share/java/jetty9-io.jar $(CURDIR)/apps/jetty/jettylib/jetty-io.jar + ln -sf /usr/share/java/jetty9-rewrite.jar $(CURDIR)/apps/jetty/jettylib/jetty-rewrite-handler.jar + ln -sf /usr/share/java/jetty9-security.jar $(CURDIR)/apps/jetty/jettylib/jetty-security.jar + ln -sf /usr/share/java/jetty9-servlet.jar $(CURDIR)/apps/jetty/jettylib/jetty-servlet.jar + ln -sf /usr/share/java/jetty9-servlets.jar $(CURDIR)/apps/jetty/jettylib/jetty-servlets.jar + ln -sf /usr/share/java/jetty9-start.jar $(CURDIR)/apps/jetty/jettylib/jetty-start.jar + ln -sf /usr/share/java/jetty9-util.jar $(CURDIR)/apps/jetty/jettylib/jetty-util.jar + ln -sf /usr/share/java/jetty9-webapp.jar $(CURDIR)/apps/jetty/jettylib/jetty-webapp.jar + ln -sf /usr/share/java/jetty9-xml.jar $(CURDIR)/apps/jetty/jettylib/jetty-xml.jar + ln -sf /usr/share/java/jetty9-server.jar $(CURDIR)/apps/jetty/jettylib/org.mortbay.jetty.jar + ln -sf /usr/share/java/jetty9-jmx.jar $(CURDIR)/apps/jetty/jettylib/org.mortbay.jmx.jar + @# following two are from libservlet3.1-java which is a dependency of libjetty9-java + ln -sf /usr/share/java/servlet-api-3.1.jar $(CURDIR)/apps/jetty/jettylib/javax.servlet.jar + @# this is roughly the same as tomcat8-jsp-api.jar, we use this one + ln -sf /usr/share/java/jsp-api-2.3.jar $(CURDIR)/apps/jetty/jettylib/jsp-api.jar + + @# debian and ubuntu: wheezy-backports, jessie+, xenial+ + @/bin/echo -e "with-libtomcat8-java=true" >> $(CURDIR)/override.properties + mkdir -p $(CURDIR)/apps/jetty/jettylib + ln -sf /usr/share/java/tomcat8-api.jar $(CURDIR)/apps/jetty/jettylib/tomcat-api.jar + ln -sf /usr/share/java/tomcat8-coyote.jar $(CURDIR)/apps/jetty/jettylib/tomcat-coyote.jar + ln -sf /usr/share/java/tomcat8-el-api.jar $(CURDIR)/apps/jetty/jettylib/commons-el.jar + ln -sf /usr/share/java/tomcat8-jasper.jar $(CURDIR)/apps/jetty/jettylib/jasper-runtime.jar + ln -sf /usr/share/java/tomcat8-jasper-el.jar $(CURDIR)/apps/jetty/jettylib/jasper-el.jar + ln -sf /usr/share/java/tomcat8-juli.jar $(CURDIR)/apps/jetty/jettylib/commons-logging.jar + ln -sf /usr/share/java/tomcat8-util.jar $(CURDIR)/apps/jetty/jettylib/tomcat-util.jar + ln -sf /usr/share/java/tomcat8-util-scan.jar $(CURDIR)/apps/jetty/jettylib/tomcat-util-scan.jar + + @# debian and ubuntu: stretch+, zesty+ + @/bin/echo -e "with-libtaglibs-standard=true" >> $(CURDIR)/override.properties + ln -sf /usr/share/java/taglibs-standard-spec.jar $(CURDIR)/apps/susidns/src/lib/jstl.jar + ln -sf /usr/share/java/taglibs-standard-impl.jar $(CURDIR)/apps/susidns/src/lib/standard.jar + ln -sf /usr/share/java/taglibs-standard-jstlel.jar $(CURDIR)/apps/susidns/src/lib/jstlel.jar + + @# debian and ubuntu: everywhere + @#/bin/echo -e "with-glassfish-javaee=true" >> $(CURDIR)/override.properties + @# glassfish-javaee.jar has ancient and conflicting classes, e.g. javax.mail + @#ln -sf /usr/share/java/glassfish-javaee.jar $(CURDIR)/apps/susidns/src/lib/jstl.jar + @#ln -sf /usr/share/java/glassfish-appserv-jstl.jar $(CURDIR)/apps/susidns/src/lib/standard.jar + + @# debian and ubuntu: everywhere + @#/bin/echo -e "with-libjakarta-taglibs-standard-java=true" >> $(CURDIR)/override.properties + @#ln -sf /usr/share/java/standard.jar $(CURDIR)/apps/susidns/src/lib/standard.jar + + @# debian and ubuntu: everywhere + @#/bin/echo -e "with-libjstl1.1-java=true" >> $(CURDIR)/override.properties + @#ln -sf /usr/share/java/jstl1.1.jar $(CURDIR)/apps/susidns/src/lib/jstl.jar + + @# debian and ubuntu: everywhere + @/bin/echo -e "with-gettext-base=true" >> $(CURDIR)/override.properties + @mkdir -p $(CURDIR)/core/java/build + ln -sf /usr/share/java/libintl.jar $(CURDIR)/core/java/build/libintl.jar + + @# debian and ubuntu: everywhere + @/bin/echo -e "with-libgetopt-java=true" >> $(CURDIR)/override.properties + @mkdir -p $(CURDIR)/core/java/build + ln -sf /usr/share/java/gnu-getopt.jar $(CURDIR)/core/java/build/gnu-getopt.jar + + @# debian: everywhere; ubuntu: trusty+ + @/bin/echo -e "with-famfamfam-flag-png=true" >> $(CURDIR)/override.properties + + @# 2 MB of dependencies vs. 20 KB of copied source + @# Requires 4.4 or higher. + @# Debian: Not in wheezy/jessie + @# Ubuntu: Only in wily and later + @#/bin/echo -e "with-libhttpclient-java=true" >> $(CURDIR)/override.properties + @#mkdir -p $(CURDIR)/core/java/build + @#ln -sf /usr/share/java/httpclient.jar $(CURDIR)/core/java/build/httpclient.jar + @#ln -sf /usr/share/java/httpcore.jar $(CURDIR)/core/java/build/httpcore.jar + + TZ=UTC JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8 ant preppkg-unix javadoc + echo router.updateDisabled=true > $(I2P)/router.config + mv $(I2P)/runplain.sh $(I2P)/i2prouter-nowrapper + +binary-arch: build-arch +build-arch: + # build jbigi + cd $(CURDIR)/core/c/jbigi && ./build_jbigi.sh dynamic + # build jcpuid + cd $(CURDIR)/core/c/jcpuid && ./build.sh + +binary: binary-arch binary-indep + +createcopyright: + @echo " *** Creating debian/copyright*** " + @rm -f $(CURDIR)/debian/copyright + @/bin/echo -e "This package was Debianized by kytv <killyourtv@i2pmail.org>" >> $(CURDIR)/debian/copyright + @/bin/echo -e "Sun, 23 Jan 2011 20:26:51 +0000" >> $(CURDIR)/debian/copyright + @/bin/echo -e "\nIt was downloaded from https://geti2p.net" >> $(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 https://geti2p.net/newdevelopers#getting-the-i2p-code\n\n\n" >> $(CURDIR)/debian/copyright + @/bin/cat $(CURDIR)/LICENSE.txt >> $(CURDIR)/debian/copyright + @/bin/echo -e "\n\n The debian packaging has been released into the public domain." >> $(CURDIR)/debian/copyright + +override_dh_compress: + dh_compress -X.xsl -X.xml + +override_dh_install: + dh_install --list-missing + dh_apparmor --profile-name=system_i2p -pi2p + dh_apparmor --profile-name=usr.bin.i2prouter -pi2p + +override_dh_installchangelogs: + dh_installchangelogs history.txt + +override_dh_installdocs: + dh_installdocs -pi2p -plibjbigi-jni --link-doc=i2p-router + dh_installdocs --remaining-packages + +override_dh_shlibdeps: + dh_shlibdeps -llibjbigi-jni debian/libjbigi-jni/usr/lib/jni/*.so + +#override_dh_installinit: +# dh_installinit -r + +override_dh_builddeb: + dh_builddeb -- -Zxz + +get-orig-source: + uscan --verbose --rename --destdir $(CURDIR)/.. --watchfile debian/watch --force-download diff --git a/debian-alt/doc/launchpad.txt b/debian-alt/doc/launchpad.txt index b6f18ce223..f2ca6dac11 100644 --- a/debian-alt/doc/launchpad.txt +++ b/debian-alt/doc/launchpad.txt @@ -17,7 +17,7 @@ Min version Max version Uses src pkg Copied to Debian precise saucy precise wheezy trusty wily precise jessie xenial yakkety xenial -- -artful cosmic artful stretch, buster, sid +bionic cosmic bionic stretch, buster, sid Prep (first time only) @@ -34,7 +34,7 @@ Prep (first time only) - Make a PPA, lets call it 'test' - OPTIONAL: Go to i2p.packages PPA and copy over existing I2P to your PPA: (select "copy existing binaries") - trusty, xenial, artful + trusty, xenial, bionic not precise (only if building for precise which you probably aren't) not utopic (obsolete, disabled by launchpad) - Go to i2p.packages PPA and copy over service-wrapper-java to your PPA. @@ -42,7 +42,7 @@ Prep (first time only) (select "copy existing binaries") trusty not precise (only if building for precise which you probably aren't) - not xenial, artful (more recent versions 3.5.25-2 or 3.5.26-3 are in official launchpad) + not xenial, bionic (more recent versions 3.5.25-2 or 3.5.26-3 are in official launchpad) not utopic (obsolete, disabled by launchpad) - you need the following packages @@ -67,7 +67,7 @@ Generate files to upload (or add -kkeyid argument to debuild, which you must do if you want to sign with a subkey) run gpg -K to list your private keys -- ant debian-release-tarball (this is currently for artful and higher) +- ant debian-release-tarball (this is currently for bionic and higher) (ant precise-release-tarball for precise thru wily... only do this once for both the precise and trusty build) (ant xenial-release-tarball for xenial) this will make a directory ../i2p-0.9.XX-0-xxxxxxxx/ @@ -152,7 +152,7 @@ Release ------- Then copy from your PPA to the i2p-maintainers PPA. -Then in the i2p-maintainers PPA, copy artful to bionic. +Then in the i2p-maintainers PPA, copy bionic to cosmic. Did a new series open up since the last time you did this? Copy to the new one also. (select "copy existing binaries") Copy xenial first and wait for it to be published in i2p-maintainers or the others will fail. diff --git a/debian-alt/precise/changelog b/debian-alt/precise/changelog index 2d9f61a09d..372c0f72f8 100644 --- a/debian-alt/precise/changelog +++ b/debian-alt/precise/changelog @@ -1,3 +1,9 @@ +i2p (0.9.36p-1~precise+1) precise; urgency=medium + + * Backport to Precise + + -- zzz on i2p (key signing) <zzz@i2pmail.org> Wed, 23 Aug 2018 12:12:12 +0000 + i2p (0.9.35p-1~precise+1) precise; urgency=medium * Backport to Precise diff --git a/debian-alt/trusty/changelog b/debian-alt/trusty/changelog index c04598c6b0..f07b95ad37 100644 --- a/debian-alt/trusty/changelog +++ b/debian-alt/trusty/changelog @@ -1,3 +1,9 @@ +i2p (0.9.36p-2~trusty+1) trusty; urgency=medium + + * Backport to Trusty + + -- zzz on i2p (key signing) <zzz@i2pmail.org> Wed, 23 Aug 2018 12:12:12 +0000 + i2p (0.9.35p-2~trusty+1) trusty; urgency=medium * Backport to Trusty diff --git a/debian-alt/xenial/changelog b/debian-alt/xenial/changelog index 76ff0ded06..715307cadb 100644 --- a/debian-alt/xenial/changelog +++ b/debian-alt/xenial/changelog @@ -1,3 +1,9 @@ +i2p (0.9.36x-1~xenial+1) xenial; urgency=medium + + * Backport to Xenial + + -- zzz on i2p (key signing) <zzz@i2pmail.org> Wed, 23 Aug 2018 12:12:12 +0000 + i2p (0.9.35x-1~xenial+1) xenial; urgency=medium * Backport to Xenial -- GitLab