||<>|| = What is LightDM? = [[http://www.freedesktop.org/wiki/Software/LightDM/|LightDM]] is the ''display manager'' running in Ubuntu up to version 16.04 LTS. While it has been replaced by GDM in later Ubuntu releases, LightDM is still used by default in the latest release of several Ubuntu flavors. LightDM starts the X servers, user sessions and greeter (login screen). The default greeter in Ubuntu up to version 16.04 LTS is Unity Greeter. = Configuration = '''Later versions of lightdm (15.10 onwards) have replaced the obsolete [SeatDefaults] with [Seat:*]''' LightDM configuration is provided by the following files: {{{ /usr/share/lightdm/lightdm.conf.d/*.conf /etc/lightdm/lightdm.conf.d/*.conf /etc/lightdm/lightdm.conf }}} System provided configuration is stored in '''/usr/share/lightdm/lightdm.conf.d/*.conf''' and is not user editable. System administrators can override this configuration in '''/etc/lightdm/lightdm.conf.d/*.conf''' and '''/etc/lightdm/lightdm.conf'''. Files are read in the above order and combined together to make the LightDM configuration. For example, if you want to override the system configured default session (provided in '''/usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf''') you should make a file '''/etc/lightdm/lightdm.conf.d/50-myconfig.conf''' with the following: {{{ [SeatDefaults] user-session=mysession }}} An example file showing all the possible configuration is provided in '''/usr/share/doc/lightdm/lightdm.conf.gz'''. There is an additional config file: {{{ /etc/lightdm/users.conf }}} but this config file will be ignored if accountsservice is running on your system (if you are unsure, check from a shell prompt with the command `ps -aef | grep accountsservice`). == Disabling Guest Login == By default LightDM allows you to log into a session as a temporary user; disable this with: {{{ [SeatDefaults] allow-guest=false }}} == Hiding the User List == Unity Greeter (and some other greeters) shows the list of possible user accounts by default. If you want to disable this (you have too many users or security concerns) use the following configuration. You may also want to explicitly [[http://wiki.ubuntu.com/LightDM#Show_Manual_Login_Box|enable manual login]] with this feature. {{{ [SeatDefaults] greeter-hide-users=true }}} == Allow Manual Login == Unity Greeter (and some other greeters) don't allow you to enter a username to log in with by default. You can enable this with: {{{ [SeatDefaults] greeter-show-manual-login=true }}} == Setting an Automatic Login == To set the system to automatically start with a logged in user set the '''autologin-user'''. If '''autologin-user-timeout''' is set the greeter will be shown for this many seconds before the automatic login occurs. User activity will cancel this timeout. {{{ [SeatDefaults] autologin-user=username autologin-user-timeout=delay }}} If you want to set the automatic login to be a guest session then set: {{{ autologin-guest=true }}} == Changing the Default Session == The default session is set by configuration in '''/usr/share/lightdm/lightdm.conf.d/''' that session packages provide. If you need to override this you can set: {{{ [SeatDefaults] user-session=name }}} Where '''name''' is the name of the session .desktop file from '''/usr/share/xsessions/*.desktop'''. == Changing the Greeter == The greeter is set by configuration in '''/usr/share/lightdm/lightdm.conf.d/''' that greeter packages provide. If you need to override this you can set: {{{ [SeatDefaults] greeter-session=name }}} Where '''name''' is the name of the greeter .desktop file from '''/usr/share/xgreeters/*.desktop'''. == Adding System Hooks == If you need some special behaviour when X servers and user sessions start/stop you can set commands to be run with the following configuration: {{{ [SeatDefaults] display-setup-script=command display-stopped-script=command (Not in Ubuntu 12.04 LTS) greeter-setup-script=command session-setup-script=command session-cleanup-script=command session-wrapper=command greeter-wrapper=command (Not in Ubuntu 12.04 LTS) }}} '''display-setup-script''' is run after the X server starts but before the user session / greeter is run. Set this if you need to configure anything special in the X server. It is run as root. If this command returns an error code the X server is stopped. '''display-stopped-script''' is run after an X server exits. It is run as root. '''greeter-setup-script''' is run before a greeter starts. It is run as root. If this command returns an error code the greeter fails to start (which will cause LightDM to stop). '''session-setup-script''' is run before a user session starts. If this command returns an error the session will not start (user is returned to a greeter). '''session-cleanup-script''' is run after a greeter or user session stops. It is run as root. '''session-wrapper''' is a the command to run for a session. This command is run as the user and needs to exec the command passed in the arguments to complete running the session. Use this if you need to do special setup for a user session. Note the default is 'lightdm-session' so you should chain to this if you need to override this setting. '''greeter-wrapper''' is a the command to run a greeter. It is the equivalent of '''session-wrapper''' for greeters. == Changing the Wallpaper == LightDM does not configure the look of greeters; to do this configure the appropriate greeter. Unity Greeter by default shows the currently selected users background. To set the default background and stop the switching edit /usr/share/glib-2.0/schemas/10_unity_greeter_background.gschema.override {{{ [com.canonical.unity-greeter] draw-user-backgrounds=false background='/foo/wallpaper.png' }}} And run '''sudo glib-compile-schemas /usr/share/glib-2.0/schemas/''' to apply these settings. For LightDM GTK+ greeter edit /etc/lightdm/lightdm-gtk-greeter.conf: {{{ background=/usr/share/lubuntu/wallpapers/lubuntu-default-wallpaper.png }}} = Help, I can't see my Desktop! = Many things can go wrong in a graphics stack. If you can't see any graphics or see corrupt graphics the following might help: * You can get to a text terminal using alt-ctrl-F1. * Check the LightDM logs in /var/log/lightdm. * Stop LightDM with ''sudo stop lightdm''. * You can try LightDM again with ''sudo start lightdm''. * If you have another display manager you want to try (e.g. gdm) start that: ''sudo start gdm''. * You can set the default display manager by running ''sudo dpkg-reconfigure lightdm''. * Check your system is up to date, especially video drivers. * File a bug. If you're not sure where the cause is (lightdm / unity-greeter / unity / X / kernel) file against lightdm and the bug will be triaged and reassigned. == Reporting Problems == To file a bug run the following from a terminal: {{{ ubuntu-bug lightdm }}} All appropriate information/logs are attached to the bug report.