Display manager (Русский)
Экранный менеджер или менеджер входа — графический экран, который отображается в конце процесса загрузки вместо стандартного приглашения командной строки. Экранный менеджер представляет собой экран ввода имени пользователя и пароля для входа в систему. Существует множество экранных менеджеров, как и окружений рабочего стола. Практически все экранные менеджеры можно настраивать, изменяя их стиль и поведение.
Contents
Список экранных менеджеров
Консольные
- CDM — ультра-минималистичный, но полностью функциональный менеджер входа, написанный на Bash.
- Console TDM — расширение для xinit, также написанное на Bash.
- Nodm — минималистичный экранный менеджер для автоматического входа.
- Ly — экспериментальный менеджер входа.
Графические
- LightDM — независимый от среды рабочего стола экранный менеджер, основанный на WebKit.
- SDDM — экранный менеджер, основанный на QML. Продолжение KDE4 kdm, рекомендуется для Plasma 5 и LXQt.
- XDM — экранный менеджер с поддержкой XDMCP.
Запуск экранного менеджера
Чтобы включить экран входа, запустите соответствующую службу. Например для SDDM включите sddm.service. Это должно работать без дополнительных настроек. Если нет, возможно, вам придется удалить символическую ссылку default.target, чтобы указать на graphical.target файл по умолчанию.
После включения SDDM в /etc/systemd/system/ должен быть установлен symlink display-manager.service. Возможно, вам придется использовать --force для переопределения старых символических ссылок.
$ file /etc/systemd/system/display-manager.service
/etc/systemd/system/display-manager.service: symbolic link to /usr/lib/systemd/system/sddm.service
Использование systemd-logind
Чтобы иметь возможность проверить статус вашей сессии, вы можете использовать loginctl. Все действия polkit, такие, как перевод системы в ждущий режим или монтирование внешних устройств будут работать "из коробки".
$ loginctl show-session $XDG_SESSION_ID
Настройка сеанса
Большинство экранных менеджеров получают список доступных сеансов из каталога /usr/share/xsessions/. Он содержит стандартные файлы .desktop для каждого экранного/оконного менеджера.
Чтобы добавить/удалить записи в список сеансов вашего экранного менеджера, создайте/удалите соответствующий файл .desktop в /usr/share/xsessions/. Типичный файл .desktop выглядит примерно так:
[Desktop Entry] Name=Openbox Comment=Log in using the Openbox window manager (without a session manager) Exec=/usr/bin/openbox-session TryExec=/usr/bin/openbox-session Icon=openbox.png Type=Application
Использование ~/.xinitrc как сеанс
Установите xinit-xsessionAUR для запуска xinitrc в качестве сеанса. Просто установите xinitrc в качестве сеанса в настройках вашего экранного менеджера и убедитесь, что файл ~/.xinitrc является исполняемым.
Запуск приложений без оконного менеджера
Вы также можете запускать приложения без какого-либо оформления. Например, для запуска google-chromeAUR создайте файл web-browser.desktop в /usr/share/xsessions/ :
[Desktop Entry] Name=Web Browser Comment=Use a web browser as your session Exec=/usr/bin/google-chrome --auto-launch-at-startup TryExec=/usr/bin/google-chrome --auto-launch-at-startup Icon=google-chrome Type=Application
При этом, сразу после входа будет запущено приложение, указанное в опции Exec. Когда вы закроете приложение, вы будете возвращены к экранному менеджеру (точно так же, как если бы вы вышли из среды рабочего стола/оконного менеджера).
Важно помнить, что большинство графических приложений не рассчитаны на запуск в таком режиме и вы можете столкнуться с определенными ограничениями в их работе (например, диалоговые окна будут отображены без рамки и вы не сможете их перемещать по экрану; вы не сможете управлять никаким окном обычным способом — для установки размеров и положения вам, вероятно, придется вносить изменения в файлы настроек приложения).
Смотрите также xinitrc (Русский)#Запуск приложений без оконного менеджера.
Автозапуск
Большинство экранных менеджеров используют /etc/xprofile, ~/.xprofile и /etc/X11/xinit/xinitrc.d/ при входе. Для получения подробной информации, см. xprofile.
Установка языка
Для экранных менеджеров, которые используют AccountsService, язык для пользовательского сеанса может быть установлен путем редактирования:
/var/lib/AccountsService/users/$USER
[User] Language=your_locale
Выйдите из системы, а затем снова войдите, чтобы изменения вступили в силу.