1 Overview of changes in lightdm 1.11.5
3 * Make PAM services configurable
5 Overview of changes in lightdm 1.11.4
7 * Do timed autologin each time you are returned to the greeter
8 * Fix tests failing with Qt 5.3 due to it checking getuid/geteuid which we are faking
9 * dm-tool: Warn if trying to switch to user without username
11 Overview of changes in lightdm 1.11.3
13 * Fix Mir sessions broken with unity-system-compositor 0.3.
14 * Add back Vala bindings for LightDM.Greeter.connect_sync - just mark as
16 * Put unity-system-compositor's mir_socket under /run rather than /tmp.
17 * Fix building with clang (3.5) and -Werror.
18 * Correct section name in default users.conf file.
20 Overview of changes in lightdm 1.11.2
22 * Add liblightdm method to get user UID
23 * DBus-activate logind
24 * Check for libgcrypt at configure time
26 Overview of changes in lightdm 1.11.1
28 * Allow greeters to remain runing to reduce startup time when switching to a
30 * Add asynchronous methods to liblightdm
32 Overview of changes in lightdm 1.11.0
34 * When switching to an existing session refresh PAM credentials and end
35 session cleanly so no resources leak.
36 * Support new standard DesktopNames field in session files
37 * Set XDG_SESSION_TYPE and XDG_SESSION_DESKTOP as used by systemd
38 * Emit DBus PropertiesChanged when Sessions/Seats properties change. Also
39 add SessionAdded/SessionRemoved signals to Seat interface
41 Overview of changes in lightdm 1.10.0
43 * Fix return value for Vala bindings to Greeter.start_session_sync
44 * Fix logging when failing to find session
46 Overview of changes in lightdm 1.9.15
48 * Update the lightdm AppArmor abstraction to allow the guest session to
49 start when AppArmor is mediating signals and ptrace and fix a minor, but
50 noisy, denial when applications attempt to read /proc/<PID>/stat.
52 Overview of changes in lightdm 1.9.14
54 * Pass --enable-hardware-greeter to unity-system-compositor for Mir sessions
57 Overview of changes in lightdm 1.9.13
59 * Handle not getting an X connection when attempting to get X layouts.
60 * Read config data from both XDG_DATA_DIRS and XDG_CONFIG_DIRS.
62 Overview of changes in lightdm 1.9.12
64 * Ensure X authority is written before X server is started
65 * Activate after unlocking a logind session
67 Overview of changes in lightdm 1.9.11
69 * Don't use g_hash_table_get_keys_as_array, it's a glib 2.40 feature
71 Overview of changes in lightdm 1.9.10
73 * Honour session type requested by greeter for guest sessions
74 * Log to wtmp and btmp.
75 * Implement guest-session config option
77 Overview of changes in lightdm 1.9.9
79 * Handle signals being received in child processes instead of treating them
80 like they are received in the daemon.
81 * Set utmp ut_line to the display name (i.e. :0) to match what other
82 programs expect (e.g. 'w').
83 * Fix lightdm_greeter_ensure_shared_data_dir_sync returning the wrong value.
84 * Fix shared data tests so you can run test suite without root again.
85 * Be extra careful not to call any non thread safe function after a fork.
86 * Fix some small memory leaks detected by valgrind.
87 * Fix process shutdown code to stop generating confusing warnings
88 * Fix more double removal of source IDs.
91 Overview of changes in lightdm 1.9.8
93 * Add support for shared user data directories between the greeter and user sessions.
94 * Refactor LightDMUser and User classes to use the same code internally.
96 Overview of changes in lightdm 1.9.7
98 * Correctly invoke PAM to change authentication token.
99 * Make xdg-seat a core property of a seat and always pass it to X servers.
100 * Qt bindings: properly hand over prompt and message type.
101 * Add warning flags where they are missing and fix the resulting warnings.
103 Overview of changes in lightdm 1.9.6
105 * Support Mir sessions in xlocal seats by starting a unity system compositor
107 * Add --screen and --fullscreen options to "dm-tool add-nested-seat"
108 * Don't try to compile liblightdm-qt if liblightdm-gobject will not be
110 * Stop greeters warning if sessions directories not present or lightdm.conf
111 doesn't exist - this is valid.
112 * Fix log name for Mir display servers
113 * Fix double removal of source IDs
115 Overview of changes in lightdm 1.9.5
117 * In the unity seat, if we don't have proper VT support, fake VT 0 instead
118 of a real VT number. This matches what logind expects.
120 Overview of changes in lightdm 1.9.4
122 * Fix issue where VTs are double used when switching sessions.
123 * Remove lightdm-set-defaults and gdmflexiserver.
124 * Add new ability to specify a list of seat types to try, rather than just
126 * Allow Mir sessions in the surfaceflinger seat.
127 * Rename the guest session wrapper to have a simpler name.
128 * Make sure sessions are associated with the display server before starting
130 * Add a dm-tool man page.
132 Overview of changes in lightdm 1.9.3
134 * Don't pass system user accounts from AccountsService to greeters.
135 * Fix crash if switching to greeter and it isn't installed.
137 Overview of changes in lightdm 1.9.2
139 * Implement missing guest-wrapper functionality and enable it for Ubuntu.
140 * Update AppArmor scripts to work in Ubuntu 13.10.
142 Overview of changes in lightdm 1.9.1
144 * Correctly set $XDG_SESSION_CLASS for greeters. This was regressed in 1.7.5
145 for ConsoleKit and was never passed to logind. logind/ConsoleKit treat
146 greeter sessions without this set as user sessions. This causes greeters
147 to show the lightdm user able to be logged in with.
148 * Set $USER when running the session-setup-script. This is a regression from
150 * Fix notification of sessions being logged out. This is a regression from
151 1.7.5 and caused greeters to show sessions logged in after they had been
153 * Refactor liblightdm user scanning to be simpler and more reliable. This
154 fixes bugs where some properties wouldn't be updated when they changed in
156 * Add support for a "display-stopped-script" field in lightdm.conf. The
157 "display-stopped-script" field allows us to run a script right after
158 stopping the display server.
159 * Allow dm-tool to run outside of a session if it doesn't need to be.
160 * Set $MIR_SERVER_NAME to assign a name to launched sessions. Also use a
161 "greeter-" prefix for greeter sessions for the benefit of
162 unity-system-compositor.
164 Overview of changes in lightdm 1.9.0
166 * Fix crash when starting with existing X servers. This was introduced in
167 rev 1651 (lightdm 1.7.0).
168 * Fix crash where Process objects are accessed after unref
170 Overview of changes in lightdm 1.8.0
172 * Add regression test for corrupt X authority files.
174 Overview of changes in lightdm 1.7.18
176 * Set session environment variables for guest sessions (1.7 regression).
177 * Don't fail writing X authority if reading it had an error.
178 * Update environment variables that we pass to Mir.
180 Overview of changes in lightdm 1.7.17
182 * surfaceflinger: Set XDG_VTNR=0 if VTs are not available
183 * Allow compiling of liblightdm-qt without liblightdm-gobject
184 * Add missing documentation for xremote seat options.
186 Overview of changes in lightdm 1.7.16
188 * Fix ConsoleKit support broken in 1.7.5
190 * Add support for running Surfaceflinger sessions
192 Overview of changes in lightdm 1.7.15
194 * Set XDG_VTNR=1 as a fallback if using SeatUnity without a functioning
195 compositor or working VT switching, so that logind will recognize the VT
198 Overview of changes in lightdm 1.7.14
200 * Correctly set permissions on Xauthority file.
202 Overview of changes in lightdm 1.7.13
204 * Correctly set $XDG_CURRENT_DESKTOP for non-autologin sessions
205 * Fix overallocation of array for strings from greeter.
206 * Fix truncation writing card32 in XDMCP server.
208 Overview of changes in lightdm 1.7.12
210 * Add xdg-seat config setting
211 * Notify Unity System Compositor of the session being authenticated
213 Overview of changes in lightdm 1.7.11
215 * Fix crash when greeter quits due to read watch not being removed
216 * Correctly setup Unity System Compositor environment
217 * Improve log messages
219 Overview of changes in lightdm 1.7.10
221 * Fix session locking broken in 1.7.5
222 * Load lightdm.conf after lightdm.conf.d/*.conf
223 * Also support loading config from /usr/share
224 * When switching sessions show a greeter if authentication required
225 * Set $XDG_CURRENT_DESKTOP if specified in the xsession file
226 * Change logging prefixes to make it easier to troubleshoot multiseat setups
227 * Bring Ubuntu packaging in-tree
229 Overview of changes in lightdm 1.7.9
231 * Correctly set XDG_VTNR for unity sessions that are not autologin.
233 Overview of changes in lightdm 1.7.8
235 * Add support for Mir sessions and greeters.
236 * Set XDG_VTNR for unity sessions.
237 * Fix desktop-session-start upstart signal not being emitted since 1.7.5.
238 * Fix greeter log broken in 1.7.5.
240 Overview of changes in lightdm 1.7.7
242 * Fix uninitialized pointer introduced in 1.7.3
243 * Enable compile warnings and fix code generating warnings
245 Overview of changes in lightdm 1.7.6
247 * Restore greeter hints that were regressed in 1.7.5.
248 * Don't run greeters through session wrapper - regression in 1.7.5
250 Overview of changes in lightdm 1.7.5
252 * Quit Plymouth correctly when using the unity seat type
253 * Release the VT when the system compositor fails to start
254 * Load sessions and greeters from /usr/share/lightdm/sessions and
255 /usr/share/lightdm/greeters. The existing directories are checked
256 if the sessions are not in these directories.
257 * Refactor the Display class so that it merges with the Seat class
258 * Support running the greeter and session in different display servers
259 instead of re-using the same one during a login.
260 * Add more regression tests
261 * Documentation fixes
263 Overview of changes in lightdm 1.7.4
265 * Set XDG_SEAT and XDG_VTNR environment variables.
266 * Add initial support for Unity (i.e. Mir based) seats.
267 * Add a greeter wrapper option.
269 Overview of changes in lightdm 1.7.3
271 * Load configuration from /etc/lightdm/lightdm.conf.d.
272 * Fix compile warnings
273 * Fix tests not running from install directory inside checkout.
275 Overview of changes in lightdm 1.7.2
277 * Fix incorrectly distributed guest-session apparmor data
279 Overview of changes in lightdm 1.7.1
281 * Fix .pc file for liblightdm-qt5-3
282 * Add a new option "autologin-in-background" which lets an autologin happen
283 in a second display while still showing the greeter.
284 * Stop if fail to create default seat
285 * Add option to set seat type in lightdm-set-defaults
286 * Stop using g_file_set_contents - it can leave intermediate files around
287 * Make tests work without installing them
290 Overview of changes in lightdm 1.7.0
292 * Use logind instead of ConsoleKit if it is available
293 * Use Q_SLOTS and Q_SIGNALS instead of slots and signals.
294 * Ignore stale X server locks
295 * Pass through system locale or set locale from AccountsService/.dmrc
296 * Fix bug where seat failure before D-Bus acquired would not stop daemon
298 Overview of changes in lightdm 1.6.0
300 * Allow VNC command to be specified in lightdm.conf
301 * Register enums with QObject meta type system.
303 Overview of changes in lightdm 1.5.3
305 * Fix build with gobject-introspection 1.35.9
306 * Fix authentication cancel regression caused in 1.5.2
308 Overview of changes in lightdm 1.5.2
310 * Fix stale X server being left behind when using LockSession D-Bus API
311 * Adjust AppArmor profile to also work with logind
312 * Don't use GIO to access X authority files - it uses GVFS which is
313 unnecessary overhead/complexity
314 * Handle over/underflows when reading from greeter
315 * Improve warning message when XDMCP packet has length mismatch
316 * Only report test command line if it fails
317 * Add more regression tests
319 Overview of changes in lightdm 1.5.1
321 * QLightDM: Add Qt5 version of the library: liblightdm-qt5-2
322 * QLightDM: Add some missing role names in UsersModel
323 * QLightDM: Add a backgroundPath role to UsersModel
324 * QLightDM: Fix potential crash in QLightDM::UsersModel closedown.
325 * Improve guest session apparmor
326 * Run each test in its own /tmp dir so they can't interfere with eachother
327 * Fix script hooks no longer working with latest glib
328 * Fix display clean up code
330 Overview of changes in lightdm 1.5.0
332 * Add man page for lightdm-set-defaults
333 * Use xzip for distribution, don't distribute old metadata
334 * Correctly check if display is active when session quits
335 * Relicense liblightdm to LGPL-2/LGPL-3 so GPL-2 code can link against it
336 * Selectively lock memory rather than calling mlockall for main daemon
338 Overview of changes in lightdm 1.4.1
340 * Fix autologin PAM configuration
342 Overview of changes in lightdm 1.4.0
344 * Correctly implement and test autologin timeouts
345 * Add greeter-show-remote-login hint
346 * Correctly annotate enums in vapi file
347 * QLightDM: Add default constructor to Qt power interface
348 * QLightDM: Expose image path in UserModel
349 * QLightDM: Add parameter to session model to show either local or remote
351 * Fix race conditions in tests
353 Overview of changes in lightdm 1.3.3
355 * Add a new remote session type. These sessions create a temporary local
356 account and authenticate against a remote server. The session is an
357 application that accesses that remote session (e.g. VNC, RDP etc)
358 * Support multiple simultaneous PAM prompts
359 * Set utmp ut_host field to the X display address
360 * Correctly reap unused authentication sessions
362 Overview of changes in lightdm 1.3.2
364 * Handle clearenv() not being defined
365 * Fix compilation with GCC 4.7
366 * Expose remaining properties in QLightDM::Greeter
367 * Fix utmp records being written before child process created
369 Overview of changes in lightdm 1.3.1
371 * Fix wrapper path in AppArmor profile (broken since 1.1.1)
372 * Add show-manual-login and allow-guest options to lightdm-set-defaults
373 * Don't set PAM_XDISPLAY or PAM_XAUTHDATA if not supported
374 * Add lock-memory option, enabled by default, to prevent paging memory
376 * Write utmp records for sessions
377 * Install PAM configuration
378 * Run greeters inside the "lightdm-greeter" PAM service
379 * Handle setresgid and setresuid not being available
380 * Use xsession directory from lightdm.conf in liblightdm
382 Overview of changes in lightdm 1.2.0
384 * Backup .xsession-errors on login
385 * Handle failures in pam_setcred
386 * Open log files in append mode
387 * Add extra checks in liblightdm so that it doesn't send invalid messages
389 * Fix gdmflexiserver not being added to the path (broken since 1.1.4)
390 * Fix PAM conversations after authentication from locking up sessions
391 * Fix PAM informational messages locking up autologin
392 * Change XDMCP manage timeout from 10ms to 126s (maximum specified in the
395 Overview of changes in lightdm 1.1.9
397 * Add --show-users/--hide-users to lightdm-set-defaults
398 * Call initgroups before pam_setcred - this allows pam_setcred to change
399 group membership correctly
401 Overview of changes in lightdm 1.1.8
403 * Handle PAM interactions that have more than one message in one callback
405 Overview of changes in lightdm 1.1.7
407 * Add a seat option greeter-allow-guest which controls if the greeter should
408 provide an option to access the guest account.
409 * Add a seat option greeter-show-manual-login which hints to a greeter if it
410 should show a manual username entry if a user list is already present.
412 Overview of changes in lightdm 1.1.6
414 * Fix session wrapper working the same as it did in 1.1.3
416 Overview of changes in lightdm 1.1.5
418 * Stop file descriptors leaking into the session processes
420 Overview of changes in lightdm 1.1.4
422 * Change session directory once user permissions are set so it works
423 on NFS filesystems that don't allow root to access files.
424 * Restructure session code so the PAM authentication is run in its
426 * Set PAM_XDISPLAY and PAM_XAUTHDATA pam items
427 * Don't send session stdout to .xsession-errors
428 * Fix Qt bindings crash when removing a user
430 Overview of changes in lightdm 1.1.3
432 * Actually return the system default keyboard layout, not just 'us'
433 * Add keyboard layout variants to list of keyboard layouts
434 * Check accountsservice as well as .dmrc for users' layouts
435 * Add lightdm_user_get_layouts() to query the configured list of layouts
437 * Add Lock D-Bus method that locks the seat and provides a hint to the
438 greeter to be in lock mode.
439 * Automatically lock sessions when switching away from them
440 * Add a has-messages property to liblightdm
441 * Add regression tests for PAM modules changing usernames
442 * Don't use g_key_file_unref, it requires glib 2.32
444 Overview of changes in lightdm 1.1.2
446 * Add regression tests for getting the user language and layout
447 * Stop accidentally distributing libsystem
448 * Fix introspection bindings not containing any methods
449 * lightdm-set-defaults can now set the autologin user
450 * Add Python greeter regression tests (representative of all introspection
452 * Wait for the VT to become active when switching to avoid a suspected
453 race condition somewhere between LightDM, X, ConsoleKit and the kernel.
454 * Stop lightdm_greeter_start_session_sync() blocking on success.
456 Overview of changes in lightdm 1.1.1
458 * Add a --disable-tests option
459 * Add note to AUTHORS file where to find author list
460 * Update build system to find moc/uic
461 * Fix non-distributed tests/src/lightdm-session
462 * Fix X sessions with arguments in Exec not working
463 * Use previous session for automatic login or if greeter does not request
465 * Set default resolution of VNC to 1024x768, add settings for width, height,
466 depth into lightdm.conf.
467 * AppArmor profile: Fix broken gnome-keyring and dbus/gwibber, and quiesce
468 annoying kernel audit messages for privileges that we definitively do not
470 * Set LOGNAME environment variable
471 * Don't set USERNAME environment variable - this is not specified in POSIX,
472 please report if this causes any major problems.
473 * Drop privileges when reading ~/.dmrc
474 * Move the GTK+ and Qt greeters into their own projects
475 * Fix crash when quitting with newer GLib
476 * Fix crash calling lightdm_get_layout
477 * Support for reading users' backgrounds from Accounts Service
478 * Fix --debug working with new glib
479 * Support PAM requesting a change of password
480 * Update build system to work with automake 1.11.2
481 * Run tests inside their own system D-Bus, simulating ConsoleKit and
483 * Add regression test for users that have their home directory created after
485 * Move lightdm-guest-session from libexec to pkglibexec directory
487 Overview of changes in lightdm 1.1.0
489 * Remove GetSeatForCookie and GetSessionForCookie D-Bus methods
490 * Switching to a user without a password bypasses the greeter
491 * Use LD_PRELOAD to intercept system calls for testing
492 * Removed the --passwd-file option as not required for testing anymore
493 * Rename test-xserver to X and remove --xserver-command option
494 * Make a test session wrapper and remove --session-wrapper option
495 * Remove unused --user-session, --greeter-session, --minimum-vt,
496 --minimum-display-number options
497 * Use 'default' as the default greeter (make a symlink)
498 * GTK greeter now initializes i18n
499 * GTK greeter now remembers last user
500 * Start authentication for automtically selected user in GTK greeter
501 * Don't resize GTK greeter on each click
502 * Start authentication when scrolling through GTK greeter entries
503 * Link liblightdm-qt against QtGui
504 * Fix liblightdm-qt crashing when face images are installed
505 * Set correct permissions on session log files
506 * Introduce a lightdm-guest-session-wrapper session command which MAC
507 systems like AppArmor and SELinux can use for attaching a restrictive
508 policy to guest sessions.
509 * Provide an AppArmor profile for guest session lockdown.
510 * Fix daemon from blocking if Accounts Service does not exist
511 * Fix greeter log file not being written
512 * Don't set LANG environment variable if using Accounts Service.
513 * Fix gdmflexiserver not working due to it not being in PATH
514 * Don't authenticate the greeter user
515 * Allow greeters to be disabled in configure flags
516 * Fix over allocation of read buffer in greeter protocol
517 * Make sure objects are cleaned up on exit
518 * Fix minor memory leaks
519 * Fix reference counting issue in ConsoleKit code
520 * Fix --enable-gtk-greeter=yes not working
522 Overview of changes in lightdm 1.0.0
524 * Explicitly grab keyboard focus in GTK greeter
525 * Fix removed power and a11y menu items in GTK greeter
526 * Put system binary directory into path when running in test mode
527 * Call pam_getenvlist after pam_setcred
529 Overview of changes in lightdm 0.9.8
531 * GetSeatForCookie and GetSessionForCookie are now deprecated. They
532 remain for now but use the XDG_SEAT_PATH and XDG_SESSION_PATH
533 environment variables instead.
534 * Change log filenames to be unique across different display types.
535 * Fix up script hooks, add regression tests for them
536 * Complete removal of X code from the core of LightDM, so it can better
537 support various display types
538 * Add ability to set the language of a user from the greeter
539 * Set LANG variable based on the user language
540 * Add language selector into GTK greeter (disabled by default)
541 * Allow TCP/IP connections if xserver-allow-tcp is true
542 * Allow lightdm --version to be run as non-root
543 * Automatically respond to PAM messages without prompts
544 * Create 'AddLocalXSeat' D-Bus method, and require root to use 'AddSeat'
545 * Fix multi-seat configuration picking the same display number
546 * Use correct D-Bus and power interface in liblightdm-qt
547 * Run pam_setcred inside the session process so pam_group works
548 * Make sure one session is always selected in the GTK greeter
550 Overview of changes in lightdm 0.9.7
552 * Set PAM_TTY to the display name, not the tty device
554 Overview of changes in lightdm 0.9.6
556 * Only unlock displays if switched to from greeter
557 * Make log file not system readable
558 * Write ~/.Xauthority inside the session process so it cannot be hijacked
559 * Set PAM_TTY and PAM_XDISPLAY when opening PAM session
560 * Add VNC server support
561 * Do not write ~/.dmrc and ~/.Xauthority as root. [CVE-2011-3349]
563 Overview of changes in lightdm 0.9.5
565 * Use accounts service in the daemon if it is available
566 * Correctly load seat type in multi seat configuration
567 * Add display-setup, session-setup and session-cleanup scripting hooks
568 * Fix cancel button in GTK greeter
569 * Fix line through GTK greeter menu items
570 * Exit daemon if a seat fails which has exit-on-failure set to true
571 * Add HasGuestAccount property to seat D-Bus interface
572 * Fix XDMCP authorization
575 Overview of changes in lightdm 0.9.4
577 * lightdm-set-defaults enables tweaking the default session and chosen
578 greeter for lightdm. This is useful for derivatives waiting to not ship
579 the whole configuration file of lightdm
580 * Fix crash in GTK+ greeter when a user is added
581 * Move xsessions-directory and xgreeters-directory from [SeatDefaults] to
582 [LightDM]. This is a configuration break, but making it on the assumption
583 that these settings are not likely to have been overridden.
584 * Fix fallback from org.freedesktop.Accounts to passwd format
585 * Fix duplicate user entries being shown when using passwd file
586 * Add AddSeat D-Bus method for adding dynamic seats
587 * Added a dm-tool program that allows user switching and adding seats
588 * Allow remote X servers, e.g. launched using dm-tool add-nested-seat
589 * Fix bug where sessions were started when the greeter quit and the user
590 hadn't been authorized.
591 * Fix bug where sessions used the seat bus name
592 * Don't allow autologin-username to be set to empty
593 * Fix bug where PAM session was not opened before writing to home directory
594 * Fix crash when failing to write X authority
596 Overview of changes in lightdm 0.9.3
598 * Unlock ConsoleKit sessions when switching to them
599 * Add a gdmflexiserver binary that provides backwards compatibility with
601 * Set XDG_SEAT_PATH and XDG_SESSION_PATH environment variables for sessions.
602 * Always set XAUTHORITY environment variable so sudo keeps accessing the
604 * Connect up lightdm_user_get_logged_in in liblightdm-gobject
605 * Ignore sessions that fail TryExec or are hidden
606 * Add missing home_directory User property missing in Vala bindings
608 Overview of changes in lightdm 0.9.2
610 * Fix annotation and Vala bindings for getting the UserList singleton
611 * Fix GTK+ greeter error label not being shown
612 * Don't set SIGQUIT to ignore in child processes
613 * Reworked the PAM code as ecryptfs users weren't able to log in. They
614 can now but not sure what changed to fix that!?
616 Overview of changes in lightdm 0.9.1
618 * Fix up translation build system
619 * Add a --with-greeter-user configure option
620 * Fix greeter-user configuration not being used
621 * Abort greeter if attempted to be run as root and greeter-user set
622 * Fix setting session in GTK+ greeter
624 Overview of changes in lightdm 0.9.0
626 * Fix invalid XAUTHORITY variable being set for second X server.
627 * Fix bug where switching users created X servers without VTs
628 * Release a VT when the X server on it stops
629 * Greeters are now just standard X sessions that are stored in
630 /usr/share/xgreeters.
631 * Binaries now installed in /usr/sbin
632 * Drop most of the configure options, they aren't necessary
634 - Major reorginisation of configuration to make it easier to configure and
635 understand. Users should set [SeatDefaults] section with settings for
636 all seats, and can override each setting in a per seat configuration.
637 - Default seats are now specified using a [Seat:<name>] section. If no seats
638 are specified then one is started. This can be overridden by setting
639 start-default-seat=false in [LightDM].
640 - Support setting autologin user to guest account
641 - Split the user accounts configuration into /etc/lightdm/users.conf so the
642 main config can be private.
643 - The default user session is now "default". Distributions should put a
644 symlink to their chosen default or set one in lightdm.conf.
645 - XDMCP keys now stored in keys.conf
646 * liblightdm API changes:
647 - Both libraries are now version 1 and have API and ABI guarantees.
648 - Face images are now local paths not URIs
649 - liblightdm-gobject now uses lightdm_ prefix instead of ldm_
650 - Non-greeter functions are now moved out of the Greeter class
651 - connect_to_server() is now called connect_sync and blocks until
653 - start_session() is now called start_session_sync and blocks until
654 completion. The quit signal is removed, and the greeter should quit if
655 this method returns TRUE.
656 - login() is now called authenticate()
657 - Greeters now have hints instead of configuration (greeters should load their
658 own configuration from /etc/lightdm if they need it).
659 - liblightdm-gobject uses AccountsService if it is available
660 - Added regression tests for liblightdm-qt
662 - Expose Seats and Sessions on org.freedesktop.DisplayManager
663 - Add a CanSwitch property
664 - Rename ShowGreeter() to SwitchToGreeter()
666 - Drop "example" from the name of the GTK+ and Qt greeters and make them
667 official default greeters.
668 - Use GTK3 for GTK+ greeter.
669 - Removed the Vala and Python GTK+ greeters, they weren't being well
672 Overview of changes in lightdm 0.4.4
674 * Fix failure to accept XDMCP connections due to invalid assert.
675 * Allow minimum-display-number to be set in lightdm.conf and on the command
677 * Session X authority now written to ~/.Xauthority by default. It can be
678 configured to run from the system location by setting
679 user-authority-in-system-dir=true in lightdm.conf.
680 * When using system authority the authority can be updated by the user.
681 * Written X authority files now checks hostname and display number.
682 * Enironment is no longer passed through to X servers and sessions, this is
683 no longer required now PAM works correctly.
684 * liblightdm API changes:
685 - Drop ldm_greeter_get_is_first() - it was added for testing and doesn't
687 * Fix more errors where authentication messages from previous sessions could
688 be confused with new sessions.
689 * Added XDMCP regression tests.
691 Overview of changes in lightdm 0.4.3
693 * Don't replace Plymouth if it isn't running on a valid VT
694 * Allow a null username to log in with - the system will prompt for a
696 * liblightdm API changes:
697 - Rename ldm_greeter_provide_secret to ldm_greeter_respond - responses
699 - show-prompt signal now has a PromptType field
700 - show-message signal now has a MessageType field and takes over
701 behaviour of show-error signal
702 * Fix error where an authentication failure from a previous session could
703 be interpreted as a failure in the current session.
704 * Simplify Vala bindings and add missing methods
706 Overview of changes in lightdm 0.4.2
708 * Fix errors communicating with PAM
709 * Fix interaction with Plytmouth.
710 * Removes the vt option in lightdm.conf, this is no longer required
711 and the active is used for the first display if Plymouth is
712 detected. A new option minimum-vt is added to select the first
713 VT to be used for other displays.
714 * On login switch to an existing session if already logged in with that
716 * Correctly connect up D-Bus interface for user switching
718 Overview of changes in lightdm 0.4.1
720 * Fix linking issue with -z,defs
721 * Added guest account support
722 * Restart X server if it crashes during a session
723 * Don't set language environment variables, use the daemon values
724 (system default) and leave it to ~/.profile for users to set these
725 * Change greeter library API, starting a session no longer has a language
727 * Fix greeter crash when user accounts change
729 Overview of changes in lightdm 0.4.0
731 * Fix crash when child processes quit
732 * Fix crash when catching signals
733 * Fix crash when session quits after X server
734 * Add internal checking for NULL object access
735 * Correctly handle signals from external programs (Thanks to Jason Conti)
736 * liblightdm API changes:
737 - ldm_greeter_start_authentication becomes ldm_greeter_login
738 - The existing ldm_greeter_login is now ldm_greeter_start_session
739 and the username parameter is not required.
740 - Drop ldm_greeter_get_default_layout (X controls the layout)
741 * Configuration changes:
742 - Use /etc/lightdm/lightdm.conf instead of /etc/lightdm.conf
743 - The "displays" item is now called "seats". LightDM will fallback to
744 "displays" if "seats" is not defined, but this is deprecated and will
745 be removed by version 1.0.
746 - Make X server configuration a separate section and now has new options
747 * Automatic login users now use PAM session lightdm-autologin
748 * Use org.freedesktop.DisplayManager instead of
749 org.lightdm.LightDisplayManager for D-Bus name
750 * Add regression tests
751 * Allow many more options to be set from the command line
753 Overview of changes in lightdm 0.3.7
755 * Fix autologin broken in 0.3.3
757 Overview of changes in lightdm 0.3.6
759 * Disable Plymouth when starting
760 * Allow display vt setting to be set to "active" to start on active VT
761 * Fix login in Qt example greeter
762 * Fix typo for High Contrast menu item (GTK example greeter)
764 Overview of changes in lightdm 0.3.5
766 * Set working directory when logging in
767 * Massive improvements to Qt greeter
768 * Fix XDMCP authentication/authorization errors
769 * Have the daemon open a connection to a local X server
770 * Tidy up some debugging messages
772 Overview of changes in lightdm 0.3.4
774 * Updates to liblightdm-qt
775 * Fix --with-cache-dir not working
776 * Set greeterdir in .pc files to point to where greeter engines should be
779 Overview of changes in lightdm 0.3.3
781 * Don't run in test-mode if Xephyr cannot be found
782 * Fix daemon using 100% CPU after greeter quits
783 * Fix crash when users don't have GECOS data
784 * Greeters can now detect user add/remove events
785 * Fix ConsoleKit support broken with switch to GDBus
786 * Correctly clean up X processes on exit
787 * Wait for greeter to quit before running user session (fixes problem with
790 Overview of changes in lightdm 0.3.2
792 * Distribute GTK greeter .ui file
794 Overview of changes in lightdm 0.3.1
796 * Add greeter login_with_defaults method
797 * Add example to the name of all the greeters
798 * Set the configuration for the default display to use VT 7
799 * Fix the vt setting for displays, it was incorrectly named tty
800 * Fix crash when load-users is false in UserManager
801 * Fix up name of .vapi file so it can be used directly from valac
802 * Tidy up Qt library and greeter
803 * Move menubar in greeters to top of screen
804 * Fix console kit get_can_*() methods
805 * Use GtkBuilder for example GTK greeter
807 Overview of changes in lightdm 0.3.0
809 * Correctly pass environment variables through to the session
810 * Allow starting virtual terminal to be configured
811 * Replace D-Bus greeter communication with a private pipe
812 * Use GDBus instead of dbus-glib
813 * Use the engine process name instead of a hardcoded value in theme files
814 * Rename ldm_greeter_connect to ldm_greeter_connect_to_server so it doesn't
815 clash with GObject method name
816 * Rename ldm-gtk-greeter to lightdm-gtk-greeter
817 * Rename gnome theme to example-gtk-gnome
818 * Add more annotations to liblightdm-gobject
819 * Add an example PyGObject, Vala and QT greeter
820 * Generate metadata for QT libraries
821 * Move Webkit greeter into separate module
823 Overview of changes in lightdm 0.2.3
825 * Set correct linking library names in pkg-config files
826 * Handle session executables that take arguments
828 Overview of changes in lightdm 0.2.2
830 * Make default themedir work when --prefix is not passed to configure
831 * Look for face images in ~/.face and ~/.face.icon
832 * Put .vapi file in unversioned vala directory
833 * Fix compiling without QT
834 * Choose the VT to open the display on
835 * Set correct group memberships for sessions (Yves-Alexis Perez)
836 * Set permissions on xauthority file so it can only be read by the owning
837 user (Yves-Alexis Perez)
838 * Set correct permissions on ~/.dmrc (Yves-Alexis Perez)
839 * Add --enable-liblightdm-gobject, --enable-liblightdm-qt configure option
840 * Set environment variables from PAM (Yves-Alexis Perez)
842 Overview of changes in lightdm 0.2.1
844 * Use "lightdm" as default PAM service and make it configurable
845 * Rename libldmgreeter to libldmgreeter-gobject
846 * Add libldmgreeter-qt (David Edmundson)
847 * Fix gobject-introspection build
848 * Renamed libldmgreeter to liblightdm
849 * Install a .vapi file
851 Overview of changes in lightdm 0.2.0
853 * Make default user configuration per-display
854 * Only automatically login the first time
855 * Fix WebKit theme loading and automatic login
856 * Do cross fade for sessions that support it
857 (set X-LightDM-Supports-Transitions=true in their xsession file)
858 * Load user settings from ~/.dmrc
859 * Add configuration for default language/layout
860 * Change language/layout/session when user selected in GTK+ greeter
861 * Set default keyboard layout on first login
862 * Don't run all sessions throught /etc/X11/XSession - make the session
863 wrapper optional and configurable.
864 * Make pkgconfig file require libxklavier
865 * Only compile greeters if have dependencies
866 * Include ck-connector code to reduce library dependencies
867 * Add introspection.m4 to the source tree
868 * Support using no greeter user in lightdm.conf
869 * Flush writes to main log file
870 * Allow non-privilidged user to write greeter log file in /var
871 * Fix bugs stopping running greeter as priviledged user (i.e. root)
872 * Don't default to running greeters with the GDM user - it may not exist!
874 Overview of changes in lightdm 0.1.2
877 * Make user switcher API work
878 * Add a AddDisplay D-Bus method to start new displays
879 * Feed signals to GLib main loop via a pipe
880 * Add an upstart script
881 * Make theme files more similar to existing themes
882 * Change dbus namespace from org.freedesktop.LightDisplayManager to
883 org.lightdm.LightDisplayManager
884 * Write debug log to /var/log/lightdm/lightdm.log instead of stdout. Use
885 --debug for the previous behaviour
886 * Add exec_prefix into libldmgreeter.pc
887 * Change versioned include and pkgconfig files from 1 to 0
888 * Add themedir variable into pkgconfig file
889 * Connect language list in GTK greeter to login language
891 Overview of changes in lightdm 0.1.1
893 * Change licence of libldmgreeter from GPL to LGPL
894 * Write X server and session output to log files
895 * Set PATH, DESKTOP_SESSION, GDMSESSION and USERNAME environment variables
896 * Run sessions through Xsession
897 * Close all X servers on exit
898 * Send SIGHUP to X server when returning to greeter (makes all clients quit)
899 * Change authorization after a session ends so previous session does not get
901 * Make shutdown buttons work in GTK+ greeter
902 * Make user manager configurable
903 * Make GTK+ greeter show username entry if no user list
904 * Hide C and POSIX languages in greeter
905 * Load language and layout from .dmrc file
907 Overview of changes in lightdm 0.1.0
909 * Make --test-mode which runs as the current user
910 * Support displays acting as XDMCP terminals
911 * Support MIT-MAGIC-COOKIE-1 and XDM-AUTHORIZATION-1 authorization
912 * Support XDMCP over IPv6
914 Overview of changes in lightdm 0.0.4
916 * Support XDMCP logins
918 * Clean up resources on exit
919 * Create gettext instance in WebKit greeter
921 Overview of changes in lightdm 0.0.3
923 * Wait for signal from X server before starting session
925 * Add keyboard layout API
926 * Add gettext support to the WebKit greeter
928 Overview of changes in lightdm 0.0.2
930 * Fix installation of D-Bus service file
931 * Allow DISPLAY env variable to be passed to X server so can run Xephyr
932 * Handle no automatic login in webkit theme
934 Overview of changes in lightdm 0.0.1