SDDM (Русский)
Simple Desktop Display Manager (SDDM) – предпочтительный экранный менеджер для KDE Plasma.
Из Википедии:
- Simple Desktop Display Manager (SDDM) — это дисплейный менеджер (программа для графического экрана входа) для X11. SDDM был написан с нуля на языке C++11 и поддерживает установку тем через QML. SDDM является заменой устаревшему KDE Display Manager и интегрируется в KDE Frameworks 5, KDE Plasma 5 и KDE Applications 5.
Установка
Установите пакет sddm. Опционально установите пакет sddm-kcm для использования модуля KCM.
Теперь следуйте инструкциям из раздела Экранный менеджер#Запуск экранного менеджера, чтобы запускать SDDM при загрузке.
Настройка
Настройки SDDM по умолчанию хранятся в файле /usr/lib/sddm/sddm.conf.d/default.conf
. Для каких-либо изменений создайте конфигурационный файл(ы) в директории /etc/sddm.conf.d/
. Для получения полного списка настроек смотрите страницу справочного руководства sddm.conf(5).
Пакет sddm-kcm (входящий в группу plasma) предлагает графический интерфейс для конфигурации SDDM в Параметрах системы KDE Plasma. Также в AUR (Русский) доступен редактор настроек sddm-config-editor-gitAUR на основе Qt (Русский).
Всё должно работать "из коробки", так как Arch Linux использует systemd (Русский) и SDDM по умолчанию использует systemd-logind
для управления сессиями.
Автоматический вход в систему
SDDM поддерживает автоматический вход. Для этого настройте конфигурационный файл, например:
/etc/sddm.conf.d/autologin.conf
[Autologin] User=ivan Session=plasma.desktop
Эта конфигурация позволит автоматически запускать KDE Plasma для пользователя ivan
при загрузке системы. Все доступные сеансы доступны в директории /usr/share/xsessions/
(для Xorg) и /usr/share/wayland-sessions/
(для Wayland).
Также недоступна возможность автоматического входа в KDE Plasma с одновременной блокировкой сеанса [2].
Вы можете добавить скрипт, который активирует скринсейвер KDE при автозапуске в качестве обходного пути:
#!/bin/sh /usr/bin/dbus-send --session --type=method_call --dest=org.freedesktop.ScreenSaver /ScreenSaver org.freedesktop.ScreenSaver.Lock &
Автоматическая разблокировка KDE Wallet при входе в систему
Смотрите KDE Wallet#Unlock KDE Wallet automatically on login.
Настройки темы
Настройки темы могут быть изменены в секции [Theme]
. Также можно увидеть предпросмотр тем, если вы используете приложение Параметры системы в KDE Plasma.
Задайте значение breeze
для стандартной темы KDE Plasma.
Также некоторые темы доступны в AUR (Русский), например, archlinux-themes-sddmAUR.
Текущая тема
Установите текущую тему с помощью значения Current
, например, Current=archlinux-simplyblack
.
Редактирование тем
Каталогом тем для SDDM по умолчанию является /usr/share/sddm/themes/
. Вы можете добавить свои собственные темы в отдельный подкаталог этой директории. Заметьте, что названия подкаталогов должны совпадать с названием самой темы. Изучите установленные файлы для их изменения или создания собственной темы.
Тестирование (предпросмотр) темы
В случае необходимости, вы можете предварительно просматривать тему SDDM. Это особенно полезно в случае, когда вы не уверены в том, как тема будет смотреться (в частности, после её редактирования) без необходимости выхода из аккаунта. Вы можете выполнить команду вроде следующей:
$ sddm-greeter --test-mode --theme /usr/share/sddm/themes/breeze
Эта команда откроет новое окно для каждого подключённого монитора с предварительным просмотром темы.
Курсор мыши
Чтобы задать тему для курсора мыши, установите CursorTheme
на предпочитаемую вами тему курсора.
Допустимыми значениями для Plasma (Русский) являются breeze_cursors
, Breeze_Snow
и breeze-dark
.
Аватар пользователя
SDDM считывает иконку пользователя (аватар) как изображение PNG ~/.face.icon
для каждого пользователя. Также можно задать единую директорию для аватаров всех пользователей используя переменную FacesDir
в файле конфигурации SDDM. Данный файл должен располагаться в /etc/sddm.conf
или, лучше, в /etc/sddm.conf.d/
, например, /etc/sddm.conf.d/avatar.conf
.
Для использования функции FacesDir
, разместите изображение PNG под названием username.face.icon
в директории, указанной параметром FacesDir
в файле конфигурации. По умолчанию используется директория /usr/share/sddm/faces/
. Вы можете изменить стандартное значение FacesDir
, например:
/etc/sddm.conf.d/avatar.conf
[Theme] FacesDir=/var/lib/AccountsService/icons/
Также можно разместить PNG-изображение под названием .face.icon
в корне вашей домашней директории. В таком случае не потребуется вносить какие-либо изменения в файл конфигурации SDDM. Тем не менее, вам нужно убедиться, что пользователь sddm
имеет права на чтение аватаров.
~/.face
и ~/.face.icon
(символическая ссылка на первый файл). Если аватары пользователя – это символические ссылки, вам потребуется задать корректные права доступа к исходному файлу.Для задания корректных прав, выполните следующую команду:
$ setfacl -m u:sddm:x ~/ $ setfacl -m u:sddm:r ~/.face.icon
Вы можете проверить права с помощью данной команды:
$ getfacl ~/ $ getfacl ~/.face.icon
Смотрите также: SDDM README: No User Icon.
Numlock
Если вы хотите, чтобы Numlock автоматически включался, пропишите Numlock=on
в секции [General]
.
Поворот экрана
Смотрите Xrandr#Configuration.
Настройки DPI
Иногда требуется задать корректные настройки PPI монитора на уровне экранного менеджера. [3] Для этого нужно добавить параметр -dpi ваш_dpi
в конце строки ServerArguments
.
Например:
/etc/sddm.conf.d/dpi.conf
[X11] ServerArguments=-nolisten tcp -dpi 94
Включение HiDPI
Создайте следующий файл:
/etc/sddm.conf.d/hidpi.conf
[Wayland] EnableHiDPI=true [X11] EnableHiDPI=true
Включение виртуальной клавиатуры
Установите пакет qt5-virtualkeyboard.
Создайте следующий файл:
/etc/sddm.conf.d/virtualkbd.conf
[General] InputMethod=qtvirtualkeyboard
Теперь SDDM отображает кнопку открытия виртуальной клавиатуры в нижнем левом углу экрана входа.
Использование сканера отпечатка пальцев
SDDM использует сканер отпечатков пальцев с помощью fprint. После установки fprint и регистрации отпечатка, добавьте строку auth sufficient pam_fprintd.so
в начало файла /etc/pam.d/sddm
.
/etc/pam.d/kde
для поддержки экрана блокировки KDE Plasma.
Также экран блокировки KDE позволяет включить вход по отпечаткам пальцев, при этом оставив возможность использовать пароль. Добавьте следующее содержание в начало секции аутентификации:
/etc/pam.d/kde
auth sufficient pam_unix.so try_first_pass likeauth nullok auth sufficient pam_fprintd.so
Данный метод работает также и с SDDM (/etc/pam.d/sddm
), но требует отдельной разблокировки KWallet.
Теперь сканер отпечатков пальцев должен включаться по нажатию на клавишу Enter в пустом поле пароля пользователя.
Решение проблем
Пустой экран с курсором, но без экрана приветствия
Проверьте свободное дисковое пространство с помощью команды df -h
. В случае его отсутствия экран приветствия аварийно завершает работу.
Если же проблема не в отсутствии свободного места, она может быть связана с данной ошибкой. Переключитесь в другой TTY и перезапустите SDDM.
Долгая загрузка перед отображением экрана приветствия SDDM
Низкий уровень энтропии в системе может стать причиной долгой загрузки SDDM (Отчет об ошибке). Смотрите статью Random number generation для получения информации о повышении уровня энтропии.
Зависания после входа
Попробуйте удалить файл ~/.Xauthority
и перезайти в систему без перезагрузки. Перезагрузка до повторного входа в систему пересоздаст данный файл и проблема сохранится.
SDDM запускается на tty1 вместо tty7
SDDM следует конвенции systemd, в которой первая графическая сессия запускается на tty1. Если вы предпочитаете старую конвенцию, в которой терминалы с первого по шестой зарезервированы для текстовых консолей, измените стандартное значение переменной MinimumVT
в секции [X11]
:
/etc/sddm.conf.d/tty.conf
[X11] MinimumVT=7
Один или более пользователей не отображаются на экране приветствия
UID
, как правило, не должны отображаться на экранном менеджере.По умолчанию, SDDM отображает только тех пользователей, чей UID находится в диапазоне от 1000 до 65000. Если UID нужных вам пользователей ниже данного значения, вам потребуется изменить этот диапазон. Например, для пользователя с UID равным 501 файл конфигурации будет выглядеть следующим образом:
/etc/sddm.conf.d/uid.conf
[Users] HideShells=/sbin/nologin,/bin/false # Скрытые пользователи. Это для того, если какие-либо системные пользователи попадают в ваш диапазон. Смотрите /etc/passwd в вашей системе. HideUsers=git,sddm,systemd-journal-remote,systemd-journal-upload # Максимальный user id для отображаемых пользователей MaximumUid=65000 # Минимальный user id для отображаемых пользователей MinimumUid=500 #Мой UID равен 501
Аватары пользователей не отображаются на экране приветствия
Иконки пользователей не отображаются на экране приветствия, если количество пользователей превышает значение параметра DisableAvatarsThreshold или аватары совсем отключены параметром EnableAvatars. Данное поведение настраивается следующей конфигурацией SDDM:
/etc/sddm.conf.d/avatars.conf
[Theme] EnableAvatars=true # Включение иконок пользователей DisableAvatarsThreshold=7 # Задание лимита количества пользователей, при котором аватарки отображаются
SDDM загружает только английскую (US) раскладку клавиатуры
SDDM загружает раскладку клавиатуры, заданную в файле /etc/X11/xorg.conf.d/00-keyboard.conf
. Вы можете сгенерировать этот конфигурационный файл командой localectl set-x11-keymap
. Смотрите Keyboard configuration in Xorg (Русский) для дополнительной информации.
Также SDDM может некорректно отображать раскладку как английскую, но моментально изменит её на правильную после начала ввода пароля [4]. Похоже, что это баг не SDDM, а libxcb (версии 1.13-1 по состоянию на 2018) [5].
Слишком низкое разрешение экрана
Проблема может быть вызвана использованием HiDPI с мониторами с повреждённой информацией EDID [6]. Попробуйте отключить HiDPI, если он у вас включён.
Если же решение выше не помогает, можно попробовать задать размер экрана в файле конфигурации Xorg. Например:
/etc/X11/xorg.conf.d/90-monitor.conf
Section "Monitor" Identifier "<default monitor>" DisplaySize 345 194 # in millimeters EndSection
Долгая загрузка с домашней директорией на autofs
По умолчанию, SDDM пытается отобразить аватарки пользователей считывая файл ~/.face.icon
. Если ваша домашняя директория имеет тип файловой системы autofs, например, в случае использования Dm-crypt (Русский), придётся ждать 60 секунд, пока autofs не сообщит, что директория не может быть смонтирована.
Вы можете отключить отображение аватарок отредактировав /etc/sddm.conf
:
/etc/sddm.conf
[Theme] EnableAvatars=false