diff options
author | Andreas Müller <schnitzeltony@googlemail.com> | 2014-10-20 15:27:43 +0200 |
---|---|---|
committer | Patrick Ohly <patrick.ohly@intel.com> | 2015-01-09 08:43:08 -0800 |
commit | 6d1620b1adce28f882ffe95f247dab9df286780d (patch) | |
tree | c5c02760f0019afaca24c2609663a899a5ca557d | |
parent | 2190a7d4fa9790224ebc824a937501faf40ea7c4 (diff) | |
download | tizen-distro-6d1620b1adce28f882ffe95f247dab9df286780d.tar.gz tizen-distro-6d1620b1adce28f882ffe95f247dab9df286780d.tar.bz2 tizen-distro-6d1620b1adce28f882ffe95f247dab9df286780d.zip |
xfce4-power-manager: update to 1.4.1 to fix power button
with 1.2.0 pressing power button shuts down independent of the setting in
xfce4-power-manager
(From meta-openembedded rev: 6c1ace80c0bdcb7c67cc766ea23c6ea9beab9164)
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
-rw-r--r-- | meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/files/0001-Add-shutdown-reboot-functionality-for-systemd.patch | 677 | ||||
-rw-r--r-- | meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.4.1.bb (renamed from meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.2.0.bb) | 29 |
2 files changed, 19 insertions, 687 deletions
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/files/0001-Add-shutdown-reboot-functionality-for-systemd.patch b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/files/0001-Add-shutdown-reboot-functionality-for-systemd.patch deleted file mode 100644 index d5c5487b82..0000000000 --- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/files/0001-Add-shutdown-reboot-functionality-for-systemd.patch +++ /dev/null @@ -1,677 +0,0 @@ -From 023333688f73ed26097c693d43f76e4b7d5698e2 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com> -Date: Fri, 7 Jun 2013 18:38:42 +0200 -Subject: [PATCH] Add shutdown/reboot functionality for systemd -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Upstream-Status: Submitted [2] - -[1] http://git.xfce.org/xfce/xfce4-session/commit/?id=ae28aef315a7a6b90f1649ce6d1f30b842791cbf -[2] https://bugzilla.xfce.org/show_bug.cgi?id=10167 - -Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com> ---- - configure.ac | 2 + - src/Makefile.am | 14 +++- - src/xfpm-manager.c | 29 ++++++- - src/xfpm-power.c | 66 ++++++++++++++- - src/xfpm-systemd.c | 245 ++++++++++++++++++++++++++++++++++++++++++++++++++++ - src/xfpm-systemd.h | 60 +++++++++++++ - 6 files changed, 411 insertions(+), 5 deletions(-) - create mode 100644 src/xfpm-systemd.c - create mode 100644 src/xfpm-systemd.h - -diff --git a/configure.ac b/configure.ac -index 633b340..1db2036 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -95,6 +95,8 @@ if test "x$ac_cv_enable_polkit" = "xno"; then - polkit="no" - else - AC_MSG_RESULT([yes]) -+ m4_define([polkit_minimum_version], [0.100]) -+ XDT_CHECK_PACKAGE([SYSTEMD], [polkit-gobject-1], [polkit_minimum_version]) - AC_DEFINE(ENABLE_POLKIT, 1 , [PolicyKit support]) - polkit="yes" - fi -diff --git a/src/Makefile.am b/src/Makefile.am -index 0435bed..9b7fdd0 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -18,8 +18,6 @@ xfce4_power_manager_SOURCES = \ - xfpm-xfconf.h \ - xfpm-disks.c \ - xfpm-disks.h \ -- xfpm-console-kit.c \ -- xfpm-console-kit.h \ - egg-idletime.c \ - egg-idletime.h \ - xfpm-backlight.c \ -@@ -39,6 +37,16 @@ xfce4_power_manager_SOURCES = \ - xfpm-errors.c \ - xfpm-errors.h - -+if ENABLE_POLKIT -+xfce4_power_manager_SOURCES += \ -+ xfpm-systemd.c \ -+ xfpm-systemd.h -+else -+xfce4_power_manager_SOURCES += \ -+ xfpm-console-kit.c \ -+ xfpm-console-kit.h -+endif -+ - xfce4_power_manager_CFLAGS = \ - -I$(top_srcdir) \ - -I$(top_srcdir)/common \ -@@ -52,6 +60,7 @@ xfce4_power_manager_CFLAGS = \ - $(LIBXFCE4UI_CFLAGS) \ - $(XFCONF_CFLAGS) \ - $(LIBNOTIFY_CFLAGS) \ -+ $(SYSTEMD_CFLAGS) \ - $(XRANDR_CFLAGS) \ - $(DPMS_CFLAGS) \ - $(PLATFORM_CPPFLAGS) \ -@@ -70,6 +79,7 @@ xfce4_power_manager_LDADD = \ - $(LIBXFCE4UI_LIBS) \ - $(XFCONF_LIBS) \ - $(LIBNOTIFY_LIBS) \ -+ $(SYSTEMD_LIBS) \ - $(XRANDR_LIBS) \ - $(DPMS_LIBS) - -diff --git a/src/xfpm-manager.c b/src/xfpm-manager.c -index 472ee3e..9bfb53c 100644 ---- a/src/xfpm-manager.c -+++ b/src/xfpm-manager.c -@@ -43,7 +43,6 @@ - #include "xfpm-disks.h" - #include "xfpm-dpms.h" - #include "xfpm-manager.h" --#include "xfpm-console-kit.h" - #include "xfpm-button.h" - #include "xfpm-backlight.h" - #include "xfpm-inhibit.h" -@@ -58,6 +57,12 @@ - #include "xfpm-enum-types.h" - #include "xfpm-dbus-monitor.h" - -+#ifdef ENABLE_POLKIT -+#include "xfpm-systemd.h" -+#else -+#include "xfpm-console-kit.h" -+#endif -+ - static void xfpm_manager_finalize (GObject *object); - - static void xfpm_manager_dbus_class_init (XfpmManagerClass *klass); -@@ -80,7 +85,11 @@ struct XfpmManagerPrivate - XfpmButton *button; - XfpmXfconf *conf; - XfpmBacklight *backlight; -+#ifdef ENABLE_POLKIT -+ XfpmSystemd *systemd; -+#else - XfpmConsoleKit *console; -+#endif - XfpmDBusMonitor *monitor; - XfpmDisks *disks; - XfpmInhibit *inhibit; -@@ -131,7 +140,11 @@ xfpm_manager_finalize (GObject *object) - g_object_unref (manager->priv->button); - g_object_unref (manager->priv->conf); - g_object_unref (manager->priv->client); -+#ifdef ENABLE_POLKIT -+ g_object_unref (manager->priv->systemd); -+#else - g_object_unref (manager->priv->console); -+#endif - g_object_unref (manager->priv->monitor); - g_object_unref (manager->priv->disks); - g_object_unref (manager->priv->inhibit); -@@ -201,7 +214,11 @@ static void - xfpm_manager_shutdown (XfpmManager *manager) - { - GError *error = NULL; -+#ifdef ENABLE_POLKIT -+ xfpm_systemd_shutdown (manager->priv->systemd, &error ); -+#else - xfpm_console_kit_shutdown (manager->priv->console, &error ); -+#endif - - if ( error ) - { -@@ -521,7 +538,11 @@ void xfpm_manager_start (XfpmManager *manager) - manager->priv->power = xfpm_power_get (); - manager->priv->button = xfpm_button_new (); - manager->priv->conf = xfpm_xfconf_new (); -+#ifdef ENABLE_POLKIT -+ manager->priv->systemd = xfpm_systemd_new (); -+#else - manager->priv->console = xfpm_console_kit_new (); -+#endif - manager->priv->monitor = xfpm_dbus_monitor_new (); - manager->priv->disks = xfpm_disks_new (); - manager->priv->inhibit = xfpm_inhibit_new (); -@@ -603,9 +624,15 @@ GHashTable *xfpm_manager_get_config (XfpmManager *manager) - - hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free); - -+#ifdef ENABLE_POLKIT -+ g_object_get (G_OBJECT (manager->priv->systemd), -+ "can-shutdown", &can_shutdown, -+ NULL); -+#else - g_object_get (G_OBJECT (manager->priv->console), - "can-shutdown", &can_shutdown, - NULL); -+#endif - - g_object_get (G_OBJECT (manager->priv->power), - "auth-suspend", &auth_suspend, -diff --git a/src/xfpm-power.c b/src/xfpm-power.c -index 796bef8..391c7fc 100644 ---- a/src/xfpm-power.c -+++ b/src/xfpm-power.c -@@ -39,7 +39,6 @@ - #include "xfpm-xfconf.h" - #include "xfpm-notify.h" - #include "xfpm-errors.h" --#include "xfpm-console-kit.h" - #include "xfpm-inhibit.h" - #include "xfpm-polkit.h" - #include "xfpm-network-manager.h" -@@ -51,6 +50,12 @@ - #include "xfpm-enum-types.h" - #include "egg-idletime.h" - -+#ifdef ENABLE_POLKIT -+#include "xfpm-systemd.h" -+#else -+#include "xfpm-console-kit.h" -+#endif -+ - static void xfpm_power_finalize (GObject *object); - - static void xfpm_power_get_property (GObject *object, -@@ -75,7 +80,11 @@ struct XfpmPowerPrivate - - GHashTable *hash; - -+#ifdef ENABLE_POLKIT -+ XfpmSystemd *systemd; -+#else - XfpmConsoleKit *console; -+#endif - XfpmInhibit *inhibit; - XfpmXfconf *conf; - GtkStatusIcon *adapter_icon; -@@ -680,9 +689,15 @@ xfpm_power_add_actions_to_notification (XfpmPower *power, NotifyNotification *n) - { - gboolean can_shutdown; - -+#ifdef ENABLE_POLKIT -+ g_object_get (G_OBJECT (power->priv->systemd), -+ "can-shutdown", &can_shutdown, -+ NULL); -+#else - g_object_get (G_OBJECT (power->priv->console), - "can-shutdown", &can_shutdown, - NULL); -+#endif - - if ( power->priv->can_hibernate && power->priv->auth_hibernate ) - { -@@ -756,9 +771,15 @@ xfpm_power_show_critical_action_gtk (XfpmPower *power) - const gchar *message; - gboolean can_shutdown; - -+#ifdef ENABLE_POLKIT -+ g_object_get (G_OBJECT (power->priv->systemd), -+ "can-shutdown", &can_shutdown, -+ NULL); -+#else - g_object_get (G_OBJECT (power->priv->console), - "can-shutdown", &can_shutdown, - NULL); -+#endif - - message = _("System is running on low power. "\ - "Save your work to avoid losing data"); -@@ -1327,7 +1348,11 @@ xfpm_power_init (XfpmPower *power) - power->priv->inhibit = xfpm_inhibit_new (); - power->priv->notify = xfpm_notify_new (); - power->priv->conf = xfpm_xfconf_new (); -+#ifdef ENABLE_POLKIT -+ power->priv->systemd = xfpm_systemd_new (); -+#else - power->priv->console = xfpm_console_kit_new (); -+#endif - - g_signal_connect_swapped (power->priv->conf, "notify::" SHOW_TRAY_ICON_CFG, - G_CALLBACK (xfpm_power_refresh_adaptor_visible), power); -@@ -1445,7 +1470,11 @@ xfpm_power_finalize (GObject *object) - g_object_unref (power->priv->inhibit); - g_object_unref (power->priv->notify); - g_object_unref (power->priv->conf); -+#ifdef ENABLE_POLKIT -+ g_object_unref (power->priv->systemd); -+#else - g_object_unref (power->priv->console); -+#endif - - xfpm_power_hide_adapter_icon (power); - -@@ -1607,9 +1636,15 @@ static gboolean xfpm_power_dbus_shutdown (XfpmPower *power, - { - gboolean can_reboot; - -+#ifdef ENABLE_POLKIT -+ g_object_get (G_OBJECT (power->priv->systemd), -+ "can-shutdown", &can_reboot, -+ NULL); -+#else - g_object_get (G_OBJECT (power->priv->console), - "can-shutdown", &can_reboot, - NULL); -+#endif - - if ( !can_reboot) - { -@@ -1618,7 +1653,11 @@ static gboolean xfpm_power_dbus_shutdown (XfpmPower *power, - return FALSE; - } - -+#ifdef ENABLE_POLKIT -+ xfpm_systemd_shutdown (power->priv->systemd, error); -+#else - xfpm_console_kit_shutdown (power->priv->console, error); -+#endif - - return TRUE; - } -@@ -1628,9 +1667,15 @@ static gboolean xfpm_power_dbus_reboot (XfpmPower *power, - { - gboolean can_reboot; - -+#ifdef ENABLE_POLKIT -+ g_object_get (G_OBJECT (power->priv->systemd), -+ "can-restart", &can_reboot, -+ NULL); -+#else - g_object_get (G_OBJECT (power->priv->console), - "can-restart", &can_reboot, - NULL); -+#endif - - if ( !can_reboot) - { -@@ -1639,7 +1684,11 @@ static gboolean xfpm_power_dbus_reboot (XfpmPower *power, - return FALSE; - } - -+#ifdef ENABLE_POLKIT -+ xfpm_systemd_reboot (power->priv->systemd, error); -+#else - xfpm_console_kit_reboot (power->priv->console, error); -+#endif - - return TRUE; - } -@@ -1694,10 +1743,16 @@ static gboolean xfpm_power_dbus_can_reboot (XfpmPower * power, - gboolean * OUT_can_reboot, - GError ** error) - { -+#ifdef ENABLE_POLKIT -+ g_object_get (G_OBJECT (power->priv->systemd), -+ "can-reboot", OUT_can_reboot, -+ NULL); -+#else - g_object_get (G_OBJECT (power->priv->console), - "can-reboot", OUT_can_reboot, - NULL); -- -+#endif -+ - return TRUE; - } - -@@ -1705,9 +1760,16 @@ static gboolean xfpm_power_dbus_can_shutdown (XfpmPower * power, - gboolean * OUT_can_shutdown, - GError ** error) - { -+#ifdef ENABLE_POLKIT -+ g_object_get (G_OBJECT (power->priv->systemd), -+ "can-shutdown", OUT_can_shutdown, -+ NULL); -+#else - g_object_get (G_OBJECT (power->priv->console), - "can-shutdown", OUT_can_shutdown, - NULL); -+#endif -+ - return TRUE; - } - -diff --git a/src/xfpm-systemd.c b/src/xfpm-systemd.c -new file mode 100644 -index 0000000..cc1cba1 ---- /dev/null -+++ b/src/xfpm-systemd.c -@@ -0,0 +1,245 @@ -+/* -+ * * Copyright (C) 2009-2011 Ali <aliov@xfce.org> -+ * * Copyright (C) 2013 Andreas Müller <schnitzeltony@googlemail.com> -+ * -+ * Licensed under the GNU General Public License Version 2 -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -+ */ -+ -+#ifdef HAVE_CONFIG_H -+#include <config.h> -+#endif -+ -+#include <stdio.h> -+#include <stdlib.h> -+#include <string.h> -+ -+#include <dbus/dbus-glib.h> -+#include <polkit/polkit.h> -+ -+#include "xfpm-systemd.h" -+ -+ -+static void xfpm_systemd_finalize (GObject *object); -+ -+static void xfpm_systemd_get_property (GObject *object, -+ guint prop_id, -+ GValue *value, -+ GParamSpec *pspec); -+ -+#define XFPM_SYSTEMD_GET_PRIVATE(o) \ -+(G_TYPE_INSTANCE_GET_PRIVATE ((o), XFPM_TYPE_SYSTEMD, XfpmSystemdPrivate)) -+ -+struct XfpmSystemdPrivate -+{ -+ gboolean can_shutdown; -+ gboolean can_restart; -+ -+ PolkitAuthority *authority; -+ PolkitSubject *subject; -+}; -+ -+enum -+{ -+ PROP_0, -+ PROP_CAN_RESTART, -+ PROP_CAN_SHUTDOWN -+}; -+ -+G_DEFINE_TYPE (XfpmSystemd, xfpm_systemd, G_TYPE_OBJECT) -+ -+#define SYSTEMD_DBUS_NAME "org.freedesktop.login1" -+#define SYSTEMD_DBUS_PATH "/org/freedesktop/login1" -+#define SYSTEMD_DBUS_INTERFACE "org.freedesktop.login1.Manager" -+#define SYSTEMD_REBOOT_ACTION "Reboot" -+#define SYSTEMD_POWEROFF_ACTION "PowerOff" -+#define SYSTEMD_REBOOT_TEST "org.freedesktop.login1.reboot" -+#define SYSTEMD_POWEROFF_TEST "org.freedesktop.login1.power-off" -+ -+static void -+xfpm_systemd_class_init (XfpmSystemdClass *klass) -+{ -+ GObjectClass *object_class = G_OBJECT_CLASS (klass); -+ -+ object_class->finalize = xfpm_systemd_finalize; -+ -+ object_class->get_property = xfpm_systemd_get_property; -+ -+ g_object_class_install_property (object_class, -+ PROP_CAN_RESTART, -+ g_param_spec_boolean ("can-restart", -+ NULL, NULL, -+ FALSE, -+ G_PARAM_READABLE)); -+ -+ g_object_class_install_property (object_class, -+ PROP_CAN_SHUTDOWN, -+ g_param_spec_boolean ("can-shutdown", -+ NULL, NULL, -+ FALSE, -+ G_PARAM_READABLE)); -+ -+ g_type_class_add_private (klass, sizeof (XfpmSystemdPrivate)); -+} -+ -+static gboolean -+xfpm_systemd_can_method (XfpmSystemd *systemd, -+ gboolean *can_method, -+ const gchar *method) -+{ -+ PolkitAuthorizationResult *res; -+ GError *local_error = NULL; -+ -+ *can_method = FALSE; -+ res = polkit_authority_check_authorization_sync (systemd->priv->authority, -+ systemd->priv->subject, -+ method, -+ NULL, -+ POLKIT_CHECK_AUTHORIZATION_FLAGS_NONE, -+ NULL, -+ &local_error); -+ if ( local_error ) -+ { -+ g_critical ("Unable to get %s : %s", method, local_error->message); -+ g_error_free (local_error); -+ } -+ -+ if(res) -+ { -+ *can_method = polkit_authorization_result_get_is_authorized (res) || -+ polkit_authorization_result_get_is_challenge (res); -+ g_object_unref (G_OBJECT (res)); -+ } -+} -+ -+static void -+xfpm_systemd_init (XfpmSystemd *systemd) -+{ -+ PolkitAuthorizationResult *res; -+ -+ systemd->priv = XFPM_SYSTEMD_GET_PRIVATE (systemd); -+ systemd->priv->authority = polkit_authority_get_sync (NULL, NULL); -+ systemd->priv->subject = polkit_unix_process_new (getpid()); -+ systemd->priv->can_shutdown = FALSE; -+ systemd->priv->can_restart = FALSE; -+ -+ if(systemd->priv->authority && systemd->priv->subject) -+ { -+ xfpm_systemd_can_method (systemd, -+ &systemd->priv->can_shutdown, -+ SYSTEMD_POWEROFF_TEST); -+ xfpm_systemd_can_method (systemd, -+ &systemd->priv->can_restart, -+ SYSTEMD_REBOOT_TEST); -+ } -+} -+ -+static void xfpm_systemd_get_property (GObject *object, -+ guint prop_id, -+ GValue *value, -+ GParamSpec *pspec) -+{ -+ XfpmSystemd *systemd; -+ systemd = XFPM_SYSTEMD (object); -+ -+ switch (prop_id) -+ { -+ case PROP_CAN_SHUTDOWN: -+ g_value_set_boolean (value, systemd->priv->can_shutdown); -+ break; -+ case PROP_CAN_RESTART: -+ g_value_set_boolean (value, systemd->priv->can_restart); -+ break; -+ default: -+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); -+ break; -+ } -+} -+ -+static void -+xfpm_systemd_finalize (GObject *object) -+{ -+ XfpmSystemd *systemd; -+ -+ systemd = XFPM_SYSTEMD (object); -+ -+ if(systemd->priv->authority) -+ g_object_unref (G_OBJECT (systemd->priv->authority)); -+ if(systemd->priv->subject) -+ g_object_unref (G_OBJECT (systemd->priv->subject)); -+ -+ G_OBJECT_CLASS (xfpm_systemd_parent_class)->finalize (object); -+} -+ -+XfpmSystemd * -+xfpm_systemd_new (void) -+{ -+ static gpointer systemd_obj = NULL; -+ -+ if ( G_LIKELY (systemd_obj != NULL ) ) -+ { -+ g_object_ref (systemd_obj); -+ } -+ else -+ { -+ systemd_obj = g_object_new (XFPM_TYPE_SYSTEMD, NULL); -+ g_object_add_weak_pointer (systemd_obj, &systemd_obj); -+ } -+ -+ return XFPM_SYSTEMD (systemd_obj); -+} -+ -+static void -+xfpm_systemd_try_method (XfpmSystemd *systemd, -+ const gchar *method, -+ GError **error) -+{ -+ GDBusConnection *bus; -+ GError *local_error = NULL; -+ -+ bus = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, error); -+ if (G_LIKELY (bus != NULL)) -+ { -+ g_dbus_connection_call_sync (bus, -+ SYSTEMD_DBUS_NAME, -+ SYSTEMD_DBUS_PATH, -+ SYSTEMD_DBUS_INTERFACE, -+ method, -+ g_variant_new ("(b)", TRUE), -+ NULL, 0, G_MAXINT, NULL, -+ &local_error); -+ g_object_unref (G_OBJECT (bus)); -+ -+ if (local_error != NULL) -+ { -+ g_propagate_error (error, local_error); -+ } -+ } -+} -+ -+void xfpm_systemd_shutdown (XfpmSystemd *systemd, GError **error) -+{ -+ xfpm_systemd_try_method (systemd, -+ SYSTEMD_POWEROFF_ACTION, -+ error); -+} -+ -+void xfpm_systemd_reboot (XfpmSystemd *systemd, GError **error) -+{ -+ xfpm_systemd_try_method (systemd, -+ SYSTEMD_REBOOT_ACTION, -+ error); -+} -diff --git a/src/xfpm-systemd.h b/src/xfpm-systemd.h -new file mode 100644 -index 0000000..2890e08 ---- /dev/null -+++ b/src/xfpm-systemd.h -@@ -0,0 +1,60 @@ -+/* -+ * * Copyright (C) 2009-2011 Ali <aliov@xfce.org> -+ * * Copyright (C) 2013 Andreas Müller <schnitzeltony@googlemail.com> -+ * -+ * Licensed under the GNU General Public License Version 2 -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -+ */ -+ -+#ifndef __XFPM_SYSTEMD_H -+#define __XFPM_SYSTEMD_H -+ -+#include <glib-object.h> -+ -+G_BEGIN_DECLS -+ -+#define XFPM_TYPE_SYSTEMD (xfpm_systemd_get_type () ) -+#define XFPM_SYSTEMD(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), XFPM_TYPE_SYSTEMD, XfpmSystemd)) -+#define XFPM_IS_SYSTEMD(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), XFPM_TYPE_SYSTEMD)) -+ -+typedef struct XfpmSystemdPrivate XfpmSystemdPrivate; -+ -+typedef struct -+{ -+ GObject parent; -+ XfpmSystemdPrivate *priv; -+ -+} XfpmSystemd; -+ -+typedef struct -+{ -+ GObjectClass parent_class; -+ -+} XfpmSystemdClass; -+ -+GType XFPM_SYSTEMD_get_type (void) G_GNUC_CONST; -+ -+XfpmSystemd *XFPM_SYSTEMD_new (void); -+ -+void XFPM_SYSTEMD_shutdown (XfpmSystemd *systemd, -+ GError **error); -+ -+void XFPM_SYSTEMD_reboot (XfpmSystemd *systemd, -+ GError **error); -+ -+G_END_DECLS -+ -+#endif /* __XFPM_SYSTEMD_H */ --- -1.7.6.5 - diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.2.0.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.4.1.bb index 6e92186ab9..a4aaf668d7 100644 --- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.2.0.bb +++ b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.4.1.bb @@ -10,9 +10,8 @@ inherit xfce DEPENDS = "gtk+ glib-2.0 dbus-glib xfconf libxfce4ui libxfce4util libnotify \ libxrandr virtual/libx11 libxext xfce4-panel" -SRC_URI += "file://0001-Add-shutdown-reboot-functionality-for-systemd.patch" - -RDEPENDS_${PN} = "networkmanager udisks upower ${@base_contains('DISTRO_FEATURES','systemd','','consolekit',d)}" +SRC_URI[md5sum] = "808a2630487d75e6eae915e464b7fda3" +SRC_URI[sha256sum] = "16a9e9bf3e0f8480d05b248817fbdc59e701e9161d3d0c7e53f3de28ed491f58" EXTRA_OECONF = " \ --enable-network-manager \ @@ -22,12 +21,22 @@ EXTRA_OECONF = " \ PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES','systemd','systemd','',d)}" PACKAGECONFIG[systemd] = "--enable-polkit, --disable-polkit, polkit" -PACKAGES += "xfce4-brightness-plugin" -FILES_${PN} += "${datadir}/polkit-1" -FILES_xfce4-brightness-plugin = " \ - ${libdir}/xfce4/panel-plugins/xfce4-brightness-plugin \ - ${datadir}/xfce4/panel-plugins/xfce4-brightness-plugin.desktop \ +PACKAGES += "xfce4-powermanager-plugin" + +FILES_${PN} += " \ + ${datadir}/polkit-1 \ + ${datadir}/appdata \ " -SRC_URI[md5sum] = "935599b7114b0a4b0e2c9a5d6c72524c" -SRC_URI[sha256sum] = "d7fb98a540284b62f4201527de17d4b24123f9d26c9f49131dd497c8387184e9" +FILES_xfce4-powermanager-plugin = " \ + ${libdir}/xfce4 \ + ${datadir}/xfce4 \ +" + +RDEPENDS_xfce4-powermanager-plugin = "${PN}" +RDEPENDS_${PN} = "networkmanager udisks upower ${@base_contains('DISTRO_FEATURES','systemd','','consolekit',d)}" + +# xfce4-brightness-plugin was replaced by xfce4-powermanager-plugin +RPROVIDES_xfce4-powermanager-plugin += "xfce4-brightness-plugin" +RREPLACES_xfce4-powermanager-plugin += "xfce4-brightness-plugin" +RCONFLICTS_xfce4-powermanager-plugin += "xfce4-brightness-plugin" |