summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2014-05-31 19:20:03 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2014-05-31 19:20:03 +0000
commit47710bff5daaecf3b7d5216f460859b702e7ef6e (patch)
tree6f73e6ee76254cb881e2c7278469c13f9f3b240c
parentStable for amd64 wrt bug #510666 (diff)
downloadhistorical-47710bff5daaecf3b7d5216f460859b702e7ef6e.tar.gz
historical-47710bff5daaecf3b7d5216f460859b702e7ef6e.tar.bz2
historical-47710bff5daaecf3b7d5216f460859b702e7ef6e.zip
Restrict 4.10 series and -r0 of 4.11.0 to old UPower and add -r1 for compability with UPower >= 0.99
Package-Manager: portage-2.2.10/cvs/Linux x86_64 Manifest-Sign-Key: 0x4868F14D
-rw-r--r--xfce-base/xfce4-session/ChangeLog10
-rw-r--r--xfce-base/xfce4-session/Manifest20
-rw-r--r--xfce-base/xfce4-session/files/xfce4-session-4.11.0-upower-0.99.patch392
-rw-r--r--xfce-base/xfce4-session/xfce4-session-4.11.0-r1.ebuild68
-rw-r--r--xfce-base/xfce4-session/xfce4-session-4.11.0.ebuild4
5 files changed, 482 insertions, 12 deletions
diff --git a/xfce-base/xfce4-session/ChangeLog b/xfce-base/xfce4-session/ChangeLog
index 5457fa5c5c07..9d03cf73a4dc 100644
--- a/xfce-base/xfce4-session/ChangeLog
+++ b/xfce-base/xfce4-session/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for xfce-base/xfce4-session
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/xfce-base/xfce4-session/ChangeLog,v 1.206 2014/05/26 19:48:41 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/xfce-base/xfce4-session/ChangeLog,v 1.207 2014/05/31 19:19:58 ssuominen Exp $
+
+*xfce4-session-4.11.0-r1 (31 May 2014)
+
+ 31 May 2014; Samuli Suominen <ssuominen@gentoo.org>
+ +files/xfce4-session-4.11.0-upower-0.99.patch,
+ +xfce4-session-4.11.0-r1.ebuild, xfce4-session-4.11.0.ebuild:
+ Restrict 4.10 series and -r0 of 4.11.0 to old UPower and add -r1 for
+ compability with UPower >= 0.99
26 May 2014; Samuli Suominen <ssuominen@gentoo.org>
xfce4-session-4.10.1-r1.ebuild:
diff --git a/xfce-base/xfce4-session/Manifest b/xfce-base/xfce4-session/Manifest
index 1aa46b4a4cc9..accb356026f2 100644
--- a/xfce-base/xfce4-session/Manifest
+++ b/xfce-base/xfce4-session/Manifest
@@ -2,20 +2,22 @@
Hash: SHA256
AUX xfce4-session-4.10.1-alock_support_to_xflock4.patch 367 SHA256 2be32b49b268649e509b99e8d93a3d4e57665cbe8e03693bc85f88ea088e0650 SHA512 8ee765241997cbf32c08e9597d42ee666400fb27792a8716f59aa91daba7476e1de679e4c9254653cf9b14d95fc293f22d02e99ef3288287113a72407e513975 WHIRLPOOL b4b440c393c6175c9555d4df5d3eb4e730512c41fd83d291df2817206225efabc8db752887bd3316ae7fc915158a513202fa592536b78d52c4c40bbff7aa7ae8
+AUX xfce4-session-4.11.0-upower-0.99.patch 11987 SHA256 babd6f01c39165c3f178708096695745b3e3d8a7434c8bc762c2ee4a0883c028 SHA512 962e33bac39cea783651ff2b6b89cdaa66b4af06752acf91e6270ade3b3a2947ac903da044330d268042be9a3aa5c2508226cd21969e65bc44cda3afcc664421 WHIRLPOOL d140fc8de712f1d0c527fca4edb6df73da49bbce68d5a5ea425bef8abd9463426b90a9ca5c97c51ab9358ffc02524e6381df137926607ffbbfdbb3cdc32eb3f1
DIST xfce4-session-4.10.1.tar.bz2 1273015 SHA256 0154fabdc398798c3445374ccc52a2f5bcb2d867fc94bc54114395b24f9cfc83 SHA512 4c6931c350957107fc13f244748287141d524a0e954f48935b5dac2c46a8125af702e1164af98414644f9ea51f5a952db6c57a96fe2a51cab21b616381aac015 WHIRLPOOL fb6193b4d769fb0cd5461a925538bbfa9224b31209d3d16b8bef2f81cbf29aa4cf1c56373335b27326cc2a9f8905a11eec975ee7bc2068168b39e06cd08e64fa
DIST xfce4-session-4.11.0.tar.bz2 1213569 SHA256 c68905b5124382e30e90f7e4f080fd7e24d58a065991eba9cfcb99e5d59a7c8e SHA512 cbb574117acdefb4781ecb16f7e4681c4c31e624eea2976c88199d3bba883c9a1f114d8b88eebfdd1f5e2c298a672ebf6171ee2b0a117dc54cb675ebd38db90e WHIRLPOOL fa14aa5e321339903460df8471b59b018d34c8453f639f8726e6961d88383aded6319448704d08f74be53ca08c03625dc76857ee328b19cfbaeffadce160d1fe
EBUILD xfce4-session-4.10.1-r1.ebuild 1767 SHA256 ff110abecc8a14df6cc49a30455de2c3ae747e65d7e6a90b81bee3666e8527dd SHA512 8b01527cc1f76bd8ad5ddffa8e9158581eb3c67e307a2578cfe561f2db15ccc25ebad62b8442e8c5f6eae53b5842858ba0083df690a8fc88069e5b1b5c18f3fd WHIRLPOOL 85febc5aa20fb062488ae4d810d4396dfb6c0d1b849c7058166e9ab97b2c48f42e0da5d36d178b926cd3858b54bf5fa471f4a250c237728b29621685d72b6279
-EBUILD xfce4-session-4.11.0.ebuild 1781 SHA256 aa74d03c8d965eab9f8b1581c6c2179c0491f771c00b07f00aba03fc79d6b294 SHA512 3fa8e29e264473440080269c28fc4e1b7989dc25340a2cfcf1b0723a91038f108a45b758181e3438119f7674b8cb64331dbfa7b165bc974d934d9e4c147ecf81 WHIRLPOOL c9bf62a41a2a3ebd2ac19536e22a729dc25dcf88449e7e0769074006048e4d207df94892f974baab7d679ab7e8f02b79ed52bf7fa52c6afd23fcebae0176e04f
-MISC ChangeLog 28023 SHA256 781eb3bb8c76ba8d3bd6e6c30bf1f361595a25058dcddea34e7ce401e90969f7 SHA512 6e4ccbd8d509c80543b2269c41cc672ed3f5e000f8fa503bd56d7d604ac1db37d3dc769e45ada575cc4100558812fcd1744a38a960d5fb1ec4188439b9167c3f WHIRLPOOL 3c95d6bf8ff6a948fce78b6cd2583e955e2281ee2f23b85e4b515d2253592443cdd3329b7817e3f85d45e37ef52483d2b8be70b9397a14ac0157c860246a79a1
+EBUILD xfce4-session-4.11.0-r1.ebuild 1841 SHA256 e4ef02b81e50803b525575303d9d7427a13bf9ff898b2ae8a761259cdd29d16b SHA512 a78947f9c7b8e14592f1e88494332b5afb6451f23931c91f2e61b358ffdcac83c55dbf8584a4d5611f4001dad300b50fa79b97a8e5ba624160679ade135b88dc WHIRLPOOL 18fd12770790212905dd963235eed431059c5801853ff5bd21cf634fcad56b810fa4bd562834609b051f447fa37ca751621d87867cb39f43d9e18334050c207b
+EBUILD xfce4-session-4.11.0.ebuild 1778 SHA256 e60306ef6c9c7ebd0cab525374020b1e70078c97e0938864dc70020ce2f62c0a SHA512 15636397caa50269767e720b48dca86238a5f7461104867a4e6625c224ffe3ceb65da0c44c1be8043ac802c3c310434e0ec01cecacac90c4109b8f510d20261a WHIRLPOOL a217bfa16b5a22822545a2e893df1f4c918065871e3b6a637d2a22c7020d8eb1a5ed50533d26130fa2ae0880036b037b69c62b24592f96aa074aadbc564fde85
+MISC ChangeLog 28336 SHA256 c8ce6de6b57dc5e3de43a08db066b90ca9181c3441ee172deaa748d7dd66af30 SHA512 c3ef9f5a4be57035562081710c9560894f08890603abb6737b73d753370034bc7973c58dfb40234f2edf6298866024243fb83e1d2c846a72e599a2357629031c WHIRLPOOL 105ac02c5bcf6a77718482d3bb0614d47f2bc44c77019c235a488f7b8b9c638c85e131f2374668826a872196647bdc0f7be3080b9909d02200229a8ecdf0870c
MISC metadata.xml 159 SHA256 900ea49b6703fce452e205b85226bf1f994725963e5840da501182e7487d0e63 SHA512 000eb10e453390fb27843585adf354d725e77d881553d97a1a242bf06578a402ee4a924d9d8205a3fa687a59e2402bc9f3e1c227e448e05026354c196cf0a4f3 WHIRLPOOL 6f01aa01b8124d752be8e6c550ffdfc9093d45b206771c924ce25ce3f0daf006a669721d1385ff1bc803df342322d1c264f2905d3ccc44686c937deae8308ec3
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
-iQEcBAEBCAAGBQJTg5o3AAoJEEdUh39IaPFNe5gH/2dE0atI9SlDGWE5W0f5Q7FU
-OkwORaLuHRhbwBuv9XQx6mqsi4CPZxNQJfEBpr9mDZrLUT2FzrnkmuCZTeR3Xwe2
-uSYFIhq4C1mSj81ZnDbA6s8gzF/uvouwH+Sy41tPUD4E0i4YhtNELZArPaZol158
-DxX+PdZmfl2OEi27U+N5jF8rGE0Sx24TPfvwF7PeuRt2F8QYCHLwDf1WhNAziItX
-rEF34hhDInXIkyhRtICiuIYIALyFSm5juQ8y5KndqlW9NoqwhM8j1ktg61sIp3JZ
-gsPGyz/NrlqfecZtJEVT+N3i/tIUPcu5lzEbQ305Tx0H2//VN3WChjk6wm3CJvo=
-=LDVO
+iQEcBAEBCAAGBQJTiirkAAoJEEdUh39IaPFNfw4H+gOUE+3PZWK71aZdvEw13dI3
+crt3MRFz3y5qDiiWMZOqWo8iusfWE/CyEhMrEE2rj9Xht2cglqmqoG5U2KLuEzb+
+814S7m5+YmCyRJqRIBJmolp2Wu5gfoe5UKkUBa+teWFgWLW3Nr3JYfGAFENxMVhM
+eaaGO+mdEBHpj+esHYqVWDgnpXGkfbkX0qGAIPLE+5VpcqVYEIlTvVzqHU9LNOwt
+M5UM6/yQTFy1U9NprSDjEAhDRU7L/uhmtc3z7A5C1kEjI+Soo9f/StW8qqkxMlT9
+U0SWSGLV6xQPgkMqbsclqEzTY4hm7tU9LTjkQRCwBkSr4LtH1YZxYDUK8JVMhiQ=
+=+uHF
-----END PGP SIGNATURE-----
diff --git a/xfce-base/xfce4-session/files/xfce4-session-4.11.0-upower-0.99.patch b/xfce-base/xfce4-session/files/xfce4-session-4.11.0-upower-0.99.patch
new file mode 100644
index 000000000000..a246dcb4f9e4
--- /dev/null
+++ b/xfce-base/xfce4-session/files/xfce4-session-4.11.0-upower-0.99.patch
@@ -0,0 +1,392 @@
+Patch from http://bugzilla.xfce.org/show_bug.cgi?id=9952 with modification
+to edit configure.ac (release tarball) instead of configure.ac.in (git)
+
+From ee2228c756e40a4289476f40a6d0045d17418bce Mon Sep 17 00:00:00 2001
+From: Eric Koegel <eric.koegel@gmail.com>
+Date: Thu, 29 May 2014 19:17:26 +0300
+Subject: [PATCH] Add suspend/hibernate to shutdown-helper
+
+Upower 0.99 dropped support for suspend/hibernate as an obsolete
+feature in this commit:
+http://cgit.freedesktop.org/upower/commit/?id=1ee642e705a63f5ad56a6b55e4bf5c4a64c959b8
+Add that functionality into the shutdown-helper so these features
+will work again.
+---
+ configure.ac.in | 27 +++++++++
+ xfce4-session/Makefile.am | 4 +-
+ xfce4-session/xfsm-shutdown.c | 126 ++++++++++++++++++++++++++++++++++++++++--
+ xfce4-session/xfsm-upower.c | 5 +-
+ xfce4-session/xfsm-upower.h | 4 ++
+ xfsm-shutdown-helper/main.c | 26 +++++++++
+ 6 files changed, 186 insertions(+), 6 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 910fd35..d4557a4 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -95,6 +95,7 @@ XDT_CHECK_PACKAGE([LIBWNCK], [libwnck-1.0], [2.30])
+ XDT_CHECK_PACKAGE([DBUS], [dbus-1], [1.1.0])
+ XDT_CHECK_PACKAGE([DBUS_GLIB], [dbus-glib-1], [0.84])
+ XDT_CHECK_PACKAGE([XFCONF], [libxfconf-0], [4.9.0])
++XDT_CHECK_PACKAGE([UPOWER],[upower-glib], [0.9.8])
+
+ dnl Check for polkit / systemd integration
+ XDT_CHECK_OPTIONAL_PACKAGE([SYSTEMD], [polkit-gobject-1], [0.100],
+@@ -157,6 +158,31 @@ if test "x$linux_ioprio_works" = "xyes"; then
+ [Defined if linux/ioprio.h not only exists, but works properly])
+ fi
+
++dnl Compile time default choice of backend
++AC_ARG_WITH([backend],
++ AS_HELP_STRING([--with-backend=<option>],
++ [Default backend to use linux, freebsd, openbsd]))
++# default to a sane option
++AC_CANONICAL_HOST
++if test x$with_backend = x; then
++ AS_CASE([$host],
++ [*-linux*], [with_backend=linux],
++ [*-*freebsd*], [with_backend=freebsd],
++ [*-openbsd*], [with_backend=openbsd])
++fi
++AC_DEFINE_UNQUOTED(BACKEND, "$with_backend", [backend])
++AC_SUBST(BACKEND, "$with_backend")
++
++if test x$with_backend = xlinux; then
++ AC_DEFINE(BACKEND_TYPE_LINUX, 1, [Linux suspend/hibernate backend])
++fi
++if test x$with_backend = xfreebsd; then
++ AC_DEFINE(BACKEND_TYPE_FREEBSD, 1, [FreeBSD suspend/hibernate backend])
++fi
++if test x$with_backend = xopenbsd; then
++ AC_DEFINE(BACKEND_TYPE_OPENBSD, 1, [OpenBSD suspend/hibernate backend])
++fi
++
+ dnl check for location Xfce glade files were installed to
+ XFCE_GLADE_CATALOG_PATH="`pkg-config --variable glade_catalogdir libxfce4ui-1`"
+ XFCE_GLADE_PIXMAP_PATH="`pkg-config --variable glade_pixmapdir libxfce4ui-1`"
+@@ -207,5 +233,6 @@ echo " * Gnome Keyring support: yes"
+ else
+ echo " * Gnome Keyring support: no"
+ fi
++echo " * Backend: ${with_backend}"
+
+ echo
+diff --git a/xfce4-session/Makefile.am b/xfce4-session/Makefile.am
+index 5472b33..6b5968e 100644
+--- a/xfce4-session/Makefile.am
++++ b/xfce4-session/Makefile.am
+@@ -83,7 +83,8 @@ xfce4_session_CFLAGS = \
+ $(SYSTEMD_CFLAGS) \
+ $(XFCONF_CFLAGS) \
+ $(GMODULE_CFLAGS) \
+- $(PLATFORM_CFLAGS)
++ $(PLATFORM_CFLAGS) \
++ $(UPOWER_CFLAGS)
+
+ xfce4_session_LDFLAGS = \
+ -no-undefined \
+@@ -102,6 +103,7 @@ xfce4_session_LDADD = \
+ $(LIBWNCK_LIBS) \
+ $(SYSTEMD_LIBS) \
+ $(XFCONF_LIBS) \
++ $(UPOWER_LIBS) \
+ -lm
+
+ xfce4_session_DEPENDENCIES = \
+diff --git a/xfce4-session/xfsm-shutdown.c b/xfce4-session/xfsm-shutdown.c
+index 4c483a7..cba08b8 100644
+--- a/xfce4-session/xfsm-shutdown.c
++++ b/xfce4-session/xfsm-shutdown.c
+@@ -57,6 +57,7 @@
+ #include <dbus/dbus-glib-lowlevel.h>
+ #include <libxfce4util/libxfce4util.h>
+ #include <gtk/gtk.h>
++#include <upower.h>
+
+ #include <libxfsm/xfsm-util.h>
+
+@@ -76,6 +77,8 @@
+
+ static void xfsm_shutdown_finalize (GObject *object);
+ static void xfsm_shutdown_sudo_free (XfsmShutdown *shutdown);
++static gboolean xfsm_shutdown_fallback_can_hibernate (void);
++static gboolean xfsm_shutdown_fallback_can_suspend (void);
+
+
+
+@@ -403,14 +406,16 @@ xfsm_shutdown_sudo_try_action (XfsmShutdown *shutdown,
+ g_return_val_if_fail (shutdown->helper_state == SUDO_AVAILABLE, FALSE);
+ g_return_val_if_fail (shutdown->helper_outfile != NULL, FALSE);
+ g_return_val_if_fail (shutdown->helper_infile != NULL, FALSE);
+- g_return_val_if_fail (type == XFSM_SHUTDOWN_SHUTDOWN
+- || type == XFSM_SHUTDOWN_RESTART, FALSE);
+
+ /* the command we send to sudo */
+ if (type == XFSM_SHUTDOWN_SHUTDOWN)
+ action = "POWEROFF";
+ else if (type == XFSM_SHUTDOWN_RESTART)
+ action = "REBOOT";
++ else if (type == XFSM_SHUTDOWN_SUSPEND)
++ action = "SUSPEND";
++ else if (type == XFSM_SHUTDOWN_HIBERNATE)
++ action = "HIBERNATE";
+ else
+ return FALSE;
+
+@@ -692,7 +697,17 @@ xfsm_shutdown_try_suspend (XfsmShutdown *shutdown,
+ {
+ g_return_val_if_fail (XFSM_IS_SHUTDOWN (shutdown), FALSE);
+
+- return xfsm_upower_try_suspend (shutdown->upower, error);
++#if UP_CHECK_VERSION(0, 99, 0)
++ if (shutdown->helper_state == SUDO_AVAILABLE)
++ {
++ xfsm_upower_lock_screen (shutdown->upower, "Suspend", error);
++ return xfsm_shutdown_sudo_try_action (shutdown, XFSM_SHUTDOWN_SUSPEND, error);
++ }
++ else
++ return FALSE;
++#else
++ return xfsm_upower_try_suspend (shutdown->upower, error);
++#endif
+ }
+
+
+@@ -703,7 +718,17 @@ xfsm_shutdown_try_hibernate (XfsmShutdown *shutdown,
+ {
+ g_return_val_if_fail (XFSM_IS_SHUTDOWN (shutdown), FALSE);
+
+- return xfsm_upower_try_hibernate (shutdown->upower, error);
++#if UP_CHECK_VERSION(0, 99, 0)
++ if (shutdown->helper_state == SUDO_AVAILABLE)
++ {
++ xfsm_upower_lock_screen (shutdown->upower, "Hibernate", error);
++ return xfsm_shutdown_sudo_try_action (shutdown, XFSM_SHUTDOWN_HIBERNATE, error);
++ }
++ else
++ return FALSE;
++#else
++ return xfsm_upower_try_hibernate (shutdown->upower, error);
++#endif
+ }
+
+
+@@ -784,8 +809,13 @@ xfsm_shutdown_can_suspend (XfsmShutdown *shutdown,
+ return TRUE;
+ }
+
++#if UP_CHECK_VERSION(0, 99, 0)
++ *can_suspend = xfsm_shutdown_fallback_can_suspend ();
++ return TRUE;
++#else
+ return xfsm_upower_can_suspend (shutdown->upower, can_suspend,
+ auth_suspend, error);
++#endif
+ }
+
+
+@@ -804,8 +834,13 @@ xfsm_shutdown_can_hibernate (XfsmShutdown *shutdown,
+ return TRUE;
+ }
+
++#if UP_CHECK_VERSION(0, 99, 0)
++ *can_hibernate = xfsm_shutdown_fallback_can_hibernate ();
++ return TRUE;
++#else
+ return xfsm_upower_can_hibernate (shutdown->upower, can_hibernate,
+ auth_hibernate, error);
++#endif
+ }
+
+
+@@ -816,3 +851,86 @@ xfsm_shutdown_can_save_session (XfsmShutdown *shutdown)
+ g_return_val_if_fail (XFSM_IS_SHUTDOWN (shutdown), FALSE);
+ return shutdown->kiosk_can_save_session;
+ }
++
++
++
++#ifdef BACKEND_TYPE_FREEBSD
++static gboolean
++freebsd_supports_sleep_state (const gchar *state)
++{
++ gboolean ret = FALSE;
++ gchar *sleep_states;
++
++ sleep_states = up_get_string_sysctl (NULL, "hw.acpi.supported_sleep_state");
++ if (sleep_states != NULL)
++ {
++ if (strstr (sleep_states, state) != NULL)
++ ret = TRUE;
++ }
++
++ g_free (sleep_states);
++
++ return ret;
++}
++#endif
++
++#ifdef BACKEND_TYPE_LINUX
++static gboolean
++linux_supports_sleep_state (const gchar *state)
++{
++ gboolean ret = FALSE;
++ gchar *command;
++ GError *error = NULL;
++ gint exit_status;
++
++ /* run script from pm-utils */
++ command = g_strdup_printf ("/usr/bin/pm-is-supported --%s", state);
++
++ ret = g_spawn_command_line_sync (command, NULL, NULL, &exit_status, &error);
++ if (!ret)
++ {
++ g_warning ("failed to run script: %s", error->message);
++ g_error_free (error);
++ goto out;
++ }
++ ret = (WIFEXITED(exit_status) && (WEXITSTATUS(exit_status) == EXIT_SUCCESS));
++
++out:
++ g_free (command);
++
++ return ret;
++}
++#endif
++
++
++static gboolean
++xfsm_shutdown_fallback_can_suspend (void)
++{
++#ifdef BACKEND_TYPE_FREEBSD
++ return freebsd_supports_sleep_state ("S3");
++#endif
++#ifdef BACKEND_TYPE_LINUX
++ return linux_supports_sleep_state ("suspend");
++#endif
++#ifdef BACKEND_TYPE_OPENBSD
++ return TRUE;
++#endif
++
++ return FALSE;
++}
++
++static gboolean
++xfsm_shutdown_fallback_can_hibernate (void)
++{
++#ifdef BACKEND_TYPE_FREEBSD
++ return freebsd_supports_sleep_state ("S4");
++#endif
++#ifdef BACKEND_TYPE_LINUX
++ return linux_supports_sleep_state ("hibernate");
++#endif
++#ifdef BACKEND_TYPE_OPENBSD
++ return FALSE;
++#endif
++
++ return FALSE;
++}
+diff --git a/xfce4-session/xfsm-upower.c b/xfce4-session/xfsm-upower.c
+index 57402ec..8112829 100644
+--- a/xfce4-session/xfsm-upower.c
++++ b/xfce4-session/xfsm-upower.c
+@@ -21,6 +21,7 @@
+
+ #include <dbus/dbus-glib.h>
+ #include <dbus/dbus-glib-lowlevel.h>
++#include <upower.h>
+
+ #include <libxfsm/xfsm-util.h>
+ #include <xfce4-session/xfsm-upower.h>
+@@ -283,7 +284,7 @@ xfsm_upower_try_method (XfsmUPower *upower,
+
+
+
+-static gboolean
++gboolean
+ xfsm_upower_lock_screen (XfsmUPower *upower,
+ const gchar *sleep_kind,
+ GError **error)
+@@ -299,6 +300,7 @@ xfsm_upower_lock_screen (XfsmUPower *upower,
+ {
+ if (xfsm_upower_proxy_ensure (upower, error))
+ {
++#if !UP_CHECK_VERSION(0, 99, 0)
+ /* tell upower we're going to sleep, this saves some
+ * time while we sleep 1 second if xflock4 is spawned */
+ ret = dbus_g_proxy_call (upower->upower_proxy,
+@@ -312,6 +314,7 @@ xfsm_upower_lock_screen (XfsmUPower *upower,
+ g_warning ("Couldn't sent that we were about to sleep: %s", err->message);
+ g_error_free (err);
+ }
++#endif
+ }
+ else
+ {
+diff --git a/xfce4-session/xfsm-upower.h b/xfce4-session/xfsm-upower.h
+index a492f7d..4e6a53b 100644
+--- a/xfce4-session/xfsm-upower.h
++++ b/xfce4-session/xfsm-upower.h
+@@ -51,4 +51,8 @@ gboolean xfsm_upower_can_hibernate (XfsmUPower *upower,
+ gboolean *auth_hibernate,
+ GError **error);
+
++gboolean xfsm_upower_lock_screen (XfsmUPower *upower,
++ const gchar *sleep_kind,
++ GError **error);
++
+ #endif /* !__XFSM_UPOWER_HELPER_H__ */
+diff --git a/xfsm-shutdown-helper/main.c b/xfsm-shutdown-helper/main.c
+index 667f288..60c621b 100644
+--- a/xfsm-shutdown-helper/main.c
++++ b/xfsm-shutdown-helper/main.c
+@@ -57,6 +57,12 @@
+ #ifdef REBOOT_CMD
+ #undef REBOOT_CMD
+ #endif
++#ifdef UP_BACKEND_SUSPEND_COMMAND
++#undef UP_BACKEND_SUSPEND_COMMAND
++#endif
++#ifdef UP_BACKEND_HIBERNATE_COMMAND
++#undef UP_BACKEND_HIBERNATE_COMMAND
++#endif
+
+ #if defined(__DragonFly__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
+ #define POWEROFF_CMD "/sbin/shutdown -p now"
+@@ -68,6 +74,18 @@
+ #define POWEROFF_CMD "/sbin/shutdown -h now"
+ #define REBOOT_CMD "/sbin/shutdown -r now"
+ #endif
++#ifdef BACKEND_TYPE_FREEBSD
++#define UP_BACKEND_SUSPEND_COMMAND "/usr/sbin/zzz"
++#define UP_BACKEND_HIBERNATE_COMMAND "/usr/sbin/acpiconf -s 4"
++#endif
++#if BACKEND_TYPE_LINUX
++#define UP_BACKEND_SUSPEND_COMMAND "/usr/sbin/pm-suspend"
++#define UP_BACKEND_HIBERNATE_COMMAND "/usr/sbin/pm-hibernate"
++#endif
++#ifdef BACKEND_TYPE_OPENBSD
++#define UP_BACKEND_SUSPEND_COMMAND "/usr/sbin/zzz"
++#define UP_BACKEND_HIBERNATE_COMMAND "/dev/null"
++#endif
+
+
+ static gboolean
+@@ -143,6 +161,14 @@ main (int argc, char **argv)
+ {
+ succeed = run (REBOOT_CMD);
+ }
++ else if (strncasecmp (action, "SUSPEND", 7) == 0)
++ {
++ succeed = run (UP_BACKEND_SUSPEND_COMMAND);
++ }
++ else if (strncasecmp (action, "HIBERNATE", 9) == 0)
++ {
++ succeed = run (UP_BACKEND_HIBERNATE_COMMAND);
++ }
+
+ if (succeed)
+ {
+--
+1.9.3
+
diff --git a/xfce-base/xfce4-session/xfce4-session-4.11.0-r1.ebuild b/xfce-base/xfce4-session/xfce4-session-4.11.0-r1.ebuild
new file mode 100644
index 000000000000..47f9eafda08d
--- /dev/null
+++ b/xfce-base/xfce4-session/xfce4-session-4.11.0-r1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/xfce-base/xfce4-session/xfce4-session-4.11.0-r1.ebuild,v 1.1 2014/05/31 19:19:58 ssuominen Exp $
+
+EAPI=5
+EAUTORECONF=1
+inherit xfconf
+
+DESCRIPTION="A session manager for the Xfce desktop environment"
+HOMEPAGE="http://docs.xfce.org/xfce/xfce4-session/start"
+SRC_URI="mirror://xfce/src/xfce/${PN}/${PV%.*}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~x86-solaris"
+IUSE="debug nls systemd udev +xscreensaver"
+
+COMMON_DEPEND=">=dev-libs/dbus-glib-0.100
+ x11-apps/iceauth
+ x11-libs/libSM
+ >=x11-libs/libwnck-2.30:1
+ x11-libs/libX11
+ >=xfce-base/libxfce4util-4.11
+ >=xfce-base/libxfce4ui-4.11
+ >=xfce-base/xfconf-4.10
+ !xfce-base/xfce-utils
+ udev? ( || ( >=sys-power/upower-0.9.23 sys-power/upower-pm-utils ) )
+ systemd? ( >=sys-auth/polkit-0.100 )"
+RDEPEND="${COMMON_DEPEND}
+ x11-apps/xrdb
+ nls? ( x11-misc/xdg-user-dirs )
+ xscreensaver? ( || (
+ >=x11-misc/xscreensaver-5.26
+ gnome-extra/gnome-screensaver
+ >=x11-misc/xlockmore-5.43
+ x11-misc/slock
+ x11-misc/alock[pam]
+ ) )"
+DEPEND="${COMMON_DEPEND}
+ dev-util/intltool
+ sys-devel/gettext
+ virtual/pkgconfig"
+
+pkg_setup() {
+ PATCHES=(
+ "${FILESDIR}"/${PN}-4.10.1-alock_support_to_xflock4.patch
+ "${FILESDIR}"/${P}-upower-0.99.patch
+ )
+
+ XFCONF=(
+ --docdir="${EPREFIX}"/usr/share/doc/${PF}
+ $(use_enable systemd)
+ --with-xsession-prefix="${EPREFIX}"/usr
+ $(xfconf_use_debug)
+ )
+
+ DOCS=( AUTHORS BUGS ChangeLog NEWS README TODO )
+}
+
+src_install() {
+ xfconf_src_install
+
+ local sessiondir=/etc/X11/Sessions
+ echo startxfce4 > "${T}"/Xfce4
+ exeinto ${sessiondir}
+ doexe "${T}"/Xfce4
+ dosym Xfce4 ${sessiondir}/Xfce
+}
diff --git a/xfce-base/xfce4-session/xfce4-session-4.11.0.ebuild b/xfce-base/xfce4-session/xfce4-session-4.11.0.ebuild
index ec9d1f472dcf..cddd39295b02 100644
--- a/xfce-base/xfce4-session/xfce4-session-4.11.0.ebuild
+++ b/xfce-base/xfce4-session/xfce4-session-4.11.0.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/xfce-base/xfce4-session/xfce4-session-4.11.0.ebuild,v 1.3 2014/05/26 19:42:15 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/xfce-base/xfce4-session/xfce4-session-4.11.0.ebuild,v 1.4 2014/05/31 19:19:58 ssuominen Exp $
EAPI=5
inherit xfconf
@@ -27,7 +27,7 @@ COMMON_DEPEND=">=dev-libs/dbus-glib-0.100
RDEPEND="${COMMON_DEPEND}
x11-apps/xrdb
nls? ( x11-misc/xdg-user-dirs )
- udev? ( || ( >=sys-power/upower-0.9.20 sys-power/upower-pm-utils ) )
+ udev? ( || ( <sys-power/upower-0.99 sys-power/upower-pm-utils ) )
xscreensaver? ( || (
>=x11-misc/xscreensaver-5.26
gnome-extra/gnome-screensaver