1 Overview of changes in lightdm 1.1.2
3 * Move the GTK+ and Qt greeters into their own projects
4 * Fix crash when quitting with newer GLib
6 Overview of changes in lightdm 1.1.1
8 * Add a --disable-tests option
9 * Add note to AUTHORS file where to find author list
10 * Update build system to find moc/uic
11 * Fix non-distributed tests/src/lightdm-session
12 * Fix X sessions with arguments in Exec not working
13 * Use previous session for automatic login or if greeter does not request
15 * Set default resolution of VNC to 1024x768, add settings for width, height,
16 depth into lightdm.conf.
17 * AppArmor profile: Fix broken gnome-keyring and dbus/gwibber, and quiesce
18 annoying kernel audit messages for privileges that we definitively do not
20 * Set LOGNAME environment variable
21 * Don't set USERNAME environment variable - this is not specified in POSIX,
22 please report if this causes any major problems.
23 * Drop privileges when reading ~/.dmrc
25 Overview of changes in lightdm 1.1.0
27 * Remove GetSeatForCookie and GetSessionForCookie D-Bus methods
28 * Switching to a user without a password bypasses the greeter
29 * Use LD_PRELOAD to intercept system calls for testing
30 * Removed the --passwd-file option as not required for testing anymore
31 * Rename test-xserver to X and remove --xserver-command option
32 * Make a test session wrapper and remove --session-wrapper option
33 * Remove unused --user-session, --greeter-session, --minimum-vt,
34 --minimum-display-number options
35 * Use 'default' as the default greeter (make a symlink)
36 * GTK greeter now initializes i18n
37 * GTK greeter now remembers last user
38 * Start authentication for automtically selected user in GTK greeter
39 * Don't resize GTK greeter on each click
40 * Start authentication when scrolling through GTK greeter entries
41 * Link liblightdm-qt against QtGui
42 * Fix liblightdm-qt crashing when face images are installed
43 * Set correct permissions on session log files
44 * Introduce a lightdm-guest-session-wrapper session command which MAC
45 systems like AppArmor and SELinux can use for attaching a restrictive
46 policy to guest sessions.
47 * Provide an AppArmor profile for guest session lockdown.
48 * Fix daemon from blocking if Accounts Service does not exist
49 * Fix greeter log file not being written
50 * Don't set LANG environment variable if using Accounts Service.
51 * Fix gdmflexiserver not working due to it not being in PATH
52 * Don't authenticate the greeter user
53 * Allow greeters to be disabled in configure flags
54 * Fix over allocation of read buffer in greeter protocol
55 * Make sure objects are cleaned up on exit
56 * Fix minor memory leaks
57 * Fix reference counting issue in ConsoleKit code
58 * Fix --enable-gtk-greeter=yes not working
60 Overview of changes in lightdm 1.0.0
62 * Explicitly grab keyboard focus in GTK greeter
63 * Fix removed power and a11y menu items in GTK greeter
64 * Put system binary directory into path when running in test mode
65 * Call pam_getenvlist after pam_setcred
67 Overview of changes in lightdm 0.9.8
69 * GetSeatForCookie and GetSessionForCookie are now deprecated. They
70 remain for now but use the XDG_SEAT_PATH and XDG_SESSION_PATH
71 environment variables instead.
72 * Change log filenames to be unique across different display types.
73 * Fix up script hooks, add regression tests for them
74 * Complete removal of X code from the core of LightDM, so it can better
75 support various display types
76 * Add ability to set the language of a user from the greeter
77 * Set LANG variable based on the user language
78 * Add language selector into GTK greeter (disabled by default)
79 * Allow TCP/IP connections if xserver-allow-tcp is true
80 * Allow lightdm --version to be run as non-root
81 * Automatically respond to PAM messages without prompts
82 * Create 'AddLocalXSeat' D-Bus method, and require root to use 'AddSeat'
83 * Fix multi-seat configuration picking the same display number
84 * Use correct D-Bus and power interface in liblightdm-qt
85 * Run pam_setcred inside the session process so pam_group works
86 * Make sure one session is always selected in the GTK greeter
88 Overview of changes in lightdm 0.9.7
90 * Set PAM_TTY to the display name, not the tty device
92 Overview of changes in lightdm 0.9.6
94 * Only unlock displays if switched to from greeter
95 * Make log file not system readable
96 * Write ~/.Xauthority inside the session process so it cannot be hijacked
97 * Set PAM_TTY and PAM_XDISPLAY when opening PAM session
98 * Add VNC server support
99 * Do not write ~/.dmrc and ~/.Xauthority as root. [CVE-2011-3349]
101 Overview of changes in lightdm 0.9.5
103 * Use accounts service in the daemon if it is available
104 * Correctly load seat type in multi seat configuration
105 * Add display-setup, session-setup and session-cleanup scripting hooks
106 * Fix cancel button in GTK greeter
107 * Fix line through GTK greeter menu items
108 * Exit daemon if a seat fails which has exit-on-failure set to true
109 * Add HasGuestAccount property to seat D-Bus interface
110 * Fix XDMCP authorization
113 Overview of changes in lightdm 0.9.4
115 * lightdm-set-defaults enables tweaking the default session and chosen
116 greeter for lightdm. This is useful for derivatives waiting to not ship
117 the whole configuration file of lightdm
118 * Fix crash in GTK+ greeter when a user is added
119 * Move xsessions-directory and xgreeters-directory from [SeatDefaults] to
120 [LightDM]. This is a configuration break, but making it on the assumption
121 that these settings are not likely to have been overridden.
122 * Fix fallback from org.freedesktop.Accounts to passwd format
123 * Fix duplicate user entries being shown when using passwd file
124 * Add AddSeat D-Bus method for adding dynamic seats
125 * Added a dm-tool program that allows user switching and adding seats
126 * Allow remote X servers, e.g. launched using dm-tool add-nested-seat
127 * Fix bug where sessions were started when the greeter quit and the user
128 hadn't been authorized.
129 * Fix bug where sessions used the seat bus name
130 * Don't allow autologin-username to be set to empty
131 * Fix bug where PAM session was not opened before writing to home directory
132 * Fix crash when failing to write X authority
134 Overview of changes in lightdm 0.9.3
136 * Unlock ConsoleKit sessions when switching to them
137 * Add a gdmflexiserver binary that provides backwards compatibility with
139 * Set XDG_SEAT_PATH and XDG_SESSION_PATH environment variables for sessions.
140 * Always set XAUTHORITY environment variable so sudo keeps accessing the
142 * Connect up lightdm_user_get_logged_in in liblightdm-gobject
143 * Ignore sessions that fail TryExec or are hidden
144 * Add missing home_directory User property missing in Vala bindings
146 Overview of changes in lightdm 0.9.2
148 * Fix annotation and Vala bindings for getting the UserList singleton
149 * Fix GTK+ greeter error label not being shown
150 * Don't set SIGQUIT to ignore in child processes
151 * Reworked the PAM code as ecryptfs users weren't able to log in. They
152 can now but not sure what changed to fix that!?
154 Overview of changes in lightdm 0.9.1
156 * Fix up translation build system
157 * Add a --with-greeter-user configure option
158 * Fix greeter-user configuration not being used
159 * Abort greeter if attempted to be run as root and greeter-user set
160 * Fix setting session in GTK+ greeter
162 Overview of changes in lightdm 0.9.0
164 * Fix invalid XAUTHORITY variable being set for second X server.
165 * Fix bug where switching users created X servers without VTs
166 * Release a VT when the X server on it stops
167 * Greeters are now just standard X sessions that are stored in
168 /usr/share/xgreeters.
169 * Binaries now installed in /usr/sbin
170 * Drop most of the configure options, they aren't necessary
172 - Major reorginisation of configuration to make it easier to configure and
173 understand. Users should set [SeatDefaults] section with settings for
174 all seats, and can override each setting in a per seat configuration.
175 - Default seats are now specified using a [Seat:<name>] section. If no seats
176 are specified then one is started. This can be overridden by setting
177 start-default-seat=false in [LightDM].
178 - Support setting autologin user to guest account
179 - Split the user accounts configuration into /etc/lightdm/users.conf so the
180 main config can be private.
181 - The default user session is now "default". Distributions should put a
182 symlink to their chosen default or set one in lightdm.conf.
183 - XDMCP keys now stored in keys.conf
184 * liblightdm API changes:
185 - Both libraries are now version 1 and have API and ABI guarantees.
186 - Face images are now local paths not URIs
187 - liblightdm-gobject now uses lightdm_ prefix instead of ldm_
188 - Non-greeter functions are now moved out of the Greeter class
189 - connect_to_server() is now called connect_sync and blocks until
191 - start_session() is now called start_session_sync and blocks until
192 completion. The quit signal is removed, and the greeter should quit if
193 this method returns TRUE.
194 - login() is now called authenticate()
195 - Greeters now have hints instead of configuration (greeters should load their
196 own configuration from /etc/lightdm if they need it).
197 - liblightdm-gobject uses AccountsService if it is available
198 - Added regression tests for liblightdm-qt
200 - Expose Seats and Sessions on org.freedesktop.DisplayManager
201 - Add a CanSwitch property
202 - Rename ShowGreeter() to SwitchToGreeter()
204 - Drop "example" from the name of the GTK+ and Qt greeters and make them
205 official default greeters.
206 - Use GTK3 for GTK+ greeter.
207 - Removed the Vala and Python GTK+ greeters, they weren't being well
210 Overview of changes in lightdm 0.4.4
212 * Fix failure to accept XDMCP connections due to invalid assert.
213 * Allow minimum-display-number to be set in lightdm.conf and on the command
215 * Session X authority now written to ~/.Xauthority by default. It can be
216 configured to run from the system location by setting
217 user-authority-in-system-dir=true in lightdm.conf.
218 * When using system authority the authority can be updated by the user.
219 * Written X authority files now checks hostname and display number.
220 * Enironment is no longer passed through to X servers and sessions, this is
221 no longer required now PAM works correctly.
222 * liblightdm API changes:
223 - Drop ldm_greeter_get_is_first() - it was added for testing and doesn't
225 * Fix more errors where authentication messages from previous sessions could
226 be confused with new sessions.
227 * Added XDMCP regression tests.
229 Overview of changes in lightdm 0.4.3
231 * Don't replace Plymouth if it isn't running on a valid VT
232 * Allow a null username to log in with - the system will prompt for a
234 * liblightdm API changes:
235 - Rename ldm_greeter_provide_secret to ldm_greeter_respond - responses
237 - show-prompt signal now has a PromptType field
238 - show-message signal now has a MessageType field and takes over
239 behaviour of show-error signal
240 * Fix error where an authentication failure from a previous session could
241 be interpreted as a failure in the current session.
242 * Simplify Vala bindings and add missing methods
244 Overview of changes in lightdm 0.4.2
246 * Fix errors communicating with PAM
247 * Fix interaction with Plytmouth.
248 * Removes the vt option in lightdm.conf, this is no longer required
249 and the active is used for the first display if Plymouth is
250 detected. A new option minimum-vt is added to select the first
251 VT to be used for other displays.
252 * On login switch to an existing session if already logged in with that
254 * Correctly connect up D-Bus interface for user switching
256 Overview of changes in lightdm 0.4.1
258 * Fix linking issue with -z,defs
259 * Added guest account support
260 * Restart X server if it crashes during a session
261 * Don't set language environment variables, use the daemon values
262 (system default) and leave it to ~/.profile for users to set these
263 * Change greeter library API, starting a session no longer has a language
265 * Fix greeter crash when user accounts change
267 Overview of changes in lightdm 0.4.0
269 * Fix crash when child processes quit
270 * Fix crash when catching signals
271 * Fix crash when session quits after X server
272 * Add internal checking for NULL object access
273 * Correctly handle signals from external programs (Thanks to Jason Conti)
274 * liblightdm API changes:
275 - ldm_greeter_start_authentication becomes ldm_greeter_login
276 - The existing ldm_greeter_login is now ldm_greeter_start_session
277 and the username parameter is not required.
278 - Drop ldm_greeter_get_default_layout (X controls the layout)
279 * Configuration changes:
280 - Use /etc/lightdm/lightdm.conf instead of /etc/lightdm.conf
281 - The "displays" item is now called "seats". LightDM will fallback to
282 "displays" if "seats" is not defined, but this is deprecated and will
283 be removed by version 1.0.
284 - Make X server configuration a separate section and now has new options
285 * Automatic login users now use PAM session lightdm-autologin
286 * Use org.freedesktop.DisplayManager instead of
287 org.lightdm.LightDisplayManager for D-Bus name
288 * Add regression tests
289 * Allow many more options to be set from the command line
291 Overview of changes in lightdm 0.3.7
293 * Fix autologin broken in 0.3.3
295 Overview of changes in lightdm 0.3.6
297 * Disable Plymouth when starting
298 * Allow display vt setting to be set to "active" to start on active VT
299 * Fix login in Qt example greeter
300 * Fix typo for High Contrast menu item (GTK example greeter)
302 Overview of changes in lightdm 0.3.5
304 * Set working directory when logging in
305 * Massive improvements to Qt greeter
306 * Fix XDMCP authentication/authorization errors
307 * Have the daemon open a connection to a local X server
308 * Tidy up some debugging messages
310 Overview of changes in lightdm 0.3.4
312 * Updates to liblightdm-qt
313 * Fix --with-cache-dir not working
314 * Set greeterdir in .pc files to point to where greeter engines should be
317 Overview of changes in lightdm 0.3.3
319 * Don't run in test-mode if Xephyr cannot be found
320 * Fix daemon using 100% CPU after greeter quits
321 * Fix crash when users don't have GECOS data
322 * Greeters can now detect user add/remove events
323 * Fix ConsoleKit support broken with switch to GDBus
324 * Correctly clean up X processes on exit
325 * Wait for greeter to quit before running user session (fixes problem with
328 Overview of changes in lightdm 0.3.2
330 * Distribute GTK greeter .ui file
332 Overview of changes in lightdm 0.3.1
334 * Add greeter login_with_defaults method
335 * Add example to the name of all the greeters
336 * Set the configuration for the default display to use VT 7
337 * Fix the vt setting for displays, it was incorrectly named tty
338 * Fix crash when load-users is false in UserManager
339 * Fix up name of .vapi file so it can be used directly from valac
340 * Tidy up Qt library and greeter
341 * Move menubar in greeters to top of screen
342 * Fix console kit get_can_*() methods
343 * Use GtkBuilder for example GTK greeter
345 Overview of changes in lightdm 0.3.0
347 * Correctly pass environment variables through to the session
348 * Allow starting virtual terminal to be configured
349 * Replace D-Bus greeter communication with a private pipe
350 * Use GDBus instead of dbus-glib
351 * Use the engine process name instead of a hardcoded value in theme files
352 * Rename ldm_greeter_connect to ldm_greeter_connect_to_server so it doesn't
353 clash with GObject method name
354 * Rename ldm-gtk-greeter to lightdm-gtk-greeter
355 * Rename gnome theme to example-gtk-gnome
356 * Add more annotations to liblightdm-gobject
357 * Add an example PyGObject, Vala and QT greeter
358 * Generate metadata for QT libraries
359 * Move Webkit greeter into separate module
361 Overview of changes in lightdm 0.2.3
363 * Set correct linking library names in pkg-config files
364 * Handle session executables that take arguments
366 Overview of changes in lightdm 0.2.2
368 * Make default themedir work when --prefix is not passed to configure
369 * Look for face images in ~/.face and ~/.face.icon
370 * Put .vapi file in unversioned vala directory
371 * Fix compiling without QT
372 * Choose the VT to open the display on
373 * Set correct group memberships for sessions (Yves-Alexis Perez)
374 * Set permissions on xauthority file so it can only be read by the owning
375 user (Yves-Alexis Perez)
376 * Set correct permissions on ~/.dmrc (Yves-Alexis Perez)
377 * Add --enable-liblightdm-gobject, --enable-liblightdm-qt configure option
378 * Set environment variables from PAM (Yves-Alexis Perez)
380 Overview of changes in lightdm 0.2.1
382 * Use "lightdm" as default PAM service and make it configurable
383 * Rename libldmgreeter to libldmgreeter-gobject
384 * Add libldmgreeter-qt (David Edmundson)
385 * Fix gobject-introspection build
386 * Renamed libldmgreeter to liblightdm
387 * Install a .vapi file
389 Overview of changes in lightdm 0.2.0
391 * Make default user configuration per-display
392 * Only automatically login the first time
393 * Fix WebKit theme loading and automatic login
394 * Do cross fade for sessions that support it
395 (set X-LightDM-Supports-Transitions=true in their xsession file)
396 * Load user settings from ~/.dmrc
397 * Add configuration for default language/layout
398 * Change language/layout/session when user selected in GTK+ greeter
399 * Set default keyboard layout on first login
400 * Don't run all sessions throught /etc/X11/XSession - make the session
401 wrapper optional and configurable.
402 * Make pkgconfig file require libxklavier
403 * Only compile greeters if have dependencies
404 * Include ck-connector code to reduce library dependencies
405 * Add introspection.m4 to the source tree
406 * Support using no greeter user in lightdm.conf
407 * Flush writes to main log file
408 * Allow non-privilidged user to write greeter log file in /var
409 * Fix bugs stopping running greeter as priviledged user (i.e. root)
410 * Don't default to running greeters with the GDM user - it may not exist!
412 Overview of changes in lightdm 0.1.2
415 * Make user switcher API work
416 * Add a AddDisplay D-Bus method to start new displays
417 * Feed signals to GLib main loop via a pipe
418 * Add an upstart script
419 * Make theme files more similar to existing themes
420 * Change dbus namespace from org.freedesktop.LightDisplayManager to
421 org.lightdm.LightDisplayManager
422 * Write debug log to /var/log/lightdm/lightdm.log instead of stdout. Use
423 --debug for the previous behaviour
424 * Add exec_prefix into libldmgreeter.pc
425 * Change versioned include and pkgconfig files from 1 to 0
426 * Add themedir variable into pkgconfig file
427 * Connect language list in GTK greeter to login language
429 Overview of changes in lightdm 0.1.1
431 * Change licence of libldmgreeter from GPL to LGPL
432 * Write X server and session output to log files
433 * Set PATH, DESKTOP_SESSION, GDMSESSION and USERNAME environment variables
434 * Run sessions through Xsession
435 * Close all X servers on exit
436 * Send SIGHUP to X server when returning to greeter (makes all clients quit)
437 * Change authorization after a session ends so previous session does not get
439 * Make shutdown buttons work in GTK+ greeter
440 * Make user manager configurable
441 * Make GTK+ greeter show username entry if no user list
442 * Hide C and POSIX languages in greeter
443 * Load language and layout from .dmrc file
445 Overview of changes in lightdm 0.1.0
447 * Make --test-mode which runs as the current user
448 * Support displays acting as XDMCP terminals
449 * Support MIT-MAGIC-COOKIE-1 and XDM-AUTHORIZATION-1 authorization
450 * Support XDMCP over IPv6
452 Overview of changes in lightdm 0.0.4
454 * Support XDMCP logins
456 * Clean up resources on exit
457 * Create gettext instance in WebKit greeter
459 Overview of changes in lightdm 0.0.3
461 * Wait for signal from X server before starting session
463 * Add keyboard layout API
464 * Add gettext support to the WebKit greeter
466 Overview of changes in lightdm 0.0.2
468 * Fix installation of D-Bus service file
469 * Allow DISPLAY env variable to be passed to X server so can run Xephyr
470 * Handle no automatic login in webkit theme
472 Overview of changes in lightdm 0.0.1