From 534bee70fd2d9fb7d8f74e83d40ddd911ffb4ab5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A9=20Fabian=20Silva=20Delgado?=
 <emulatorman@parabola.nu>
Date: Sat, 2 Jan 2016 11:45:54 -0300
Subject: pidgin-2.10.12-1.nonprism1: updating version

* switch to python 3
---
 nonprism/pidgin/PKGBUILD                       | 49 +++++++---------
 nonprism/pidgin/pidgin-2.10.12-py3-fixes.patch | 81 ++++++++++++++++++++++++++
 2 files changed, 101 insertions(+), 29 deletions(-)
 create mode 100644 nonprism/pidgin/pidgin-2.10.12-py3-fixes.patch

diff --git a/nonprism/pidgin/PKGBUILD b/nonprism/pidgin/PKGBUILD
index 74f42a8f4..e159db089 100644
--- a/nonprism/pidgin/PKGBUILD
+++ b/nonprism/pidgin/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 249233 2015-10-13 21:30:13Z foutrelis $
+# $Id: PKGBUILD 257443 2016-01-02 04:32:23Z foutrelis $
 # Maintainer (Arch): Evangelos Foutras <evangelos@foutrelis.com>
 # Contributor (Arch): Ionut Biru <ibiru@archlinux.org>
 # Contributor (Arch): Andrea Scarpino <andrea@archlinux.org>
@@ -8,30 +8,26 @@
 # Contributor: Márcio Silva <coadde@parabola.nu>
 
 pkgname=('pidgin' 'libpurple' 'finch')
-pkgver=2.10.11
-pkgrel=6.nonprism1
-_rev=cbc4db14444c91f4f4b03aa1b228c2d51dacea6b
+pkgver=2.10.12
+pkgrel=1.nonprism1
 arch=('i686' 'x86_64')
 url="http://pidgin.im/"
 license=('GPL')
 makedepends=('startup-notification' 'gtkspell' 'libxss' 'nss' 'libsasl' 'libsm'
-             'libidn' 'python2' 'hicolor-icon-theme' 'farstream'
-             'avahi' 'tk' 'ca-certificates' 'intltool' 'networkmanager'
-             'mercurial')
-source=(pidgin::hg+https://bitbucket.org/pidgin/main#revision=$_rev
+             'libidn' 'python' 'hicolor-icon-theme' 'farstream'
+             'avahi' 'tk' 'ca-certificates' 'intltool' 'networkmanager')
+source=(https://downloads.sourceforge.net/project/$pkgname/Pidgin/$pkgver/$pkgname-$pkgver.tar.bz2{,.asc}
+        pidgin-2.10.12-py3-fixes.patch
         nonprism.patch)
