Commits

Providence SALUMU committed 73216e9

adds include unistd related patch

  • Participants
  • Parent commits a3c2833

Comments (0)

Files changed (13)

File net-p2p/rtorrent/ChangeLog

+# ChangeLog for net-p2p/rtorrent
+# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/rtorrent/ChangeLog,v 1.164 2011/09/18 10:51:21 mgorny Exp $
+
+  18 Sep 2011; Michał Górny <mgorny@gentoo.org> rtorrent-0.8.9.ebuild:
+  Fix implicit $(use_enable debug).
+
+*rtorrent-0.8.9 (10 Sep 2011)
+
+  10 Sep 2011; Michał Górny <mgorny@gentoo.org> rtorrent-0.8.7-r4.ebuild,
+  +rtorrent-0.8.9.ebuild, +files/rtorrent-0.8.9-canvas-fix.patch,
+  +files/rtorrent-0.8.9-ncurses.patch:
+  Version bump per bug #366623. Bump EAPI, migrate to autotools-utils. Fix
+  libtorrent dep in previous version
+
+*rtorrent-0.8.7-r4 (15 Aug 2011)
+
+  15 Aug 2011; Stanislav Ochotnicky <sochotnicky@gentoo.org>
+  -rtorrent-0.8.7-r3.ebuild, +rtorrent-0.8.7-r4.ebuild:
+  Install man page manually(default target skips this now)
+
+*rtorrent-0.8.7-r3 (09 May 2011)
+*rtorrent-0.8.6-r4 (09 May 2011)
+
+  09 May 2011; Stanislav Ochotnicky <sochotnicky@gentoo.org>
+  -rtorrent-0.8.6-r3.ebuild, +rtorrent-0.8.6-r4.ebuild,
+  -rtorrent-0.8.7-r2.ebuild, +rtorrent-0.8.7-r3.ebuild, files/rtorrentd.init:
+  Fixed up init script for daemon mode (problems when using baselayout-2)
+
+*rtorrent-0.8.7-r2 (18 Apr 2011)
+
+  18 Apr 2011; Stanislav Ochotnicky <sochotnicky@gentoo.org>
+  -rtorrent-0.8.7-r1.ebuild, +rtorrent-0.8.7-r2.ebuild,
+  +files/rtorrent-0.8.7-canvas-fix.patch, metadata.xml:
+  Added optional support for color torrent listing
+
+*rtorrent-0.8.7-r1 (11 Apr 2011)
+*rtorrent-0.8.6-r3 (11 Apr 2011)
+
+  11 Apr 2011; Stanislav Ochotnicky <sochotnicky@gentoo.org>
+  -rtorrent-0.8.5.ebuild, -rtorrent-0.8.6.ebuild, -rtorrent-0.8.6-r2.ebuild,
+  +rtorrent-0.8.6-r3.ebuild, -rtorrent-0.8.7.ebuild,
+  +rtorrent-0.8.7-r1.ebuild, files/rtorrentd.init:
+  Fixed up init script a bit
+  Removed old ~arch ebuilds that have been superseded
+
+*rtorrent-0.8.7 (03 Apr 2011)
+
+  03 Apr 2011; Patrick Lauer <patrick@gentoo.org> +rtorrent-0.8.7.ebuild:
+  Bump to match libtorrent
+
+*rtorrent-0.8.6-r2 (28 Mar 2011)
+
+  28 Mar 2011; Alex Alexander <wired@gentoo.org> +rtorrent-0.8.6-r2.ebuild,
+  +files/rtorrent-0.8.6-ncurses.patch:
+  fixed bug #358271
+
+  18 Aug 2010; Jeroen Roovers <jer@gentoo.org> rtorrent-0.8.6-r1.ebuild:
+  Stable for HPPA (bug #311143).
+
+  04 Jul 2010; Samuli Suominen <ssuominen@gentoo.org>
+  rtorrent-0.8.6-r1.ebuild:
+  ppc64 stable wrt #311143
+
+  04 May 2010; <angelos@gentoo.org> rtorrent-0.8.6-r1.ebuild:
+  amd64 stable, thanks to Roeland Douma (bug #311143)
+
+  18 Apr 2010; <nixnut@gentoo.org> rtorrent-0.8.6-r1.ebuild:
+  ppc stable #311143
+
+  08 Apr 2010; Jeroen Roovers <jer@gentoo.org> metadata.xml:
+  No need for "empty" maintainer tag when herd tag is present.
+
+  03 Apr 2010; Pawel Hajdan jr <phajdan.jr@gentoo.org>
+  rtorrent-0.8.6-r1.ebuild:
+  x86 stable wrt bug #311143
+
+  18 Mar 2010; Dror Levin <spatz@gentoo.org> files/rtorrentd.init:
+  Fix screen invocation in initd script, bug 294435.
+
+  22 Jan 2010; Dawid Węgliński <cla@gentoo.org> rtorrent-0.8.6-r1.ebuild:
+  Add some elog instructions messages
+
+*rtorrent-0.8.6-r1 (22 Jan 2010)
+
+  22 Jan 2010; Dawid Węgliński <cla@gentoo.org> +rtorrent-0.8.6-r1.ebuild:
+  Revision bump, so users can rebuild rtorrent with canvas colour patch.
+
+  21 Jan 2010; Dawid Węgliński <cla@gentoo.org> rtorrent-0.8.6.ebuild,
+  +files/rtorrent-0.8.6-canvas-fix.patch:
+  Add canvas colour patch. Bug #295373.
+
+  28 Dec 2009; Raúl Porcel <armin76@gentoo.org> rtorrent-0.8.5.ebuild,
+  rtorrent-0.8.6.ebuild:
+  Add ~arm
+
+*rtorrent-0.8.6 (22 Dec 2009)
+
+  22 Dec 2009; Samuli Suominen <ssuominen@gentoo.org>
+  +rtorrent-0.8.6.ebuild:
+  Version bump.
+
+  09 Dec 2009; nixnut <nixnut@gentoo.org> rtorrent-0.8.5.ebuild:
+  ppc stable #291036
+
+  08 Dec 2009; Jeroen Roovers <jer@gentoo.org> rtorrent-0.8.5.ebuild:
+  Stable for HPPA (bug #291036).
+
+  23 Nov 2009; Markus Meier <maekke@gentoo.org> rtorrent-0.8.5.ebuild:
+  x86 stable, bug #291036
+
+  18 Nov 2009; Brent Baude <ranger@gentoo.org> rtorrent-0.8.5.ebuild:
+  Marking rtorrent-0.8.5 ppc64 for bug 291036
+
+  27 Oct 2009; Patrick Lauer <patrick@gentoo.org> rtorrent-0.8.5.ebuild:
+  Readding 0.8.2-gcc34.patch for #224031
+
+*rtorrent-0.8.5 (10 Sep 2009)
+
+  10 Sep 2009; Patrick Lauer <patrick@gentoo.org> +rtorrent-0.8.5.ebuild:
+  Bump to 0.8.5, fixes other half of #278660. Thanks to Shark for testing.
+
+  28 Jul 2009; Robin H. Johnson <robbat2@gentoo.org> files/rtorrentd.init:
+  Bug #262046: If used with a non-local NSS source, we need to start after
+  those.
+
+  05 Jun 2009; Peter Alfredsen <loki_val@gentoo.org> metadata.xml:
+  Retiring, bug 220219.
+
+  20 May 2009; Jeremy Olexa <darkside@gentoo.org> files/rtorrentd.init,
+  -rtorrent-0.7.9.ebuild, -rtorrent-0.8.2-r3.ebuild,
+  -rtorrent-0.8.2-r5.ebuild:
+  Allow init script to find homedir instead of hardcoding it, patch by Michał
+  Górny, bug 265969
+
+  06 Mar 2009; Jeroen Roovers <jer@gentoo.org> rtorrent-0.8.4-r1.ebuild:
+  Stable for HPPA (bug #255756).
+
+  05 Mar 2009; Peter Alfredsen <loki_val@gentoo.org>
+  files/rtorrent-0.8.4-gcc44.patch:
+  Fix dos line-endings in patch. Bug 261253. Thanks to Aelia
+  <diego.abelenda@gmail.com> for reporting.
+
+  04 Mar 2009; Peter Alfredsen <loki_val@gentoo.org>
+  +files/rtorrent-0.8.4-gcc44.patch, rtorrent-0.8.4-r1.ebuild:
+  Trivial gcc-4.4 fix, bug 257643. Thanks to Mike Mullen <mike@e-junky.net>.
+
+  01 Mar 2009; Peter Alfredsen <loki_val@gentoo.org> rtorrent-0.7.9.ebuild,
+  rtorrent-0.8.2-r3.ebuild, rtorrent-0.8.2-r5.ebuild, rtorrent-0.8.3.ebuild,
+  rtorrent-0.8.4-r1.ebuild:
+  Fix description of rtorrent.rc location to take into account compression
+  of doc files. Bug 260772. Thanks to Victor Ostorga <vostorga@gmail.com>.
+
+  15 Feb 2009; Brent Baude <ranger@gentoo.org> rtorrent-0.8.4-r1.ebuild:
+  Marking rtorrent-0.8.4-r1 ppc for bug 255756
+
+  15 Feb 2009; Markus Meier <maekke@gentoo.org> rtorrent-0.8.4-r1.ebuild:
+  amd64/x86 stable, bug #255756
+
+  12 Feb 2009; Brent Baude <ranger@gentoo.org> rtorrent-0.8.4-r1.ebuild:
+  Marking rtorrent-0.8.4-r1 ppc64 for bug 255756
+
+*rtorrent-0.8.4-r1 (26 Dec 2008)
+
+  26 Dec 2008; Jeremy Olexa <darkside@gentoo.org> +files/rtorrentd.conf,
+  +files/rtorrentd.init, metadata.xml, -rtorrent-0.8.4.ebuild,
+  +rtorrent-0.8.4-r1.ebuild:
+  Add a new USE=daemon flag to provide init scripts. bug #250578
+
+*rtorrent-0.8.4 (19 Nov 2008)
+
+  19 Nov 2008; Peter Alfredsen <loki_val@gentoo.org> +rtorrent-0.8.4.ebuild:
+  Bumb
+
+  04 Oct 2008; Peter Alfredsen <loki_val@gentoo.org> rtorrent-0.7.9.ebuild,
+  rtorrent-0.8.2-r3.ebuild, rtorrent-0.8.3.ebuild:
+  Propagate fix to other versions. Hrmm...
+
+  04 Oct 2008; Peter Alfredsen <loki_val@gentoo.org>
+  rtorrent-0.8.2-r5.ebuild:
+  Fix bug 239666, missing pkgconfig. Thanks to Evil Compile Person
+  <bugs@dev.gentooexperimental.org>.
+
+  04 Oct 2008; Brent Baude <ranger@gentoo.org> rtorrent-0.8.2-r5.ebuild:
+  Marking rtorrent-0.8.2-r5 ppc64 for bug 238611
+
+  27 Sep 2008; Dawid Węgliński <cla@gentoo.org> rtorrent-0.8.2-r5.ebuild:
+  Stable on x86 (bug #238611)
+
+  27 Sep 2008; nixnut <nixnut@gentoo.org> rtorrent-0.8.2-r5.ebuild:
+  Stable on ppc wrt bug 238611
+
+  26 Sep 2008; Jeroen Roovers <jer@gentoo.org> rtorrent-0.8.2-r5.ebuild:
+  Stable for HPPA (bug #238611).
+
+  25 Sep 2008; Kenneth Prugh <ken69267@gentoo.org> rtorrent-0.8.2-r5.ebuild:
+  amd64 stable, bug #238611
+
+*rtorrent-0.8.3 (16 Sep 2008)
+
+  16 Sep 2008; Peter Alfredsen <loki_val@gentoo.org>
+  rtorrent-0.8.2-r3.ebuild, -rtorrent-0.8.2-r4.ebuild,
+  rtorrent-0.8.2-r5.ebuild, +rtorrent-0.8.3.ebuild:
+  rtorrent-0.8.3/libtorrent-0.12.3 bump
+
+*rtorrent-0.8.2-r5 (26 Aug 2008)
+
+  26 Aug 2008; Peter Alfredsen <loki_val@gentoo.org>
+  +files/rtorrent-0.8.2-fix_scgi_crash.patch, +rtorrent-0.8.2-r5.ebuild:
+  Fix a crash in scgi_local or scgi_port when calling freeaddrinfo with a
+  NULL pointer. Patch by Josef Drexler.
+
+  25 Aug 2008; Jeroen Roovers <jer@gentoo.org> rtorrent-0.8.2-r3.ebuild:
+  Stable for HPPA (bug #233122).
+
+*rtorrent-0.8.2-r4 (07 Aug 2008)
+
+  07 Aug 2008; Peter Alfredsen <loki_val@gentoo.org>
+  +files/rtorrent-0.8.2-fix-configure-execinfo.patch,
+  +files/rtorrent-0.8.2-fix_utf8_filenames.patch, rtorrent-0.8.2-r3.ebuild,
+  +rtorrent-0.8.2-r4.ebuild:
+  Add new revision with fix for upstream ticket 1416 and quick autoconf fix
+  to avoid segfault when execinfo.h exists, by Josef Drexler. Remove
+  enable-aligned from rtorrent ebuild, since that is only used by libtorrent
+  ebuild. Add ewarn w.r.t. bug #212299.
+
+  02 Aug 2008; Markus Rothe <corsair@gentoo.org> rtorrent-0.8.2-r3.ebuild:
+  Stable on ppc64; bug #233122
+
+  01 Aug 2008; Peter Alfredsen <loki_val@gentoo.org>
+  +files/rtorrent-0.8.2-gcc34.patch, rtorrent-0.8.2-r3.ebuild:
+  Add patch for gcc-3.4, bug #224031. Thanks goes to Herbie Hopkins
+  <herbie@hopkins.net>. Upstream http://libtorrent.rakshasa.no/ticket/1271 .
+  Verified with Josef Drexler via IRC that this is the correct solution.
+
+  01 Aug 2008; nixnut <nixnut@gentoo.org> rtorrent-0.8.2-r3.ebuild:
+  Stable on ppc wrt bug 233122
+
+  30 Jul 2008; Dawid Węgliński <cla@gentoo.org> rtorrent-0.8.2-r3.ebuild:
+  Stable on amd64 (bug #233122)
+
+  29 Jul 2008; Raúl Porcel <armin76@gentoo.org> rtorrent-0.8.2-r3.ebuild:
+  x86 stable wrt #233122
+
+*rtorrent-0.8.2-r3 (28 Jun 2008)
+
+  28 Jun 2008; Peter Alfredsen <loki_val@gentoo.org>
+  +files/rtorrent-0.8.2-fix_conn_type_seed.patch,
+  +files/rtorrent-0.8.2-fix_load_cache.patch, -rtorrent-0.8.2-r2.ebuild,
+  +rtorrent-0.8.2-r3.ebuild:
+  Revision bump to update patchset with newest fixes from Josef Drexler.
+
+*rtorrent-0.8.2-r2 (05 Jun 2008)
+
+  05 Jun 2008; Peter Alfredsen <loki_val@gentoo.org>
+  +files/rtorrent-0.8.2-fix_start_stop_filter.patch, metadata.xml,
+  -rtorrent-0.8.0.ebuild, -rtorrent-0.8.2.ebuild, +rtorrent-0.8.2-r2.ebuild:
+  Adding bugfix patch recommended by upstream.
+
+*rtorrent-0.8.2 (27 May 2008)
+
+  27 May 2008; Samuli Suominen <drac@gentoo.org> +rtorrent-0.8.2.ebuild:
+  Version bump.
+
+  21 Apr 2008; Diego Pettenò <flameeyes@gentoo.org>
+  +files/rtorrent-0.8.0+gcc-4.3.patch, rtorrent-0.8.0.ebuild:
+  Add patch by Philipp to build with GCC 4.3 (bug #212833).
+
+*rtorrent-0.8.0 (01 Mar 2008)
+
+  01 Mar 2008; Timothy Redaelli <drizzt@gentoo.org> +rtorrent-0.8.0.ebuild:
+  Version Bump wrt bug #209361
+  Add ipv6 use flag wrt bug #207581
+
+  06 Feb 2008; nixnut <nixnut@gentoo.org> rtorrent-0.7.9.ebuild:
+  stable on ppc wrt bug #209140
+
+  06 Feb 2008; Christoph Mende <angelos@gentoo.org> rtorrent-0.7.9.ebuild:
+  Stable on amd64, bug #209140
+
+  06 Feb 2008; Raúl Porcel <armin76@gentoo.org> -rtorrent-0.7.1.ebuild,
+  -rtorrent-0.7.2.ebuild, -rtorrent-0.7.3.ebuild, -rtorrent-0.7.4.ebuild,
+  rtorrent-0.7.9.ebuild:
+  x86 stable, remove old
+
+  05 Feb 2008; Markus Rothe <corsair@gentoo.org> rtorrent-0.7.9.ebuild:
+  Stable on ppc64
+
+  10 Jan 2008; Guy Martin <gmsoft@gentoo.org> rtorrent-0.7.9.ebuild:
+  Added hppa to KEYWORDS.
+
+  06 Jan 2008; Timothy Redaelli <drizzt@gentoo.org> rtorrent-0.7.9.ebuild:
+  Add xmlrpc use flag, please test and report.
+  Bug #182816
+
+  13 Nov 2007; Samuli Suominen <drac@gentoo.org> rtorrent-0.7.8.ebuild:
+  amd64 stable wrt #198558, thanks to Angelo Arrifano for testing.
+
+  13 Nov 2007; Raúl Porcel <armin76@gentoo.org> rtorrent-0.7.9.ebuild:
+  Add ~ia64 wrt #198844
+
+  10 Nov 2007; Markus Rothe <corsair@gentoo.org> rtorrent-0.7.8.ebuild:
+  Stable on ppc64; bug #198558
+
+  09 Nov 2007; nixnut <nixnut@gentoo.org> rtorrent-0.7.8.ebuild:
+  Stable on ppc wrt bug 198558
+
+  09 Nov 2007; Dawid Węgliński <cla@gentoo.org> rtorrent-0.7.8.ebuild:
+  Stable on x86 (bug #198558)
+
+*rtorrent-0.7.9 (25 Oct 2007)
+
+  25 Oct 2007; Timothy Redaelli <drizzt@gentoo.org> +rtorrent-0.7.9.ebuild:
+  Version bump, thanks to Flameeyes for poking me.
+
+  08 Sep 2007; Hanno Boeck <hanno@gentoo.org> ChangeLog:
+  Place comment below econf-line, else it breaks.
+
+*rtorrent-0.7.8 (08 Sep 2007)
+
+  08 Sep 2007; Timothy Redaelli <drizzt@gentoo.org> +rtorrent-0.7.8.ebuild:
+  Version bump wrt bug #182816.
+
+  24 May 2007; Timothy Redaelli <drizzt@gentoo.org> rtorrent-0.7.4.ebuild:
+  append-flags -fno-strict-aliasing wrt bug #179554
+
+  05 Apr 2007; Timothy Redaelli <drizzt@gentoo.org> rtorrent-0.7.2.ebuild:
+  Stable on ppc wrt bug #172469
+  Thanks to Nathan Smith for testing.
+
+*rtorrent-0.7.4 (04 Apr 2007)
+
+  04 Apr 2007; Timothy Redaelli <drizzt@gentoo.org> +rtorrent-0.7.4.ebuild:
+  Version bump (thx to Flameeyes for reporting on irc)
+
+  29 Mar 2007; Markus Rothe <corsair@gentoo.org> rtorrent-0.7.2.ebuild:
+  Stable on ppc64; bug #172469
+
+  29 Mar 2007; Daniel Gryniewicz <dang@gentoo.org> rtorrent-0.7.2.ebuild:
+  Marked stable on amd64 for bug #172469
+
+  28 Mar 2007; Christian Faulhammer <opfer@gentoo.org>
+  rtorrent-0.7.2.ebuild:
+  stable x86, bug 172469
+
+  27 Mar 2007; Timothy Redaelli <drizzt@gentoo.org> rtorrent-0.7.2.ebuild,
+  rtorrent-0.7.3.ebuild:
+  Fix bug #170422
+  Thanks to arj
+
+*rtorrent-0.7.3 (27 Mar 2007)
+
+  27 Mar 2007; Timothy Redaelli <drizzt@gentoo.org> +rtorrent-0.7.3.ebuild:
+  Version bump
+
+  19 Mar 2007; Bryan Østergaard <kloeri@gentoo.org> metadata.xml:
+  Remove flameeyes from metadata.xml due to retirement.
+
+  23 Feb 2007; Timothy Redaelli <drizzt@gentoo.org> -rtorrent-0.6.4.ebuild:
+  Remove unused version.
+
+  05 Feb 2007; Timothy Redaelli <drizzt@gentoo.org> rtorrent-0.7.2.ebuild:
+  Remove sys-devel/bc dep since 0.7.2 does not need it anymore.
+  Thanks to Sascha Geschwandtner for reporting wrt bug #165393.
+
+  03 Feb 2007; nixnut <nixnut@gentoo.org> rtorrent-0.7.1.ebuild:
+  Stable on ppc wrt bug 164235
+
+  01 Feb 2007; Markus Rothe <corsair@gentoo.org> rtorrent-0.7.1.ebuild:
+  Stable on ppc64; bug #164235
+
+  01 Feb 2007; Timothy Redaelli <drizzt@gentoo.org> rtorrent-0.7.1.ebuild:
+  Stable on amd64 wrt bug #164235
+
+  31 Jan 2007; Markus Rothe <corsair@gentoo.org> ChangeLog:
+  Stable on ppc64; bug #164235
+
+  28 Jan 2007; Raúl Porcel <armin76@gentoo.org> rtorrent-0.7.1.ebuild:
+  x86 stable wrt bug 164235
+
+*rtorrent-0.7.2 (27 Jan 2007)
+
+  27 Jan 2007; Timothy Redaelli <drizzt@gentoo.org> +rtorrent-0.7.2.ebuild:
+  Version bump
+
+  05 Jan 2007; Diego Pettenò <flameeyes@gentoo.org> rtorrent-0.6.4.ebuild,
+  rtorrent-0.7.1.ebuild:
+  Convert to use elog.
+
+  29 Dec 2006; Timothy Redaelli <drizzt@gentoo.org> rtorrent-0.7.1.ebuild:
+  Fixed libtorrent dep as reported by Ville Salomäki wrt bug #159353
+
+*rtorrent-0.7.1 (28 Dec 2006)
+
+  28 Dec 2006; Diego Pettenò <flameeyes@gentoo.org> -rtorrent-0.6.0.ebuild,
+  -rtorrent-0.7.0.ebuild, +rtorrent-0.7.1.ebuild:
+  Version bump and old versions cleanup.
+
+  21 Dec 2006; Markus Rothe <corsair@gentoo.org> rtorrent-0.6.4.ebuild:
+  Stable on ppc64; bug #158007
+
+  17 Dec 2006; Tobias Scherbaum <dertobi123@gentoo.org>
+  rtorrent-0.6.4.ebuild:
+  Stable on ppc wrt bug #158007.
+
+  14 Dec 2006; Brent Baude <ranger@gentoo.org> ChangeLog:
+  Marking rtorrent-0.6.4 ppc64 stable for bug 158007
+
+  13 Dec 2006; Christian Faulhammer <opfer@gentoo.org>
+  rtorrent-0.6.4.ebuild:
+  stable x86, bug #158007
+
+  13 Dec 2006; Michael Cummings <mcummings@gentoo.org>
+  rtorrent-0.6.4.ebuild:
+  amd64 stable, bug 158007
+
+*rtorrent-0.7.0 (13 Dec 2006)
+
+  13 Dec 2006; Diego Pettenò <flameeyes@gentoo.org> -rtorrent-0.5.3.ebuild,
+  -rtorrent-0.6.1.ebuild, -rtorrent-0.6.3.ebuild, -rtorrent-0.6.3-r1.ebuild,
+  +rtorrent-0.7.0.ebuild:
+  Version bump, and remove old versions.
+
+  21 Nov 2006; Timothy Redaelli <drizzt@gentoo.org> metadata.xml:
+  Added myself as co-maintainer.
+
+  20 Nov 2006; Christian Faulhammer <opfer@gentoo.org>
+  rtorrent-0.6.4.ebuild:
+  filtered -fforce-addr on x86, as reported by parafin-spobs@yandex.ru in bug
+  #155679
+
+*rtorrent-0.6.4 (27 Oct 2006)
+
+  27 Oct 2006; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.6.4.ebuild:
+  Version bump.
+
+*rtorrent-0.6.3-r1 (19 Oct 2006)
+
+  19 Oct 2006; Diego Pettenò <flameeyes@gentoo.org>
+  +rtorrent-0.6.3-r1.ebuild:
+  Replace -O2 with -O3 on x86 systems running GCC 4.1. Closes bug #151221.
+
+*rtorrent-0.6.3 (05 Oct 2006)
+
+  05 Oct 2006; Diego Pettenò <flameeyes@gentoo.org> -rtorrent-0.6.2.ebuild,
+  +rtorrent-0.6.3.ebuild:
+  Version bump, remove old broken release.
+
+  24 Sep 2006; Michael Hanselmann <hansmi@gentoo.org> rtorrent-0.6.0.ebuild:
+  Stable on ppc.
+
+*rtorrent-0.6.2 (14 Sep 2006)
+
+  14 Sep 2006; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.6.2.ebuild:
+  Version bump.
+
+  09 Sep 2006; Diego Pettenò <flameeyes@gentoo.org> rtorrent-0.6.0.ebuild,
+  rtorrent-0.6.1.ebuild:
+  Add missing build-time dependency on bc as per bug #146845.
+
+  09 Sep 2006; Torsten Veller <tove@gentoo.org> rtorrent-0.6.0.ebuild:
+  Stable on x86 (#146845)
+
+  09 Sep 2006; Thomas Cort <tcort@gentoo.org> rtorrent-0.6.0.ebuild:
+  Stable on amd64 wrt Bug #146845.
+
+  08 Sep 2006; Markus Rothe <corsair@gentoo.org> rtorrent-0.6.0.ebuild:
+  Stable on ppc64; bug #146845
+
+  02 Sep 2006; Diego Pettenò <flameeyes@gentoo.org> rtorrent-0.6.1.ebuild:
+  Correct dependency on libtorrent version, thanks to jieryn in bug #145837.
+
+*rtorrent-0.6.1 (31 Aug 2006)
+
+  31 Aug 2006; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.6.1.ebuild:
+  Version bump, thanks to Daniel Webert and CJ Kucera, bug #144926 and #145384.
+
+  21 Jul 2006; Diego Pettenò <flameeyes@gentoo.org> -rtorrent-0.4.3.ebuild:
+  Drop old version.
+
+  20 Jul 2006; Markus Rothe <corsair@gentoo.org> rtorrent-0.5.3.ebuild:
+  Stable on ppc64; bug #139716
+
+  10 Jul 2006; Joshua Jackson <tsunam@gentoo.org> rtorrent-0.5.3.ebuild:
+  Stable x86; bug #139716
+
+  10 Jul 2006; Daniel Gryniewicz <dang@gentoo.org> rtorrent-0.5.3.ebuild:
+  Marked stable on amd64 per bug #139716
+
+  09 Jul 2006; Joseph Jezak <josejx@gentoo.org> rtorrent-0.5.3.ebuild:
+  Marked ppc stable for bug #139716.
+
+*rtorrent-0.6.0 (08 Jul 2006)
+
+  08 Jul 2006; Diego Pettenò <flameeyes@gentoo.org>
+  -files/rtorrent-0.5.1-template.patch, -rtorrent-0.5.0.ebuild,
+  -rtorrent-0.5.1.ebuild, -rtorrent-0.5.2.ebuild, +rtorrent-0.6.0.ebuild:
+  Version bump to latest version, drop old version.
+
+*rtorrent-0.5.3 (23 May 2006)
+
+  23 May 2006; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.5.3.ebuild:
+  Version bump.
+
+*rtorrent-0.5.2 (19 May 2006)
+
+  19 May 2006; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.5.2.ebuild:
+  Version bump.
+
+  05 May 2006; Diego Pettenò <flameeyes@gentoo.org>
+  -files/rtorrent-0.5.1-build.patch, +files/rtorrent-0.5.1-template.patch,
+  rtorrent-0.5.1.ebuild:
+  Update patch for GCC 4.1 from upstream.
+
+*rtorrent-0.5.1 (05 May 2006)
+
+  05 May 2006; Diego Pettenò <flameeyes@gentoo.org>
+  +files/rtorrent-0.5.1-build.patch, +rtorrent-0.5.1.ebuild:
+  Version bump.
+
+  23 Apr 2006; Diego Pettenò <flameeyes@gentoo.org> rtorrent-0.5.0.ebuild:
+  Add ~x86-fbsd keyword.
+
+  20 Apr 2006; Diego Pettenò <flameeyes@gentoo.org>
+  -files/rtorrent-0.4.4-inttypes.patch, -rtorrent-0.3.6.ebuild,
+  -rtorrent-0.4.4.ebuild, -rtorrent-0.4.5.ebuild:
+  Drop old versions.
+
+*rtorrent-0.5.0 (06 Apr 2006)
+
+  06 Apr 2006; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.5.0.ebuild:
+  Version bump.
+
+  17 Feb 2006; Joseph Jezak <josejx@gentoo.org> rtorrent-0.4.3.ebuild:
+  Marked ppc stable for bug #121600.
+
+  16 Feb 2006; Luis Medinas <metalgod@gentoo.org> rtorrent-0.4.3.ebuild:
+  Stable on amd64. See bug #121600.
+
+*rtorrent-0.4.5 (16 Feb 2006)
+
+  16 Feb 2006; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.4.5.ebuild:
+  New upstream version.
+
+  15 Feb 2006; Markus Rothe <corsair@gentoo.org> rtorrent-0.4.3.ebuild:
+  Stable on ppc64; bug #121600
+
+  09 Feb 2006; Joshua Jackson <tsunam@gentoo.org> rtorrent-0.4.3.ebuild:
+  Stable on x86; bug #121600
+
+  06 Feb 2006; Diego Pettenò <flameeyes@gentoo.org>
+  +files/rtorrent-0.4.4-inttypes.patch, rtorrent-0.4.4.ebuild:
+  Add patch to fix building on some systems, bug #121771.
+
+  04 Feb 2006; Diego Pettenò <flameeyes@gentoo.org> -rtorrent-0.4.0.ebuild,
+  -rtorrent-0.4.1.ebuild, -rtorrent-0.4.2.ebuild:
+  Drop old non-stable-candidate versions.
+
+*rtorrent-0.4.4 (04 Feb 2006)
+
+  04 Feb 2006; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.4.4.ebuild:
+  Bump following upstream.
+
+*rtorrent-0.4.3 (17 Jan 2006)
+
+  17 Jan 2006; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.4.3.ebuild:
+  Bump to latest version.
+
+  17 Jan 2006; Diego Pettenò <flameeyes@gentoo.org> rtorrent-0.4.2.ebuild:
+  -Os seems to create bad exception handling, replace with -O2.
+
+*rtorrent-0.4.2 (09 Jan 2006)
+
+  09 Jan 2006; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.4.2.ebuild:
+  Bump to last version.
+
+  26 Dec 2005; Jason Wever <weeve@gentoo.org> rtorrent-0.4.1.ebuild:
+  Added ~sparc keyword wrt bug #116604.
+
+*rtorrent-0.4.1 (20 Dec 2005)
+
+  20 Dec 2005; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.4.1.ebuild:
+  Bump to latest version.
+
+  29 Nov 2005; Diego Pettenò <flameeyes@gentoo.org> -rtorrent-0.3.0.ebuild:
+  Remove old version.
+
+  25 Nov 2005; Markus Rothe <corsair@gentoo.org> rtorrent-0.4.0.ebuild:
+  Added ~ppc64 keyword
+
+  25 Nov 2005; Mark Loeser <halcy0n@gentoo.org> rtorrent-0.3.6.ebuild:
+  Stable on x86; bug #112928
+
+*rtorrent-0.4.0 (21 Nov 2005)
+
+  21 Nov 2005; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.4.0.ebuild:
+  Bump following upstream.
+
+  19 Nov 2005; <dang@gentoo.org> rtorrent-0.3.6.ebuild:
+  Marked stable on amd64
+
+  05 Nov 2005; Diego Pettenò <flameeyes@gentoo.org> -rtorrent-0.3.5.ebuild:
+  Remove old version.
+
+*rtorrent-0.3.6 (18 Oct 2005)
+
+  18 Oct 2005; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.3.6.ebuild:
+  Bumped following upstream.
+
+  13 Oct 2005; Mark Loeser <halcy0n@gentoo.org> rtorrent-0.3.0.ebuild:
+  Stable on x86
+
+  11 Oct 2005; Diego Pettenò <flameeyes@gentoo.org> -rtorrent-0.3.2.ebuild,
+  -rtorrent-0.3.3.ebuild, -rtorrent-0.3.4.ebuild:
+  Remove old versions.
+
+*rtorrent-0.3.5 (28 Sep 2005)
+
+  28 Sep 2005; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.3.5.ebuild:
+  Version bump.
+
+*rtorrent-0.3.4 (18 Sep 2005)
+
+  18 Sep 2005; Diego Pettenò <flameeyes@gentoo.org> rtorrent-0.3.3.ebuild,
+  +rtorrent-0.3.4.ebuild:
+  Updated to latest upstream version. rtorrent-0.3.3 can work with libtorrent
+  0.7.4.
+
+  02 Sep 2005; Diego Pettenò <flameeyes@gentoo.org>
+  -files/rtorrent-0.2.3-fix.patch, -rtorrent-0.2.4.ebuild,
+  -rtorrent-0.2.7-r1.ebuild, rtorrent-0.3.0.ebuild:
+  Marked 0.3.0 stable on amd64. Removed old ebuilds.
+
+*rtorrent-0.3.3 (02 Sep 2005)
+
+  02 Sep 2005; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.3.3.ebuild:
+  Updated to latest upstream version.
+
+*rtorrent-0.3.2 (16 Aug 2005)
+
+  16 Aug 2005; Diego Pettenò <flameeyes@gentoo.org> -rtorrent-0.3.1.ebuild,
+  +rtorrent-0.3.2.ebuild:
+  Update to bugfix release 0.3.2.
+
+*rtorrent-0.3.1 (13 Aug 2005)
+
+  13 Aug 2005; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.3.1.ebuild:
+  Updated to latest upstream version.
+
+  31 Jul 2005; Diego Pettenò <flameeyes@gentoo.org> -rtorrent-0.2.5.ebuild,
+  -rtorrent-0.2.6.ebuild, -rtorrent-0.2.7.ebuild:
+  Removed old versions.
+
+*rtorrent-0.3.0 (19 Jul 2005)
+
+  19 Jul 2005; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.3.0.ebuild:
+  New upstream version.
+
+*rtorrent-0.2.7-r1 (16 Jul 2005)
+
+  16 Jul 2005; Diego Pettenò <flameeyes@gentoo.org>
+  +rtorrent-0.2.7-r1.ebuild:
+  Filter -fomit-frame-pointer on x86 as it clash with execeptions handling.
+
+*rtorrent-0.2.7 (07 Jul 2005)
+
+  07 Jul 2005; Diego Pettenò <flameeyes@gentoo.org> -rtorrent-0.2.2.ebuild,
+  -rtorrent-0.2.3.ebuild, rtorrent-0.2.4.ebuild, +rtorrent-0.2.7.ebuild:
+  New upstream version.
+  Marked stable the last version with big bugs fixes.
+  Removed previous versions.
+
+*rtorrent-0.2.6 (26 Jun 2005)
+
+  26 Jun 2005; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.2.6.ebuild:
+  New upstream version.
+
+*rtorrent-0.2.5 (15 Jun 2005)
+
+  15 Jun 2005; Diego Pettenò <flameeyes@gentoo.org> rtorrent-0.2.2.ebuild,
+  rtorrent-0.2.3.ebuild, rtorrent-0.2.4.ebuild, +rtorrent-0.2.5.ebuild:
+  New upstream version. Also make all rtorrent version depend on the
+  libtorrent version they are released with.
+
+*rtorrent-0.2.4 (08 Jun 2005)
+
+  08 Jun 2005; Diego Pettenò <flameeyes@gentoo.org> +rtorrent-0.2.4.ebuild:
+  Added latest upstream version (with notice about new configuration file).
+
+  31 May 2005; David Holm <dholm@gentoo.org> rtorrent-0.2.3.ebuild:
+  Added to ~ppc.
+
+*rtorrent-0.2.3 (30 May 2005)
+
+  30 May 2005; Diego Pettenò <flameeyes@gentoo.org>
+  +files/rtorrent-0.2.3-fix.patch, +rtorrent-0.2.3.ebuild:
+  Update to latest upstream version. Close #94532.
+
+  26 May 2005; Sven Wegener <swegener@gentoo.org> metadata.xml:
+  'no-herd' instead of empty herd tag
+
+*rtorrent-0.2.2 (05 May 2005)
+
+  05 May 2005; Diego Pettenò <flameeyes@gentoo.org> +metadata.xml,
+  +rtorrent-0.2.2.ebuild:
+  Added rtorrent client based on libtorrent as now is packaged standalone.
+  Closes #86259.
+

File net-p2p/rtorrent/Manifest

+AUX rtorrent-0.8.2-gcc34.patch 659 RMD160 c89a0c7b2acb6db4ce19fbb7a75f1da65638cd2b SHA1 d1afe3ca20a9b9b60056b7941ae7f81dcee558a0 SHA256 a89b48546be2c0728129feff223ed4e03a7c40bbc37e9bead9c13cf20c5cd00d
+AUX rtorrent-0.8.6-canvas-fix.patch 11607 RMD160 01f3be5ecf0769a44e31f9852eb3da5454e85c75 SHA1 4d60d95845df05c9864ca50d3f84726d2b93ab14 SHA256 a843dcd8c3b7fe0179c24d53cb485d2f11156a189e58911bbd14e5e30db71925
+AUX rtorrent-0.8.6-ncurses.patch 572 RMD160 c0e390c444e50d69d8dbe4727c76b5962651a570 SHA1 2267dce2ddfb1ea865ba50c95e4a5beaf24da533 SHA256 4bcc6f33fad67d14f44cfdc63409fc94ef917dc120c46e60ce175d36af3fcb02
+AUX rtorrent-0.8.7-canvas-fix.patch 10095 RMD160 67315e412a1d071c32366ff0920ae2fe69ac4c6f SHA1 ead1c7099cd42fc48b3194c3e53a9b2d4e2d4311 SHA256 a40a88d17e3090d3a7244ae701b049687b3646f8cbecfe40a1456306b6b56fd7
+AUX rtorrent-0.8.9-canvas-fix.patch 9995 RMD160 e9d7c870b8a77e46fa8556544de6a5b39c3accb1 SHA1 952b4bb18e5001c8257a6dcecda66a5d0817d781 SHA256 f53eca85da4800f123f1f482dd49e07d40fcc4055e84f9450f3894cc51259415
+AUX rtorrent-0.8.9-includes-unistd.patch 300 RMD160 031d2eeb32d0db38bfed5b7e9f65d73cd5f4e508 SHA1 8e47af558f26dfa55ab22ff2ec6496473bd5598e SHA256 9a9afb7b8edf62c2765aa9b8cad8f5089f6d53b1591484146d2c54ffdfb8a1f9
+AUX rtorrent-0.8.9-ncurses.patch 618 RMD160 61969665a70c02d7a5e810c40c33d190191b0abf SHA1 cf9e67d7d6a17f22e9c081307e14dfe0bca6345e SHA256 67002221b79bb5e43e8ed05ae0ebb22130c10eaf5739acbb1fb424050f2e2a05
+AUX rtorrentd.conf 13 RMD160 aafd4d8440f40ae380b482876968f80267dff3bd SHA1 8b50885e27a2ff85cd28fccb56c11ead26d0ba49 SHA256 6725e7a3ed74f1432bd6b317f2aec7f9609bc20dd81dbbfcc632342c9f99177b
+AUX rtorrentd.init 837 RMD160 d20e886080480cb4f87dc7272b36db22ca4d76da SHA1 35e261746de7ca1396240047e1b2bd426a8b1857 SHA256 d8b29a500439a6be30b94b29af3f6b7fa7c61c067af59cf46b9d197268858242
+DIST rtorrent-0.8.9.tar.gz 570904 RMD160 d79eacf6d63d13514c07c1c35a662fea5f35aef1 SHA1 0ac51c185e98b5a386e5f1a07bca9a9963e2d6ce SHA256 cca70eb36a0c176bbd6fdb3afe2bc9f163fa4c9377fc33bc29689dec60cf6d84
+EBUILD rtorrent-0.8.9.ebuild 1912 RMD160 597f16486a5d12f1ae84539becbdd48eae49788f SHA1 7c54e09c3a1f63a76a3abe37e2548b2bdb4d24bf SHA256 82d832cdb907fb7248005f33365766ec73030507ca88cddb3a70776d81102f33
+MISC ChangeLog 24564 RMD160 ce5107e5ddbafdb7d218f3b8ecff508c60d616a3 SHA1 5d5b0fa108f0f9fcb4d4683b38a04f45bf3bae18 SHA256 cc8cd9ba8093efb5429a0d0712cc432cef6a5924ea9b73fe11c71b026d6d946c
+MISC metadata.xml 461 RMD160 20828b74a80b51c1df06f6dba3aa63fbe7eec437 SHA1 7d50936803d36c9e88d2030bcf6647d4cede9d09 SHA256 db7942b39f614d72ff07b2ca64acbddd975cc016761d0037eb9edf786a4b295d

File net-p2p/rtorrent/files/rtorrent-0.8.2-gcc34.patch

+diff -rwud rtorrent-0.8.2/src/rpc/command.h rtorrent-0.8.2-my/src/rpc/command.h
+--- rtorrent-0.8.2/src/rpc/command.h	2008-05-07 14:19:10.000000000 +0200
++++ rtorrent-0.8.2-my/src/rpc/command.h	2008-06-09 02:23:34.000000000 +0200
+@@ -73,10 +73,8 @@
+   rt_triple(const T1& a, const T2& b, const T3& c) :
+     base_type(a, b), third(c) {}
+ 
+-  template <typename U1, typename U2>
+-  rt_triple(const std::pair<U1, U2>& b) : base_type(b), third() {}
++  rt_triple(const base_type& b) : base_type(b), third() {}
+ 
+-  template <typename U1, typename U2, typename U3>
+   rt_triple(const rt_triple& src) :
+     base_type(src.first, src.second), third(src.third) {}
+ };

File net-p2p/rtorrent/files/rtorrent-0.8.6-canvas-fix.patch

+diff -crB /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/command_network.cc ./src/command_network.cc
+*** /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/command_network.cc	2009-11-12 09:19:40.000000000 +0100
+--- ./src/command_network.cc	2009-12-17 19:27:05.783955715 +0100
+***************
+*** 495,498 ****
+--- 495,502 ----
+    // Not really network stuff:
+    ADD_VARIABLE_BOOL  ("handshake_log", false);
+    ADD_VARIABLE_STRING("log.tracker", "");
++   ADD_COMMAND_VALUE_TRI("done_fg_color",     rak::make_mem_fun(control->ui(), &ui::Root::set_done_fg_color), rak::make_mem_fun(control->ui(), &ui::Root::get_done_fg_color));
++   ADD_COMMAND_VALUE_TRI("done_bg_color",     rak::make_mem_fun(control->ui(), &ui::Root::set_done_bg_color), rak::make_mem_fun(control->ui(), &ui::Root::get_done_bg_color));
++   ADD_COMMAND_VALUE_TRI("active_fg_color",     rak::make_mem_fun(control->ui(), &ui::Root::set_active_fg_color), rak::make_mem_fun(control->ui(), &ui::Root::get_active_fg_color));
++   ADD_COMMAND_VALUE_TRI("active_bg_color",     rak::make_mem_fun(control->ui(), &ui::Root::set_active_bg_color), rak::make_mem_fun(control->ui(), &ui::Root::get_active_bg_color));
+  }
+diff -crB /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/display/canvas.cc ./src/display/canvas.cc
+*** /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/display/canvas.cc	2009-11-12 09:03:47.000000000 +0100
+--- ./src/display/canvas.cc	2009-12-17 19:27:05.783955715 +0100
+***************
+*** 92,97 ****
+--- 92,101 ----
+    m_isInitialized = true;
+  
+    initscr();
++   start_color();
++   use_default_colors();
++   init_pair(2, -1, -1);
++   init_pair(1, -1, -1);
+    raw();
+    noecho();
+    nodelay(stdscr, TRUE);
+Only in ./src/display: canvas.cc.orig
+diff -crB /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/display/window_download_list.cc ./src/display/window_download_list.cc
+*** /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/display/window_download_list.cc	2009-11-12 09:03:47.000000000 +0100
+--- ./src/display/window_download_list.cc	2009-12-17 19:27:05.783955715 +0100
+***************
+*** 37,42 ****
+--- 37,43 ----
+  #include "config.h"
+  
+  #include <rak/algorithm.h>
++ #include <torrent/rate.h>
+  
+  #include "core/download.h"
+  #include "core/view.h"
+***************
+*** 96,107 ****
+      char* position;
+      char* last = buffer + m_canvas->width() - 2 + 1;
+  
+      position = print_download_title(buffer, last, *range.first);
+!     m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
+      
+      position = print_download_info(buffer, last, *range.first);
+      m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
+  
+      position = print_download_status(buffer, last, *range.first);
+      m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
+  
+--- 97,126 ----
+      char* position;
+      char* last = buffer + m_canvas->width() - 2 + 1;
+  
++     if( pos >= m_canvas->height() ) break;
+      position = print_download_title(buffer, last, *range.first);
+!     m_canvas->print(0, pos, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
+!     if( (*range.first)->is_done() ) {
+!       if( (*range.first)->download()->up_rate()->rate() != 0 ) {
+!         m_canvas->set_attr(0, pos, m_canvas->width()-1, A_BOLD, 2);
+!       } else {
+!         m_canvas->set_attr(0, pos, m_canvas->width()-1, A_NORMAL, 2);
+!       }
+!     } else if( (*range.first)->download()->is_active() ) {
+!       if( (*range.first)->download()->down_rate()->rate() != 0 ) {
+!         m_canvas->set_attr(0, pos, m_canvas->width()-1, A_BOLD, 1);
+!       } else {
+!         m_canvas->set_attr(0, pos, m_canvas->width()-1, A_NORMAL, 1);
+!       }
+!     }
+!     pos++;
+      
++     if( pos >= m_canvas->height() ) break;
++ 
+      position = print_download_info(buffer, last, *range.first);
+      m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
+  
++     if( pos >= m_canvas->height() ) break;
+      position = print_download_status(buffer, last, *range.first);
+      m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
+  
+***************
+*** 109,112 ****
+--- 128,167 ----
+    }    
+  }
+  
++ void
++ WindowDownloadList::set_done_fg_color(int64_t color) {
++   short fg, bg;
++   pair_content(2, &fg, &bg);
++   if( color < 0 ) color = -1;
++   color = color % 8;
++   init_pair(2, (short)color, bg);
++ }
++ 
++ void
++ WindowDownloadList::set_done_bg_color(int64_t color) {
++   short fg, bg;
++   pair_content(2, &fg, &bg);
++   if( color < 0 ) color = -1;
++   color = color % 8;
++   init_pair(2, fg, (short)color);
++ }
++ 
++ void
++ WindowDownloadList::set_active_fg_color(int64_t color) {
++   short fg, bg;
++   pair_content(1, &fg, &bg);
++   if( color < 0 ) color = -1;
++   color = color % 8;
++   init_pair(1, (short)color, bg);
++ }
++ 
++ void
++ WindowDownloadList::set_active_bg_color(int64_t color) {
++   short fg, bg;
++   pair_content(1, &fg, &bg);
++   if( color < 0 ) color = -1;
++   color = color % 8;
++   init_pair(1, fg, (short)color);
++ }
++ 
+  }
+diff -crB /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/display/window_download_list.h ./src/display/window_download_list.h
+*** /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/display/window_download_list.h	2009-11-12 09:03:47.000000000 +0100
+--- ./src/display/window_download_list.h	2009-12-17 19:27:05.783955715 +0100
+***************
+*** 59,64 ****
+--- 59,68 ----
+    virtual void        redraw();
+  
+    void                set_view(core::View* l);
++   void                set_done_fg_color(int64_t color);
++   void                set_done_bg_color(int64_t color);
++   void                set_active_fg_color(int64_t color);
++   void                set_active_bg_color(int64_t color);
+  
+  private:
+    core::View*         m_view;
+diff -crB /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/ui/download_list.cc ./src/ui/download_list.cc
+*** /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/ui/download_list.cc	2009-11-12 09:03:48.000000000 +0100
+--- ./src/ui/download_list.cc	2009-12-17 19:27:05.783955715 +0100
+***************
+*** 137,142 ****
+--- 137,147 ----
+    current_view()->next_focus();
+  }
+  
++ display::WindowDownloadList*
++ DownloadList::current_window_list() {
++   return dynamic_cast<ElementDownloadList*>(m_uiArray[DISPLAY_DOWNLOAD_LIST])->window();
++ }
++ 
+  void
+  DownloadList::activate_display(Display displayType) {
+    if (!is_active())
+Only in ./src/ui: download_list.cc.orig
+diff -crB /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/ui/download_list.h ./src/ui/download_list.h
+*** /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/ui/download_list.h	2009-11-12 09:03:48.000000000 +0100
+--- ./src/ui/download_list.h	2009-12-17 19:27:05.783955715 +0100
+***************
+*** 101,106 ****
+--- 101,107 ----
+    void                activate_display(Display d);
+  
+    core::View*         current_view();
++   display::WindowDownloadList* current_window_list();
+    void                set_current_view(const std::string& name);
+  
+    void                slot_open_uri(SlotOpenUri s) { m_slotOpenUri = s; }
+diff -crB /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/ui/element_download_list.h ./src/ui/element_download_list.h
+*** /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/ui/element_download_list.h	2009-11-12 09:03:48.000000000 +0100
+--- ./src/ui/element_download_list.h	2009-12-17 19:27:05.783955715 +0100
+***************
+*** 60,65 ****
+--- 60,66 ----
+    void                disable();
+  
+    core::View*         view() { return m_view; }
++   WDownloadList*      window() { return m_window; }
+    void                set_view(core::View* l);
+  
+    void                receive_command(const char* cmd);
+Only in ./src/ui: element_download_list.h.orig
+diff -crB /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/ui/root.cc ./src/ui/root.cc
+*** /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/ui/root.cc	2009-11-12 09:03:48.000000000 +0100
+--- ./src/ui/root.cc	2009-12-17 19:27:05.783955715 +0100
+***************
+*** 44,49 ****
+--- 44,50 ----
+  
+  #include "core/manager.h"
+  #include "display/frame.h"
++ #include "display/window_download_list.h"
+  #include "display/window_http_queue.h"
+  #include "display/window_title.h"
+  #include "display/window_input.h"
+***************
+*** 65,71 ****
+    m_windowTitle(NULL),
+    m_windowHttpQueue(NULL),
+    m_windowInput(NULL),
+!   m_windowStatusbar(NULL) {
+  }
+  
+  void
+--- 66,76 ----
+    m_windowTitle(NULL),
+    m_windowHttpQueue(NULL),
+    m_windowInput(NULL),
+!   m_windowStatusbar(NULL),
+!   done_fg_color(-1),
+!   done_bg_color(-1),
+!   active_fg_color(-1),
+!   active_bg_color(-1) {
+  }
+  
+  void
+***************
+*** 97,102 ****
+--- 102,111 ----
+    setup_keys();
+  
+    m_downloadList->activate(rootFrame->frame(1));
++   m_downloadList->current_window_list()->set_done_fg_color(done_fg_color);
++   m_downloadList->current_window_list()->set_done_bg_color(done_bg_color);
++   m_downloadList->current_window_list()->set_active_fg_color(active_fg_color);
++   m_downloadList->current_window_list()->set_active_bg_color(active_bg_color);
+  }
+  
+  void
+***************
+*** 219,224 ****
+--- 228,273 ----
+      torrent::set_max_unchoked(maxUnchoked);
+  }
+  
++ int
++ Root::get_done_fg_color() {
++   return done_fg_color;
++ }
++ 
++ void
++ Root::set_done_fg_color(int64_t color) {
++   done_fg_color = color;
++ }
++ 
++ int
++ Root::get_done_bg_color() {
++   return done_bg_color;
++ }
++ 
++ void
++ Root::set_done_bg_color(int64_t color) {
++   done_bg_color = color;
++ }
++ 
++ int
++ Root::get_active_fg_color() {
++   return active_fg_color;
++ }
++ 
++ void
++ Root::set_active_fg_color(int64_t color) {
++   active_fg_color = color;
++ }
++ 
++ int
++ Root::get_active_bg_color() {
++   return active_bg_color;
++ }
++ 
++ void
++ Root::set_active_bg_color(int64_t color) {
++   active_bg_color = color;
++ }
++ 
+  void
+  Root::adjust_down_throttle(int throttle) {
+    set_down_throttle(std::max<int>(torrent::down_throttle_global()->max_rate() / 1024 + throttle, 0));
+Only in ./src/ui: root.cc.orig
+diff -crB /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/ui/root.h ./src/ui/root.h
+*** /home/regj/misc/rtorrent-color-orig/src/rtorrent-0.8.6/src/ui/root.h	2009-11-12 09:03:48.000000000 +0100
+--- ./src/ui/root.h	2009-12-17 19:27:05.783955715 +0100
+***************
+*** 82,87 ****
+--- 82,95 ----
+    // Rename to raw or something, make base function.
+    void                set_down_throttle_i64(int64_t throttle) { set_down_throttle(throttle >> 10); }
+    void                set_up_throttle_i64(int64_t throttle)   { set_up_throttle(throttle >> 10); }
++   int                 get_done_fg_color();
++   void                set_done_fg_color(int64_t color);
++   int                 get_done_bg_color();
++   void                set_done_bg_color(int64_t color);
++   int                 get_active_fg_color();
++   void                set_active_fg_color(int64_t color);
++   int                 get_active_bg_color();
++   void                set_active_bg_color(int64_t color);
+  
+    void                adjust_down_throttle(int throttle);
+    void                adjust_up_throttle(int throttle);
+***************
+*** 105,110 ****
+--- 113,122 ----
+    WStatusbar*         m_windowStatusbar;
+  
+    input::Bindings     m_bindings;
++   int64_t                done_fg_color;
++   int64_t                done_bg_color;
++   int64_t                active_fg_color;
++   int64_t                active_bg_color;
+  };

File net-p2p/rtorrent/files/rtorrent-0.8.6-ncurses.patch

+rtorrent segfaults with latest ncurses (5.8).
+this patch fixes the issue.
+
+https://bugs.gentoo.org/show_bug.cgi?id=358271
+https://bugzilla.redhat.com/show_bug.cgi?id=682454
+http://libtorrent.rakshasa.no/ticket/2518
+--- src/display/canvas.h
++++ src/display/canvas.h
+@@ -48,7 +48,7 @@ class Canvas {
+ public:
+   typedef std::vector<Attributes> attributes_list;
+ 
+-  Canvas(int x = 0, int y = 0, int width = 0, int height = 0) :
++  Canvas(int x = 0, int y = 0, int width = 1, int height = 1) :
+     m_window(newwin(height, width, y, x)) {}
+   ~Canvas() { delwin(m_window); }

File net-p2p/rtorrent/files/rtorrent-0.8.7-canvas-fix.patch

+Index: rtorrent/src/display/window_download_list.h
+===================================================================
+--- rtorrent/src/display/window_download_list.h	(revision 1163)
++++ rtorrent/src/display/window_download_list.h	(working copy)
+@@ -59,6 +59,10 @@
+   virtual void        redraw();
+ 
+   void                set_view(core::View* l);
++  void                set_done_fg_color(int64_t color);
++  void                set_done_bg_color(int64_t color);
++  void                set_active_fg_color(int64_t color);
++  void                set_active_bg_color(int64_t color);
+ 
+ private:
+   core::View*         m_view;
+Index: rtorrent/src/display/canvas.cc
+===================================================================
+--- rtorrent/src/display/canvas.cc	(revision 1163)
++++ rtorrent/src/display/canvas.cc	(working copy)
+@@ -92,6 +92,10 @@
+   m_isInitialized = true;
+ 
+   initscr();
++  start_color();
++  use_default_colors();
++  init_pair(2, -1, -1);
++  init_pair(1, -1, -1);
+   raw();
+   noecho();
+   nodelay(stdscr, TRUE);
+Index: rtorrent/src/display/window_download_list.cc
+===================================================================
+--- rtorrent/src/display/window_download_list.cc	(revision 1163)
++++ rtorrent/src/display/window_download_list.cc	(working copy)
+@@ -37,6 +37,7 @@
+ #include "config.h"
+ 
+ #include <rak/algorithm.h>
++#include <torrent/rate.h>
+ 
+ #include "core/download.h"
+ #include "core/view.h"
+@@ -96,12 +97,30 @@
+     char* position;
+     char* last = buffer + m_canvas->width() - 2 + 1;
+ 
++    if( pos >= m_canvas->height() ) break;
+     position = print_download_title(buffer, last, *range.first);
+-    m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
++    m_canvas->print(0, pos, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
++    if( (*range.first)->is_done() ) {
++      if( (*range.first)->info()->up_rate()->rate() != 0 ) {
++        m_canvas->set_attr(0, pos, m_canvas->width()-1, A_BOLD, 2);
++      } else {
++        m_canvas->set_attr(0, pos, m_canvas->width()-1, A_NORMAL, 2);
++      }
++    } else if( (*range.first)->info()->is_active() ) {
++      if( (*range.first)->info()->down_rate()->rate() != 0 ) {
++        m_canvas->set_attr(0, pos, m_canvas->width()-1, A_BOLD, 1);
++      } else {
++        m_canvas->set_attr(0, pos, m_canvas->width()-1, A_NORMAL, 1);
++      }
++    }
++    pos++;
++
++    if( pos >= m_canvas->height() ) break;
+     
+     position = print_download_info(buffer, last, *range.first);
+     m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
+ 
++    if( pos >= m_canvas->height() ) break;
+     position = print_download_status(buffer, last, *range.first);
+     m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
+ 
+@@ -109,4 +128,41 @@
+   }    
+ }
+ 
++void
++WindowDownloadList::set_done_fg_color(int64_t color) {
++  short fg, bg;
++  pair_content(2, &fg, &bg);
++  if( color < 0 ) color = -1;
++  color = color % 8;
++  init_pair(2, (short)color, bg);
+ }
++
++void
++WindowDownloadList::set_done_bg_color(int64_t color) {
++  short fg, bg;
++  pair_content(2, &fg, &bg);
++  if( color < 0 ) color = -1;
++  color = color % 8;
++  init_pair(2, fg, (short)color);
++}
++
++void
++WindowDownloadList::set_active_fg_color(int64_t color) {
++  short fg, bg;
++  pair_content(1, &fg, &bg);
++  if( color < 0 ) color = -1;
++  color = color % 8;
++  init_pair(1, (short)color, bg);
++}
++
++void
++WindowDownloadList::set_active_bg_color(int64_t color) {
++  short fg, bg;
++  pair_content(1, &fg, &bg);
++  if( color < 0 ) color = -1;
++  color = color % 8;
++  init_pair(1, fg, (short)color);
++}
++ 
++}
++
+Index: rtorrent/src/command_network.cc
+===================================================================
+--- rtorrent/src/command_network.cc	(revision 1163)
++++ rtorrent/src/command_network.cc	(working copy)
+@@ -506,4 +506,15 @@
+   CMD2_ANY         ("dht.statistics",        std::tr1::bind(&core::DhtManager::dht_statistics, control->dht_manager()));
+   CMD2_ANY         ("dht.throttle.name",     std::tr1::bind(&core::DhtManager::throttle_name, control->dht_manager()));
+   CMD2_ANY_STRING_V("dht.throttle.name.set", std::tr1::bind(&core::DhtManager::set_throttle_name, control->dht_manager(), std::tr1::placeholders::_2));
++
++
++  CMD2_ANY         ("set_done_fg_color",    std::tr1::bind(&ui::Root::get_done_fg_color, control->ui()));
++  CMD2_ANY_VALUE_V ("done_fg_color",        std::tr1::bind(&ui::Root::set_done_fg_color, control->ui(), std::tr1::placeholders::_2));
++  CMD2_ANY         ("set_done_bg_color",    std::tr1::bind(&ui::Root::get_done_bg_color, control->ui()));
++  CMD2_ANY_VALUE_V ("done_bg_color",        std::tr1::bind(&ui::Root::set_done_bg_color, control->ui(), std::tr1::placeholders::_2));
++  CMD2_ANY         ("set_active_fg_color",  std::tr1::bind(&ui::Root::get_active_fg_color, control->ui()));
++  CMD2_ANY_VALUE_V ("active_fg_color",      std::tr1::bind(&ui::Root::set_active_fg_color, control->ui(), std::tr1::placeholders::_2));
++  CMD2_ANY         ("set_active_bg_color",  std::tr1::bind(&ui::Root::get_active_bg_color, control->ui()));
++  CMD2_ANY_VALUE_V ("active_bg_color",      std::tr1::bind(&ui::Root::set_active_bg_color, control->ui(), std::tr1::placeholders::_2));
++
+ }
+Index: rtorrent/src/ui/download_list.cc
+===================================================================
+--- rtorrent/src/ui/download_list.cc	(revision 1163)
++++ rtorrent/src/ui/download_list.cc	(working copy)
+@@ -137,6 +137,11 @@
+   current_view()->next_focus();
+ }
+ 
++display::WindowDownloadList*
++DownloadList::current_window_list() {
++  return dynamic_cast<ElementDownloadList*>(m_uiArray[DISPLAY_DOWNLOAD_LIST])->window();
++}
++
+ void
+ DownloadList::activate_display(Display displayType) {
+   if (!is_active())
+Index: rtorrent/src/ui/download_list.h
+===================================================================
+--- rtorrent/src/ui/download_list.h	(revision 1163)
++++ rtorrent/src/ui/download_list.h	(working copy)
+@@ -101,6 +101,7 @@
+   void                activate_display(Display d);
+ 
+   core::View*         current_view();
++  display::WindowDownloadList* current_window_list();
+   void                set_current_view(const std::string& name);
+ 
+   void                slot_open_uri(SlotOpenUri s) { m_slotOpenUri = s; }
+Index: rtorrent/src/ui/element_download_list.h
+===================================================================
+--- rtorrent/src/ui/element_download_list.h	(revision 1163)
++++ rtorrent/src/ui/element_download_list.h	(working copy)
+@@ -60,6 +60,7 @@
+   void                disable();
+ 
+   core::View*         view() { return m_view; }
++  WDownloadList*      window() { return m_window; }
+   void                set_view(core::View* l);
+ 
+   void                receive_command(const char* cmd);
+Index: rtorrent/src/ui/root.cc
+===================================================================
+--- rtorrent/src/ui/root.cc	(revision 1163)
++++ rtorrent/src/ui/root.cc	(working copy)
+@@ -44,6 +44,7 @@
+ 
+ #include "core/manager.h"
+ #include "display/frame.h"
++#include "display/window_download_list.h"
+ #include "display/window_http_queue.h"
+ #include "display/window_title.h"
+ #include "display/window_input.h"
+@@ -65,7 +66,11 @@
+   m_windowTitle(NULL),
+   m_windowHttpQueue(NULL),
+   m_windowInput(NULL),
+-  m_windowStatusbar(NULL) {
++  m_windowStatusbar(NULL),
++  done_fg_color(-1),
++  done_bg_color(-1),
++  active_fg_color(-1),
++  active_bg_color(-1) {
+ }
+ 
+ void
+@@ -97,6 +102,10 @@
+   setup_keys();
+ 
+   m_downloadList->activate(rootFrame->frame(1));
++  m_downloadList->current_window_list()->set_done_fg_color(done_fg_color);
++  m_downloadList->current_window_list()->set_done_bg_color(done_bg_color);
++  m_downloadList->current_window_list()->set_active_fg_color(active_fg_color);
++  m_downloadList->current_window_list()->set_active_bg_color(active_bg_color);
+ }
+ 
+ void
+@@ -219,7 +228,47 @@
+     torrent::set_max_unchoked(maxUnchoked);
+ }
+ 
++int
++Root::get_done_fg_color() {
++  return done_fg_color;
++}
++
+ void
++Root::set_done_fg_color(int64_t color) {
++  done_fg_color = color;
++}
++
++int
++Root::get_done_bg_color() {
++  return done_bg_color;
++}
++
++void
++Root::set_done_bg_color(int64_t color) {
++  done_bg_color = color;
++}
++
++int
++Root::get_active_fg_color() {
++  return active_fg_color;
++}
++
++void
++Root::set_active_fg_color(int64_t color) {
++  active_fg_color = color;
++}
++
++int
++Root::get_active_bg_color() {
++  return active_bg_color;
++}
++
++void
++Root::set_active_bg_color(int64_t color) {
++  active_bg_color = color;
++}
++
++void
+ Root::adjust_down_throttle(int throttle) {
+   set_down_throttle(std::max<int>(torrent::down_throttle_global()->max_rate() / 1024 + throttle, 0));
+ }
+Index: rtorrent/src/ui/root.h
+===================================================================
+--- rtorrent/src/ui/root.h	(revision 1163)
++++ rtorrent/src/ui/root.h	(working copy)
+@@ -82,7 +82,16 @@
+   // Rename to raw or something, make base function.
+   void                set_down_throttle_i64(int64_t throttle) { set_down_throttle(throttle >> 10); }
+   void                set_up_throttle_i64(int64_t throttle)   { set_up_throttle(throttle >> 10); }
++  int                 get_done_fg_color();
++  void                set_done_fg_color(int64_t color);
++  int                 get_done_bg_color();
++  void                set_done_bg_color(int64_t color);
++  int                 get_active_fg_color();
++  void                set_active_fg_color(int64_t color);
++  int                 get_active_bg_color();
++  void                set_active_bg_color(int64_t color);
+ 
++
+   void                adjust_down_throttle(int throttle);
+   void                adjust_up_throttle(int throttle);
+ 
+@@ -93,6 +102,11 @@
+ 
+   input::TextInput*   current_input();
+ 
++  int64_t                done_fg_color;
++  int64_t                done_bg_color;
++  int64_t                active_fg_color;
++  int64_t                active_bg_color;
++
+ private:
+   void                setup_keys();
+ 
+@@ -105,6 +119,7 @@
+   WStatusbar*         m_windowStatusbar;
+ 
+   input::Bindings     m_bindings;
++
+ };
+ 
+ }

