Merge pull request #13858 from leenaars/blinkqt

python-sipsimple: 2.6.0 -> 3.0.0 (with all dependencies)
This commit is contained in:
Frederik Rietdijk 2016-03-28 14:18:33 +02:00
commit 2b10296637
3 changed files with 122 additions and 42 deletions

View File

@ -1,13 +1,13 @@
{ stdenv, fetchurl, pythonPackages, pyqt4, cython, libvncserver, zlib, twisted { stdenv, fetchurl, pythonPackages, pyqt4, cython, libvncserver, zlib, twisted
, gnutls, libvpx }: , gnutls, libvpx, makeDesktopItem }:
pythonPackages.buildPythonApplication rec { pythonPackages.buildPythonApplication rec {
name = "blink-${version}"; name = "blink-${version}";
version = "1.4.2"; version = "2.0.0";
src = fetchurl { src = fetchurl {
url = "http://download.ag-projects.com/BlinkQt/${name}.tar.gz"; url = "http://download.ag-projects.com/BlinkQt/${name}.tar.gz";
sha256 = "0ia5hgwyg6cm393ik4ggzhcmc957ncswycs07ilwj6vrrzraxfk7"; sha256 = "07hvy45pavgkvdlh4wbz3shsxh4fapg96qlqmfymdi1nfhwghb05";
}; };
patches = [ ./pythonpath.patch ]; patches = [ ./pythonpath.patch ];
@ -20,16 +20,30 @@ pythonPackages.buildPythonApplication rec {
buildInputs = [ cython zlib libvncserver libvpx ]; buildInputs = [ cython zlib libvncserver libvpx ];
desktopItem = makeDesktopItem {
name = "Blink";
exec = "blink";
comment = meta.description;
desktopName = "Blink";
icon = "blink";
genericName = "Instant Messaging";
categories = "Application;Internet;";
};
postInstall = '' postInstall = ''
wrapProgram $out/bin/blink \ wrapProgram $out/bin/blink \
--prefix LD_LIBRARY_PATH ":" ${gnutls}/lib --prefix LD_LIBRARY_PATH ":" ${gnutls}/lib
mkdir -p "$out/share/applications"
mkdir -p "$out/share/pixmaps"
cp "$desktopItem"/share/applications/* "$out/share/applications"
cp "$out"/share/blink/icons/blink.* "$out/share/pixmaps"
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = http://icanblink.com/; homepage = http://icanblink.com/;
description = "A state of the art, easy to use SIP client"; description = "A state of the art, easy to use SIP client for Voice, Video and IM";
platforms = platforms.linux; platforms = platforms.linux;
license = licenses.mit; license = licenses.gplv3;
maintainers = with maintainers; [ pSub ]; maintainers = with maintainers; [ pSub ];
}; };
} }

View File

@ -1,14 +1,44 @@
diff -rupN a/blink/resources.py b/blink/resources.py --- blink-2.0.0/blink/resources.py 2016-03-09 14:39:07.000000000 +0100
--- a/blink/resources.py 2015-03-17 03:24:06.000000000 -0600 +++ blink-2.0.0/blink/resources-patched.py 2016-03-12 21:34:14.965476623 +0100
+++ b/blink/resources.py 2015-04-07 22:52:06.101096413 -0600 @@ -1,7 +1,10 @@
@@ -60,14 +60,7 @@ class Resources(object): +# Copyright (C) 2010-2013 AG Projects. See LICENSE for details.
+#
"""Provide access to Blink's resources"""
-import __main__
+__all__ = ['ApplicationData', 'Resources', 'IconManager']
+
import imghdr
import os
import platform
@@ -19,14 +22,10 @@
from blink.util import run_in_gui_thread
-__all__ = ['ApplicationData', 'Resources', 'IconManager']
-
-
class DirectoryContextManager(unicode):
def __enter__(self):
self.directory = os.getcwdu()
os.chdir(self)
-
def __exit__(self, type, value, traceback):
os.chdir(self.directory)
@@ -61,18 +60,7 @@
@classproperty @classproperty
def directory(cls): def directory(cls):
if cls._cached_directory is None: if cls._cached_directory is None:
- if sys.path[0] == '': - try:
- application_directory = os.path.realpath('') # executed in interactive interpreter - binary_directory = os.path.dirname(os.path.realpath(__main__.__file__))
- except AttributeError:
- if hasattr(sys, 'frozen'):
- application_directory = os.path.dirname(os.path.realpath(sys.executable))
- else:
- application_directory = os.path.realpath('') # executed in interactive interpreter
- else: - else:
- binary_directory = os.path.dirname(os.path.realpath(sys.argv[0]))
- if os.path.basename(binary_directory) == 'bin': - if os.path.basename(binary_directory) == 'bin':
- application_directory = os.path.dirname(binary_directory) - application_directory = os.path.dirname(binary_directory)
- else: - else:
@ -17,4 +47,3 @@ diff -rupN a/blink/resources.py b/blink/resources.py
if os.path.exists(os.path.join(application_directory, 'resources', 'blink.ui')): if os.path.exists(os.path.join(application_directory, 'resources', 'blink.ui')):
cls._cached_directory = os.path.join(application_directory, 'resources').decode(sys.getfilesystemencoding()) cls._cached_directory = os.path.join(application_directory, 'resources').decode(sys.getfilesystemencoding())
else: else:
Binary files a/blink/.resources.py.swp and b/blink/.resources.py.swp differ

View File

@ -774,13 +774,18 @@ in modules // {
}; };
application = buildPythonPackage rec { application = buildPythonPackage rec {
name = "python-application-${version}"; pname = "python-application";
version = "1.5.0"; name = "${pname}-${version}";
version = "2.0.2";
disabled = isPy3k;
src = pkgs.fetchdarcs {
url = "http://devel.ag-projects.com/repositories/${pname}";
rev = "release-${version}";
sha256 = "19dszv44py8qrq0jcjdycxpa7z2p8hi3ijq9gnqdsazbbjzf9svn";
};
buildInputs = with self; [ zope_interface ];
src = pkgs.fetchurl {
url = "https://pypi.python.org/packages/source/p/python-application/${name}.tar.gz";
sha256 = "9bc00c2c639bf633e2c5e08d4bf1bb5d7edaad6ccdd473692f0362df08f8aafc";
};
}; };
appnope = buildPythonPackage rec { appnope = buildPythonPackage rec {
@ -5357,16 +5362,18 @@ in modules // {
eventlib = buildPythonPackage rec { eventlib = buildPythonPackage rec {
name = "python-eventlib-${version}"; pname = "python-eventlib";
version = "0.2.1"; name = "${pname}-${version}";
version = "0.2.2";
# Judging from SyntaxError # Judging from SyntaxError
disabled = isPy3k; disabled = isPy3k;
src = pkgs.fetchurl { src = pkgs.fetchdarcs {
url = "http://download.ag-projects.com/SipClient/${name}.tar.gz"; url = "http://devel.ag-projects.com/repositories/${pname}";
sha256 = "25224794420f430946fe46932718b521a6264903fe8c0ed3563dfdb844c623e7"; rev = "release-${version}";
}; sha256 = "1zxhpq8i4jwsk7wmfncqfm211hqikj3hp38cfv509924bi76wak8";
};
propagatedBuildInputs = with self; [ greenlet ]; propagatedBuildInputs = with self; [ greenlet ];
@ -5798,8 +5805,8 @@ in modules // {
gnutls = buildPythonPackage rec { gnutls = buildPythonPackage rec {
name = "python-gnutls"; name = "python-gnutls";
src = pkgs.fetchurl { src = pkgs.fetchurl {
url = "https://pypi.python.org/packages/source/p/python-gnutls/python-gnutls-2.0.1.tar.gz"; url = "https://pypi.python.org/packages/source/p/python-gnutls/python-gnutls-3.0.0.tar.gz";
sha256 = "d8fb368c6a4dd58bc6cd5e61d4a12d119c4506fd344a371b3429b3ac2623b9ac"; sha256 = "1yrdxcj5rzvz8iglircz6icvyggz5fmdcd010n6w3j60yp4p84kc";
}; };
propagatedBuildInputs = with self; [ pkgs.gnutls ]; propagatedBuildInputs = with self; [ pkgs.gnutls ];
@ -12179,14 +12186,16 @@ in modules // {
}; };
msrplib = buildPythonPackage rec { msrplib = buildPythonPackage rec {
name = "python-msrplib-${version}"; pname = "python-msrplib";
version = "0.18.0"; name = "${pname}-${version}";
version = "0.19";
src = pkgs.fetchurl {
url = "http://download.ag-projects.com/MSRP/${name}.tar.gz";
sha256 = "0vp9g5p015g3f67rl4vz0qnn6x7hciry6nmvwf82h9h5rx11r43j";
};
src = pkgs.fetchdarcs {
url = "http://devel.ag-projects.com/repositories/${pname}";
rev = "release-${version}";
sha256 = "0jqvvssbwzq7bwqn3wrjfnpj8zb558mynn2visnlrcma6b57yhwd";
};
propagatedBuildInputs = with self; [ eventlib application gnutls ]; propagatedBuildInputs = with self; [ eventlib application gnutls ];
}; };
@ -13526,6 +13535,31 @@ in modules // {
}; };
}; };
python-otr = buildPythonPackage rec {
name = "${pname}-${version}";
pname = "python-otr";
version = "1.2.0";
disabled = isPy3k;
src = pkgs.fetchFromGitHub {
owner = "AGProjects";
repo = pname;
rev = "release-" + version;
sha256 = "0p3b1n8jlxwd65gbk2k5007fkhdyjwcvr4982s42hncivxvabzzy";
};
propagatedBuildInputs = with self; [ zope_interface cryptography application gmpy2 ];
meta = {
description = "A pure python implementation of OTR";
homepage = https://github.com/AGProjects/otr;
license = licenses.lgpl21Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ edwtjo ];
};
};
ply = buildPythonPackage (rec { ply = buildPythonPackage (rec {
name = "ply-3.8"; name = "ply-3.8";
@ -20282,15 +20316,15 @@ in modules // {
sipsimple = buildPythonPackage rec { sipsimple = buildPythonPackage rec {
name = "sipsimple-${version}"; name = "sipsimple-${version}";
version = "2.6.0"; version = "3.0.0";
disabled = isPy3k; disabled = isPy3k;
src = pkgs.fetchurl { src = pkgs.fetchurl {
url = "http://download.ag-projects.com/SipClient/python-${name}.tar.gz"; url = "http://download.ag-projects.com/SipClient/python-${name}.tar.gz";
sha256 = "0xcyasas28q1ad1hgw4vd62b72mf1sng7xwfcls6dc05k9p3q8v3"; sha256 = "1q35kgz151rr99240jq55rs39y741m8shh9yihl3x95rkjxchji4";
}; };
propagatedBuildInputs = with self; [ cython pkgs.openssl dns dateutil xcaplib msrplib lxml ]; propagatedBuildInputs = with self; [ cython pkgs.openssl dns dateutil xcaplib msrplib lxml python-otr ];
buildInputs = with pkgs; [ alsaLib ffmpeg libv4l pkgconfig sqlite libvpx ]; buildInputs = with pkgs; [ alsaLib ffmpeg libv4l pkgconfig sqlite libvpx ];
}; };
@ -22563,12 +22597,15 @@ in modules // {
}; };
xcaplib = buildPythonPackage rec { xcaplib = buildPythonPackage rec {
name = "python-xcaplib-${version}"; pname = "python-xcaplib";
version = "1.1.0"; name = "${pname}-${version}";
version = "1.2.0";
disabled = isPy3k;
src = pkgs.fetchurl { src = pkgs.fetchdarcs {
url = "http://download.ag-projects.com/XCAP/${name}.tar.gz"; url = "http://devel.ag-projects.com/repositories/${pname}";
sha256 = "2f8ea6fe7d005104ef1d854aa87bd8ee85ca242a70cde42f409f8e5557f864b3"; rev = "release-${version}";
sha256 = "0vna5r4ihv7z1yx6r93954jqskcxky77znzy1m9dg9vna1dgwfdn";
}; };
propagatedBuildInputs = with self; [ eventlib application ]; propagatedBuildInputs = with self; [ eventlib application ];