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 ''
find . -name '*.png' -exec convert -strip {} {} \; substituteInPlace "./TriblerGUI/vlc.py" --replace "ctypes.CDLL(p)" "ctypes.CDLL('${vlc}/lib/libvlc.so')"
# Nasty hack; call wrapPythonPrograms to set program_PYTHONPATH. substituteInPlace "./TriblerGUI/widgets/videoplayerpage.py" --replace "if vlc and vlc.plugin_path" "if vlc"
wrapPythonPrograms substituteInPlace "./TriblerGUI/widgets/videoplayerpage.py" --replace "os.environ['VLC_PLUGIN_PATH'] = vlc.plugin_path" "os.environ['VLC_PLUGIN_PATH'] = '${vlc}/lib/vlc/plugins'"
''}
'';
mkdir -p $out/share/tribler installPhase = ''
cp -prvd Tribler $out/share/tribler/ find . -name '*.png' -exec convert -strip {} {} \;
mkdir -pv $out
# Nasty hack; call wrapPythonPrograms to set program_PYTHONPATH.
wrapPythonPrograms
cp -prvd ./* $out/
makeWrapper ${pythonPackages.python}/bin/python $out/bin/tribler \
--set _TRIBLERPATH $out \
--set PYTHONPATH $out:$program_PYTHONPATH \
--set NO_AT_BRIDGE 1 \
--run 'cd $_TRIBLERPATH' \
--add-flags "-O $out/run_tribler.py" \
${stdenv.lib.optionalString enablePlayer ''
--prefix LD_LIBRARY_PATH : ${vlc}/lib
''}
'';
makeWrapper ${pythonPackages.python}/bin/python $out/bin/tribler \ meta = with stdenv.lib; {
--set _TRIBLERPATH $out/share/tribler \ maintainers = with maintainers; [ xvapx ];
--set PYTHONPATH $out/share/tribler:$program_PYTHONPATH \
--run 'cd $_TRIBLERPATH' \
--add-flags "-O $out/share/tribler/Tribler/Main/tribler.py" \
${stdenv.lib.optionalString enablePlayer ''
--prefix LD_LIBRARY_PATH : ${vlc}/lib
''}
'';
meta = {
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;
}; };
} }