File net-p2p/rtorrent/files/rtorrent-0.8.9-canvas-fix.patch

+Index: rtorrent/src/display/window_download_list.h
+===================================================================
+--- rtorrent/src/display/window_download_list.h	(revision 1163)
++++ rtorrent/src/display/window_download_list.h	(working copy)
+@@ -59,6 +59,10 @@
+   virtual void        redraw();
+ 
+   void                set_view(core::View* l);
++  void                set_done_fg_color(int64_t color);
++  void                set_done_bg_color(int64_t color);
++  void                set_active_fg_color(int64_t color);
++  void                set_active_bg_color(int64_t color);
+ 
+ private:
+   core::View*         m_view;
+Index: rtorrent/src/display/canvas.cc
+===================================================================
+--- rtorrent/src/display/canvas.cc	(revision 1163)
++++ rtorrent/src/display/canvas.cc	(working copy)
+@@ -92,6 +92,10 @@
+   m_isInitialized = true;
+ 
+   initscr();
++  start_color();
++  use_default_colors();
++  init_pair(2, -1, -1);
++  init_pair(1, -1, -1);
+   raw();
+   noecho();
+   nodelay(stdscr, TRUE);
+Index: rtorrent/src/display/window_download_list.cc
+===================================================================
+--- rtorrent/src/display/window_download_list.cc	(revision 1163)
++++ rtorrent/src/display/window_download_list.cc	(working copy)
+@@ -37,6 +37,7 @@
+ #include "config.h"
+ 
+ #include <rak/algorithm.h>
++#include <torrent/rate.h>
+ 
+ #include "core/download.h"
+ #include "core/view.h"
+@@ -96,12 +97,30 @@
+     char* position;
+     char* last = buffer + m_canvas->width() - 2 + 1;
+ 
++    if( pos >= m_canvas->height() ) break;
+     position = print_download_title(buffer, last, *range.first);
+-    m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
++    m_canvas->print(0, pos, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
++    if( (*range.first)->is_done() ) {
++      if( (*range.first)->info()->up_rate()->rate() != 0 ) {
++        m_canvas->set_attr(0, pos, m_canvas->width()-1, A_BOLD, 2);
++      } else {
++        m_canvas->set_attr(0, pos, m_canvas->width()-1, A_NORMAL, 2);
++      }
++    } else if( (*range.first)->info()->is_active() ) {
++      if( (*range.first)->info()->down_rate()->rate() != 0 ) {
++        m_canvas->set_attr(0, pos, m_canvas->width()-1, A_BOLD, 1);
++      } else {
++        m_canvas->set_attr(0, pos, m_canvas->width()-1, A_NORMAL, 1);
++      }
++    }
++    pos++;
++
++    if( pos >= m_canvas->height() ) break;
+     
+     position = print_download_info(buffer, last, *range.first);
+     m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
+ 
++    if( pos >= m_canvas->height() ) break;
+     position = print_download_status(buffer, last, *range.first);
+     m_canvas->print(0, pos++, "%c %s", range.first == m_view->focus() ? '*' : ' ', buffer);
+ 
+@@ -109,4 +128,41 @@
+   }    
+ }
+ 
++void
++WindowDownloadList::set_done_fg_color(int64_t color) {
++  short fg, bg;
++  pair_content(2, &fg, &bg);
++  if( color < 0 ) color = -1;
++  color = color % 8;
++  init_pair(2, (short)color, bg);
+ }
++
++void
++WindowDownloadList::set_done_bg_color(int64_t color) {
++  short fg, bg;
++  pair_content(2, &fg, &bg);
++  if( color < 0 ) color = -1;
++  color = color % 8;
++  init_pair(2, fg, (short)color);
++}
++
++void
++WindowDownloadList::set_active_fg_color(int64_t color) {
++  short fg, bg;
++  pair_content(1, &fg, &bg);
++  if( color < 0 ) color = -1;
++  color = color % 8;
++  init_pair(1, (short)color, bg);
++}
++
++void
++WindowDownloadList::set_active_bg_color(int64_t color) {
++  short fg, bg;
++  pair_content(1, &fg, &bg);
++  if( color < 0 ) color = -1;
++  color = color % 8;
++  init_pair(1, fg, (short)color);
++}
++ 
++}
++
+Index: rtorrent/src/command_network.cc
+===================================================================
+--- rtorrent/src/command_network.cc	(revision 1163)
++++ rtorrent/src/command_network.cc	(working copy)
+@@ -742,4 +742,13 @@
+   CMD2_ANY         ("dht.statistics",        std::bind(&core::DhtManager::dht_statistics, control->dht_manager()));
+   CMD2_ANY         ("dht.throttle.name",     std::bind(&core::DhtManager::throttle_name, control->dht_manager()));
+   CMD2_ANY_STRING_V("dht.throttle.name.set", std::bind(&core::DhtManager::set_throttle_name, control->dht_manager(), std::placeholders::_2));
++
++  CMD2_ANY        ("set_done_fg_color",   std::bind(&ui::Root::get_done_fg_color, control->ui()));
++  CMD2_ANY_VALUE_V("done_fg_color",       std::bind(&ui::Root::set_done_fg_color, control->ui(), std::placeholders::_2));
++  CMD2_ANY        ("set_done_bg_color",   std::bind(&ui::Root::get_done_bg_color, control->ui()));
++  CMD2_ANY_VALUE_V("done_bg_color",       std::bind(&ui::Root::set_done_bg_color, control->ui(), std::placeholders::_2));
++  CMD2_ANY        ("set_active_fg_color", std::bind(&ui::Root::get_active_fg_color, control->ui()));
++  CMD2_ANY_VALUE_V("active_fg_color",     std::bind(&ui::Root::set_active_fg_color, control->ui(), std::placeholders::_2));
++  CMD2_ANY        ("set_active_bg_color", std::bind(&ui::Root::get_active_bg_color, control->ui()));
++  CMD2_ANY_VALUE_V("active_bg_color",     std::bind(&ui::Root::set_active_bg_color, control->ui(), std::placeholders::_2));
+ }
+Index: rtorrent/src/ui/download_list.cc
+===================================================================
+--- rtorrent/src/ui/download_list.cc	(revision 1163)
++++ rtorrent/src/ui/download_list.cc	(working copy)
+@@ -137,6 +137,11 @@
+   current_view()->next_focus();
+ }
+ 
++display::WindowDownloadList*
++DownloadList::current_window_list() {
++  return dynamic_cast<ElementDownloadList*>(m_uiArray[DISPLAY_DOWNLOAD_LIST])->window();
++}
++
+ void
+ DownloadList::activate_display(Display displayType) {
+   if (!is_active())
+Index: rtorrent/src/ui/download_list.h
+===================================================================
+--- rtorrent/src/ui/download_list.h	(revision 1163)
++++ rtorrent/src/ui/download_list.h	(working copy)
+@@ -101,6 +101,7 @@
+   void                activate_display(Display d);
+ 
+   core::View*         current_view();
++  display::WindowDownloadList* current_window_list();
+   void                set_current_view(const std::string& name);
+ 
+   void                slot_open_uri(SlotOpenUri s) { m_slotOpenUri = s; }
+Index: rtorrent/src/ui/element_download_list.h
+===================================================================
+--- rtorrent/src/ui/element_download_list.h	(revision 1163)
++++ rtorrent/src/ui/element_download_list.h	(working copy)
+@@ -60,6 +60,7 @@
+   void                disable();
+ 
+   core::View*         view() { return m_view; }
++  WDownloadList*      window() { return m_window; }
+   void                set_view(core::View* l);
+ 
+   void                receive_command(const char* cmd);
+Index: rtorrent/src/ui/root.cc
+===================================================================
+--- rtorrent/src/ui/root.cc	(revision 1163)
++++ rtorrent/src/ui/root.cc	(working copy)
+@@ -44,6 +44,7 @@
+ 
+ #include "core/manager.h"
+ #include "display/frame.h"
++#include "display/window_download_list.h"
+ #include "display/window_http_queue.h"
+ #include "display/window_title.h"
+ #include "display/window_input.h"
+@@ -65,7 +66,11 @@
+   m_windowTitle(NULL),
+   m_windowHttpQueue(NULL),
+   m_windowInput(NULL),
+-  m_windowStatusbar(NULL) {
++  m_windowStatusbar(NULL),
++  done_fg_color(-1),
++  done_bg_color(-1),
++  active_fg_color(-1),
++  active_bg_color(-1) {
+ }
+ 
+ void
+@@ -97,6 +102,10 @@
+   setup_keys();
+ 
+   m_downloadList->activate(rootFrame->frame(1));
++  m_downloadList->current_window_list()->set_done_fg_color(done_fg_color);
++  m_downloadList->current_window_list()->set_done_bg_color(done_bg_color);
++  m_downloadList->current_window_list()->set_active_fg_color(active_fg_color);
++  m_downloadList->current_window_list()->set_active_bg_color(active_bg_color);
+ }
+ 
+ void
+@@ -219,7 +228,47 @@
+     torrent::set_max_unchoked(maxUnchoked);
+ }
+ 
++int
++Root::get_done_fg_color() {
++  return done_fg_color;
++}
++
+ void
++Root::set_done_fg_color(int64_t color) {
++  done_fg_color = color;
++}
++
++int
++Root::get_done_bg_color() {
++  return done_bg_color;
++}
++
++void
++Root::set_done_bg_color(int64_t color) {
++  done_bg_color = color;
++}
++
++int
++Root::get_active_fg_color() {
++  return active_fg_color;
++}
++
++void
++Root::set_active_fg_color(int64_t color) {
++  active_fg_color = color;
++}
++
++int
++Root::get_active_bg_color() {
++  return active_bg_color;
++}
++
++void
++Root::set_active_bg_color(int64_t color) {
++  active_bg_color = color;
++}
++
++void
+ Root::adjust_down_throttle(int throttle) {
+   set_down_throttle(std::max<int>(torrent::down_throttle_global()->max_rate() / 1024 + throttle, 0));
+ }
+Index: rtorrent/src/ui/root.h
+===================================================================
+--- rtorrent/src/ui/root.h	(revision 1163)
++++ rtorrent/src/ui/root.h	(working copy)
+@@ -82,7 +82,16 @@
+   // Rename to raw or something, make base function.
+   void                set_down_throttle_i64(int64_t throttle) { set_down_throttle(throttle >> 10); }
+   void                set_up_throttle_i64(int64_t throttle)   { set_up_throttle(throttle >> 10); }
++  int                 get_done_fg_color();
++  void                set_done_fg_color(int64_t color);
++  int                 get_done_bg_color();
++  void                set_done_bg_color(int64_t color);
++  int                 get_active_fg_color();
++  void                set_active_fg_color(int64_t color);
++  int                 get_active_bg_color();
++  void                set_active_bg_color(int64_t color);
+ 
++
+   void                adjust_down_throttle(int throttle);
+   void                adjust_up_throttle(int throttle);
+ 
+@@ -93,6 +102,11 @@
+ 
+   input::TextInput*   current_input();
+ 
++  int64_t                done_fg_color;
++  int64_t                done_bg_color;
++  int64_t                active_fg_color;
++  int64_t                active_bg_color;
++
+ private:
+   void                setup_keys();
+ 
+@@ -105,6 +119,7 @@
+   WStatusbar*         m_windowStatusbar;
+ 
+   input::Bindings     m_bindings;
++
+ };
+ 
+ }

