SDDM

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page SDDM and the translation is 67% complete.
Outdated translations are marked like this.
Other languages:

Simple Desktop Display Manager (SDDM) はX serverWayland プロトコルの両方をサポートする現代的なディスプレイマネージャです。

警告
デフォルトでは、SDDM の"電源オフ"アイコンをクリックすると、確認なしにコンピュータが直ちにシャットダウンされます。

インストール

USE フラグ

USE flags for x11-misc/sddm Simple Desktop Display Manager

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

x11-misc/sddm をインストールします:

root #emerge --ask x11-misc/sddm

パフォーマンス面の問題がある場合、sddm ユーザーを video グループに追加すると改善することがあります:

root #usermod -a -G video sddm

設定

ファイル

SDDM には2つの設定ファイル格納場所があります: /usr/share/sddm/sddm.conf.d//etc/sddm.conf.d/で、これは特定のオプションを上書きするのに使われます。後者はパッケージでは作成されません。KDE Plasma はユーザーが変更したオプションを /etc/sddm.conf.d/ に書き込みます。どちらの場所も同じフォーマットのファイルをサポートしています。使用可能なオプションについての詳細は man 5 sddm.conf man ページを参照してください。

存在しない場合、ローカル設定ディレクトリを作成します:

root #mkdir -p /etc/sddm.conf.d

/etc/sddm.conf.d/override.conf を作成し、以下の内容を含むように編集します:

Create local configuration directory if it does not exists:

root #mkdir -p /etc/sddm.conf.d

After that create and edit file /etc/sddm.conf.d/override.conf with following lines in it:

ファイル /etc/sddm.conf.d/override.conf
[X11]
DisplayCommand=/etc/sddm/scripts/Xsetup

次に /etc/sddm/scripts ディレクトリと /etc/sddm/scripts/Xsetup ファイルを作成します:

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 権限で実行されます
 
# ここには SDDM 開始時に実行される様々なコマンドが入ります。

override.conf and X11 rootless mode

By default SDDM runs in X11 as the root user. This may be considered a security risk.

Since x11-misc/sddm version 0.20 it is possible to run SDDM in X11 rootless mode instead.

構成によっては、X server を開始して greeter 画面を表示する前にいくつかのコマンドを実行する必要があります。そのようなケースでは Xsetup ファイルが使用できます。その場所はローカルの /etc/sddm.conf.d/override.conf で上書きする必要があります。

Create local configuration directory if it does not exists:

root #mkdir -p /etc/sddm.conf.d

After that create and edit file /etc/sddm.conf.d/override.conf with following lines in it:

ファイル /etc/sddm.conf.d/override.conf
[General]
DisplayServer=x11-user

override.conf and wayland mode

警告
Running SDDM in Wayland mode is highly experimental

Since x11-misc/sddm version 0.20 it is possible to run SDDM in Wayland mode.

Weston

SDDM supports several Wayland compositors. This first example uses SDDMs default compositor, Weston, for systems where kde-plasma/plasma-desktop is not used. First install dev-libs/weston with the fullscreen USE flag enabled.

Then the Display server configuration should be overridden in the local /etc/sddm.conf.d/override.conf.

Create local configuration directory if it does not exists:

root #mkdir -p /etc/sddm.conf.d

After that create and edit file /etc/sddm.conf.d/override.conf with following lines in it:

ファイル /etc/sddm.conf.d/override.conf
[General]
DisplayServer=wayland
</div>

<div lang="en" dir="ltr" class="mw-content-ltr">
# This part is optional
[Wayland]
CompositorCommand=weston --shell=fullscreen-shell.so
Kwin

Users of systems using kde-plasma/plasma-desktop may want to use Kwin as the compositor instead:

ファイル /etc/sddm.conf.d/override.conf
[General]
DisplayServer=wayland
GreeterEnvironment=QT_WAYLAND_SHELL_INTEGRATION=layer-shell
</div>

<div lang="en" dir="ltr" class="mw-content-ltr">
[Wayland]
CompositorCommand=kwin_wayland --drm --no-lockscreen --no-global-shortcuts --locale1

キーマップ

ログインスクリーンで正しいキーマップを選択するには、setxkbmap コマンドを /etc/sddm/scripts/Xsetup ファイルに設定します:

ファイル /etc/sddm/scripts/Xsetup
#!/bin/sh
# Xsetup - run as root before the login dialog appears
 
# ...
 
# First keymap will be gb
setxkbmap gb,us

最初の国コードがデフォルトになります。

Multimonitor configuration

