about summary refs log tree commit diff
diff options
context:
space:
mode:
authorChuang Zhu <git@chuang.cz>2023-07-25 04:22:56 +0800
committerChuang Zhu <git@chuang.cz>2023-07-25 04:22:56 +0800
commit517fd7c36500f64fc168d8bc4fd3c11e5fb77632 (patch)
tree0792ac780e87857b002ee602efbda9f250b772c6
parent12303c652b881435065a98729eb7278313041e49 (diff)
pan: 0.146 -> 0.154
According to https://pan.rebelbase.com/download/, newer versions are
released on https://gitlab.gnome.org/GNOME/pan/
-rw-r--r--pkgs/applications/networking/newsreaders/pan/default.nix27
-rw-r--r--pkgs/applications/networking/newsreaders/pan/move-out-of-extern-c.diff1113
2 files changed, 13 insertions, 1127 deletions
diff --git a/pkgs/applications/networking/newsreaders/pan/default.nix b/pkgs/applications/networking/newsreaders/pan/default.nix
index 854f1c3484ec0..839766e2ac7b9 100644
--- a/pkgs/applications/networking/newsreaders/pan/default.nix
+++ b/pkgs/applications/networking/newsreaders/pan/default.nix
@@ -1,11 +1,12 @@
 { spellChecking ? true
 , lib
 , stdenv
-, fetchurl
+, fetchFromGitLab
+, autoreconfHook
 , pkg-config
 , gtk3
 , gtkspell3
-, gmime2
+, gmime3
 , gettext
 , intltool
 , itstool
@@ -21,21 +22,19 @@
 
 stdenv.mkDerivation rec {
   pname = "pan";
-  version = "0.146";
-
-  src = fetchurl {
-    url = "https://pan.rebelbase.com/download/releases/${version}/source/pan-${version}.tar.bz2";
-    sha256 = "17agd27sn4a7nahvkpg0w39kv74njgdrrygs74bbvpaj8rk2hb55";
+  version = "0.154";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "GNOME";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-o+JFUraSoQ0HDmldHvTX+X7rl2L4n4lJmI4UFZrsfkQ=";
   };
 
-  patches = [
-    # Take <glib.h>, <gmime.h>, "gtk-compat.h" out of extern "C"
-    ./move-out-of-extern-c.diff
-  ];
-
-  nativeBuildInputs = [ pkg-config gettext intltool itstool libxml2 makeWrapper ];
+  nativeBuildInputs = [ autoreconfHook pkg-config gettext intltool itstool libxml2 makeWrapper ];
 
-  buildInputs = [ gtk3 gmime2 libnotify gnutls ]
+  buildInputs = [ gtk3 gmime3 libnotify gnutls ]
     ++ lib.optional spellChecking gtkspell3
     ++ lib.optionals gnomeSupport [ libsecret gcr ];
 
diff --git a/pkgs/applications/networking/newsreaders/pan/move-out-of-extern-c.diff b/pkgs/applications/networking/newsreaders/pan/move-out-of-extern-c.diff
deleted file mode 100644
index 02b19b58ee560..0000000000000
--- a/pkgs/applications/networking/newsreaders/pan/move-out-of-extern-c.diff
+++ /dev/null
@@ -1,1113 +0,0 @@
-diff --git a/pan/data-impl/article-filter.cc b/pan/data-impl/article-filter.cc
-index b06d0c2..f424738 100644
---- a/pan/data-impl/article-filter.cc
-+++ b/pan/data-impl/article-filter.cc
-@@ -25,10 +25,7 @@
- #include <gmime/gmime.h>
- 
- //#include <glib/gprintf.h>
--extern "C"
--{
--  #include <glib.h>
--}
-+#include <glib.h>
- 
- #include "article-filter.h"
- 
-diff --git a/pan/data-impl/data-impl.cc b/pan/data-impl/data-impl.cc
-index 88012cc..4465966 100644
---- a/pan/data-impl/data-impl.cc
-+++ b/pan/data-impl/data-impl.cc
-@@ -22,10 +22,8 @@
- **************/
- 
- #include <config.h>
--extern "C" {
--  #include <glib/gi18n.h>
--  #include <glib.h> // for g_build_filename
--}
-+#include <glib/gi18n.h>
-+#include <glib.h> // for g_build_filename
- #include <pan/general/debug.h>
- #include <pan/general/file-util.h>
- #include <pan/general/log.h>
-diff --git a/pan/data-impl/data-io.cc b/pan/data-impl/data-io.cc
-index bea1a90..d938634 100644
---- a/pan/data-impl/data-io.cc
-+++ b/pan/data-impl/data-io.cc
-@@ -27,9 +27,9 @@ extern "C" {
-   #include <sys/types.h> // for chmod
-   #include <sys/stat.h> // for chmod
-   #include <unistd.h>
--  #include <glib.h>
--  #include <glib/gi18n.h>
- }
-+#include <glib.h>
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/file-util.h>
- #include <pan/general/line-reader.h>
-diff --git a/pan/data-impl/groups.cc b/pan/data-impl/groups.cc
-index 244feb9..da0183a 100644
---- a/pan/data-impl/groups.cc
-+++ b/pan/data-impl/groups.cc
-@@ -29,9 +29,9 @@
- #include <vector>
- 
- #include <glib.h>
-+#include <glib/gi18n.h>
- extern "C" {
-   #include <unistd.h>
--  #include <glib/gi18n.h>
- }
- 
- #include <pan/general/debug.h>
-diff --git a/pan/data-impl/headers.cc b/pan/data-impl/headers.cc
-index f8c4466..16d5672 100644
---- a/pan/data-impl/headers.cc
-+++ b/pan/data-impl/headers.cc
-@@ -25,10 +25,10 @@
- #include <string>
- #include <cmath>
- #include <glib.h>
-+#include <glib/gi18n.h>
- extern "C" {
-   #include <sys/types.h> // for chmod
-   #include <sys/stat.h> // for chmod
--  #include <glib/gi18n.h>
- }
- #include <pan/general/debug.h>
- #include <pan/general/log.h>
-diff --git a/pan/data-impl/profiles.cc b/pan/data-impl/profiles.cc
-index e999fda..a6e6bb5 100644
---- a/pan/data-impl/profiles.cc
-+++ b/pan/data-impl/profiles.cc
-@@ -26,9 +26,9 @@
- extern "C" {
-   #include <sys/types.h> // for chmod
-   #include <sys/stat.h> // for chmod
--  #include <glib.h>
--  #include <glib/gi18n.h>
- }
-+#include <glib.h>
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/string-view.h>
- #include <pan/general/file-util.h>
-diff --git a/pan/data-impl/server.cc b/pan/data-impl/server.cc
-index 9ea55d4..b23782f 100644
---- a/pan/data-impl/server.cc
-+++ b/pan/data-impl/server.cc
-@@ -25,10 +25,8 @@
- #include <map>
- #include <set>
- #include <vector>
--extern "C" {
--  #include <glib.h> // for GMarkup
--  #include <glib/gi18n.h>
--}
-+#include <glib.h> // for GMarkup
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/file-util.h>
- #include <pan/general/log.h>
-diff --git a/pan/data-impl/xover.cc b/pan/data-impl/xover.cc
-index ff8644f..a199556 100644
---- a/pan/data-impl/xover.cc
-+++ b/pan/data-impl/xover.cc
-@@ -20,10 +20,8 @@
- #include <config.h>
- #include <cmath>
- #include <fstream>
--extern "C" {
--  #include <glib/gi18n.h>
--  #include <gmime/gmime.h>
--}
-+#include <glib/gi18n.h>
-+#include <gmime/gmime.h>
- #include <pan/general/debug.h>
- #include <pan/general/log.h>
- #include <pan/general/macros.h>
-diff --git a/pan/data/article-cache.cc b/pan/data/article-cache.cc
-index 1855153..30fa0f9 100644
---- a/pan/data/article-cache.cc
-+++ b/pan/data/article-cache.cc
-@@ -26,11 +26,10 @@ extern "C"
-   #include <sys/stat.h>
-   #include <unistd.h>
-   #include <dirent.h>
--
--  #include <glib.h>
--  #include <glib/gi18n.h>
--  #include <gmime/gmime.h>
- }
-+#include <glib.h>
-+#include <gmime/gmime.h>
-+#include <glib/gi18n.h>
- 
- #include <pan/general/debug.h>
- #include <pan/general/file-util.h>
-diff --git a/pan/data/article-cache.h b/pan/data/article-cache.h
-index 2ac722b..1304bfe 100644
---- a/pan/data/article-cache.h
-+++ b/pan/data/article-cache.h
-@@ -22,9 +22,7 @@
- 
- #include <map>
- #include <vector>
--extern "C" {
--  #include <glib.h> // for guint64
--}
-+#include <glib.h> // for guint64
- #include <pan/general/string-view.h>
- #include <pan/general/quark.h>
- 
-diff --git a/pan/data/cert-store.cc b/pan/data/cert-store.cc
-index 340fc8b..f6cd46e 100644
---- a/pan/data/cert-store.cc
-+++ b/pan/data/cert-store.cc
-@@ -34,10 +34,8 @@
- #include <iostream>
- #include <string>
- 
--extern "C" {
- #include <glib/gi18n.h>
- #include <glib.h>
--}
- 
- #include <pan/general/debug.h>
- #include <pan/general/e-util.h>
-diff --git a/pan/data/encode-cache.cc b/pan/data/encode-cache.cc
-index 3a82ea9..61c67a2 100644
---- a/pan/data/encode-cache.cc
-+++ b/pan/data/encode-cache.cc
-@@ -28,11 +28,10 @@ extern "C"
-   #include <sys/stat.h>
-   #include <unistd.h>
-   #include <dirent.h>
--
--  #include <glib.h>
--  #include <glib/gi18n.h>
--  #include <gmime/gmime.h>
- }
-+#include <gmime/gmime.h>
-+#include <glib.h>
-+#include <glib/gi18n.h>
- 
- #include <pan/general/debug.h>
- #include <pan/general/file-util.h>
-diff --git a/pan/data/encode-cache.h b/pan/data/encode-cache.h
-index 8bbd530..1affc0c 100644
---- a/pan/data/encode-cache.h
-+++ b/pan/data/encode-cache.h
-@@ -22,9 +22,7 @@
- 
- #include <map>
- #include <vector>
--extern "C" {
--  #include <glib.h> // for guint64
--}
-+#include <glib.h> // for guint64
- #include <pan/general/string-view.h>
- #include <pan/general/quark.h>
- 
-diff --git a/pan/general/e-util.cc b/pan/general/e-util.cc
-index af5ccd0..62879ee 100644
---- a/pan/general/e-util.cc
-+++ b/pan/general/e-util.cc
-@@ -26,9 +26,9 @@
- #include <ctime>
- extern "C" {
-   #include <ctype.h>
--  #include <glib.h>
--  #include <glib/gi18n.h>
- }
-+#include <glib.h>
-+#include <glib/gi18n.h>
- #include "debug.h"
- #include "e-util.h"
- 
-diff --git a/pan/general/file-util.cc b/pan/general/file-util.cc
-index 02e9ed1..9efa269 100644
---- a/pan/general/file-util.cc
-+++ b/pan/general/file-util.cc
-@@ -27,12 +27,12 @@ extern "C"
-   #include <unistd.h>
-   #include <sys/stat.h>
-   #include <sys/types.h>
--  #include <glib.h>
--  #include <glib/gi18n.h>
-   #ifndef G_OS_WIN32
-     #include <pwd.h>
-   #endif
- }
-+#include <glib.h>
-+#include <glib/gi18n.h>
- 
- #include "debug.h"
- #include "log.h"
-diff --git a/pan/general/file-util.h b/pan/general/file-util.h
-index c125c8d..8c67639 100644
---- a/pan/general/file-util.h
-+++ b/pan/general/file-util.h
-@@ -25,9 +25,9 @@
- extern "C" {
-   #include <stddef.h>
-   #include <stdio.h>
--  #include <glib.h>
--  #include <glib/gstdio.h>
- }
-+#include <glib.h>
-+#include <glib/gstdio.h>
- #include <pan/general/string-view.h>
- 
- #define g_freopen freopen
-diff --git a/pan/general/line-reader.cc b/pan/general/line-reader.cc
-index afb9be8..6b80fc4 100644
---- a/pan/general/line-reader.cc
-+++ b/pan/general/line-reader.cc
-@@ -1,9 +1,7 @@
- #include <config.h>
- #include <cstdio>
- #include <cstdlib>
--extern "C"{ 
--  #include <glib/gi18n.h>
--}
-+#include <glib/gi18n.h>
- #include <cerrno>
- #include "file-util.h"
- #include "line-reader.h"
-diff --git a/pan/general/macros.h b/pan/general/macros.h
-index 6dcf908..b16230f 100644
---- a/pan/general/macros.h
-+++ b/pan/general/macros.h
-@@ -63,9 +63,6 @@
- ***  g_assert
- **/
- 
--extern "C"
--{
--  #include <glib.h>
--}
-+#include <glib.h>
- 
- #endif
-diff --git a/pan/general/text-match.cc b/pan/general/text-match.cc
-index fcacbe2..d390de0 100644
---- a/pan/general/text-match.cc
-+++ b/pan/general/text-match.cc
-@@ -20,9 +20,9 @@
- #include <config.h>
- extern "C" {
-   #include <ctype.h>
--  #include <glib.h>
--  #include <glib/gi18n.h>
- }
-+#include <glib.h>
-+#include <glib/gi18n.h>
- #include "debug.h"
- #include "log.h"
- #include "text-match.h"
-diff --git a/pan/general/utf8-utils.cc b/pan/general/utf8-utils.cc
-index be79a13..fea6100 100644
---- a/pan/general/utf8-utils.cc
-+++ b/pan/general/utf8-utils.cc
-@@ -21,9 +21,7 @@
- #include <string>
- #include <vector>
- #include <string.h>
--extern "C" {
- #include <glib/gi18n.h>
--}
- #include <locale.h>
- #include <gmime/gmime.h>
- #include <pan/general/debug.h>
-diff --git a/pan/gui/actions.cc b/pan/gui/actions.cc
-index 520c08b..5ec397c 100644
---- a/pan/gui/actions.cc
-+++ b/pan/gui/actions.cc
-@@ -18,11 +18,9 @@
-  */
- 
- #include <config.h>
--extern "C" {
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--}
-+#include "gtk-compat.h"
- 
-+#include <glib/gi18n.h>
- #include <pan/general/macros.h>
- #include <pan/general/debug.h>
- #include <pan/data-impl/data-impl.h>
-diff --git a/pan/gui/body-pane.cc b/pan/gui/body-pane.cc
-index 53e9124..e9841e2 100644
---- a/pan/gui/body-pane.cc
-+++ b/pan/gui/body-pane.cc
-@@ -22,11 +22,9 @@
- #include <cmath>
- #include <iostream>
- #include <sstream>
--extern "C" {
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--  #include <gmime/gmime.h>
--}
-+#include "gtk-compat.h"
-+#include <gmime/gmime.h>
-+#include <glib/gi18n.h>
- #include <gdk-pixbuf/gdk-pixbuf.h>
- #include <pan/general/debug.h>
- #include <pan/general/log.h>
-diff --git a/pan/gui/dl-headers-ui.cc b/pan/gui/dl-headers-ui.cc
-index 5841651..e9f4b2d 100644
---- a/pan/gui/dl-headers-ui.cc
-+++ b/pan/gui/dl-headers-ui.cc
-@@ -18,11 +18,9 @@
-  */
- 
- #include <config.h>
--extern "C" {
--  #include <glib.h>
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--}
-+#include <glib.h>
-+#include <glib/gi18n.h>
-+#include "gtk-compat.h"
- #include <pan/general/macros.h>
- #include <pan/tasks/queue.h>
- #include <pan/tasks/task-xover.h>
-diff --git a/pan/gui/group-pane.cc b/pan/gui/group-pane.cc
-index 28ad581..3ff103e 100644
---- a/pan/gui/group-pane.cc
-+++ b/pan/gui/group-pane.cc
-@@ -20,10 +20,8 @@
- #include <config.h>
- #include <cassert>
- #include <deque>
--extern "C" {
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--}
-+#include "gtk-compat.h"
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- //#include <pan/general/gdk-threads.h>
- #include <pan/general/log.h>
-diff --git a/pan/gui/group-prefs-dialog.cc b/pan/gui/group-prefs-dialog.cc
-index 677b07a..0d7df8b 100644
---- a/pan/gui/group-prefs-dialog.cc
-+++ b/pan/gui/group-prefs-dialog.cc
-@@ -18,14 +18,14 @@
-  */
- 
- #include <config.h>
--extern "C" {
--  #include <glib/gi18n.h>
--  #include <glib.h>
--  #include "gtk-compat.h"
-+#include <glib/gi18n.h>
-+#include <glib.h>
- #ifdef HAVE_GTKSPELL
-+extern "C" {
-   #include <enchant/enchant.h>
--#endif
- }
-+#endif
-+#include "gtk-compat.h"
- #include <pan/general/debug.h>
- #include <pan/general/macros.h>
- #include <pan/data/data.h>
-diff --git a/pan/gui/group-prefs.cc b/pan/gui/group-prefs.cc
-index 3e9851b..b06a949 100644
---- a/pan/gui/group-prefs.cc
-+++ b/pan/gui/group-prefs.cc
-@@ -21,8 +21,8 @@ extern "C" {
-   #include <config.h>
-   #include <sys/types.h> // chmod
-   #include <sys/stat.h> // chmod
--  #include <glib.h>
- }
-+#include <glib.h>
- #include <iostream>
- #include <fstream>
- #include <pan/general/file-util.h>
-diff --git a/pan/gui/gui.cc b/pan/gui/gui.cc
-index f79aa1e..9f8787e 100644
---- a/pan/gui/gui.cc
-+++ b/pan/gui/gui.cc
-@@ -25,9 +25,9 @@
- extern "C" {
-   #include <sys/types.h> // for chmod
-   #include <sys/stat.h> // for chmod
--  #include <glib/gi18n.h>
-   #include <dirent.h>
- }
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/e-util.h>
- #include <pan/general/file-util.h>
-diff --git a/pan/gui/header-pane.cc b/pan/gui/header-pane.cc
-index dc65a77..a4a9952 100644
---- a/pan/gui/header-pane.cc
-+++ b/pan/gui/header-pane.cc
-@@ -19,10 +19,9 @@
- 
- extern "C" {
-   #include <config.h>
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--  #include "gtk-compat.h"
- }
-+#include "gtk-compat.h"
-+#include <glib/gi18n.h>
- #include <cctype>
- #include <cmath>
- #include <algorithm>
-diff --git a/pan/gui/log-ui.cc b/pan/gui/log-ui.cc
-index 7b11493..b204298 100644
---- a/pan/gui/log-ui.cc
-+++ b/pan/gui/log-ui.cc
-@@ -21,10 +21,8 @@
- #include <ostream>
- #include <fstream>
- #include <iostream>
--extern "C" {
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--}
-+#include "gtk-compat.h"
-+#include <glib/gi18n.h>
- #include <pan/general/log.h>
- #include <pan/general/macros.h>
- #include <pan/general/string-view.h>
-diff --git a/pan/gui/pan-file-entry.cc b/pan/gui/pan-file-entry.cc
-index 705fc91..c67acf8 100644
---- a/pan/gui/pan-file-entry.cc
-+++ b/pan/gui/pan-file-entry.cc
-@@ -19,10 +19,8 @@
- 
- #include <config.h>
- #include <string>
--extern "C" {
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--}
-+#include "gtk-compat.h"
-+#include <glib/gi18n.h>
- #include <pan/general/file-util.h>
- #include "pad.h"
- #include "pan-file-entry.h"
-diff --git a/pan/gui/pan.cc b/pan/gui/pan.cc
-index fb3a696..46c1a5d 100644
---- a/pan/gui/pan.cc
-+++ b/pan/gui/pan.cc
-@@ -24,9 +24,6 @@
- #include <signal.h>
- 
- extern "C" {
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--  #include <gmime/gmime.h>
-   #include <gio/gio.h>
-   #include <sys/types.h>
-   #include <sys/stat.h>
-@@ -34,6 +31,9 @@ extern "C" {
-   #include <uulib/crc32.h>
- }
- 
-+#include "gtk-compat.h"
-+#include <glib/gi18n.h>
-+#include <gmime/gmime.h>
- #ifdef G_OS_WIN32
-   #undef _WIN32_WINNT
-   #define _WIN32_WINNT 0x0501
-diff --git a/pan/gui/post-ui.cc b/pan/gui/post-ui.cc
-index 8769ec5..92c757d 100644
---- a/pan/gui/post-ui.cc
-+++ b/pan/gui/post-ui.cc
-@@ -23,14 +23,14 @@
- #include <sstream>
- #include <unistd.h>
- extern "C" {
--  #include <gmime/gmime.h>
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
-   #include <sys/time.h>
- #ifdef HAVE_GTKSPELL
-   #include <gtkspell/gtkspell.h>
- #endif
- }
-+#include "gtk-compat.h"
-+#include <gmime/gmime.h>
-+#include <glib/gi18n.h>
- #include <pan/data/data.h>
- #include <pan/general/debug.h>
- #include <pan/general/file-util.h>
-diff --git a/pan/gui/prefs-file.cc b/pan/gui/prefs-file.cc
-index bde7ef3..64c540f 100644
---- a/pan/gui/prefs-file.cc
-+++ b/pan/gui/prefs-file.cc
-@@ -24,8 +24,8 @@
- extern "C" {
-   #include <sys/types.h> // for chmod
-   #include <sys/stat.h> // for chmod
--  #include <glib.h>
- }
-+#include <glib.h>
- #include <pan/general/file-util.h>
- #include "prefs-file.h"
- 
-diff --git a/pan/gui/prefs-ui.cc b/pan/gui/prefs-ui.cc
-index f7dc0f0..aac9ec1 100644
---- a/pan/gui/prefs-ui.cc
-+++ b/pan/gui/prefs-ui.cc
-@@ -18,10 +18,8 @@
-  */
- 
- #include <config.h>
--extern "C" {
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--}
-+#include "gtk-compat.h"
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/macros.h>
- #include <pan/general/file-util.h>
-diff --git a/pan/gui/prefs.cc b/pan/gui/prefs.cc
-index fdbd908..64dd8da 100644
---- a/pan/gui/prefs.cc
-+++ b/pan/gui/prefs.cc
-@@ -23,10 +23,8 @@
- #include <iostream>
- #include <sstream>
- #include <string>
--extern "C" {
--  #include <glib.h>
--  #include <glib/gi18n.h>
--}
-+#include <glib.h>
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/log.h>
- #include <pan/general/macros.h>
-diff --git a/pan/gui/profiles-dialog.cc b/pan/gui/profiles-dialog.cc
-index 26ff029..cf8bd44 100644
---- a/pan/gui/profiles-dialog.cc
-+++ b/pan/gui/profiles-dialog.cc
-@@ -23,10 +23,8 @@
- 
- #include <config.h>
- #include <iostream>
--extern "C" {
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--}
-+#include "gtk-compat.h"
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/macros.h>
- #include <pan/usenet-utils/gnksa.h>
-diff --git a/pan/gui/progress-view.cc b/pan/gui/progress-view.cc
-index 241ad1c..43ef4f2 100644
---- a/pan/gui/progress-view.cc
-+++ b/pan/gui/progress-view.cc
-@@ -18,9 +18,7 @@
-  */
- 
- #include <config.h>
--extern "C" {
--  #include "gtk-compat.h"
--}
-+#include "gtk-compat.h"
- #include <pan/general/string-view.h>
- #include <pan/usenet-utils/mime-utils.h>
- #include "progress-view.h"
-diff --git a/pan/gui/save-attach-ui.cc b/pan/gui/save-attach-ui.cc
-index 0b08b6f..0e86a1b 100644
---- a/pan/gui/save-attach-ui.cc
-+++ b/pan/gui/save-attach-ui.cc
-@@ -18,10 +18,8 @@
-  */
- 
- #include <config.h>
--extern "C" {
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--}
-+#include "gtk-compat.h"
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/macros.h>
- #include <pan/icons/pan-pixbufs.h>
-diff --git a/pan/gui/save-ui.cc b/pan/gui/save-ui.cc
-index 0f034e5..1df0cfb 100644
---- a/pan/gui/save-ui.cc
-+++ b/pan/gui/save-ui.cc
-@@ -18,10 +18,8 @@
-  */
- 
- #include <config.h>
--extern "C" {
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--}
-+#include "gtk-compat.h"
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/macros.h>
- #include <pan/icons/pan-pixbufs.h>
-diff --git a/pan/gui/score-add-ui.cc b/pan/gui/score-add-ui.cc
-index e72bdb5..3b81167 100644
---- a/pan/gui/score-add-ui.cc
-+++ b/pan/gui/score-add-ui.cc
-@@ -20,9 +20,7 @@
- #include <config.h>
- #include <cassert>
- #include <climits>
--extern "C" {
--  #include <glib/gi18n.h>
--}
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/text-match.h>
- #include "hig.h"
-diff --git a/pan/gui/score-view-ui.cc b/pan/gui/score-view-ui.cc
-index d6c81c1..1327426 100644
---- a/pan/gui/score-view-ui.cc
-+++ b/pan/gui/score-view-ui.cc
-@@ -18,10 +18,8 @@
-  */
- 
- #include <config.h>
--extern "C" {
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--}
-+#include "gtk-compat.h"
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include "pad.h"
- #include "score-add-ui.h"
-diff --git a/pan/gui/server-ui.cc b/pan/gui/server-ui.cc
-index b42bc18..268114b 100644
---- a/pan/gui/server-ui.cc
-+++ b/pan/gui/server-ui.cc
-@@ -21,11 +21,9 @@
- #include <cstdlib>
- #include <cstring>
- #include <climits>
--extern "C" {
--  #include <glib.h>
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--}
-+#include <glib.h>
-+#include <glib/gi18n.h>
-+#include "gtk-compat.h"
- 
- #include <pan/icons/pan-pixbufs.h>
- #include <pan/general/file-util.h>
-diff --git a/pan/gui/task-pane.cc b/pan/gui/task-pane.cc
-index 4f77922..18a8f74 100644
---- a/pan/gui/task-pane.cc
-+++ b/pan/gui/task-pane.cc
-@@ -18,11 +18,9 @@
-  */
- 
- #include <config.h>
--extern "C" {
--  #include <glib.h>
--  #include <glib/gi18n.h>
--  #include "gtk-compat.h"
--}
-+#include <glib.h>
-+#include <glib/gi18n.h>
-+#include "gtk-compat.h"
- #include <pan/general/e-util.h>
- #include <pan/general/debug.h>
- #include <pan/general/file-util.h>
-diff --git a/pan/gui/url.cc b/pan/gui/url.cc
-index e1173ae..94ffb52 100644
---- a/pan/gui/url.cc
-+++ b/pan/gui/url.cc
-@@ -20,10 +20,8 @@
- #include <config.h>
- #include <iostream>
- #include <string>
--extern "C" {
--  #include <glib.h>
--  #include <glib/gi18n.h>
--};
-+#include <glib.h>
-+#include <glib/gi18n.h>
- #include <pan/general/log.h>
- #include "url.h"
- 
-diff --git a/pan/tasks/decoder.cc b/pan/tasks/decoder.cc
-index b4c21ae..f8cb6db 100644
---- a/pan/tasks/decoder.cc
-+++ b/pan/tasks/decoder.cc
-@@ -28,8 +28,8 @@
- extern "C" {
- #  define PROTOTYPES
- #  include <uulib/uudeview.h>
--#  include <glib/gi18n.h>
- };
-+#include <glib/gi18n.h>
- #include <pan/general/worker-pool.h>
- #include <pan/general/debug.h>
- #include <pan/general/file-util.h>
-diff --git a/pan/tasks/encoder.cc b/pan/tasks/encoder.cc
-index 7960b84..5989059 100644
---- a/pan/tasks/encoder.cc
-+++ b/pan/tasks/encoder.cc
-@@ -31,10 +31,10 @@
- extern "C" {
- #define PROTOTYPES
- #include <uulib/uudeview.h>
--#include <glib/gi18n.h>
- #include <sys/time.h>
- };
- 
-+#include <glib/gi18n.h>
- #include <pan/general/worker-pool.h>
- #include <pan/general/debug.h>
- #include <pan/general/file-util.h>
-diff --git a/pan/tasks/nntp.cc b/pan/tasks/nntp.cc
-index ceb1574..71c5cf1 100644
---- a/pan/tasks/nntp.cc
-+++ b/pan/tasks/nntp.cc
-@@ -22,10 +22,8 @@
- #include <cstdarg>
- #include <cstdlib> // abort, atoi, strtoul
- #include <cstdio> // snprintf
--extern "C" {
--  #include <glib.h>
--  #include <glib/gi18n.h>
--}
-+#include <glib.h>
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/log.h>
- #include <pan/general/messages.h>
-diff --git a/pan/tasks/nzb.cc b/pan/tasks/nzb.cc
-index af890e5..14df6f6 100644
---- a/pan/tasks/nzb.cc
-+++ b/pan/tasks/nzb.cc
-@@ -24,9 +24,7 @@
- #include <sstream>
- #include <string>
- #include <map>
--extern "C" {
--  #include <glib.h>
--}
-+#include <glib.h>
- #include <pan/general/debug.h>
- #include <pan/general/file-util.h>
- #include <pan/general/log.h>
-diff --git a/pan/tasks/socket-impl-gio.cc b/pan/tasks/socket-impl-gio.cc
-index d3339dd..7dc2ec1 100644
---- a/pan/tasks/socket-impl-gio.cc
-+++ b/pan/tasks/socket-impl-gio.cc
-@@ -31,9 +31,9 @@
- 
- extern "C" {
-   #include <unistd.h>
--  #include <glib/gi18n.h>
- }
- 
-+#include <glib/gi18n.h>
- #include <pan/general/file-util.h>
- #include <pan/general/log.h>
- #include <pan/general/macros.h>
-diff --git a/pan/tasks/socket-impl-main.cc b/pan/tasks/socket-impl-main.cc
-index c33edfd..688183c 100644
---- a/pan/tasks/socket-impl-main.cc
-+++ b/pan/tasks/socket-impl-main.cc
-@@ -30,10 +30,7 @@
- //#include <glib/giochannel.h>
- //#include <glib/gstring.h>
- 
--extern "C"
--{
--  #include <glib.h>
--}
-+#include <glib.h>
- 
- #include <pan/tasks/socket.h>
- 
-diff --git a/pan/tasks/socket-impl-openssl.cc b/pan/tasks/socket-impl-openssl.cc
-index b58e074..5b1b0b0 100644
---- a/pan/tasks/socket-impl-openssl.cc
-+++ b/pan/tasks/socket-impl-openssl.cc
-@@ -34,13 +34,14 @@
- 
- extern "C" {
-   #include <unistd.h>
--  #include <glib/gi18n.h>
-   #include <errno.h>
-   #include <fcntl.h>
-   #include <sys/time.h>
-   #include <sys/types.h>
- }
- 
-+#include <glib/gi18n.h>
-+
- #include <pan/usenet-utils/ssl-utils.h>
- #include <pan/general/file-util.h>
- #include <pan/general/log.h>
-diff --git a/pan/tasks/socket-impl-openssl.h b/pan/tasks/socket-impl-openssl.h
-index e48cbae..eea41d4 100644
---- a/pan/tasks/socket-impl-openssl.h
-+++ b/pan/tasks/socket-impl-openssl.h
-@@ -27,10 +27,7 @@
- #include <string>
- //#include <glib/giochannel.h>
- //#include <glib/gstring.h>
--extern "C"
--{
--  #include <glib.h>
--}
-+#include <glib.h>
- 
- #include <pan/general/debug.h>
- #include <pan/general/quark.h>
-diff --git a/pan/tasks/socket.cc b/pan/tasks/socket.cc
-index 78d53fb..2c7a28d 100644
---- a/pan/tasks/socket.cc
-+++ b/pan/tasks/socket.cc
-@@ -21,9 +21,7 @@
- #include <cstdarg>
- #include <ctime>
- #include <cmath>
--extern "C" {
--  #include <glib.h>
--}
-+#include <glib.h>
- #include <pan/general/debug.h>
- #include <pan/general/string-view.h>
- #include "socket.h"
-diff --git a/pan/tasks/task-article.cc b/pan/tasks/task-article.cc
-index 9c96b7d..1dc17ba 100644
---- a/pan/tasks/task-article.cc
-+++ b/pan/tasks/task-article.cc
-@@ -24,10 +24,7 @@
- #include <config.h>
- #include <algorithm>
- #include <cassert>
--extern "C"
--{
--  #include <glib/gi18n.h>
--}
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/file-util.h>
- #include <pan/general/utf8-utils.h>
-diff --git a/pan/tasks/task-groups.cc b/pan/tasks/task-groups.cc
-index b8618d6..9b72369 100644
---- a/pan/tasks/task-groups.cc
-+++ b/pan/tasks/task-groups.cc
-@@ -20,9 +20,9 @@
- #include <config.h>
- #include <cassert>
- extern "C" {
--  #include <glib/gi18n.h>
-   #include <stdlib.h>
- }
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/macros.h>
- #include <pan/general/messages.h>
-diff --git a/pan/tasks/task-post.cc b/pan/tasks/task-post.cc
-index bb80fb9..4ab9c2f 100644
---- a/pan/tasks/task-post.cc
-+++ b/pan/tasks/task-post.cc
-@@ -18,9 +18,7 @@
-  */
- 
- #include <config.h>
--extern "C" {
--  #include <glib/gi18n.h>
--}
-+#include <glib/gi18n.h>
- #include "task-post.h"
- #include <pan/general/debug.h>
- #include <pan/general/log.h>
-diff --git a/pan/tasks/task-upload.h b/pan/tasks/task-upload.h
-index 7bd4fe0..e5377c6 100644
---- a/pan/tasks/task-upload.h
-+++ b/pan/tasks/task-upload.h
-@@ -37,10 +37,10 @@
- extern "C" {
-   #define PROTOTYPES
-   #include <uulib/uudeview.h>
--  #include <gmime/gmime.h>
--  #include <glib/gi18n.h>
- };
- 
-+#include <gmime/gmime.h>
-+#include <glib/gi18n.h>
- #include <set>
- 
- namespace pan
-diff --git a/pan/tasks/task-xover.cc b/pan/tasks/task-xover.cc
-index c3c8260..64b41a4 100644
---- a/pan/tasks/task-xover.cc
-+++ b/pan/tasks/task-xover.cc
-@@ -26,10 +26,10 @@ extern "C"
- #define PROTOTYPES
- #include <stdio.h>
- #include <uulib/uudeview.h>
--#include <glib/gi18n.h>
--#include <gmime/gmime-utils.h>
- }
- 
-+#include <gmime/gmime-utils.h>
-+#include <glib/gi18n.h>
- #include <fstream>
- #include <iostream>
- #include <pan/general/debug.h>
-diff --git a/pan/tasks/task-xoverinfo.cc b/pan/tasks/task-xoverinfo.cc
-index c598bf8..9a9e488 100644
---- a/pan/tasks/task-xoverinfo.cc
-+++ b/pan/tasks/task-xoverinfo.cc
-@@ -24,10 +24,10 @@ extern "C" {
-   #define PROTOTYPES
-   #include <stdio.h>
-   #include <uulib/uudeview.h>
--  #include <glib/gi18n.h>
--  #include <gmime/gmime-utils.h>
-   #include <zlib.h>
- }
-+#include <glib/gi18n.h>
-+#include <gmime/gmime-utils.h>
- #include <fstream>
- #include <iostream>
- #include <pan/general/debug.h>
-diff --git a/pan/usenet-utils/filter-info.cc b/pan/usenet-utils/filter-info.cc
-index f464428..6b1a5c9 100644
---- a/pan/usenet-utils/filter-info.cc
-+++ b/pan/usenet-utils/filter-info.cc
-@@ -18,10 +18,8 @@
-  */
- 
- #include <config.h>
--extern "C" {
--  #include <glib.h>
--  #include <glib/gi18n.h>
--}
-+#include <glib.h>
-+#include <glib/gi18n.h>
- #include <pan/general/macros.h>
- #include "filter-info.h"
- 
-diff --git a/pan/usenet-utils/gnksa.cc b/pan/usenet-utils/gnksa.cc
-index db1f2c4..fb888d5 100644
---- a/pan/usenet-utils/gnksa.cc
-+++ b/pan/usenet-utils/gnksa.cc
-@@ -37,10 +37,10 @@ extern "C"
- {
-   #include <ctype.h>
-   #include <unistd.h>
--  #include <glib/gi18n.h>
-   #include <sys/time.h>
- }
- 
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/macros.h>
- #include <pan/general/log.h>
-diff --git a/pan/usenet-utils/gpg.cc b/pan/usenet-utils/gpg.cc
-index 4df4525..8755777 100644
---- a/pan/usenet-utils/gpg.cc
-+++ b/pan/usenet-utils/gpg.cc
-@@ -28,9 +28,9 @@ extern "C" {
-   #include <stdlib.h>
-   #include <unistd.h>
-   #include <string.h>
--  #include <glib/gi18n.h>
--  #include <gmime/gmime.h>
- }
-+#include <glib/gi18n.h>
-+#include <gmime/gmime.h>
- 
- #ifdef HAVE_GMIME_CRYPTO
- 
-diff --git a/pan/usenet-utils/message-check.cc b/pan/usenet-utils/message-check.cc
-index a511556..461ce86 100644
---- a/pan/usenet-utils/message-check.cc
-+++ b/pan/usenet-utils/message-check.cc
-@@ -21,9 +21,7 @@
- #include <ctype.h>
- #include <string.h>
- #include <glib.h>
--extern "C" {
- #include <glib/gi18n.h>
--}
- #include <pan/general/debug.h>
- #include <pan/general/macros.h>
- #include <pan/general/string-view.h>
-diff --git a/pan/usenet-utils/rules-info.cc b/pan/usenet-utils/rules-info.cc
-index 1c03adc..91e78be 100644
---- a/pan/usenet-utils/rules-info.cc
-+++ b/pan/usenet-utils/rules-info.cc
-@@ -22,10 +22,8 @@
- 
- 
- #include <config.h>
--extern "C" {
--  #include <glib.h>
--  #include <glib/gi18n.h>
--}
-+#include <glib.h>
-+#include <glib/gi18n.h>
- #include <pan/general/macros.h>
- #include "rules-info.h"
- 
-diff --git a/pan/usenet-utils/scorefile.cc b/pan/usenet-utils/scorefile.cc
-index 8b56a2a..4b151f0 100644
---- a/pan/usenet-utils/scorefile.cc
-+++ b/pan/usenet-utils/scorefile.cc
-@@ -23,9 +23,7 @@
- #include <iostream>
- #include <sstream>
- #include <string>
--extern "C" {
--  #include <glib/gi18n.h>
--}
-+#include <glib/gi18n.h>
- #include <pan/general/debug.h>
- #include <pan/general/log.h>
- #include <pan/general/macros.h>
-diff --git a/pan/usenet-utils/ssl-utils.h b/pan/usenet-utils/ssl-utils.h
-index 2286250..0beb32f 100644
---- a/pan/usenet-utils/ssl-utils.h
-+++ b/pan/usenet-utils/ssl-utils.h
-@@ -43,9 +43,7 @@
- #include <map>
- #include <sstream>
- #include <iostream>
--extern "C" {
--  #include <glib/gi18n.h>
--}
-+#include <glib/gi18n.h>
- 
- namespace pan
- {
-diff --git a/pan/usenet-utils/text-massager.cc b/pan/usenet-utils/text-massager.cc
-index 4fcd8d5..15a818b 100644
---- a/pan/usenet-utils/text-massager.cc
-+++ b/pan/usenet-utils/text-massager.cc
-@@ -22,9 +22,7 @@
- #include <map>
- #include <cstring>
- #include <glib.h>
--extern "C" {
- #include <glib/gi18n.h>
--}
- #include "text-massager.h"
- #include <pan/general/log.h>
- #include <pan/general/e-util.h>