File net-p2p/rtorrent/files/rtorrent-0.8.9-includes-unistd.patch

+diff --git a/src/thread_base.cc b/src/thread_base.cc
+index 4a02377..d59b9de 100644
+--- a/src/thread_base.cc
++++ b/src/thread_base.cc
+@@ -43,6 +43,7 @@
+ #include <cstring>
+ #include <iostream>
+ #include <signal.h>
++#include <unistd.h>
+ #include <rak/error_number.h>
+ #include <torrent/exceptions.h>
+ 

File net-p2p/rtorrent/files/rtorrent-0.8.9-ncurses.patch

+rtorrent segfaults with latest ncurses (5.8).
+this patch fixes the issue.
+
+https://bugs.gentoo.org/show_bug.cgi?id=358271
+https://bugzilla.redhat.com/show_bug.cgi?id=682454
+http://libtorrent.rakshasa.no/ticket/2518
+--- src/display/canvas.h
++++ src/display/canvas.h
+@@ -48,7 +48,7 @@
+ public:
+   typedef std::vector<Attributes> attributes_list;
+ 
+-  Canvas(int x = 0, int y = 0, int width = 0, int height = 0);
++  Canvas(int x = 0, int y = 0, int width = 1, int height = 1);
+   ~Canvas() { delwin(m_window); }
+ 
+   void                refresh()                                               { wnoutrefresh(m_window); }

