summaryrefslogtreecommitdiff
path: root/community/lightdm
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2013-10-11 00:07:28 -0700
committerroot <root@rshg054.dnsready.net>2013-10-11 00:07:28 -0700
commitc38c20f4261c973628038df011b526c6ad4e0489 (patch)
tree177946f9ec2d7ef5e23b9ffdd749442d18923aa6 /community/lightdm
parent361f95d1ff881daf5f87cb14917bd524511abfc5 (diff)
Fri Oct 11 00:07:27 PDT 2013
Diffstat (limited to 'community/lightdm')
-rwxr-xr-xcommunity/lightdm/PKGBUILD21
-rwxr-xr-xcommunity/lightdm/lightdm-corrupt-x-authority.patch21
-rwxr-xr-xcommunity/lightdm/lightdm-default-config.patch16
-rwxr-xr-xcommunity/lightdm/lightdm-lock-screen-before-switch.patch55
-rwxr-xr-xcommunity/lightdm/lightdm-use-login1.patch505
5 files changed, 14 insertions, 604 deletions
diff --git a/community/lightdm/PKGBUILD b/community/lightdm/PKGBUILD
index 6f494e7e6..49b1e9cec 100755
--- a/community/lightdm/PKGBUILD
+++ b/community/lightdm/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 98119 2013-10-06 08:35:43Z alucryd $
+# $Id: PKGBUILD 98444 2013-10-10 16:19:18Z alucryd $
# Maintainer: Maxime Gauduin <alucryd@gmail.com>
# Contributor: Morfeo <morfeo89@hotmail.it>
pkgbase=lightdm
pkgname=('lightdm' 'liblightdm-qt4' 'liblightdm-qt5')
-pkgver=1.6.2
-pkgrel=2
+pkgver=1.8.1
+pkgrel=1
epoch=1
pkgdesc="A lightweight display manager"
arch=('i686' 'x86_64')
@@ -13,36 +13,27 @@ url="https://launchpad.net/lightdm"
license=('GPL3' 'LGPL3')
makedepends=('gobject-introspection' 'gtk-doc' 'intltool' 'itstool' 'libxklavier' 'polkit' 'qt4' 'qt5-base')
options=('!libtool')
-source=("https://launchpad.net/lightdm/1.6/${pkgver}/+download/${pkgbase}-${pkgver}.tar.xz"
+source=("https://launchpad.net/lightdm/${pkgver%.*}/${pkgver}/+download/${pkgbase}-${pkgver}.tar.xz"
'lightdm.service'
'lightdm.tmpfiles'
'lightdm.pam'
'lightdm-autologin.pam'
'lightdm.rules'
- 'lightdm-corrupt-x-authority.patch'
'lightdm-default-config.patch'
- 'lightdm-lock-screen-before-switch.patch'
- 'lightdm-use-login1.patch'
'Xsession')
-sha256sums=('b0de1dc81bb5ce81800feafb9fbc7806ef4dfc83733f0df058568e55b8a045f3'
+sha256sums=('e749ea72ac2517f592a8dfcd8bbdf7aba6729cb75c569c03347751d87f99305a'
'0d2adba25cdbe59e97ffd302083db9d5e23920780f41e04f64512cd6b633289a'
'b29521fbd7a48a8f60b93ecca3b30c30bcb71560de8033c8d39b25c22c6f696f'
'e8c4c5fd3b801a390d201166fd1fb9730e78a5c62928768103b870b6bd980ea0'
'33e3c3d6e16c8d30756754ea3f31f5457c5be0343686aad287692be34958984a'
'a89566307e1c81c24f037d854cbd472d2f94f8a4b759877a01563a332319f7d6'
- '420aac58151bc441696db0bf234123b934ca8a8798e90db8a59252258e82b5d5'
- '15f75ffe122fa86c0c4b3558b9d73e151ba89355093036ffc64110c5e306216b'
- '4793eaee5915f5c519f569a4cd9158822d4c57c8b6e405895d2eddf82fa00822'
- 'a760c7b4d8c0b54bb204b5d6e574c82360a90464ac06042409a17f950d2c1194'
+ '0b2f740616110887d5c8662e40f1a8350fc0dfa6c7e99f6e3a5636c6b0ca714f'
'7fb85a1b54406032a922e8fd6f45d869fcfe5681df630e74e8e50c040b786ee4')
prepare() {
cd ${pkgbase}-${pkgver}
- patch -Np0 -i ../lightdm-corrupt-x-authority.patch
patch -Np1 -i ../lightdm-default-config.patch
- patch -Np1 -i ../lightdm-lock-screen-before-switch.patch
- patch -Np0 -i ../lightdm-use-login1.patch
}
build() {
diff --git a/community/lightdm/lightdm-corrupt-x-authority.patch b/community/lightdm/lightdm-corrupt-x-authority.patch
deleted file mode 100755
index f994b394c..000000000
--- a/community/lightdm/lightdm-corrupt-x-authority.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-=== modified file 'src/xauthority.c'
---- src/xauthority.c 2013-09-10 23:14:12 +0000
-+++ src/xauthority.c 2013-09-30 02:59:01 +0000
-@@ -237,7 +237,7 @@
- gboolean
- x_authority_write (XAuthority *auth, XAuthWriteMode mode, const gchar *filename, GError **error)
- {
-- gchar *input;
-+ gchar *input = NULL;
- gsize input_length = 0, input_offset = 0;
- GList *link, *records = NULL;
- XAuthority *a;
-@@ -328,6 +328,7 @@
- }
-
- errno = 0;
-+ result = TRUE;
- for (link = records; link && result; link = link->next)
- {
- XAuthority *a = link->data;
-
diff --git a/community/lightdm/lightdm-default-config.patch b/community/lightdm/lightdm-default-config.patch
index 7c7b421b6..54963c689 100755
--- a/community/lightdm/lightdm-default-config.patch
+++ b/community/lightdm/lightdm-default-config.patch
@@ -17,29 +17,29 @@
+log-directory=/var/log/lightdm
+run-directory=/run/lightdm
#cache-directory=/var/cache/lightdm
- #xsessions-directory=/usr/share/xsessions
+ #sessions-directory=/usr/share/lightdm/sessions:/usr/share/xsessions
#remote-sessions-directory=/usr/share/lightdm/remote-sessions
-@@ -71,7 +71,7 @@
- #xdmcp-manager=
- #xdmcp-port=177
+@@ -81,7 +81,7 @@
#xdmcp-key=
+ #unity-compositor-command=unity-system-compositor
+ #unity-compositor-timeout=60
-#greeter-session=example-gtk-gnome
+greeter-session=lightdm-gtk-greeter
#greeter-hide-users=false
#greeter-allow-guest=true
#greeter-show-manual-login=false
-@@ -79,7 +79,7 @@
+@@ -89,7 +89,7 @@
#user-session=default
#allow-guest=true
#guest-session=UNIMPLEMENTED
-#session-wrapper=lightdm-session
+session-wrapper=/etc/lightdm/Xsession
+ #greeter-wrapper=
#display-setup-script=
#greeter-setup-script=
- #session-setup-script=
-@@ -88,6 +88,7 @@
- #autologin-user=
+@@ -100,6 +100,7 @@
#autologin-user-timeout=0
+ #autologin-in-background=false
#autologin-session=UNIMPLEMENTED
+pam-service=lightdm-autologin
#exit-on-failure=false
diff --git a/community/lightdm/lightdm-lock-screen-before-switch.patch b/community/lightdm/lightdm-lock-screen-before-switch.patch
deleted file mode 100755
index b8b1d559c..000000000
--- a/community/lightdm/lightdm-lock-screen-before-switch.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-# HG changeset patch
-# Parent b329fa1badaa454239690c3feb93d53324134915
-try to lock the screen before switching users
-
-diff --git a/utils/gdmflexiserver b/utils/gdmflexiserver
---- a/utils/gdmflexiserver
-+++ b/utils/gdmflexiserver
-@@ -9,9 +9,47 @@
- #
- # See http://www.gnu.org/copyleft/gpl.html for the full text of the license.
-
-+PATH=/usr/local/bin:/bin:/usr/bin
-+export PATH
-+
- if [ -z "$XDG_SEAT_PATH" ]; then
- # something went wrong
- exit 1
- fi
-
-+find_command () {
-+ cmd="$1"
-+ oIFS="${IFS}"; IFS=:
-+ set -- ${PATH}
-+ IFS="${oIFS}"
-+
-+ for part; do
-+ [ -x "${part}/${cmd}" ] && return 0
-+ done
-+ return 1
-+}
-+
-+lock_screen () {
-+ for lock_cmd in \
-+ "xscreensaver-command -lock" \
-+ "gnome-screensaver-command --lock" \
-+ "dbus-send --session --dest=org.freedesktop.ScreenSaver --type=method_call /ScreenSaver org.freedesktop.ScreenSaver.Lock"
-+ do
-+ ${lock_cmd} >/dev/null 2>&1 && return
-+ done
-+
-+ for lock_cmd in \
-+ "slock" \
-+ "xlock -mode blank"
-+ do
-+ set -- ${lock_cmd}
-+ if find_command "$1"; then
-+ ${lock_cmd} >/dev/null 2>&1 &
-+ return
-+ fi
-+ done
-+}
-+
-+lock_screen
-+
- dbus-send --system --type=method_call --print-reply --dest=org.freedesktop.DisplayManager $XDG_SEAT_PATH org.freedesktop.DisplayManager.Seat.SwitchToGreeter
diff --git a/community/lightdm/lightdm-use-login1.patch b/community/lightdm/lightdm-use-login1.patch
deleted file mode 100755
index cc3d5a5fd..000000000
--- a/community/lightdm/lightdm-use-login1.patch
+++ /dev/null
@@ -1,505 +0,0 @@
-=== modified file 'liblightdm-gobject/power.c'
---- liblightdm-gobject/power.c 2013-01-31 20:56:09 +0000
-+++ liblightdm-gobject/power.c 2013-04-15 02:21:06 +0000
-@@ -17,6 +17,7 @@
-
- static GDBusProxy *upower_proxy = NULL;
- static GDBusProxy *ck_proxy = NULL;
-+static GDBusProxy *login1_proxy = NULL;
-
- static gboolean
- upower_call_function (const gchar *function, gboolean default_result, GError **error)
-@@ -109,11 +110,10 @@
- return upower_call_function ("Hibernate", TRUE, error);
- }
-
--static gboolean
--ck_call_function (const gchar *function, gboolean default_result, GError **error)
-+static GVariant *
-+ck_call_function (const gchar *function, GError **error)
- {
-- GVariant *result;
-- gboolean function_result = FALSE;
-+ GVariant *r;
-
- if (!ck_proxy)
- {
-@@ -129,22 +129,46 @@
- return FALSE;
- }
-
-- result = g_dbus_proxy_call_sync (ck_proxy,
-- function,
-- NULL,
-- G_DBUS_CALL_FLAGS_NONE,
-- -1,
-- NULL,
-- error);
--
-- if (!result)
-- return default_result;
--
-- if (g_variant_is_of_type (result, G_VARIANT_TYPE ("(b)")))
-- g_variant_get (result, "(b)", &function_result);
--
-- g_variant_unref (result);
-- return function_result;
-+ r = g_dbus_proxy_call_sync (ck_proxy,
-+ function,
-+ NULL,
-+ G_DBUS_CALL_FLAGS_NONE,
-+ -1,
-+ NULL,
-+ error);
-+
-+ return r;
-+}
-+
-+static GVariant *
-+login1_call_function (const gchar *function, GVariant *parameters, GError **error)
-+{
-+ GVariant *r;
-+ gchar *str_result;
-+
-+ if (!login1_proxy)
-+ {
-+ login1_proxy = g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,
-+ G_DBUS_PROXY_FLAGS_NONE,
-+ NULL,
-+ "org.freedesktop.login1",
-+ "/org/freedesktop/login1",
-+ "org.freedesktop.login1.Manager",
-+ NULL,
-+ error);
-+ if (!login1_proxy)
-+ return NULL;
-+ }
-+
-+ r = g_dbus_proxy_call_sync (login1_proxy,
-+ function,
-+ parameters,
-+ G_DBUS_CALL_FLAGS_NONE,
-+ -1,
-+ NULL,
-+ error);
-+
-+ return r;
- }
-
- /**
-@@ -157,7 +181,29 @@
- gboolean
- lightdm_get_can_restart (void)
- {
-- return ck_call_function ("CanRestart", FALSE, NULL);
-+ gboolean can_restart = FALSE;
-+ GVariant *r;
-+
-+ r = login1_call_function ("CanReboot", NULL, NULL);
-+ if (r)
-+ {
-+ gchar *result;
-+ if (g_variant_is_of_type (r, G_VARIANT_TYPE ("(s)")))
-+ {
-+ g_variant_get (r, "(&s)", &result);
-+ can_restart = g_strcmp0 (result, "yes") == 0;
-+ }
-+ }
-+ else
-+ {
-+ r = ck_call_function ("CanRestart", NULL);
-+ if (r && g_variant_is_of_type (r, G_VARIANT_TYPE ("(b)")))
-+ g_variant_get (r, "(b)", &can_restart);
-+ }
-+ if (r)
-+ g_variant_unref (r);
-+
-+ return can_restart;
- }
-
- /**
-@@ -171,7 +217,20 @@
- gboolean
- lightdm_restart (GError **error)
- {
-- return ck_call_function ("Restart", TRUE, error);
-+ GVariant *r;
-+ gboolean restarted;
-+
-+ r = login1_call_function ("Reboot", g_variant_new("(b)", FALSE), error);
-+ if (!r)
-+ {
-+ g_clear_error (error);
-+ r = ck_call_function ("Restart", error);
-+ }
-+ restarted = r != NULL;
-+ if (r)
-+ g_variant_unref (r);
-+
-+ return restarted;
- }
-
- /**
-@@ -184,7 +243,29 @@
- gboolean
- lightdm_get_can_shutdown (void)
- {
-- return ck_call_function ("CanStop", FALSE, NULL);
-+ gboolean can_shutdown = FALSE;
-+ GVariant *r;
-+
-+ r = login1_call_function ("CanPowerOff", NULL, NULL);
-+ if (r)
-+ {
-+ gchar *result;
-+ if (g_variant_is_of_type (r, G_VARIANT_TYPE ("(s)")))
-+ {
-+ g_variant_get (r, "(&s)", &result);
-+ can_shutdown = g_strcmp0 (result, "yes") == 0;
-+ }
-+ }
-+ else
-+ {
-+ r = ck_call_function ("CanStop", NULL);
-+ if (r && g_variant_is_of_type (r, G_VARIANT_TYPE ("(b)")))
-+ g_variant_get (r, "(b)", &can_shutdown);
-+ }
-+ if (r)
-+ g_variant_unref (r);
-+
-+ return can_shutdown;
- }
-
- /**
-@@ -198,5 +279,18 @@
- gboolean
- lightdm_shutdown (GError **error)
- {
-- return ck_call_function ("Stop", TRUE, error);
-+ GVariant *r;
-+ gboolean shutdown;
-+
-+ r = login1_call_function ("PowerOff", g_variant_new("(b)", FALSE), error);
-+ if (!r)
-+ {
-+ g_clear_error (error);
-+ r = ck_call_function ("Stop", error);
-+ }
-+ shutdown = r != NULL;
-+ if (r)
-+ g_variant_unref (r);
-+
-+ return shutdown;
- }
-
-=== modified file 'liblightdm-qt/power.cpp'
---- liblightdm-qt/power.cpp 2013-02-06 14:08:25 +0000
-+++ liblightdm-qt/power.cpp 2013-04-14 23:00:34 +0000
-@@ -15,6 +15,7 @@
- #include <QtCore/QVariant>
- #include <QtDBus/QDBusInterface>
- #include <QtDBus/QDBusReply>
-+#include <QDebug>
-
- #include "config.h"
-
-@@ -26,11 +27,13 @@
- PowerInterfacePrivate();
- QScopedPointer<QDBusInterface> powerManagementInterface;
- QScopedPointer<QDBusInterface> consoleKitInterface;
-+ QScopedPointer<QDBusInterface> login1Interface;
- };
-
- PowerInterface::PowerInterfacePrivate::PowerInterfacePrivate() :
- powerManagementInterface(new QDBusInterface("org.freedesktop.UPower","/org/freedesktop/UPower", "org.freedesktop.UPower", QDBusConnection::systemBus())),
-- consoleKitInterface(new QDBusInterface("org.freedesktop.ConsoleKit", "/org/freedesktop/ConsoleKit/Manager", "org.freedesktop.ConsoleKit.Manager", QDBusConnection::systemBus()))
-+ consoleKitInterface(new QDBusInterface("org.freedesktop.ConsoleKit", "/org/freedesktop/ConsoleKit/Manager", "org.freedesktop.ConsoleKit.Manager", QDBusConnection::systemBus())),
-+ login1Interface(new QDBusInterface("org.freedesktop.login1", "/org/freedesktop/login1", "org.freedesktop.login1.Manager", QDBusConnection::systemBus()))
- {
- }
-
-@@ -80,34 +83,54 @@
-
- bool PowerInterface::canShutdown()
- {
-+ if (d->login1Interface->isValid()) {
-+ QDBusReply<QString> reply1 = d->login1Interface->call("CanPowerOff");
-+ if (reply1.isValid()) {
-+ return reply1.value() == "yes";
-+ }
-+ }
-+ qWarning() << d->login1Interface->lastError();
-+
- QDBusReply<bool> reply = d->consoleKitInterface->call("CanStop");
- if (reply.isValid()) {
- return reply.value();
- }
-- else {
-- return false;
-- }
-+
-+ return false;
- }
-
- void PowerInterface::shutdown()
- {
-- d->consoleKitInterface->call("Stop");
-+ if (d->login1Interface->isValid())
-+ d->login1Interface->call("PowerOff", false);
-+ else
-+ d->consoleKitInterface->call("Stop");
- }
-
- bool PowerInterface::canRestart()
- {
-+ if (d->login1Interface->isValid()) {
-+ QDBusReply<QString> reply1 = d->login1Interface->call("CanReboot");
-+ if (reply1.isValid()) {
-+ return reply1.value() == "yes";
-+ }
-+ }
-+ qWarning() << d->login1Interface->lastError();
-+
- QDBusReply<bool> reply = d->consoleKitInterface->call("CanRestart");
- if (reply.isValid()) {
- return reply.value();
- }
-- else {
-- return false;
-- }
-+
-+ return false;
- }
-
- void PowerInterface::restart()
- {
-- d->consoleKitInterface->call("Restart");
-+ if (d->login1Interface->isValid())
-+ d->login1Interface->call("Reboot", false);
-+ else
-+ d->consoleKitInterface->call("Restart");
- }
-
- #if QT_VERSION >= QT_VERSION_CHECK(5, 0, 0)
-
-=== modified file 'tests/Makefile.am'
---- tests/Makefile.am 2013-04-12 03:46:06 +0000
-+++ tests/Makefile.am 2013-04-14 22:54:54 +0000
-@@ -135,6 +135,8 @@
- test-no-accounts-service \
- test-console-kit \
- test-no-console-kit \
-+ test-no-login1 \
-+ test-no-console-kit-or-login1 \
- test-open-file-descriptors \
- test-xdmcp-open-file-descriptors
-
-@@ -284,8 +286,10 @@
- scripts/no-accounts-service.conf \
- scripts/no-config.conf \
- scripts/no-console-kit.conf \
-+ scripts/no-console-kit-or-login1.conf \
- scripts/no-keyboard-layout.conf \
- scripts/no-language.conf \
-+ scripts/no-login1.conf \
- scripts/open-file-descriptors.conf \
- scripts/pam.conf \
- scripts/plymouth-active-vt.conf \
-
-=== added file 'tests/scripts/no-console-kit-or-login1.conf'
---- tests/scripts/no-console-kit-or-login1.conf 1970-01-01 00:00:00 +0000
-+++ tests/scripts/no-console-kit-or-login1.conf 2013-04-14 22:54:54 +0000
-@@ -0,0 +1,34 @@
-+#
-+# Check still works when neither ConsoleKit or login1 is available
-+#
-+
-+[test-runner-config]
-+disable-console-kit=true
-+disable-login1=true
-+
-+[LightDM]
-+minimum-display-number=50
-+
-+[SeatDefaults]
-+autologin-user=have-password1
-+
-+#?RUNNER DAEMON-START
-+
-+# X server starts
-+#?XSERVER :50 START
-+#?XSERVER :50 INDICATE-READY
-+
-+# LightDM connects to X server
-+#?XSERVER :50 ACCEPT-CONNECT
-+
-+# Session starts
-+#?SESSION :50 START USER=have-password1
-+#?XSERVER :50 ACCEPT-CONNECT
-+#?SESSION :50 CONNECT-XSERVER
-+
-+# Cleanup
-+#?*STOP-DAEMON
-+# Don't know what order they will terminate
-+#?(SESSION :50 TERMINATE SIGNAL=15|XSERVER :50 TERMINATE SIGNAL=15)
-+#?(SESSION :50 TERMINATE SIGNAL=15|XSERVER :50 TERMINATE SIGNAL=15)
-+#?RUNNER DAEMON-EXIT STATUS=0
-
-=== added file 'tests/scripts/no-login1.conf'
---- tests/scripts/no-login1.conf 1970-01-01 00:00:00 +0000
-+++ tests/scripts/no-login1.conf 2013-04-14 22:54:54 +0000
-@@ -0,0 +1,33 @@
-+#
-+# Check still works when login1 is not available
-+#
-+
-+[test-runner-config]
-+disable-login1=true
-+
-+[LightDM]
-+minimum-display-number=50
-+
-+[SeatDefaults]
-+autologin-user=have-password1
-+
-+#?RUNNER DAEMON-START
-+
-+# X server starts
-+#?XSERVER :50 START
-+#?XSERVER :50 INDICATE-READY
-+
-+# LightDM connects to X server
-+#?XSERVER :50 ACCEPT-CONNECT
-+
-+# Session starts
-+#?SESSION :50 START USER=have-password1
-+#?XSERVER :50 ACCEPT-CONNECT
-+#?SESSION :50 CONNECT-XSERVER
-+
-+# Cleanup
-+#?*STOP-DAEMON
-+# Don't know what order they will terminate
-+#?(SESSION :50 TERMINATE SIGNAL=15|XSERVER :50 TERMINATE SIGNAL=15)
-+#?(SESSION :50 TERMINATE SIGNAL=15|XSERVER :50 TERMINATE SIGNAL=15)
-+#?RUNNER DAEMON-EXIT STATUS=0
-
-=== modified file 'tests/src/test-runner.c'
---- tests/src/test-runner.c 2013-03-27 00:48:48 +0000
-+++ tests/src/test-runner.c 2013-04-14 22:54:54 +0000
-@@ -1464,6 +1464,101 @@ accounts_user_set_hidden (AccountsUser *
- }
-
- static void
-+handle_login1_call (GDBusConnection *connection,
-+ const gchar *sender,
-+ const gchar *object_path,
-+ const gchar *interface_name,
-+ const gchar *method_name,
-+ GVariant *parameters,
-+ GDBusMethodInvocation *invocation,
-+ gpointer user_data)
-+{
-+ if (strcmp (method_name, "CanReboot") == 0)
-+ g_dbus_method_invocation_return_value (invocation, g_variant_new ("(s)", "yes"));
-+ else if (strcmp (method_name, "Reboot") == 0)
-+ {
-+ gboolean interactive;
-+ g_variant_get (parameters, "(b)", &interactive);
-+ g_dbus_method_invocation_return_value (invocation, g_variant_new ("()"));
-+ }
-+ if (strcmp (method_name, "CanPowerOff") == 0)
-+ g_dbus_method_invocation_return_value (invocation, g_variant_new ("(s)", "yes"));
-+ else if (strcmp (method_name, "PowerOff") == 0)
-+ {
-+ gboolean interactive;
-+ g_variant_get (parameters, "(b)", &interactive);
-+ g_dbus_method_invocation_return_value (invocation, g_variant_new ("()"));
-+ }
-+ else
-+ g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_FAILED, "No such method: %s", method_name);
-+}
-+
-+static void
-+login1_name_acquired_cb (GDBusConnection *connection,
-+ const gchar *name,
-+ gpointer user_data)
-+{
-+ const gchar *login1_interface =
-+ "<node>"
-+ " <interface name='org.freedesktop.login1.Manager'>"
-+ " <method name='CanReboot'>"
-+ " <arg name='result' direction='out' type='s'/>"
-+ " </method>"
-+ " <method name='Reboot'>"
-+ " <arg name='interactive' direction='in' type='b'/>"
-+ " </method>"
-+ " <method name='CanPowerOff'>"
-+ " <arg name='result' direction='out' type='s'/>"
-+ " </method>"
-+ " <method name='PowerOff'>"
-+ " <arg name='interactive' direction='in' type='b'/>"
-+ " </method>"
-+ " </interface>"
-+ "</node>";
-+ static const GDBusInterfaceVTable login1_vtable =
-+ {
-+ handle_login1_call,
-+ };
-+ GDBusNodeInfo *login1_info;
-+ GError *error = NULL;
-+
-+ login1_info = g_dbus_node_info_new_for_xml (login1_interface, &error);
-+ if (error)
-+ g_warning ("Failed to parse D-Bus interface: %s", error->message);
-+ g_clear_error (&error);
-+ if (!login1_info)
-+ return;
-+ g_dbus_connection_register_object (connection,
-+ "/org/freedesktop/login1",
-+ login1_info->interfaces[0],
-+ &login1_vtable,
-+ NULL, NULL,
-+ &error);
-+ if (error)
-+ g_warning ("Failed to register login1 service: %s", error->message);
-+ g_clear_error (&error);
-+ g_dbus_node_info_unref (login1_info);
-+
-+ service_count--;
-+ if (service_count == 0)
-+ run_lightdm ();
-+}
-+
-+static void
-+start_login1_daemon ()
-+{
-+ service_count++;
-+ g_bus_own_name (G_BUS_TYPE_SYSTEM,
-+ "org.freedesktop.login1",
-+ G_BUS_NAME_OWNER_FLAGS_NONE,
-+ login1_name_acquired_cb,
-+ NULL,
-+ NULL,
-+ NULL,
-+ NULL);
-+}
-+
-+static void
- load_passwd_file (void)
- {
- gchar *path, *data, **lines;
-
-=== added file 'tests/test-no-console-kit-or-login1'
---- tests/test-no-console-kit-or-login1 1970-01-01 00:00:00 +0000
-+++ tests/test-no-console-kit-or-login1 2013-04-14 22:54:54 +0000
-@@ -0,0 +1,2 @@
-+#!/bin/sh
-+./src/dbus-env ./src/test-runner no-console-kit-or-login1 test-gobject-greeter
-
-=== added file 'tests/test-no-login1'
---- tests/test-no-login1 1970-01-01 00:00:00 +0000
-+++ tests/test-no-login1 2013-04-14 22:54:54 +0000
-@@ -0,0 +1,2 @@
-+#!/bin/sh
-+./src/dbus-env ./src/test-runner no-login1 test-gobject-greeter
-