Hello community, here is the log from the commit of package lightdm for openSUSE:Factory checked in at Mon Aug 8 15:58:43 CEST 2011.
-------- New Changes file: --- /dev/null 2010-08-26 16:28:41.000000000 +0200 +++ /mounts/work_src_done/STABLE/lightdm/lightdm.changes 2011-07-31 14:36:53.000000000 +0200 @@ -0,0 +1,34 @@ +------------------------------------------------------------------- +Sun Jul 31 12:34:24 UTC 2011 - g...@opensuse.org + +- changed lightdm-sysconfig-support.patch so that the sysconfig + parser does not print debug information which would go to the + console + +------------------------------------------------------------------- +Thu Jul 28 09:05:58 UTC 2011 - g...@opensuse.org + +- fixed some typos in lightdm-sysconfig-support.patch and + lightdm-handle-empty-autologin-user.patch and handle invalid + autologin-user properly + +------------------------------------------------------------------- +Tue Jul 26 16:09:30 UTC 2011 - g...@opensuse.org + +- update to version 0.9.2: + - fix annotation and Vala bindings for getting the UserList + singleton + - fix GTK+ greeter error label not being shown + - don't set SIGQUIT to ignore in child processes + - reworked the PAM code as ecryptfs users weren't able to log in +- added lightdm-handle-empty-autologin-user.patch in order to + prevent auto-login as nobody when autologin-user or + DISPLAYMANAGER_AUTOLOGIN are set to an empty string +- added patch tags +- split off -lang subpackage + +------------------------------------------------------------------- +Mon Jul 25 15:31:23 UTC 2011 - g...@opensuse.org + +- initial packaging + calling whatdependson for head-i586 New: ---- lightdm-0.9.2.tar.gz lightdm-autologin.pamd lightdm-default-configuration.patch lightdm-desktop-session-env-pam.patch lightdm-handle-empty-autologin-user.patch lightdm-rpmlintrc lightdm-sysconfig-support.patch lightdm-xauthlocalhostname-support.patch lightdm.changes lightdm.pamd lightdm.spec ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ lightdm.spec ++++++ # # spec file for package lightdm # # Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. # Copyright (c) 2011 Guido Berhoerster. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define gobject_libname lightdm-gobject-1 %define gobject_lib lib%{gobject_libname}-0 %define qt_libname lightdm-qt-1 %define qt_lib lib%{qt_libname}-0 Name: lightdm Version: 0.9.2 Release: 1 Summary: Lightweight, Cross-desktop Display Manager Group: System/X11/Displaymanagers License: GPLv3+ Url: http://www.freedesktop.org/wiki/Software/LightDM Source0: %{name}-%{version}.tar.gz Source1: %{name}.pamd Source2: %{name}-autologin.pamd Source100: %{name}-rpmlintrc # PATCH-FEATURE-OPENSUSE lightdm-default-configuration.patch g...@opensuse.org -- Modifies configuration with suitable defaults for openSUSE Patch0: lightdm-default-configuration.patch # PATCH-FEATURE-OPENSUSE lightdm-sysconfig-support.patch g...@opensuse.org -- Adds support for reading configuration options from /etc/sysconfig/displaymanager and /etc/sysconfig/windowmanager Patch1: lightdm-sysconfig-support.patch # PATCH-FEATURE-OPENSUSE lightdm-xauthlocalhostname-support.patch g...@opensuse.org -- Set XAUTHLOCALHOSTNAME to localhost for local logins to avoid issues in the session in case the hostname changes Patch2: lightdm-xauthlocalhostname-support.patch # PATCH-FEATURE-OPENSUSE lightdm-desktop-session-env-pam.patch g...@opensuse.org -- Sets a PAM environment variable to let the pam gnome-keyring module know which session is started Patch3: lightdm-desktop-session-env-pam.patch # PATCH-FIX-UPSTREAM lightdm-handle-empty-autologin-user.patch g...@opensuse.org -- Prevent auto-login as nobody when autologin-user or DISPLAYMANAGER_AUTOLOGIN are set to an empty string Patch4: lightdm-handle-empty-autologin-user.patch BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(xcb) BuildRequires: pkgconfig(xdmcp) BuildRequires: pkgconfig(libxklavier) BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(QtGui) BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: gcc-c++ BuildRequires: vala BuildRequires: pam-devel BuildRequires: intltool BuildRequires: gtk-doc BuildRequires: gnome-common Requires(pre): pwdutils Requires: lightdm-greeter = %{version} Recommends: %{name}-lang BuildRoot: %{_tmppath}/%{name}-%{version}-build %description LightDM is a lightweight, cross-desktop display manager. Its main features are a well-defined greeter API allowing multiple GUIs, support for all display manager use cases, with plugins where appropriate, low code complexity, and fast performance. Due to its cross-platform nature greeters can be written in several toolkits such as Qt and GTK. %lang_package %package -n %{gobject_lib} Summary: LightDM GObject-based Client Library Group: System/Libraries %description -n %{gobject_lib} A GObject-based library for LightDM clients to use to interface with LightDM. %package gobject-devel Summary: Development Files for %{gobject_lib} Group: Development/Libraries/C and C++ Requires: %{name} = %{version} Requires: %{gobject_lib} = %{version} %description gobject-devel This package contains development files needed for developing GObject-based LightDM clients. %package -n %{qt_lib} Summary: LightDM Qt-based Client Library Group: System/Libraries %description -n %{qt_lib} A Qt-based library for LightDM clients to use to interface with LightDM. %package qt-devel Summary: Development Files for %{qt_lib} Group: Development/Libraries/C and C++ Requires: %{name} = %{version} Requires: %{qt_lib} = %{version} %description qt-devel This package contains development files needed for developing Qt-based LightDM clients. %package gtk-greeter Summary: GTK-based Greeter for LightDM Group: System/X11/Displaymanagers Requires: %{gobject_lib} = %{version} Requires: gtk2 >= 2.24 Provides: lightdm-greeter = %{version} %description gtk-greeter This is the reference implementation of a LightDM greeter based on the GTK toolkit. %package qt-greeter Summary: Qt-based Greeter for LightDM Group: System/X11/Displaymanagers Requires: %{qt_lib} = %{version} Provides: liblightdm-greeter = %{version} %description qt-greeter This is the reference implementation of a LightDM greeter based on the Qt toolkit. %prep %setup -q %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %build ./autogen.sh %configure \ --disable-static \ --enable-gtk-doc \ --with-user-session=twm \ --with-greeter-user=lightdm make %{?_smp_mflags} V=1 %install %make_install rm -f %{buildroot}%{_libdir}/*.la rm -rf %{buildroot}%{_sysconfdir}/init/ install -D -m 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/pam.d/lightdm install -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pam.d/lightdm-autologin install -d %{buildroot}%{_localstatedir}/log/lightdm install -d %{buildroot}%{_localstatedir}/run/lightdm install -d %{buildroot}%{_localstatedir}/lib/lightdm %find_lang %{name} %{?no_lang_C} %clean rm -rf %{buildroot} %pre /usr/sbin/groupadd -r lightdm 2> /dev/null || : /usr/sbin/useradd -r -o -g lightdm -s /bin/false -c "LightDM daemon" \ -d /var/lib/lightdm lightdm 2> /dev/null || : /usr/sbin/usermod -g lightdm -G lightdm -s /bin/false lightdm 2> /dev/null %post -n %{gobject_lib} -p /sbin/ldconfig %postun -n %{gobject_lib} -p /sbin/ldconfig %post -n %{qt_lib} -p /sbin/ldconfig %postun -n %{qt_lib} -p /sbin/ldconfig %files %defattr(-,root,root,-) %doc COPYING ChangeLog NEWS README %{_sbindir}/lightdm %dir %{_sysconfdir}/lightdm/ %config %{_sysconfdir}/lightdm/lightdm.conf %config %{_sysconfdir}/lightdm/users.conf %config %{_sysconfdir}/lightdm/keys.conf %config %{_sysconfdir}/pam.d/lightdm* %config %{_sysconfdir}/dbus-1/system.d/org.freedesktop.DisplayManager.conf %dir %{_datadir}/xgreeters/ %ghost %attr(751,lightdm,lightdm) %dir %{_localstatedir}/run/lightdm %attr(750,lightdm,lightdm) %dir %{_localstatedir}/log/lightdm %attr(750,lightdm,lightdm) %dir %{_localstatedir}/lib/lightdm %doc %{_mandir}/man1/lightdm.1* %files lang -f %{name}.lang %files -n %{gobject_lib} %defattr(-,root,root,-) %{_libdir}/lib%{gobject_libname}.so.* %files gobject-devel %defattr(-,root,root,-) %{_libdir}/lib%{gobject_libname}.so %{_libdir}/pkgconfig/lib%{gobject_libname}.pc %{_includedir}/%{gobject_libname}/ %{_libdir}/girepository-1.0/LightDM-1.typelib %{_datadir}/gir-1.0/LightDM-1.gir %dir %{_datadir}/vala %dir %{_datadir}/vala/vapi %{_datadir}/vala/vapi/liblightdm-gobject-1.vapi %doc %{_datadir}/gtk-doc/html/%{gobject_libname}/ %files -n %{qt_lib} %defattr(-,root,root,-) %{_libdir}/lib%{qt_libname}.so.* %files qt-devel %defattr(-,root,root,-) %{_libdir}/lib%{qt_libname}.so %{_libdir}/pkgconfig/lib%{qt_libname}.pc %{_includedir}/%{qt_libname}/ %files gtk-greeter %defattr(-,root,root,-) %config %{_sysconfdir}/lightdm/lightdm-gtk-greeter.conf %{_sbindir}/lightdm-gtk-greeter %{_datadir}/lightdm-gtk-greeter %{_datadir}/xgreeters/lightdm-gtk-greeter.desktop %files qt-greeter %defattr(-,root,root,-) %{_sbindir}/lightdm-qt-greeter %{_datadir}/xgreeters/lightdm-qt-greeter.desktop %changelog ++++++ lightdm-autologin.pamd ++++++ #%PAM-1.0 auth required pam_permit.so account include common-account password include common-password session required pam_loginuid.so session include common-session ++++++ lightdm-default-configuration.patch ++++++ # HG changeset patch # Parent 01212b89b5009138462f18b2761afeff203d17f2 openSUSE-specific default configuration diff --git a/data/lightdm.conf b/data/lightdm.conf --- a/data/lightdm.conf +++ b/data/lightdm.conf @@ -16,7 +16,7 @@ #greeter-user=lightdm #minimum-display-number=0 #minimum-vt=7 -#user-authority-in-system-dir=false +user-authority-in-system-dir=true #guest-account-script=guest-account #log-directory=/var/log/lightdm #run-directory=/var/run/lightdm @@ -45,7 +45,7 @@ # autologin-session = Session to load for automatic login (overrides user-session) # [SeatDefaults] -#xserver-command=X +xserver-command=/usr/bin/X #xserver-layout= #xserver-config= #xdmcp-manager= @@ -58,7 +58,7 @@ #user-session=default #allow-guest=true #guest-session=UNIMPLEMENTED -#session-wrapper=lightdm-session +session-wrapper=/etc/X11/xdm/Xsession #autologin-guest=false #autologin-user= #autologin-user-timeout=0 diff --git a/data/users.conf b/data/users.conf --- a/data/users.conf +++ b/data/users.conf @@ -6,6 +6,6 @@ # hidden-shells = Shells that indicate a user cannot login # [UserAccounts] -minimum-uid=500 -hidden-users=nobody nobody4 noaccess -hidden-shells=/bin/false /usr/sbin/nologin +minimum-uid=1000 +hidden-users=nobody +hidden-shells=/bin/false /sbin/nologin ++++++ lightdm-desktop-session-env-pam.patch ++++++ # HG changeset patch # Parent ee07a16ac75168b54e672ee1b5740e0358624c45 diff --git a/src/display.c b/src/display.c --- a/src/display.c +++ b/src/display.c @@ -441,7 +441,7 @@ autologin_authentication_result_cb (PAMS if (result == PAM_SUCCESS) { g_debug ("User %s authorized", pam_session_get_username (display->priv->pam_session)); - pam_session_open (display->priv->pam_session); + pam_session_open (display->priv->pam_session, display->priv->user_session); started_session = start_user_session (display); if (!started_session) g_debug ("Failed to start autologin session"); @@ -552,7 +552,7 @@ greeter_session_stopped_cb (Session *ses { display->priv->in_user_session = TRUE; display->priv->pam_session = g_object_ref (greeter_get_pam_session (display->priv->greeter)); - pam_session_open (display->priv->pam_session); + pam_session_open (display->priv->pam_session, display->priv->user_session); started_session = start_user_session (display); if (!started_session) g_debug ("Failed to start user session"); @@ -750,7 +750,7 @@ start_greeter_session (Display *display) } display->priv->in_user_session = FALSE; display->priv->pam_session = pam_session_new (display->priv->pam_service, user_get_name (user)); - pam_session_open (display->priv->pam_session); + pam_session_open (display->priv->pam_session, NULL); g_object_unref (user); log_dir = config_get_string (config_get_instance (), "LightDM", "log-directory"); diff --git a/src/pam-session.c b/src/pam-session.c --- a/src/pam-session.c +++ b/src/pam-session.c @@ -110,7 +110,7 @@ pam_session_get_is_authenticated (PAMSes } gboolean -pam_session_open (PAMSession *session) +pam_session_open (PAMSession *session, const gchar *session_name) { int result = PAM_SUCCESS; @@ -120,6 +120,16 @@ pam_session_open (PAMSession *session) if (!passwd_file && getuid () == 0) { + gchar *desktop_session; + + if (session_name) + { + desktop_session = g_strdup_printf ("DESKTOP_SESSION=%s", session_name); + /* FIXME check desktop_session? */ + pam_putenv (session->priv->pam_handle, desktop_session); + g_free (desktop_session); + } + // FIXME: Set X items //pam_set_item (session->priv->pam_handle, PAM_TTY, &tty); //pam_set_item (session->priv->pam_handle, PAM_XDISPLAY, &display); diff --git a/src/pam-session.h b/src/pam-session.h --- a/src/pam-session.h +++ b/src/pam-session.h @@ -50,7 +50,7 @@ gboolean pam_session_authenticate (PAMSe gboolean pam_session_get_is_authenticated (PAMSession *session); -gboolean pam_session_open (PAMSession *session); +gboolean pam_session_open (PAMSession *session, const gchar *session_name); gboolean pam_session_get_in_session (PAMSession *session); ++++++ lightdm-handle-empty-autologin-user.patch ++++++ # HG changeset patch # Parent e628d995b08c938735ed096c8562b23599da0afb treat empty autologin-username as unset diff --git a/src/display.c b/src/display.c --- a/src/display.c +++ b/src/display.c @@ -197,7 +197,7 @@ display_set_autologin_user (Display *dis { g_return_if_fail (display != NULL); g_free (display->priv->autologin_user); - display->priv->autologin_user = g_strdup (username); + display->priv->autologin_user = (username && *username != '\0') ? g_strdup (username) : NULL; display->priv->autologin_guest = is_guest; display->priv->autologin_timeout = timeout; } diff --git a/src/seat.c b/src/seat.c --- a/src/seat.c +++ b/src/seat.c @@ -387,6 +387,12 @@ seat_real_setup (Seat *seat) seat->priv->autologin_username = config_get_string (config_get_instance (), seat->priv->config_section, "autologin-user"); if (!seat->priv->autologin_username) seat->priv->autologin_username = config_get_string (config_get_instance (), "SeatDefaults", "autologin-user"); + if (seat->priv->autologin_username && *seat->priv->autologin_username == '\0') + { + g_free (seat->priv->autologin_username); + seat->priv->autologin_username = NULL; + } + if (seat->priv->config_section && config_has_key (config_get_instance (), seat->priv->config_section, "autologin-user-timeout")) seat->priv->autologin_timeout = config_get_integer (config_get_instance (), seat->priv->config_section, "autologin-user-timeout"); else ++++++ lightdm-rpmlintrc ++++++ addFilter ('untranslated-desktop-file /usr/share/xgreeters/') ++++++ lightdm-sysconfig-support.patch ++++++ ++++ 639 lines (skipped) ++++++ lightdm-xauthlocalhostname-support.patch ++++++ # HG changeset patch # Parent 809135989727855e0efe09f0198856238c586e03 set XAUTHLOCALHOSTNAME to localhost for local logins to avoid issues in the session in case the hostname changes diff --git a/src/xserver-local.c b/src/xserver-local.c --- a/src/xserver-local.c +++ b/src/xserver-local.c @@ -336,7 +336,8 @@ xserver_local_start (DisplayServer *disp XServerLocal *server = XSERVER_LOCAL (display_server); gboolean result; gchar *filename, *dir, *path, *absolute_command; - gchar hostname[1024], *number; + gchar hostname[] = "localhost"; + gchar *number; GString *command; GError *error = NULL; @@ -380,7 +381,6 @@ xserver_local_start (DisplayServer *disp if (server->priv->layout) g_string_append_printf (command, " -layout %s", server->priv->layout); - gethostname (hostname, 1024); number = g_strdup_printf ("%d", xserver_get_display_number (XSERVER (server))); if (!server->priv->xdmcp_key) xserver_set_authority (XSERVER (server), xauth_new_cookie (XAUTH_FAMILY_LOCAL, hostname, number)); diff --git a/src/xsession.c b/src/xsession.c --- a/src/xsession.c +++ b/src/xsession.c @@ -15,6 +15,7 @@ #include <sys/stat.h> #include "xsession.h" +#include "xserver-local.h" #include "configuration.h" struct XSessionPrivate @@ -81,6 +82,8 @@ xsession_start (Session *session) g_clear_error (&error); } + if (IS_XSERVER_LOCAL (XSESSION (session)->priv->xserver)) + process_set_env (PROCESS (session), "XAUTHLOCALHOSTNAME", g_strdup("localhost")); process_set_env (PROCESS (session), "DISPLAY", xserver_get_address (XSESSION (session)->priv->xserver)); return SESSION_CLASS (xsession_parent_class)->start (session); ++++++ lightdm.pamd ++++++ #%PAM-1.0 auth include common-auth account include common-account password include common-password session required pam_loginuid.so session include common-session ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org