File net-p2p/rtorrent/files/rtorrentd.conf

+USER="$USER"

File net-p2p/rtorrent/files/rtorrentd.init

+#!/sbin/runscript
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/rtorrent/files/rtorrentd.init,v 1.7 2011/05/09 21:34:21 sochotnicky Exp $
+
+depend() {
+	use net ypbind nis
+	after slapd mysqld postgresql
+}
+
+start() {
+	PWHOME="$(getent passwd $USER | awk -F: '{ print $6 }')"
+
+	ebegin "Starting rtorrent"
+	env TERM="xterm" \
+		start-stop-daemon \
+			--start \
+			--make-pidfile \
+			--pidfile /var/run/rtorrentd.pid \
+			--background \
+			--user $USER \
+			--chuid $USER \
+			--env HOME="${PWHOME:-/home/$USER}" \
+			--name rtorrent \
+			--exec /usr/bin/screen -- -D -m -S rtorrentd /usr/bin/rtorrent
+	eend $?
+}
+
+stop() {
+	ebegin "Stopping rtorrent"
+	start-stop-daemon --stop --signal 15 \
+			--pidfile /var/run/rtorrentd.pid
+	eend $?
+}

File net-p2p/rtorrent/metadata.xml

+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>net-p2p</herd>
+<longdescription lang="en">
+	Console BitTorrent client using ncurses based on libtorrent written in C++.
+</longdescription>
+<use>
+	<flag name='daemon'>Uses <pkg>app-misc/screen</pkg> to daemonize this
+		application
+	</flag>
+	<flag name='color'>Add custom color support for torrent list</flag>
+</use>
+
+</pkgmetadata>

