net-p2p/vuze-5.7.6.0: bump
authorMiroslav Šulc <fordfrog@gentoo.org>
Tue, 22 Oct 2019 19:47:57 +0000 (21:47 +0200)
committerMiroslav Šulc <fordfrog@gentoo.org>
Tue, 22 Oct 2019 19:49:30 +0000 (21:49 +0200)
Closes: https://bugs.gentoo.org/620404
Package-Manager: Portage-2.3.78, Repoman-2.3.17
Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
net-p2p/vuze/Manifest
net-p2p/vuze/files/vuze-5.7.6.0-unbundle-commons.patch [new file with mode: 0644]
net-p2p/vuze/vuze-5.7.6.0.ebuild [new file with mode: 0644]

index 36aa6b09c44dbab6a6adb7395c0bf34b8ad82340..7ebe96a96bbe2e6600709398e1bf86f7a1f08a14 100644 (file)
@@ -1,3 +1,4 @@
 DIST Vuze_4812_source.zip 9530217 BLAKE2B af55951a9d8b86a03483e6e9ebc6f63cd7a7305587d36ef863257b7b86e911f7012e73f532b3b4648000cfff5fa2fd2cd1848f0742791232ceee54f158a9c219 SHA512 7007c91f829c57d0f08b9da4ea3fcc8820efe14aeec7286cf764e5ac2d7d165f3a14abc6b0e92a617e21b45803f7c121fb00ddd8c5e8d9664509eb3337fc65bf
 DIST Vuze_5720_source.zip 10709515 BLAKE2B e2824c3486cbf942ba644563cf8a0b47d99f42cdba6c0fe2d93e47c5717f1331df632a4a100b6679f3f456697f70837202e84bf2fa89c362186353af98a36173 SHA512 073af0c68219884aaf1b860fcc04cf75edaf662f1e82fe6c49f615b928b00d1a50d25f348c6bf5a922fa1c5a53c7bce5f75b7a0c065602675bcb6d80c1c92edf
+DIST Vuze_5760_source.zip 10928786 BLAKE2B df8bbb797f2a1b0c92bc19be122a0da3b6382dc80f51bb652026e3d68503d19ddb3b16e3bc6c333f12c8bfa52b014f85b0812fd5683fe4553040feff39ab77d8 SHA512 c4c1cc84d3c8ce31772bd677f105f6d00e0a6d867d6890b6a834c9e189bb1752e065a64308cdf1315bace1ca4783843553b45fbf3c15240c57584e2926ba92c5
 DIST vuze-4.5.0.2-gentoo-patches.tar.bz2 3143 BLAKE2B 4acaf56539798102e498c2678c8f3239ecc141909738dd1a84fca5cb38516fb363da6ff87d65b08fe04b550d8aafc9f33fa2d404b70f5e34a3129a43080794b5 SHA512 aacaeb404d9b7dbb40d89b04f9ad26caf447202b1fcb63d532f5e01dc611152adbc38804563f1a35227a080b2eadec0e2e42d0baa163d1d5489eec65cd28f83d