-sha256sums=('SKIP'
+sha256sums=('2c7523f0fefe89749c03b2b738ab9f7bd186da435be4762f1487eee31e77ffdd'
+            'SKIP'
+            'e38bd61e0dcfcc2e5761078ea709b92c5bf8d025d5eb1288aa8a550715babb7e'
             'f720dc9aca3191b65cd89828ab7266e06d93203b7f0de9ac6b506227b00b0bc0')
+validpgpkeys=('364E2EB38EA6A8D61FB963AD75FE259AA8AC8032')
 
 prepare() {
-  cd $pkgbase
-
-  # Revert change that breaks rejoining multi-user chats
-  # https://developer.pidgin.im/ticket/16724
-  {
-    hg diff -c 136a5e95a1ad
-    hg diff -c 187b51ce9922
-  } | patch -Rp1
+  cd $pkgbase-$pkgver
+  patch -Np1 -i ../pidgin-2.10.12-py3-fixes.patch
 
   msg "Remove Google Talk and Facebook protocols"
   patch -Np1 -i "$srcdir/nonprism.patch"
@@ -41,16 +37,12 @@ prepare() {
   sed -i 's|On Linux|On GNU/Linux|' libpurple/connection.h
 
   autoreconf -vi
-
-  # Use Python 2
-  sed -i 's/env python$/&2/' */plugins/*.py \
-    libpurple/purple-{remote,notifications-example,url-handler}
 }
 
 build() {
-  cd $pkgbase
+  cd $pkgbase-$pkgver
 
-  ./autogen.sh \
+  ./configure \
     --prefix=/usr \
     --sysconfdir=/etc \
     --disable-schemas-install \
@@ -59,7 +51,6 @@ build() {
     --enable-cyrus-sasl \
     --disable-doxygen \
     --enable-nm \
-    --with-python=/usr/bin/python2 \
     --with-system-ssl-certs=/etc/ssl/certs \
     --with-dynamic-prpls=bonjour,irc,jabber,silc,simple,zephyr
     make
@@ -74,7 +65,7 @@ package_pidgin(){
   replaces=(${pkgname}-nonprism)
   install=pidgin.install
 
-  cd $pkgbase
+  cd $pkgbase-$pkgver
 
   # For linking
   make -C libpurple DESTDIR="$pkgdir" install-libLTLIBRARIES
@@ -105,12 +96,12 @@ package_libpurple(){
   depends=('farstream' 'libsasl' 'libidn' 'dbus-glib' 'nss')
   optdepends=('avahi: Bonjour protocol support'
               'ca-certificates: SSL CA certificates'
-              'python2-dbus: for purple-remote and purple-url-handler'
+              'python-dbus: for purple-remote and purple-url-handler'
               'tk: Tcl/Tk scripting support')
   conflicts=(${pkgname}-nonprism)
   replaces=(${pkgname}-nonprism)
 
-  cd $pkgbase
+  cd $pkgbase-$pkgver
 
   for _dir in libpurple share/sounds share/ca-certs m4macros po; do
     make -C "$_dir" DESTDIR="$pkgdir" install
@@ -119,11 +110,11 @@ package_libpurple(){
 
 package_finch(){
   pkgdesc="A ncurses-based messaging client, without support for unsafe and dangerous for privacy protocols"
-  depends=('libpurple' 'libx11' 'python2')
+  depends=('libpurple' 'libx11' 'python')
   conflicts=(${pkgname}-nonprism)
   replaces=(${pkgname}-nonprism)
 
-  cd $pkgbase
+  cd $pkgbase-$pkgver
 
   # For linking
   make -C libpurple DESTDIR="$pkgdir" install-libLTLIBRARIES
diff --git a/nonprism/pidgin/pidgin-2.10.12-py3-fixes.patch b/nonprism/pidgin/pidgin-2.10.12-py3-fixes.patch
new file mode 100644
index 000000000..1acf25a09
--- /dev/null
+++ b/nonprism/pidgin/pidgin-2.10.12-py3-fixes.patch
@@ -0,0 +1,81 @@
+diff -uprb pidgin-2.10.12.orig/libpurple/purple-remote pidgin-2.10.12/libpurple/purple-remote
+--- pidgin-2.10.12.orig/libpurple/purple-remote	2016-01-01 01:19:41.000000000 +0200
++++ pidgin-2.10.12/libpurple/purple-remote	2016-01-02 06:23:14.082831498 +0200
+@@ -3,13 +3,20 @@
+ import codecs
+ import dbus
+ import re
+-import urllib
+ import sys
++try:
++    from urllib.parse import unquote
++except ImportError:
++    from urllib import unquote
+ 
+ import xml.dom.minidom 
+ 
+-sys.stdin = codecs.getwriter('utf-8')(sys.stdin);
+-sys.stdout = codecs.getwriter('utf-8')(sys.stdout);
++if sys.version_info[0] >= 3:
++    sys.stdin = codecs.getwriter('utf-8')(sys.stdin.buffer)
++    sys.stdout = codecs.getwriter('utf-8')(sys.stdout.buffer)
++else:
++    sys.stdin = codecs.getwriter('utf-8')(sys.stdin)
++    sys.stdout = codecs.getwriter('utf-8')(sys.stdout)
+ 
+ xml.dom.minidom.Element.all   = xml.dom.minidom.Element.getElementsByTagName
+ 
+@@ -41,7 +48,7 @@ class CheckedAttribute:
+         return result
+             
+ def show_help(requested=False):
+-    print """This program uses D-Bus to communicate with purple.
++    print("""This program uses D-Bus to communicate with purple.
+ 
+ Usage:
+ 
+@@ -72,7 +79,7 @@ Examples of commands:
+ 
+     PurpleAccountsFindConnected?name=&protocol=prpl-jabber
+     PurpleAccountsFindConnected(,prpl-jabber)
+-""" % sys.argv[0]
++""" % sys.argv[0])
+     if (requested):
+         sys.exit(0)
+     else:
+@@ -120,7 +127,7 @@ def execute(uri):
+     if paramstring is not None:
+         for param in paramstring.split("&"):
+             key, value = extendlist(param.split("=",1), 2, "")
+-            params[key] = urllib.unquote(value)
++            params[key] = unquote(value)
+ 
+     accountname = params.get("account", "")
+ 
+@@ -233,12 +240,11 @@ if len(sys.argv) == 1:
+ elif (sys.argv[1] == "--help" or sys.argv[1] == "-h"):
+     show_help(True)
+ elif (obj == None):
+-    print "No existing libpurple instance detected."
++    print("No existing libpurple instance detected.")
+     sys.exit(1);
+     
+ for arg in sys.argv[1:]:
+     output = execute(arg)
+ 
+     if (output != None):
+-        print output
+-
++        print(output)
+diff -uprb pidgin-2.10.12.orig/libpurple/purple-url-handler pidgin-2.10.12/libpurple/purple-url-handler
+--- pidgin-2.10.12.orig/libpurple/purple-url-handler	2016-01-01 01:19:41.000000000 +0200
++++ pidgin-2.10.12/libpurple/purple-url-handler	2016-01-02 05:39:43.084532314 +0200
+@@ -249,7 +249,7 @@ def msnim(uri):
+ 
+ def myim(uri):
+         protocol = "prpl-myspace"
+-        print "TODO: send uri: ", uri
++        print("TODO: send uri: %s" % uri)
+         assert False, "Not implemented"
+ 
+ def sip(uri):
-- 
cgit v1.2.3-2-g168b