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