Date: Thursday, June 4, 2015 @ 04:27:49
  Author: eric
Revision: 240319

archrelease: copy trunk to staging-i686, staging-x86_64

Added:
  xchat/repos/staging-i686/
  xchat/repos/staging-i686/PKGBUILD
    (from rev 240318, xchat/trunk/PKGBUILD)
  xchat/repos/staging-i686/xchat-2.8.8-glib-2.31.patch
    (from rev 240318, xchat/trunk/xchat-2.8.8-glib-2.31.patch)
  xchat/repos/staging-i686/xchat-2.8.8-libnotify07.patch
    (from rev 240318, xchat/trunk/xchat-2.8.8-libnotify07.patch)
  xchat/repos/staging-i686/xchat-2.8.8-link-against-libnotify.patch
    (from rev 240318, xchat/trunk/xchat-2.8.8-link-against-libnotify.patch)
  xchat/repos/staging-i686/xchat-sslv23.patch
    (from rev 240318, xchat/trunk/xchat-sslv23.patch)
  xchat/repos/staging-i686/xchat.install
    (from rev 240318, xchat/trunk/xchat.install)
  xchat/repos/staging-x86_64/
  xchat/repos/staging-x86_64/PKGBUILD
    (from rev 240318, xchat/trunk/PKGBUILD)
  xchat/repos/staging-x86_64/xchat-2.8.8-glib-2.31.patch
    (from rev 240318, xchat/trunk/xchat-2.8.8-glib-2.31.patch)
  xchat/repos/staging-x86_64/xchat-2.8.8-libnotify07.patch
    (from rev 240318, xchat/trunk/xchat-2.8.8-libnotify07.patch)
  xchat/repos/staging-x86_64/xchat-2.8.8-link-against-libnotify.patch
    (from rev 240318, xchat/trunk/xchat-2.8.8-link-against-libnotify.patch)
  xchat/repos/staging-x86_64/xchat-sslv23.patch
    (from rev 240318, xchat/trunk/xchat-sslv23.patch)
  xchat/repos/staging-x86_64/xchat.install
    (from rev 240318, xchat/trunk/xchat.install)

---------------------------------------------------------+
 staging-i686/PKGBUILD                                   |   60 ++
 staging-i686/xchat-2.8.8-glib-2.31.patch                |   62 ++
 staging-i686/xchat-2.8.8-libnotify07.patch              |   24 
 staging-i686/xchat-2.8.8-link-against-libnotify.patch   |  343 ++++++++++++++
 staging-i686/xchat-sslv23.patch                         |   22 
 staging-i686/xchat.install                              |   11 
 staging-x86_64/PKGBUILD                                 |   60 ++
 staging-x86_64/xchat-2.8.8-glib-2.31.patch              |   62 ++
 staging-x86_64/xchat-2.8.8-libnotify07.patch            |   24 
 staging-x86_64/xchat-2.8.8-link-against-libnotify.patch |  343 ++++++++++++++
 staging-x86_64/xchat-sslv23.patch                       |   22 
 staging-x86_64/xchat.install                            |   11 
 12 files changed, 1044 insertions(+)

Copied: xchat/repos/staging-i686/PKGBUILD (from rev 240318, 
xchat/trunk/PKGBUILD)
===================================================================
--- staging-i686/PKGBUILD                               (rev 0)
+++ staging-i686/PKGBUILD       2015-06-04 02:27:49 UTC (rev 240319)
@@ -0,0 +1,60 @@
+# $Id$
+# Maintainer: Eric Bélanger <e...@archlinux.org>
+
+pkgname=xchat
+pkgver=2.8.8
+pkgrel=15
+pkgdesc="A GTK+ based IRC client"
+arch=('i686' 'x86_64')
+url="http://www.xchat.org/";
+license=('GPL')
+depends=('gtk2' 'openssl' 'dbus-glib' 'libnotify')
+makedepends=('tcl' 'perl' 'python2' 'librsvg')
+optdepends=('enchant: for spell checking support'
+           'perl: for perl plugin'
+           'tcl: for tcl plugin'
+            'python2: for python plugin')
+install=xchat.install
+source=(http://www.xchat.org/files/source/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz
+        http://xchat.org/files/icons/xchat-svg.tar.bz2
+        xchat-2.8.8-libnotify07.patch
+        xchat-2.8.8-link-against-libnotify.patch
+        xchat-2.8.8-glib-2.31.patch
+        xchat-sslv23.patch)
+sha1sums=('e12305da42d1aacc26c2ca25e239f393d4dd3532'
+          '0d366346cc11e0efb57fc2648fe423c94a3469bd'
+          'a053fba4e1911d1ee6a8248fe19e344797920fe3'
+          '70c3cc29fc55ff35f701ef8ac23078b6e3761ce1'
+          'aecaf6176a7cfd62555207b02f2793b360aa39da'
+          'ff2a3ca5ac297071c8a084d90fe9562e14745bc1')
+
+prepare() {
+  cd ${pkgname}-${pkgver}
+  sed -i 's/GDK_HAND1/GDK_HAND2/' src/fe-gtk/xtext.c
+  patch -p1 -i "${srcdir}/xchat-2.8.8-libnotify07.patch"
+  patch -p1 -i "${srcdir}/xchat-2.8.8-link-against-libnotify.patch"
+  patch -p1 -i "${srcdir}/xchat-2.8.8-glib-2.31.patch"
+  patch -p1 -i "${srcdir}/xchat-sslv23.patch"
+}
+
+build() {
+  cd ${pkgname}-${pkgver}
+  autoconf
+  autoheader
+
+  LIBS+="-lgmodule-2.0" ./configure --prefix=/usr --sysconfdir=/etc 
--datadir=/usr/share \
+    --enable-openssl --enable-dbus --disable-textfe --enable-ipv6 --enable-shm 
--enable-spell=static
+  make
+}
+
+package() {
+  cd ${pkgname}-${pkgver}
+  make DESTDIR="${pkgdir}" install
+
+  for i in 24 32 48 64 128 256 ; do
+    install -d "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps"
+    rsvg-convert -w $i -h $i -o 
"${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/xchat.png" ../xchat-cloned.svg
+  done
+  install -D -m644 ../xchat-cloned.svg 
"${pkgdir}/usr/share/icons/hicolor/scalable/apps/xchat.svg"
+  install -D -m644 ../xchat-used.svg 
"${pkgdir}/usr/share/icons/hicolor/scalable/apps/xchat2.svg"
+}

