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