diff --git a/net-p2p/vuze/files/vuze-5.7.6.0-unbundle-commons.patch b/net-p2p/vuze/files/vuze-5.7.6.0-unbundle-commons.patch
new file mode 100644 (file)
index 0000000..d8643db
--- /dev/null
@@ -0,0 +1,114 @@
+diff --git a/com/aelitis/azureus/core/metasearch/Result.java b/com/aelitis/azureus/core/metasearch/Result.java
+index bec05e1..9481f86 100644
+--- a/com/aelitis/azureus/core/metasearch/Result.java
++++ b/com/aelitis/azureus/core/metasearch/Result.java
+@@ -28,7 +28,7 @@ import java.util.Locale;
+ import java.util.Map;
+ import java.util.Random;
+-import org.apache.commons.lang.Entities;
++import org.apache.commons.lang.StringEscapeUtils;
+ import org.gudy.azureus2.core3.util.AENetworkClassifier;
+ import org.gudy.azureus2.core3.util.DisplayFormatters;
+ import org.gudy.azureus2.core3.util.HostNameToIPResolver;
+@@ -464,6 +464,6 @@ public abstract class Result {
+               if ( input == null ){
+                       return( null );
+               }
+-              return( Entities.HTML40.unescape( input ));
++              return( StringEscapeUtils.unescapeHtml( input ));
+       }
+ }
+diff --git a/com/aelitis/azureus/core/metasearch/impl/web/WebResult.java b/com/aelitis/azureus/core/metasearch/impl/web/WebResult.java
+index 2d353b8..8ebf9ff 100644
+--- a/com/aelitis/azureus/core/metasearch/impl/web/WebResult.java
++++ b/com/aelitis/azureus/core/metasearch/impl/web/WebResult.java
+@@ -87,14 +87,14 @@ public class WebResult extends Result {
+       public void setNameFromHTML(String name) {
+               if(name != null) {
+                       name = removeHTMLTags(name);
+-                      this.name = Entities.HTML40.unescape(name);
++                      this.name = StringEscapeUtils.unescapeHtml(name);
+               }
+       }
+       
+       public void setCommentsFromHTML(String comments) {
+               if(comments != null) {
+                       comments = removeHTMLTags(comments);
+-                      comments = Entities.HTML40.unescape(comments);
++                      comments = StringEscapeUtils.unescapeHtml(comments);
+                       comments = comments.replaceAll(",", "");
+                       comments = comments.replaceAll(" ", "");
+                       try{
+@@ -107,7 +107,7 @@ public class WebResult extends Result {
+       public void setCategoryFromHTML(String category) {
+               if(category != null) {
+                       category = removeHTMLTags(category);
+-                      this.category = Entities.HTML40.unescape(category).trim();
++                      this.category = StringEscapeUtils.unescapeHtml(category).trim();
+                       /*int separator = this.category.indexOf(">");
+                       
+                       if(separator != -1) {
+@@ -136,7 +136,7 @@ public class WebResult extends Result {
+       public void setNbPeersFromHTML(String nbPeers) {
+               if(nbPeers != null) {
+                       nbPeers = removeHTMLTags(nbPeers);
+-                      String nbPeersS = Entities.HTML40.unescape(nbPeers);
++                      String nbPeersS = StringEscapeUtils.unescapeHtml(nbPeers);
+                       nbPeersS = nbPeersS.replaceAll(",", "");
+                       nbPeersS = nbPeersS.replaceAll(" ", "");
+                       try {
+@@ -151,7 +151,7 @@ public class WebResult extends Result {
+       public void setNbSeedsFromHTML(String nbSeeds) {
+               if(nbSeeds != null) {
+                       nbSeeds = removeHTMLTags(nbSeeds);
+-                      String nbSeedsS = Entities.HTML40.unescape(nbSeeds);
++                      String nbSeedsS = StringEscapeUtils.unescapeHtml(nbSeeds);
+                       nbSeedsS = nbSeedsS.replaceAll(",", "");
+                       nbSeedsS = nbSeedsS.replaceAll(" ", "");
+                       try {
+@@ -166,7 +166,7 @@ public class WebResult extends Result {
+       public void setNbSuperSeedsFromHTML(String nbSuperSeeds) {
+               if(nbSuperSeeds != null) {
+                       nbSuperSeeds = removeHTMLTags(nbSuperSeeds);
+-                      String nbSuperSeedsS = Entities.HTML40.unescape(nbSuperSeeds);
++                      String nbSuperSeedsS = StringEscapeUtils.unescapeHtml(nbSuperSeeds);
+                       nbSuperSeedsS = nbSuperSeedsS.replaceAll(",", "");
+                       nbSuperSeedsS = nbSuperSeedsS.replaceAll(" ", "");
+                       try {
+@@ -248,7 +248,7 @@ public class WebResult extends Result {
+       public void setPublishedDateFromHTML(String publishedDate) {
+               if(publishedDate != null && publishedDate.length() > 0) {
+                       publishedDate = removeHTMLTags(publishedDate);
+-                      String publishedDateS = Entities.HTML40.unescape(publishedDate).replace((char)160,(char)32);
++                      String publishedDateS = StringEscapeUtils.unescapeHtml(publishedDate).replace((char)160,(char)32);
+                       this.publishedDate = dateParser.parseDate(publishedDateS);
+               }
+       }
+@@ -257,7 +257,7 @@ public class WebResult extends Result {
+       public void setSizeFromHTML(String size) {
+               if(size != null) {
+                       size = removeHTMLTags(size);
+-                      String sizeS = Entities.HTML40.unescape(size).replace((char)160,(char)32);
++                      String sizeS = StringEscapeUtils.unescapeHtml(size).replace((char)160,(char)32);
+                       sizeS = sizeS.replaceAll("<[^>]+>", " ");
+                       //Add a space between the digits and unit if there is none
+                       sizeS = sizeS.replaceFirst("(\\d)([a-zA-Z])", "$1 $2");
+@@ -303,7 +303,7 @@ public class WebResult extends Result {
+       public void setVotesFromHTML(String votes_str) {
+               if(votes_str != null) {
+                       votes_str = removeHTMLTags(votes_str);
+-                      votes_str = Entities.HTML40.unescape(votes_str);
++                      votes_str = StringEscapeUtils.unescapeHtml(votes_str);
+                       votes_str = votes_str.replaceAll(",", "");
+                       votes_str = votes_str.replaceAll(" ", "");
+                       try {
+@@ -317,7 +317,7 @@ public class WebResult extends Result {
+       public void setVotesDownFromHTML(String votes_str) {
+               if(votes_str != null) {
+                       votes_str = removeHTMLTags(votes_str);
+-                      votes_str = Entities.HTML40.unescape(votes_str);
++                      votes_str = StringEscapeUtils.unescapeHtml(votes_str);
+                       votes_str = votes_str.replaceAll(",", "");
+                       votes_str = votes_str.replaceAll(" ", "");
+                       try {
diff --git a/net-p2p/vuze/vuze-5.7.6.0.ebuild b/net-p2p/vuze/vuze-5.7.6.0.ebuild
new file mode 100644 (file)
index 0000000..893c967
--- /dev/null
@@ -0,0 +1,145 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+JAVA_PKG_IUSE="source"
+
+inherit eutils java-pkg-2 java-ant-2 xdg-utils desktop
+
+MY_PV=$(ver_rs 1- "")
+MY_SRC="Vuze_${MY_PV}"
+
+DESCRIPTION="BitTorrent client in Java, formerly called Azureus"
+HOMEPAGE="http://www.vuze.com/"
+SRC_URI="mirror://sourceforge/azureus/${PN}/${MY_SRC}/${MY_SRC}_source.zip"
+LICENSE="GPL-2 BSD"
+
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+
+# bundles parts of http://www.programmers-friend.org/
+# bundles bcprov - 1.37 required but not in the tree
+CDEPEND="
+       dev-java/log4j:0
+       dev-java/swt:3.8[cairo]
+       dev-java/commons-cli:1
+       dev-java/json-simple:0
+       dev-java/commons-lang:2.1"
+
+RDEPEND="
+       ${CDEPEND}
+       >=virtual/jre-1.8"
+
+DEPEND="
+       ${CDEPEND}
+       app-arch/unzip
+       dev-util/desktop-file-utils
+       >=virtual/jdk-1.8"
+
+PDEPEND="~net-p2p/vuze-coreplugins-${PV}"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-5.3.0.0-java5.patch
+       "${FILESDIR}"/${PN}-5.3.0.0-remove-classpath.patch
+       "${FILESDIR}"/${PN}-5.3.0.0-disable-shared-plugins.patch
+       "${FILESDIR}"/${PN}-5.7.2.0-disable-osx.patch
+       "${FILESDIR}"/${PN}-5.3.0.0-disable-updaters.patch
+       "${FILESDIR}"/${P}-unbundle-commons.patch
+       "${FILESDIR}"/${PN}-5.3.0.0-unbundle-json.patch
+       "${FILESDIR}"/${PN}-5.6.0.0-commons-lang-entities.patch
+#      "${FILESDIR}"/${P}-use-jdk-cipher-only.patch # bcprov
+)
+
+src_unpack() {
+       mkdir -p "${S}" || die
+       cd "${S}" || die
+       unpack ${A}
+
+       # build.xml disappeared from 4.4.0.0 although it was there in 4.3.1.4
+       if [[ -f build.xml ]]; then
+               die "upstream has build.xml again, don't overwrite"
+       fi
+       cp "${FILESDIR}"/build.xml "${S}" || die "failed to copy build.xml"
+}
+
+src_prepare() {
+       # upstream likes randomly changing a subset of files to CRLF every release
+       edos2unix $(find "${S}" -type f -name "*.java")
+
+       default
+
+       # OSX / Windows
+       rm "${S}"/org/gudy/azureus2/ui/swt/osx/CarbonUIEnhancer.java || die
+       rm "${S}"/org/gudy/azureus2/ui/swt/osx/Start.java || die
+       rm "${S}"/org/gudy/azureus2/ui/swt/win32/Win32UIEnhancer.java || die
+
+       # Tree2 file does not compile on linux
+       rm -rf "${S}"/org/eclipse || die
+       # Bundled apache
+       rm -rf "${S}"/org/apache || die
+       # Bundled json
+       rm -rf "${S}"/org/json || die
+       # Bundled bcprov
+       # currently disabled - requires bcprov 1.37
+       #rm -rf "${S}"/org/bouncycastle || die
+
+       rm -rf "${S}"/org/gudy/azureus2/ui/console/multiuser/TestUserManager.java || die
+       mkdir -p "${S}"/build/libs || die
+}
+
+JAVA_ANT_REWRITE_CLASSPATH="true"
+EANT_GENTOO_CLASSPATH="swt-3.8,json-simple,log4j,commons-cli-1 commons-lang-2.1"
+
+src_compile() {
+       local mem
+       use amd64 && mem="320"
+       use x86   && mem="256"
+       use ppc   && mem="192"
+       use ppc64 && mem="256"
+       use sparc && mem="320"
+       export ANT_OPTS="-Xmx${mem}m"
+       java-pkg-2_src_compile
+
+       # bug #302058 - build.xml excludes .txt but upstream jar has it...
+       jar uf dist/Azureus2.jar ChangeLog.txt || die
+}
+
+src_install() {
+       java-pkg_dojar dist/Azureus2.jar
+       dodoc ChangeLog.txt
+
+       java-pkg_dolauncher "${PN}" \
+               --main org.gudy.azureus2.ui.common.Main -pre "${FILESDIR}/${PN}-4.1.0.0-pre" \
+               --java_args '-Dazureus.install.path=/usr/share/vuze/ ${JAVA_OPTIONS}' \
+               --pkg_args '--ui=${UI}'
+       dosym vuze /usr/bin/azureus
+
+       # https://bugs.gentoo.org/show_bug.cgi?id=204132
+       java-pkg_register-environment-variable MOZ_PLUGIN_PATH /usr/lib/nsbrowser/plugins
+
+       newicon "${S}"/org/gudy/azureus2/ui/icons/a32.png vuze.png
+       domenu "${FILESDIR}"/${PN}.desktop
+
+       use source && java-pkg_dosrc "${S}"/{com,edu,org}
+}
+
+pkg_postinst() {
+       ewarn "Running Vuze as root is not supported and may result in untracked"
+       ewarn "updates to shared components and then collisions on updates"
+       echo
+       elog "Vuze was formerly called Azureus and many references to the old name remain."
+       elog
+       elog "After running Vuze for the first time, configuration options will be"
+       elog "placed in '~/.azureus/gentoo.config'."
+       elog
+       elog "If you need to change some startup options, you should modify this file"
+       elog "rather than the startup script.  You can enable the console UI by"
+       elog "editing this config file."
+       echo
+       xdg_desktop_database_update
+}
+
+pkg_postrm() {
+       xdg_desktop_database_update
+}