[pkg-java] r9427 - in trunk: . azureus azureus/debian azureus/debian/bin azureus/debian/patches

Adrian Perez adrianperez-guest at alioth.debian.org
Fri Jul 31 19:20:55 UTC 2009


Author: adrianperez-guest
Date: 2009-07-31 19:20:55 +0000 (Fri, 31 Jul 2009)
New Revision: 9427

Added:
   trunk/azureus/
   trunk/azureus/debian/
   trunk/azureus/debian/Azureus.png.uu
   trunk/azureus/debian/Azureus.torrent.png.uu
   trunk/azureus/debian/NEWS.Debian
   trunk/azureus/debian/README.Debian
   trunk/azureus/debian/README.multiuser
   trunk/azureus/debian/README.source
   trunk/azureus/debian/azureus.1
   trunk/azureus/debian/azureus.desktop
   trunk/azureus/debian/azureus.schemas
   trunk/azureus/debian/azureus.xpm
   trunk/azureus/debian/bin/
   trunk/azureus/debian/bin/azureus.template
   trunk/azureus/debian/bin/vuze
   trunk/azureus/debian/build.properties
   trunk/azureus/debian/build.xml
   trunk/azureus/debian/changelog
   trunk/azureus/debian/compat
   trunk/azureus/debian/control
   trunk/azureus/debian/copyright
   trunk/azureus/debian/dirs
   trunk/azureus/debian/docs
   trunk/azureus/debian/install
   trunk/azureus/debian/manpages
   trunk/azureus/debian/menu
   trunk/azureus/debian/patches/
   trunk/azureus/debian/patches/fix-chars-encoding.patch
   trunk/azureus/debian/patches/fix-messagetext-dont-use-privileges.patch
   trunk/azureus/debian/patches/fix-platform-code.patch
   trunk/azureus/debian/patches/multiuser.patch
   trunk/azureus/debian/patches/series
   trunk/azureus/debian/patches/updater-dont-initialize-swt-updatechecker.patch
   trunk/azureus/debian/patches/updater-dont-register-core-updatechecker.patch
   trunk/azureus/debian/rules
   trunk/azureus/debian/vuze.1
   trunk/azureus/debian/vuze.desktop
   trunk/azureus/debian/vuze.install
   trunk/azureus/debian/watch
Log:
* Import into SVN repository.


