SDDM
A S imple D esktop D isplay M anager (SDDM) egy modern kijelzőkezelő (display manager), amely támogatja mind az X szervert , mind a Wayland protokollt.
Alapértelmezés szerint az SDDM-ben a "kikapcsolás" ikonra kattintva a számítógép azonnal leáll, megerősítés kérése nélkül.
Telepítés
USE jelölőzászlók
USE flags for x11-misc/sddm Simple Desktop Display Manager
+X
|
Add support for X11 |
+elogind
|
Enable session tracking via sys-auth/elogind |
systemd
|
Enable use of systemd-specific libraries and features like socket activation or session tracking |
test
|
Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently) |
Emerge
Telepítse a x11-misc/sddm szoftercsomagot:
root
#
emerge --ask x11-misc/sddm
Ha teljesítményproblémák jelentkeznek, akkor segíthet, ha hozzáadja az sddm felhasználót a video csoporthoz:
root
#
usermod -a -G video sddm
Beállítás
Fájlok
Az SDDM két beállításhelyet használ: /usr/share/sddm/sddm.conf.d/ és /etc/sddm.conf.d/ , amelyet specifikus beállítások felülírására használnak. A KDE Plasma a felhasználó által módosított beállításokat a /etc/sddm.conf.d/ könyvtárba írja. Mindkét hely támogatja az azonos formátumú fájlokat. Az elérhető beállításokról részletekért tekintse meg a man 5 sddm.conf súgót .
override.conf és Xsetup fájlok
A legtöbb esetben ezek a fájlok nem szükségesek, így ez a szakasz kihagyható.
Egyes beállítási esetekben bizonyos parancsokat kell végrehajtani az X szerver indítása és a köszöntőképernyő megjelenítése előtt. Ezekben az esetekben a Xsetup fájl használható, amelynek helyét a helyi /etc/sddm.conf.d/override.conf fájlban kell felülírni.
Ha nem létezik, akkor hozza létre a helyi beállításkönyvtárat:
root
#
mkdir -p /etc/sddm.conf.d
Ezt követően hozza létre és szerkessze a /etc/sddm.conf.d/override.conf fájlt az alábbi sorokkal:
/etc/sddm.conf.d/override.conf
[X11]
DisplayCommand=/etc/sddm/scripts/Xsetup
Ezután hozza létre a /etc/sddm/scripts könyvtárat és a /etc/sddm/scripts/Xsetup fájlt:
root
#
mkdir -p /etc/sddm/scripts
root
#
touch /etc/sddm/scripts/Xsetup
root
#
chmod a+x /etc/sddm/scripts/Xsetup
/etc/sddm/scripts/Xsetup
#!/bin/sh
# Xsetup - root felhasználóként futtatva a bejelentkezési párbeszédablak megjelenése előtt.
# Itt különféle parancsokat lehet végrehajtani az SDDM indításakor.
override.conf és X11 root nélküli mód
Alapértelmezés szerint az SDDM X11-ben root felhasználóként fut. Ez biztonsági kockázatnak tekinthető.
A x11-misc/sddm szoftvercsomag a 0.20-as verziójától kezdve képes az SDDM futtatása X11 root nélküli módban.
Ennek eléréséhez a Display szerver beállítását felül kell írni a helyi /etc/sddm.conf.d/override.conf fájl segítségével.
Ha nem létezik, akkor hozza létre a helyi beállításkönyvtárat:
root
#
mkdir -p /etc/sddm.conf.d
Ezt követően hozza létre és szerkessze a /etc/sddm.conf.d/override.conf fájlt az alábbi sorokkal:
/etc/sddm.conf.d/override.conf
[General]
DisplayServer=x11-user
Az override.conf és a wayland mód
Az SDDM futtatása Wayland módban kissé kísérleti jellegű. Érdemes megbizonyosodni arról, hogy a hardver és a szoftveres környezet megfelelően működik-e Waylanddal, mielőtt ezt a módot használná.
Az x11-misc/sddm 0.20-as verziójától kezdve lehetséges az SDDM Wayland módban történő futtatása.
Weston
Az SDDM több Wayland kompozitort támogat. Ez az első példa az SDDM alapértelmezett kompozitorát, Westont használja olyan operációs rendszerek esetében, ahol a kde-plasma/plasma-desktop szoftvercsomag nincs telepítve. Először telepítse a dev-libs/weston szoftvercsomagot az kiosk USE jelölőzászló engedélyezésével.
Ezután a kijelzőszerver beállítását felül kell írni a helyi /etc/sddm.conf.d/override.conf fájlban.
Ha még nem létezik, akkor hozzon létre helyi beállításkönyvtárat:
root
#
mkdir -p /etc/sddm.conf.d
Ezután hozza létre és szerkessze az /etc/sddm.conf.d/override.conf fájlt a következő sorokkal:
/etc/sddm.conf.d/override.conf
[General]
DisplayServer=wayland
# Ez a rész opcionális.
[Wayland]
CompositorCommand=weston --shell=kiosk
Kwin
Azok a felhasználók, akik kde-plasma/plasma-desktop rendszert használnak, inkább a Kwin kompozitort szeretnék alkalmazni.
/etc/sddm.conf.d/override.conf
[General]
DisplayServer=wayland
GreeterEnvironment=QT_WAYLAND_SHELL_INTEGRATION=layer-shell
[Wayland]
CompositorCommand=kwin_wayland --drm --no-lockscreen --no-global-shortcuts --locale1
Billentyűzetgombok térképe
A helyes billentyűzetgombok térképének a kiválasztásához a bejelentkezési képernyőn, adja hozzá a setxkbmap parancsot a /etc/sddm/scripts/Xsetup fájlhoz:
/etc/sddm/scripts/Xsetup
#!/bin/sh
# Xsetup - root felhasználóként futtatva a bejelentkezési párbeszédablak megjelenése előtt.
# ...
# Az elsődleges billentyűzetgombok térképe a gb lesz.
setxkbmap gb,us
Az első országkód az alapértelmezett.
Többmonitoros beállítás
A köszöntő (greeter) helye az SDDM /etc/sddm/scripts/Xsetup szkriptjében állítható be a xrandr beállításának a segítségével. Először telepítse a x11-apps/xrandr szoftvercsomagot:
root
#
emerge --ask x11-apps/xrandr
Itt a
xrandr
jelentése szerint két csatlakoztatott monitor van: Elsődleges (
DP-4
) és másodlagos (
DP-2
):
user
$
xrandr | grep -w connected
DP-2 connected 2160x3840+0+0 left (normal left inverted right x axis y axis) 597mm x 336mm DP-4 connected primary 3840x2160+2160+0 (normal left inverted right x axis y axis) 697mm x 392mm
Adja hozzá az alábbi sorokat a /etc/sddm/scripts/Xsetup fájlhoz:
/etc/sddm/scripts/Xsetup
#!/bin/sh
# Xsetup - root felhasználóként futtatva a bejelentkezési párbeszédablak megjelenése előtt.
# ...
# Először állítsa be a DP-4-et elsődleges kijelzőként.
xrandr --output DP-4 --auto --primary
# Második lépésként a DP-2 a DP-4 bal oldalára kerül, és az óramutató járásával megegyező irányban 270 fokkal elforgatásra kerül.
xrandr --output DP-2 --left-of DP-4 --rotate left --noprimary
Újraindítás után az SDDM a köszöntőképernyőt a
DP-4
monitoron fogja megjeleníteni.
Szolgáltatás
OpenRC
Ha a gui-libs/display-manager-init szoftvercsomag nincs jelen, akkor telepítse az alábbi parancs segítségével:
root
#
emerge --ask gui-libs/display-manager-init
A beállításfájlt módosítani kell, hogy az SDDM-et használja:
/etc/conf.d/display-manager
SDDM beállítása kijelzőkezelőként
CHECKVT=7
DISPLAYMANAGER="sddm"
Az alapértelmezett beállítási állapotában az SDDM valószínűleg nem indul el elogind nélkül. Engedélyezze és indítsa el a következő módon:
root
#
rc-update add elogind boot
root
#
rc-service elogind start
Azért, hogy a kiválasztott kijelzőkezelő (display manager) bootoláskor elinduljon, adja hozzá a display-manager szolgáltatást az operációs rendszer default futási szintjéhez.
root
#
rc-update add display-manager default
Azért, hogy a display-manager azonnali elinduljon, futtassa a következő parancsot:
root
#
rc-service display-manager start
systemd
Annak érdekében, hogy a számítógép bootolásakor az SDDM is elinduljon:
root
#
systemctl enable sddm.service
Az SDDM azonnali indításának érdekében futtassa a következő parancsot:
root
#
systemctl start sddm.service
Plasma
A grafikus beállítások integrálva vannak a Plasma rendszerbeállításokba a kde-plasma/sddm-kcm szoftvercsomag telepítésével.
root
#
emerge --ask kde-plasma/sddm-kcm
Hibaelhárítás
Hosszú a betöltési idő, mielőtt az SDDM megjeleníti a bejelentkezési képernyőt
Az alacsony entrópiakészlet hosszú SDDM betöltési időt okozhat. Tekintse meg az upstream hibajelentést . Ha systemd init rendszert használ, akkor a grafikus célállapot elérhetővé válik, majd minden látszólag lefagy. Az egér mozgatása vagy a billentyűzet használata gyorsabbá teszi az SDDM bejelentkezési képernyő indítását.
A probléma megoldásához használja például a sys-apps/haveged szoftvercsomagot az entrópiakészlet növelésére, vagy engedélyezze a RANDOM_TRUST_CPU kernel beállítási opciót egy kellően új CPU-val .
"Engedély megtagadva" hibák az Xorg.log fájlban
Az X szerver nem indul el, és az Xorg.log naplófájlban "Engedély megtagadva" hibák találhatók (például az alábbiak):
/var/log/Xorg.log
/var/log/Xorg.0.log:[ 2058.998] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied
/var/log/Xorg.0.log:[ 2061.229] (EE) intel(0): [drm] failed to set drm interface version: Permission denied [13].
Valószínű, hogy az sddm felhasználó nincs hozzáadva a video csoporthoz. A következő parancs futtatása megoldhatja a problémát:
root
#
usermod -a -G video sddm
Hiányzó rendszergombok
Az SDDM csak akkor jelenít meg gombokat, ha az adott funkció elérhetőként értékelhető. Ez több tényezőtől is függhet. OpenRC init rendszert használó operációs rendszereken az elogind használata esetén ez előfordulhat, ha a szolgáltatás nem fut, amikor a kijelzőkezelő (display manager) inicializálódik. Annak biztosítására, hogy fut, adja hozzá az elogind szolgáltatást a boot futási szinthez.
root
#
rc-update add elogind boot
Hiányzó felhasználók
Ha a bejelentkezési képernyőről hiányzik néhány felhasználó a kiválaszthatók közül, akkor ezt a problémát okozhatja a
/etc/sddm.conf
fájl. Az alapértelmezett
MinimumUid
érték 1000, és egyes meglévő felhasználók alacsonyabb UID azonosítóval rendelkezhetnek.
/etc/sddm.conf
[Users]
MaximumUid=60000
MinimumUid=1000
SDDM szolgáltatás elindul, de fekete képernyőt eredményez
NVIDIA grafikus kártyák esetén úgy tűnik, hogy az SDDM-nek szüksége van az engedélyezett és működő DRM-re, a lezárt hibajelentés szerint.
Győződjön meg róla, hogy a Direct Rendering Manager engedélyezve van a kernelben. Ha nincs, engedélyezze, akkor a forráskódból építse újra a kernelt, majd telepítse újra a x11-drivers/nvidia-drivers szoftvercsomagot.
Device Drivers --->
Graphics support --->
<*> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
[*] Enable legacy fbdev support for your modesetting driver
Győződjön meg róla, hogy az nvidia-drm modul be van állítva az számítógép indításkor történő betöltésre, és az modeset opció engedélyezve van.
/etc/modules-load.d/nvidia-drm.conf
nvidia-drm
options nvidia-drm modeset=1
Alternatívaként az modeset opció engedélyezhető a kernel parancssorában a nvidia-drm.modeset=1 beállítással. Ez beállítható a bootloader bootloaderben vagy beágyazható a kernelbeállításban.
További olvasnivaló a témában
- LightDM — egy asztali környezetektől független kijelzőkezelő (display manager), amelynek az a célja, hogy az X szerver szabványos kijelzőkezelőjévé váljon.
- SLiM — a desktop-independent graphical display manager .