[arch-commits] Commit in lightdm/trunk (PKGBUILD lightdm-xdg-session-class.patch)

Maxime Gauduin alucryd at nymeria.archlinux.org
Mon Nov 4 22:44:31 UTC 2013


    Date: Monday, November 4, 2013 @ 23:44:31
  Author: alucryd
Revision: 100473

FS#37627: lightdm 1:1.8.1-2

Added:
  lightdm/trunk/lightdm-xdg-session-class.patch
Modified:
  lightdm/trunk/PKGBUILD

---------------------------------+
 PKGBUILD                        |    7 +-
 lightdm-xdg-session-class.patch |  130 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 135 insertions(+), 2 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2013-11-04 19:27:03 UTC (rev 100472)
+++ PKGBUILD	2013-11-04 22:44:31 UTC (rev 100473)
@@ -5,7 +5,7 @@
 pkgbase=lightdm
 pkgname=('lightdm' 'liblightdm-qt4' 'liblightdm-qt5')
 pkgver=1.8.1
-pkgrel=1
+pkgrel=2
 epoch=1
 pkgdesc="A lightweight display manager"
 arch=('i686' 'x86_64')
@@ -19,6 +19,7 @@
         'lightdm-autologin.pam'
         'lightdm.rules'
         'lightdm-default-config.patch'
+        'lightdm-xdg-session-class.patch'
         'Xsession')
 sha256sums=('e749ea72ac2517f592a8dfcd8bbdf7aba6729cb75c569c03347751d87f99305a'
             '0d2adba25cdbe59e97ffd302083db9d5e23920780f41e04f64512cd6b633289a'
@@ -27,11 +28,13 @@
             '33e3c3d6e16c8d30756754ea3f31f5457c5be0343686aad287692be34958984a'
             'a89566307e1c81c24f037d854cbd472d2f94f8a4b759877a01563a332319f7d6'
             '0b2f740616110887d5c8662e40f1a8350fc0dfa6c7e99f6e3a5636c6b0ca714f'
+            '1d991d60c8212c9c763c62ffea8401d69b0be39a4d006cccb8e06676d56e5a55'
             '7fb85a1b54406032a922e8fd6f45d869fcfe5681df630e74e8e50c040b786ee4')
 
 prepare() {
   cd ${pkgbase}-${pkgver}
 
+  patch -Np0 -i ../lightdm-xdg-session-class.patch
   patch -Np1 -i ../lightdm-default-config.patch
 }
 
@@ -64,7 +67,7 @@
   make DESTDIR="${pkgdir}" -C liblightdm-qt uninstall
   install -m 755 ../Xsession "${pkgdir}"/etc/lightdm/Xsession
   rm -rf "${pkgdir}"/etc/init
-  rm -rf "${pkgdir}"/usr/include/lightdm-qt{,5}-2
+  rm -rf "${pkgdir}"/usr/include/lightdm-qt{,5}-*
 
   install -dm 770 "${pkgdir}"/var/lib/lightdm
   install -dm 711 "${pkgdir}"/var/log/lightdm

