summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net-p2p/vuze/ChangeLog19
-rw-r--r--net-p2p/vuze/Manifest30
-rw-r--r--net-p2p/vuze/files/vuze-5.3.0.0-cache-size.patch11
-rw-r--r--net-p2p/vuze/files/vuze-5.3.0.0-disable-osx.patch60
-rw-r--r--net-p2p/vuze/files/vuze-5.3.0.0-disable-shared-plugins.patch33
-rw-r--r--net-p2p/vuze/files/vuze-5.3.0.0-disable-updaters.patch45
-rw-r--r--net-p2p/vuze/files/vuze-5.3.0.0-invalid-characters.patch24
-rw-r--r--net-p2p/vuze/files/vuze-5.3.0.0-java5.patch11
-rw-r--r--net-p2p/vuze/files/vuze-5.3.0.0-remove-classpath.patch10
-rw-r--r--net-p2p/vuze/files/vuze-5.3.0.0-unbundle-commons.patch110
-rw-r--r--net-p2p/vuze/files/vuze-5.3.0.0-unbundle-json.patch42
-rw-r--r--net-p2p/vuze/files/vuze-5.3.0.0-use-jdk-cipher-only.patch41
-rw-r--r--net-p2p/vuze/vuze-4.7.1.2-r1.ebuild145
-rw-r--r--net-p2p/vuze/vuze-5.3.0.0.ebuild142
14 files changed, 567 insertions, 156 deletions
diff --git a/net-p2p/vuze/ChangeLog b/net-p2p/vuze/ChangeLog
index 0cd46426d2a5..6d646523f67a 100644
--- a/net-p2p/vuze/ChangeLog
+++ b/net-p2p/vuze/ChangeLog
@@ -1,6 +1,23 @@
# ChangeLog for net-p2p/vuze
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-p2p/vuze/ChangeLog,v 1.58 2014/03/09 03:43:42 rhill Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/vuze/ChangeLog,v 1.59 2014/03/09 07:38:47 rhill Exp $
+
+*vuze-5.3.0.0 (09 Mar 2014)
+
+ 09 Mar 2014; Ryan Hill <rhill@gentoo.org> -vuze-4.7.1.2-r1.ebuild,
+ +vuze-5.3.0.0.ebuild, +files/vuze-5.3.0.0-cache-size.patch,
+ +files/vuze-5.3.0.0-disable-osx.patch,
+ +files/vuze-5.3.0.0-disable-shared-plugins.patch,
+ +files/vuze-5.3.0.0-disable-updaters.patch,
+ +files/vuze-5.3.0.0-invalid-characters.patch,
+ +files/vuze-5.3.0.0-java5.patch, +files/vuze-5.3.0.0-remove-classpath.patch,
+ +files/vuze-5.3.0.0-unbundle-commons.patch,
+ +files/vuze-5.3.0.0-unbundle-json.patch,
+ +files/vuze-5.3.0.0-use-jdk-cipher-only.patch:
+ Version bump (bug #481582). Unbundle commons-lang. Disable installation of
+ shared plugins and plugin updates due to write permissions. Use most of
+ Fedora's patchset. Temporarily use bundled bcprov as the required version is
+ not in the tree and would require a downgrade. Other misc fixes. Remove old.
09 Mar 2014; Ryan Hill <rhill@gentoo.org> metadata.xml:
Change my email.
diff --git a/net-p2p/vuze/Manifest b/net-p2p/vuze/Manifest
index 555416ef6cc4..e5a21da8c855 100644
--- a/net-p2p/vuze/Manifest
+++ b/net-p2p/vuze/Manifest
@@ -3,24 +3,34 @@ Hash: SHA256
AUX build.xml 2343 SHA256 56fe791e654e16bafdac9783a1290576fa39fc3e83af162475937a76bfcc8469 SHA512 30a1a2ddd67122352edc9f212acdb3ebff32a6418904903115a8a7bf83ef4298c9fc602881cbfb7c37cc57384bf649cd02e32597ce16a5c6fcb0b09dadad8fa5 WHIRLPOOL dfaeaefd65d410428287454a9161f553edd186947bd65c82b80351b2bb9316cbaf7ecdad3d21e487afa1fca3f3852e905d06e8c5db7d691b4e70439a7dddb64b
AUX vuze-4.1.0.0-pre 1850 SHA256 aae3963e55330eb292176052a2cd72b8a9c322fd63fb71bb0fe6456df7d329e5 SHA512 04c5a77bff69e50963f3122c46f549dec78e462bfa0697b32ffe8630d22612a64f1adc52bc8d7d8868d972c4bdac3082a1e9b513459d9f97915ad87d05ab2b4a WHIRLPOOL 8d20a2850dc9724f3e02bc69158faaee931035fd98d7c902c6973e7197db17908e6bc67deeb516bba1fd4b4ff8defc4ca67beb8b11a6305fa09e8296d06f9c19
+AUX vuze-5.3.0.0-cache-size.patch 503 SHA256 f7548d2dc970d4111c41f4f780a65415ab7050db842b89a3155f6920c7bd1afb SHA512 2d28e172edd38f8394d392578e6e15c9a43743db54527b088d384b804fb8106d19bc325ff7e8bc1667a06c921b40c61e3831fbcea38eabe5fe31322f11f6d392 WHIRLPOOL 14b84d9d3973b3a7421b3b1910d6f8d970da39e57c242da8e8872dfec6055d2b3df857894076320b31a0d971f9b1ac6ff155343d4488ec176dcdf80342e5e9d1
+AUX vuze-5.3.0.0-disable-osx.patch 1841 SHA256 8d37e1090e938d91fc539d043f0b82dd9106dfd38c6c621824f6041d7137cee3 SHA512 f5c60b188eb5e4c48dfd73c9de03c4eb0884dfb36f147d6ef4be6d2e26602d7de6f80de4be4a64d94c1d9ad9cdbbd928b1cd4e00f09c57e8eb72d7d0f623e1c7 WHIRLPOOL b931704e6cad2f2f03b67bd00bab31243fe73055416da575782e8fe642705f0ed97a3707dcf1fadfbda412b11835f900bf6d4fd443ff5aeb5b327bf6d95290fc
+AUX vuze-5.3.0.0-disable-shared-plugins.patch 1069 SHA256 248f5a570e6099def1d155c2aab1dff4c2aa1fea81fac8f53a1da4900b9b360f SHA512 ee9e6513b2dd1d4e986f4c57fd5ace3593f98f7eaeb5e454fc7b5fb3c6876b86b85b511981c951ead96b1a106abb18a2e01047b2063d55c98300ed6356c0460b WHIRLPOOL 9ef8f3e640f8d7d5b62dcbb14013eb6193b42d0b884b1189124350d9678dcc748971d3260808b1939dbc2e2204f3d58526fc87f25df4d8f1946e5c40cbf75d8d
+AUX vuze-5.3.0.0-disable-updaters.patch 1726 SHA256 fac23c094c3ab83cbcb89ce77d5123737729817f53d60ecefd7498df6f0e2bde SHA512 743d48eeeac4534fc66463c0989a88d97117d988227b6cce77abdaa97c9cb9813aa1228f81a607af09e07fdf95ce02a3981f7f083fba0d9875d0951b8bbf29a3 WHIRLPOOL 2a4a78694043d651c5c072dd43607809cad0e528ab5741a4ddf2cf440a0649f1394c08420e35359b271567c7e933a4d1792c92224a64eeadb26778cbc33f49d2
+AUX vuze-5.3.0.0-invalid-characters.patch 945 SHA256 38c27cf4b7b143140cfb430b87205fa597d47ee97ba12262f64948aeba97e9f1 SHA512 cdde620a54c2ca084a44d4b7dda147960f17324aa4003cc70282f2f3b761727d2053ebd00bbd2380c43ddfcc60b231f71a2f8d8b2e64b059c50f98816f96fe48 WHIRLPOOL f0c55f3a0338deefb7cf0b2998115890bbfcfc94ec63c9bfbd5590d1f6bc3f1f34718e500d8a5426c1dfe6c6a189c93f8ab06aece041ebfc835d59990532f8a2
+AUX vuze-5.3.0.0-java5.patch 626 SHA256 e9538f674fd59f41f0874ccbeda4a655df27df61acc6e53ff667289929cabd5a SHA512 1e4d1122e4eb27599b150b80d49cba670bd992baa3ffb504d58a6d2451a382150471f5b98a745ee84349a704fcf19cc6cd71aea29a0552714171eb473225d998 WHIRLPOOL c39771fa61ddcd2ab06acac500d0888520cfe85fd394ef5e7d7b8be33664bd31a2c5f46403c740e19050401abaa6a7a432930c4763d0f213cf0197967e59dec4
+AUX vuze-5.3.0.0-remove-classpath.patch 552 SHA256 03d62f17876dc98b10fee128a2d551c05c10ea7e11277e2edb2e3d6bf11cbacd SHA512 2de68c3aba1f3fc2af1b077eb0ea40949d6260b9be0f3afadb865f5f76e69fd4b1d8414b2b1cf0dc6a8073ca9dffbca48f5285f03b535679721681b006d9d7e5 WHIRLPOOL 1708dd2cb17141264ed7c9b01ac2aa8d0d5f04af03c81caead402292339cfb8a3d54fde9888e75650247f409e5f81d2d57e5a689cdaeafd0979b4090ab7fdd0e
+AUX vuze-5.3.0.0-unbundle-commons.patch 4741 SHA256 b7aea040bd7b307ac19b1937bf46691cfd37c73721fa459d4ca6a40f13645fcd SHA512 b6ea60f966e5c5d5c1118bf4d479175eb890c231c5c7324a7216b7791882217803d06de4780f63818aac34bd95172a211bbbe559843e9a89cc511fac29bc307d WHIRLPOOL b4ea72019bf4528b73cd21bdcbab584ead025ccbf1dc11857e4c7d6175c13fe8e68af2d68034b9e0718b56f14910f0804db52ba60f8e84981bdd354369c008a1
+AUX vuze-5.3.0.0-unbundle-json.patch 1322 SHA256 61c0df3a1ecbfdec9845a3e4789030e014a700138caaa761dd430f45936dd91f SHA512 60b8dc8216f5f51a4cb6c6b793d1b31b686f63d03e373741d76856a594468fa5c97781fc99fc9af30f2db8173bb86414cd52cb30ea7ebeac5a018633f661ce26 WHIRLPOOL 52d5da03ee31316d0a6c4ebc2d3e4d59ee88ca228d74345171ef90909f25bcaafeb36594cec16f427bf32524a0c4da7b0726313dcfc856690eca61d9f4bb2c23
+AUX vuze-5.3.0.0-use-jdk-cipher-only.patch 1594 SHA256 f5912134e4f3548fe1dd48b9387c3ad3c71b1089c2b5acfad6cbcad7334a5dd7 SHA512 151469d6ac3c93166491c6ffb75361dd7b47a274d2fe50b72a7a916ddf42c8214aae6e293fab17b9cc36139c846660f90b075d1b9e9dd042e65fdd7da924f9fc WHIRLPOOL 1fb11e6aceb0e460c349938146fbc1268447d59bbc6ed15ce0ff43889f5c0b92d9db7c94ade918b271d5f8099a6f5f5630997ec49d72ff0274118a433125e9f3
AUX vuze.desktop 164 SHA256 4fbc293d66810bcd4eec210d00d5ea97f5e49acdd10197a52e361ed11b8718ed SHA512 4d68ed3af2c983435d1014ea1281076fd5d1171b23ebbe7cc8d7e6c45b39b036e7f4660fce81481ba3b7bddd29c8255ce22bbb79230f77c6ecfdecb24736d480 WHIRLPOOL 822e059e377141864f465d4de7915651a609ef69c8d67eedc85bd1c60a2b605882cad0c63b592329b369e34f8877e1c36bc344f414be20818bccf39d1f88ec25
DIST Vuze_4510_source.zip 9181967 SHA256 f92360f48e87c3a1d3edcfc2239ef69276792584292e00a48eac1eac4bd22e7f SHA512 cbac307372cfa6b09db0b7d3f3e73c8039db7a6e0dd270513bc8f9e96721c88e024b5998e0d133883c6f701e76f1b36fc9c7bfc7573c6b6c1c82b3179be429c5 WHIRLPOOL bd6fd25b75b4cc16213d478588b313ba69ff4ee4eaf1c11ad0e01ee4074222cb77739f13001ddd881a5b77002ac3cb0a9e3accc44691c2720f94ea7df499a158
-DIST Vuze_4712_source.zip 9338535 SHA256 538b60811e5a5c41d20b4e3eb96c75b3949a716d7f880d1f96a0cde3c28429e5 SHA512 4ae9d4b057d00c3b69adcd3dcbe617698e3710a8107fcc600a94e8a5a39cde02ce1d35b2bc4e8777270aa197f0355807c02d91ff2c8c3f64a03133271cdd5f9b WHIRLPOOL 4b0c326fc2a912e3e02fd0841dc998573b2922b38d160c0ac439caa394ab09542c04fc87ea9e385c62a13ab15a28f847a1f57095611066ec7311e058b94079d6
DIST Vuze_4812_source.zip 9530217 SHA256 8ad02ae61ac1c515cb3226b95b34d4fe036faa64e725b64fdcb5ef7d1cb9633d SHA512 7007c91f829c57d0f08b9da4ea3fcc8820efe14aeec7286cf764e5ac2d7d165f3a14abc6b0e92a617e21b45803f7c121fb00ddd8c5e8d9664509eb3337fc65bf WHIRLPOOL bc8823e053fa2f86161234c77f4873f2035a111361d60ee8c75937710774defec577651a10acf909bb170e600dc2775a5dbe2cf626649729e86f4a04e02a46d9
+DIST Vuze_5300_source.zip 10015198 SHA256 556149f09f48c533a37d80526ac655f0bc067f3a6bf3f3c4483f5273ac74ebc7 SHA512 44bad9f04707ae37acb66f16ae94afd7ad24d245f0371f60241442f460277c5b8dd29476640eb1e04b468b3ebd0100a159d1027764445ab526e3e0c0c544296d WHIRLPOOL 801e398eaf8b8457dc02336039bc8a64e535544ff1ea99ff100b623f734a499147e9abd8ce3031ebb0f1e5bb0e04a9c160e06fe5c0b16f12b31caf920f711d4a
DIST vuze-4.5.0.2-gentoo-patches.tar.bz2 3143 SHA256 972cf16d88d8605f93b77a84770b6512d54ae8281a0d4c06b66890a69deb6c49 SHA512 aacaeb404d9b7dbb40d89b04f9ad26caf447202b1fcb63d532f5e01dc611152adbc38804563f1a35227a080b2eadec0e2e42d0baa163d1d5489eec65cd28f83d WHIRLPOOL a7dd533676c428a00caddc2d4d4c008feec1a1201bb9aef7b7ed9c25d41405344d89bc9f70d442f043beb7aaf6db7d73582cc46edfa3665d599b2635e51b1ee7
EBUILD vuze-4.5.1.0-r1.ebuild 3993 SHA256 7ecd564c4ac093577426525490f075d7941454a3843c81b12042a3122780c358 SHA512 45471f3301525748689e59d4f1ea873502e34e704c63288c678927b99fdf16457ac641b57dcf41043213dc1f1fd2aa6480cbbb0d4127e0e054f820870ad7da00 WHIRLPOOL 5c65c6f4f7e0f9fc479ae051d7c90ef6789584344c1fed853f7ce25d632248cc499d8085c05358ded8e5cbade7810620ad2684ea87a8aff5f344d4d6a020712d
-EBUILD vuze-4.7.1.2-r1.ebuild 4408 SHA256 fc409d4c1dcfb01467418805ab5e3ba35da52df5e7c553b7c2d746392ae3eb02 SHA512 6999f4d350da733e4ed376330b5a4c49ab65f47f1183423bdd86cbd0f19719ac6093e2e03b58d3eff223ecbd1133752efbb3dc4ef165347b29cda8fc8c2e8e85 WHIRLPOOL 5ed6395fd3fdab6d624db486b446908102e725700e239af254101aa12e2626f4c87aa4886c308280fe4e1931f6661b49f12bae1e1898973b7f45753093bce5cf
EBUILD vuze-4.8.1.2-r1.ebuild 4380 SHA256 ea84efb8466b9243157b6546e2f4af182cba5bb3357cdc81222c8c33e0717d0a SHA512 83597fb18b36d51c1da55870d25d42f59b2661cc76e5f93fd5bfa0506c158616ca20b24b729967faa79ec7d811e2ca87c7047fef2b8172133a5f5a4477ee954b WHIRLPOOL 35c61634313ce5a84e659c9d90b0b1a8c98de77956ebee755446d0126d4e41071bc4ed612454f12dead99c04e00ea34b134155ad669ab6dbe61e37ac1bb14913
-MISC ChangeLog 27062 SHA256 00da7e49771697ce0a745d6e90ea4b3530d89ffa814d14591314c311ba092177 SHA512 4998d41aa805337c6c6c4ab004db6a648dc8eadf4d1b2383961acdb7d0d6baf77fb2f681429324d5267e3af71a14349ffda1bc18bb3c72b53b8fb3aaf3957a57 WHIRLPOOL 75af203ff65c603f8654bdd2156749c37ebf398a9d825621b9e1a37311edf45197dcd92ba12e474579ac8a6ad260152c567c4b52198cff93ab15f0ce80ac1def
+EBUILD vuze-5.3.0.0.ebuild 4290 SHA256 5c84f9fe31d0bdab151a072adf884ae3f3eecae73f7ec1e07bef46ba41338a08 SHA512 b3e8bd84e55130df5fadead6fcadca95c8cad60ac7242786803b334eab54011391a1e4d58bdc975764ba0543a7d273b7930f05ac935bbe9ac35833a191227c43 WHIRLPOOL df7ad4b6cc122e23b9c2224f8f1c0b650893e60ff214383d6f929648fece56c3ece5c1f6e3282a05f3704eb61822ac99f4eef8641515a65c0bbb82920fe2a2b0
+MISC ChangeLog 27936 SHA256 2479120d0dc650d8b8966a627afc24e4f6ced7bb301a181102a5eb1ba591cb05 SHA512 c910d5813b3fc7a52c04dfd9a24372d4538541986a5f7b5c7e6cf8b4fccbc99526c014239be1fd0fa5c0778d307180097c94bc1bf30451b1026f0e0744d3de8c WHIRLPOOL f56d5fcb7044a06c05b1ca5c673442627ceffce4b754422f854a86ee4737fa7c90d7a09f395bc8db8e17574009060423200f242814b20722516bef87ad10325c
MISC metadata.xml 246 SHA256 904c21f9fa2947f92f79cce43db178f3d14362d6180ec0503f206086ab083a0c SHA512 756b73a6283fd01672e9a6ccf1fb9656f5596a660e2c3ed6ea767338f082f2a516f2e736ca34932c98e454bddd0fcffc045cfc740474c36849d6d4009b9444d2 WHIRLPOOL 0c63202860bfc9050faa22d7f75094e43ad5188483e04462f0aa4f50839b870ffe1fed4d516c8105f05e401c0e84bef0fc52883685c548324f8693fcfa1a49b8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
-iQEcBAEBCAAGBQJTG+NvAAoJEO04vUmVeoRjmu0H/A35hyN9WrNKrW03ucgoBi/d
-9S+Ia1FPvVM25uk8x68fZY26xhMzjhsizXXMyWTKHw01T3+O881AtxoUnb6xHToa
-PIB0/ZOdUqGobQJQod9F9F7frVy9XyHeqz6RyUubemIl95Qh+x3RD3HGup3Q7QE9
-fgul8tCg9LgUVPzRobpvjU97fXGf16qMdKxiMiEvMsVUqj2Q14e65dqUjORkHxh4
-IcPim3qYR3zkoB0uTbiag/TIPAMqKu2CBVdqs8pWMN2iBrjA0GskOsDTZAPRLDg2
-zckdk/Z4sb+cGcVLYdz8SIKoXBAWD9+opFm8PWYGMaeDuTlfNbvzcsFnvwmgm4k=
-=Nci5
+iQEcBAEBCAAGBQJTHBqJAAoJEO04vUmVeoRjGUIH/Rr7wjd8Hy5Ahh/F4GYidf9I
+MhjgngiuNI19mnWxDUW2w8sppNRcPBNdgbPm/zoft0+J2XuhI6Maqqv81w+aUj1Q
+Pegfn91Ypn7az3wR41CcoMZ9Bpsy1wAWOyMUrldmxJtPu81s9VncAkt6MUliK9S7
+1bcxsPVXeIUFlg386MdLNP9zqdyiJTauREMi7j7wov7mB+67JZGLduKDXFdfWxGp
+RB4O0CCjGrY1BOMgZpduCtUlWOvhWYR1O+Qn4W33D9kH40rkuY2EgARkk/Ww36h+
+k0FEHHf1mruNUSY1r0OjzrtKbV/6NhtX47u/VnYM39xT9aAzS2VjqkC99UwoaRQ=
+=5JY0
-----END PGP SIGNATURE-----
diff --git a/net-p2p/vuze/files/vuze-5.3.0.0-cache-size.patch b/net-p2p/vuze/files/vuze-5.3.0.0-cache-size.patch
new file mode 100644
index 000000000000..16f9ffa7374d
--- /dev/null
+++ b/net-p2p/vuze/files/vuze-5.3.0.0-cache-size.patch
@@ -0,0 +1,11 @@
+--- a/org/gudy/azureus2/core3/config/COConfigurationManager.java
++++ b/org/gudy/azureus2/core3/config/COConfigurationManager.java
+@@ -52,7 +52,7 @@ COConfigurationManager
+ public static final int CONFIG_CACHE_SIZE_MAX_MB;
+
+ static{
+- long max_mem_bytes = Runtime.getRuntime().maxMemory();
++ long max_mem_bytes = Math.min (Runtime.getRuntime().maxMemory(), 64*1024*1024);
+ long mb_1 = 1*1024*1024;
+ long mb_32 = 32*mb_1;
+ int size = (int)(( max_mem_bytes - mb_32 )/mb_1);
diff --git a/net-p2p/vuze/files/vuze-5.3.0.0-disable-osx.patch b/net-p2p/vuze/files/vuze-5.3.0.0-disable-osx.patch
new file mode 100644
index 000000000000..070dae2d7562
--- /dev/null
+++ b/net-p2p/vuze/files/vuze-5.3.0.0-disable-osx.patch
@@ -0,0 +1,60 @@
+--- a/org/gudy/azureus2/ui/swt/mainwindow/SWTThread.java
++++ b/org/gudy/azureus2/ui/swt/mainwindow/SWTThread.java
+@@ -229,57 +229,6 @@ public class SWTThread {
+ }
+ });
+
+- if (Constants.isOSX) {
+-
+- // On Cocoa, we get a Close trigger on display. Need to check if all
+- // platforms send this.
+- display.addListener(SWT.Close, new Listener() {
+- public void handleEvent(Event event) {
+- event.doit = UIFunctionsManager.getUIFunctions().dispose(false, false);
+- }
+- });
+-
+- String platform = SWT.getPlatform();
+- // use reflection here so we decouple generic SWT from OSX specific stuff to an extent
+-
+- if (platform.equals("carbon")) {
+- try {
+-
+- Class<?> ehancerClass = Class.forName("org.gudy.azureus2.ui.swt.osx.CarbonUIEnhancer");
+-
+- Constructor<?> constructor = ehancerClass.getConstructor(new Class[] {});
+-
+- constructor.newInstance(new Object[] {});
+-
+- } catch (Throwable e) {
+-
+- Debug.printStackTrace(e);
+- }
+- } else if (platform.equals("cocoa")) {
+- try {
+-
+- Class<?> ehancerClass = Class.forName("org.gudy.azureus2.ui.swt.osx.CocoaUIEnhancer");
+-
+- Method mGetInstance = ehancerClass.getMethod("getInstance", new Class[0]);
+- Object claObj = mGetInstance.invoke(null, new Object[0] );
+-
+- Method mHookAppMenu = claObj.getClass().getMethod("hookApplicationMenu", new Class[] {});
+- if (mHookAppMenu != null) {
+- mHookAppMenu.invoke(claObj, new Object[0]);
+- }
+-
+- Method mHookDocOpen = claObj.getClass().getMethod("hookDocumentOpen", new Class[] {});
+- if (mHookDocOpen != null) {
+- mHookDocOpen.invoke(claObj, new Object[0]);
+- }
+-
+- } catch (Throwable e) {
+-
+- Debug.printStackTrace(e);
+- }
+- }
+- }
+-
+ if (app != null) {
+ app.runInSWTThread();
+ runner = new Thread(new AERunnable() {
diff --git a/net-p2p/vuze/files/vuze-5.3.0.0-disable-shared-plugins.patch b/net-p2p/vuze/files/vuze-5.3.0.0-disable-shared-plugins.patch
new file mode 100644
index 000000000000..b459c8b38308
--- /dev/null
+++ b/net-p2p/vuze/files/vuze-5.3.0.0-disable-shared-plugins.patch
@@ -0,0 +1,33 @@
+Disallow users to install into the shared plugin directory,
+which they won't have write access to. This doesn't disable
+shared plugins, just removes the installation UI.
+
+
+--- a/org/gudy/azureus2/ui/swt/pluginsinstaller/IPWListPanel.java
++++ b/org/gudy/azureus2/ui/swt/pluginsinstaller/IPWListPanel.java
+@@ -234,13 +234,13 @@ public class IPWListPanel extends AbstractWizardPanel<InstallPluginWizard> {
+ }
+
+ public boolean
+- isNextEnabled()
++ isFinishEnabled()
+ {
+ return(((InstallPluginWizard)wizard).getPluginList().size() > 0 );
+ }
+
+- public IWizardPanel<InstallPluginWizard> getNextPanel() {
+- return new IPWInstallModePanel(wizard,this);
++ public IWizardPanel<InstallPluginWizard> getFinishPanel() {
++ return new IPWFinishPanel(wizard,this);
+ }
+
+ public void updateList() {
+@@ -252,7 +252,7 @@ public class IPWListPanel extends AbstractWizardPanel<InstallPluginWizard> {
+ }
+ }
+ wizard.setPluginList( list );
+- wizard.setNextEnabled( isNextEnabled() );
++ wizard.setFinishEnabled( isFinishEnabled() );
+
+ }
+ }
diff --git a/net-p2p/vuze/files/vuze-5.3.0.0-disable-updaters.patch b/net-p2p/vuze/files/vuze-5.3.0.0-disable-updaters.patch
new file mode 100644
index 000000000000..1bf78cf1009d
--- /dev/null
+++ b/net-p2p/vuze/files/vuze-5.3.0.0-disable-updaters.patch
@@ -0,0 +1,45 @@
+--- a/org/gudy/azureus2/pluginsimpl/local/PluginInitializer.java
++++ b/org/gudy/azureus2/pluginsimpl/local/PluginInitializer.java
+@@ -130,18 +130,6 @@ PluginInitializer
+ "Magnet URI Handler",
+ "true",
+ "false"},
+- { PluginManagerDefaults.PID_CORE_UPDATE_CHECKER,
+- "org.gudy.azureus2.update.CoreUpdateChecker",
+- "azbpcoreupdater",
+- "CoreUpdater",
+- "true",
+- "true"},
+- { PluginManagerDefaults.PID_CORE_PATCH_CHECKER,
+- "org.gudy.azureus2.update.CorePatchChecker",
+- "azbpcorepatcher",
+- "CorePatcher",
+- "true",
+- "true"},
+ { PluginManagerDefaults.PID_PLATFORM_CHECKER,
+ "org.gudy.azureus2.platform.PlatformManagerPluginDelegate",
+ "azplatform2",
+--- a/org/gudy/azureus2/pluginsimpl/update/PluginUpdatePlugin.java
++++ b/org/gudy/azureus2/pluginsimpl/update/PluginUpdatePlugin.java
+@@ -562,6 +562,10 @@ PluginUpdatePlugin
+ }
+ }
+
++ if ( pi.getPluginState().isShared()) {
++ continue;
++ }
++
+ String mand = pi.getPluginProperties().getProperty( "plugin.mandatory");
+
+ boolean pi_mandatory = mand != null && mand.trim().toLowerCase().equals("true");
+--- a/org/gudy/azureus2/ui/swt/updater2/SWTUpdateChecker.java
++++ b/org/gudy/azureus2/ui/swt/updater2/SWTUpdateChecker.java
+@@ -64,7 +64,7 @@ public class SWTUpdateChecker implements UpdatableComponent
+ public static void
+ initialize()
+ {
+- PluginInitializer.getDefaultInterface().getUpdateManager().registerUpdatableComponent(new SWTUpdateChecker(),true);
++// PluginInitializer.getDefaultInterface().getUpdateManager().registerUpdatableComponent(new SWTUpdateChecker(),true);
+ }
+
+ public SWTUpdateChecker() {
diff --git a/net-p2p/vuze/files/vuze-5.3.0.0-invalid-characters.patch b/net-p2p/vuze/files/vuze-5.3.0.0-invalid-characters.patch
new file mode 100644
index 000000000000..3ef4d808ad77
--- /dev/null
+++ b/net-p2p/vuze/files/vuze-5.3.0.0-invalid-characters.patch
@@ -0,0 +1,24 @@
+--- a/com/aelitis/azureus/core/metasearch/impl/DateParserRegex.java
++++ b/com/aelitis/azureus/core/metasearch/impl/DateParserRegex.java
+@@ -50,17 +50,17 @@ public class DateParserRegex extends DateParser {
+
+ private static final String[] MONTHS_LIST = new String[] {
+ " january janvier enero januar",
+- " february fevrier fŽvrier febrero februar",
+- " march mars marzo marz marz mŠrz" ,
++ " february fevrier febrero februar",
++ " march mars marzo marz marz" ,
+ " april avril abril april ",
+ " may mai mayo mai",
+ " june juin junio juni",
+ " july juillet julio juli",
+- " august aout aožt agosto august",
++ " august aout agosto august",
+ " september septembre septiembre september",
+ " october octobre octubre oktober",
+ " november novembre noviembre november",
+- " december decembre dŽcembre diciembre dezember"};
++ " december decembre diciembre dezember"};
+
+ public DateParserRegex() {
+ this("GMT-7",true,null);
diff --git a/net-p2p/vuze/files/vuze-5.3.0.0-java5.patch b/net-p2p/vuze/files/vuze-5.3.0.0-java5.patch
new file mode 100644
index 000000000000..9b19015f3b36
--- /dev/null
+++ b/net-p2p/vuze/files/vuze-5.3.0.0-java5.patch
@@ -0,0 +1,11 @@
+--- a/build.xml
++++ b/build.xml
+@@ -36,7 +36,7 @@ NOTE: You may need to set the ANT_OPTS="-Xmx512m" env prop in order to compil
+ <fileset dir="${root.dir}/${libs.dir}" includes="**/*.jar" />
+ </path>
+
+- <javac srcdir="${root.dir}" destdir="${root.dir}" nowarn="yes" source="1.4" target="1.4" includeAntRuntime="no" debug="true" debuglevel="lines,vars,source" >
++ <javac encoding="8859_1" srcdir="${root.dir}" destdir="${root.dir}" nowarn="yes" includeAntRuntime="no" debug="true" debuglevel="lines,vars,source" >
+ <classpath refid="libs.classpath" />
+ </javac>
+ </target>
diff --git a/net-p2p/vuze/files/vuze-5.3.0.0-remove-classpath.patch b/net-p2p/vuze/files/vuze-5.3.0.0-remove-classpath.patch
new file mode 100644
index 000000000000..607b84a46d51
--- /dev/null
+++ b/net-p2p/vuze/files/vuze-5.3.0.0-remove-classpath.patch
@@ -0,0 +1,10 @@
+--- a/build.xml
++++ b/build.xml
+@@ -46,7 +46,6 @@ NOTE: You may need to set the ANT_OPTS="-Xmx512m" env prop in order to compil
+ <jar destfile="${root.dir}/${dist.dir}/Azureus2.jar" basedir="${root.dir}" excludes="${dist.jar.excludes}" >
+ <manifest>
+ <attribute name="Main-Class" value="org.gudy.azureus2.ui.common.Main" />
+- <attribute name="Class-Path" value="Azureus2.jar apple-extensions.jar commons-cli.jar log4j.jar swt.jar swt-win32.jar swt-osx.jar" />
+ </manifest>
+ </jar>
+
diff --git a/net-p2p/vuze/files/vuze-5.3.0.0-unbundle-commons.patch b/net-p2p/vuze/files/vuze-5.3.0.0-unbundle-commons.patch
new file mode 100644
index 000000000000..deed0af9c7b2
--- /dev/null
+++ b/net-p2p/vuze/files/vuze-5.3.0.0-unbundle-commons.patch
@@ -0,0 +1,110 @@
+--- a/com/aelitis/azureus/core/metasearch/Result.java
++++ b/com/aelitis/azureus/core/metasearch/Result.java
+@@ -27,7 +27,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.DisplayFormatters;
+ import org.json.simple.JSONObject;
+
+@@ -372,6 +372,6 @@ public abstract class Result {
+ if ( input == null ){
+ return( null );
+ }
+- return( Entities.HTML40.unescape( input ));
++ return( StringEscapeUtils.unescapeHtml( input ));
+ }
+ }
+--- a/com/aelitis/azureus/core/metasearch/impl/web/WebResult.java
++++ b/com/aelitis/azureus/core/metasearch/impl/web/WebResult.java
+@@ -88,14 +88,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{
+@@ -108,7 +108,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) {
+@@ -133,7 +133,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 {
+@@ -148,7 +148,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 {
+@@ -163,7 +163,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 {
+@@ -230,7 +230,7 @@ public class WebResult extends Result {
+ public void setPublishedDateFromHTML(String publishedDate) {
+ if(publishedDate != null) {
+ 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);
+ }
+ }
+@@ -239,7 +239,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");
+@@ -285,7 +285,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 {
+@@ -299,7 +299,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/files/vuze-5.3.0.0-unbundle-json.patch b/net-p2p/vuze/files/vuze-5.3.0.0-unbundle-json.patch
new file mode 100644
index 000000000000..18d5ac7670ff
--- /dev/null
+++ b/net-p2p/vuze/files/vuze-5.3.0.0-unbundle-json.patch
@@ -0,0 +1,42 @@
+--- a/com/aelitis/azureus/util/ImportExportUtils.java
++++ b/com/aelitis/azureus/util/ImportExportUtils.java
+@@ -360,7 +360,7 @@ public final class ImportExportUtils {
+
+ throws IOException
+ {
+- List l = new JSONArray(data.length);
++ List l = new JSONArray();
+
+ map.put( key, l );
+
+--- a/com/aelitis/azureus/util/JSONUtils.java
++++ b/com/aelitis/azureus/util/JSONUtils.java
+@@ -74,7 +74,7 @@ public class JSONUtils
+ * @since 3.0.1.5
+ */
+ public static JSONObject encodeToJSONObject(Map map) {
+- JSONObject newMap = new JSONObject((int)(map.size()*1.5));
++ JSONObject newMap = new JSONObject();
+
+ for (Map.Entry<String, Object> entry: ((Map<String,Object>)map).entrySet()){
+ String key = entry.getKey();
+@@ -105,9 +105,7 @@ public class JSONUtils
+ */
+ public static String encodeToJSON(Map map) {
+ JSONObject jobj = encodeToJSONObject(map);
+- StringBuilder sb = new StringBuilder(8192);
+- jobj.toString( sb );
+- return( sb.toString());
++ return( jobj.toString());
+ }
+
+ public static String encodeToJSON(Collection list) {
+@@ -138,7 +136,7 @@ public class JSONUtils
+ * @since 3.0.1.5
+ */
+ private static JSONArray encodeToJSONArray(Collection list) {
+- JSONArray newList = new JSONArray(list.size());
++ JSONArray newList = new JSONArray();
+
+ for ( Object value: list ){
+
diff --git a/net-p2p/vuze/files/vuze-5.3.0.0-use-jdk-cipher-only.patch b/net-p2p/vuze/files/vuze-5.3.0.0-use-jdk-cipher-only.patch
new file mode 100644
index 000000000000..596bd825f98d
--- /dev/null
+++ b/net-p2p/vuze/files/vuze-5.3.0.0-use-jdk-cipher-only.patch
@@ -0,0 +1,41 @@
+--- a/com/aelitis/azureus/core/clientmessageservice/secure/impl/SecureMessageServiceClientHelper.java
++++ b/com/aelitis/azureus/core/clientmessageservice/secure/impl/SecureMessageServiceClientHelper.java
+@@ -36,7 +36,6 @@ import org.bouncycastle.crypto.CipherParameters;
+ import org.bouncycastle.crypto.encodings.PKCS1Encoding;
+ import org.bouncycastle.crypto.engines.RSAEngine;
+ import org.bouncycastle.crypto.params.ParametersWithRandom;
+-import org.bouncycastle.jce.provider.RSAUtil;
+ import org.gudy.azureus2.core3.util.Debug;
+ import org.gudy.azureus2.core3.util.RandomUtils;
+ import org.gudy.azureus2.plugins.utils.StaticUtilities;
+@@ -83,30 +82,12 @@ SecureMessageServiceClientHelper
+
+ byte[] secret_bytes = session_key.getEncoded();
+
+- try{
+ Cipher rsa_cipher = Cipher.getInstance( "RSA" );
+
+ rsa_cipher.init( Cipher.ENCRYPT_MODE, public_key );
+
+ encryped_session_key = rsa_cipher.doFinal( secret_bytes );
+
+- }catch( Throwable e ){
+-
+- // fallback to the BC implementation for jdk1.4.2 as JCE RSA not available
+-
+- RSAEngine eng = new RSAEngine();
+-
+- PKCS1Encoding padded_eng = new PKCS1Encoding( eng );
+-
+- CipherParameters param = RSAUtil.generatePublicKeyParameter(public_key);
+-
+- param = new ParametersWithRandom(param, RandomUtils.SECURE_RANDOM);
+-
+- padded_eng.init( true, param );
+-
+- encryped_session_key = padded_eng.processBlock(secret_bytes, 0, secret_bytes.length);
+- }
+-
+ }catch( Throwable e ){
+
+ e.printStackTrace();
diff --git a/net-p2p/vuze/vuze-4.7.1.2-r1.ebuild b/net-p2p/vuze/vuze-4.7.1.2-r1.ebuild
deleted file mode 100644
index 0b1abb8acf5b..000000000000
--- a/net-p2p/vuze/vuze-4.7.1.2-r1.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-p2p/vuze/vuze-4.7.1.2-r1.ebuild,v 1.1 2013/08/15 16:23:14 tomwij Exp $
-
-EAPI=2
-
-JAVA_PKG_IUSE="source"
-
-inherit eutils fdo-mime java-pkg-2 java-ant-2 versionator
-
-MY_PV=$(replace_all_version_separators "")
-
-PATCHSET_VER="4.5.0.2"
-PATCHSET_DIR="${PN}-${PATCHSET_VER}-gentoo-patches"
-PATCHSET="${PATCHSET_DIR}.tar.bz2"
-SRC_TARBALL="Vuze_${MY_PV}_source.zip"
-
-DESCRIPTION="BitTorrent client in Java, formerly called Azureus"
-HOMEPAGE="http://www.vuze.com/"
-SRC_URI="mirror://sourceforge/azureus/${PN}/Vuze_${MY_PV}/${SRC_TARBALL}
- mirror://gentoo/${PATCHSET}"
-LICENSE="GPL-2 BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-# bundles parts of commons-lang, but modified
-# bundles parts of http://www.programmers-friend.org/
-RDEPEND="
- dev-java/json-simple:0
- dev-java/bcprov:1.40
- >=dev-java/commons-cli-1.0:1
- >=dev-java/log4j-1.2.8:0
- dev-java/swt:3.7[cairo]
- !net-p2p/azureus-bin
- >=virtual/jre-1.5"
-
-DEPEND="${RDEPEND}
- app-arch/unzip
- dev-util/desktop-file-utils
- >=virtual/jdk-1.5"
-
-PDEPEND="~net-p2p/vuze-coreplugins-${PV}"
-
-src_unpack() {
- unpack ${PATCHSET}
- mkdir "${S}" && cd "${S}" || die
- unpack ${SRC_TARBALL}
- # this is no longer needed
- rm "${WORKDIR}/${PATCHSET_DIR}/0006-Remove-the-use-of-windows-only-Tree2-widget.patch" || die
-}
-
-java_prepare() {
- # build.xml disappeared from 4.4.0.0 although it was there in 4.3.1.4
- # hopefully that's just a packaging mistake
- [[ -f build.xml ]] && die "upstream has build.xml again, don't overwrite"
- cp "${FILESDIR}/build.xml" . || die "failed to copy build.xml"
-
- EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" epatch "${WORKDIR}/${PATCHSET_DIR}/"
-
- ### Removes OS X files and entries.
- rm -rv "org/gudy/azureus2/platform/macosx" \
- "org/gudy/azureus2/ui/swt/osx" || die
-
- ### Removes Windows files.
- rm -v ./org/gudy/azureus2/ui/swt/win32/Win32UIEnhancer.java || die
-
- ### Removes test files.
- rm -rv org/gudy/azureus2/ui/console/multiuser/TestUserManager.java || die
-
- ### Removes bouncycastle (we use our own bcprov).
- rm -rv "org/bouncycastle" || die
-
- ### Removes bundled json
- rm -rv "org/json" || die
-
- ### The Tree2 file does not compile against Linux SWT and is used only on Windows.
- ### It's runtime-conditional use is thus patched out in the patchset.
- rm -rf "org/eclipse" || die
-
- mkdir -p build/libs || die
-}
-
-JAVA_ANT_REWRITE_CLASSPATH="true"
-EANT_GENTOO_CLASSPATH="swt-3.7,bcprov-1.40,json-simple,log4j,commons-cli-1"
-
-src_compile() {
- local mem
- use amd64 && mem="320"
- use x86 && mem="192"
- 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 || die
-
- 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 via ebuilds"
-
- elog "Vuze has been formerly called Azureus and many references to the old name remain."
- elog
- elog "After running Vuze for the first time, configuration"
- elog "options will be placed in '~/.azureus/gentoo.config'."
- elog "If you need to change some startup options, you should"
- elog "modify this file, rather than the startup script."
- elog "Using this config file you can start the console UI."
- elog
-
- if ! has_version dev-java/swt:3.7[webkit]; then
- elog
- elog "Your dev-java/swt:3.7 was built without webkit support. Features such as Vuze HD Network will not work."
- elog "Rebuild swt with USE=webkit (needs net-libs/webkit-gtk:2) to use these features."
- fi
-
- fdo-mime_desktop_database_update
-}
-
-pkg_postrm() {
- fdo-mime_desktop_database_update
-}
diff --git a/net-p2p/vuze/vuze-5.3.0.0.ebuild b/net-p2p/vuze/vuze-5.3.0.0.ebuild
new file mode 100644
index 000000000000..e38825ce8b2c
--- /dev/null
+++ b/net-p2p/vuze/vuze-5.3.0.0.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/vuze/vuze-5.3.0.0.ebuild,v 1.1 2014/03/09 07:38:47 rhill Exp $
+
+EAPI="5"
+
+JAVA_PKG_IUSE="source"
+
+inherit eutils fdo-mime java-pkg-2 java-ant-2 versionator
+
+MY_PV=$(replace_all_version_separators "")
+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 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+# bundles parts of http://www.programmers-friend.org/
+# bundles bcprov - 1.37 required but not in the tree
+RDEPEND="
+ dev-java/commons-cli
+ dev-java/commons-lang:2.1
+ dev-java/json-simple
+ dev-java/log4j
+ dev-java/swt:3.8[cairo]
+ >=virtual/jre-1.6"
+
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ dev-util/desktop-file-utils
+ >=virtual/jdk-1.6"
+
+PDEPEND="~net-p2p/vuze-coreplugins-${PV}"
+
+pkg_pretend() {
+ if ! has_version dev-java/swt:3.8[webkit]; then
+ echo
+ ewarn "dev-java/swt:3.8 was built without webkit support."
+ ewarn "Web features such as Vuze HD Network will be disabled."
+ fi
+}
+
+src_unpack() {
+ mkdir -p "${S}" && cd "${S}"
+ unpack ${A}
+
+ # build.xml disappeared from 4.4.0.0 although it was there in 4.3.1.4
+ [[ -f build.xml ]] && die "upstream has build.xml again, don't overwrite"
+ cp "${FILESDIR}"/build.xml "${S}" || die "failed to copy build.xml"
+}
+
+java_prepare() {
+ epatch "${FILESDIR}"/${P}-cache-size.patch
+ epatch "${FILESDIR}"/${P}-java5.patch
+ epatch "${FILESDIR}"/${P}-remove-classpath.patch
+ epatch "${FILESDIR}"/${P}-disable-shared-plugins.patch
+ epatch "${FILESDIR}"/${P}-disable-osx.patch
+ epatch "${FILESDIR}"/${P}-disable-updaters.patch
+ epatch "${FILESDIR}"/${P}-invalid-characters.patch
+ epatch "${FILESDIR}"/${P}-unbundle-commons.patch
+ epatch "${FILESDIR}"/${P}-unbundle-json.patch
+# epatch "${FILESDIR}"/${P}-use-jdk-cipher-only.patch # bcprov
+
+ # OSX / Windows
+ rm "${S}"/org/gudy/azureus2/ui/swt/osx/CarbonUIEnhancer.java
+ rm "${S}"/org/gudy/azureus2/ui/swt/osx/Start.java
+ rm "${S}"/org/gudy/azureus2/ui/swt/win32/Win32UIEnhancer.java
+
+ # 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="192"
+ 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
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}