[arch-commits] Commit in pidgin/trunk (PKGBUILD nm09-more.patch nm09-pidgin.patch)

Evangelos Foutras foutrelis at archlinux.org
Wed May 25 09:33:46 UTC 2011


    Date: Wednesday, May 25, 2011 @ 05:33:46
  Author: foutrelis
Revision: 124929

upgpkg: pidgin 2.7.11-5
Add patches for NetworkManager 0.9.

Added:
  pidgin/trunk/nm09-more.patch
  pidgin/trunk/nm09-pidgin.patch
Modified:
  pidgin/trunk/PKGBUILD

-------------------+
 PKGBUILD          |   18 +++++++++++++++---
 nm09-more.patch   |   49 +++++++++++++++++++++++++++++++++++++++++++++++++
 nm09-pidgin.patch |   38 ++++++++++++++++++++++++++++++++++++++
 3 files changed, 102 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2011-05-25 09:28:04 UTC (rev 124928)
+++ PKGBUILD	2011-05-25 09:33:46 UTC (rev 124929)
@@ -7,7 +7,7 @@
 
 pkgname=('pidgin' 'libpurple' 'finch')
 pkgver=2.7.11
-pkgrel=4
+pkgrel=5
 arch=('i686' 'x86_64')
 url="http://pidgin.im/"
 license=('GPL')
@@ -16,12 +16,22 @@
              'farsight2' 'avahi' 'tk' 'ca-certificates' 'intltool'
              'networkmanager')
 options=('!libtool')
