commit e58b6401c642077ca93ba4e922773a3b9fca125e
Author: Elan Ruusamäe <[email protected]>
Date:   Mon Aug 20 13:48:17 2012 +0300

    skyped: allow override builtin Skype4Py transport
    
    in some cases x11 transport is preferred over dbus as it requires less
    dependencies to set up.

 bitlbee.spec           |  2 ++
 skyped-transport.patch | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 62 insertions(+)
---
diff --git a/bitlbee.spec b/bitlbee.spec
index 81f8ca6..31dc6b9 100644
--- a/bitlbee.spec
+++ b/bitlbee.spec
@@ -19,6 +19,7 @@ Patch0:               config.patch
 Patch1:                systemd.patch
 Patch2:                skyped-FD_CLOEXEC.patch
 Patch3:                skype-no-groups.patch
+Patch4:                skyped-transport.patch
 BuildRequires: asciidoc
 BuildRequires: gnutls-devel
 %{?with_otr:BuildRequires:     libotr-devel >= 3.2.0}
@@ -95,6 +96,7 @@ communication is done via SSL.
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
+%patch4 -p1
 
 # fix wrong assumption with $DESTDIR
 %{__sed} -i -e 's,$(shell id -u),0,' Makefile
diff --git a/skyped-transport.patch b/skyped-transport.patch
new file mode 100644
index 0000000..e52bced
--- /dev/null
+++ b/skyped-transport.patch
@@ -0,0 +1,60 @@
+--- bitlbee-3.0.5/protocols/skype/skyped.py~   2012-08-20 13:12:13.498690222 
+0300
++++ bitlbee-3.0.5/protocols/skype/skyped.py    2012-08-20 13:45:21.105984684 
+0300
+@@ -275,8 +275,12 @@
+               sock.close()
+ 
+ class SkypeApi:
+-      def __init__(self):
+-              self.skype = Skype4Py.Skype()
++      def __init__(self, transport = None):
++              if transport:
++                      self.skype = Skype4Py.Skype(Transport = transport)
++              else:
++                      self.skype = Skype4Py.Skype()
++
+               self.skype.OnNotify = self.recv
+               self.skype.Client.Start()
+ 
+@@ -352,6 +356,7 @@
+               self.host = "0.0.0.0"
+               self.log = None
+               self.port = None
++              self.transport = None
+               self.version = False
+               # well, this is a bit hackish. we store the socket of the last 
connected client
+               # here and notify it. maybe later notify all connected clients?
+@@ -373,6 +378,7 @@
+       -l      --log           set the log file in background mode (default: 
none)
+       -n      --nofork        don't run as daemon in the background
+       -p      --port          set the tcp port (default: %s)
++      -t      --transport     enforce Skype4Py transport (x11 or dbus) 
(defaults to Skype4Py default)
+       -v      --version       display version information""" % (self.cfgpath, 
self.host, self.port)
+               sys.exit(ret)
+ 
+@@ -420,7 +426,7 @@
+ if __name__=='__main__':
+       options = Options()
+       try:
+-              opts, args = getopt.getopt(sys.argv[1:], "c:dhH:l:np:v", 
["config=", "debug", "help", "host=", "log=", "nofork", "port=", "version"])
++              opts, args = getopt.getopt(sys.argv[1:], "c:dhH:l:np:t:v", 
["config=", "debug", "help", "host=", "log=", "nofork", "port=", "transport=", 
"version"])
+       except getopt.GetoptError:
+               options.usage(1)
+       for opt, arg in opts:
+@@ -438,6 +444,8 @@
+                       options.daemon = False
+               elif opt in ("-p", "--port"):
+                       options.port = int(arg)
++              elif opt in ("-t", "--transport"):
++                      options.transport = arg
+               elif opt in ("-v", "--version"):
+                       options.version = True
+       if options.help:
+@@ -484,7 +492,7 @@
+       if hasgobject:
+               server(options.host, options.port)
+       try:
+-              skype = SkypeApi()
++              skype = SkypeApi(options.transport)
+       except Skype4Py.SkypeAPIError, s:
+               sys.exit("%s. Are you sure you have started Skype?" % s)
+       if hasgobject:
_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to