summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2021-10-03 20:18:47 +0200
committerTobias Geerinckx-Rice <me@tobias.gr>2021-10-03 21:49:54 +0200
commit413f8f3fa58d732ad20a1c65d64e3ab36a71b51b (patch)
treef04e00250d9fa01bf3d29e1202167baf7e4f58c8 /gnu
parentf7f7b9f423fe0056c2d1f90c8063d6a92dee25c9 (diff)
downloadguix-413f8f3fa58d732ad20a1c65d64e3ab36a71b51b.tar.gz
gnu: hexchat: Update to 2.16.0.
* gnu/packages/messaging.scm (hexchat): Update to 2.16.0.
[source]: Remove patch.
[inputs]: Remove libnotify and libproxy.  Upgrade python-2 to python@3.
Add python-cffi and bash-minimal.
[arguments]: Don't explicitly return #t from phases.
Add a new 'wrap-program phase.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/messaging.scm36
-rw-r--r--gnu/packages/patches/hexchat-add-libera-chat.patch76
3 files changed, 22 insertions, 91 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 4db3ccd895..e98d975317 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1253,7 +1253,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/hdf-eos5-remove-gctp.patch		\
   %D%/packages/patches/hdf-eos5-fix-szip.patch			\
   %D%/packages/patches/hdf-eos5-fortrantests.patch		\
-  %D%/packages/patches/hexchat-add-libera-chat.patch		\
   %D%/packages/patches/http-parser-CVE-2020-8287.patch		\
   %D%/packages/patches/hubbub-sort-entities.patch		\
   %D%/packages/patches/hurd-cross.patch				\
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index a7fed957a3..6b4f26880c 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -85,6 +85,7 @@
   #:use-module (gnu packages kerberos)
   #:use-module (gnu packages less)
   #:use-module (gnu packages libcanberra)
+  #:use-module (gnu packages libffi)
   #:use-module (gnu packages libidn)
   #:use-module (gnu packages libreoffice)
   #:use-module (gnu packages linux)
