LightDM

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page LightDM and the translation is 38% complete.
Outdated translations are marked like this.
Resources

LightDM is a cross-desktop display manager whose aim is to be the standard display manager for the X server.

The key features (as listed by upstream) include:

  • A well-defined greeter API allowing multiple GUIs.
  • Support for all display manager use cases, with plugins where appropriate.
  • Low code complexity.
  • Fast performance.

安装

USE 标记

USE flags for x11-misc/lightdm A lightweight display manager

audit Enable support for Linux audit subsystem using sys-process/audit
elogind Enable session tracking via sys-auth/elogind
gnome Add GNOME support
gtk Pull in the gtk+ greeter
introspection Add support for GObject based introspection
non-root Use non-root user by default
qt5 Add support for the Qt 5 application and UI framework
systemd Enable use of systemd-specific libraries and features like socket activation or session tracking
vala Enable bindings for dev-lang/vala

Emerge

安装lightdm:

root #emerge --ask x11-misc/lightdm

配置

The (global) configuration file for LightDM can be found at /etc/lightdm/lightdm.conf

GTK+

The GTK greeter configuration can be modified by manually editing the following file:

/etc/lightdm/lightdm-gtk-greeter.conf

RazorQt

The RazorQt greeter currently does not offer any configuration options.

启动服务

OpenRC

With display-manager

Set LightDM as the default display manager:

文件 /etc/conf.d/display-manager
DISPLAYMANAGER="lightdm"

To start LightDM on boot, add dbus and display-manager to the default runlevel. dbus is necessary because LightDM depends on it to pass messages:

root #rc-update add dbus default
root #rc-update add display-manager default

To start LightDM now:

root #rc-service dbus start
root #rc-service display-manager start
With the deprecated xdm init script

把 LightDM设置为默认显示管理器:

文件 /etc/conf.d/xdm
DISPLAYMANAGER="lightdm"

要在启动时启动LightDM,请将dbus和xdm添加到默认运行级别:

root #rc-update add dbus default
root #rc-update add xdm default

现在启动LightDM:

root #/etc/init.d/dbus start
root #/etc/init.d/xdm start

systemd

启动LightDM时启动:

root #systemctl enable lightdm

现在启动LightDM:

root #systemctl start lightdm

命令行工具

LightDM includes a command-line tool, dm-tool, which can be used to switch user sessions, lock the current seat, etc. To see a list of available commands, use the --help option:

user $dm-tool --help

例如,锁定当前位置:

user $dm-tool lock

Tips

Running commands at log-in

A user can run some programs automatically when logging in using LightDM by adding commands in ~/.xprofile, which will be sourced by LightDM. For example:

文件 ~/.xprofile
# Starting redshift, setting the dpi with xrandr and set the brightness to 50% with xbacklight
xrandr --dpi 192 &
redshift-gtk &
xbacklight -set 50 &

Unlock GNOME Keyring

To unlock your GNOME Keyring (gnome-base/gnome-keyring) automatically on login, edit /etc/pam.d/lightdm to look as follows. Note: Lines ending with the comment #keyring should be added.

文件 /etc/pam.d/lightdm
auth     substack        system-local-login
auth     optional        pam_gnome_keyring.so #keyring
account  substack        system-local-login
password substack        system-local-login
session  substack        system-local-login
session  optional        pam_gnome_keyring.so auto_start #keyring

Locking the screen with elogind after suspend or sleep

For security, it is good practice to lock the screen after elogind triggers suspend or sleep. This can be done easily by doing the following:

Install light-locker:

root #emerge --ask x11-misc/light-locker

Start light-locker after the X server has started by putting light-locker & into either an ~/.xprofile or ~/.xinitrc file.

文件 ~/.xprofile
# Starting light-lock with X session
light-locker &

Create a lock.sh file under /lib64/elogind/system-sleep/ (be sure to add execute permissions to the file):

root #chmod +x /lib64/elogind/system-sleep/lock.sh

故障排除

LightDM crashes upon first login if hostname changes during login

In some cases LightDM may crash when trying to log in for the first time if the hostname changes in the time between the boot and login (launchpad bug #1677058).

This may be encountered if net-misc/networkmanager is using the default settings to obtain the hostname from DHCP server and the hostname differs from the default one set on boot.

To disable NetworkManager hostname setting behavior, set the following line in [main] section of /etc/NetworkManager/NetworkManager.conf:

文件 /etc/NetworkManager/NetworkManager.conf
[main]
...
hostname-mode=none
...

LightDM fails to launch Xorg with a Nvidia GPU

Nvidia GPU users may experience LightDM failures in terms of launching Xorg (GitHub issue #263 ).

A workaround for this bug would be to edit /etc/lightdm/lightdm.conf to include the line logind-check-graphical=false in the [LightDM] section.

文件 /etc/lightdm/lightdm.conf
[LightDM]
...
logind-check-graphical=false
...

See also