-source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.bz2)
-md5sums=('07c2a2535b4d7436b5ec7685fe063fec')
+source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.bz2
+        nm09-pidgin.patch
+        nm09-more.patch)
+md5sums=('07c2a2535b4d7436b5ec7685fe063fec'
+         '744a21b4dbaf949dba7cd3b75b12b4fe'
+         'a673659d86c7a65aa710f7c8c7feda82')
 
 build() {
   cd "$srcdir/$pkgname-$pkgver"
 
+  # Update for NetworkManager 0.9 connection states
+  # (http://developer.pidgin.im/ticket/13505)
+  # (http://developer.pidgin.im/ticket/13859)
+  patch -Np1 -i "$srcdir/nm09-pidgin.patch"
+  patch -Np1 -i "$srcdir/nm09-more.patch"
+
   # Use Python 2
   sed -i 's/env python$/\02/' */plugins/*.py \
     libpurple/purple-{remote,notifications-example,url-handler}
@@ -100,3 +110,5 @@
 
   rm "$pkgdir"/usr/share/man/man1/pidgin.1
 }
+
+# vim:set ts=2 sw=2 et:

Added: nm09-more.patch
===================================================================
--- nm09-more.patch	                        (rev 0)
+++ nm09-more.patch	2011-05-25 09:33:46 UTC (rev 124929)
@@ -0,0 +1,49 @@
+diff -up pidgin-2.7.11/libpurple/network.c.nm09more pidgin-2.7.11/libpurple/network.c
+--- pidgin-2.7.11/libpurple/network.c.nm09more	2011-04-26 12:01:27.700085246 -0500
++++ pidgin-2.7.11/libpurple/network.c	2011-05-24 13:13:28.185165657 -0500
+@@ -833,8 +833,20 @@ purple_network_is_available(void)
+ 			purple_debug_warning("network", "NetworkManager not active. Assuming connection exists.\n");
+ 	}
+ 
+-	if (nm_state == NM_STATE_UNKNOWN || nm_state == NM_STATE_CONNECTED)
+-		return TRUE;
++	switch (nm_state)
++	{
++		case NM_STATE_UNKNOWN:
++#if NM_CHECK_VERSION(0,8,992)
++		case NM_STATE_CONNECTED_LOCAL:
++		case NM_STATE_CONNECTED_SITE:
++		case NM_STATE_CONNECTED_GLOBAL:
++#else
++		case NM_STATE_CONNECTED:
++#endif
++			return TRUE;
++		default:
++			break;
++	}
+ 
+ 	return FALSE;
+ 
+@@ -1170,9 +1182,14 @@ purple_network_init(void)
+ 		                                     NM_DBUS_SERVICE,
+ 		                                     NM_DBUS_PATH,
+ 		                                     NM_DBUS_INTERFACE);
++		/* NM 0.6 signal */
+ 		dbus_g_proxy_add_signal(nm_proxy, "StateChange", G_TYPE_UINT, G_TYPE_INVALID);
+ 		dbus_g_proxy_connect_signal(nm_proxy, "StateChange",
+ 		                            G_CALLBACK(nm_state_change_cb), NULL, NULL);
++		/* NM 0.7 and later signal */
++		dbus_g_proxy_add_signal(nm_proxy, "StateChanged", G_TYPE_UINT, G_TYPE_INVALID);
++		dbus_g_proxy_connect_signal(nm_proxy, "StateChanged",
++		                            G_CALLBACK(nm_state_change_cb), NULL, NULL);
+ 
+ 		dbus_proxy = dbus_g_proxy_new_for_name(nm_conn,
+ 		                                       DBUS_SERVICE_DBUS,
+@@ -1207,6 +1224,7 @@ purple_network_uninit(void)
+ #ifdef HAVE_NETWORKMANAGER
+ 	if (nm_proxy) {
+ 		dbus_g_proxy_disconnect_signal(nm_proxy, "StateChange", G_CALLBACK(nm_state_change_cb), NULL);
++		dbus_g_proxy_disconnect_signal(nm_proxy, "StateChanged", G_CALLBACK(nm_state_change_cb), NULL);
+ 		g_object_unref(G_OBJECT(nm_proxy));
+ 	}
+ 	if (dbus_proxy) {

Added: nm09-pidgin.patch
===================================================================
--- nm09-pidgin.patch	                        (rev 0)
+++ nm09-pidgin.patch	2011-05-25 09:33:46 UTC (rev 124929)
@@ -0,0 +1,38 @@
+diff -up pidgin-2.7.10/libpurple/network.c.foo pidgin-2.7.10/libpurple/network.c
+--- pidgin-2.7.10/libpurple/network.c.foo	2011-03-10 02:21:43.920933267 -0600
++++ pidgin-2.7.10/libpurple/network.c	2011-03-10 02:23:11.466838793 -0600
+@@ -71,6 +71,10 @@
+ #include <dbus/dbus-glib.h>
+ #include <NetworkManager.h>
+ 
++#if !defined(NM_CHECK_VERSION)
++#define NM_CHECK_VERSION(x,y,z) 0
++#endif
++
+ static DBusGConnection *nm_conn = NULL;
+ static DBusGProxy *nm_proxy = NULL;
+ static DBusGProxy *dbus_proxy = NULL;
+@@ -863,7 +867,13 @@ nm_update_state(NMState state)
+ 
+ 	switch(state)
+ 	{
++#if NM_CHECK_VERSION(0,8,992)
++		case NM_STATE_CONNECTED_LOCAL:
++		case NM_STATE_CONNECTED_SITE:
++		case NM_STATE_CONNECTED_GLOBAL:
++#else
+ 		case NM_STATE_CONNECTED:
++#endif
+ 			/* Call res_init in case DNS servers have changed */
+ 			res_init();
+ 			/* update STUN IP in case we it changed (theoretically we could
+@@ -880,6 +890,9 @@ nm_update_state(NMState state)
+ 		case NM_STATE_ASLEEP:
+ 		case NM_STATE_CONNECTING:
+ 		case NM_STATE_DISCONNECTED:
++#if NM_CHECK_VERSION(0,8,992)
++		case NM_STATE_DISCONNECTING:
++#endif
+ 			if (prev != NM_STATE_CONNECTED && prev != NM_STATE_UNKNOWN)
+ 				break;
+ 			if (ui_ops != NULL && ui_ops->network_disconnected != NULL)




More information about the arch-commits mailing list