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