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