Copied: xchat/repos/staging-i686/xchat-2.8.8-glib-2.31.patch (from rev 240318, 
xchat/trunk/xchat-2.8.8-glib-2.31.patch)
===================================================================
--- staging-i686/xchat-2.8.8-glib-2.31.patch                            (rev 0)
+++ staging-i686/xchat-2.8.8-glib-2.31.patch    2015-06-04 02:27:49 UTC (rev 
240319)
@@ -0,0 +1,62 @@
+Author: Dominique Leuenberger <dims...@opensuse.org>
+
+http://sourceforge.net/tracker/?func=detail&aid=3446968&group_id=239&atid=100239
+
+glib got stricter in checking includes. Only glib.h (and a few exceptions)
+are to be included directly.
+
+Index: xchat-2.8.8/src/common/servlist.c
+===================================================================
+--- xchat-2.8.8.orig/src/common/servlist.c
++++ xchat-2.8.8/src/common/servlist.c
+@@ -24,7 +24,7 @@
+ #include <unistd.h>
+ 
+ #include "xchat.h"
+-#include <glib/ghash.h>
++#include <glib.h>
+ 
+ #include "cfgfiles.h"
+ #include "fe.h"
+Index: xchat-2.8.8/src/common/text.c
+===================================================================
+--- xchat-2.8.8.orig/src/common/text.c
++++ xchat-2.8.8/src/common/text.c
+@@ -28,7 +28,7 @@
+ #include <sys/mman.h>
+ 
+ #include "xchat.h"
+-#include <glib/ghash.h>
++#include <glib.h>
+ #include "cfgfiles.h"
+ #include "chanopt.h"
+ #include "plugin.h"
+Index: xchat-2.8.8/src/common/util.c
+===================================================================
+--- xchat-2.8.8.orig/src/common/util.c
++++ xchat-2.8.8/src/common/util.c
+@@ -39,7 +39,7 @@
+ #include <errno.h>
+ #include "xchat.h"
+ #include "xchatc.h"
+-#include <glib/gmarkup.h>
++#include <glib.h>
+ #include <ctype.h>
+ #include "util.h"
+ #include "../../config.h"
+Index: xchat-2.8.8/src/common/xchat.h
+===================================================================
+--- xchat-2.8.8.orig/src/common/xchat.h
++++ xchat-2.8.8/src/common/xchat.h
+@@ -1,10 +1,6 @@
+ #include "../../config.h"
+ 
+-#include <glib/gslist.h>
+-#include <glib/glist.h>
+-#include <glib/gutils.h>
+-#include <glib/giochannel.h>
+-#include <glib/gstrfuncs.h>
++#include <glib.h>
+ #include <time.h>                     /* need time_t */
+ 
+ #ifndef XCHAT_H

