@@ -2366,7 +2366,6 @@ dist_patch_DATA = \
%D%/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch \
%D%/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch \
%D%/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch \
- %D%/packages/patches/xfce4-panel-plugins.patch \
%D%/packages/patches/xfce4-settings-defaults.patch \
%D%/packages/patches/xgboost-use-system-dmlc-core.patch \
%D%/packages/patches/xmonad-dynamic-linking.patch \
deleted file mode 100644
@@ -1,115 +0,0 @@
-Search for xfce4 panel plugins in the directories specified
-in XDG_DATA_DIRS and X_XFCE4_LIB_DIRS. For discussion of the
-relevant issues, see:
-
- https://bugzilla.xfce.org/show_bug.cgi?id=5455
-
-Patch by Mark H Weaver <mhw@netris.org>
-
---- xfce4-panel-4.10.0/panel/panel-module.c.orig 2012-04-28 16:31:35.000000000 -0400
-+++ xfce4-panel-4.10.0/panel/panel-module.c 2014-12-14 01:31:55.728107386 -0500
-@@ -35,8 +35,14 @@
- #include <panel/panel-plugin-external-wrapper.h>
- #include <panel/panel-plugin-external-46.h>
-
--#define PANEL_PLUGINS_LIB_DIR (LIBDIR G_DIR_SEPARATOR_S "panel" G_DIR_SEPARATOR_S "plugins")
--#define PANEL_PLUGINS_LIB_DIR_OLD (LIBDIR G_DIR_SEPARATOR_S "panel-plugins")
-+#define PANEL_PLUGINS_LIB_DIR_TAIL (G_DIR_SEPARATOR_S "panel" G_DIR_SEPARATOR_S "plugins")
-+#define PANEL_PLUGINS_LIB_DIR_TAIL_OLD (G_DIR_SEPARATOR_S "panel-plugins")
-+
-+static const gchar *plugins_lib_dir_tails[] =
-+{
-+ PANEL_PLUGINS_LIB_DIR_TAIL,
-+ PANEL_PLUGINS_LIB_DIR_TAIL_OLD
-+};
-
-
- typedef enum _PanelModuleRunMode PanelModuleRunMode;
-@@ -335,21 +341,39 @@
- /* show a messsage if the old module path key still exists */
- g_message ("Plugin %s: The \"X-XFCE-Module-Path\" key is "
- "ignored in \"%s\", the panel will look for the "
-- "module in %s. See bug #5455 why this decision was made",
-- name, filename, PANEL_PLUGINS_LIB_DIR);
-+ "module in DIR%s for each DIR in $X_XFCE4_LIB_DIRS "
-+ "(%s by default). See bug #5455 for discussion.",
-+ name, filename, PANEL_PLUGINS_LIB_DIR_TAIL, LIBDIR);
- }
- #endif
-
-- path = g_module_build_path (PANEL_PLUGINS_LIB_DIR, module_name);
-- found = g_file_test (path, G_FILE_TEST_EXISTS);
-+ /* search for module */
-+ {
-+ gchar *dirs_string;
-+ gchar **dirs;
-+ int i, j;
-+
-+ dirs_string = (gchar *) g_getenv ("X_XFCE4_LIB_DIRS");
-+ if (!dirs_string)
-+ dirs_string = LIBDIR;
-+ dirs = g_strsplit (dirs_string, G_SEARCHPATH_SEPARATOR_S, 0);
-+
-+ found = FALSE;
-+ path = NULL;
-+
-+ for (i = 0; !found && dirs[i] != NULL; i++)
-+ for (j = 0; !found && j < G_N_ELEMENTS (plugins_lib_dir_tails); j++)
-+ {
-+ gchar *dir = g_strconcat (dirs[i], plugins_lib_dir_tails[j], NULL);
-+
-+ g_free (path);
-+ path = g_module_build_path (dir, module_name);
-+ found = g_file_test (path, G_FILE_TEST_EXISTS);
-+ g_free (dir);
-+ }
-
-- if (!found)
-- {
-- /* deprecated location for module plugin directories */
-- g_free (path);
-- path = g_module_build_path (PANEL_PLUGINS_LIB_DIR_OLD, module_name);
-- found = g_file_test (path, G_FILE_TEST_EXISTS);
-- }
-+ g_strfreev (dirs);
-+ }
-
- if (G_LIKELY (found))
- {
---- xfce4-panel-4.10.0/panel/panel-module-factory.c.orig 2012-04-28 16:31:35.000000000 -0400
-+++ xfce4-panel-4.10.0/panel/panel-module-factory.c 2014-12-13 23:55:27.439404812 -0500
-@@ -42,6 +42,11 @@
- #define PANEL_PLUGINS_DATA_DIR (DATADIR G_DIR_SEPARATOR_S "panel" G_DIR_SEPARATOR_S "plugins")
- #define PANEL_PLUGINS_DATA_DIR_OLD (DATADIR G_DIR_SEPARATOR_S "panel-plugins")
-
-+static const gchar *plugins_data_dir_tails[] =
-+{
-+ (G_DIR_SEPARATOR_S "xfce4" G_DIR_SEPARATOR_S "panel" G_DIR_SEPARATOR_S "plugins"),
-+ (G_DIR_SEPARATOR_S "xfce4" G_DIR_SEPARATOR_S "panel-plugins")
-+};
-
-
- static void panel_module_factory_finalize (GObject *object);
-@@ -223,8 +228,22 @@
- panel_module_factory_load_modules (PanelModuleFactory *factory,
- gboolean warn_if_known)
- {
-+ const gchar * const * system_data_dirs;
-+ int i, j;
-+
- panel_return_if_fail (PANEL_IS_MODULE_FACTORY (factory));
-
-+ system_data_dirs = g_get_system_data_dirs ();
-+ for (i = 0; system_data_dirs[i] != NULL; i++)
-+ for (j = 0; j < G_N_ELEMENTS (plugins_data_dir_tails); j++)
-+ {
-+ gchar *dir;
-+
-+ dir = g_strconcat (system_data_dirs[i], plugins_data_dir_tails[j], NULL);
-+ panel_module_factory_load_modules_dir (factory, dir, warn_if_known);
-+ g_free (dir);
-+ }
-+
- /* load from the new and old location */
- panel_module_factory_load_modules_dir (factory, PANEL_PLUGINS_DATA_DIR, warn_if_known);
- panel_module_factory_load_modules_dir (factory, PANEL_PLUGINS_DATA_DIR_OLD, warn_if_known);
@@ -441,7 +441,7 @@ (define-public libxfce4windowing
(define-public xfce4-panel
(package
(name "xfce4-panel")
- (version "4.18.6")
+ (version "4.20.0")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@@ -449,12 +449,17 @@ (define-public xfce4-panel
name "-" version ".tar.bz2"))
(sha256
(base32
- "0qkw1msrvq7hc4mjg9iai0kymgkrpj1nijv04zjbdfcbymhp2cr1"))
- (patches (search-patches "xfce4-panel-plugins.patch"))))
+ "1f235lwmqavvsay9899gm7p2z3fdha6qgx05wczikhhnbmgwsczz"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
+ (add-before 'configure 'patch-configure
+ (lambda _
+ (substitute* "configure"
+ ;; XDG_CHECK_PACKAGE_BINARY requires an absolute path.
+ (("\\$PKG_CONFIG --variable=gdbus_codegen gio-2.0")
+ "type -p gdbus-codegen"))))
(add-after 'unpack 'fix-tzdata-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* (string-append "plugins/clock/clock.c")
@@ -470,15 +475,16 @@ (define-public xfce4-panel
(inputs
(list tzdata ;; For fix-tzdata-path phase only.
exo
- gtk+-2
xfconf
garcon
+ gtk-layer-shell
libwnck
- libxfce4ui))
+ libxfce4ui
+ libxfce4windowing))
(native-search-paths
(list (search-path-specification
- (variable "X_XFCE4_LIB_DIRS")
- (files '("lib/xfce4")))))
+ (variable "XDG_DATA_DIRS")
+ (files '("share")))))
(home-page "https://www.xfce.org/")
(synopsis "Xfce desktop panel")
(description