LightDM for Display Management

Registered by Jason Warner

Last cycle I proposed using LightDM to replace GDM [1]. It was deferred
due to the Unity work, so time to repropose!

The main reasons for switching are:
- Simpler code to maintain (GDM is a huge ~50,000 line C program and we
carry 36 patches. LightDM is nearer 10,000 lines of C).
- More flexible greeter development - greeters are as easy as X
applications to write, which means we can have an Ubuntu specific
greeter that without branching the rest of the code
- Speed improvements - we can run a greeter without running a full GNOME
- Display manager can be shared with Kubuntu, Xubuntu, Lubuntu etc but
still allow each distro to have their own greeter.

The current state of LightDM is "80% done" I would say. The core
architecture is all there, and it just needs a few weeks of solid work
to make it shine.


Blueprint information

Martin Pitt
Robert Ancell
Robert Ancell
Series goal:
Accepted for oneiric
Milestone target:
milestone icon oneiric-alpha-2
Started by
Martin Pitt
Completed by
Robert Ancell

Related branches



Work items (oneiric-alpha-1):
[robert-ancell] MIR for LightDM: DONE
[robert-ancell] Write Ubuntu wiki page about how to test/debug/fix LightDM: DONE

Work items (oneiric-alpha-2):
[robert-ancell] Switch Oneiric to using LightDM by default: DONE
[mika] Design Unity greeter: DONE

Work items (oneiric-alpha-3):
[robert-ancell] Implement Unity greeter: DONE
[robert-ancell] Implement unit testing for LightDM: DONE

Work items (ubuntu-11.10-beta-1):
[robert-ancell] Implement capability detection: POSTPONED
[didrocks] Use new capability detection for Unity using LightDM: POSTPONED

Work items (ubuntu-11.10):
Check two-factor works well: POSTPONED
[jdstrand] Perform security review: POSTPONED
[themuso] Perform accessibility review: POSTPONED

2011-05-20, amano:
They have a humongous mockup in elementary project. With the black bar on the top it feels much more consistent with Unity/Ambience than the current GDM theme:

UDS Discussion:

Statement: We want a new login experience for Ubuntu

- matching theme
- better keyboard navigation

Option 1: Modify GDM
Option 2: Use LightDM

LightDM Requirements:

    User list
    Face images
    Network status
        ability to change system volume levels prior to login
    User switcher integration
    Graceful failure
    Touch support
    Greeter/session transitions
    Fast startup
    Session selector
    Capability dependant session
    Keycard / Smartcard
    Facial recognition
Power Management
    Keyboard layout/input method
    Translatable strings
    Font size
    Theme (high contrast)
    Sound events
    Onscreen keyboard
    Everything keyboard accessible
    Screen reader (orca)
    Multi seat
    User list
System administration
    Plugin system
    Multiple language support
    Shell scripts?
Remote login

Lubuntu is interested to switch to LightDM, to share work on the maintenance. LXDM (current display manager for Lubuntu) is working. So to replace it, we need at least LightDM to have features already supported by LXDM :
 * Support for multiple configuration files (LXDM uses update-alternative)
 * Building with GTK3
 * GtkBuilder greeter
 * ConsoleKit support
 * Support for encrypted home
 * Support autologin
 * Support plymouth
 * User and keyboard switching at login
 * No GNOME components started by default
 * Read / write ~/.dmrc
 * Reading all PATH (usr/games, usr/local ...)
 * Support Xauthority (with possible option to put it in /home or in /var)
 * Support in Ubiquity / user-setup (Autologin support at install time) See bug #546445
 * Handle password with space
 * Read ~/.xprofile
 * Work with libpam-ck-connector installed
 * Fast and low memory usage

Plan of action:
- use lightdm in oneiric
- change the default early in the cycle so it gets testing


Work Items

Dependency tree

* Blueprints in grey have been implemented.