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