Copied: xchat/repos/staging-i686/xchat-2.8.8-libnotify07.patch (from rev 
240318, xchat/trunk/xchat-2.8.8-libnotify07.patch)
===================================================================
--- staging-i686/xchat-2.8.8-libnotify07.patch                          (rev 0)
+++ staging-i686/xchat-2.8.8-libnotify07.patch  2015-06-04 02:27:49 UTC (rev 
240319)
@@ -0,0 +1,24 @@
+diff -up xchat-2.8.8/src/fe-gtk/plugin-tray.c.libnotify07 
xchat-2.8.8/src/fe-gtk/plugin-tray.c
+--- xchat-2.8.8/src/fe-gtk/plugin-tray.c.libnotify07   2010-11-15 
17:32:15.708325783 -0500
++++ xchat-2.8.8/src/fe-gtk/plugin-tray.c       2010-11-15 18:05:17.322141789 
-0500
+@@ -125,8 +125,9 @@ static void *nn_mod = NULL;
+ /* prototypes */
+ static gboolean (*nn_init) (char *);
+ static void (*nn_uninit) (void);
+-static void *(*nn_new_with_status_icon) (const gchar *summary, const gchar 
*message, const gchar *icon, GtkStatusIcon *status_icon);
+-static void *(*nn_new) (const gchar *summary, const gchar *message, const 
gchar *icon, GtkWidget *attach);
++/* recent versions of libnotify don't take the fourth GtkWidget argument, but 
passing an
++ * extra NULL argument will be fine */
++static void *(*nn_new) (const gchar *summary, const gchar *message, const 
gchar *icon, gpointer dummy);
+ static gboolean (*nn_show) (void *noti, GError **error);
+ static void (*nn_set_timeout) (void *noti, gint timeout);
+ 
+@@ -160,8 +161,6 @@ libnotify_notify_new (const char *title,
+                       goto bad;
+               if (!g_module_symbol (nn_mod, "notify_uninit", 
(gpointer)&nn_uninit))
+                       goto bad;
+-              if (!g_module_symbol (nn_mod, 
"notify_notification_new_with_status_icon", (gpointer)&nn_new_with_status_icon))
+-                      goto bad;
+               if (!g_module_symbol (nn_mod, "notify_notification_new", 
(gpointer)&nn_new))
+                       goto bad;
+               if (!g_module_symbol (nn_mod, "notify_notification_show", 
(gpointer)&nn_show))

Copied: xchat/repos/staging-i686/xchat-2.8.8-link-against-libnotify.patch (from 
rev 240318, xchat/trunk/xchat-2.8.8-link-against-libnotify.patch)
===================================================================
--- staging-i686/xchat-2.8.8-link-against-libnotify.patch                       
        (rev 0)
+++ staging-i686/xchat-2.8.8-link-against-libnotify.patch       2015-06-04 
02:27:49 UTC (rev 240319)
@@ -0,0 +1,343 @@
+From: Christopher Aillon <cail...@redhat.com>
+Date: Thu, 7 Apr 2011 19:34:14 -0700
+Subject: [PATCH] Link directly against libnotify
+
+Dynamically loading the library isn't ideal since the soname
+can change silently on us.  Additionally, notify-send is
+shipped as part of libnotify, so we aren't actually bringing
+in a new dependency.  Since we'd need to patch the source and
+rebuild for new sonames anyway, there's little benefit to
+dynamically loading libnotify.
+
+Plus, this has the benefit of cleaning up the code, as well as
+ensuring we'll catch any future soname changes sooner.
+
+https://bugzilla.redhat.com/show_bug.cgi?id=693362
+https://sourceforge.net/tracker/?func=detail&aid=3280223&group_id=239&atid=100239
+---
+ configure.in             |   23 +++++++
+ src/fe-gtk/plugin-tray.c |  144 
++++++++++-------------------------------------
+ 2 files changed, 55 insertions(+), 112 deletions(-)
+
+diff -p -U8 xchat-2.8.8/configure.in.libnotifyso4 xchat-2.8.8/configure.in
+--- xchat-2.8.8/configure.in.libnotifyso4      2010-05-29 23:01:16.000000000 
-0700
++++ xchat-2.8.8/configure.in   2011-04-07 19:27:00.448137113 -0700
+@@ -34,16 +34,17 @@ AH_VERBATIM([PREFIX],[#undef PREFIX])
+ AH_VERBATIM([XCHATLIBDIR],[#undef XCHATLIBDIR])
+ AH_VERBATIM([XCHATSHAREDIR],[#undef XCHATSHAREDIR])
+ AH_VERBATIM([SOCKS],[#undef SOCKS])
+ AH_VERBATIM([USE_MSPROXY],[#undef USE_MSPROXY])
+ dnl AH_VERBATIM([USE_GNOME],[#undef USE_GNOME])
+ AH_VERBATIM([USE_SHM],[#undef USE_SHM])
+ AH_VERBATIM([USE_GTKSPELL],[#undef USE_GTKSPELL])
+ AH_VERBATIM([USE_LIBSEXY],[#undef USE_LIBSEXY])
++AH_VERBATIM([USE_LIBNOTIFY],[#undef USE_LIBNOTIFY])
+ AH_VERBATIM([USE_IPV6],[#undef USE_IPV6])
+ AH_VERBATIM([USE_MMX],[#undef USE_MMX])
+ AH_VERBATIM([USE_OPENSSL],[#undef USE_OPENSSL])
+ AH_VERBATIM([USE_PLUGIN],[#undef USE_PLUGIN])
+ AH_VERBATIM([USE_XFT],[#undef USE_XFT])
+ AH_VERBATIM([USE_XLIB],[#undef USE_XLIB])
+ AH_VERBATIM([USE_SIGACTION],[#undef USE_SIGACTION])
+ AH_VERBATIM([USING_FREEBSD],[#undef USING_FREEBSD])
+@@ -126,16 +127,20 @@ AC_ARG_ENABLE(tcl,
+ AC_ARG_ENABLE(plugin,
+ [  --disable-plugin        disable plugin support],
+         plugin=$enableval, plugin=yes)
+ 
+ AC_ARG_ENABLE(dbus,
+ [  --disable-dbus          disable DBUS support],
+         dbus=$enableval, dbus=yes)
+ 
++AC_ARG_ENABLE(libnotify,
++[  --disable-libnotify     disable libnotify support],
++        libnotify=$enableval, libnotify=yes)
++
+ AC_ARG_ENABLE(mmx,
+ [  --disable-mmx           disable MMX assembly routines],
+         mmx=$enableval, mmx=yes)
+ 
+ AC_ARG_ENABLE(shm,
+ [  --enable-shm            enable use of XShm for fast tinting (default: no)],
+         shm=$enableval, shm=no)
+ 
+@@ -482,16 +487,32 @@ if test "x$dbus" = "xyes" ; then
+ 
+               DBUS_SERVICES_DIR="$DATADIR/dbus-1/services"
+               AC_SUBST(DBUS_SERVICES_DIR)
+               AC_DEFINE_UNQUOTED(DBUS_SERVICES_DIR, "$DBUS_SERVICES_DIR", 
[Where services dir for DBUS is])
+       fi
+ fi
+ 
+ dnl *********************************************************************
++dnl ** LIBNOTIFY ********************************************************
++dnl *********************************************************************
++
++if test "x$libnotify" = "xyes" ; then
++      PKG_CHECK_MODULES(LIBNOTIFY, libnotify >= 0.4, [], [
++              AC_MSG_RESULT(no)
++              libnotify=no
++      ])
++      if test "$libnotify" != "no" ; then
++              GUI_LIBS="$GUI_LIBS $LIBNOTIFY_LIBS"
++              GUI_CFLAGS="$GUI_CFLAGS $LIBNOTIFY_CFLAGS"
++              AC_DEFINE(USE_LIBNOTIFY)
++      fi
++fi
++
++dnl *********************************************************************
+ dnl ** SPELL ************************************************************
+ dnl *********************************************************************
+ 
+ if test "$spell" = "gtkspell" ; then
+       PKG_CHECK_MODULES(GTKSPELL, gtkspell-2.0 >= 2.0.2, [], [
+               AC_MSG_RESULT(no)
+               spell=no
+       ])
+@@ -519,16 +540,17 @@ if test "$spell" = "static" ; then
+ fi
+ 
+ dnl *********************************************************************
+ dnl ** CONDITIONALS *****************************************************
+ dnl *********************************************************************
+ 
+ AM_CONDITIONAL(USE_OPENSSL, test "x$openssl" = "xyes")
+ AM_CONDITIONAL(USE_LIBSEXY, test "x$spell" = "xstatic")
++AM_CONDITIONAL(USE_LIBNOTIFY, test "x$libnotify" = "xyes")
+ AM_CONDITIONAL(DO_TEXT, test "x$textfe" = "xyes")
+ AM_CONDITIONAL(DO_GTK, test "x$gtkfe" = "xyes")
+ AM_CONDITIONAL(DO_PERL, test "x$perl" = "xyes")
+ AM_CONDITIONAL(DO_PYTHON, test "x$python" = "xyes")
+ AM_CONDITIONAL(DO_TCL, test "x$tcl" = "xyes")
+ AM_CONDITIONAL(DO_PLUGIN, test "x$plugin" = "xyes")
+ AM_CONDITIONAL(USE_DBUS, test "x$dbus" = "xyes")
+ AM_CONDITIONAL(DO_GCONF, test "x$GCONFTOOL" != "xno")
+@@ -807,16 +829,17 @@ echo mmx tinting ......... : $mmx\       spell
+ echo XShm tinting ........ : $shm\    plugin interface ...... : $plugin
+ if test "$xft" = no; then
+   echo text backend ........ : pango\ nls/gettext ........... : $USE_NLS
+ else
+   echo text backend ........ : xft\   nls/gettext ........... : $USE_NLS
+ fi
+ echo openssl support ..... : $openssl\        ipv6 support .......... : $ipv6
+ echo dbus support ........ : $dbus\   msproxy ntlm \(ISA\) .... : $have_ntlm
++echo libnotify support ... : $libnotify
+ echo
+ echo The binary will be installed in $prefix/bin
+ echo
+ 
+ if test "$gtkfe" = no; then
+       echo Warning: The GTK \(GUI\) frontend will not be built.
+       echo
+ fi
+diff -p -U8 xchat-2.8.8/src/fe-gtk/plugin-tray.c.libnotifyso4 
xchat-2.8.8/src/fe-gtk/plugin-tray.c
+--- xchat-2.8.8/src/fe-gtk/plugin-tray.c.libnotifyso4  2011-04-07 
17:57:27.524307905 -0700
++++ xchat-2.8.8/src/fe-gtk/plugin-tray.c       2011-04-07 19:18:33.429475719 
-0700
+@@ -10,17 +10,27 @@
+ #include "../common/fe.h"
+ #include "../common/util.h"
+ #include "fe-gtk.h"
+ #include "pixmaps.h"
+ #include "maingui.h"
+ #include "menu.h"
+ #include <gtk/gtk.h>
+ 
+-#define LIBNOTIFY
++#ifdef USE_LIBNOTIFY
++#include <libnotify/notify.h>
++#ifndef NOTIFY_CHECK_VERSION
++#define NOTIFY_CHECK_VERSION(x,y,z) 0
++#endif
++#if NOTIFY_CHECK_VERSION(0,7,0)
++#define XC_NOTIFY_NEW(a,b,c,d) notify_notification_new(a,b,c)
++#else
++#define XC_NOTIFY_NEW(a,b,c,d) notify_notification_new(a,b,c,d)
++#endif
++#endif
+ 
+ typedef enum  /* current icon status */
+ {
+       TS_NONE,
+       TS_MESSAGE,
+       TS_HIGHLIGHT,
+       TS_FILEOFFER,
+       TS_CUSTOM /* plugin */
+@@ -112,90 +122,16 @@ tray_count_networks (void)
+ 
+ void
+ fe_tray_set_tooltip (const char *text)
+ {
+       if (sticon)
+               gtk_status_icon_set_tooltip (sticon, text);
+ }
+ 
+-#ifdef LIBNOTIFY
+-
+-/* dynamic access to libnotify.so */
+-
+-static void *nn_mod = NULL;
+-/* prototypes */
+-static gboolean (*nn_init) (char *);
+-static void (*nn_uninit) (void);
+-/* recent versions of libnotify don't take the fourth GtkWidget argument, but 
passing an
+- * extra NULL argument will be fine */
+-static void *(*nn_new) (const gchar *summary, const gchar *message, const 
gchar *icon, gpointer dummy);
+-static gboolean (*nn_show) (void *noti, GError **error);
+-static void (*nn_set_timeout) (void *noti, gint timeout);
+-
+-static void
+-libnotify_cleanup (void)
+-{
+-      if (nn_mod)
+-      {
+-              nn_uninit ();
+-              g_module_close (nn_mod);
+-              nn_mod = NULL;
+-      }
+-}
+-
+-static gboolean
+-libnotify_notify_new (const char *title, const char *text, GtkStatusIcon 
*icon)
+-{
+-      void *noti;
+-
+-      if (!nn_mod)
+-      {
+-              nn_mod = g_module_open ("libnotify", G_MODULE_BIND_LAZY);
+-              if (!nn_mod)
+-              {
+-                      nn_mod = g_module_open ("libnotify.so.1", 
G_MODULE_BIND_LAZY);
+-                      if (!nn_mod)
+-                              return FALSE;
+-              }
+-
+-              if (!g_module_symbol (nn_mod, "notify_init", 
(gpointer)&nn_init))
+-                      goto bad;
+-              if (!g_module_symbol (nn_mod, "notify_uninit", 
(gpointer)&nn_uninit))
+-                      goto bad;
+-              if (!g_module_symbol (nn_mod, "notify_notification_new", 
(gpointer)&nn_new))
+-                      goto bad;
+-              if (!g_module_symbol (nn_mod, "notify_notification_show", 
(gpointer)&nn_show))
+-                      goto bad;
+-              if (!g_module_symbol (nn_mod, 
"notify_notification_set_timeout", (gpointer)&nn_set_timeout))
+-                      goto bad;
+-              if (!nn_init (PACKAGE_NAME))
+-                      goto bad;
+-      }
+-
+-      text = strip_color (text, -1, STRIP_ALL|STRIP_ESCMARKUP);
+-      title = strip_color (title, -1, STRIP_ALL);
+-      noti = nn_new (title, text, XCHATSHAREDIR"/pixmaps/xchat.png", NULL);
+-      g_free ((char *)title);
+-      g_free ((char *)text);
+-
+-      nn_set_timeout (noti, prefs.input_balloon_time*1000);
+-      nn_show (noti, NULL);
+-      g_object_unref (G_OBJECT (noti));
+-
+-      return TRUE;
+-
+-bad:
+-      g_module_close (nn_mod);
+-      nn_mod = NULL;
+-      return FALSE;
+-}
+-
+-#endif
+-
+ void
+ fe_tray_set_balloon (const char *title, const char *text)
+ {
+ #ifndef WIN32
+       const char *argv[8];
+       const char *path;
+       char time[16];
+       WinStatus ws;
+@@ -208,52 +144,36 @@ fe_tray_set_balloon (const char *title, 
+       /* bit 1 of flags means "no balloons unless hidden/iconified" */
+       if (ws != WS_HIDDEN && (prefs.gui_tray_flags & 2))
+               return;
+ 
+       /* FIXME: this should close the current balloon */
+       if (!text)
+               return;
+ 
+-#ifdef LIBNOTIFY
+-      /* try it via libnotify.so */
+-      if (libnotify_notify_new (title, text, sticon))
+-              return; /* success */
+-#endif
++#ifdef USE_LIBNOTIFY
++      NotifyNotification *notification;
++      char *notify_text, *notify_title;
+ 
+-      /* try it the crude way */
+-      path = g_find_program_in_path ("notify-send");
+-      if (path)
+-      {
+-              sprintf(time, "%d000",prefs.input_balloon_time);
+-              argv[0] = path;
+-              argv[1] = "-i";
+-              argv[2] = "gtk-dialog-info";
+-              if (access (XCHATSHAREDIR"/pixmaps/xchat.png", R_OK) == 0)
+-                      argv[2] = XCHATSHAREDIR"/pixmaps/xchat.png";
+-              argv[3] = "-t";
+-              argv[4] = time;
+-              argv[5] = title;
+-              text = strip_color (text, -1, STRIP_ALL|STRIP_ESCMARKUP);
+-              argv[6] = text;
+-              argv[7] = NULL;
+-              xchat_execv (argv);
+-              g_free ((char *)path);
+-              g_free ((char *)text);
+-      }
+-      else
+-      {
+-              /* show this error only once */
+-              static unsigned char said_it = FALSE;
+-              if (!said_it)
+-              {
+-                      said_it = TRUE;
+-                      fe_message (_("Cannot find 'notify-send' to open 
balloon alerts.\nPlease install libnotify."), FE_MSG_ERROR);
+-              }
+-      }
++      if (!notify_is_initted())
++              notify_init(PACKAGE_NAME);
++
++      notify_text = strip_color (text, -1, STRIP_ALL|STRIP_ESCMARKUP);
++      notify_title = strip_color (title, -1, STRIP_ALL);
++
++      notification = XC_NOTIFY_NEW (notify_title, notify_text, 
XCHATSHAREDIR"/pixmaps/xchat.png", NULL);
++
++      g_free ((char *)notify_title);
++      g_free ((char *)notify_text);
++
++      notify_notification_set_timeout (notification, 
prefs.input_balloon_time*1000);
++      notify_notification_show (notification, NULL);
++
++      g_object_unref (notification);
++#endif
+ #endif
+ }
+ 
+ static void
+ tray_set_balloonf (const char *text, const char *format, ...)
+ {
+       va_list args;
+       char *buf;
+@@ -840,13 +760,13 @@ tray_plugin_init (xchat_plugin *plugin_h
+       return 1;       /* return 1 for success */
+ }
+ 
+ int
+ tray_plugin_deinit (xchat_plugin *plugin_handle)
+ {
+ #ifdef WIN32
+       tray_cleanup ();
+-#elif defined(LIBNOTIFY)
+-      libnotify_cleanup ();
++#elif defined(USE_LIBNOTIFY)
++      notify_uninit ();
+ #endif
+       return 1;
+ }

Copied: xchat/repos/staging-i686/xchat-sslv23.patch (from rev 240318, 
xchat/trunk/xchat-sslv23.patch)
===================================================================
--- staging-i686/xchat-sslv23.patch                             (rev 0)
+++ staging-i686/xchat-sslv23.patch     2015-06-04 02:27:49 UTC (rev 240319)
@@ -0,0 +1,22 @@
+--- a/src/common/ssl.c
++++ b/src/common/ssl.c
+@@ -70,8 +70,9 @@
+ 
+       SSLeay_add_ssl_algorithms ();
+       SSL_load_error_strings ();
+-      ctx = SSL_CTX_new (server ? SSLv3_server_method() : SSLv3_client_method 
());
++      ctx = SSL_CTX_new (server ? SSLv23_server_method() : 
SSLv23_client_method ());
+ 
++      SSL_CTX_set_options(ctx, SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3);
+       SSL_CTX_set_session_cache_mode (ctx, SSL_SESS_CACHE_BOTH);
+       SSL_CTX_set_timeout (ctx, 300);
+ 
+@@ -281,7 +282,7 @@
+               __SSL_critical_error ("SSL_new");
+ 
+       SSL_set_fd (ssl, sd);
+-      if (ctx->method == SSLv3_client_method())
++      if (ctx->method == SSLv23_client_method())
+               SSL_set_connect_state (ssl);
+       else
+               SSL_set_accept_state(ssl);

Copied: xchat/repos/staging-i686/xchat.install (from rev 240318, 
xchat/trunk/xchat.install)
===================================================================
--- staging-i686/xchat.install                          (rev 0)
+++ staging-i686/xchat.install  2015-06-04 02:27:49 UTC (rev 240319)
@@ -0,0 +1,11 @@
+post_install() {
+  gtk-update-icon-cache -q -t -f usr/share/icons/hicolor       
+}
+
+post_upgrade() {
+  post_install $1
+}
+
+post_remove() {
+  post_install $1
+}

Copied: xchat/repos/staging-x86_64/PKGBUILD (from rev 240318, 
xchat/trunk/PKGBUILD)
===================================================================
--- staging-x86_64/PKGBUILD                             (rev 0)
+++ staging-x86_64/PKGBUILD     2015-06-04 02:27:49 UTC (rev 240319)
@@ -0,0 +1,60 @@
+# $Id$
+# Maintainer: Eric Bélanger <e...@archlinux.org>
+
+pkgname=xchat
+pkgver=2.8.8
+pkgrel=15
+pkgdesc="A GTK+ based IRC client"
+arch=('i686' 'x86_64')
+url="http://www.xchat.org/";
+license=('GPL')
+depends=('gtk2' 'openssl' 'dbus-glib' 'libnotify')
+makedepends=('tcl' 'perl' 'python2' 'librsvg')
+optdepends=('enchant: for spell checking support'
+           'perl: for perl plugin'
+           'tcl: for tcl plugin'
+            'python2: for python plugin')
+install=xchat.install
+source=(http://www.xchat.org/files/source/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz
+        http://xchat.org/files/icons/xchat-svg.tar.bz2
+        xchat-2.8.8-libnotify07.patch
+        xchat-2.8.8-link-against-libnotify.patch
+        xchat-2.8.8-glib-2.31.patch
+        xchat-sslv23.patch)
+sha1sums=('e12305da42d1aacc26c2ca25e239f393d4dd3532'
+          '0d366346cc11e0efb57fc2648fe423c94a3469bd'
+          'a053fba4e1911d1ee6a8248fe19e344797920fe3'
+          '70c3cc29fc55ff35f701ef8ac23078b6e3761ce1'
+          'aecaf6176a7cfd62555207b02f2793b360aa39da'
+          'ff2a3ca5ac297071c8a084d90fe9562e14745bc1')
+
+prepare() {
+  cd ${pkgname}-${pkgver}
+  sed -i 's/GDK_HAND1/GDK_HAND2/' src/fe-gtk/xtext.c
+  patch -p1 -i "${srcdir}/xchat-2.8.8-libnotify07.patch"
+  patch -p1 -i "${srcdir}/xchat-2.8.8-link-against-libnotify.patch"
+  patch -p1 -i "${srcdir}/xchat-2.8.8-glib-2.31.patch"
+  patch -p1 -i "${srcdir}/xchat-sslv23.patch"
+}
+
+build() {
+  cd ${pkgname}-${pkgver}
+  autoconf
+  autoheader
+
+  LIBS+="-lgmodule-2.0" ./configure --prefix=/usr --sysconfdir=/etc 
--datadir=/usr/share \
+    --enable-openssl --enable-dbus --disable-textfe --enable-ipv6 --enable-shm 
--enable-spell=static
+  make
+}
+
+package() {
+  cd ${pkgname}-${pkgver}
+  make DESTDIR="${pkgdir}" install
+
+  for i in 24 32 48 64 128 256 ; do
+    install -d "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps"
+    rsvg-convert -w $i -h $i -o 
"${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/xchat.png" ../xchat-cloned.svg
+  done
+  install -D -m644 ../xchat-cloned.svg 
"${pkgdir}/usr/share/icons/hicolor/scalable/apps/xchat.svg"
+  install -D -m644 ../xchat-used.svg 
"${pkgdir}/usr/share/icons/hicolor/scalable/apps/xchat2.svg"
+}

Copied: xchat/repos/staging-x86_64/xchat-2.8.8-glib-2.31.patch (from rev 
240318, xchat/trunk/xchat-2.8.8-glib-2.31.patch)
===================================================================
--- staging-x86_64/xchat-2.8.8-glib-2.31.patch                          (rev 0)
+++ staging-x86_64/xchat-2.8.8-glib-2.31.patch  2015-06-04 02:27:49 UTC (rev 
240319)
@@ -0,0 +1,62 @@
+Author: Dominique Leuenberger <dims...@opensuse.org>
+
+http://sourceforge.net/tracker/?func=detail&aid=3446968&group_id=239&atid=100239
+
+glib got stricter in checking includes. Only glib.h (and a few exceptions)
+are to be included directly.
+
+Index: xchat-2.8.8/src/common/servlist.c
+===================================================================
+--- xchat-2.8.8.orig/src/common/servlist.c
++++ xchat-2.8.8/src/common/servlist.c
+@@ -24,7 +24,7 @@
+ #include <unistd.h>
+ 
+ #include "xchat.h"
+-#include <glib/ghash.h>
++#include <glib.h>
+ 
+ #include "cfgfiles.h"
+ #include "fe.h"
+Index: xchat-2.8.8/src/common/text.c
+===================================================================
+--- xchat-2.8.8.orig/src/common/text.c
++++ xchat-2.8.8/src/common/text.c
+@@ -28,7 +28,7 @@
+ #include <sys/mman.h>
+ 
+ #include "xchat.h"
+-#include <glib/ghash.h>
++#include <glib.h>
+ #include "cfgfiles.h"
+ #include "chanopt.h"
+ #include "plugin.h"
+Index: xchat-2.8.8/src/common/util.c
+===================================================================
+--- xchat-2.8.8.orig/src/common/util.c
++++ xchat-2.8.8/src/common/util.c
+@@ -39,7 +39,7 @@
+ #include <errno.h>
+ #include "xchat.h"
+ #include "xchatc.h"
+-#include <glib/gmarkup.h>
++#include <glib.h>
+ #include <ctype.h>
+ #include "util.h"
+ #include "../../config.h"
+Index: xchat-2.8.8/src/common/xchat.h
+===================================================================
+--- xchat-2.8.8.orig/src/common/xchat.h
++++ xchat-2.8.8/src/common/xchat.h
+@@ -1,10 +1,6 @@
+ #include "../../config.h"
+ 
+-#include <glib/gslist.h>
+-#include <glib/glist.h>
+-#include <glib/gutils.h>
+-#include <glib/giochannel.h>
+-#include <glib/gstrfuncs.h>
++#include <glib.h>
+ #include <time.h>                     /* need time_t */
+ 
+ #ifndef XCHAT_H

Copied: xchat/repos/staging-x86_64/xchat-2.8.8-libnotify07.patch (from rev 
240318, xchat/trunk/xchat-2.8.8-libnotify07.patch)
===================================================================
--- staging-x86_64/xchat-2.8.8-libnotify07.patch                                
(rev 0)
+++ staging-x86_64/xchat-2.8.8-libnotify07.patch        2015-06-04 02:27:49 UTC 
(rev 240319)
@@ -0,0 +1,24 @@
+diff -up xchat-2.8.8/src/fe-gtk/plugin-tray.c.libnotify07 
xchat-2.8.8/src/fe-gtk/plugin-tray.c
+--- xchat-2.8.8/src/fe-gtk/plugin-tray.c.libnotify07   2010-11-15 
17:32:15.708325783 -0500
++++ xchat-2.8.8/src/fe-gtk/plugin-tray.c       2010-11-15 18:05:17.322141789 
-0500
+@@ -125,8 +125,9 @@ static void *nn_mod = NULL;
+ /* prototypes */
+ static gboolean (*nn_init) (char *);
+ static void (*nn_uninit) (void);
+-static void *(*nn_new_with_status_icon) (const gchar *summary, const gchar 
*message, const gchar *icon, GtkStatusIcon *status_icon);
+-static void *(*nn_new) (const gchar *summary, const gchar *message, const 
gchar *icon, GtkWidget *attach);
++/* recent versions of libnotify don't take the fourth GtkWidget argument, but 
passing an
++ * extra NULL argument will be fine */
++static void *(*nn_new) (const gchar *summary, const gchar *message, const 
gchar *icon, gpointer dummy);
+ static gboolean (*nn_show) (void *noti, GError **error);
+ static void (*nn_set_timeout) (void *noti, gint timeout);
+ 
+@@ -160,8 +161,6 @@ libnotify_notify_new (const char *title,
+                       goto bad;
+               if (!g_module_symbol (nn_mod, "notify_uninit", 
(gpointer)&nn_uninit))
+                       goto bad;
+-              if (!g_module_symbol (nn_mod, 
"notify_notification_new_with_status_icon", (gpointer)&nn_new_with_status_icon))
+-                      goto bad;
+               if (!g_module_symbol (nn_mod, "notify_notification_new", 
(gpointer)&nn_new))
+                       goto bad;
+               if (!g_module_symbol (nn_mod, "notify_notification_show", 
(gpointer)&nn_show))

Copied: xchat/repos/staging-x86_64/xchat-2.8.8-link-against-libnotify.patch 
(from rev 240318, xchat/trunk/xchat-2.8.8-link-against-libnotify.patch)
===================================================================
--- staging-x86_64/xchat-2.8.8-link-against-libnotify.patch                     
        (rev 0)
+++ staging-x86_64/xchat-2.8.8-link-against-libnotify.patch     2015-06-04 
02:27:49 UTC (rev 240319)
@@ -0,0 +1,343 @@
+From: Christopher Aillon <cail...@redhat.com>
+Date: Thu, 7 Apr 2011 19:34:14 -0700
+Subject: [PATCH] Link directly against libnotify
+
+Dynamically loading the library isn't ideal since the soname
+can change silently on us.  Additionally, notify-send is
+shipped as part of libnotify, so we aren't actually bringing
+in a new dependency.  Since we'd need to patch the source and
+rebuild for new sonames anyway, there's little benefit to
+dynamically loading libnotify.
+
+Plus, this has the benefit of cleaning up the code, as well as
+ensuring we'll catch any future soname changes sooner.
+
+https://bugzilla.redhat.com/show_bug.cgi?id=693362
+https://sourceforge.net/tracker/?func=detail&aid=3280223&group_id=239&atid=100239
+---
+ configure.in             |   23 +++++++
+ src/fe-gtk/plugin-tray.c |  144 
++++++++++-------------------------------------
+ 2 files changed, 55 insertions(+), 112 deletions(-)
+
+diff -p -U8 xchat-2.8.8/configure.in.libnotifyso4 xchat-2.8.8/configure.in
+--- xchat-2.8.8/configure.in.libnotifyso4      2010-05-29 23:01:16.000000000 
-0700
++++ xchat-2.8.8/configure.in   2011-04-07 19:27:00.448137113 -0700
+@@ -34,16 +34,17 @@ AH_VERBATIM([PREFIX],[#undef PREFIX])
+ AH_VERBATIM([XCHATLIBDIR],[#undef XCHATLIBDIR])
+ AH_VERBATIM([XCHATSHAREDIR],[#undef XCHATSHAREDIR])
+ AH_VERBATIM([SOCKS],[#undef SOCKS])
+ AH_VERBATIM([USE_MSPROXY],[#undef USE_MSPROXY])
+ dnl AH_VERBATIM([USE_GNOME],[#undef USE_GNOME])
+ AH_VERBATIM([USE_SHM],[#undef USE_SHM])
+ AH_VERBATIM([USE_GTKSPELL],[#undef USE_GTKSPELL])
+ AH_VERBATIM([USE_LIBSEXY],[#undef USE_LIBSEXY])
++AH_VERBATIM([USE_LIBNOTIFY],[#undef USE_LIBNOTIFY])
+ AH_VERBATIM([USE_IPV6],[#undef USE_IPV6])
+ AH_VERBATIM([USE_MMX],[#undef USE_MMX])
+ AH_VERBATIM([USE_OPENSSL],[#undef USE_OPENSSL])
+ AH_VERBATIM([USE_PLUGIN],[#undef USE_PLUGIN])
+ AH_VERBATIM([USE_XFT],[#undef USE_XFT])
+ AH_VERBATIM([USE_XLIB],[#undef USE_XLIB])
+ AH_VERBATIM([USE_SIGACTION],[#undef USE_SIGACTION])
+ AH_VERBATIM([USING_FREEBSD],[#undef USING_FREEBSD])
+@@ -126,16 +127,20 @@ AC_ARG_ENABLE(tcl,
+ AC_ARG_ENABLE(plugin,
+ [  --disable-plugin        disable plugin support],
+         plugin=$enableval, plugin=yes)
+ 
+ AC_ARG_ENABLE(dbus,
+ [  --disable-dbus          disable DBUS support],
+         dbus=$enableval, dbus=yes)
+ 
++AC_ARG_ENABLE(libnotify,
++[  --disable-libnotify     disable libnotify support],
++        libnotify=$enableval, libnotify=yes)
++
+ AC_ARG_ENABLE(mmx,
+ [  --disable-mmx           disable MMX assembly routines],
+         mmx=$enableval, mmx=yes)
+ 
+ AC_ARG_ENABLE(shm,
+ [  --enable-shm            enable use of XShm for fast tinting (default: no)],
+         shm=$enableval, shm=no)
+ 
+@@ -482,16 +487,32 @@ if test "x$dbus" = "xyes" ; then
+ 
+               DBUS_SERVICES_DIR="$DATADIR/dbus-1/services"
+               AC_SUBST(DBUS_SERVICES_DIR)
+               AC_DEFINE_UNQUOTED(DBUS_SERVICES_DIR, "$DBUS_SERVICES_DIR", 
[Where services dir for DBUS is])
+       fi
+ fi
+ 
+ dnl *********************************************************************
++dnl ** LIBNOTIFY ********************************************************
++dnl *********************************************************************
++
++if test "x$libnotify" = "xyes" ; then
++      PKG_CHECK_MODULES(LIBNOTIFY, libnotify >= 0.4, [], [
++              AC_MSG_RESULT(no)
++              libnotify=no
++      ])
++      if test "$libnotify" != "no" ; then
++              GUI_LIBS="$GUI_LIBS $LIBNOTIFY_LIBS"
++              GUI_CFLAGS="$GUI_CFLAGS $LIBNOTIFY_CFLAGS"
++              AC_DEFINE(USE_LIBNOTIFY)
++      fi
++fi
++
++dnl *********************************************************************
+ dnl ** SPELL ************************************************************
+ dnl *********************************************************************
+ 
+ if test "$spell" = "gtkspell" ; then
+       PKG_CHECK_MODULES(GTKSPELL, gtkspell-2.0 >= 2.0.2, [], [
+               AC_MSG_RESULT(no)
+               spell=no
+       ])
+@@ -519,16 +540,17 @@ if test "$spell" = "static" ; then
+ fi
+ 
+ dnl *********************************************************************
+ dnl ** CONDITIONALS *****************************************************
+ dnl *********************************************************************
+ 
+ AM_CONDITIONAL(USE_OPENSSL, test "x$openssl" = "xyes")
+ AM_CONDITIONAL(USE_LIBSEXY, test "x$spell" = "xstatic")
++AM_CONDITIONAL(USE_LIBNOTIFY, test "x$libnotify" = "xyes")
+ AM_CONDITIONAL(DO_TEXT, test "x$textfe" = "xyes")
+ AM_CONDITIONAL(DO_GTK, test "x$gtkfe" = "xyes")
+ AM_CONDITIONAL(DO_PERL, test "x$perl" = "xyes")
+ AM_CONDITIONAL(DO_PYTHON, test "x$python" = "xyes")
+ AM_CONDITIONAL(DO_TCL, test "x$tcl" = "xyes")
+ AM_CONDITIONAL(DO_PLUGIN, test "x$plugin" = "xyes")
+ AM_CONDITIONAL(USE_DBUS, test "x$dbus" = "xyes")
+ AM_CONDITIONAL(DO_GCONF, test "x$GCONFTOOL" != "xno")
+@@ -807,16 +829,17 @@ echo mmx tinting ......... : $mmx\       spell
+ echo XShm tinting ........ : $shm\    plugin interface ...... : $plugin
+ if test "$xft" = no; then
+   echo text backend ........ : pango\ nls/gettext ........... : $USE_NLS
+ else
+   echo text backend ........ : xft\   nls/gettext ........... : $USE_NLS
+ fi
+ echo openssl support ..... : $openssl\        ipv6 support .......... : $ipv6
+ echo dbus support ........ : $dbus\   msproxy ntlm \(ISA\) .... : $have_ntlm
++echo libnotify support ... : $libnotify
+ echo
+ echo The binary will be installed in $prefix/bin
+ echo
+ 
+ if test "$gtkfe" = no; then
+       echo Warning: The GTK \(GUI\) frontend will not be built.
+       echo
+ fi
+diff -p -U8 xchat-2.8.8/src/fe-gtk/plugin-tray.c.libnotifyso4 
xchat-2.8.8/src/fe-gtk/plugin-tray.c
+--- xchat-2.8.8/src/fe-gtk/plugin-tray.c.libnotifyso4  2011-04-07 
17:57:27.524307905 -0700
++++ xchat-2.8.8/src/fe-gtk/plugin-tray.c       2011-04-07 19:18:33.429475719 
-0700
+@@ -10,17 +10,27 @@
+ #include "../common/fe.h"
+ #include "../common/util.h"
+ #include "fe-gtk.h"
+ #include "pixmaps.h"
+ #include "maingui.h"
+ #include "menu.h"
+ #include <gtk/gtk.h>
+ 
+-#define LIBNOTIFY
++#ifdef USE_LIBNOTIFY
++#include <libnotify/notify.h>
++#ifndef NOTIFY_CHECK_VERSION
++#define NOTIFY_CHECK_VERSION(x,y,z) 0
++#endif
++#if NOTIFY_CHECK_VERSION(0,7,0)
++#define XC_NOTIFY_NEW(a,b,c,d) notify_notification_new(a,b,c)
++#else
++#define XC_NOTIFY_NEW(a,b,c,d) notify_notification_new(a,b,c,d)
++#endif
++#endif
+ 
+ typedef enum  /* current icon status */
+ {
+       TS_NONE,
+       TS_MESSAGE,
+       TS_HIGHLIGHT,
+       TS_FILEOFFER,
+       TS_CUSTOM /* plugin */
+@@ -112,90 +122,16 @@ tray_count_networks (void)
+ 
+ void
+ fe_tray_set_tooltip (const char *text)
+ {
+       if (sticon)
+               gtk_status_icon_set_tooltip (sticon, text);
+ }
+ 
+-#ifdef LIBNOTIFY
+-
+-/* dynamic access to libnotify.so */
+-
+-static void *nn_mod = NULL;
+-/* prototypes */
+-static gboolean (*nn_init) (char *);
+-static void (*nn_uninit) (void);
+-/* recent versions of libnotify don't take the fourth GtkWidget argument, but 
passing an
+- * extra NULL argument will be fine */
+-static void *(*nn_new) (const gchar *summary, const gchar *message, const 
gchar *icon, gpointer dummy);
+-static gboolean (*nn_show) (void *noti, GError **error);
+-static void (*nn_set_timeout) (void *noti, gint timeout);
+-
+-static void
+-libnotify_cleanup (void)
+-{
+-      if (nn_mod)
+-      {
+-              nn_uninit ();
+-              g_module_close (nn_mod);
+-              nn_mod = NULL;
+-      }
+-}
+-
+-static gboolean
+-libnotify_notify_new (const char *title, const char *text, GtkStatusIcon 
*icon)
+-{
+-      void *noti;
+-
+-      if (!nn_mod)
+-      {
+-              nn_mod = g_module_open ("libnotify", G_MODULE_BIND_LAZY);
+-              if (!nn_mod)
+-              {
+-                      nn_mod = g_module_open ("libnotify.so.1", 
G_MODULE_BIND_LAZY);
+-                      if (!nn_mod)
+-                              return FALSE;
+-              }
+-
+-              if (!g_module_symbol (nn_mod, "notify_init", 
(gpointer)&nn_init))
+-                      goto bad;
+-              if (!g_module_symbol (nn_mod, "notify_uninit", 
(gpointer)&nn_uninit))
+-                      goto bad;
+-              if (!g_module_symbol (nn_mod, "notify_notification_new", 
(gpointer)&nn_new))
+-                      goto bad;
+-              if (!g_module_symbol (nn_mod, "notify_notification_show", 
(gpointer)&nn_show))
+-                      goto bad;
+-              if (!g_module_symbol (nn_mod, 
"notify_notification_set_timeout", (gpointer)&nn_set_timeout))
+-                      goto bad;
+-              if (!nn_init (PACKAGE_NAME))
+-                      goto bad;
+-      }
+-
+-      text = strip_color (text, -1, STRIP_ALL|STRIP_ESCMARKUP);
+-      title = strip_color (title, -1, STRIP_ALL);
+-      noti = nn_new (title, text, XCHATSHAREDIR"/pixmaps/xchat.png", NULL);
+-      g_free ((char *)title);
+-      g_free ((char *)text);
+-
+-      nn_set_timeout (noti, prefs.input_balloon_time*1000);
+-      nn_show (noti, NULL);
+-      g_object_unref (G_OBJECT (noti));
+-
+-      return TRUE;
+-
+-bad:
+-      g_module_close (nn_mod);
+-      nn_mod = NULL;
+-      return FALSE;
+-}
+-
+-#endif
+-
+ void
+ fe_tray_set_balloon (const char *title, const char *text)
+ {
+ #ifndef WIN32
+       const char *argv[8];
+       const char *path;
+       char time[16];
+       WinStatus ws;
+@@ -208,52 +144,36 @@ fe_tray_set_balloon (const char *title, 
+       /* bit 1 of flags means "no balloons unless hidden/iconified" */
+       if (ws != WS_HIDDEN && (prefs.gui_tray_flags & 2))
+               return;
+ 
+       /* FIXME: this should close the current balloon */
+       if (!text)
+               return;
+ 
+-#ifdef LIBNOTIFY
+-      /* try it via libnotify.so */
+-      if (libnotify_notify_new (title, text, sticon))
+-              return; /* success */
+-#endif
++#ifdef USE_LIBNOTIFY
++      NotifyNotification *notification;
++      char *notify_text, *notify_title;
+ 
+-      /* try it the crude way */
+-      path = g_find_program_in_path ("notify-send");
+-      if (path)
+-      {
+-              sprintf(time, "%d000",prefs.input_balloon_time);
+-              argv[0] = path;
+-              argv[1] = "-i";
+-              argv[2] = "gtk-dialog-info";
+-              if (access (XCHATSHAREDIR"/pixmaps/xchat.png", R_OK) == 0)
+-                      argv[2] = XCHATSHAREDIR"/pixmaps/xchat.png";
+-              argv[3] = "-t";
+-              argv[4] = time;
+-              argv[5] = title;
+-              text = strip_color (text, -1, STRIP_ALL|STRIP_ESCMARKUP);
+-              argv[6] = text;
+-              argv[7] = NULL;
+-              xchat_execv (argv);
+-              g_free ((char *)path);
+-              g_free ((char *)text);
+-      }
+-      else
+-      {
+-              /* show this error only once */
+-              static unsigned char said_it = FALSE;
+-              if (!said_it)
+-              {
+-                      said_it = TRUE;
+-                      fe_message (_("Cannot find 'notify-send' to open 
balloon alerts.\nPlease install libnotify."), FE_MSG_ERROR);
+-              }
+-      }
++      if (!notify_is_initted())
++              notify_init(PACKAGE_NAME);
++
++      notify_text = strip_color (text, -1, STRIP_ALL|STRIP_ESCMARKUP);
++      notify_title = strip_color (title, -1, STRIP_ALL);
++
++      notification = XC_NOTIFY_NEW (notify_title, notify_text, 
XCHATSHAREDIR"/pixmaps/xchat.png", NULL);
++
++      g_free ((char *)notify_title);
++      g_free ((char *)notify_text);
++
++      notify_notification_set_timeout (notification, 
prefs.input_balloon_time*1000);
++      notify_notification_show (notification, NULL);
++
++      g_object_unref (notification);
++#endif
+ #endif
+ }
+ 
+ static void
+ tray_set_balloonf (const char *text, const char *format, ...)
+ {
+       va_list args;
+       char *buf;
+@@ -840,13 +760,13 @@ tray_plugin_init (xchat_plugin *plugin_h
+       return 1;       /* return 1 for success */
+ }
+ 
+ int
+ tray_plugin_deinit (xchat_plugin *plugin_handle)
+ {
+ #ifdef WIN32
+       tray_cleanup ();
+-#elif defined(LIBNOTIFY)
+-      libnotify_cleanup ();
++#elif defined(USE_LIBNOTIFY)
++      notify_uninit ();
+ #endif
+       return 1;
+ }

Copied: xchat/repos/staging-x86_64/xchat-sslv23.patch (from rev 240318, 
xchat/trunk/xchat-sslv23.patch)
===================================================================
--- staging-x86_64/xchat-sslv23.patch                           (rev 0)
+++ staging-x86_64/xchat-sslv23.patch   2015-06-04 02:27:49 UTC (rev 240319)
@@ -0,0 +1,22 @@
+--- a/src/common/ssl.c
++++ b/src/common/ssl.c
+@@ -70,8 +70,9 @@
+ 
+       SSLeay_add_ssl_algorithms ();
+       SSL_load_error_strings ();
+-      ctx = SSL_CTX_new (server ? SSLv3_server_method() : SSLv3_client_method 
());
++      ctx = SSL_CTX_new (server ? SSLv23_server_method() : 
SSLv23_client_method ());
+ 
++      SSL_CTX_set_options(ctx, SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3);
+       SSL_CTX_set_session_cache_mode (ctx, SSL_SESS_CACHE_BOTH);
+       SSL_CTX_set_timeout (ctx, 300);
+ 
+@@ -281,7 +282,7 @@
+               __SSL_critical_error ("SSL_new");
+ 
+       SSL_set_fd (ssl, sd);
+-      if (ctx->method == SSLv3_client_method())
++      if (ctx->method == SSLv23_client_method())
+               SSL_set_connect_state (ssl);
+       else
+               SSL_set_accept_state(ssl);

Copied: xchat/repos/staging-x86_64/xchat.install (from rev 240318, 
xchat/trunk/xchat.install)
===================================================================
--- staging-x86_64/xchat.install                                (rev 0)
+++ staging-x86_64/xchat.install        2015-06-04 02:27:49 UTC (rev 240319)
@@ -0,0 +1,11 @@
+post_install() {
+  gtk-update-icon-cache -q -t -f usr/share/icons/hicolor       
+}
+
+post_upgrade() {
+  post_install $1
+}
+
+post_remove() {
+  post_install $1
+}

Reply via email to