diff --git a/.gitignore b/.gitignore index 7e9fe41..8b6e155 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ pidgin-2.7.3.tar.bz2 /pidgin-2.10.12.tar.bz2 /pidgin-2.11.0.tar.bz2 /pidgin-2.12.0.tar.bz2 +/pidgin-2.13.0.tar.bz2 diff --git a/nm09-more.patch b/nm09-more.patch deleted file mode 100644 index aa645ce..0000000 --- a/nm09-more.patch +++ /dev/null @@ -1,37 +0,0 @@ -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 11:54:40.894171020 -0500 -+++ pidgin-2.7.11/libpurple/network.c 2011-04-26 12:00:55.533487383 -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,8 +1182,8 @@ purple_network_init(void) - NM_DBUS_SERVICE, - NM_DBUS_PATH, - NM_DBUS_INTERFACE); -- dbus_g_proxy_add_signal(nm_proxy, "StateChange", G_TYPE_UINT, G_TYPE_INVALID); -- dbus_g_proxy_connect_signal(nm_proxy, "StateChange", -+ 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, diff --git a/pidgin-2.10.11-purple-remote-python3.patch b/pidgin-2.10.11-purple-remote-python3.patch index e48a590..03fcc67 100644 --- a/pidgin-2.10.11-purple-remote-python3.patch +++ b/pidgin-2.10.11-purple-remote-python3.patch @@ -2,16 +2,11 @@ Actually make things work in python3. Author: Jan Synacek ---- a/libpurple/purple-remote 2015-06-03 09:52:26.324668688 +0200 -+++ b/libpurple/purple-remote 2015-06-03 09:55:41.287253981 +0200 -@@ -3,13 +3,13 @@ - import codecs - import dbus - import re --import urllib -+import urllib.parse - import sys - +Index: pidgin-2.13.0/libpurple/purple-remote +=================================================================== +--- pidgin-2.13.0.orig/libpurple/purple-remote ++++ pidgin-2.13.0/libpurple/purple-remote +@@ -14,7 +14,7 @@ import sys import xml.dom.minidom sys.stdin = codecs.getwriter('utf-8')(sys.stdin); @@ -20,45 +15,3 @@ Author: Jan Synacek xml.dom.minidom.Element.all = xml.dom.minidom.Element.getElementsByTagName -@@ -41,7 +41,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 +72,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 +120,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] = urllib.parse.unquote(value) - - accountname = params.get("account", "") - -@@ -233,12 +233,12 @@ 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 --git a/pidgin-2.10.7-link-libirc-to-libsasl2.patch b/pidgin-2.10.7-link-libirc-to-libsasl2.patch deleted file mode 100644 index 067808c..0000000 --- a/pidgin-2.10.7-link-libirc-to-libsasl2.patch +++ /dev/null @@ -1,16 +0,0 @@ -Upstream ticket: #15517 -URL: https://developer.pidgin.im/ticket/15517 -Resolves: #914794 - -diff -upr pidgin-2.10.7.orig/libpurple/protocols/irc/Makefile.am pidgin-2.10.7/libpurple/protocols/irc/Makefile.am ---- pidgin-2.10.7.orig/libpurple/protocols/irc/Makefile.am 2013-02-14 02:44:47.000000000 +0200 -+++ pidgin-2.10.7/libpurple/protocols/irc/Makefile.am 2013-02-14 02:49:58.000000000 +0200 -@@ -27,7 +27,7 @@ else - st = - pkg_LTLIBRARIES = libirc.la - libirc_la_SOURCES = $(IRCSOURCES) --libirc_la_LIBADD = $(GLIB_LIBS) -+libirc_la_LIBADD = $(GLIB_LIBS) $(SASL_LIBS) - - endif - diff --git a/pidgin-jabber-Avoid-a-use-after-free-in-an-error-path.patch b/pidgin-jabber-Avoid-a-use-after-free-in-an-error-path.patch deleted file mode 100644 index ac48196..0000000 --- a/pidgin-jabber-Avoid-a-use-after-free-in-an-error-path.patch +++ /dev/null @@ -1,69 +0,0 @@ -diff -urNp pidgin-2.12.0.orig/libpurple/protocols/jabber/jingle/rtp.c pidgin-2.12.0/libpurple/protocols/jabber/jingle/rtp.c ---- pidgin-2.12.0.orig/libpurple/protocols/jabber/jingle/rtp.c 2017-04-26 21:07:29.580832030 +0200 -+++ pidgin-2.12.0/libpurple/protocols/jabber/jingle/rtp.c 2017-04-26 21:08:50.778206082 +0200 -@@ -950,6 +950,7 @@ jingle_rtp_initiate_media(JabberStream * - JingleTransport *transport; - JabberBuddy *jb; - JabberBuddyResource *jbr; -+ gboolean ret = FALSE; - const gchar *transport_type; - - gchar *resource = NULL, *me = NULL, *sid = NULL; -@@ -958,16 +959,15 @@ jingle_rtp_initiate_media(JabberStream * - jb = jabber_buddy_find(js, who, FALSE); - if (!jb) { - purple_debug_error("jingle-rtp", "Could not find Jabber buddy\n"); -- return FALSE; -+ goto out; - } - - resource = jabber_get_resource(who); - jbr = jabber_buddy_find_resource(jb, resource); -- g_free(resource); - - if (!jbr) { - purple_debug_error("jingle-rtp", "Could not find buddy's resource - %s\n", resource); -- return FALSE; -+ goto out; - } - - if (jabber_resource_has_capability(jbr, JINGLE_TRANSPORT_ICEUDP)) { -@@ -977,7 +977,7 @@ jingle_rtp_initiate_media(JabberStream * - } else { - purple_debug_error("jingle-rtp", "Resource doesn't support " - "the same transport types\n"); -- return FALSE; -+ goto out; - } - - /* set ourselves as initiator */ -@@ -985,7 +985,6 @@ jingle_rtp_initiate_media(JabberStream * - - sid = jabber_get_next_id(js); - session = jingle_session_create(js, sid, me, who, TRUE); -- g_free(sid); - - - if (type & PURPLE_MEDIA_AUDIO) { -@@ -1005,13 +1004,17 @@ jingle_rtp_initiate_media(JabberStream * - jingle_rtp_init_media(content); - } - -- g_free(me); -- - if (jingle_rtp_get_media(session) == NULL) { -- return FALSE; -+ goto out; - } - -- return TRUE; -+ ret = TRUE; -+ -+out: -+ g_free(me); -+ g_free(resource); -+ g_free(sid); -+ return ret; - } - - void diff --git a/pidgin.spec b/pidgin.spec index 7ac5812..d5010cb 100644 --- a/pidgin.spec +++ b/pidgin.spec @@ -113,14 +113,18 @@ %global farstream_version 0.2 %global gst1 1 %endif +# F29 doesn't support nm-glib anymore. +%if 0%{?fedora} >= 29 || 0%{?rhel} >= 8 +%global nm_integration 0 +%endif # valgrind available only on selected arches %ifarch %{ix86} x86_64 ppc ppc64 ppc64le s390x armv7hl aarch64 %global has_valgrind 1 %endif Name: pidgin -Version: 2.12.0 -Release: 8%{?dist} +Version: 2.13.0 +Release: 1%{?dist} License: GPLv2+ and GPLv2 and MIT # GPLv2+ - libpurple, gnt, finch, pidgin, most prpls # GPLv2 - novell prpls @@ -161,9 +165,7 @@ Patch2: pidgin-2.10.11-purple-remote-python3.patch ## Patches 100+: To be Included in Future Upstream Patch100: pidgin-2.10.1-fix-msn-ft-crashes.patch # upstream ticket https://developer.pidgin.im/ticket/16593 -Patch102: pidgin-2.10.11-do-not-disable-wall.patch -# upstream ticket https://developer.pidgin.im/ticket/17200 -Patch103: pidgin-jabber-Avoid-a-use-after-free-in-an-error-path.patch +Patch102: pidgin-2.10.11-do-not-disable-wall.patch Summary: A Gtk+ based multiprotocol instant messaging client @@ -476,8 +478,6 @@ echo "FEDORA=%{fedora} RHEL=%{rhel}" %patch100 -p0 -R -b .ftcrash # https://developer.pidgin.im/ticket/16593 %patch102 -p1 -# https://developer.pidgin.im/ticket/17200 -%patch103 -p1 # Our preferences cp %{SOURCE1} prefs.xml @@ -518,6 +518,8 @@ SWITCHES="--with-extraversion=%{release}" %endif %if %{nm_integration} SWITCHES="$SWITCHES --enable-nm" +%else + SWITCHES="$SWITCHES --disable-nm" %endif %if %{gstreamer_integration} SWITCHES="$SWITCHES --with-gstreamer=%{gstreamer_version}" @@ -768,6 +770,10 @@ touch --no-create %{_datadir}/icons/hicolor || : %endif %changelog +* Mon Apr 16 2018 Björn Esser - 2.13.0-1 +- Update to 2.13.0 (#1553811) +- Drop nm-glib on Fedora 29+ (#1530657) + * Fri Feb 09 2018 Fedora Release Engineering - 2.12.0-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild diff --git a/sources b/sources index cc13f5d..533d581 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (pidgin-2.12.0.tar.bz2) = e87b39888432982ee36332fd14b272f49f7974de9e8694f7fe3bec2821748d6e6026ac5a63615a93386a033d6ee7c4de5ae0a86b725f63b9cc55650f0ab94b06 +SHA512 (pidgin-2.13.0.tar.bz2) = 68b3d1eefee111544c7eb347386d0aea4f47c3e320d5963a4e0d833ed6af7b1be243a7bcd6a38c9234b58601d10a9aebf8541f1d97decfeca754fa78dc693047