@@ -709,15 +710,14 @@ used by Pidgin and Bitlbee, among others, to access
 (define-public hexchat
   (package
     (name "hexchat")
-    (version "2.14.3")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://dl.hexchat.net/hexchat/hexchat-"
-                                  version ".tar.xz"))
-              (patches (search-patches "hexchat-add-libera-chat.patch"))
-              (sha256
-               (base32
-                "10p829jm1r6kidkgf5lhqhyqc5mxdcq96q3zhadsckasvc9rs6lh"))))
+    (version "2.16.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://dl.hexchat.net/hexchat/hexchat-"
+                           version ".tar.xz"))
+       (sha256
+        (base32 "0dnwhb2gi08i5v79vq0y2izs89wyk3by96jv99kgkidjic3k2bj1"))))
     (build-system meson-build-system)
     (native-inputs `(("gettext" ,gettext-minimal)
                      ("glib:bin" ,glib "bin")       ;need glib-genmarshal
@@ -728,14 +728,16 @@ used by Pidgin and Bitlbee, among others, to access
               ("enchant" ,enchant)
               ("gtk" ,gtk+-2)
               ("libcanberra" ,libcanberra)
-              ("libnotify" ,libnotify)
-              ("libproxy" ,libproxy)
               ("openssl" ,openssl)
 
               ;; Bindings for add-on scripts.
               ("luajit" ,luajit)
               ("perl-xml-parser" ,perl-xml-parser)
-              ("python-2" ,python-2)))
+              ("python" ,python)
+              ("python-cffi" ,python-cffi)
+
+              ;; For the ensuing WRAP-PROGRAM.
+              ("bash-minimal" ,bash-minimal)))
     (arguments
      `(#:phases
        (modify-phases %standard-phases
@@ -747,8 +749,14 @@ used by Pidgin and Bitlbee, among others, to access
              ;; just skip this code.
              (substitute* "meson_post_install.py"
                (("if 'DESTDIR' not in os.environ:")
-                 "if False:"))
-             #t)))))
+                "if False:"))))
+         (add-after 'install 'wrap-program
+           ;; Let it ‘initialize the Python-CFFI embedding logic’ at run time.
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin")))
+               (wrap-program (string-append bin "/hexchat")
+                 `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH"))))))))))
     (synopsis "Graphical IRC client")
     (description
      "HexChat lets you connect to multiple IRC networks at once.  The main
diff --git a/gnu/packages/patches/hexchat-add-libera-chat.patch b/gnu/packages/patches/hexchat-add-libera-chat.patch
deleted file mode 100644
index 2bbb3137ba..0000000000
--- a/gnu/packages/patches/hexchat-add-libera-chat.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-Add libera.chat to the list of available networks and make it the
-default.
-
-Patches copied from upstream source repository:
-
-https://github.com/hexchat/hexchat/commit/a25f2381689d2c2279a0e43b33f6c0ec8305a096
-https://github.com/hexchat/hexchat/commit/d3545f37cd5f551ed8bc0ab7b20e5c8140adc0a6
-
-From a25f2381689d2c2279a0e43b33f6c0ec8305a096 Mon Sep 17 00:00:00 2001
-From: Panagiotis Vasilopoulos <hello@alwayslivid.com>
-Date: Wed, 19 May 2021 16:25:16 +0300
-Subject: [PATCH] Add Libera Chat to network list
-
----
- src/common/servlist.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/src/common/servlist.c b/src/common/servlist.c
-index e44a3f2df..33bd80f2d 100644
---- a/src/common/servlist.c
-+++ b/src/common/servlist.c
-@@ -239,6 +239,9 @@ static const struct defaultserver def[] =
- 	/* Self signed */
- 	{0,			"irc.librairc.net"},
- 
-+	{"Libera Chat", 0, 0, 0, LOGIN_SASL, 0, TRUE},
-+	{0,			"irc.libera.chat"},
-+
- #ifdef USE_OPENSSL
- 	{"LinkNet",	0},
- 	{0,			"irc.link-net.org/+7000"},
-From d3545f37cd5f551ed8bc0ab7b20e5c8140adc0a6 Mon Sep 17 00:00:00 2001
-From: Patrick Griffis <pgriffis@igalia.com>
-Date: Sun, 23 May 2021 21:15:43 -0500
-Subject: [PATCH] Change default network to Libera.Chat
-
----
- src/common/servlist.c | 4 ++--
- src/fe-gtk/joind.c    | 2 +-
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/src/common/servlist.c b/src/common/servlist.c
-index de75c8b9a..93557f975 100644
---- a/src/common/servlist.c
-+++ b/src/common/servlist.c
-@@ -240,7 +240,7 @@ static const struct defaultserver def[] =
- 	/* Self signed */
- 	{0,			"irc.librairc.net"},
- 
--	{"Libera Chat", 0, 0, 0, LOGIN_SASL, 0, TRUE},
-+	{"Libera.Chat", 0, 0, 0, LOGIN_SASL, 0, TRUE},
- 	{0,			"irc.libera.chat"},
- 
- #ifdef USE_OPENSSL
-@@ -942,7 +942,7 @@ servlist_load_defaults (void)
- {
- 	int i = 0, j = 0;
- 	ircnet *net = NULL;
--	guint def_hash = g_str_hash ("freenode");
-+	guint def_hash = g_str_hash ("Libera.Chat");
- 
- 	while (1)
- 	{
-diff --git a/src/fe-gtk/joind.c b/src/fe-gtk/joind.c
-index f1d3da504..ce3cbcaec 100644
---- a/src/fe-gtk/joind.c
-+++ b/src/fe-gtk/joind.c
-@@ -247,7 +247,7 @@ joind_show_dialog (server *serv)
- 							G_CALLBACK (joind_ok_cb), serv);
- 							
- 	if (serv->network)
--		if (g_ascii_strcasecmp(((ircnet*)serv->network)->name, "freenode") == 0)
-+		if (g_ascii_strcasecmp(((ircnet*)serv->network)->name, "Libera.Chat") == 0)
- 		{
- 			gtk_entry_set_text (GTK_ENTRY (entry1), "#hexchat");
- 		}