greeter の位置は、SDDM の /etc/sddm/scripts/Xsetup スクリプト内の xrandr の設定で変更できます。まず、x11-apps/xrandr をインストールします:

root #emerge --ask x11-apps/xrandr

ここでは、xrandr は接続されている2つのモニターを報告しています: プライマリ (DP-4) とセカンダリ (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

/etc/sddm/scripts/Xsetup ファイルに以下の行を追加します:

ファイル /etc/sddm/scripts/Xsetup
#!/bin/sh
# Xsetup - run as root before the login dialog appears
 
# ...
 
# First, set DP-4 as primary
xrandr --output DP-4 --auto --primary
# Second, DP-2 will be placed on left of DP-4 and rotated by 270 degree clockwise.
xrandr --output DP-2 --left-of DP-4 --rotate left --noprimary

再起動すると SDDM によって greeter が DP-4 モニターに表示されます。

サービス

OpenRC

gui-libs/display-manager-init が無い場合は、次のコマンドで emerge してください:

root #emerge --ask gui-libs/display-manager-init

SDDM を使用するためには、設定ファイルを変更するべきです:

ファイル /etc/conf.d/display-managerSet SDDM をディスプレイマネージャとして設定する
CHECKVT=7
DISPLAYMANAGER="sddm"

選択したディスプレイマネージャをブート時に開始するには、システムの default ランレベルに display-manager を追加してください:

root #rc-update add display-manager default

今すぐに display-manager を開始するには、次を実行してください:

root #rc-service display-manager start

systemd

ブート時に SDDM を開始するには:

root #systemctl enable sddm.service

すぐに SDDM を開始するには:

root #systemctl start sddm.service

Plasma

kde-plasma/sddm-kcm をインストールすると、グラフィカルな設定が Plasma 5 のシステム設定に統合されます:

root #emerge --ask kde-plasma/sddm-kcm

トラブルシューティング

SDDM が greeter を表示するまでの読込み時間が長い

エントロピープールが低いと、SDDM の読込みに長い時間がかかります - 上流のバグ報告を参照。systemd を使用している場合、グラフィカルターゲットに到達すると全てが固まったようになります。マウスを動かしたりキーボードを使用したりすると SDDM に greeter を(より速く)表示させることができます。

この問題は、例えば、sys-apps/haveged パッケージを使用してエントロピープールを増加させたり、十分に新しい CPU 上でRANDOM_TRUST_CPU カーネル設定オプションを有功にすることで解決できます。

Xorg.log 内の Permission denied エラー

X server が開始されず、Xorg.log というログファイルに(以下のような)「Permission denied」というエラーが表示されます:

ファイル /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].

これは、おそらく sddm ユーザーが video グループに追加されていないためです。以下のコマンドで解決するはずです:

root #usermod -a -G video sddm

システムボタンが表示されない

SDDM は、機能が提供されていると判断したときのみボタンを表示します。この判断はいくつかの要素に依存します。elogind を使用している OpenRC システムにおいては、ディスプレイマネージャが初期化されたときに elogind サービスが実行されていないことが原因になることがあります。elogind が確実に実行されるようにするには、単純に boot ランレベルに追加します。

root #rc-update add elogind boot

ユーザーが表示されない

ログインスクリーンにユーザーの選択肢が表示されない場合、原因はおそらく /etc/sddm.conf です - 一般的な MinimumUid は1000ですが、いくつかの既存のユーザーの uid がそれより小さいためでしょう。

ファイル /etc/sddm.conf
[Users]
MaximumUid=60000
MinimumUid=1000

SDDM サービスは開始されるが画面が黒いままになる

この閉じられたバグ報告 によると、NVIDIA カードでは.、SDDM は、有効化され、かつ操作可能な DRM を必要とするようです。

カーネルで Direct Rendering Manager が有効になっているか確認してください。なっていなければ、それを有効化してカーネルをリビルドし、x11-drivers/nvidia-drivers を再度 emerge してください。

カーネル Direct Rendering Manager を有効化する
Device Drivers --->
    Graphics support --->
        <*> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
            [*] Enable legacy fbdev support for your modesetting driver

起動時に、nvidia-drm モジュールが modeset オプションが有効化された状態で読み込まれるようにしてください:

ファイル /etc/modules-load.d/nvidia-drm.conf
nvidia-drm
options nvidia-drm modeset=1

代わりに、カーネルコマンドラインnvidia-drm.modeset=1 とすることで modeset オプションを有効化することもできます。これは、bootloader で設定したり、カーネル設定に組み込むことができます。

関連項目