diff --git a/pkgs/tools/networking/p2p/bittorrent/builder.sh b/pkgs/tools/networking/p2p/bittorrent/builder.sh new file mode 100644 index 00000000000..3f30aa5c851 --- /dev/null +++ b/pkgs/tools/networking/p2p/bittorrent/builder.sh @@ -0,0 +1,27 @@ +source $stdenv/setup + + +# Workaround for: +# File "...-python-2.4.4/lib/python2.4/posixpath.py", line 62, in join +# elif path == '' or path.endswith('/'): +# AttributeError: 'NoneType' object has no attribute 'endswith' +export HOME=$TMP + + +buildPhase() { + python setup.py build +} + + +installPhase() { + python setup.py install --prefix=$out + + # Create wrappers that set the environment correctly. + for i in $(cd $out/bin && ls); do + wrapProgram $out/bin/$i \ + --set PYTHONPATH "$(toPythonPath $out):$PYTHONPATH" + done +} + + +genericBuild diff --git a/pkgs/tools/networking/p2p/bittorrent/default.nix b/pkgs/tools/networking/p2p/bittorrent/default.nix index 42d4236ecc1..1d4f43445bf 100644 --- a/pkgs/tools/networking/p2p/bittorrent/default.nix +++ b/pkgs/tools/networking/p2p/bittorrent/default.nix @@ -1,25 +1,20 @@ { gui ? false , stdenv, fetchurl, makeWrapper -, python, wxPython ? null, pycrypto, twisted, buildPythonPackage +, python, wxPython ? null, pycrypto, twisted }: assert gui -> wxPython != null; -buildPythonPackage rec { +stdenv.mkDerivation { name = "bittorrent-5.2.2"; + builder = ./builder.sh; + src = fetchurl { url = http://download.bittorrent.com/dl/archive/BitTorrent-5.2.2.tar.gz; sha256 = "05k803hbwsyn51j4aibzdsnqxz24kw4rvr60v2c0wji8gcvy3kx9"; }; - preConfigure = '' - export HOME=$TMP - ''; - - # accesses network - doCheck = false; - buildInputs = [ python pycrypto twisted makeWrapper ] ++ stdenv.lib.optional gui wxPython;