File net-p2p/rtorrent/rtorrent-0.8.9.ebuild

+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/rtorrent/rtorrent-0.8.9.ebuild,v 1.2 2011/09/18 10:51:21 mgorny Exp $
+
+EAPI=4
+
+inherit autotools-utils eutils
+
+DESCRIPTION="BitTorrent Client using libtorrent"
+HOMEPAGE="http://libtorrent.rakshasa.no/"
+SRC_URI="http://libtorrent.rakshasa.no/downloads/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="color daemon debug ipv6 test xmlrpc"
+
+COMMON_DEPEND=">=net-libs/libtorrent-0.12.${PV##*.}
+	>=dev-libs/libsigc++-2.2.2:2
+	>=net-misc/curl-7.19.1
+	sys-libs/ncurses
+	xmlrpc? ( dev-libs/xmlrpc-c )"
+RDEPEND="${COMMON_DEPEND}
+	daemon? ( app-misc/screen )"
+DEPEND="${COMMON_DEPEND}
+	test? ( dev-util/cppunit )
+	dev-util/pkgconfig"
+
+RESTRICT=test
+
+src_prepare() {
+	local PATCHES=(
+		"${FILESDIR}"/${P}-ncurses.patch
+	)
+	autotools-utils_src_prepare
+
+	use color && EPATCH_OPTS="-p1" epatch "${FILESDIR}"/${P}-canvas-fix.patch
+	use color && EPATCH_OPTS="-p1" epatch "${FILESDIR}"/${P}-includes-unistd.patch
+}
+
+src_configure() {
+	local myeconfargs=(
+		--disable-dependency-tracking
+		$(use_enable debug)
+		$(use_enable ipv6)
+		$(use_with xmlrpc xmlrpc-c)
+	)
+
+	autotools-utils_src_configure
+}
+
+src_install() {
+	local DOCS=( AUTHORS README TODO doc/rtorrent.rc )
+
+	autotools-utils_src_install
+	doman doc/rtorrent.1
+
+	if use daemon; then
+		newinitd "${FILESDIR}/rtorrentd.init" rtorrentd
+		newconfd "${FILESDIR}/rtorrentd.conf" rtorrentd
+	fi
+}
+
+pkg_postinst() {
+	if use color; then
+		elog "rtorrent colors patch"
+		elog "Set colors using the options below in .rtorrent.rc:"
+		elog "Options: done_fg_color, done_bg_color, active_fg_color, active_bg_color"
+		elog "Colors: 0 = black, 1 = red, 2 = green, 3 = yellow, 4 = blue,"
+		elog "5 = magenta, 6 = cyan and 7 = white"
+		elog "Example: done_fg_color = 1"
+	fi
+}