Added: lightdm-xdg-session-class.patch
===================================================================
--- lightdm-xdg-session-class.patch	                        (rev 0)
+++ lightdm-xdg-session-class.patch	2013-11-04 22:44:31 UTC (rev 100473)
@@ -0,0 +1,130 @@
+=== modified file 'src/seat.c'
+--- src/seat.c	2013-10-03 21:38:07 +0000
++++ src/seat.c	2013-10-21 22:55:16 +0000
+@@ -1075,6 +1075,7 @@
+     g_signal_connect (greeter_session, "stopped", G_CALLBACK (session_stopped_cb), seat);
+   
+     set_session_env (SESSION (greeter_session));
++    session_set_env (SESSION (greeter_session), "XDG_SESSION_CLASS", "greeter");
+ 
+     session_set_pam_service (SESSION (greeter_session), GREETER_SERVICE);
+     if (getuid () == 0)
+
+=== modified file 'src/session-child.c'
+--- src/session-child.c	2013-07-26 02:27:41 +0000
++++ src/session-child.c	2013-10-21 22:55:16 +0000
+@@ -213,7 +213,6 @@
+     gchar *authentication_result_string;
+     gchar *service;
+     gchar *username;
+-    gchar *class;
+     gchar *tty;
+     gchar *remote_host_name;
+     gchar *xdisplay;
+@@ -284,7 +283,7 @@
+     username = read_string ();
+     read_data (&do_authenticate, sizeof (do_authenticate));
+     read_data (&is_interactive, sizeof (is_interactive));
+-    class = read_string ();
++    read_string (); /* Used to be class, now we just use the environment variable */
+     tty = read_string ();
+     remote_host_name = read_string ();
+     xdisplay = read_string ();
+@@ -480,7 +479,7 @@
+         g_variant_builder_init (&ck_parameters, G_VARIANT_TYPE ("(a(sv))"));
+         g_variant_builder_open (&ck_parameters, G_VARIANT_TYPE ("a(sv)"));
+         g_variant_builder_add (&ck_parameters, "(sv)", "unix-user", g_variant_new_int32 (user_get_uid (user)));
+-        if (g_strcmp0 (class, XDG_SESSION_CLASS_GREETER) == 0)
++        if (g_strcmp0 (pam_getenv (pam_handle, "XDG_SESSION_CLASS"), "greeter") == 0)
+             g_variant_builder_add (&ck_parameters, "(sv)", "session-type", g_variant_new_string ("LoginWindow"));
+         if (xdisplay)
+         {
+@@ -601,7 +600,7 @@
+     if (child_pid > 0)
+     {
+         /* Log to utmp */
+-        if (g_strcmp0 (class, XDG_SESSION_CLASS_GREETER) != 0)
++        if (g_strcmp0 (pam_getenv (pam_handle, "XDG_SESSION_CLASS"), "greeter") != 0)
+         {
+             struct utmpx ut;
+             struct timeval tv;
+@@ -632,7 +631,7 @@
+         child_pid = 0;
+ 
+         /* Log to utmp */
+-        if (g_strcmp0 (class, XDG_SESSION_CLASS_GREETER) != 0)
++        if (g_strcmp0 (pam_getenv (pam_handle, "XDG_SESSION_CLASS"), "greeter") != 0)
+         {
+             struct utmpx ut;
+             struct timeval tv;
+
+=== modified file 'src/session.c'
+--- src/session.c	2013-09-19 14:53:48 +0000
++++ src/session.c	2013-10-21 22:43:11 +0000
+@@ -84,9 +84,6 @@
+     /* File to log to */
+     gchar *log_filename;
+ 
+-    /* Seat class */
+-    gchar *class;
+-
+     /* tty this session is running on */
+     gchar *tty;
+ 
+@@ -200,14 +197,6 @@
+ }
+ 
+ void
+-session_set_class (Session *session, const gchar *class)
+-{
+-    g_return_if_fail (session != NULL);
+-    g_free (session->priv->class);
+-    session->priv->class = g_strdup (class);
+-}
+-
+-void
+ session_set_display_server (Session *session, DisplayServer *display_server)
+ {
+     g_return_if_fail (session != NULL);
+@@ -615,7 +604,7 @@
+     write_string (session, session->priv->username);
+     write_data (session, &session->priv->do_authenticate, sizeof (session->priv->do_authenticate));
+     write_data (session, &session->priv->is_interactive, sizeof (session->priv->is_interactive));
+-    write_string (session, session->priv->class);
++    write_string (session, NULL); /* Used to be class, now we just use the environment variable */
+     write_string (session, session->priv->tty);
+     write_string (session, session->priv->remote_host_name);
+     write_string (session, session->priv->xdisplay);
+@@ -874,7 +863,6 @@
+     g_free (self->priv->messages);
+     g_free (self->priv->authentication_result_string);
+     g_free (self->priv->log_filename);
+-    g_free (self->priv->class);
+     g_free (self->priv->tty);
+     g_free (self->priv->xdisplay);
+     if (self->priv->x_authority)
+
+=== modified file 'src/session.h'
+--- src/session.h	2013-08-14 20:14:16 +0000
++++ src/session.h	2013-10-21 22:55:16 +0000
+@@ -57,10 +57,6 @@
+     SESSION_TYPE_REMOTE
+ } SessionType;
+ 
+-#define XDG_SESSION_CLASS_USER        "user"
+-#define XDG_SESSION_CLASS_GREETER     "greeter"
+-#define XDG_SESSION_CLASS_LOCK_SCREEN "lock-screen"
+-
+ GType session_get_type (void);
+ 
+ Session *session_new (void);
+@@ -83,8 +79,6 @@
+ 
+ void session_set_log_file (Session *session, const gchar *filename);
+ 
+-void session_set_class (Session *session, const gchar *class);
+-
+ void session_set_display_server (Session *session, DisplayServer *display_server);
+ 
+ DisplayServer *session_get_display_server (Session *session);
+


Property changes on: lightdm/trunk/lightdm-xdg-session-class.patch
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property



More information about the arch-commits mailing list