You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1246 lines
51 KiB

Overview of changes in lightdm 1.26.0
* No changes from 1.25.2
Overview of changes in lightdm 1.25.2
* Fix incorrect use of ConsoleKit CanSuspend/Hibernate API
* Correctly install AccountsService interface file
* Fix build system to require C99
* Use standard format for arguments passed to qtchooser
Overview of changes in lightdm 1.25.1
* Fixes for VNC and XDMCP connections
* Use AccountsService extension system for extended greeter information
* Modernise code style
Overview of changes in lightdm 1.25.0
* Support moc being called moc-qt5 (e.g. Fedora)
* Fail configure if MOC can't be found
* Expose autologin-session as a hint to the greeter
* Fix timed autologins not using autologin-session when no session specified
Overview of changes in lightdm 1.24.0
* No changes from 1.22
Overview of changes in lightdm 1.22.0
* Allow guest sessions to talk to Mir (allowing unity8)
Overview of changes in lightdm 1.21.5
* Fix logic that checked if a session was being stopped.
This fixes a race condition that could cause logging into an existing
session from a greeter to not return to that session.
Overview of changes in lightdm 1.21.4
* Use power management functions from ConsoleKit2 if available.
* Correctly pass return value from sessions to LightDM.
* Retry VT_WAITACTIVE if we get EINTR.
* Ignore SIGHUP by default.
* liblightdm-qt: Use liblightdm-gobject power methods instead of
re-implementing in Qt.
Overview of changes in lightdm 1.21.3
* Fix crashes introduced in 1.21.2 due to environment variable changes
* Fix incorrect unref in XDMCP server code
* Fix logging warning
Overview of changes in lightdm 1.21.2
* Use SA_RESTART on signals so we don't get interrupted reads
* Use logind to terminate greeter sessions if it is available
* Load greeters from XDG_DATA_DIRS instead of compile time value
* Allow D-Bus interface to be disabled
* Always pass through LD_PRELOAD, LD_LIBRARY_PATH and PATH to
sessions/display servers
Overview of changes in lightdm 1.21.1
* Fix greeters crashing with unknown configuration keys (regression from
* Add an API verison to the greeter-daemon protocol for future enhancements
* More regression tests
Overview of changes in lightdm 1.21.0
* Add liblightdm functions for getting OS release information and the
message of the day.
* Warn if we find unknown keys in configuration.
* Fix .profile errors not showing in .xsession-errors log.
* Remove duplicate Qt property in liblightdm.
* Fix and improve liblightdm API documentation.
* Minor GIR annotation fixes.
Overview of changes in lightdm 1.20.0
* Use stable version number (no other changes)
Overview of changes in lightdm 1.19.5
* Fix errors in documentation generation
* Improve documentation
* Fix guest AppArmor profile to allow guest sessions more access to the
upstart session socket
* Fix small memory leak in liblightdm-gobject keyboard layout code
Overview of changes in lightdm 1.19.4
* Fix various issues in new in-session greeter code
* Fix user list memory management exposed by use of in-session greeters
* Fix some spurious warnings in the log
Overview of changes in lightdm 1.19.3
* Fix in-session greeters not working for greeter logins
Overview of changes in lightdm 1.19.2
* Add support for greeters running inside sessions. This is enabled by
setting X-LightDM-Allow-Greeter inside the session .desktop file.
The session can then use liblightdm to connect one greeter to the
daemon. The communication is done using a socket
(/var/run/lightdm/<user>/greeter-socket) that is accessible to any
process run by that user. Consider controlling access to this socket
using a MAC system such as AppArmor.
* Report errors for all liblightdm methods. This will require existing
greeters to update their API usage. The ABI is unchanged.
* Handle EAGAIN correctly when daemons communicate with the daemon.
* Drop support for mir-container sessions - no-one ever used these.
Overview of changes in lightdm 1.19.1
* Rename "xlocal" seat type to "local". Using "xlocal" will continue to work
but report a warning.
* Fix memory leaks
* Fix uninitialized memory errors
* Use MIR_SERVER_HOST_SOCKET instead of MIR_SOCKET to report compositor
socket to sessions. This used to work but no longer works in Mir 0.21
* Allow XMir to run on the xlocal seat using the new x-server-backend=mir
* Use only a single compositor on local seats
* Fix Mir greeter log filename having "(null)" in the name
* Copy fcitx/mozc rules so session works when these aren't installed
* Revert lxsession change - it caused the AppArmor to fail to compile
Overview of changes in lightdm 1.19.0
* Use /dev/tty0 instead of /dev/console for VT operations
* Don't quit on SIGUSR1, SIGUSR2 or SIGHUP
* Improve XDMCP IPv6 address selection
* Set XDMCP hostname field in to system hostname or configured value
* Allow fcitx and mozc to run in guest session
* Fix lxsession running in guest sessiono
* Drop support for legacy XMir
* Fix g_spawn compiler warning
Overview of changes in lightdm 1.18.0
* Small documentation fixes
Overview of changes in lightdm 1.17.6
* Don't write $DISPLAY into tty line in utmp/btmp.
Overview of changes in lightdm 1.17.5
* Set XDG_RUNTIME_DIR for ConsoleKit sessions. This is a recent change in
Overview of changes in lightdm 1.17.4
* Add support for g_autoptr and liblightdm-gobject
* Fix dm-tool add-local-seat not working because LightDM is trying to
connect with TCP/IP
Overview of changes in lightdm 1.17.3
* Don't enable the hardware cursor in Unity System Compositor anymore.
Unity 8 now correctly provides its own cursor and other shells should too
Overview of changes in lightdm 1.17.2
* Handle XDMCP Request packet with no addresses.
* Don't start LightDM if the XDMCP server is configured with a key that
doesn't exist.
* Add IP addresses to XDMCP log messages.
* Refactor XDMCP error handling.
* Add more XDMCP tests.
Overview of changes in lightdm 1.17.1
* Add a backup-logs option that can be used to disable existing logging
files having a .old suffix added to them.
LC_IDENTIFICATION variables to the list of inherited locale variables.
* Implement XDMCP ForwardQuery.
* Fix small memory leak in XDMCP logging code.
Overview of changes in lightdm 1.17.0
* Disable log backups - this interferes with logrotate.
* Support using libaudit to generate audit events.
* Handle trailing whitespace on boolean values in configuration.
* Update example configuration to more correctly match allowed options.
* Fix unnecessary X server from being launched when locking seats.
* Check the version of the X server we are running so we correctly pass
-listen tcp when required.
* Allow reading /proc/<PID>/net/dev from within a guest session.
* Allow guest sessions to write in /{,var/}run/screen folder.
* Update guest-session AppArmor profile to be suitable for openSUSE.
* Fix apparmor profiles for running Chromium in guest sessions.
* Fix configure failing without Vala installed.
Overview of changes in lightdm 1.16.0
* Update default configuration better explaining the seat configuration name
matching and dropping references to the obsolete [SeatDefaults] section
Overview of changes in lightdm 1.15.3
* Drop Xorg option -sharevts. It's no longer required for non-seat0 X
servers since xorg-server release 1.16.
Overview of changes in lightdm 1.15.2
* Support Wayland sessions.
* Implement autologin-session option.
* Generate Vala bindings from GIR instead of manually writing them. This
fixes some small bugs in both the Vala and GIR bindings.
* Don't remove autotools generated files in distclean.
Overview of changes in lightdm 1.15.1
* Fix default X server command set to XMir in 1.15.0.
* Internally merge the [SeatDefaults] and [Seat:*] sections together. The
previous method meant configuration snippets using a mix of old and new
naming would not correctly override eachother.
* Use IP address of XDMCP requests to contact X server if available.
* Add an option for XDMCP and VNC servers to only listen on one address.
* Fix configuration file warnings so they go to the log, not stderr.
* Warn if deprecated options logind-load-seats or xdg-seat are in
* Improve IP addresses in XDMCP log messages.
* Fix typo in dm-tool man page.
Overview of changes in lightdm 1.15.0
* Deprecate [SeatDefaults] in favour of [Seat:*]
* Use new Xmir binary when running X under Unity System Compositor
Overview of changes in lightdm 1.14.0
* Initialize file descriptor handles so we don't attempt to close stdin by
* Fix small errors detected by scan-build (clang).
Overview of changes in lightdm 1.13.2
* Fix pipe file descriptor leak for each greeter session.
* Support active session changing via logind.
* Don't allow liblightdm-gobject to be disabled. It is required for
liblightdm-qt and the tests so it's not worth supporting builds without
* Add bash autocompletion support
Overview of changes in lightdm 1.13.1
* Don't attempt generate D-Bus seat/session removal signals on shutdown.
* Add missing method QLightDM::Greeter::cancelAutologin
Overview of changes in lightdm 1.13.0
* Fix crash when having configuration keys defined in multiple places
* Fix pipe file descriptor leak for each session login / authentication
* Use correct syntax for DesktopNames key in session files
* Match seat configuration with globbing
* Allow user switching in multi-seat until bug stopping greeter showing on
logout is fixed
* Disable log message when AccountsService users change
* Update AppArmor scripts, requires AppArmor 2.9
* Update tests to run better on servers
Overview of changes in lightdm 1.12.0
* Fix assumption that the display server is X when running scripts.
* Don't access .dmrc files until information from these files is required.
Overview of changes in lightdm 1.11.9
* Don't check the logind CanGraphical seat property unless
login-check-graphical option is set to true. There are too many cases of
drivers that don't set the appropriate flags for this feature to work.
* Make socket writing code used between greeter and daemon more robust to
* Fix small memory leaks.
* Improve logging messages.
* Test improvements.
Overview of changes in lightdm 1.11.8
* Rework logind code that gets session ID. The previous method was racy
and a change in lightdm 1.11.7 led to a lockup when this race occurred.
* Handle CanGraphical property on logind seats
Overview of changes in lightdm 1.11.7
* Use logind to provide the list of seats to use. Deprecate the old method
of manually defining seats.
* Add --show-config option that shows combined configuration.
* Drop the surfaceflinger seat type. This was a temporary solution while
Ubuntu Phone was migrating to Mir.
Overview of changes in lightdm 1.11.6
* Add a seat option 'allow-user-switching' that can disable all user
switching for that seat
* Add a new session type 'mir-container' that allows the session to run
inside a custom system compositor
* Only seat0 takes VT from Plymouth
* Removed unused GAsyncResultIface.is_tagged as this attribute was not
available in earlier versions of Glib I/O.
* Abort autogen if yelp-tools not installed
* Return correct errors for D-Bus calls
Overview of changes in lightdm 1.11.5
* Make PAM services configurable
Overview of changes in lightdm 1.11.4
* Do timed autologin each time you are returned to the greeter
* Fix tests failing with Qt 5.3 due to it checking getuid/geteuid which we are faking
* dm-tool: Warn if trying to switch to user without username
Overview of changes in lightdm 1.11.3
* Fix Mir sessions broken with unity-system-compositor 0.3.
* Add back Vala bindings for LightDM.Greeter.connect_sync - just mark as
* Put unity-system-compositor's mir_socket under /run rather than /tmp.
* Fix building with clang (3.5) and -Werror.
* Correct section name in default users.conf file.
Overview of changes in lightdm 1.11.2
* Add liblightdm method to get user UID
* DBus-activate logind
* Check for libgcrypt at configure time
Overview of changes in lightdm 1.11.1
* Allow greeters to remain runing to reduce startup time when switching to a
* Add asynchronous methods to liblightdm
Overview of changes in lightdm 1.11.0
* When switching to an existing session refresh PAM credentials and end
session cleanly so no resources leak.
* Support new standard DesktopNames field in session files
* Set XDG_SESSION_TYPE and XDG_SESSION_DESKTOP as used by systemd
* Emit DBus PropertiesChanged when Sessions/Seats properties change. Also
add SessionAdded/SessionRemoved signals to Seat interface
Overview of changes in lightdm 1.10.0
* Fix return value for Vala bindings to Greeter.start_session_sync
* Fix logging when failing to find session
Overview of changes in lightdm 1.9.15
* Update the lightdm AppArmor abstraction to allow the guest session to
start when AppArmor is mediating signals and ptrace and fix a minor, but
noisy, denial when applications attempt to read /proc/<PID>/stat.
Overview of changes in lightdm 1.9.14
* Pass --enable-hardware-greeter to unity-system-compositor for Mir sessions
on xlocal seats
Overview of changes in lightdm 1.9.13
* Handle not getting an X connection when attempting to get X layouts.
* Read config data from both XDG_DATA_DIRS and XDG_CONFIG_DIRS.
Overview of changes in lightdm 1.9.12
* Ensure X authority is written before X server is started
* Activate after unlocking a logind session
Overview of changes in lightdm 1.9.11
* Don't use g_hash_table_get_keys_as_array, it's a glib 2.40 feature
Overview of changes in lightdm 1.9.10
* Honour session type requested by greeter for guest sessions
* Log to wtmp and btmp.
* Implement guest-session config option
Overview of changes in lightdm 1.9.9
* Handle signals being received in child processes instead of treating them
like they are received in the daemon.
* Set utmp ut_line to the display name (i.e. :0) to match what other
programs expect (e.g. 'w').
* Fix lightdm_greeter_ensure_shared_data_dir_sync returning the wrong value.
* Fix shared data tests so you can run test suite without root again.
* Be extra careful not to call any non thread safe function after a fork.
* Fix some small memory leaks detected by valgrind.
* Fix process shutdown code to stop generating confusing warnings
* Fix more double removal of source IDs.
* Test improvements.
Overview of changes in lightdm 1.9.8
* Add support for shared user data directories between the greeter and user sessions.
* Refactor LightDMUser and User classes to use the same code internally.
Overview of changes in lightdm 1.9.7
* Correctly invoke PAM to change authentication token.
* Make xdg-seat a core property of a seat and always pass it to X servers.
* Qt bindings: properly hand over prompt and message type.
* Add warning flags where they are missing and fix the resulting warnings.
Overview of changes in lightdm 1.9.6
* Support Mir sessions in xlocal seats by starting a unity system compositor
for each session.
* Add --screen and --fullscreen options to "dm-tool add-nested-seat"
* Don't try to compile liblightdm-qt if liblightdm-gobject will not be
* Stop greeters warning if sessions directories not present or lightdm.conf
doesn't exist - this is valid.
* Fix log name for Mir display servers
* Fix double removal of source IDs
Overview of changes in lightdm 1.9.5
* In the unity seat, if we don't have proper VT support, fake VT 0 instead
of a real VT number. This matches what logind expects.
Overview of changes in lightdm 1.9.4
* Fix issue where VTs are double used when switching sessions.
* Remove lightdm-set-defaults and gdmflexiserver.
* Add new ability to specify a list of seat types to try, rather than just
* Allow Mir sessions in the surfaceflinger seat.
* Rename the guest session wrapper to have a simpler name.
* Make sure sessions are associated with the display server before starting
* Add a dm-tool man page.
Overview of changes in lightdm 1.9.3
* Don't pass system user accounts from AccountsService to greeters.
* Fix crash if switching to greeter and it isn't installed.
Overview of changes in lightdm 1.9.2
* Implement missing guest-wrapper functionality and enable it for Ubuntu.
* Update AppArmor scripts to work in Ubuntu 13.10.
Overview of changes in lightdm 1.9.1
* Correctly set $XDG_SESSION_CLASS for greeters. This was regressed in 1.7.5
for ConsoleKit and was never passed to logind. logind/ConsoleKit treat
greeter sessions without this set as user sessions. This causes greeters
to show the lightdm user able to be logged in with.
* Set $USER when running the session-setup-script. This is a regression from
* Fix notification of sessions being logged out. This is a regression from
1.7.5 and caused greeters to show sessions logged in after they had been
logged out.
* Refactor liblightdm user scanning to be simpler and more reliable. This
fixes bugs where some properties wouldn't be updated when they changed in
accounts service.
* Add support for a "display-stopped-script" field in lightdm.conf. The
"display-stopped-script" field allows us to run a script right after
stopping the display server.
* Allow dm-tool to run outside of a session if it doesn't need to be.
* Set $MIR_SERVER_NAME to assign a name to launched sessions. Also use a
"greeter-" prefix for greeter sessions for the benefit of
Overview of changes in lightdm 1.9.0
* Fix crash when starting with existing X servers. This was introduced in
rev 1651 (lightdm 1.7.0).
* Fix crash where Process objects are accessed after unref
Overview of changes in lightdm 1.8.0
* Add regression test for corrupt X authority files.
Overview of changes in lightdm 1.7.18
* Set session environment variables for guest sessions (1.7 regression).
* Don't fail writing X authority if reading it had an error.
* Update environment variables that we pass to Mir.
Overview of changes in lightdm 1.7.17
* surfaceflinger: Set XDG_VTNR=0 if VTs are not available
* Allow compiling of liblightdm-qt without liblightdm-gobject
* Add missing documentation for xremote seat options.
Overview of changes in lightdm 1.7.16
* Fix ConsoleKit support broken in 1.7.5
* Fix --test-mode
* Add support for running Surfaceflinger sessions
Overview of changes in lightdm 1.7.15
* Set XDG_VTNR=1 as a fallback if using SeatUnity without a functioning
compositor or working VT switching, so that logind will recognize the VT
as active.
Overview of changes in lightdm 1.7.14
* Correctly set permissions on Xauthority file.
Overview of changes in lightdm 1.7.13
* Correctly set $XDG_CURRENT_DESKTOP for non-autologin sessions
* Fix overallocation of array for strings from greeter.
* Fix truncation writing card32 in XDMCP server.
Overview of changes in lightdm 1.7.12
* Add xdg-seat config setting
* Notify Unity System Compositor of the session being authenticated
Overview of changes in lightdm 1.7.11
* Fix crash when greeter quits due to read watch not being removed
* Correctly setup Unity System Compositor environment
* Improve log messages
Overview of changes in lightdm 1.7.10
* Fix session locking broken in 1.7.5
* Load lightdm.conf after lightdm.conf.d/*.conf
* Also support loading config from /usr/share
* When switching sessions show a greeter if authentication required
* Set $XDG_CURRENT_DESKTOP if specified in the xsession file
* Change logging prefixes to make it easier to troubleshoot multiseat setups
* Bring Ubuntu packaging in-tree
Overview of changes in lightdm 1.7.9
* Correctly set XDG_VTNR for unity sessions that are not autologin.
Overview of changes in lightdm 1.7.8
* Add support for Mir sessions and greeters.
* Set XDG_VTNR for unity sessions.
* Fix desktop-session-start upstart signal not being emitted since 1.7.5.
* Fix greeter log broken in 1.7.5.
Overview of changes in lightdm 1.7.7
* Fix uninitialized pointer introduced in 1.7.3
* Enable compile warnings and fix code generating warnings
Overview of changes in lightdm 1.7.6
* Restore greeter hints that were regressed in 1.7.5.
* Don't run greeters through session wrapper - regression in 1.7.5
Overview of changes in lightdm 1.7.5
* Quit Plymouth correctly when using the unity seat type
* Release the VT when the system compositor fails to start
* Load sessions and greeters from /usr/share/lightdm/sessions and
/usr/share/lightdm/greeters. The existing directories are checked
if the sessions are not in these directories.
* Refactor the Display class so that it merges with the Seat class
* Support running the greeter and session in different display servers
instead of re-using the same one during a login.
* Add more regression tests
* Documentation fixes
Overview of changes in lightdm 1.7.4
* Set XDG_SEAT and XDG_VTNR environment variables.
* Add initial support for Unity (i.e. Mir based) seats.
* Add a greeter wrapper option.
Overview of changes in lightdm 1.7.3
* Load configuration from /etc/lightdm/lightdm.conf.d.
* Fix compile warnings
* Fix tests not running from install directory inside checkout.
Overview of changes in lightdm 1.7.2
* Fix incorrectly distributed guest-session apparmor data
Overview of changes in lightdm 1.7.1
* Fix .pc file for liblightdm-qt5-3
* Add a new option "autologin-in-background" which lets an autologin happen
in a second display while still showing the greeter.
* Stop if fail to create default seat
* Add option to set seat type in lightdm-set-defaults
* Stop using g_file_set_contents - it can leave intermediate files around
* Make tests work without installing them
* Fix distcheck
Overview of changes in lightdm 1.7.0
* Use logind instead of ConsoleKit if it is available
* Use Q_SLOTS and Q_SIGNALS instead of slots and signals.
* Ignore stale X server locks
* Pass through system locale or set locale from AccountsService/.dmrc
* Fix bug where seat failure before D-Bus acquired would not stop daemon
Overview of changes in lightdm 1.6.0
* Allow VNC command to be specified in lightdm.conf
* Register enums with QObject meta type system.
Overview of changes in lightdm 1.5.3
* Fix build with gobject-introspection 1.35.9
* Fix authentication cancel regression caused in 1.5.2
Overview of changes in lightdm 1.5.2
* Fix stale X server being left behind when using LockSession D-Bus API
* Adjust AppArmor profile to also work with logind
* Don't use GIO to access X authority files - it uses GVFS which is
unnecessary overhead/complexity
* Handle over/underflows when reading from greeter
* Improve warning message when XDMCP packet has length mismatch
* Only report test command line if it fails
* Add more regression tests
Overview of changes in lightdm 1.5.1
* QLightDM: Add Qt5 version of the library: liblightdm-qt5-2
* QLightDM: Add some missing role names in UsersModel
* QLightDM: Add a backgroundPath role to UsersModel
* QLightDM: Fix potential crash in QLightDM::UsersModel closedown.
* Improve guest session apparmor
* Run each test in its own /tmp dir so they can't interfere with eachother
* Fix script hooks no longer working with latest glib
* Fix display clean up code
Overview of changes in lightdm 1.5.0
* Add man page for lightdm-set-defaults
* Use xzip for distribution, don't distribute old metadata
* Correctly check if display is active when session quits
* Relicense liblightdm to LGPL-2/LGPL-3 so GPL-2 code can link against it
* Selectively lock memory rather than calling mlockall for main daemon
Overview of changes in lightdm 1.4.1
* Fix autologin PAM configuration
Overview of changes in lightdm 1.4.0
* Correctly implement and test autologin timeouts
* Add greeter-show-remote-login hint
* Correctly annotate enums in vapi file
* QLightDM: Add default constructor to Qt power interface
* QLightDM: Expose image path in UserModel
* QLightDM: Add parameter to session model to show either local or remote
* Fix race conditions in tests
Overview of changes in lightdm 1.3.3
* Add a new remote session type. These sessions create a temporary local
account and authenticate against a remote server. The session is an
application that accesses that remote session (e.g. VNC, RDP etc)
* Support multiple simultaneous PAM prompts
* Set utmp ut_host field to the X display address
* Correctly reap unused authentication sessions
Overview of changes in lightdm 1.3.2
* Handle clearenv() not being defined
* Fix compilation with GCC 4.7
* Expose remaining properties in QLightDM::Greeter
* Fix utmp records being written before child process created
Overview of changes in lightdm 1.3.1
* Fix wrapper path in AppArmor profile (broken since 1.1.1)
* Add show-manual-login and allow-guest options to lightdm-set-defaults
* Don't set PAM_XDISPLAY or PAM_XAUTHDATA if not supported
* Add lock-memory option, enabled by default, to prevent paging memory
to disk.
* Write utmp records for sessions
* Install PAM configuration
* Run greeters inside the "lightdm-greeter" PAM service
* Handle setresgid and setresuid not being available
* Use xsession directory from lightdm.conf in liblightdm
Overview of changes in lightdm 1.2.0
* Backup .xsession-errors on login
* Handle failures in pam_setcred
* Open log files in append mode
* Add extra checks in liblightdm so that it doesn't send invalid messages
to the daemon
* Fix gdmflexiserver not being added to the path (broken since 1.1.4)
* Fix PAM conversations after authentication from locking up sessions
* Fix PAM informational messages locking up autologin
* Change XDMCP manage timeout from 10ms to 126s (maximum specified in the
XDMCP specification)
Overview of changes in lightdm 1.1.9
* Add --show-users/--hide-users to lightdm-set-defaults
* Call initgroups before pam_setcred - this allows pam_setcred to change
group membership correctly
Overview of changes in lightdm 1.1.8
* Handle PAM interactions that have more than one message in one callback
Overview of changes in lightdm 1.1.7
* Add a seat option greeter-allow-guest which controls if the greeter should
provide an option to access the guest account.
* Add a seat option greeter-show-manual-login which hints to a greeter if it
should show a manual username entry if a user list is already present.
Overview of changes in lightdm 1.1.6
* Fix session wrapper working the same as it did in 1.1.3
Overview of changes in lightdm 1.1.5
* Stop file descriptors leaking into the session processes
Overview of changes in lightdm 1.1.4
* Change session directory once user permissions are set so it works
on NFS filesystems that don't allow root to access files.
* Restructure session code so the PAM authentication is run in its
own process.
* Don't send session stdout to .xsession-errors
* Fix Qt bindings crash when removing a user
Overview of changes in lightdm 1.1.3
* Actually return the system default keyboard layout, not just 'us'
* Add keyboard layout variants to list of keyboard layouts
* Check accountsservice as well as .dmrc for users' layouts
* Add lightdm_user_get_layouts() to query the configured list of layouts
on a per-user basis
* Add Lock D-Bus method that locks the seat and provides a hint to the
greeter to be in lock mode.
* Automatically lock sessions when switching away from them
* Add a has-messages property to liblightdm
* Add regression tests for PAM modules changing usernames
* Don't use g_key_file_unref, it requires glib 2.32
Overview of changes in lightdm 1.1.2
* Add regression tests for getting the user language and layout
* Stop accidentally distributing libsystem
* Fix introspection bindings not containing any methods
* lightdm-set-defaults can now set the autologin user
* Add Python greeter regression tests (representative of all introspection
based greeters)
* Wait for the VT to become active when switching to avoid a suspected
race condition somewhere between LightDM, X, ConsoleKit and the kernel.
* Stop lightdm_greeter_start_session_sync() blocking on success.
Overview of changes in lightdm 1.1.1
* Add a --disable-tests option
* Add note to AUTHORS file where to find author list
* Update build system to find moc/uic
* Fix non-distributed tests/src/lightdm-session
* Fix X sessions with arguments in Exec not working
* Use previous session for automatic login or if greeter does not request
* Set default resolution of VNC to 1024x768, add settings for width, height,
depth into lightdm.conf.
* AppArmor profile: Fix broken gnome-keyring and dbus/gwibber, and quiesce
annoying kernel audit messages for privileges that we definitively do not
want to grant.
* Set LOGNAME environment variable
* Don't set USERNAME environment variable - this is not specified in POSIX,
please report if this causes any major problems.
* Drop privileges when reading ~/.dmrc
* Move the GTK+ and Qt greeters into their own projects
* Fix crash when quitting with newer GLib
* Fix crash calling lightdm_get_layout
* Support for reading users' backgrounds from Accounts Service
* Fix --debug working with new glib
* Support PAM requesting a change of password
* Update build system to work with automake 1.11.2
* Run tests inside their own system D-Bus, simulating ConsoleKit and
* Add regression test for users that have their home directory created after
* Move lightdm-guest-session from libexec to pkglibexec directory
Overview of changes in lightdm 1.1.0
* Remove GetSeatForCookie and GetSessionForCookie D-Bus methods
* Switching to a user without a password bypasses the greeter
* Use LD_PRELOAD to intercept system calls for testing
* Removed the --passwd-file option as not required for testing anymore
* Rename test-xserver to X and remove --xserver-command option
* Make a test session wrapper and remove --session-wrapper option
* Remove unused --user-session, --greeter-session, --minimum-vt,
--minimum-display-number options
* Use 'default' as the default greeter (make a symlink)
* GTK greeter now initializes i18n
* GTK greeter now remembers last user
* Start authentication for automtically selected user in GTK greeter
* Don't resize GTK greeter on each click
* Start authentication when scrolling through GTK greeter entries
* Link liblightdm-qt against QtGui
* Fix liblightdm-qt crashing when face images are installed
* Set correct permissions on session log files
* Introduce a lightdm-guest-session-wrapper session command which MAC
systems like AppArmor and SELinux can use for attaching a restrictive
policy to guest sessions.
* Provide an AppArmor profile for guest session lockdown.
* Fix daemon from blocking if Accounts Service does not exist
* Fix greeter log file not being written
* Don't set LANG environment variable if using Accounts Service.
* Fix gdmflexiserver not working due to it not being in PATH
* Don't authenticate the greeter user
* Allow greeters to be disabled in configure flags
* Fix over allocation of read buffer in greeter protocol
* Make sure objects are cleaned up on exit
* Fix minor memory leaks
* Fix reference counting issue in ConsoleKit code
* Fix --enable-gtk-greeter=yes not working
Overview of changes in lightdm 1.0.0
* Explicitly grab keyboard focus in GTK greeter
* Fix removed power and a11y menu items in GTK greeter
* Put system binary directory into path when running in test mode
* Call pam_getenvlist after pam_setcred
Overview of changes in lightdm 0.9.8
* GetSeatForCookie and GetSessionForCookie are now deprecated. They
remain for now but use the XDG_SEAT_PATH and XDG_SESSION_PATH
environment variables instead.
* Change log filenames to be unique across different display types.
* Fix up script hooks, add regression tests for them
* Complete removal of X code from the core of LightDM, so it can better
support various display types
* Add ability to set the language of a user from the greeter
* Set LANG variable based on the user language
* Add language selector into GTK greeter (disabled by default)
* Allow TCP/IP connections if xserver-allow-tcp is true
* Allow lightdm --version to be run as non-root
* Automatically respond to PAM messages without prompts
* Create 'AddLocalXSeat' D-Bus method, and require root to use 'AddSeat'
* Fix multi-seat configuration picking the same display number
* Use correct D-Bus and power interface in liblightdm-qt
* Run pam_setcred inside the session process so pam_group works
* Make sure one session is always selected in the GTK greeter
Overview of changes in lightdm 0.9.7
* Set PAM_TTY to the display name, not the tty device
Overview of changes in lightdm 0.9.6
* Only unlock displays if switched to from greeter
* Make log file not system readable
* Write ~/.Xauthority inside the session process so it cannot be hijacked
* Set PAM_TTY and PAM_XDISPLAY when opening PAM session
* Add VNC server support
* Do not write ~/.dmrc and ~/.Xauthority as root. [CVE-2011-3349]
Overview of changes in lightdm 0.9.5
* Use accounts service in the daemon if it is available
* Correctly load seat type in multi seat configuration
* Add display-setup, session-setup and session-cleanup scripting hooks
* Fix cancel button in GTK greeter
* Fix line through GTK greeter menu items
* Exit daemon if a seat fails which has exit-on-failure set to true
* Add HasGuestAccount property to seat D-Bus interface
* Fix XDMCP authorization
* Update man file
Overview of changes in lightdm 0.9.4
* lightdm-set-defaults enables tweaking the default session and chosen
greeter for lightdm. This is useful for derivatives waiting to not ship
the whole configuration file of lightdm
* Fix crash in GTK+ greeter when a user is added
* Move xsessions-directory and xgreeters-directory from [SeatDefaults] to
[LightDM]. This is a configuration break, but making it on the assumption
that these settings are not likely to have been overridden.
* Fix fallback from org.freedesktop.Accounts to passwd format
* Fix duplicate user entries being shown when using passwd file
* Add AddSeat D-Bus method for adding dynamic seats
* Added a dm-tool program that allows user switching and adding seats
* Allow remote X servers, e.g. launched using dm-tool add-nested-seat
* Fix bug where sessions were started when the greeter quit and the user
hadn't been authorized.
* Fix bug where sessions used the seat bus name
* Don't allow autologin-username to be set to empty
* Fix bug where PAM session was not opened before writing to home directory
* Fix crash when failing to write X authority
Overview of changes in lightdm 0.9.3
* Unlock ConsoleKit sessions when switching to them
* Add a gdmflexiserver binary that provides backwards compatibility with
existing sessions
* Set XDG_SEAT_PATH and XDG_SESSION_PATH environment variables for sessions.
* Always set XAUTHORITY environment variable so sudo keeps accessing the
correct X authority.
* Connect up lightdm_user_get_logged_in in liblightdm-gobject
* Ignore sessions that fail TryExec or are hidden
* Add missing home_directory User property missing in Vala bindings
Overview of changes in lightdm 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. They
can now but not sure what changed to fix that!?
Overview of changes in lightdm 0.9.1
* Fix up translation build system
* Add a --with-greeter-user configure option
* Fix greeter-user configuration not being used
* Abort greeter if attempted to be run as root and greeter-user set
* Fix setting session in GTK+ greeter
Overview of changes in lightdm 0.9.0
* Fix invalid XAUTHORITY variable being set for second X server.
* Fix bug where switching users created X servers without VTs
* Release a VT when the X server on it stops
* Greeters are now just standard X sessions that are stored in
* Binaries now installed in /usr/sbin
* Drop most of the configure options, they aren't necessary
* Config changes:
- Major reorginisation of configuration to make it easier to configure and
understand. Users should set [SeatDefaults] section with settings for
all seats, and can override each setting in a per seat configuration.
- Default seats are now specified using a [Seat:<name>] section. If no seats
are specified then one is started. This can be overridden by setting
start-default-seat=false in [LightDM].
- Support setting autologin user to guest account
- Split the user accounts configuration into /etc/lightdm/users.conf so the
main config can be private.
- The default user session is now "default". Distributions should put a
symlink to their chosen default or set one in lightdm.conf.
- XDMCP keys now stored in keys.conf
* liblightdm API changes:
- Both libraries are now version 1 and have API and ABI guarantees.
- Face images are now local paths not URIs
- liblightdm-gobject now uses lightdm_ prefix instead of ldm_
- Non-greeter functions are now moved out of the Greeter class
- connect_to_server() is now called connect_sync and blocks until
- start_session() is now called start_session_sync and blocks until
completion. The quit signal is removed, and the greeter should quit if
this method returns TRUE.
- login() is now called authenticate()
- Greeters now have hints instead of configuration (greeters should load their
own configuration from /etc/lightdm if they need it).
- liblightdm-gobject uses AccountsService if it is available
- Added regression tests for liblightdm-qt
* D-Bus API changes:
- Expose Seats and Sessions on org.freedesktop.DisplayManager
- Add a CanSwitch property
- Rename ShowGreeter() to SwitchToGreeter()
* Greeter changes:
- Drop "example" from the name of the GTK+ and Qt greeters and make them
official default greeters.
- Use GTK3 for GTK+ greeter.
- Removed the Vala and Python GTK+ greeters, they weren't being well
Overview of changes in lightdm 0.4.4
* Fix failure to accept XDMCP connections due to invalid assert.
* Allow minimum-display-number to be set in lightdm.conf and on the command
* Session X authority now written to ~/.Xauthority by default. It can be
configured to run from the system location by setting
user-authority-in-system-dir=true in lightdm.conf.
* When using system authority the authority can be updated by the user.
* Written X authority files now checks hostname and display number.
* Enironment is no longer passed through to X servers and sessions, this is
no longer required now PAM works correctly.
* liblightdm API changes:
- Drop ldm_greeter_get_is_first() - it was added for testing and doesn't
work well.
* Fix more errors where authentication messages from previous sessions could
be confused with new sessions.
* Added XDMCP regression tests.
Overview of changes in lightdm 0.4.3
* Don't replace Plymouth if it isn't running on a valid VT
* Allow a null username to log in with - the system will prompt for a
* liblightdm API changes:
- Rename ldm_greeter_provide_secret to ldm_greeter_respond - responses
may not be secrets.
- show-prompt signal now has a PromptType field
- show-message signal now has a MessageType field and takes over
behaviour of show-error signal
* Fix error where an authentication failure from a previous session could
be interpreted as a failure in the current session.
* Simplify Vala bindings and add missing methods
Overview of changes in lightdm 0.4.2
* Fix errors communicating with PAM
* Fix interaction with Plytmouth.
* Removes the vt option in lightdm.conf, this is no longer required
and the active is used for the first display if Plymouth is
detected. A new option minimum-vt is added to select the first
VT to be used for other displays.
* On login switch to an existing session if already logged in with that
* Correctly connect up D-Bus interface for user switching
Overview of changes in lightdm 0.4.1
* Fix linking issue with -z,defs
* Added guest account support
* Restart X server if it crashes during a session
* Don't set language environment variables, use the daemon values
(system default) and leave it to ~/.profile for users to set these
* Change greeter library API, starting a session no longer has a language
* Fix greeter crash when user accounts change
Overview of changes in lightdm 0.4.0
* Fix crash when child processes quit
* Fix crash when catching signals
* Fix crash when session quits after X server
* Add internal checking for NULL object access
* Correctly handle signals from external programs (Thanks to Jason Conti)
* liblightdm API changes:
- ldm_greeter_start_authentication becomes ldm_greeter_login
- The existing ldm_greeter_login is now ldm_greeter_start_session
and the username parameter is not required.
- Drop ldm_greeter_get_default_layout (X controls the layout)
* Configuration changes:
- Use /etc/lightdm/lightdm.conf instead of /etc/lightdm.conf
- The "displays" item is now called "seats". LightDM will fallback to
"displays" if "seats" is not defined, but this is deprecated and will
be removed by version 1.0.
- Make X server configuration a separate section and now has new options
* Automatic login users now use PAM session lightdm-autologin
* Use org.freedesktop.DisplayManager instead of
org.lightdm.LightDisplayManager for D-Bus name
* Add regression tests
* Allow many more options to be set from the command line
Overview of changes in lightdm 0.3.7
* Fix autologin broken in 0.3.3
Overview of changes in lightdm 0.3.6
* Disable Plymouth when starting
* Allow display vt setting to be set to "active" to start on active VT
* Fix login in Qt example greeter
* Fix typo for High Contrast menu item (GTK example greeter)
Overview of changes in lightdm 0.3.5
* Set working directory when logging in
* Massive improvements to Qt greeter
* Fix XDMCP authentication/authorization errors
* Have the daemon open a connection to a local X server
* Tidy up some debugging messages
Overview of changes in lightdm 0.3.4
* Updates to liblightdm-qt
* Fix --with-cache-dir not working
* Set greeterdir in .pc files to point to where greeter engines should be
Overview of changes in lightdm 0.3.3
* Don't run in test-mode if Xephyr cannot be found
* Fix daemon using 100% CPU after greeter quits
* Fix crash when users don't have GECOS data
* Greeters can now detect user add/remove events
* Fix ConsoleKit support broken with switch to GDBus
* Correctly clean up X processes on exit
* Wait for greeter to quit before running user session (fixes problem with
Overview of changes in lightdm 0.3.2
* Distribute GTK greeter .ui file
Overview of changes in lightdm 0.3.1
* Add greeter login_with_defaults method
* Add example to the name of all the greeters
* Set the configuration for the default display to use VT 7
* Fix the vt setting for displays, it was incorrectly named tty
* Fix crash when load-users is false in UserManager
* Fix up name of .vapi file so it can be used directly from valac
* Tidy up Qt library and greeter
* Move menubar in greeters to top of screen
* Fix console kit get_can_*() methods
* Use GtkBuilder for example GTK greeter
Overview of changes in lightdm 0.3.0
* Correctly pass environment variables through to the session
* Allow starting virtual terminal to be configured
* Replace D-Bus greeter communication with a private pipe
* Use GDBus instead of dbus-glib
* Use the engine process name instead of a hardcoded value in theme files
* Rename ldm_greeter_connect to ldm_greeter_connect_to_server so it doesn't
clash with GObject method name
* Rename ldm-gtk-greeter to lightdm-gtk-greeter
* Rename gnome theme to example-gtk-gnome
* Add more annotations to liblightdm-gobject
* Add an example PyGObject, Vala and QT greeter
* Generate metadata for QT libraries
* Move Webkit greeter into separate module
Overview of changes in lightdm 0.2.3
* Set correct linking library names in pkg-config files
* Handle session executables that take arguments
Overview of changes in lightdm 0.2.2
* Make default themedir work when --prefix is not passed to configure
* Look for face images in ~/.face and ~/.face.icon
* Put .vapi file in unversioned vala directory
* Fix compiling without QT
* Choose the VT to open the display on
* Set correct group memberships for sessions (Yves-Alexis Perez)
* Set permissions on xauthority file so it can only be read by the owning
user (Yves-Alexis Perez)
* Set correct permissions on ~/.dmrc (Yves-Alexis Perez)
* Add --enable-liblightdm-gobject, --enable-liblightdm-qt configure option
* Set environment variables from PAM (Yves-Alexis Perez)
Overview of changes in lightdm 0.2.1
* Use "lightdm" as default PAM service and make it configurable
* Rename libldmgreeter to libldmgreeter-gobject
* Add libldmgreeter-qt (David Edmundson)
* Fix gobject-introspection build
* Renamed libldmgreeter to liblightdm
* Install a .vapi file
Overview of changes in lightdm 0.2.0
* Make default user configuration per-display
* Only automatically login the first time
* Fix WebKit theme loading and automatic login
* Do cross fade for sessions that support it
(set X-LightDM-Supports-Transitions=true in their xsession file)
* Load user settings from ~/.dmrc
* Add configuration for default language/layout
* Change language/layout/session when user selected in GTK+ greeter
* Set default keyboard layout on first login
* Don't run all sessions throught /etc/X11/XSession - make the session
wrapper optional and configurable.
* Make pkgconfig file require libxklavier
* Only compile greeters if have dependencies
* Include ck-connector code to reduce library dependencies
* Add introspection.m4 to the source tree
* Support using no greeter user in lightdm.conf
* Flush writes to main log file
* Allow non-privilidged user to write greeter log file in /var
* Fix bugs stopping running greeter as priviledged user (i.e. root)
* Don't default to running greeters with the GDM user - it may not exist!
Overview of changes in lightdm 0.1.2
* Write PID file
* Make user switcher API work
* Add a AddDisplay D-Bus method to start new displays
* Feed signals to GLib main loop via a pipe
* Add an upstart script
* Make theme files more similar to existing themes
* Change dbus namespace from org.freedesktop.LightDisplayManager to
* Write debug log to /var/log/lightdm/lightdm.log instead of stdout. Use
--debug for the previous behaviour
* Add exec_prefix into libldmgreeter.pc
* Change versioned include and pkgconfig files from 1 to 0
* Add themedir variable into pkgconfig file
* Connect language list in GTK greeter to login language
Overview of changes in lightdm 0.1.1
* Change licence of libldmgreeter from GPL to LGPL
* Write X server and session output to log files
* Set PATH, DESKTOP_SESSION, GDMSESSION and USERNAME environment variables
* Run sessions through Xsession
* Close all X servers on exit
* Send SIGHUP to X server when returning to greeter (makes all clients quit)
* Change authorization after a session ends so previous session does not get
* Make shutdown buttons work in GTK+ greeter
* Make user manager configurable
* Make GTK+ greeter show username entry if no user list
* Hide C and POSIX languages in greeter
* Load language and layout from .dmrc file
Overview of changes in lightdm 0.1.0
* Make --test-mode which runs as the current user
* Support displays acting as XDMCP terminals
* Support MIT-MAGIC-COOKIE-1 and XDM-AUTHORIZATION-1 authorization
* Support XDMCP over IPv6
Overview of changes in lightdm 0.0.4
* Support XDMCP logins
* Support multi-head
* Clean up resources on exit
* Create gettext instance in WebKit greeter
Overview of changes in lightdm 0.0.3
* Wait for signal from X server before starting session
* Add language API
* Add keyboard layout API
* Add gettext support to the WebKit greeter
Overview of changes in lightdm 0.0.2
* Fix installation of D-Bus service file
* Allow DISPLAY env variable to be passed to X server so can run Xephyr
* Handle no automatic login in webkit theme
Overview of changes in lightdm 0.0.1
* Initial release