From 2986ca34d6a646205f511a4d107ded4a0be0e996 Mon Sep 17 00:00:00 2001 From: codyopel Date: Thu, 9 Oct 2014 08:56:25 -0400 Subject: [PATCH] rtorrent-git: new package --- lib/maintainers.nix | 1 + pkgs/tools/networking/p2p/libtorrent/git.nix | 28 +++++++++ pkgs/tools/networking/p2p/rtorrent/git.nix | 63 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 ++ 4 files changed, 96 insertions(+) create mode 100644 pkgs/tools/networking/p2p/libtorrent/git.nix create mode 100644 pkgs/tools/networking/p2p/rtorrent/git.nix diff --git a/lib/maintainers.nix b/lib/maintainers.nix index 268a093c057..aedec427ab4 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -38,6 +38,7 @@ cfouche = "Chaddaï Fouché "; chaoflow = "Florian Friesdorf "; coconnor = "Corey O'Connor "; + codyopel = "Cody Opel "; copumpkin = "Dan Peebles "; coroa = "Jonas Hörsch "; cstrahan = "Charles Strahan "; diff --git a/pkgs/tools/networking/p2p/libtorrent/git.nix b/pkgs/tools/networking/p2p/libtorrent/git.nix new file mode 100644 index 00000000000..9a46740de51 --- /dev/null +++ b/pkgs/tools/networking/p2p/libtorrent/git.nix @@ -0,0 +1,28 @@ +{ stdenv, autoconf, automake, cppunit, fetchFromGitHub, pkgconfig, openssl, libsigcxx, libtool, zlib }: + +stdenv.mkDerivation { + name = "libtorrent-git"; + + src = fetchFromGitHub rec { + owner = "rakshasa"; + repo = "libtorrent"; + rev = "c60d2b9475804e41649356fa0301e9f770798f8d"; + sha256 = "1x78g5yd4q0ksdsw91awz2a1ax8zyfy5b53gbbil4fpjy96vb577"; + }; + + buildInputs = [ autoconf automake cppunit pkgconfig openssl libsigcxx libtool zlib ]; + + configureFlags = "--disable-dependency-tracking --enable-aligned"; + + preConfigure = '' + ./autogen.sh + ''; + + meta = with stdenv.lib; { + homepage = "http://libtorrent.rakshasa.no/"; + description = "A BitTorrent library written in C++ for *nix, with a focus on high performance and good code"; + license = licenses.gpl2; + platforms = platforms.unix; + maintainers = with maintainers; [ codyopel ]; + }; +} \ No newline at end of file diff --git a/pkgs/tools/networking/p2p/rtorrent/git.nix b/pkgs/tools/networking/p2p/rtorrent/git.nix new file mode 100644 index 00000000000..6320a75f726 --- /dev/null +++ b/pkgs/tools/networking/p2p/rtorrent/git.nix @@ -0,0 +1,63 @@ +{ stdenv, autoconf, automake, cppunit, curl, fetchFromGitHub +, fetchurl, libsigcxx, libtool, libtorrent-git, ncurses, openssl +, pkgconfig, zlib, xmlrpc_c +, colorSupport ? false +}: + +# NOTICE: changes since 0.9.4 break the current configuration syntax, an +# example configuration file using the latest changes can be found at +# https://github.com/codyopel/dotfiles/blob/master/dotfiles/rtorrent.rc + +stdenv.mkDerivation { + name = "rtorrent-git"; + + src = fetchFromGitHub { + owner = "rakshasa"; + repo = "rtorrent"; + rev = "7537a3c2a91d0915f1c4c89b01cd583629dc5fd4"; + sha256 = "1xnyjjff575jfq9c542yq3rr9q03z5x6xbg84d000wkjphbq7h7q"; + }; + + buildInputs = [ + autoconf + automake + cppunit + libtorrent-git + ncurses + pkgconfig + libsigcxx + libtool + curl + zlib + openssl + xmlrpc_c + ]; + + configureFlags = "--with-xmlrpc-c"; + + # Optional patch adds support for custom configurable colors + # https://github.com/Chlorm/chlorm_overlay/blob/master/net-p2p/rtorrent/README.md + + patches = stdenv.lib.optional colorSupport (fetchurl { + url = "https://gist.githubusercontent.com/codyopel/a816c2993f8013b5f4d6/raw/b952b32da1dcf14c61820dfcf7df00bc8918fec4/rtorrent-color.patch"; + sha256 = "00gcl7yq6261rrfzpz2k8bd7mffwya0ifji1xqcvhfw50syk8965"; + }); + + preConfigure = '' + ./autogen.sh + ''; + + # postInstall = '' + # mkdir -p $out/share/man/man1 $out/share/rtorrent + # mv doc/rtorrent.1 $out/share/man/man1/rtorrent.1 + # mv doc/rtorrent.rc $out/share/rtorrent/rtorrent.rc + # ''; + + meta = with stdenv.lib; { + homepage = "http://libtorrent.rakshasa.no/"; + description = "An ncurses client for libtorrent, ideal for use with screen or dtach"; + license = licenses.gpl2; + platforms = platforms.linux; + maintainers = with maintainers; [ codyopel ]; + }; +} \ No newline at end of file diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c8b203dcac1..21381e7ac95 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1558,6 +1558,8 @@ let libtorrent = callPackage ../tools/networking/p2p/libtorrent { }; + libtorrent-git = callPackage ../tools/networking/p2p/libtorrent/git.nix { }; + libibverbs = callPackage ../development/libraries/libibverbs { }; librdmacm = callPackage ../development/libraries/librdmacm { }; @@ -2163,6 +2165,8 @@ let rtorrent = callPackage ../tools/networking/p2p/rtorrent { }; + rtorrent-git = callPackage ../tools/networking/p2p/rtorrent/git.nix { }; + rubber = callPackage ../tools/typesetting/rubber { }; rxp = callPackage ../tools/text/xml/rxp { };