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