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