Merge pull request #24202 from xvapx/upgrade/tribler-v7.0.0-beta

tribler: from 6.4.3 to 7.0.0-beta
This commit is contained in:
Robin Gloster 2017-03-22 15:34:52 +01:00 committed by GitHub
commit 8869816ed2

View File

@ -1,14 +1,17 @@
{ stdenv, fetchurl, pythonPackages, makeWrapper, nettools, libtorrentRasterbar, imagemagick { stdenv, fetchgit, pythonPackages, makeWrapper, nettools, libtorrentRasterbar, imagemagick
, enablePlayer ? false, vlc ? null }: , enablePlayer ? true, vlc ? null }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "tribler-${version}"; pname = "tribler";
version = "v6.4.3"; name = "${pname}-${version}";
version = "7.0.0-beta";
revision = "1d3ddb8";
src = fetchurl { src = fetchgit {
url = "https://github.com/Tribler/tribler/releases/download/${version}/Tribler-${version}.tar.xz"; url = "https://github.com/Tribler/tribler";
sha256 = "1n5qi3jlby41w60zg6dvl933ypyiflq3rb0qkwhxi4b26s3vwvgr"; rev = "v${revision}";
sha256 = "16mk76qgg7fgca11yvpygicxqbkc0kn6r82x73fly2310pagd845";
fetchSubmodules = true;
}; };
buildInputs = [ buildInputs = [
@ -20,42 +23,56 @@ stdenv.mkDerivation rec {
pythonPath = [ pythonPath = [
libtorrentRasterbar libtorrentRasterbar
pythonPackages.wxPython
pythonPackages.apsw pythonPackages.apsw
pythonPackages.twisted pythonPackages.twisted
pythonPackages.gmpy
pythonPackages.netifaces pythonPackages.netifaces
pythonPackages.pillow
pythonPackages.pycrypto pythonPackages.pycrypto
pythonPackages.pyasn1 pythonPackages.pyasn1
pythonPackages.requests pythonPackages.requests
pythonPackages.setuptools pythonPackages.setuptools
pythonPackages.m2crypto pythonPackages.m2crypto
pythonPackages.pyqt5
pythonPackages.chardet
pythonPackages.cherrypy
pythonPackages.cryptography
pythonPackages.libnacl
pythonPackages.configobj
pythonPackages.matplotlib
pythonPackages.plyvel
pythonPackages.decorator
pythonPackages.feedparser
]; ];
installPhase = postPatch = ''
'' ${stdenv.lib.optionalString enablePlayer ''
substituteInPlace "./TriblerGUI/vlc.py" --replace "ctypes.CDLL(p)" "ctypes.CDLL('${vlc}/lib/libvlc.so')"
substituteInPlace "./TriblerGUI/widgets/videoplayerpage.py" --replace "if vlc and vlc.plugin_path" "if vlc"
substituteInPlace "./TriblerGUI/widgets/videoplayerpage.py" --replace "os.environ['VLC_PLUGIN_PATH'] = vlc.plugin_path" "os.environ['VLC_PLUGIN_PATH'] = '${vlc}/lib/vlc/plugins'"
''}
'';
installPhase = ''
find . -name '*.png' -exec convert -strip {} {} \; find . -name '*.png' -exec convert -strip {} {} \;
mkdir -pv $out
# Nasty hack; call wrapPythonPrograms to set program_PYTHONPATH. # Nasty hack; call wrapPythonPrograms to set program_PYTHONPATH.
wrapPythonPrograms wrapPythonPrograms
cp -prvd ./* $out/
mkdir -p $out/share/tribler
cp -prvd Tribler $out/share/tribler/
makeWrapper ${pythonPackages.python}/bin/python $out/bin/tribler \ makeWrapper ${pythonPackages.python}/bin/python $out/bin/tribler \
--set _TRIBLERPATH $out/share/tribler \ --set _TRIBLERPATH $out \
--set PYTHONPATH $out/share/tribler:$program_PYTHONPATH \ --set PYTHONPATH $out:$program_PYTHONPATH \
--set NO_AT_BRIDGE 1 \
--run 'cd $_TRIBLERPATH' \ --run 'cd $_TRIBLERPATH' \
--add-flags "-O $out/share/tribler/Tribler/Main/tribler.py" \ --add-flags "-O $out/run_tribler.py" \
${stdenv.lib.optionalString enablePlayer '' ${stdenv.lib.optionalString enablePlayer ''
--prefix LD_LIBRARY_PATH : ${vlc}/lib --prefix LD_LIBRARY_PATH : ${vlc}/lib
''} ''}
''; '';
meta = { meta = with stdenv.lib; {
maintainers = with maintainers; [ xvapx ];
homepage = http://www.tribler.org/; homepage = http://www.tribler.org/;
description = "A completely decentralised P2P filesharing client based on the Bittorrent protocol"; description = "A completely decentralised P2P filesharing client based on the Bittorrent protocol";
license = stdenv.lib.licenses.lgpl21; license = licenses.lgpl21;
platforms = stdenv.lib.platforms.linux; platforms = platforms.linux;
}; };
} }