Added: trunk/azureus/debian/Azureus.png.uu
===================================================================
--- trunk/azureus/debian/Azureus.png.uu	                        (rev 0)
+++ trunk/azureus/debian/Azureus.png.uu	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,128 @@
+&B5!.1PT*
+"&@H`
+M````#4E(1%(```"`````@P@&````1:H390```!ET15AT4V]F='=A<F4`061O
+M8F4 at 26UA9V5296%D>7')93P``!/`241!5'C:[%T)F"-5$:[7Z<RU!["S"[,'
++"RSW+J<LRPT"<@H`
+MR(W(<BARJ at C"QR%^R/&!@(H<*J!RR*4?]X>"JXB(`@*B"\ARLP+"LNPU>\V5
+MI-/6_][K3#+3G7223J8[Z?J^VF0GG<Y+ZG_UJNI5U1,S3GN,&I:$8![Z6/C<
+M)O>_YST?R\\WY,>M^"^;\^-FS)-L0>/)X-=PD;K6XL=%_/@._V<./W^0GR_+
+MW2ND9%),0ZF%>1OF/9AW8]Z6>8K/]TY at GL%\&`O^(G[\'O.]8?ZR,0`&A;XS
+M\Z',^S%O%L`]UV>^1VH-!808`"&D39F_S'PD\Q8U^HR+F=.L$2Z+`1`>@GH_
+M at _E@YHXZ?-ZES/]F_ET,@)$EK.E8FP\8@<^^B;7`L_S8':8?Q&@2P:_'_&OF
+M9T9(^,X8S@[;#],,`#B>^47F$VCD';)O:$\A!D"=Z"KFNYC7"<EX.FU!QS%3
+M6+B1`7"%7N_#1K-9$1DZTC3B;))M-Z+PCV:#*ZR^][;\N\/E?"U>`FI#DYE_
+M&N+QX3??-[8!:D=7ALW0<J&]PQ,':*PE8":K_MD1&.?6S&.85\4:(%BZ@#D1
+M at 7%V,6\<:X!@"=NT!T=DK(+'.IU4>#C6``'12<RM$1KOAB'1``TA_`Z>4\=$
+M;,R=H0"`:(S9O[NM]M^C1*'05HVR!!P1P3&/B8W`8&@4&U3[17#<O;$&"(9F
+M,:\;P7'WQP`(AO:/Z+@'8@`$,_Z](CKVE3$`JJ=IS%M&=.S+PV$$5NL'PH8<
+).4-R%S8`6R,*
+M@"7AB`,L[ZE"?QADMR7Y+B,6?M\GPMHK)`!8MKKR=Z,JRF00M/,D3/A835A3
+1V"TF44>K*KNJ3G, at G7O7B`H`
+CGW\(>VDXE@!#5`4`*<1,=G`Y*/66_C11-NL?--Z$6KWU(@H`
+M@#[FS\(!@"#(23'S>VW:(I'I([NCC:@E017N1WR!HAO'7A8>(W`D2`BM#=@5
+MSB;);C45,,H"@CB`HDN8_:O#,)"1<P,U"&@@3:(OQ4`H2_J;,&\780#\CR@<
+M^[`C'P<`$-B&$'UL&UAYMD1Q1N)':X0!\&Y8!A*.0)!0'H)@;0#[H,3:#I]S
++-D6;W at G+0$)6'`H`
+G;6#ID7D:AWOQ9=M$'`#S8@`4(V<I<'43Q<41%_X2!O;;,0!*D30*
+MLS+:F$='\NS?(^(`>%Z[@<%2A4&U</<'P)<"$!0&T)#I&HH^W1JH`X#?B#6E
+MW>H$UNP&`H#C$MBRTQ9:K$R+N/"?$3;-">IG@<F$B*K=H84O1(-I`$5)YF]J
+MCC+!NKU0K6L!S'I#D#VZG6=^LH&7`-6QZU+F'1M`]=_"0GHA*&=)"=]4 at A>5
+$Q\3#"@``
+M`/3F@[5_!#4&?<A\25!KOA0^=E6SU0D_C`!`3[US205Z6JEQZ%LLN&6!"1]J
+"7PH`
+MOW'<0&SMHG_.<80T[\:BVRF(]G`0?EL+&WU)O=X'LQ4ZT@#8B?E,YJ,:;,;G
+MJ7[[_*J]/KP_F>#9WQ;X%M)(`0"I7-]F_B(U-K'JIZ75SGR$Q;-C:]//LMX`
+M&,U\-ZF>O(U-MGT[&VC5JWYV][)CVY6?7X/DVT``(-(9LHVDCPO%)4TA?*6H
+L;ZE:8%CW,?,=B[\&%,!VL%"#<W;QO`E]>TZFYB!8:`<%,?MSOGZ-R`CJZPH`
+M)(86'^@.S..H64B((YF3 at P=0E,F at EJ16_11R`#@@X*6 at R&#7I^8BQ#2J:D%O
+M`P`USGP--B,(L0G+JL]G16,9V*%RR1 at U5__!"P5?&?:`Y;K?\28U'VU=L?'7
+MEJRV;F($`)`#@:L]@%[Y+S<9`*96UL)7*`#4(7&X=A"SAH$`U3!',_^QB0"P
+M5B6SGZ#ZDV9=$L=KJV.<W:I!R_:_S'.:"`#EQUDP^SOJ%Q4/$@`8=8LKH@?I
+M"$;UCYH(`&/+`@'6?I[Y=M*L6\E]$`#`3MX=I-J?O\K\RP+W!U]$\33YFHA$
+M*]>@:$+9L8^V9%T'6&TH^$12K=E'Y_T-9^ZA:>-9S'?2X,[E#16MB=$F%KY`
+M1]!%?EQH;/K(O?XZ-MRH!@`GZ9GO1F/T:X@,W<-?;G]>VPZBYB34,/[#3Q!%
+C9OGX[YL`S8+\"9Q]B(RC^Y at _*1\`%:%-[,&S^E8?%]Y"J at H`
+MYEQJ7MJ3?ZO2!UC`^/,_^Z%E']7"=VZ`[?5#J,P&U(:/0LRA/$[/[A8?]Q_%
+M`WN<'S_?Q`#8A7E-/P!0L[_D[]_*?#>#:M,A=\!)*=>5:]=58 at 1>S;Q!&==/
+MI,8[H'*>MFG\3%><6!9D*QMD2L_T>&TCYO8R-8!-93"^R,D4TY.D#H&$,/Q4
+M^OKK9.Y/`Q]8Y`X+J<P.I.5H@(2>_48L?WI:*&$\J6?WHR6N/Y#5^P1?6\"E
+9:4:1UWY.J@"E."'6T)J47(XP#]'K6;/3"@``
+MEOP+>=I_,4L/]0N_*&&Q%Z]QR&;53FIQ((SR7G[M.WA(=Q35'G*'D06/TGO3
+MD.QW"<#LORB6O:07'+]>V+E=3SPYC?G^(N\[A4J>9U12_^^DC;VA=!/SUXO9
+M)#:RBID5P.S<+?UJ`#1DVCZ6O:0_Y.3AR'^P2]KIS!]YO.]SLJU]L27`+N$%
+M$)TZY)[H-(:SD<\BKYI#N)?HQ&885;F!9\=REY2BH;N9$+R1$V*WMI.\R%N+
+MZM)N:!6!Q^&,"9B?4/L!J?3Z>XJZEF:BZ+)B^)#^3!G,B`DTE_GM`HT]G'!,
+M_7R/]^_*D_PH&[,RGY'\"4%E;:_L7Z`#FVC.1@&2:W#ZJ'=^!4!IEE;PI34`
+MUBX16_Z:'F1[R"ZTC_1,&\SFP$D@/RQRCVOXLG&YRPTJS/R1R30T"(:L[6C@
+MW?456&+0)<V[TYCAOU=`*<%V4N-4Z%9+_6[NGK!MMZP>;(*]Y7$?6/%WL8!:
+MU-)A#+<#G8PJ-0%W)G4<KK/F'\I_?U\#@UR7H_(#09ZO?XE"<KQ9&'Q_YO?*
+M`,N515Y'2=QMGE[!H'#1"QF;/&T2&K8T`N<6.`P%TB^?#)'*R'1N@?Z]5E8B
+M.L=$7XGEGJ/;BQI;PYA^FQ.6.Z$$_HXB6ABY!`_18$-L&'L/%"P_`>2,%7ZX
+M;>>C;Y,X\).C^?S;/#XL/I)01ERN*JIP$F:8+R]QW^.E74$T:<C?<:XP4N><
+M=KAIYFOSO0)E.Y0UZR?H8!Y"^;F.*Z:GSXID#J5Z8E)93GT%OC766L=XDY/&
+M4O\O7(-1'/J\7L>]Z#!2]0-0]>]H&^%KI#:1''J19?YZ;I[B,PR#R%^;`,CP
+F?.8S2!U:[=!/F,]U`P":,5U%(3G8,`2$QHZW#1I9AJ/B7=;NK`H`
+MYA at Y($`U7"&#1\5I$M_OO"*O/UD@?'\6?JNV-2[T".*=P_>Y+Q\`2-="`L?1
+ML<P+UD7\)HL5`'QZPXXOKX`"5?ZW/#>N$IKG4_B0(7(T]].N8JG2M`X'`-/X
+M]@_SW;>.!5Y`BWCVWS`8J2L7.S(MOI-!4.U2.BFG<6SV'(3<%%I;JW38:JA#
+MW$8+O,OG/1]#US(`8(I649O$\AY&/Y!+@%+G<-F.))7=@PVA-[1QYF5PH=/9
+M at 2RPPPDGFU97XXDFF=B/@>#'ZS%@MI=*_D!CJM5Y[D**5)3R]]JN20$`5\?"
+M=Z77>(;<3(-J%TVL;M"O6=I at 0U@8AS^LTL)91QMQ&VI!!45K:0`4HT^97V'^
+0EWY\C\6^B(&'X)&S490="@``
+M6@!@9BSKX:LXJ1Y&`WEK;OXV;$*KW<U'<(R6CC/\B?DI_;R[W)L``#B_9M-8
+MY at 5T(\^>OP[YV_4:!#BHND>KU@&MC at UM=:.3TVCM08W56B'(.J^,GMULK]$3
+MI(IQJHH&F1H]N\<RSQ&K4/OB(8:<HV+]G%22T$+'^MRI`8.`#HZXW4R#:&TB
+M7Q52?7J)0:KWLRSJ9UBESZ,`RT8!@'NUK]@>RUX:3;/YY^T=!$!%JKE7\U)M
+M*SR5]_HX#0``8:KF=AJ,[G=KK?RAY at 7:>*L)F8SN]_GQ9\SG-;GPH5X1FGVK
+M#B!;5H?/\46.<XN8]:O-'.TAY#W8O*[F[\-[=SMI&#+T[A6[,0(1P$^:4/B0
+M,!(J[VQ&Y.>'M[!6[=MDF@#^^[%4;*NWB0``0G1K3^D&Y>]^-2;ANR*I\OYH
+MKUUJ at SC#HLQ4D+GG]HYN'039SE:[@B]KH\5J(.%CQN]&V&9U(RR+3E*E:=2U
+M7M__NB78-3"E^$W^WT1[):UCKV(0)"@E3/FZ7S?0BY!Y>K'F+AWP6%,'..#?
+M8@\!VXP'4C1Z_%OZ.UU**M/&1?"4G]%3]6D<M:(4"[F=13W3_IBVLA=*`(RU
+M54G@!T8GO9Z82/,3XZE'M*+^GV=YMB(`Y--"S6Z$:I4Y&AAAIA>UC=,376M5
+MS?H-62'ODWV7)M$JJ?9M_1IHD^QGM'%V$75G.FBNN2Z]97;18AK-D%&:8B at E
+MNJ8<4'P&Y/^-7%XWQ,?27A!B_X)94Y@?Y_V<2KP^[%J/L94:I\"6JMB,&=&T
+MGN+7EO']R>5:&GJ]S^]/WI^3$@EJ80'N9<RG_>A=&D,#$@Q.&8F3CFS)^6ZP
+MADC31M9BVB*S at -:R>VFYT4$K$NWR7A(R^G.J`T`N_US,Y?\?PMP58@#`Y9W.
+1C'&^QH\?5 at V`W#HK:@8`2PH`
+MWZ1I8CD=9KQ),VB1G/56"8,/H+"$(2&RKM4M@;!&MH]6,!!ZC%9*&TD:X/M6
+MWKC!,92<98GHN\R/1T"38N/KSSKZB:+*^=6;XLX)IR(PN\&6/ZI):U`_[<*S
+M?FOQ*9URZFDU=P/]#V_X%WTB0L$4E%BAV at 8[:X\Q?Y7<JV[+DYB%<Q.R57L-
+M,/*@VK<W/J$3$Z_0++G*UH8JU`!"06<XV,_0]YP=$2!@V_9 at S=BXP=[Z?5I#
+M]%>L#3*ZSK]8VK:=ES>H*2U+-05MGEA"L\P%-%6L8%4O>"!FV`#@2?C1CM<6
+M]Z44K:JB3AT5/%8'B>XB58Q1N_"XW/_+JC1SYDF)U;1C<@%--Q;+-3Q5AYZ:
+MM2KZ1%LT%!\\$E&/:SJI5+E7]./$FKIW#(2DE:;#6]ZB+8U%4O#I.M7CUO)3
+M4$>'A, at H=Q89S]/S`E)Y=J?7\H.$_C=5YTZZM869\FPP at QZ@:!,TP,VDJH,G
+)4 at -1[0!0V/D*
+MQ\4--,#OA6KI9TBE?`<>Y<NP`2 at B#P"G+4G"R`\&(?OEH0:9-"C<1)N8'8(3
+M at DV]69,^R(QEQR$;<@#(HTP->:*5T]N^@+U[TEQ#WH444:,)>CG8N,B"7A8E
+MA$US4VM3OYVHJQ:H2`/(`PT,H]QFATAA_DT#+9]=TDU$V9?+F3^DN['Y]\>S
+M]*DUBN:E.ZE56"$&@&PRF"A<Y_T?AG at 9_R@]#0,!0;/XG_.']8 at IHT=/P4_+
+MZO_O_9-I:;;-=>=NY`&`,G@<:&0(JNPT+)K/W&A'QJ`5_N0@;H0MVY795GJB
+M;P-I%(I0`<#6FQVF<YJ5J)2OY7_^TT``&,M?ZYB"KE_>LQ\N),+.VWA=T,+J
+?_[WT&O3<P"3Y/%P:`.E1TKJO1OZR8`)9N/T-!()]"@``
+MO*#AA'(QU%V@?@^;3R_R=0=[+94F&X2OIR?0JFQ2IWN$!``Y"[]Z?HE4M6VC
+MT$3YQ88;PJ@`0L>5?Y+J'>BT?<%A&_M[VP(V==MMM,`:+;V#6E)YFT'!YL at A
+#,7,*
+>J=KWJ%,OD4[,4<)%3R"<$7`H>3=L*!H7P?[`0O8*
+M-DUVAP@`P=/EI(HD+XDX`&#<(M\0Z55XG%[D6M3[7<0VU5]*&81=B1[?V;U1
+M!0#H^Z3"Q%=&&`#HIGI<B6M0Y?LK4IE(2TLX6RP8BT89Z9J?'AN6LWQ0?X"T
+M%VRX=$00`,5Z`&%+^38=!%OJYV9(`AEG#%"GZ.>E0#0%`$!(P$"E,GK7;$[1
+MIB6LXN>PS82$$JCZLD+ at EFW0^N9*:C<R-&`GF at 8`H.=(-:M`$\/9$1,Z,H>>
+D)94;B=2RA97>"(G>4\U5=1FT&<K9H]+*GM)+0]CVW]%TJ5L*
+MW*:/9(HYT4O:QU]>[<VQYK<)B]8V>E at 3B*8$@$-WDDK./%=K at _%U_GRTA$'%
+M-**6[VE&MXY%&J0UR6_(L/J?DEQ):[$-8-4A+2SL!SK",#R'U&D9L+31IV\'
+M\G=J:26$V"NR at N\F513;7>\O#+=O2F(U)46VYNM_%`"0O[[>J'FZ]K7A<R,S
+M9T*`GX-"V&M&\HLB]#LYL2H758H!,)S>T'R]7A;0>0N;*UMI[V%];3=4,GU2
+M;OGZ]2*X?VNRZN]*],KTL!@`_ at S&9S4[M`:I[5D``[USG19M&_C2`$(\S?Q*
+MH5E6'V'`Z.LR>VF,D::4;<0`J)!6:(:6>%C_#<&E&7KI.%IK"S?JU&[<F53Z
+M.-C`"6I_,KM_ at NK7D*)93@/#9 at UVY!!N1E.+$YA?][@6R\<CFM%VO7BG3Z<P
+M%&<%9.V*ZP+Q+J2"3>7UWZIC5F`S'@>7TE;^+.:3R*M-C-K)F\/J'\O!CYGW
+M)K6O[RW!K"X.16V at E5<D*DJO(G#YQAG]-"'1)R.!,0!J3VB"A4,>L76++!V4
+MMKN%;&%+?$?')!`3N)E*I83;NK]@*D,TP+=,6855PRXY$@#`1+-':H%Z=B2*
+M#X14?0+1/_\@E at 2TPG6DCF5U(W at 8*!%#R-I?R1N$GK84$'H'2/2E2/2[<-\`
+*3:*55.]V5#$`"@``
+M">H>D4><G(*@$TK:W&+Z<#$OTQY':<I7_]`,`(,++QEHJ;OW:<8R=Z65I#)V
+A'M*>`2J==].!IRE::R"W;W5%=W>1LL%_6YINE:'@,DL*
+M8@#4F)9J^^#QO-],]@,)>AT:8V9D:9AEUZ]"^/\"#`!9J-F=B..^$0````!)
+'14Y$KD)@@@``

Added: trunk/azureus/debian/Azureus.torrent.png.uu
===================================================================
--- trunk/azureus/debian/Azureus.torrent.png.uu	                        (rev 0)
+++ trunk/azureus/debian/Azureus.torrent.png.uu	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,171 @@
+&B5!.1PT*
+"&@H`
+M````#4E(1%(```"`````@`@&````PSYARP````%S4D="`*[.'.D````&8DM'
+M1`#_`/\`_Z"]IY,````)<$A9<P``"Q,```L3`0":G!@````'=$E-10?9!QL"
+M+AM.._]G```;!DE$051XVNV=>71<5YWG/_>^I?9-JI(E2_(BVW&<V,Y&%MH.
+MV>@DI-.0 at 1FVP]#TH0]-SPQ-3WH.`ST<&J;I)I,&!@X)`W,ZW72`,P/=8;H3
+MMD`(2T(2$K)YC>--MB3;DDI+2:K]O7OGCUHDV;*=156JDNIW3KF>Z]5[>G5_
+MO_O[?7_?^[OW0DM:TI*6M*0E+6E)2UK2DI:TI"4M:4E+6M*2EK1DF8NHZU_[
+MZK-W`&^;]YG6"Q^?Z]Q"Q[KZSUG.G^-[E<_.]K[@?19XUX!6H#1H%XH.%/.0
+8RX)R"V1F_IK[__/Q1C(`L\Y_[QK@`[@*
+M'%5MVS.5KV?/+:CXTY5SVC5G5>8K4&15F?HLSU)1]$+7Z[+R%;@N.$4HE`T@
+M$@&O;S-O_\P=?.\O)U>J`>1P%->O"7/]ZF"Y7<5L(XK3>NC<<\S]?/[A?$-X
+M#9^=\SNO\)K*UY1"*853+)+/YLC,I)D:'^?1D0+#T=77D<T\R&T??RL_O&MR
+MY1F`!AS%+;UA/GYYY_(.KL4"DU-I3B4G.77*A]P_SK>3#O3V74LA_R"_>^?;
+G^.D7)Y;Z,25UMP#(N7K9ZETI3:'H,)DK,IDK,I$M,)[.HUT77`<*
+M1>C=>"V=/0]RXY_%5I@!5-SE<C6`$@[094"H=>G851K7<<%QZ0B8".5`]X:=
+C='8_R(U_&ELY!E!!RF*Y]G^!7L at DM$8K!=D\MVV(\[7?WPH`
+MN0)TK=M)HOM!;E at Z(Y!+TU&6LP=8Z%.-*&<&F7R1#UVUCB^_XY*2$21Z=A+O
+M?(CK_U-L!7B`BO*7K0LX.]VB-;@NRG$!^-.=F[CW76]`%HL0Z]I!6^=#W/"1
+MV#+W`!I6GNH1`J36X#BXKEL]]Q^NO8!_^,!.#,>!4&('D<1#7%]?(ZA_"*@0
+M)LM>%F`U7;>4#<R1]U^S at 6]^Z`8LY8(OMH-06UW#0?U!X#+O[P*!$.*,SR5E
+M#^"X9USUGJLW\'\^<C.V5F"%=N"/U<T(EL8#Z)7@`<J&(,IQX"P>H"+ON'(#
+MW[GS-KQ2 at _3MP!-^B.MJ;P1+X`%6!@BL.(&*1Y``CE,%@0O)'5=NY#L?NP.O
+M!+2]`RM0<T_0\@"U!H`PSP#.Y@$J\M8K-_*=OWA'R0@<8P?"6U- at N#088(5D
+M at 4((A!084F+(D@$(I<Y[W5NOOH`?W/5^XD$/%.4.E/40-WZT)D9 at UM\#+'<P
+MJ,N]7I:4;QA8EHEM2-"*X8EI'MTS<(ZAY=)G/MODW]]Z.5_ZUL_10NQ`B0=Y
+M\Y^_E4>^,-&\!K`"4L!2!B"0`@PIL4P#G\?&-DU0FF?W#7+3?_T6J'+-P(+O
+!"@``
+ME`N646HSQX&\WHFK'^3FC_\;?G)7LLD]P/('@$)*3,/`:UOX?#9=L2";$EX*
+MCD.Q('$=!^V*TAB!$FBE01F at RK2Q+A662`V&@,E,GDRVN)-<X2O`>UH>H,$-
+MP)`"RS3PV!8>CY?+UB7X=-0F.3Y-:CI-)I>GX+ at H5Z'1\Z.BF),]2$'`8_/2
+MZ#3_],Q1,*WN)@X!R]\(A)A57,7]AX,^E%)(*?#8'J*1(/F"@^.Z*%4>0IX'
+ADL5L%B$$?MLD:WK!. at F666QB$*A72`@02%$.`1X;C48*
+(B<>V"`?\Y`H`
+M18J. at U(:=9X.(2 at 90-(QP/*`M;@JJ[\'6!$AH.0!#$-B"Q,AP)0E8R at 6BQ1=
+M%U<I=,4`Q-G;2P!^C\7A5!%,&\QF-H!J-=#*,`+#D&5O(#`-B6V;N*Z-TAJE
+M=,GQGX\8U1#PFH1#4V"8((UF]@`K(P3,IH,@)0AA8$B):2BT!J5U)>J_(O';
+M%CZO#4*6;MC<1-#*J0FH`$)=+H*14LP!>^+TV'AVD1+3-)DEEYN:"%H9.&`A
+,;U!ZUVA]YG#Q^40*
+M41,298G2P)4L`B%>BQ'51/]+416L5V)EV.)BJ*8U@);F%\%[JD6][;)A`HNN
+M(I-WF<HZ]"<G>/+`*"\<GV8PY3#MEJIR3<M@?<S at CZ[;P(X-<0(>H_F,8''U
+MOT0\P"+J?R"985?_"#_?-<#S_6F&<P;*,$KH6P at 0`FV4:O5RCF3WJ.:CWSO,
+MA=%#?.F]5["VS=M$%J`6W6DO41;P^N782)K//_`LSQR99KIHH`T)T at 192KMT
+M&3F?-L92G;9U8,K@@U]_C'_^Z$ZB?E]S='^U^"!ZB2:&O/8?,3E3X'/_O(O;
+M/_L+?K9_ALFB,4N.Z%(QABRS;V?T'ZUG<W- at D##_\6__%:V=YG#_-9A767\0
+M^!I#@%*:?WER@#O^YI=\ZY>#N%I41\NTUM7C\^?2L]Y(`K\5W7SEZ]]IHBR@
+MJ3W`:^_]7__10?[;_2^03.416B/0IQ$LKYZ<45HA/1Z^]*,,>W:_T#*`^H2`
+M5Q_''OK-`%]Y\"6JC)D0KTGIIS]*Q2/HO at NXY]Y'%A]BMWB`LX2`5R$3,WGN
+M_N[>16?!JX`0L-IL'GY&,7QJJ+%!P+((`:\R#-SWXX.,3^=K\C at 5_"`]!AF/
+MS7//[6IP(FBY9`&O\#<D4SF^]_BQNO"'H34>7GQ^=X.'`,5BQX"&GASZ3[\\
+MRG2F6'7_JH8#2;ZXS='^$RBE&MP+K)`0D,DY/'T at B:I63.D%<_O%"`,`IBW)
+M9HKSYN\W9`Q8*3Q`__`T!P:G9CF0&L\G<[4D$/27"R\:N/<W]W#P*W=A+QU+
+MD4H7ZJ#Z\J,5"VS;MN5UIY<M'N"\&.#\(4`IS0N'QNKZ:*8J\H8K+V\"'J#I
+M0\#Y(4`V[[#KZ,0<MU%[8&JI`O%$>\L`&@$$CDSF.#0T]5H2A]?>$(5,@\]:
+MURN'!WAJWT at 5^=<T)L]I3)F;;N`, at -FEZ)>'!SBW?/<71RI)6I6NK8F4"T;0
+M&F8FR62RK#19HK&`LRMU8&2&0X-3U8D3]4#EPLDC<C,4B\7&UM;RP`#GA@!_
+M]]!+I34V=)V>!Y!.'LO)$@Z'&AP#+/-Z@/Z3TSRQ9[@ZUE]+]U^:E%FN)TBG
+MZ%G51D]O=V-[`*67"PC4"]B&YH=/'N?D6*8:^VOM_BMC"],O[^'=[WX;/I^W
+MH1U`\U/!YW!A^_HG^/;#+\W!9Z*FBJ\LY%083_*^[7Y^[ZVW-3A<J\W,ZH:8
+M'G[?@_NX[_O[F,K.SIJM9=^70I1J?UR'J]5!/O6)CS0V!3S7"S3UO(`Y4\.T
+MUNPY,LXG[WV<PZ>R($O+JHDZT#&5ZN!8>HA[/_$!/+YF*`MG&7@`K9&N8GPD
+)QY_=_2B//G<*
+M+8WR$BH"I6LSY#NW`U7O[N3YZW][*;&V2),HOS9I8%T-8%6R<(DO#[_XU[UH
+M8:`K)5FRK'PI:FZ`BM(2;M?Y1[CABNN;C+9I4@/8]OM_'T+*7^F4NPU!2?&4
+MTK!*CY=UB,&Z](<0`[OYPP]<WIS*7^3,N"X&H(2\6\`E&BWDG-+NI9 at K+`"G
+MD*,M%J'II!F)H*V_=U]`PB4"A$2 at EG"&N"AW)&/#E8T]\',N#-"$1:&6!K,1
+MEH68RRX^?C35A!Z`YO,`>W[PP4D!NP&A2B%X2=NO\H.?/CY%DUI`8V.`FV^X
+M(X:4-[M*;Q4H#,&+8O*[=P[&WMDGX'I=ETS_'"&@##8/GIII4 at S0P"#PNIO^
+$Z(_'"@``
+M^M/#R?[.R<E3&-'UQ(,679&N0>$6E9:>\MZ:2\^Z'1\I,#4U1CC<WCR]OY%!
+MX%4W??)_C*G-7\O:EW0&5]V*Z=M"*MO.L:D8P\:V'FU8:W0#K1"F/5&^^]!3
+MKRZ;*6\-KY1B27Y+HV*`RV^\Z_:L[O at O6@8Q#"^F':;G at EN(!M<3]*S&MB/5
+MA1OJF0541OLJFSA7VE``_EB(S][S/-G<S"M2?&G5$9>?'AGGCW\RP+?VCI%W
+MW/HKO]&(H&W7?[7'T<XWD+8TQ&R,55K3O::70J$P;Z"E'H1/A5+6:+131-C6
+M?!P`X#'`OY:_O.L[W/WI#YY3^8[CL'_?'K[V[`2/JM4 at X%<G<DP77#Y\:0(I
+MZS2H6 at .OLPA/KO]68[7/[65STRZ/U\M"YVHIE7$%H34S1Y['[/]UU3`KS^$J
+MS15OOI at OW_LB/_OY+\_2WJ7G'A at XPA]\^$?\>"A4+B$LW6/_1*'^H:"10L#V
+J-]US+8AW5]S[W$86HKR$2WD3)99 at N%6Y#H'A7>0>_SNRC_WODONO%($*
+MP<FBR^67[N0+7_D^G+9.D-8:QW'(9C,<.'"(P=1JA-<N@?#RLIWO6F_7T0`:
+A$`0J^,S<6;MB3L\_W1/44_V5X5XG.X.<&B*=29/?_S,*
+MCWP>K=SJ at LWCTJ%O^R:>>,)E[[Z]59?ONBZ.XY#)9!@9&>;PH>/H:`C36S(>
+MKRKPX=4S;`[)^O?^1ID;N.U-][Q9"'$U<X9R&TW20R^C\BD<50)K:N!%_">>
+MJ9:#"T,R$"PBG`OY\CT/XS at 9LMDL4U-3C(^/,S0TQ,LOO\0+NP;P;HDC;`-/
+M(<7M:A_7QL$PC'G9@>NZLX!QL=NC1B5AKPD$7KSC2Q::/T#@K_1[V2`5-5IK
+MA)0EI8P>115FJKY)*1=]_+<8W9>CA!<M8,0OV'K+A=SW#S^F*_$_N?76Z[`]
+M/J:GIQD>'N;@P?WLGS0(WA3'GAC at RK%?<_%E6[!M&\=Q2*?3\Q0NI<2V;2S+
+MPB at O6+GH1K"$!B``H9SL)L,3>HMNP(V`*PV>3R7Q9T_B%+((47)TKNN2/?8"
+MOHL'R;9OJC[XV(4VD8XM?.'KC_',;[_()5LO)!P+,CPR3/^Q$<9O_!C&U$D2
+M3W^#R/IN7-=E8F("QW$00N"Z#DHIA!#8'@_12)1H-$H@$%C<Z>8-P`0:@"V%
+MO%E#NY@#^!I!5+F!!(*IP0-TDR%9R%<'@9129+,9O$]]`W';9ZL%*=HC:7O7
+M.D[]WS2_V/<T@^,OL*'#3U$K^M_X)Z`U^O%OXTZ=8C(6H+^_GU0JA6D:0(%\
+M/LM4*HMR->OZ>EF_?C-KUZ[%MNU%7F]@:<<"#,`;#&]:A9!_R%D`WY+W_C+X
+2,X>>0Q13%%T'(8W2$C-*4RP*
+M4B>/XM_W`]RMMU?#AKG*1_SM%S#ZF&!OZGF&O)KVJV_""'=@C@]0./`4XUX+
+MH]]@<G(2C\=$"$ER-,'Q_G:2R1#T)5A[C9>;K1G>%9NFK:T-WZ+5&^HE)X+,
+MG at WOO202O^Q^*>T^YO%J#1#[RT^B@=3NGY"0&5*I43P>/Z9IE0F=`H[CX+H.
+MA:<?(+3V:D1D%91S>^^:"%WOV([.;4'X)"(8!,![;`\=G1N8G$XR.3%-+EO$
+B-,+LWW<CR8ENA,>@X_UK"+PAQI3/X`'#8$LF1U]-V,`E"@``
+M`1=>^JFW6)[H-Z1A1K30=5FVY54!OW*IMS,]BI@<Q"BF2&=GZ%NWC5BT`Z4<
+M'*=(-I<FDYFFX#K8)_=1B*R:`V(UEL]&![RETK%RU=*)X\>(6S;M[;WD"WD*
+MN&0-'XFK)^C:WDUARS:T::'*NX5K0%E>+,M:'E3P]JN^^&8-WQ9"^DN3*D3#
+M]/Y24:FL3O9(']M%IY%C(E/$M^5FAM.CI%.3&%JAT&`'L'K["'1N)M>S?8$V
+MUN5UA&=_F__*FQE+GR1O>7&#870XCA/I!"DPBVDB^7$\#EA>#V&/ES?$O=RV
+LOFUQ#6!^*E!O#R`^+P3^^5IOC-Y?I7VEP,U-$TCN)S=Q#/.2=^+=?`-**PH`
+M^12ZF$68-L(3P`E$2O,03EL\NK*S%W-X#0F8O9N8$IO*+680SYQD0WHOO7Y%
+M5\BB(V#3'@D2"0>(MX=HBT;Q^7Q5GF`99`%ZJL+EB24JYCQ;[R^Q?B7DG]_U
+M?6*Y$PREDEA[OH]V<NAB#J5=I&DC;"_"]B,#$62P#1&((@)M8)1*U(688^&5
+M9>4%&$Z6H#/%1I7DFFB![G4Q5K5W$@Z'\?O]>#R>ZJO"`<C3#:S)LX"O:KBV
+MTN^7>ER_,MI7H9BED&0//$HB?9"!X7Z$,'`GA\@\]8^S5+006):%U^LE$`@0
+>#H<)MJTBM*H7.]Z##B:8,0+DE,1U-!Y=("SRK+(*
+M=`=-UL=#M+=WT=;6-D_Q%6577F(1%K(^>Q;`DF4!/]9:/R.$N%*#%D*(Z@:(
+M=4X#U6DQ'REQ1 at _1/O(;!@=?/N.12ENX&MBV33@<)I%(T-G924='!QT='202
+M"3HZ.HA$(AB&@>NZ%(O%4FIHFE6#"0:#^/U^?#X?MFUC&$:-%=Y`(6#7TW=.
+M;KWR[C_7VGI`(A):J^KR'15#J-=P3R7F:U'NV>-'L';=S\"I(VCF*Z.B?)_/
+M1UM;&[V]O?3U];%NW3I6KUY-/!XG&HT2#H>K,;O"ZU>N-TT3R[(P31/#,*KT
+M;MWYCZ4>"]CSS,<>N_"R_WZ5Y0T](*1YN9Y%A&=0@;H&GD'/"3\E!4C,XX\Q
+M]M3?DW<<#,.<9X(5Y?O]?A*)!.O7KV?+EBULWEQBZ>+Q.,%@$*_76^W1XK2:
+M@=G]?V5CD%XUB+ROBJ=\Z?E/'0.NVG+UY]XF3<_[$&*-1OL0PB,,(RI-NQVM
+MM1!"5%WT8K%\<R"0DYTA/_0\;9,O$&OK9'QBA$*Q.,\E5Y3?T='!A at T;V+IU
+M*Q=??#%]?7TD$HDJ3U]W-_ZZ0\#2#@9IP-W_FT_\"_`08%J>J"\4W][FCVY:
+M$TEL_:ST!-\()2-8]-@/*,?EQ&\.DQ[/,FB'Z/%GZ%G302X]1G+\%(5B`<NT
+>L"R+2"1"=W<WFS=OYJ*++F+3IDUT='3@]Y?6!&X*
+MI9]N``TR,T@!12!7S$].C at _]ZNC at WOL>'^U_^!WE!Q0L<K90W1S*-.BZ;#.K
+MXA=B3;5S?/^3O+A_-SGE9=VZ;71U]"*$0$J)S^<C%HN12"2(Q^.$0B$\'L_B
+>#]/6T_\WV&+1E34K7*`XTO_C9#$W_I'38,NBN*T*
+1KI!"X(GZB.U<0V3399B!'@H`
+MZ3%>WO<$N_:^@#`#K%]S$5Z/CT*Q0"Z78WIZFE0JQ?3T-+E<#M=UT<VXB74-
+M/,#B[YTJ.. at -]71+TWM)93\_(645M9=9F^J[J/Q?REERL7Q<V?E3S'DI-%H(
+M#$,0Z(T2WO:[^%9MQ/"&R&<F.7%T%SD7NKOZ,+1#)I>I(GLI996PJ<3_9I&C
+/@TGN_W^/@V$<9?2Y^Y<*
+M`YPW-"3['YG*I/H_%E]_ZXO!Q,6?E)8GLI at K?U2*3RL at T_!X"6_<06CC[U!,
+M3Z+&3Y+:]RS/GLRRN=.'E4_Q\H$#9#)I\OE\%2`:AH'7ZYV'_!L>$-:@(J at 6
+MNR?K8FZ\F#KY])'T^(&G`AW;WF3:_C"42K5>JP=@CO?0@)2B.@)8807Q^+':
+M._%OOA1+)#AX<!1M&T0-EXF))$6G@&79!`(!/!X/6FOR^3S9;)9<+H?C./.8
+MPT8RA*-#2>Y_X#$PY%%&GV]8#U`QT0(PF9DXM"<]NOL^JW?G7R"EN5 at 51*>3
+M/94LP9"R>O_0UC[6Q*(,/O$K3`&]'I?CQX\3#(;P^7SD\WE"H5"U_-LP#$*A
+M$.WM[42C4;Q>[^(/YC0@%V#6\#%S0#)U\MD'0UU7O,?P!#=JK46MYH?+.;N(
+M*D!H3:"GG=X;;^3X$S\@[BV at TE,</GP8 at -'147P^7[D$O(C'XZ&SLXN-&S<B
+MI9S'$32,YFL`7&MI`"Z0F1G9=3 at W/?3U@&?SYS5H65H&M&;-5!DKJ.`$7R)*
+M^[9K&'KY1W0+DQ,GALCE<@P,#&`8LL2MN!:6;7'!YG78MDTL%B,<#F/;=@-U
+M?3$G$VB<-/"5&$&Z_]>?^T==S#PIA!"E8??:]2JYP#S$R*:-%$)="&$R-37%
+<T-`0!P^^S.#`*:8G73(S+LGA:4X,C9+)I"D4"@``
+M2S<#N,X>0-;^J7&!F:F1W1_4JE"HSJVK4^-6=A9OWW(Y3K%`/I_#=16A0()(
+M=`U.?"-3FW8@$EW$8I$J6=18[O]T+J#Q0\`9K.'@;__72SGS3W[2T77-[147
+M76LCJ$P2T8"(=I$MY%G=V4<HL0XGL8'QC at WD.R]&&Y+HVK5<VI.FN[N'2"12
+MHW*NU]F5F@@#G"XN0#*Y=[<3[KZ])[2F](LJU46+/'`T-T.H-)DQDR2R=CN9
+MOFN9B*S&\870AH60D@!Y_MTF#]LV]M'5U44H%&K at L8)F7BI6&LZDRG/UJAPG
+MD_Z256A=S>T7J[FKQ%.9/M9:4XSUDKSF0Z6_(P520D`6N3I>X+T7^8G'+R(6
+MBQ$,!JM5/@WI_C5-;`!**:3-!1=$>?L;(WSSD5-,Y*T2V3-7<8L`!%79_9==
+M015'QZP":X)P2:?%F_HB],0C!`(!_'Y_=3Y?8U/$S>P!@G'0FD`PS#MOV49[
+M&+[UTT$.COE+[%YE';\Y9-'YB"-=6?_WM"GHE6N$DR7LIED?=+AB;9AM:Q-L
+M7-U.-%PJ!JE4^U1J^AI:\4WO`=:\`:9FL&R;:'N"*[9?0'O8YH>/'^:QPP;3
+/1=]LN79EGE]9*6<+$94*
+M7NVZ.-,IS*E#.,.[*([U8SDSM,>B]*U?S_9M6[ELU65LZHT3C\?Q>KW-50Q2
+M(ZFO`;@NZ'*)E31))!(8AL';O5ZNV'2,W^X_P4LG7(;S$?)XT5 at H88,PSC`"
+M76;[D!)93!,Z\C`SPVF&LUXLPR4 at _=A&GMST),G14XR-=3(S,X-2:EYM7].)
+M;O+]`M`:VRPI-!`($/![:8^&Z.GL8./Z$8:'ATDFDPR.CC$TX9),0ZI@,N/8
+MI'68@@C/Z_FEH&]2+(P3%$>(1MH8+K0S4EB-EG%665,D7!?E%I$HO):!SVLO
+?R9(UKT=\MMW4:>!LOY6"`X-C//KBT=+Z_4J7)FL6"@``
+%Y+*"C`H`
+MD?8(/#$_J[U9VG)9<MD,TS,ITKD3Y!S!E(J3-+K)XR_=U?"0O_A]Y`X]3/'H
+MX_C,,=:;03($4,*+HS3#J0*[^\=(FT=I.SZ%97OFVX`^#^#2KP"8Z7.=%Z_^
+M?G,N?7[OL?(ZNXMK!/7M!F_YS-\`GZ#HEL.!GN<92ENC*M`N*%5:N$FYI9=;
+M!.64S at -"6L2Z^FCONQ3#\H``:1 at 49L9(]3_'Q/['$849 at CX_.2RRR@>>*%A!
+MD#9G<.O5WJ7GE&#/?3_7=Q<X=Z[OO.+C.<8@!5 at FP),<^N;O-&L(.(#F40P!
+MTIPM<9K;T%K-KX&O&H:>MW>NUC`^-<GX<S^CHV?3VF![9X?E"_CL<-R,7WH+
+M[9?=2F$F-3UV>%=_[L2Q,8142*N$)X0`+196]H+*/-=W%CJWP+'F3(,XZ_$"
+MYV;E^>;U`#64B^Y\.(J45V at IKA=2O%$+L1TA$@@QK:2XYL!?7;>/EBQ?`Z@:
+.PL<>,;04?H2((D08(0H`
+=2HK^`W]U7;&E[I:TI"4M:4E+6M*2EK2D)2UIR0H`
+7E_\//7\TP(CBY[8`````245.1*Y"8((`

Added: trunk/azureus/debian/NEWS.Debian
===================================================================
--- trunk/azureus/debian/NEWS.Debian	                        (rev 0)
+++ trunk/azureus/debian/NEWS.Debian	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,14 @@
+azureus (4.2.0.4-1) unstable; urgency=low
+
+  * New upstream release.
+  * This release is the result of a major packaging rewrite as part of
+    package adoption.
+  * Important changes:
+    - Most user-visible bugs fixed.
+    - Add multiuser support: allow multiple instances running in the
+      same machine.
+    - Fixes "a malicious user could control another user's instance".
+    - Handle file associations and magnet URL links.
+    - Refer to Vuze in menus.
+
+ -- Adrian Perez <adrianperez.deb at gmail.com>  Wed, 29 Jul 2009 21:25:03 -0400

Added: trunk/azureus/debian/README.Debian
===================================================================
--- trunk/azureus/debian/README.Debian	                        (rev 0)
+++ trunk/azureus/debian/README.Debian	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,15 @@
+azureus for Debian
+------------------
+
+ * Azureus in Debian will start the classic interface by default when the vuze package
+   isn't installed.
+   If it is, then the azureus executable will start the user preferred's interface.
+ * Please note that the new interface won't work without the vuze package installed, 
+   so if you need to use it, install that package first. 
+ * The vuze package is actually kind of dummy package, providing the dependencies
+   necessary to run the new interface.
+ * Azureus in Debian has been patched to prevent updates to the Core and SWT components,
+   since those updates will break sync with the package manager. The remaining plugins
+   updates remain unchanged, since they are not part of the debian archive.
+
+ -- Adrian Perez <adrianperez.deb at gmail.com>  Fri, 31 Jul 2009 13:49:06 -0400

Added: trunk/azureus/debian/README.multiuser
===================================================================
--- trunk/azureus/debian/README.multiuser	                        (rev 0)
+++ trunk/azureus/debian/README.multiuser	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,87 @@
+Multi-user patch
+================
+
+This package contains a patch to fix Launchpad bug 222630,
+"Azureus always listens on local port without authentication".
+
+
+Rationale
+---------
+
+Azureus uses tcp port 6880 bound to localhost for instance detection and 
+command-line parameter passing.
+
+This implementation has the following drawbacks:
+
+  - It is not possible to run more than one instance per machine. Port 6880 is 
+    hard coded.
+
+  - Any local user can control another user's instance by passing command line 
+    arguments. This is a security vulnerability.
+     
+A single-user system seems to be assumed. This patch restores user's environment 
+isolation.
+
+
+Design
+------
+
+Listen port 6880 is substituted by a random port allocated in the ephemeral 
+range 49152-65535, as per IANA specification. The listener also chooses a random 
+key that must be sent by connecting clients as authentication. The port number 
+and the key are then saved in the localport.lock file in the Azureus 
+configuration directory, which is in the user's home and thus private.
+
+A new instance checks for the presence of the lock file. If it is found the port 
+and the key are used to connect to the running instance.
+
+
+Implementation
+--------------
+
+The patch is designed to have minimum impact on the codebase to facilitate 
+merging of future upstream versions.
+
+It is to be noted that there is a certain amount of code duplication in Azureus: 
+most different UIs have their own code for managing port 6880.
+
+A new class, org.gudy.azureus2.core3.util.LocalSocketHelper, is introduced. This 
+class, with its connect() and listen() methods, is a drop-in replacement for any 
+call to "new Socket(...)" and new "ServerSocket(...)" involving port 6880. Port 
+selection and authentication are handled automatically.
+
+The rest of the modifications are mostly one line changes implementing the 
+substitution described above. In addition, references to port 6880 are removed 
+from all code involving port selection. Port validation logic that used to 
+exclude port 6880 has been updated to respect the ephemeral range instead.
+
+
+Possible issues
+---------------
+
+The call to SystemProperties.getUserPath() in LocalSocketHelper() can cause 
+PlatformManager to be initialized sooner than it should. It seems to work, but 
+upstream says this is not advisable. As a workaround -Dazureus.config.path is 
+passed on the command line, avoiding the invocation of the platform-specific 
+code that discovers the user's home directory.
+
+
+Note for mergers
+----------------
+
+When merging a new upstream version, the merger should search for "6880" and 
+apply the correct substitution. Also, any port selection in the range x-65535 
+should be done in the range x-49151 instead.
+
+
+Further development
+-------------------
+
+This patch is a quick fix, a proper rewrite is desirable. Any efforts should 
+start with reducing code duplication. That would increase the chances of this 
+being accepted upstream.
+
+
+--
+Stefano Maioli
+<maio at naoweb.it>

Added: trunk/azureus/debian/README.source
===================================================================
--- trunk/azureus/debian/README.source	                        (rev 0)
+++ trunk/azureus/debian/README.source	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,57 @@
+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
+        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 <patch>
+
+where <patch> 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 <file>
+
+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 <patch> /path/to/patch
+    quilt push -a
+
+(add -p 0 to quilt import if needed). <patch> 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 <patch>
+
+You may need to run quilt pop -a to unapply patches first before running
+this command.

Added: trunk/azureus/debian/azureus.1
===================================================================
--- trunk/azureus/debian/azureus.1	                        (rev 0)
+++ trunk/azureus/debian/azureus.1	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,40 @@
+.TH azureus "1" "2009-07-08" "azureus 4.2.0.4" "User Commands"
+
+.SH NAME
+azureus \- a BitTorrent client
+
+.SH SYNOPSIS
+.B azureus
+.br
+.B azureus
+
+.SH DESCRIPTION
+BitTorrent is a peer-to-peer file distribution tool.
+
+Azureus offers multiple torrent downloads, queuing/priority systems
+(on torrents and files), start/stop seeding options and instant access
+to numerous pieces of information about your torrents. Azureus now
+features an embedded tracker easily set up and ready to use.
+
+.SH AUTHOR
+Written by Aelitis, and Vuze Inc.
+
+This manual page was written by Adrian Perez <adrianperez.deb at gmail.com>
+for the Debian project (and may be used by others).
+
+.SH "REPORTING BUGS"
+Report bugs to <azureus at gmail.com>.
+
+.SH COPYRIGHT
+Copyright 2009 Vuze, Inc.
+Copyright 2003-2009 Aelitis.
+
+This is free software; see the source for copying conditions. There is
+NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+.SH "SEE ALSO"
+http://azureus.sourceforge.net
+
+The user guide, which may be accessed from the \fIHelp\fR menu within
+the program.

Added: trunk/azureus/debian/azureus.desktop
===================================================================
--- trunk/azureus/debian/azureus.desktop	                        (rev 0)
+++ trunk/azureus/debian/azureus.desktop	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Encoding=UTF-8
+Categories=Java;Network;FileTransfer;P2P
+Comment=peer-to-peer file distribution tool
+Exec=azureus %f
+GenericName=BitTorrent client
+Icon=Azureus
+MimeType=application/x-bittorrent
+Name=Vuze
+Type=Application

Added: trunk/azureus/debian/azureus.schemas
===================================================================
--- trunk/azureus/debian/azureus.schemas	                        (rev 0)
+++ trunk/azureus/debian/azureus.schemas	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<gconfschemafile>
+  <schemalist>
+    <schema>
+      <key>/schemas/desktop/gnome/url-handlers/magnet/enabled</key>
+      <applyto>/desktop/gnome/url-handlers/magnet/enabled</applyto>
+      <owner>azureus</owner>
+      <type>bool</type>
+      <default>true</default>
+      <locale name="C">
+        <short>Whether the specified command should handle "magnet" URLs</short>
+        <long>True if the command specified in the "command" key should handle "magnet" URLs.</long>
+      </locale>
+    </schema>
+    <schema>
+      <key>/schemas/desktop/gnome/url-handlers/magnet/command</key>
+      <applyto>/desktop/gnome/url-handlers/magnet/command</applyto>
+      <owner>azureus</owner>
+      <type>string</type>
+      <default>azureus "%s"</default>
+      <locale name="C">
+        <short>The handler for "magnet" URLs</short>
+        <long>The command used to handle "magnet" URLs, if enabled.</long>
+      </locale>
+    </schema>
+    <schema>
+      <key>/schemas/desktop/gnome/url-handlers/magnet/needs_terminal</key>
+      <applyto>/desktop/gnome/url-handlers/magnet/needs_terminal</applyto>
+      <owner>azureus</owner>
+      <type>bool</type>
+      <default>false</default>
+      <locale name="C">
+        <short>Run the command in a terminal</short>
+        <long>True if the command used to handle this type of URL should be run in a terminal.</long>
+      </locale>
+    </schema>
+  </schemalist>
+</gconfschemafile>

Added: trunk/azureus/debian/azureus.xpm
===================================================================
--- trunk/azureus/debian/azureus.xpm	                        (rev 0)
+++ trunk/azureus/debian/azureus.xpm	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,331 @@
+/* XPM */
+static char * azureus_xpm[] = {
+"37 33 295 2",
+"  	c None",
+". 	c #C2CFDD",
+"+ 	c #B5CEE5",
+"@ 	c #94BBDB",
+"# 	c #72A8D3",
+"$ 	c #6FA8D5",
+"% 	c #A0C6E2",
+"& 	c #6C99CA",
+"* 	c #3E7DBD",
+"= 	c #2571B7",
+"- 	c #2274BB",
+"; 	c #2379BF",
+"> 	c #237CC1",
+", 	c #2380C4",
+"' 	c #84AFCE",
+") 	c #ACC3DD",
+"! 	c #3873B8",
+"~ 	c #2A6CB4",
+"{ 	c #2870B9",
+"] 	c #2974BB",
+"^ 	c #2A78BE",
+"/ 	c #297CC0",
+"( 	c #2980C3",
+"_ 	c #2883C6",
+": 	c #1D74BC",
+"< 	c #D1D7DF",
+"[ 	c #5282BE",
+"} 	c #2766B1",
+"| 	c #2B6DB5",
+"1 	c #2871B9",
+"2 	c #2A74BB",
+"3 	c #2880C3",
+"4 	c #2983C5",
+"5 	c #2287CA",
+"6 	c #637AA7",
+"7 	c #B7CAE3",
+"8 	c #1D5CAB",
+"9 	c #2A69B3",
+"0 	c #258ACD",
+"a 	c #416587",
+"b 	c #6990C5",
+"c 	c #2561AE",
+"d 	c #2B69B3",
+"e 	c #2489CB",
+"f 	c #587C9B",
+"g 	c #2D64AE",
+"h 	c #2964AF",
+"i 	c #2286C9",
+"j 	c #7998B2",
+"k 	c #B9CAE0",
+"l 	c #235CAA",
+"m 	c #2A65B0",
+"n 	c #2286CB",
+"o 	c #798CA0",
+"p 	c #6086BF",
+"q 	c #2960AC",
+"r 	c #2B65B0",
+"s 	c #2983C6",
+"t 	c #2180C2",
+"u 	c #6C7485",
+"v 	c #A5B7D4",
+"w 	c #3162AD",
+"x 	c #2B62AD",
+"y 	c #2582C6",
+"z 	c #3F80B1",
+"A 	c #4793BF",
+"B 	c #8EA1CC",
+"C 	c #315FAB",
+"D 	c #2B5EAB",
+"E 	c #2A62AE",
+"F 	c #2B81C1",
+"G 	c #B9D1E2",
+"H 	c #234990",
+"I 	c #2851A1",
+"J 	c #2752A4",
+"K 	c #2C5AA8",
+"L 	c #2C5EAB",
+"M 	c #267EC0",
+"N 	c #6199C3",
+"O 	c #2B4EA0",
+"P 	c #2D52A3",
+"Q 	c #2B57A5",
+"R 	c #2B5BA8",
+"S 	c #267EC1",
+"T 	c #669FC9",
+"U 	c #1F2532",
+"V 	c #242B3B",
+"W 	c #2A4B98",
+"X 	c #2C53A3",
+"Y 	c #2C5BA8",
+"Z 	c #5096C9",
+"` 	c #E7EDF2",
+" .	c #2C4089",
+"..	c #213982",
+"+.	c #133174",
+"@.	c #294D9D",
+"#.	c #2C52A3",
+"$.	c #2A78BD",
+"%.	c #287CC1",
+"&.	c #287FC2",
+"*.	c #2C78BA",
+"=.	c #313438",
+"-.	c #D3E9F3",
+";.	c #293B8A",
+">.	c #2D4398",
+",.	c #2D489C",
+"'.	c #2B4B9E",
+").	c #2C4FA0",
+"!.	c #2B5DAA",
+"~.	c #2A74BA",
+"{.	c #2879BF",
+"].	c #256499",
+"^.	c #287CBC",
+"/.	c #277DC4",
+"(.	c #5C78AC",
+"_.	c #8DA4C4",
+":.	c #1F93D1",
+"<.	c #61B6E0",
+"[.	c #2C3F94",
+"}.	c #2E4498",
+"|.	c #2D489B",
+"1.	c #2D4C9E",
+"2.	c #2D4FA0",
+"3.	c #2B56A5",
+"4.	c #2B5AA7",
+"5.	c #2577BD",
+"6.	c #212630",
+"7.	c #1F3A4E",
+"8.	c #2B86C7",
+"9.	c #2253AB",
+"0.	c #BDBECE",
+"a.	c #447AB7",
+"b.	c #3490C3",
+"c.	c #283786",
+"d.	c #2D4095",
+"e.	c #2C4B9E",
+"f.	c #2A76BE",
+"g.	c #22629C",
+"h.	c #1B1D22",
+"i.	c #1B1C1C",
+"j.	c #2C6790",
+"k.	c #2885CF",
+"l.	c #2B4098",
+"m.	c #7C7A81",
+"n.	c #74828A",
+"o.	c #2E6F94",
+"p.	c #738289",
+"q.	c #BBB8B4",
+"r.	c #C9C8BB",
+"s.	c #B9AFA6",
+"t.	c #2B3A8D",
+"u.	c #2E4096",
+"v.	c #2971B9",
+"w.	c #2772B9",
+"x.	c #244364",
+"y.	c #181819",
+"z.	c #171716",
+"A.	c #1E3240",
+"B.	c #277FB9",
+"C.	c #237FC6",
+"D.	c #165197",
+"E.	c #287BAD",
+"F.	c #2E4C62",
+"G.	c #43403F",
+"H.	c #484268",
+"I.	c #202D9C",
+"J.	c #3480BD",
+"K.	c #A3BBC6",
+"L.	c #2C368E",
+"M.	c #2E3D93",
+"N.	c #2D4096",
+"O.	c #2C4799",
+"P.	c #2870B8",
+"Q.	c #26629E",
+"R.	c #1E3144",
+"S.	c #303B4E",
+"T.	c #373F51",
+"U.	c #2F4761",
+"V.	c #287AB3",
+"W.	c #278BCB",
+"X.	c #2791CF",
+"Y.	c #248CC8",
+"Z.	c #31678D",
+"`.	c #356685",
+" +	c #327BA8",
+".+	c #3CA2CD",
+"++	c #48AFDA",
+"@+	c #2E388F",
+"#+	c #2D3D93",
+"$+	c #2A6CB5",
+"%+	c #286EB5",
+"&+	c #243D59",
+"*+	c #1E3143",
+"=+	c #1D496B",
+"-+	c #1E4B6C",
+";+	c #2D658C",
+">+	c #4080AB",
+",+	c #4791C0",
+"'+	c #4393C3",
+")+	c #4896C3",
+"!+	c #5EA3C9",
+"~+	c #91B8CC",
+"{+	c #B8B5B3",
+"]+	c #2B368A",
+"^+	c #2D4B9E",
+"/+	c #2A6AB3",
+"(+	c #2C6EB4",
+"_+	c #223E5C",
+":+	c #191818",
+"<+	c #151413",
+"[+	c #1B1816",
+"}+	c #484644",
+"|+	c #908D8B",
+"1+	c #B0AEAD",
+"2+	c #ECE9E7",
+"3+	c #212F71",
+"4+	c #273D89",
+"5+	c #2C479B",
+"6+	c #2C4B9D",
+"7+	c #2B66B1",
+"8+	c #245FAE",
+"9+	c #15356A",
+"0+	c #282930",
+"a+	c #181717",
+"b+	c #191919",
+"c+	c #505050",
+"d+	c #939393",
+"e+	c #000000",
+"f+	c #294494",
+"g+	c #2961AD",
+"h+	c #2A6BB4",
+"i+	c #1B419F",
+"j+	c #040C16",
+"k+	c #212530",
+"l+	c #2A2A2E",
+"m+	c #6E6E6E",
+"n+	c #27438D",
+"o+	c #2B59A6",
+"p+	c #2B5DA9",
+"q+	c #2B70B7",
+"r+	c #276EB5",
+"s+	c #1B4E82",
+"t+	c #1D3B68",
+"u+	c #343949",
+"v+	c #7A7978",
+"w+	c #14244C",
+"x+	c #294E9E",
+"y+	c #2C52A2",
+"z+	c #2A77BF",
+"A+	c #2574BD",
+"B+	c #184C8A",
+"C+	c #39393E",
+"D+	c #737372",
+"E+	c #929190",
+"F+	c #9E9D9D",
+"G+	c #254489",
+"H+	c #2D52A2",
+"I+	c #2A79BE",
+"J+	c #267CC2",
+"K+	c #2A3B52",
+"L+	c #25201E",
+"M+	c #3D4252",
+"N+	c #4B4D5A",
+"O+	c #BCBBBB",
+"P+	c #254F9B",
+"Q+	c #2D57A6",
+"R+	c #287EC4",
+"S+	c #2F587F",
+"T+	c #33658F",
+"U+	c #2C87C5",
+"V+	c #91AABA",
+"W+	c #44639D",
+"X+	c #2E5CA7",
+"Y+	c #2A65B1",
+"Z+	c #2973B9",
+"`+	c #286DAA",
+" @	c #2D72AA",
+".@	c #4C8FC2",
+"+@	c #81B2D4",
+"@@	c #2C446A",
+"#@	c #2B4E84",
+"$@	c #2E5B98",
+"%@	c #3165A7",
+"&@	c #2B69B1",
+"*@	c #296CAF",
+"=@	c #2C4469",
+"-@	c #1E395D",
+";@	c #35414F",
+">@	c #A3A4A3",
+",@	c #193C63",
+"'@	c #225E99",
+")@	c #27547F",
+"!@	c #1A2E45",
+"~@	c #1F2C41",
+"{@	c #47586C",
+"                                                                          ",
+"                                      . + @ # $ %                         ",
+"                                    & * = - ; > , '                       ",
+"                                ) ! ~ { ] ^ / ( _ :                       ",
+"                              < [ } | 1 2 ^ / 3 4 5 6                     ",
+"                              7 8 9 | 1 2 ^ / ( 4 0 a                     ",
+"                              b c d | 1 2 ^ / ( 4 e f                     ",
+"                              g h d | 1 2 ^ / ( 4 i j                     ",
+"                            k l m d | 1 2 ^ / 3 4 n o                     ",
+"                            p q r 9 | 1 2 ^ / ( s t u                     ",
+"                          v w x r d | 1 2 ^ / ( y z                       ",
+"                      A B C D E r d | 1 2 ^ / 3 F G                       ",
+"                    H I J K L E r d | 1 2 ^ / M N                         ",
+"                    O P Q R L E r d | 1 2 ^ / S T                         ",
+"                U V W X Q Y L E r d | 1 2 ^ / 3 Z `                       ",
+"               ...+. at .#.Q Y L E r d | 1 2 $.%.&.*.=.        -.            ",
+"            ;.>.,.'.).X Q Y !.E r d | 1 ~.{.].^./.(.      _.:.<.          ",
+"            [.}.|.1.2.X 3.4.!.E r d | 1 2 5.6.7.8.9.0.    a.b.            ",
+"          c.d.}.|.e.2.X Q Y L E r d | 1 f.g.h.i.j.k.l.m.n.o.p.q.r.s.      ",
+"          t.u.}.|.e.2.X Q Y L E r d | v.w.x.y.z.A.B.C.D.E.F.G.H.I.J.K.    ",
+"        L.M.N.}.O.e.2.X Q Y L E m d | P.Q.R.S.T.U.V.W.X.Y.Z.`. +.+++      ",
+"        @+#+u.}.|.e.2.X Q Y L E r 9 $+%+&+*+=+-+;+>+,+'+)+!+~+  {+        ",
+"        ]+#+N.}.|.^+).X Q Y L E r /+(+_+:+<+[+}+|+1+      2+              ",
+"            3+4+5+6+2.X Q Y L E 7+8+9+0+a+b+c+d+e+                        ",
+"                f+6+2.X Q 4.!.g+m h+i+j+k+l+m+e+e+                        ",
+"                  n+).X Q o+p+E r 9 q+r+s+t+u+v+                          ",
+"                  w+x+y+Q Y !.E m d | v.z+A+B+C+D+E+F+                    ",
+"                    G+H+3.Y L E r d | 1 ~.I+J+K+L+M+N+O+                  ",
+"                      P+Q+R L E r 9 | 1 2 $.R+S+T+U+V+                    ",
+"                        W+X+D E Y+9 | 1 Z+`+ @. at +@                        ",
+"                          @@#@$@%@&@| *@=@-@;@>@                          ",
+"                                    ,@'@)@!@~@{@                          ",
+"                                                                          "};

Added: trunk/azureus/debian/bin/azureus.template
===================================================================
--- trunk/azureus/debian/bin/azureus.template	                        (rev 0)
+++ trunk/azureus/debian/bin/azureus.template	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,12 @@
+#!/bin/sh
+JAVA='%JAVA% -Xmx1024M'
+VUZE=/usr/bin/vuze
+. /usr/share/java-config/libswt-3.4-java
+if [ ! -x $VUZE ]; then
+	UI=-Dforce.ui=az2
+fi
+exec $JAVA -Djava.library.path=/usr/lib/jni:/usr/lib \
+	-classpath /usr/share/java/Azureus2.jar:$JARS \
+	-Dazureus.install.path="$HOME/.azureus" \
+	$UI \
+	org.gudy.azureus2.ui.common.Main "$@"

Added: trunk/azureus/debian/bin/vuze
===================================================================
--- trunk/azureus/debian/bin/vuze	                        (rev 0)
+++ trunk/azureus/debian/bin/vuze	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec azureus "$@"

Added: trunk/azureus/debian/build.properties
===================================================================
--- trunk/azureus/debian/build.properties	                        (rev 0)
+++ trunk/azureus/debian/build.properties	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,11 @@
+root.dir=${basedir}
+src.dir=${root.dir}
+build.dir=${basedir}/build
+lib.dir=${src.dir}/libs
+dist.dir=${basedir}/dist
+generic.excludes=.bzr/** **/debian/** .bzr* **/.pc/**
+platform.excludes=**/macosx/** org/gudy/azureus2/ui/swt/osx/**  org/gudy/azureus2/platform/macosx/* org/gudy/azureus2/ui/swt/win32/** org/gudy/azureus2/ui/swt/test/** org/gudy/azureus2/platform/macosx/**/*.java org/gudy/azureus2/platform/macosx/PlatformManagerImpl.java
+compile.excludes=${platform.excludes} ${generic.excludes} *build.xml azureus Azureus.* *.properties **/*.gif **/*.png **/Azureus2.jar
+jar.mainclass=org.gudy.azureus2.ui.common.Main
+jar.classpath=Azureus2.jar commons-cli.jar log4j-1.2.jar swt.jar /usr/lib/jni
+jar.excludes=**/*.java ${generic.excludes} ${platform.excludes} **/Azureus2.jar azureus Azureus.* *build.xml build.properties **/build/**

Added: trunk/azureus/debian/build.xml
===================================================================
--- trunk/azureus/debian/build.xml	                        (rev 0)
+++ trunk/azureus/debian/build.xml	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,105 @@
+<?xml version="1.0"?>
+
+<!--
+   build.xml - Vuze/Azureus Project Builder
+   Copyright (C) 2009 - Adrian Perez <adrianperez.deb at gmail.com>
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+-->
+
+<!--
+  ==============================================
+   Build file to compile Azureus2.jar and Vuze.
+  ==============================================
+-->
+
+<project name="azureus" default="package" basedir="..">
+  <description>
+    This build file will compile the Azureus and Vuze files
+    from the Vuze source distribution.
+    Vuze is a Multimedia BitTorrent Client.
+  </description>
+
+        <property file="debian/build.properties" />
+
+        <!-- The debian classpath. This is the default way of building. -->
+        <!-- TODO Make generic and use condition properties. -->
+
+        <path id="debian.classpath">
+          <fileset dir="/usr/share/java/">
+            <include name="swt.jar" />
+            <include name="commons-cli.jar" />
+            <include name="log4j-1.2.jar" />
+            <include name="junit.jar" />
+          </fileset>
+        </path>
+
+        <!-- The bundled classpath. This was the default way of building. -->
+        <path id="bundled.classpath">
+          <fileset dir="${src.dir}/${lib.dir}" includes="**/*.jar" />
+        </path>
+
+        <target name="init">
+          <!-- Create a build timestamp -->
+          <tstamp />
+          <!-- Create the build directory -->
+          <mkdir dir="${build.dir}" />
+        </target>
+
+        <target name="compile" depends="init" description="compile all files">
+          <javac srcdir="${src.dir}" destdir="${build.dir}" source="1.5" target="1.5"
+                 includeAntRuntime="no" nowarn="yes" debug="true" excludes="${compile.excludes}">
+            <classpath>
+              <path refid="debian.classpath" />
+            </classpath>
+          </javac>
+        </target>
+
+        <target name="package" depends="compile,buildcopy" description="package Azureus2.jar">
+          <!-- Create the "dist" directory. -->
+          <mkdir dir="${dist.dir}" />
+          <copy todir="${build.dir}" file="${src.dir}/ChangeLog.txt"/>
+
+          <!-- Create the jar file and use exclusions -->
+          <jar destfile="${dist.dir}/Azureus2.jar" basedir="${build.dir}" excludes="${jar.excludes}">
+            <manifest>
+              <attribute name="Main-Class" value="${jar.mainclass}" />
+              <attribute name="Class-Path" value="${jar.classpath}" />
+            </manifest>
+          </jar>
+
+        </target>
+
+        <target name="clean" description="clean the build environment">
+          <!-- Delete the build and dist directories -->
+          <delete dir="${build.dir}" />
+          <delete dir="${dist.dir}" />
+        </target>
+
+        <target name="run" description="run the application">
+          <java jar="${dist.dir}/Azureus2.jar" fork="true" />
+        </target>
+
+        <target name="buildcopy" description="copy the build files">
+          <!-- Copy all non-source files to the JAR. -->
+          <copy todir="${build.dir}" includeEmptyDirs="false">
+            <fileset dir="${src.dir}" excludes="${jar.excludes}"/>
+          </copy>
+        </target>
+
+        <target name="echo" description="echo">
+          <echo message="${compile.excludes}"/>
+        </target>
+
+</project>
+
+

Added: trunk/azureus/debian/changelog
===================================================================
--- trunk/azureus/debian/changelog	                        (rev 0)
+++ trunk/azureus/debian/changelog	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,315 @@
+azureus (4.2.0.4-1) UNRELEASED; urgency=low
+
+  * New upstream release.
+  * debian/control:
+    - Update maintainer.
+    - Update Standards-Version to 3.8.2.
+    - Add Homepage field.
+    - Update Vuze description to reflect some of it's new features and the package role.
+    - Build-Depends on ant, cdbs, quilt, debhelper (>= 7.0).
+    - Build-Depends-Indep on openjdk-6-jre | sun-java5-runtime | 
+      sun-java6-runtime. Closes: #515015, #398014.
+    - Add Vcs-Svn and Vcs-Browser fields.
+  * debian/rules:
+    - Use CDBS build system.
+    - ANT_OPTS=-Xmx256m. Closes: #516059, #409952.
+  * debian/patches:
+    - fix-chars-encoding.patch: Fix encoding in characters translation.
+    - fix-platform-code: Remove Win32 and MacOS-X imports and logic.
+    - fix-messagetext-dont-use-privileges: Don't use AccessController.
+      Thanks to Shaun Jackman.
+    - multiuser.patch: Import multiuser patch. Closes: #329018.
+      Thanks to Stefano Maioli.
+    - updater-dont-initialize-swt-updatechecker.patch: Prevent Azureus' updater
+      from upgrading SWT libraries.  
+    - updater-dont-register-core-updatechecker.patch: Prevent Azureus' updater
+      from upgrading the core version of Azureus.
+    - Add patch descriptions, with DEP-3 compliance.
+  * debian/copyright:
+    - Change to machine-readable format.
+    - Notice package adoption.
+    - Update copyright information and holders.
+  * debian/watch: Update file.
+  * debian/compat: Bump compatibility to 7.
+  * debian/docs: Remove reference to README.txt.
+  * debian/azureus.desktop: 
+    - Fix handling file associations. Closes: #491624.
+      Thanks to Stefano Maioli.
+  * debian/azureus.template: User interface override applies only when vuze is not installed.
+  * debian/bin/vuze: No longer need to set VUZE=1, just execute azureus.
+  * Import README.multiuser, which documents the multiuser patch.
+  * Use quilt patch system and add README.source.
+  * Update azureus and create vuze manpages.
+  * Create new PNG files for Vuze and Vuze torrents, uuencoded in debian/.
+  * Remove source.lintian-overrides, no longer necessary.
+  * Import gconf schema for magnet URLs. Closes: #412213.
+    Thanks to Stefano Maioli.
+  * Add debian/README.Debian: describe the user interface override and the
+    update patches.
+  * Add debian/NEWS.Debian.
+  
+
+ -- Adrian Perez <adrianperez.deb at gmail.com>  Sun, 26 Jul 2009 16:06:30 -0400
+
+azureus (3.1.1.0-4) unstable; urgency=medium
+
+  * New executable: vuze. The azureus executable overrides the user's
+    configured preference and starts the classic interface. The vuze
+    executable starts the interface specified by the user's configured
+    preference. Closes: #509878.
+  * Azureus recommends Vuze.
+  * Modified the vuze description to describe its social-networking features.
+    Closes: #509881.
+  * Update the watch file.
+  * Acknowledge NMU. Closes: #495514. Thanks to Sebastien.
+
+ -- Shaun Jackman <sjackman at debian.org>  Thu, 01 Jan 2009 13:13:21 -0800
+
+azureus (3.1.1.0-3.1) unstable; urgency=low
+
+  * Tentative NMU.
+  * Build with openjdk-6-jdk by default (but allow for user rebuilds
+    using any JDK), and remove azureus-gcj altogether (Closes: #495514).
+  * Add a lintian override to signify that java and ant are indeed needed
+    as Build-Depends-Indep even though we do not build any arch-dependent
+    binary packages.
+  * In /usr/bin/azureus, enforce use of the JRE specified in Depends:.
+
+ -- Sebastien Delafond <seb at debian.org>  Mon, 18 Aug 2008 19:36:05 -0700
+
+azureus (3.1.1.0-3) unstable; urgency=medium
+
+  * Remove the four non-latin characters in DateParserRegex.java.
+  Closes: #492800. Thanks to Jurij Smakov.
+
+ -- Shaun Jackman <sjackman at debian.org>  Mon, 11 Aug 2008 08:10:34 -0700
+
+azureus (3.1.1.0-2) unstable; urgency=medium
+
+  * Move all Build-Depends-Indep to Build-Depends to build the native binary
+    using GCJ. Closes: #490025.
+  * Add libswt-cairo-gtk-3.4-jni to the dependencies of vuze.
+    Closes: #491201.
+
+ -- Shaun Jackman <sjackman at debian.org>  Sun, 27 Jul 2008 23:12:11 -0700
+
+azureus (3.1.1.0-1) unstable; urgency=low
+
+  * New upstream release. Closes: #487512.
+  * Enable plugins. Closes: #481011, #452321, #452326.
+  * Build using ant.
+  * Remove the dependency on libseda-java.
+  * Update the watch file.
+  * Update the policy to version 3.8.0.1. No changes were necessary.
+  * Use System.getProperty rather than sun.security.action.GetPropertyAction.
+
+ -- Shaun Jackman <sjackman at debian.org>  Wed, 16 Jul 2008 22:29:18 -0700
+
+azureus (3.0.5.0-2) unstable; urgency=low
+
+  * Depend on libswt-gtk-3.4-java instead of libswt-gtk-3.3-java.
+    Closes: #488348.
+
+ -- Shaun Jackman <sjackman at debian.org>  Sat, 28 Jun 2008 15:00:24 -0700
+
+azureus (3.0.5.0-1) unstable; urgency=low
+
+  * New upstream release. Closes: #470235.
+  * New package, vuze, which depends on azureus as well as the necessary
+    gnome and mozilla JNI libraries. Closes: #469590.
+  * Do not create an empty ~/plugins directory. Closes: #471878.
+  * Update the policy to version 3.7.3.0. No changes were necessary.
+
+ -- Shaun Jackman <sjackman at debian.org>  Fri, 21 Mar 2008 09:02:34 -0700
+
+azureus (3.0.4.2-1) unstable; urgency=low
+
+  * New upstream release. Closes: #458263.
+  * Do not changing the current working directory. Closes: #459857.
+
+ -- Shaun Jackman <sjackman at debian.org>  Sun, 10 Feb 2008 18:58:49 -0800
+
+azureus (3.0.3.4-3) unstable; urgency=low
+
+  * Set the environment variable MOZILLA_FIVE_HOME to /usr/lib/xulrunner.
+    Closes: #452322.
+
+ -- Shaun Jackman <sjackman at debian.org>  Thu, 10 Jan 2008 23:40:35 -0800
+
+azureus (3.0.3.4-2) unstable; urgency=low
+
+  * The shell script should use SWT 3.3. Closes: #448253.
+
+ -- Shaun Jackman <sjackman at debian.org>  Sun,  4 Nov 2007 12:59:36 -0700
+
+azureus (3.0.3.4-1) unstable; urgency=low
+
+  * New upstream release. Closes: #443634.
+  * Move the Debian menu entry to the new "Applications/Network/File Transfer"
+    section.
+  * Do not check for SWT updates. Closes: #447679.
+
+ -- Shaun Jackman <sjackman at debian.org>  Tue, 16 Oct 2007 10:31:33 -0700
+
+azureus (2.5.0.4-1) unstable; urgency=low
+
+  * New upstream release. Closes: #406914.
+  * Disable auto-update. Closes: #405997.
+
+ -- Shaun Jackman <sjackman at debian.org>  Thu,  5 Jul 2007 11:32:18 -0600
+
+azureus (2.5.0.0+0-1) unstable; urgency=medium
+
+  * Bump the upstream version number due to a bug in dak (#232730).
+  * Launch ui.common instead of ui.swt. Allows using the
+    --ui=console option. Closes: #367110.
+  * Add -Xmx1024M to the java command line, which increases the size
+    of the heap. Closes: #386765.
+
+ -- Shaun Jackman <sjackman at debian.org>  Wed, 22 Nov 2006 13:17:40 -0700
+
+azureus (2.5.0.0-2) unstable; urgency=medium
+
+  * Move azureus to main. It runs very well now using java-gcj-compat.
+    Closes: #369376.
+  * Remove sun-java5-jre from the dependencies. Replace it with
+    java-gcj-compat. Closes: #365766, #395555.
+  * Update the policy to version 3.7.2.2. No changes were necessary.
+  * Minor updates to the manual page.
+  * Update manifest.mf.
+
+ -- Shaun Jackman <sjackman at debian.org>  Fri, 17 Nov 2006 10:56:04 -0700
+
+azureus (2.5.0.0-1) unstable; urgency=low
+
+  * New upstream release.
+
+ -- Shaun Jackman <sjackman at debian.org>  Wed, 23 Aug 2006 16:41:25 -0600
+
+azureus (2.4.0.2-4) unstable; urgency=medium
+
+  * Source libswt-3.2-java instead of libswt-3.1-java. Closes: #380721.
+
+ -- Shaun Jackman <sjackman at debian.org>  Tue,  1 Aug 2006 09:42:24 -0600
+
+azureus (2.4.0.2-3) unstable; urgency=medium
+
+  * Depend on libswt-gtk-3.2-java instead of libswt-gtk-3.1-java.
+    Closes: #380312.
+
+ -- Shaun Jackman <sjackman at debian.org>  Sun, 30 Jul 2006 20:26:40 -0600
+
+azureus (2.4.0.2-2) unstable; urgency=low
+
+  * Fix `Unable to close Warning window' bug. Closes: #364706.
+  Thanks to Markus Schaber <debian-bugs at schabi.de>.
+  * Build using java-gcj-compat-dev and debhelper 5.
+  * Replace gij-4.1 dependency with sun-java5-jre or java-gcj-compat.
+  * Remove sun-j2re1.5 dependency.
+  * Update Debian policy to version 3.7.2.1. No changes necessary.
+
+ -- Shaun Jackman <sjackman at debian.org>  Sun, 16 Jul 2006 11:34:02 -0600
+
+azureus (2.4.0.2-1) unstable; urgency=low
+
+  * New upstream release. Closes: #353241.
+  * Add swt.jar to the classpath to aid updating SWT.
+
+ -- Shaun Jackman <sjackman at debian.org>  Sun, 16 Apr 2006 14:30:54 -0600
+
+azureus (2.3.0.6-4) unstable; urgency=low
+
+  * Add . to the java.library.path. Allows updating to 2.4.0.2.
+    Closes: #358615.
+  * Add gij-4.1 to the dependencies as an option. Closes: #349811, #350399.
+  * Enable the OK button of the donation request. Closes: #346362.
+  * Update the watch file to version 3.
+
+ -- Shaun Jackman <sjackman at debian.org>  Thu, 23 Mar 2006 15:10:56 -0700
+
+azureus (2.3.0.6-3) unstable; urgency=low
+
+  * Use SWT from the updated Azureus. Allows updates to 2.4.0.0.
+    Closes: #353456.
+  * Use the directory ~/.azureus if it exists and ~/.Azureus otherwise.
+    Azureus 2.4.0.0 uses the former, previous versions use the latter.
+  * Update policy version to 3.6.2.2. No changes necessary.
+
+ -- Shaun Jackman <sjackman at debian.org>  Sat, 18 Feb 2006 10:18:50 -0700
+
+azureus (2.3.0.6-2) unstable; urgency=low
+
+  * Add /usr/lib/jni to java.library.path. Closes: #335740, #351750.
+
+ -- Shaun Jackman <sjackman at debian.org>  Tue,  7 Feb 2006 09:50:15 -0700
+
+azureus (2.3.0.6-1) unstable; urgency=low
+
+  * New upstream release.
+
+ -- Shaun Jackman <sjackman at debian.org>  Fri, 25 Nov 2005 11:06:17 -0700
+
+azureus (2.3.0.4-3) unstable; urgency=low
+
+  * Add a build dependency on fastjar.
+
+ -- Shaun Jackman <sjackman at debian.org>  Tue, 13 Sep 2005 16:07:23 -0600
+
+azureus (2.3.0.4-2) unstable; urgency=low
+
+  * Change the build dependency on jikes-classpath to sun-j2sdk1.5.
+    Closes: #326254.
+  * Change the dependency on sun-j2sdk1.5 to sun-j2re1.5.
+  * Recommend java-package.
+
+ -- Shaun Jackman <sjackman at debian.org>  Tue, 13 Sep 2005 10:33:55 -0600
+
+azureus (2.3.0.4-1) unstable; urgency=low
+
+  * New upstream release. Closes: #316817.
+
+ -- Shaun Jackman <sjackman at debian.org>  Mon,  4 Jul 2005 10:45:54 -0700
+
+azureus (2.3.0.2-1) unstable; urgency=low
+
+  * New upstream release. Closes: #311063.
+  * Depend on libseda-java.
+  * Use ~/.Azureus/Azureus2.jar if it exists.
+
+ -- Shaun Jackman <sjackman at debian.org>  Sun, 29 May 2005 12:42:19 -0700
+
+azureus (2.3.0.0-3) unstable; urgency=low
+
+  * Call update-desktop-database. Closes: #307332.
+
+ -- Shaun Jackman <sjackman at debian.org>  Thu, 19 May 2005 15:46:07 -0700
+
+azureus (2.3.0.0-2) unstable; urgency=low
+
+  * Target Java VM 1.4.2. Closes: #308545.
+
+ -- Shaun Jackman <sjackman at debian.org>  Tue, 10 May 2005 17:38:27 -0700
+
+azureus (2.3.0.0-1) unstable; urgency=low
+
+  * New upstream release. Closes: #308392.
+  * Support all architectures. Closes: #298112.
+  * Use Debian's SWT. Closes: #298104.
+  * Exec the Java binary. Closes: #308239.
+  * Compile Azureus from source.
+
+ -- Shaun Jackman <sjackman at debian.org>  Wed,  4 May 2005 16:19:04 -0700
+
+azureus (2.2.0.2-2) unstable; urgency=low
+
+  * Add a mime type to the desktop entry. Closes: #307332.
+  * Add a menu entry.
+
+ -- Shaun Jackman <sjackman at debian.org>  Tue,  3 May 2005 09:35:01 -0700
+
+azureus (2.2.0.2-1) unstable; urgency=low
+
+  * Initial release. Closes: #215127.
+
+ -- Shaun Jackman <sjackman at debian.org>  Mon,  3 Jan 2005 11:05:57 -0800
+

Added: trunk/azureus/debian/compat
===================================================================
--- trunk/azureus/debian/compat	                        (rev 0)
+++ trunk/azureus/debian/compat	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1 @@
+7

Added: trunk/azureus/debian/control
===================================================================
--- trunk/azureus/debian/control	                        (rev 0)
+++ trunk/azureus/debian/control	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,47 @@
+Source: azureus
+Section: net
+Priority: optional
+Maintainer: Debian Java Maintainers <pkg-java-maintainers at lists.alioth.debian.org>
+Uploaders: Adrian Perez <adrianperez.deb at gmail.com>
+Build-Depends: ant, cdbs, quilt, debhelper (>= 7.0)
+Build-Depends-Indep: openjdk-6-jdk, libcommons-cli-java, liblog4j1.2-java, 
+ libswt-gtk-3.4-java, fastjar, junit
+Standards-Version: 3.8.2
+Vcs-Svn: svn://svn.debian.org/svn/pkg-java/trunk/azureus
+Vcs-Browser: http://svn.debian.org/wsvn/pkg-java/trunk/azureus
+Homepage: http://azureus.sourceforge.net
+
+Package: azureus
+Architecture: all
+Depends: openjdk-6-jre | sun-java5-jre | sun-java6-jre, 
+ libcommons-cli-java, liblog4j1.2-java, libswt-gtk-3.4-java, ${misc:Depends}
+Recommends: vuze
+Description: BitTorrent client
+ BitTorrent is a peer-to-peer file distribution tool.
+ .
+ Azureus offers multiple torrent downloads, queuing/priority systems
+ (on torrents and files), start/stop seeding options and instant
+ access to numerous pieces of information about your torrents. Azureus
+ now features an embedded tracker easily set up and ready to use.
+
+Package: vuze
+Architecture: all
+Depends: azureus, libswt-cairo-gtk-3.4-jni, libswt-gnome-gtk-3.4-jni,
+ libswt-mozilla-gtk-3.4-jni, ${misc:Depends}
+Description: Multimedia BitTorrent client
+ BitTorrent is a peer-to-peer file distribution tool.
+ .
+ Vuze is a multimedia BitTorrent client based on Azureus intended for
+ DVD and HD video. It includes some social-networking features to
+ share videos among friends.
+ .
+ Vuze offers subscriptions to preferred content, an embed media player and
+ web-browser, support for multiple Content Networks, sharing .vuze files,
+ popularity contexts, categories and tagging, IPv6 compact tracker support,
+ automatic URL handling, and a plugin architecture; besides other features.
+ . 
+ This package is part of the azureus package, and provides the dependencies
+ necessary to run the new user interface.
+
+
+

Added: trunk/azureus/debian/copyright
===================================================================
--- trunk/azureus/debian/copyright	                        (rev 0)
+++ trunk/azureus/debian/copyright	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,372 @@
+Format-Specification: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&rev=59  
+Name: Azureus
+Maintainer: Olivier Chalouhi <azureus at gmail.com>
+Source: http://azureus.sourceforge.net
+
+Files: com/aelitis/azureus/*
+Copyright: 2008-2009, Vuze Inc
+           2003-2009, Aelitis
+License: GPL-2+
+
+Files: com/aelitis/azureus/ui/swt/Sleak.java
+Copyright: 2003-2006, Aelitis
+           2000-2002, IBM Corporation
+License: GPL-2+
+
+Files: com/aelitis/azureus/core/peermanager/utils/BTPeerIDByteDecoder.java
+Copyright: 2003-2006, Aelitis
+           2002-2004, Alon Rohter
+License: GPL-2+
+
+Files: org/json/simple/*
+Copyright: 2006-2009, Fang Yidong <fangyidong at yahoo.com.cn>
+License: LGPL-2.1
+
+Files: org/gudy/azureus2/core3/util/BrokenMd5Hasher.java
+Copyright: 2005, jMuleGroup
+License: GPL-2
+
+Files: org/apache/commons/lang/*
+Copyright: 2002-2004, The Apache Software Foundation
+License: Apache-2.0
+
+Files: org/bouncycastle/*
+Copyright: 2000, The Legion Of The Bouncy Castle
+License: other
+
+Files: org/pf/*
+Copyright: 1999-2003, Manfred Duchrow
+License: CPL-1.0
+
+Files: debian/*
+Copyright: 2009, Adrian Perez <adrianperez.deb at gmail.com>
+           2005-2009, Shaun Jackman <sjackman at debian.org>
+License: GPL-2+
+
+
+License: GPL-2+
+
+ This package is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+ 
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+ 
+ You should have received a copy of the GNU General Public License
+ along with this package; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+ 
+ On Debian systems, the complete text of the GNU General Public License
+ version 2 can be found in /usr/share/common-licenses/GPL-2.
+
+
+License: GPL-2
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License.
+ 
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details ( see the LICENSE file ).
+ 
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc.,  59 Temple Plac(int)e, Suite 330, Boston, MA  02111-1307  USA
+ .
+ On Debian systems, the complete text of the GNU General Public License
+ version 2 can be found in /usr/share/common-licenses/GPL-2.
+
+
+License: LGPL-2.1
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+ 
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU Lesser General Public License for more details.
+ 
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+ 
+ On Debian systems, the complete text of the GNU General Public
+ License can be found in /usr/share/common-licenses/LGPL-2.1.
+
+
+License: Apache-2.0
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at 
+ 
+ http://www.apache.org/licenses/LICENSE-2.0
+ 
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ 
+ On Debian systems, the complete text of the Apache License, Version 2.0
+ can be found in /usr/share/common-licenses/Apache-2.0.
+
+
+License: other
+
+ The Bouncy Castle License
+
+ Copyright (c) 2000 The Legion Of The Bouncy Castle 
+ (http://www.bouncycastle.org)
+ 
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+ 
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+ 
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+
+License: CPL-1.0
+
+ Licensed under the terms of the Common Public License - v1.0.
+ The complete text of the CPL can be found below or at
+ http://www.programmers-friend.org/cpl-v10.html
+
+ Common Public License - v 1.0
+
+ THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS COMMON PUBLIC
+ LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM
+ CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+ 1. DEFINITIONS
+
+ "Contribution" means:
+
+       a) in the case of the initial Contributor, the initial code and
+       documentation distributed under this Agreement, and b) in the case of
+       each subsequent Contributor:
+
+       i) changes to the Program, and
+
+       ii) additions to the Program;
+
+       where such changes and/or additions to the Program originate from and are
+       distributed by that particular Contributor. A Contribution 'originates'
+       from a Contributor if it was added to the Program by such Contributor
+       itself or anyone acting on such Contributor's behalf. Contributions do
+       not include additions to the Program which: (i) are separate modules of
+       software distributed in conjunction with the Program under their own
+       license agreement, and (ii) are not derivative works of the Program.
+
+ "Contributor" means any person or entity that distributes the Program.
+
+ "Licensed Patents " mean patent claims licensable by a Contributor which are
+ necessarily infringed by the use or sale of its Contribution alone or when
+ combined with the Program.
+
+ "Program" means the Contributions distributed in accordance with this
+ Agreement.
+
+ "Recipient" means anyone who receives the Program under this Agreement,
+ including all Contributors.
+
+ 2. GRANT OF RIGHTS
+
+       a) Subject to the terms of this Agreement, each Contributor hereby grants
+       Recipient a non-exclusive, worldwide, royalty-free copyright license to
+       reproduce, prepare derivative works of, publicly display, publicly
+       perform, distribute and sublicense the Contribution of such Contributor,
+       if any, and such derivative works, in source code and object code form.
+
+       b) Subject to the terms of this Agreement, each Contributor hereby grants
+       Recipient a non-exclusive, worldwide, royalty-free patent license under
+       Licensed Patents to make, use, sell, offer to sell, import and otherwise
+       transfer the Contribution of such Contributor, if any, in source code and
+       object code form. This patent license shall apply to the combination of
+       the Contribution and the Program if, at the time the Contribution is
+       added by the Contributor, such addition of the Contribution causes such
+       combination to be covered by the Licensed Patents. The patent license
+       shall not apply to any other combinations which include the
+       Contribution. No hardware per se is licensed hereunder.
+
+       c) Recipient understands that although each Contributor grants the
+       licenses to its Contributions set forth herein, no assurances are
+       provided by any Contributor that the Program does not infringe the patent
+       or other intellectual property rights of any other entity. Each
+       Contributor disclaims any liability to Recipient for claims brought by
+       any other entity based on infringement of intellectual property rights or
+       otherwise. As a condition to exercising the rights and licenses granted
+       hereunder, each Recipient hereby assumes sole responsibility to secure
+       any other intellectual property rights needed, if any. For example, if a
+       third party patent license is required to allow Recipient to distribute
+       the Program, it is Recipient's responsibility to acquire that license
+       before distributing the Program.
+
+       d) Each Contributor represents that to its knowledge it has sufficient
+       copyright rights in its Contribution, if any, to grant the copyright
+       license set forth in this Agreement.
+
+ 3. REQUIREMENTS
+
+ A Contributor may choose to distribute the Program in object code form under
+ its own license agreement, provided that:
+
+       a) it complies with the terms and conditions of this Agreement; and
+
+       b) its license agreement:
+
+       i) effectively disclaims on behalf of all Contributors all warranties and
+       conditions, express and implied, including warranties or conditions of
+       title and non-infringement, and implied warranties or conditions of
+       merchantability and fitness for a particular purpose;
+
+       ii) effectively excludes on behalf of all Contributors all liability for
+       damages, including direct, indirect, special, incidental and
+       consequential damages, such as lost profits;
+
+       iii) states that any provisions which differ from this Agreement are
+       offered by that Contributor alone and not by any other party; and
+
+       iv) states that source code for the Program is available from such
+       Contributor, and informs licensees how to obtain it in a reasonable
+       manner on or through a medium customarily used for software exchange.
+
+ When the Program is made available in source code form:
+
+       a) it must be made available under this Agreement; and
+
+       b) a copy of this Agreement must be included with each copy of the
+       Program.
+
+ Contributors may not remove or alter any copyright notices contained within the
+ Program.
+
+ Each Contributor must identify itself as the originator of its Contribution, if
+ any, in a manner that reasonably allows subsequent Recipients to identify the
+ originator of the Contribution.
+
+ 4. COMMERCIAL DISTRIBUTION
+
+ Commercial distributors of software may accept certain responsibilities with
+ respect to end users, business partners and the like. While this license is
+ intended to facilitate the commercial use of the Program, the Contributor who
+ includes the Program in a commercial product offering should do so in a manner
+ which does not create potential liability for other Contributors. Therefore, if
+ a Contributor includes the Program in a commercial product offering, such
+ Contributor ("Commercial Contributor") hereby agrees to defend and indemnify
+ every other Contributor ("Indemnified Contributor") against any losses, damages
+ and costs (collectively "Losses") arising from claims, lawsuits and other legal
+ actions brought by a third party against the Indemnified Contributor to the
+ extent caused by the acts or omissions of such Commercial Contributor in
+ connection with its distribution of the Program in a commercial product
+ offering. The obligations in this section do not apply to any claims or Losses
+ relating to any actual or alleged intellectual property infringement. In order
+ to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+ Contributor in writing of such claim, and b) allow the Commercial Contributor
+ to control, and cooperate with the Commercial Contributor in, the defense and
+ any related settlement negotiations. The Indemnified Contributor may
+ participate in any such claim at its own expense.
+
+ For example, a Contributor might include the Program in a commercial product
+ offering, Product X. That Contributor is then a Commercial Contributor. If that
+ Commercial Contributor then makes performance claims, or offers warranties
+ related to Product X, those performance claims and warranties are such
+ Commercial Contributor's responsibility alone. Under this section, the
+ Commercial Contributor would have to defend claims against the other
+ Contributors related to those performance claims and warranties, and if a court
+ requires any other Contributor to pay any damages as a result, the Commercial
+ Contributor must pay those damages.
+
+ 5. NO WARRANTY
+
+ EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR
+ IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE,
+ NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each
+ Recipient is solely responsible for determining the appropriateness of using
+ and distributing the Program and assumes all risks associated with its exercise
+ of rights under this Agreement, including but not limited to the risks and
+ costs of program errors, compliance with applicable laws, damage to or loss of
+ data, programs or equipment, and unavailability or interruption of operations.
+
+ 6. DISCLAIMER OF LIABILITY
+
+ EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY
+ CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST
+ PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
+ WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS
+ GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+ 7. GENERAL
+
+ If any provision of this Agreement is invalid or unenforceable under applicable
+ law, it shall not affect the validity or enforceability of the remainder of the
+ terms of this Agreement, and without further action by the parties hereto, such
+ provision shall be reformed to the minimum extent necessary to make such
+ provision valid and enforceable.
+
+ If Recipient institutes patent litigation against a Contributor with respect to
+ a patent applicable to software (including a cross-claim or counterclaim in a
+ lawsuit), then any patent licenses granted by that Contributor to such
+ Recipient under this Agreement shall terminate as of the date such litigation
+ is filed. In addition, if Recipient institutes patent litigation against any
+ entity (including a cross-claim or counterclaim in a lawsuit) alleging that the
+ Program itself (excluding combinations of the Program with other software or
+ hardware) infringes such Recipient's patent(s), then such Recipient's rights
+ granted under Section 2(b) shall terminate as of the date such litigation is
+ filed.
+
+ All Recipient's rights under this Agreement shall terminate if it fails to
+ comply with any of the material terms or conditions of this Agreement and does
+ not cure such failure in a reasonable period of time after becoming aware of
+ such noncompliance. If all Recipient's rights under this Agreement terminate,
+ Recipient agrees to cease use and distribution of the Program as soon as
+ reasonably practicable. However, Recipient's obligations under this Agreement
+ and any licenses granted by Recipient relating to the Program shall continue
+ and survive.
+
+ Everyone is permitted to copy and distribute copies of this Agreement, but in
+ order to avoid inconsistency the Agreement is copyrighted and may only be
+ modified in the following manner. The Agreement Steward reserves the right to
+ publish new versions (including revisions) of this Agreement from time to
+ time. No one other than the Agreement Steward has the right to modify this
+ Agreement. IBM is the initial Agreement Steward. IBM may assign the
+ responsibility to serve as the Agreement Steward to a suitable separate
+ entity. Each new version of the Agreement will be given a distinguishing
+ version number. The Program (including Contributions) may always be distributed
+ subject to the version of the Agreement under which it was received. In
+ addition, after a new version of the Agreement is published, Contributor may
+ elect to distribute the Program (including its Contributions) under the new
+ version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient
+ receives no rights or licenses to the intellectual property of any Contributor
+ under this Agreement, whether expressly, by implication, estoppel or
+ otherwise. All rights in the Program not expressly granted under this Agreement
+ are reserved.
+
+ This Agreement is governed by the laws of the State of New York and the
+ intellectual property laws of the United States of America. No party to this
+ Agreement will bring a legal action under this Agreement more than one year
+ after the cause of action arose. Each party waives its rights to a jury trial
+ in any resulting litigation.

Added: trunk/azureus/debian/dirs
===================================================================
--- trunk/azureus/debian/dirs	                        (rev 0)
+++ trunk/azureus/debian/dirs	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,2 @@
+usr/bin
+usr/sbin

Added: trunk/azureus/debian/docs
===================================================================
--- trunk/azureus/debian/docs	                        (rev 0)
+++ trunk/azureus/debian/docs	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,2 @@
+debian/README.multiuser
+debian/README.source

Added: trunk/azureus/debian/install
===================================================================
--- trunk/azureus/debian/install	                        (rev 0)
+++ trunk/azureus/debian/install	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,7 @@
+debian/Azureus.png usr/share/pixmaps
+debian/Azureus.torrent.png usr/share/pixmaps
+dist/Azureus2.jar usr/share/java
+debian/bin/azureus usr/bin
+debian/azureus.desktop usr/share/applications
+debian/azureus.xpm usr/share/pixmaps
+debian/azureus.schemas usr/share/gconf/schemas

Added: trunk/azureus/debian/manpages
===================================================================
--- trunk/azureus/debian/manpages	                        (rev 0)
+++ trunk/azureus/debian/manpages	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,2 @@
+debian/azureus.1
+debian/vuze.1

Added: trunk/azureus/debian/menu
===================================================================
--- trunk/azureus/debian/menu	                        (rev 0)
+++ trunk/azureus/debian/menu	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,4 @@
+?package(azureus):needs="X11" section="Applications/Network/File Transfer"\
+  icon="/usr/share/pixmaps/azureus.xpm"\
+  title="Azureus" command="/usr/bin/azureus" \
+  hints="Internet"

Added: trunk/azureus/debian/patches/fix-chars-encoding.patch
===================================================================
--- trunk/azureus/debian/patches/fix-chars-encoding.patch	                        (rev 0)
+++ trunk/azureus/debian/patches/fix-chars-encoding.patch	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,36 @@
+#
+# Author: Jurij Smakov
+# Reviewed-by: Shaun Jackman <sjackman at debian.org>
+# Reviewed-by: Adrian Perez <adrianperez.deb at gmail.com>
+# Bug-Debian: http://bugs.debian.org/492800
+# Last-Update: 2009-07-29
+# Description: remove non-UTF8 characters to fix month translation
+# in DateParserRegex.java. 
+#
+
+Index: azureus-4.2.0.4/com/aelitis/azureus/core/metasearch/impl/DateParserRegex.java
+===================================================================
+--- azureus-4.2.0.4.orig/com/aelitis/azureus/core/metasearch/impl/DateParserRegex.java	2009-07-28 09:31:54.000000000 -0400
++++ azureus-4.2.0.4/com/aelitis/azureus/core/metasearch/impl/DateParserRegex.java	2009-07-28 09:32:23.000000000 -0400
+@@ -50,17 +50,17 @@
+ 	
+ 	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 fevrier febrero februar",
++		" march mars marzo marz 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 aout agosto august",
+ 		" september septembre septiembre september",
+ 		" october octobre octubre oktober",
+ 		" november novembre noviembre november",
+-		" december decembre dŽcembre diciembre dezember"};
++		" december decembre decembre diciembre dezember"};
+ 	
+ 	public DateParserRegex() {
+ 		this("GMT-7",true,null);

Added: trunk/azureus/debian/patches/fix-messagetext-dont-use-privileges.patch
===================================================================
--- trunk/azureus/debian/patches/fix-messagetext-dont-use-privileges.patch	                        (rev 0)
+++ trunk/azureus/debian/patches/fix-messagetext-dont-use-privileges.patch	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,63 @@
+#
+# Author: Shaun Jackman <sjackman at debian.org>
+# Reviewed-by: Adrian Perez <adrianperez.deb at gmail.com>
+# Last-Update: 2009-07-29
+# Description: Don't use AccessController and privileges to get
+# user environment information. Use System.getProperty() instead.
+# The sun.security package is Sun's property and may be removed in the
+# future.
+#
+
+Index: vuze-4.2.0.4/org/gudy/azureus2/core3/internat/MessageText.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/core3/internat/MessageText.java	2009-07-25 13:28:59.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/core3/internat/MessageText.java	2009-07-25 13:34:27.000000000 -0400
+@@ -24,7 +24,9 @@
+ import java.net.URI;
+ import java.net.URL;
+ import java.net.URLClassLoader;
++/* --- Adrian Perez: Don't use AccessController.
+ import java.security.AccessController;
++*/
+ import java.util.*;
+ import java.util.jar.JarEntry;
+ import java.util.jar.JarFile;
+@@ -38,9 +40,9 @@
+ import org.gudy.azureus2.core3.util.Debug;
+ import org.gudy.azureus2.core3.util.FileUtil;
+ import org.gudy.azureus2.core3.util.SystemProperties;
+-
++/* --- Adrian Perez: Don't use sun.security.
+ import sun.security.action.GetPropertyAction;
+-
++*/
+ /**
+  * @author Arbeiten
+  * 
+@@ -768,11 +770,9 @@
+   	// at startup to determine the locale.  Too bad they didn't provide
+   	// a way to call this code explicitly..
+     String language, region, country, variant;
+-    language = (String) AccessController.doPrivileged(
+-                    new GetPropertyAction("user.language", "en"));
++    language = System.getProperty("user.language", "en");
+     // for compatibility, check for old user.region property
+-    region = (String) AccessController.doPrivileged(
+-                    new GetPropertyAction("user.region"));
++    region = System.getProperty("user.region");
+     if (region != null) {
+         // region can be of form country, country_variant, or _variant
+         int i = region.indexOf('_');
+@@ -784,10 +784,8 @@
+             variant = "";
+         }
+     } else {
+-        country = (String) AccessController.doPrivileged(
+-                        new GetPropertyAction("user.country", ""));
+-        variant = (String) AccessController.doPrivileged(
+-                        new GetPropertyAction("user.variant", ""));
++        country = System.getProperty("user.country", "");
++        variant = System.getProperty("user.variant", "");
+     }
+     changeLocale(new Locale(language, country, variant));
+     COConfigurationManager.removeParameter("locale");

Added: trunk/azureus/debian/patches/fix-platform-code.patch
===================================================================
--- trunk/azureus/debian/patches/fix-platform-code.patch	                        (rev 0)
+++ trunk/azureus/debian/patches/fix-platform-code.patch	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,120 @@
+#
+# Author: Adrian Perez <adrianperez.deb at gmail.com>
+# Last-Update: 2009-07-29
+# Description: Avoid the FTBFS caused by the use Win32 and 
+# MacOS-X platforms logic and imports.
+#
+
+Index: azureus-4.2.0.4/com/aelitis/azureus/core/update/impl/AzureusRestarterImpl.java
+===================================================================
+--- azureus-4.2.0.4.orig/com/aelitis/azureus/core/update/impl/AzureusRestarterImpl.java	2009-07-29 13:28:31.000000000 -0400
++++ azureus-4.2.0.4/com/aelitis/azureus/core/update/impl/AzureusRestarterImpl.java	2009-07-29 13:28:33.000000000 -0400
+@@ -30,8 +30,10 @@
+ import org.gudy.azureus2.platform.PlatformManager;
+ import org.gudy.azureus2.platform.PlatformManagerFactory;
+ import org.gudy.azureus2.platform.unix.ScriptAfterShutdown;
++/*  --- Adrian Perez: Don't import this when building for Linux.
+ import org.gudy.azureus2.platform.win32.access.AEWin32Access;
+ import org.gudy.azureus2.platform.win32.access.AEWin32Manager;
++*/
+ import org.gudy.azureus2.plugins.PluginInterface;
+ import org.gudy.azureus2.plugins.platform.PlatformManagerException;
+ import org.gudy.azureus2.pluginsimpl.local.PluginInitializer;
+@@ -306,7 +308,8 @@
+ 		}
+ 
+ 		try {
+-			int result;
++			int result = -123; // Adrian Perez: Evade Win32 logic, key: "nowin32"
++/*
+ 			AEWin32Access accessor = AEWin32Manager.getAccessor(true);
+ 			if (accessor == null) {
+ 				result = -123;
+@@ -345,6 +348,7 @@
+ 							SystemProperties.getApplicationPath(), AEWin32Access.SW_NORMAL);
+ 				}
+ 			}
++*/
+ 
+ 			/*
+ 			 * Some results:
+Index: azureus-4.2.0.4/com/aelitis/azureus/ui/swt/views/skin/TorrentListViewsUtils.java
+===================================================================
+--- azureus-4.2.0.4.orig/com/aelitis/azureus/ui/swt/views/skin/TorrentListViewsUtils.java	2009-07-29 13:28:31.000000000 -0400
++++ azureus-4.2.0.4/com/aelitis/azureus/ui/swt/views/skin/TorrentListViewsUtils.java	2009-07-29 13:28:33.000000000 -0400
+@@ -78,8 +78,9 @@
+ import com.aelitis.azureus.util.DataSourceUtils;
+ import com.aelitis.azureus.util.PlayUtils;
+ import com.aelitis.azureus.util.PublishUtils;
++/* --- Adrian Perez: Don't import this when building for Linux.
+ import com.aelitis.azureus.util.win32.Win32Utils;
+-
++*/
+ /**
+  * @author TuxPaper
+  * @created Oct 12, 2006
+@@ -640,7 +641,7 @@
+ 	private static boolean runInMediaPlayer(String mediaFile) {
+ 
+ 		debugDCAD("enter - runInMediaPlayer");
+-
++/* --- Adrian Perez: Don't use Win32 media player. Always return false.
+ 		if (Constants.isWindows) {
+ 			String wmpEXE = Win32Utils.getWMP();
+ 			if (new File(wmpEXE).exists()) {
+@@ -652,6 +653,7 @@
+ 				}
+ 			}
+ 		}
++*/
+ 		return false;
+ 	}
+ 
+Index: azureus-4.2.0.4/org/gudy/azureus2/platform/PlatformManagerPluginDelegate.java
+===================================================================
+--- azureus-4.2.0.4.orig/org/gudy/azureus2/platform/PlatformManagerPluginDelegate.java	2009-07-29 13:28:31.000000000 -0400
++++ azureus-4.2.0.4/org/gudy/azureus2/platform/PlatformManagerPluginDelegate.java	2009-07-29 13:28:33.000000000 -0400
+@@ -23,8 +23,9 @@
+ import java.util.Properties;
+ 
+ import org.gudy.azureus2.platform.unix.PlatformManagerUnixPlugin;
++/* --- Adrian Perez: Don't use Win32 UpdateChecker in Linux.
+ import org.gudy.azureus2.platform.win32.PlatformManagerUpdateChecker;
+-
++*/
+ import org.gudy.azureus2.plugins.Plugin;
+ import org.gudy.azureus2.plugins.PluginException;
+ import org.gudy.azureus2.plugins.PluginInterface;
+@@ -45,10 +46,13 @@
+ 		PlatformManager platform = PlatformManagerFactory.getPlatformManager();
+ 
+ 		int platformType = platform.getPlatformType();
++/* --- Adrian Perez: We're not in Windows.
+ 		if (platformType == PlatformManager.PT_WINDOWS) {
+ 			PlatformManagerUpdateChecker plugin = new PlatformManagerUpdateChecker();
+ 			plugin.initialize(pluginInterface);
+-		} else if (platformType == PlatformManager.PT_UNIX) {
++*/
++		if (platformType == PlatformManager.PT_UNIX) {
++
+ 			PlatformManagerUnixPlugin plugin = new PlatformManagerUnixPlugin();
+ 			plugin.initialize(pluginInterface);
+ 		} else {
+Index: azureus-4.2.0.4/org/gudy/azureus2/platform/PlatformManagerFactory.java
+===================================================================
+--- azureus-4.2.0.4.orig/org/gudy/azureus2/platform/PlatformManagerFactory.java	2009-07-29 13:28:31.000000000 -0400
++++ azureus-4.2.0.4/org/gudy/azureus2/platform/PlatformManagerFactory.java	2009-07-29 13:28:33.000000000 -0400
+@@ -51,11 +51,11 @@
+ 					if ( getPlatformType() == PlatformManager.PT_WINDOWS ){
+ 						
+ 						platform_manager = org.gudy.azureus2.platform.win32.PlatformManagerImpl.getSingleton();
+-						
++/* --- Adrian Perez: Don't use MacOS-X's PlatformManagerImpl
+ 					}else if( getPlatformType() == PlatformManager.PT_MACOSX ){
+ 						
+ 	                    platform_manager = org.gudy.azureus2.platform.macosx.PlatformManagerImpl.getSingleton();
+-	                    
++*/
+ 					}else if( getPlatformType() == PlatformManager.PT_UNIX ){
+ 						
+ 						platform_manager = org.gudy.azureus2.platform.unix.PlatformManagerImpl.getSingleton();

Added: trunk/azureus/debian/patches/multiuser.patch
===================================================================
--- trunk/azureus/debian/patches/multiuser.patch	                        (rev 0)
+++ trunk/azureus/debian/patches/multiuser.patch	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,498 @@
+#
+# Author: Stefano Maioli
+# Bug-Debian: http://bugs.debian.org/329018
+# Bug-Ubuntu: https://bugs.launchpad.net/222630 
+# Reviewed-by: Onkar Shinde <onkarshinde at ubuntu.com>
+# Reviewed-by: Adrian Perez <adrianperez.deb at gmail.com>
+# Last-Update: 2009-07-30
+# Description: Implement a LocalSocketHelper class to avoid Azureus from 
+# hardcoding it's interface port to 6080. Allows one instance per user as 
+# opposed to one instance per machine. A user can no longer control 
+# another user's instance.
+#
+Index: vuze-4.2.0.4/org/gudy/azureus2/ui/common/StartServer.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/ui/common/StartServer.java	2009-07-25 14:38:21.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/ui/common/StartServer.java	2009-07-25 14:50:54.000000000 -0400
+@@ -35,16 +35,16 @@
+   public StartServer() {
+     super("Start Server");
+     try {
+-      socket = new ServerSocket(6880, 50, InetAddress.getByName("127.0.0.1")); //NOLAR: only bind to localhost
++      socket = org.gudy.azureus2.core3.util.LocalSocketHelper.listen(); //NOLAR: only bind to localhost
+       state = STATE_LISTENING;
+-      Logger.getLogger("azureus2").info("StartServer: listening on 127.0.0.1:6880 for passed torrent info");
++      Logger.getLogger("azureus2").info("StartServer: listening on 127.0.0.1:" + socket.getLocalPort() + " for passed torrent info");
+     } catch (Exception e) {
+       state = STATE_FAULTY;
+ 
+ 		// DON'T USE LOGGER here as we DON't want to initialise all the logger stuff
+ 		// and in particular AEDiagnostics config dirty stuff!!!!
+ 
+-      System.out.println( "StartServer ERROR: unable to bind to 127.0.0.1:6880 for passed torrent info");
++      System.out.println( "StartServer ERROR: unable to bind to a local port for passed torrent info");
+     }
+   }
+ 
+Index: vuze-4.2.0.4/org/gudy/azureus2/ui/common/Main.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/ui/common/Main.java	2009-07-25 14:38:21.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/ui/common/Main.java	2009-07-25 14:50:54.000000000 -0400
+@@ -358,7 +358,7 @@
+         
+ 		// NOTE - this formatting is also used by AzureusCoreSingleInstanceClient and other org.gudy.azureus2.ui.swt.StartSocket
+         
+-        sck = new Socket("127.0.0.1",6880);
++        sck = org.gudy.azureus2.core3.util.LocalSocketHelper.connect();
+         pw = new PrintWriter(new OutputStreamWriter(sck.getOutputStream()));
+         StringBuffer buffer = new StringBuffer(AzureusCoreSingleInstanceClient.ACCESS_STRING+";args;");
+         for(int i = 0 ; i < args.length ; i++) {
+Index: vuze-4.2.0.4/org/gudy/azureus2/ui/swt/StartSocket.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/ui/swt/StartSocket.java	2009-07-25 14:38:21.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/ui/swt/StartSocket.java	2009-07-25 14:50:54.000000000 -0400
+@@ -49,14 +49,14 @@
+     	Socket sck = null;
+     	PrintWriter pw = null;
+     	try {
+-    		String msg = "StartSocket: passing startup args to already-running Azureus java process listening on [127.0.0.1: 6880]";
++    		String msg = "StartSocket: passing startup args to already-running Azureus java process";
+     		
+     			// DON'T USE LOGGER here as we DON't want to initialise all the logger stuff
+     			// and in particular AEDiagnostics config dirty stuff!!!!
+     		
+     		System.out.println( msg );
+        	
+-    		sck = new Socket("127.0.0.1", 6880);
++    		sck = org.gudy.azureus2.core3.util.LocalSocketHelper.connect();
+          
+     			// NOTE - this formatting is also used by AzureusCoreSingleInstanceClient and other org.gudy.azureus2.ui.common.Main.StartSocket
+     		
+Index: vuze-4.2.0.4/org/gudy/azureus2/ui/swt/StartServer.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/ui/swt/StartServer.java	2009-04-16 20:46:42.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/ui/swt/StartServer.java	2009-07-25 14:50:54.000000000 -0400
+@@ -68,13 +68,13 @@
+     	// DON'T USE LOGGER HERE DUE TO COMMENTS BELOW - IF AZ ALREADY RUNNING THEN THE SERVERSOCKET
+     	// CALL WILL THROW AN EXCEPTION 
+     	
+-    	socket = new ServerSocket(6880, 50, InetAddress.getByName("127.0.0.1")); //NOLAR: only bind to localhost
++    	socket = org.gudy.azureus2.core3.util.LocalSocketHelper.listen(); //NOLAR: only bind to localhost
+         
+         state = STATE_LISTENING;    
+         
+         if (Logger.isEnabled())
+         	Logger.log(new LogEvent(LOGID, "StartServer: listening on "
+-        			+ "127.0.0.1:6880 for passed torrent info"));
++        			+ "127.0.0.1:" + socket.getLocalPort() + " for passed torrent info"));
+     
+     }catch (Throwable t) {
+     	
+@@ -84,7 +84,7 @@
+       state = STATE_FAULTY;
+       String reason = t.getMessage() == null ? "<>" : t.getMessage();
+ 
+-      System.out.println( "StartServer ERROR: unable" + " to bind to 127.0.0.1:6880 listening"
++      System.out.println( "StartServer ERROR: unable" + " to bind to a local port listening"
+ 							+ " for passed torrent info: " + reason);
+     }
+   }
+Index: vuze-4.2.0.4/org/gudy/azureus2/ui/swt/Main.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/ui/swt/Main.java	2009-07-25 14:31:41.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/ui/swt/Main.java	2009-07-25 14:50:54.000000000 -0400
+@@ -215,13 +215,13 @@
+     }
+     
+     
+-     if( another_instance ) {  //looks like there's already a process listening on 127.0.0.1:6880
++     if( another_instance ) {  //looks like there's already a process listening
+     	//attempt to pass args to existing instance
+     	StartSocket ss = new StartSocket(args);
+     	
+     	if( !ss.sendArgs() ) {  //arg passing attempt failed, so start core anyway
+     		another_instance = false;
+-    		String msg = "There appears to be another program process already listening on socket [127.0.0.1: 6880].\nLoading of torrents via command line parameter will fail until this is fixed.";
++    		String msg = "Impossible to bind to a local socket.\nLoading of torrents via command line parameter will fail until this is fixed.";
+     		System.out.println( msg );
+     		Logger.log(new LogAlert(LogAlert.REPEATABLE, LogAlert.AT_WARNING, msg));
+     	}
+Index: vuze-4.2.0.4/org/gudy/azureus2/ui/swt/osx/Start.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/ui/swt/osx/Start.java	2006-02-10 04:43:24.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/ui/swt/osx/Start.java	2009-07-25 14:50:54.000000000 -0400
+@@ -38,7 +38,7 @@
+       try {          
+         System.out.println("StartSocket: passing startup args to already-running Azureus java process.");
+         
+-        sck = new Socket("127.0.0.1", 6880);
++        sck = org.gudy.azureus2.core3.util.LocalSocketHelper.connect();
+         
+         pw = new PrintWriter(new OutputStreamWriter(sck.getOutputStream(),"UTF8"));
+         
+Index: vuze-4.2.0.4/org/gudy/azureus2/ui/swt/views/configsections/ConfigSectionConnectionAdvanced.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/ui/swt/views/configsections/ConfigSectionConnectionAdvanced.java	2008-08-08 03:33:42.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/ui/swt/views/configsections/ConfigSectionConnectionAdvanced.java	2009-07-25 14:50:54.000000000 -0400
+@@ -173,7 +173,7 @@
+ 		Label lpbind = new Label(gSocket, SWT.NULL);
+ 		Messages.setLanguageText(lpbind, CFG_PREFIX + "bind_port");
+ 		final IntParameter port_bind = new IntParameter(gSocket,
+-				"network.bind.local.port", 0, 65535);
++				"network.bind.local.port", 0, 49151);
+ 		gridData = new GridData();
+ 		gridData.widthHint = 40;
+ 		port_bind.setLayoutData(gridData);
+Index: vuze-4.2.0.4/org/gudy/azureus2/ui/swt/views/configsections/ConfigSectionTrackerClient.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/ui/swt/views/configsections/ConfigSectionTrackerClient.java	2008-05-14 23:08:04.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/ui/swt/views/configsections/ConfigSectionTrackerClient.java	2009-07-25 14:50:54.000000000 -0400
+@@ -176,7 +176,7 @@
+     		try
+ 			{
+     			int portVal = Integer.parseInt(toValue);
+-				if(portVal >= 0 && portVal <= 65535)
++				if(portVal >= 0 && portVal <= 49151)
+ 					return;
+ 			} catch (NumberFormatException e) {}
+ 			p.setValue("");
+Index: vuze-4.2.0.4/org/gudy/azureus2/ui/swt/views/configsections/ConfigSectionConnection.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/ui/swt/views/configsections/ConfigSectionConnection.java	2008-08-08 03:33:42.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/ui/swt/views/configsections/ConfigSectionConnection.java	2009-07-25 14:50:54.000000000 -0400
+@@ -102,15 +102,15 @@
+ 		label.setLayoutData(gridData);
+ 
+ 		final IntParameter tcplisten = new IntParameter(cMiniArea,
+-				"TCP.Listen.Port", 1, 65535);
++				"TCP.Listen.Port", 1, 49151);
+ 		gridData = new GridData();
+ 		gridData.widthHint = 40;
+ 		tcplisten.setLayoutData(gridData);
+ 
+ 		tcplisten.addChangeListener(new ParameterChangeAdapter() {
+ 			public void intParameterChanging(Parameter p, int toValue) {
+-				if (toValue == 6880) {
+-					toValue = 6881;
++				if (toValue > 49151) {
++					toValue = 49151;
+ 					tcplisten.setValue(toValue);
+ 				}
+ 
+@@ -130,7 +130,7 @@
+ 			label.setLayoutData(gridData);
+ 
+ 			final IntParameter udp_listen = new IntParameter(cMiniArea,
+-					"UDP.Listen.Port", 1, 65535);
++					"UDP.Listen.Port", 1, 49151);
+ 			gridData = new GridData();
+ 			gridData.widthHint = 40;
+ 			udp_listen.setLayoutData(gridData);
+@@ -139,8 +139,8 @@
+ 			
+ 			udp_listen.addChangeListener(new ParameterChangeAdapter() {
+ 				public void intParameterChanging(Parameter p, int toValue) {
+-					if (toValue == 6880) {
+-						toValue = 6881;
++					if (toValue > 49151) {
++						toValue = 49151;
+ 						udp_listen.setValue(toValue);
+ 					}
+ 
+@@ -175,8 +175,8 @@
+ 					new ParameterChangeAdapter() 
+ 					{
+ 						public void intParameterChanging(Parameter p, int toValue) {
+-							if (toValue == 6880) {
+-								toValue = 6881;
++							if (toValue > 49151) {
++								toValue = 49151;
+ 								non_data_udp_listen.setValue(toValue);
+ 							}
+ 						}
+@@ -191,7 +191,7 @@
+ 									
+ 									int udp_listen_port = udp_listen.getValue();
+ 			
+-									if ( udp_listen_port != 6880 ){
++									if ( udp_listen_port < 49152 ){
+ 										
+ 										COConfigurationManager.setParameter( "UDP.NonData.Listen.Port", udp_listen_port );
+ 										
+Index: vuze-4.2.0.4/org/gudy/azureus2/ui/swt/updater/snippets/Main.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/ui/swt/updater/snippets/Main.java	2004-09-23 15:52:04.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/ui/swt/updater/snippets/Main.java	2009-07-25 14:50:54.000000000 -0400
+@@ -36,7 +36,7 @@
+     
+     public static void main(String args[]) {
+         try {
+-        	ServerSocket server = new ServerSocket(6880, 50, InetAddress.getByName("127.0.0.1"));
++          ServerSocket server = org.gudy.azureus2.core3.util.LocalSocketHelper.listen();
+           spawnStarted();
+           server.close();
+         } catch(Exception e) {
+Index: vuze-4.2.0.4/org/gudy/azureus2/ui/swt/updater/snippets/Started.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/ui/swt/updater/snippets/Started.java	2004-04-06 20:52:00.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/ui/swt/updater/snippets/Started.java	2009-07-25 14:50:54.000000000 -0400
+@@ -36,11 +36,11 @@
+         try {
+             while(!ok) {
+               try{
+-                ServerSocket server = new ServerSocket(6880, 50, InetAddress.getByName("127.0.0.1"));
++                ServerSocket server = org.gudy.azureus2.core3.util.LocalSocketHelper.listen();
+                 ok = true;
+                 server.close();
+               } catch(Exception e) {
+-                Logger.log("Exception while trying to bind on port 6880 : " + e);
++                Logger.log("Exception while trying to bind to local port : " + e);
+                 Thread.sleep(1000);
+               }
+             }
+Index: vuze-4.2.0.4/org/gudy/azureus2/platform/unix/ScriptBeforeStartup.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/platform/unix/ScriptBeforeStartup.java	2008-06-02 18:43:46.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/platform/unix/ScriptBeforeStartup.java	2009-07-25 14:50:54.000000000 -0400
+@@ -42,7 +42,7 @@
+   		boolean argsSent = new AzureusCoreSingleInstanceClient().sendArgs(args, 500);
+   		if (argsSent) {
+   			// azureus was open..
+-  			String msg = "Passing startup args to already-running " + Constants.APP_NAME + " java process listening on [127.0.0.1: 6880]";
++  			String msg = "Passing startup args to already-running " + Constants.APP_NAME + " java process";
+   			log(msg);
+   			sysout.println("exit");
+   
+Index: vuze-4.2.0.4/org/gudy/azureus2/core3/util/RandomUtils.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/core3/util/RandomUtils.java	2009-02-20 19:15:28.000000000 -0500
++++ vuze-4.2.0.4/org/gudy/azureus2/core3/util/RandomUtils.java	2009-07-25 14:50:54.000000000 -0400
+@@ -70,7 +70,7 @@
+ 	
+ 	
+ 	public static final int LISTEN_PORT_MIN = 10000;
+-	public static final int LISTEN_PORT_MAX = 65535;
++	public static final int LISTEN_PORT_MAX = 49151;
+ 	
+ 	
+ 	/**
+Index: vuze-4.2.0.4/org/gudy/azureus2/core3/util/LocalSocketHelper.java
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ vuze-4.2.0.4/org/gudy/azureus2/core3/util/LocalSocketHelper.java	2009-07-25 14:56:09.000000000 -0400
+@@ -0,0 +1,128 @@
++/*
++ * Created on Aug 24, 2008
++ * Created by Stefano Maioli
++ * Copyright (C) 2008 Stefano Maioli, All Rights Reserved.
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License
++ * as published by the Free Software Foundation; either version 2
++ * of the License, or (at your option) any later version.
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++ * GNU General Public License for more details.
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
++ */
++
++package org.gudy.azureus2.core3.util;
++
++import java.io.*;
++import java.net.*;
++
++/**
++ *
++ * @author Stefano Maioli
++ */
++public class LocalSocketHelper {
++
++    static private LocalSocketHelper helper = null;
++
++    private int port;
++    private long key;
++    private boolean wasLocked;
++    private File lock;
++    private ServerSocket listenSocket = null;
++    private Socket outSocket = null;
++
++    private LocalSocketHelper() throws IOException {
++        String path = SystemProperties.getUserPath();
++        lock = new File(path, "localport.lock");
++        if(lock.exists()) {
++            DataInputStream inlock = new DataInputStream(new FileInputStream(lock));
++            port = inlock.readInt();
++            key = inlock.readLong();
++            inlock.close();
++            wasLocked = true;
++        } else {
++            key = new java.util.Random().nextLong();
++            do {
++                port = (int)(Math.random()*(65535-49152) + 49152);
++                try {
++                    listenSocket = new AuthServerSocket(port, 50, InetAddress.getByName("127.0.0.1"));
++                } catch(BindException ex) { listenSocket.close(); }
++            } while(!listenSocket.isBound());
++
++            DataOutputStream outlock = new DataOutputStream(
++                    new BufferedOutputStream(new FileOutputStream(lock)));
++            outlock.writeInt(port);
++            outlock.writeLong(key);
++            outlock.close();
++            lock.deleteOnExit();
++            wasLocked = false;
++        }
++    }
++
++    public static Socket connect() throws IOException {
++        if(helper == null) helper = new LocalSocketHelper();
++        if(helper.outSocket != null && helper.outSocket.isConnected())
++            return helper.outSocket;
++
++        if(!helper.wasLocked) throw new IOException("No previous instance to connect to.");
++
++        Socket s;
++        try {
++            s = new Socket("127.0.0.1", helper.port);
++            DataOutputStream out = new DataOutputStream(s.getOutputStream());
++            DataInputStream in = new DataInputStream(s.getInputStream());
++            out.writeLong(helper.key);
++            out.flush();
++            in.readByte();
++        } catch(IOException ex) {
++            helper.lock.delete();
++            helper = new LocalSocketHelper();
++            throw ex;
++        }
++        helper.outSocket = s;
++
++        return s;
++    }
++
++    public static ServerSocket listen() throws IOException {
++        try {
++            connect();
++        } catch(IOException ex) {}
++        if(helper.listenSocket != null)
++            return helper.listenSocket;
++        else {
++            throw new IOException("Other instance detected");
++        }
++    }
++
++    private class AuthServerSocket extends ServerSocket {
++
++        public AuthServerSocket(int port, int backlog, InetAddress bindAddr) throws IOException {
++            super(port, backlog, bindAddr);
++        }
++
++        //@Override
++        public Socket accept() throws IOException {
++            Socket s = super.accept();
++            DataInputStream in = new DataInputStream(s.getInputStream());
++            if(in.readLong() != key) {
++                in.close();
++                throw new SocketException("Connection closed: invalid authentication");
++            }
++            DataOutputStream out = new DataOutputStream(s.getOutputStream());
++            out.writeByte(1);
++            out.flush();
++            return s;
++        }
++
++        //@Override
++        public void close() throws IOException {
++        }
++
++    }
++}
+Index: vuze-4.2.0.4/org/gudy/azureus2/core3/ipchecker/natchecker/NatChecker.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/core3/ipchecker/natchecker/NatChecker.java	2007-11-07 17:20:20.000000000 -0500
++++ vuze-4.2.0.4/org/gudy/azureus2/core3/ipchecker/natchecker/NatChecker.java	2009-07-25 14:50:54.000000000 -0400
+@@ -70,7 +70,7 @@
+   {	
+     String check = "azureus_rand_" + String.valueOf( (int)(Math.random() * 100000) );
+     
+-    if ( port < 0 || port > 65535 || port == 6880 ){
++    if ( port < 0 || port >= 49152 ){
+     	
+     	result = NAT_UNABLE;
+     	
+Index: vuze-4.2.0.4/org/gudy/azureus2/core3/config/impl/ConfigurationChecker.java
+===================================================================
+--- vuze-4.2.0.4.orig/org/gudy/azureus2/core3/config/impl/ConfigurationChecker.java	2008-10-13 02:47:58.000000000 -0400
++++ vuze-4.2.0.4/org/gudy/azureus2/core3/config/impl/ConfigurationChecker.java	2009-07-25 14:50:54.000000000 -0400
+@@ -454,7 +454,7 @@
+ 	    
+ 	    	// reset invalid ports - single-instance socket port and (small) magnet uri listener port range
+ 	    
+-	    if ( tcp_port == 6880 || ( tcp_port >= 45100 && tcp_port <= 45103 )){
++	    if ( tcp_port >= 49152 || ( tcp_port >= 45100 && tcp_port <= 45103 )){
+ 	    
+ 	    	int	new_tcp_port	=  RandomUtils.generateRandomNetworkListenPort();
+ 	    	
+Index: vuze-4.2.0.4/com/aelitis/azureus/core/networkmanager/impl/tcp/IncomingSocketChannelManager.java
+===================================================================
+--- vuze-4.2.0.4.orig/com/aelitis/azureus/core/networkmanager/impl/tcp/IncomingSocketChannelManager.java	2008-07-05 21:52:36.000000000 -0400
++++ vuze-4.2.0.4/com/aelitis/azureus/core/networkmanager/impl/tcp/IncomingSocketChannelManager.java	2009-07-25 14:50:54.000000000 -0400
+@@ -370,7 +370,7 @@
+ 		{
+ 			this_mon.enter();
+ 			
+-			if (tcp_listen_port < 0 || tcp_listen_port > 65535 || tcp_listen_port == 6880)
++			if (tcp_listen_port < 0 || tcp_listen_port >= 49152)
+ 			{
+ 				String msg = "Invalid incoming TCP listen port configured, " + tcp_listen_port + ". Port reset to default. Please check your config!";
+ 				Debug.out(msg);
+Index: vuze-4.2.0.4/com/aelitis/azureus/core/networkmanager/impl/udp/UDPNetworkManager.java
+===================================================================
+--- vuze-4.2.0.4.orig/com/aelitis/azureus/core/networkmanager/impl/udp/UDPNetworkManager.java	2008-09-25 02:44:32.000000000 -0400
++++ vuze-4.2.0.4/com/aelitis/azureus/core/networkmanager/impl/udp/UDPNetworkManager.java	2009-07-25 14:50:54.000000000 -0400
+@@ -118,7 +118,7 @@
+ 						   return;
+ 					   }
+ 					   
+-					   if ( port < 0 || port > 65535 || port == 6880 ) {
++					   if ( port < 0 || port >= 49152 ) {
+ 						   
+ 					        String msg = "Invalid incoming UDP listen port configured, " +port+ ". The port has been reset. Please check your config!";
+ 					        
+@@ -151,7 +151,7 @@
+ 							   return;
+ 						   }
+ 						   
+-						   if ( port < 0 || port > 65535 || port == 6880 ) {
++						   if ( port < 0 || port >= 49152 ) {
+ 							   
+ 						        String msg = "Invalid incoming UDP non-data listen port configured, " +port+ ". The port has been reset. Please check your config!";
+ 						        
+Index: vuze-4.2.0.4/com/aelitis/azureus/core/impl/AzureusCoreSingleInstanceClient.java
+===================================================================
+--- vuze-4.2.0.4.orig/com/aelitis/azureus/core/impl/AzureusCoreSingleInstanceClient.java	2006-09-12 06:20:54.000000000 -0400
++++ vuze-4.2.0.4/com/aelitis/azureus/core/impl/AzureusCoreSingleInstanceClient.java	2009-07-25 14:50:54.000000000 -0400
+@@ -29,8 +29,8 @@
+ /**
+  * Single instance management is a bit of a mess. For some reason the UIs have their own implementations of clients and servers.
+  * We also have a more generic plugin-accessible single instance service that can be used by launchable plugins but don't give
+- * a generic mechanism for dealing with the basic mechanism used by the UIs (that run on 6880).
+- * I have introduced this class to give a programmatic way of passing arguments using the existing 6880 port. Perhaps one day
++ * a generic mechanism for dealing with the basic mechanism used by the UIs (that run on main local port).
++ * I have introduced this class to give a programmatic way of passing arguments using the existing local port. Perhaps one day
+  * the various UI implementations will be rewritten to use this...
+  * @author Parg
+  */
+@@ -69,9 +69,7 @@
+ 			Socket	sock = null;
+ 			
+ 			try{
+-				sock = new Socket();
+-				
+-				sock.connect( new InetSocketAddress( "127.0.0.1", 6880 ), CONNECT_TIMEOUT );
++				sock = org.gudy.azureus2.core3.util.LocalSocketHelper.connect();
+ 				
+ 				sock.setSoTimeout( READ_TIMEOUT );
+ 				

Added: trunk/azureus/debian/patches/series
===================================================================
--- trunk/azureus/debian/patches/series	                        (rev 0)
+++ trunk/azureus/debian/patches/series	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,6 @@
+fix-platform-code.patch
+fix-chars-encoding.patch
+fix-messagetext-dont-use-privileges.patch
+multiuser.patch
+updater-dont-initialize-swt-updatechecker.patch
+updater-dont-register-core-updatechecker.patch

Added: trunk/azureus/debian/patches/updater-dont-initialize-swt-updatechecker.patch
===================================================================
--- trunk/azureus/debian/patches/updater-dont-initialize-swt-updatechecker.patch	                        (rev 0)
+++ trunk/azureus/debian/patches/updater-dont-initialize-swt-updatechecker.patch	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,71 @@
+#
+# Author: Adrian Perez <adrianperez.deb at gmail.com>
+# Last-Update: 2009-07-29
+# Description: Don't initialize SWTUpdateChecker in Debian. Prevent the update
+# of SWT libraries, which will effectively unsync from the package manager.
+#
+Index: azureus-4.2.0.4/com/aelitis/azureus/ui/swt/Initializer.java
+===================================================================
+--- azureus-4.2.0.4.orig/com/aelitis/azureus/ui/swt/Initializer.java	2009-07-26 14:48:38.000000000 -0400
++++ azureus-4.2.0.4/com/aelitis/azureus/ui/swt/Initializer.java	2009-07-26 14:52:09.000000000 -0400
+@@ -40,9 +40,10 @@
+ import org.gudy.azureus2.ui.swt.pluginsinstaller.InstallPluginWizard;
+ import org.gudy.azureus2.ui.swt.progress.ProgressWindow;
+ import org.gudy.azureus2.ui.swt.update.UpdateMonitor;
++/* --- Adrian Perez: Don't initialize SWTUpdateChecker in Debian.
+ import org.gudy.azureus2.ui.swt.updater2.PreUpdateChecker;
+ import org.gudy.azureus2.ui.swt.updater2.SWTUpdateChecker;
+-
++*/
+ import com.aelitis.azureus.core.*;
+ import com.aelitis.azureus.core.cnetwork.ContentNetwork;
+ import com.aelitis.azureus.core.messenger.ClientMessageContext;
+@@ -293,12 +294,15 @@
+ 					}
+ 					
+ 					reportCurrentTaskByKey("splash.openViews");
+-	
++/*
++ * Adrian Perez: Don't initialize SWTUpdateChecker in Debian
++ *
+ 					SWTUpdateChecker.initialize();
+ 	
+ 					PreUpdateChecker.initialize(core,
+ 							COConfigurationManager.getStringParameter("ui"));
+ 	
++*/
+ 					UpdateMonitor.getSingleton(core); // setup the update monitor
+ 	
+ 					//Tell listeners that all is initialized :
+Index: azureus-4.2.0.4/org/gudy/azureus2/ui/swt/mainwindow/Initializer.java
+===================================================================
+--- azureus-4.2.0.4.orig/org/gudy/azureus2/ui/swt/mainwindow/Initializer.java	2009-07-26 14:54:23.000000000 -0400
++++ azureus-4.2.0.4/org/gudy/azureus2/ui/swt/mainwindow/Initializer.java	2009-07-26 14:55:59.000000000 -0400
+@@ -45,9 +45,10 @@
+ import org.gudy.azureus2.ui.swt.pluginsinstaller.InstallPluginWizard;
+ import org.gudy.azureus2.ui.swt.progress.ProgressWindow;
+ import org.gudy.azureus2.ui.swt.update.UpdateMonitor;
++/* --- Adrian Perez: Don't initialize SWTUpdateChecker in Debian.
+ import org.gudy.azureus2.ui.swt.updater2.PreUpdateChecker;
+ import org.gudy.azureus2.ui.swt.updater2.SWTUpdateChecker;
+-
++*/
+ import com.aelitis.azureus.core.*;
+ import com.aelitis.azureus.core.util.CopyOnWriteList;
+ import com.aelitis.azureus.launcher.Launcher;
+@@ -253,11 +254,14 @@
+ 	
+ 						if (finalLogListener != null)
+ 							Logger.removeListener(finalLogListener);
+-	
++/*
++ * Adrian Perez: Don't initialize SWTUpdateChecker in Debian.
++ *
+ 						SWTUpdateChecker.initialize();
+ 	
+ 						PreUpdateChecker.initialize( core, COConfigurationManager.getStringParameter("ui"));
+ 	
++*/
+ 						UpdateMonitor.getSingleton(core); // setup the update monitor
+ 	
+ 						//Tell listeners that all is initialized :

Added: trunk/azureus/debian/patches/updater-dont-register-core-updatechecker.patch
===================================================================
--- trunk/azureus/debian/patches/updater-dont-register-core-updatechecker.patch	                        (rev 0)
+++ trunk/azureus/debian/patches/updater-dont-register-core-updatechecker.patch	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,25 @@
+#
+# Author: Adrian Perez <adrianperez.deb at gmail.com>
+# Last-Update: 2009-07-29
+# Description: Don't register Azureus CoreUpdateChecker as UpdatableComponent
+# to prevent updates in the core, since they must be synced with the 
+# package manager.
+#
+
+Index: azureus-4.2.0.4/org/gudy/azureus2/update/CoreUpdateChecker.java
+===================================================================
+--- azureus-4.2.0.4.orig/org/gudy/azureus2/update/CoreUpdateChecker.java	2009-07-26 16:00:30.000000000 -0400
++++ azureus-4.2.0.4/org/gudy/azureus2/update/CoreUpdateChecker.java	2009-07-26 16:01:32.000000000 -0400
+@@ -127,8 +127,11 @@
+ 		props.setProperty( "plugin.version", plugin_interface.getAzureusVersion());
+ 		
+ 		rdf = plugin_interface.getUtilities().getResourceDownloaderFactory();
+-	
++	/*
++	 * Adrian Perez: Don't update Azureus Core in Debian.
++	 *
+ 		plugin_interface.getUpdateManager().registerUpdatableComponent( this, true );
++	*/
+ 	}
+ 	
+ 	public String

Added: trunk/azureus/debian/rules
===================================================================
--- trunk/azureus/debian/rules	                        (rev 0)
+++ trunk/azureus/debian/rules	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,28 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+
+include /usr/share/cdbs/1/rules/patchsys-quilt.mk
+include /usr/share/cdbs/1/rules/debhelper.mk
+include /usr/share/cdbs/1/class/ant.mk
+
+JAVA_HOME := /usr/lib/jvm/java-6-openjdk
+DEB_ANT_BUILDFILE := debian/build.xml
+DEB_ANT_BUILD_TARGET := package
+DEB_JARS = log4j commons-cli swt junit
+ANT_OPTS=-Xmx256m
+
+SUBSTVARS := debian/azureus.substvars
+BIN_FILE := debian/bin/azureus
+BIN_TEMPLATE := $(BIN_FILE).template
+
+
+build/azureus::
+	dpkg -S `readlink -f $$(which java)` | perl -pe 's|(.+):.+|jre:Depends=$$1|' > $(SUBSTVARS)
+	perl -i -pe 's/-headless//' $(SUBSTVARS)
+	perl -pe "s|%JAVA%|`readlink -f $$(which java)`|" $(BIN_TEMPLATE) > $(BIN_FILE)
+	
+	perl -ne 'print(unpack "u", $$_)' debian/Azureus.png.uu > \
+		debian/Azureus.png
+	perl -ne 'print(unpack "u", $$_)' debian/Azureus.torrent.png.uu > \
+		debian/Azureus.torrent.png
+


Property changes on: trunk/azureus/debian/rules
___________________________________________________________________
Added: svn:executable
   + 

Added: trunk/azureus/debian/vuze.1
===================================================================
--- trunk/azureus/debian/vuze.1	                        (rev 0)
+++ trunk/azureus/debian/vuze.1	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,38 @@
+.TH vuze "1" "2009-07-08" "vuze 4.2.0.4" "User Commands"
+.SH NAME
+azureus \- a Multimedia BitTorrent client
+.SH SYNOPSIS
+.B vuze
+.br
+.B vuze
+.SH DESCRIPTION
+BitTorrent is a peer-to-peer file distribution tool.
+.
+Vuze is a multimedia BitTorrent client based on Azureus intended for
+DVD and HD video. It includes some social-networking features to
+share videos among friends.
+.
+Vuze offers subscriptions to preferred content, an embed media player and
+web-browser, support for multiple Content Networks, sharing .vuze files,
+popularity contexts, categories and tagging, IPv6 compact tracker support,
+automatic URL handling, a plugin architecture; besides other features.
+
+.SH AUTHOR
+Written by Aelitis, and Vuze Inc.
+
+This manual page was written by Adrian Perez <adrianperez.deb at gmail.com>
+for the Debian project (and may be used by others).
+
+.SH "REPORTING BUGS"
+Report bugs to <azureus at gmail.com>.
+
+.SH COPYRIGHT
+Copyright 2009 Vuze, Inc.
+Copyright 2003-2009 Aelitis.
+
+This is free software; see the source for copying conditions. There is
+NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.
+
+.SH "SEE ALSO"
+http://azureus.sourceforge.net

Added: trunk/azureus/debian/vuze.desktop
===================================================================
--- trunk/azureus/debian/vuze.desktop	                        (rev 0)
+++ trunk/azureus/debian/vuze.desktop	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Encoding=UTF-8
+Categories=Java;Network;FileTransfer;P2P
+Comment=Multimedia P2P Client with HD Network support
+Exec=vuze %f
+GenericName=Mutimedia BitTorrent client
+Icon=/usr/share/pixmaps/Azureus.png
+MimeType=application/x-bittorrent
+Name=Vuze
+Type=Application

Added: trunk/azureus/debian/vuze.install
===================================================================
--- trunk/azureus/debian/vuze.install	                        (rev 0)
+++ trunk/azureus/debian/vuze.install	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1 @@
+debian/bin/vuze usr/bin

Added: trunk/azureus/debian/watch
===================================================================
--- trunk/azureus/debian/watch	                        (rev 0)
+++ trunk/azureus/debian/watch	2009-07-31 19:20:55 UTC (rev 9427)
@@ -0,0 +1,2 @@
+version=3
+http://sf.net/azureus/Vuze_(.+)_source\.zip




More information about the pkg-java-commits mailing list