Date: Friday, April 11, 2014 @ 04:00:26 Author: bgyorgy Revision: 109162
upgpkg: cinnamon-session 2.0.6-3 Rebuild for upower 0.99 Added: cinnamon-session/trunk/cinnamon-session-upower.patch Modified: cinnamon-session/trunk/PKGBUILD -------------------------------+ PKGBUILD | 7 + cinnamon-session-upower.patch | 168 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 174 insertions(+), 1 deletion(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2014-04-11 01:28:15 UTC (rev 109161) +++ PKGBUILD 2014-04-11 02:00:26 UTC (rev 109162) @@ -4,7 +4,7 @@ pkgname=cinnamon-session pkgver=2.0.6 -pkgrel=2 +pkgrel=3 pkgdesc="The Cinnamon Session Handler" arch=(i686 x86_64) license=(GPL LGPL) @@ -14,9 +14,11 @@ install=cinnamon-session.install url="https://github.com/linuxmint/cinnamon-session" source=(${pkgname}-${pkgver}.tar.gz::https://github.com/linuxmint/cinnamon-session/archive/${pkgver}.tar.gz + cinnamon-session-upower.patch remove_sessionmigration.patch timeout.patch) sha256sums=('831a63f31bd5c0f5dcaee833d3e43e50e8c9d540cbe931e71b8e0f79ede14567' + '349845122c14db73e20eef6f7e5fdadf7987ef9a8c72f14a7bbb249892333b1e' 'f3c0bc1a3debfaa686230f19ba371b08dd4645064d90ead0c34f465c7d416736' 'ef421a14814c7858490b3a806568ab4ec8a0dc21d390e94f801771c1261bb24a') @@ -23,6 +25,9 @@ prepare() { cd $pkgname-$pkgver + # Port to upower 0.99 + patch -Np1 -i ../cinnamon-session-upower.patch + # Do not try to execute session-migration script (it's specific to Ubuntu) patch -Np1 -i ../remove_sessionmigration.patch Added: cinnamon-session-upower.patch =================================================================== --- cinnamon-session-upower.patch (rev 0) +++ cinnamon-session-upower.patch 2014-04-11 02:00:26 UTC (rev 109162) @@ -0,0 +1,168 @@ +diff -up cinnamon-session-2.0.4/cinnamon-session/Makefile.am.upower_deprecated cinnamon-session-2.0.4/cinnamon-session/Makefile.am +--- cinnamon-session-2.0.4/cinnamon-session/Makefile.am.upower_deprecated 2013-10-31 08:35:04.000000000 -0500 ++++ cinnamon-session-2.0.4/cinnamon-session/Makefile.am 2013-11-07 18:41:56.552911583 -0600 +@@ -6,12 +6,13 @@ noinst_PROGRAMS = \ + test-process-helper + + AM_CPPFLAGS = \ +- $(CINNAMON_SESSION_CFLAGS) \ ++ $(CINNAMON_SESSION_CFLAGS) \ ++ $(UPOWER_CFLAGS) \ + $(DISABLE_DEPRECATED_CFLAGS) + + AM_CFLAGS = $(WARN_CFLAGS) + +-cinnamon_session_SOURCES = \ ++cinnamon_session_SOURCES = \ + csm-app.h \ + csm-app.c \ + csm-autostart-app.h \ +@@ -28,8 +29,6 @@ cinnamon_session_SOURCES = \ + csm-marshal.c \ + csm-system.h \ + csm-system.c \ +- csm-consolekit.c \ +- csm-consolekit.h \ + csm-systemd.h \ + csm-systemd.c \ + csm-logout-dialog.h \ +@@ -63,6 +62,10 @@ cinnamon_session_SOURCES = \ + csm-xsmp-server.c \ + csm-xsmp-server.h + ++if HAVE_OLD_UPOWER ++cinnamon_session_SOURCES += csm-consolekit.c csm-consolekit.h ++endif ++ + cinnamon_session_CPPFLAGS = \ + $(AM_CPPFLAGS) \ + $(SM_CFLAGS) \ +@@ -86,7 +89,8 @@ cinnamon_session_LDADD = \ + $(XRENDER_LIBS) \ + $(XTEST_LIBS) \ + $(XEXT_LIBS) \ +- $(CINNAMON_SESSION_LIBS) \ ++ $(CINNAMON_SESSION_LIBS) \ ++ $(UPOWER_LIBS) \ + $(GCONF_LIBS) \ + $(SYSTEMD_LIBS) \ + $(EXECINFO_LIBS) +diff -up cinnamon-session-2.0.4/cinnamon-session/csm-logout-dialog.c.upower_deprecated cinnamon-session-2.0.4/cinnamon-session/csm-logout-dialog.c +--- cinnamon-session-2.0.4/cinnamon-session/csm-logout-dialog.c.upower_deprecated 2013-10-31 08:35:04.000000000 -0500 ++++ cinnamon-session-2.0.4/cinnamon-session/csm-logout-dialog.c 2013-11-07 18:41:56.553911565 -0600 +@@ -26,8 +26,10 @@ + + #include <glib/gi18n.h> + #include <gtk/gtk.h> ++#ifdef HAVE_OLD_UPOWER + #define UPOWER_ENABLE_DEPRECATED 1 + #include <upower.h> ++#endif + + #include "csm-logout-dialog.h" + #include "csm-system.h" +@@ -47,7 +49,9 @@ struct _CsmLogoutDialogPrivate + { + CsmDialogLogoutType type; + ++#ifdef HAVE_OLD_UPOWER + UpClient *up_client; ++#endif + CsmSystem *system; + + int timeout; +@@ -139,7 +143,9 @@ csm_logout_dialog_init (CsmLogoutDialog + gtk_window_set_keep_above (GTK_WINDOW (logout_dialog), TRUE); + gtk_window_stick (GTK_WINDOW (logout_dialog)); + ++#ifdef HAVE_OLD_UPOWER + logout_dialog->priv->up_client = up_client_new (); ++#endif + + logout_dialog->priv->system = csm_get_system (); + +@@ -163,10 +169,12 @@ csm_logout_dialog_destroy (CsmLogoutDial + logout_dialog->priv->timeout_id = 0; + } + ++#ifdef HAVE_OLD_UPOWER + if (logout_dialog->priv->up_client) { + g_object_unref (logout_dialog->priv->up_client); + logout_dialog->priv->up_client = NULL; + } ++#endif + + g_clear_object (&logout_dialog->priv->system); + +@@ -176,13 +184,21 @@ csm_logout_dialog_destroy (CsmLogoutDial + static gboolean + csm_logout_supports_system_suspend (CsmLogoutDialog *logout_dialog) + { +- return ( csm_system_can_suspend (logout_dialog->priv->system) || up_client_get_can_suspend (logout_dialog->priv->up_client) ); ++#if defined(HAVE_SYSTEMD) ++ return csm_system_can_suspend (logout_dialog->priv->system); ++#elif defined(HAVE_OLD_UPOWER) ++ return up_client_get_can_suspend (logout_dialog->priv->up_client); ++#endif + } + + static gboolean + csm_logout_supports_system_hibernate (CsmLogoutDialog *logout_dialog) + { +- return ( csm_system_can_hibernate (logout_dialog->priv->system) || up_client_get_can_hibernate (logout_dialog->priv->up_client) ); ++#if defined(HAVE_SYSTEMD) ++ return csm_system_can_hibernate (logout_dialog->priv->system); ++#elif defined(HAVE_OLD_UPOWER) ++ return up_client_get_can_hibernate (logout_dialog->priv->up_client); ++#endif + } + + static gboolean +diff -up cinnamon-session-2.0.4/cinnamon-session/csm-system.c.upower_deprecated cinnamon-session-2.0.4/cinnamon-session/csm-system.c +--- cinnamon-session-2.0.4/cinnamon-session/csm-system.c.upower_deprecated 2013-10-31 08:35:04.000000000 -0500 ++++ cinnamon-session-2.0.4/cinnamon-session/csm-system.c 2013-11-07 18:43:30.764176105 -0600 +@@ -156,12 +156,14 @@ csm_get_system (void) + g_debug ("Using systemd for session tracking"); + } + } ++#ifdef HAVE_OLD_UPOWER + if (system == NULL) { + system = CSM_SYSTEM (csm_consolekit_new ()); + if (system != NULL) { + g_debug ("Using ConsoleKit for session tracking"); + } + } ++#endif + + return g_object_ref (system); + } +diff -up cinnamon-session-2.0.4/configure.ac.upower_deprecated cinnamon-session-2.0.4/configure.ac +--- cinnamon-session-2.0.4/configure.ac.upower_deprecated 2013-10-31 08:35:04.000000000 -0500 ++++ cinnamon-session-2.0.4/configure.ac 2013-11-07 18:41:56.553911565 -0600 +@@ -52,10 +52,17 @@ PKG_CHECK_MODULES(CINNAMON_SESSION, + gio-2.0 >= $GLIB_REQUIRED + gtk+-3.0 >= $GTK3_REQUIRED + dbus-glib-1 >= $DBUS_GLIB_REQUIRED +- upower-glib >= $UPOWER_REQUIRED + json-glib-1.0 >= $JSON_GLIB_REQUIRED + ) + ++dnl We can only support old upower ++dnl https://bugzilla.gnome.org/show_bug.cgi?id=710383 ++PKG_CHECK_MODULES(UPOWER, upower-glib < 0.99.0, have_old_upower=yes, have_old_upower=no) ++AS_IF([test x$have_old_upower = xyes], [ ++ AC_DEFINE([HAVE_OLD_UPOWER], [1], [Define if we have an older upower]) ++]) ++AM_CONDITIONAL(HAVE_OLD_UPOWER, test x$have_old_upower = xyes) ++ + PKG_CHECK_MODULES(SESSION_PROPERTIES, + glib-2.0 >= $GLIB_REQUIRED + gtk+-3.0 >= $GTK3_REQUIRED +@@ -379,6 +386,7 @@ echo " + XRender support: ${have_xrender} + XSync support: ${have_xsync} + XTest support: ${have_xtest} ++ Legacy UPower backend: ${have_old_upower} + Build documentation: ${enable_docbook_docs} + + "
