SDDM

提供: ArchWiki
2017年2月12日 (日) 19:15時点におけるKusakata (トーク | 投稿記録)による版 (同期)
ナビゲーションに移動 検索に移動

関連記事

Simple Desktop Display Manager (SDDM) は KDE 5 の Plasma デスクトップで推奨されているディスプレイマネージャです。

Wikipedia より:

Simple Desktop Display Manager (SDDM) は X11 と Wayland ウィンドウシステム向けのディスプレイマネージャ (グラフィカルログインプログラム) である。SDDM は C++11 によってスクラッチで書かれており QML によるテーマ機能をサポートしています。KDE ディスプレイマネージャの後継で KDE Frameworks 5, KDE Plasma 5, KDE Applications 5 と合わせて使われる。

インストール

公式リポジトリから sddm パッケージをインストールしてください。

そしてディスプレイマネージャ#ディスプレイマネージャをロードするにしたがってブート時に SDDM を起動させます。

設定

SDDM の設定ファイルは /etc/sddm.conf です。オプションの全ては man sddm.conf を見て下さい。

systemd によって制御されている環境では、SDDM がデフォルトで systemd-logind を使ってセッションを管理するため、何も設定しなくても問題なく動作します。そのため、パッケージをインストールした時に設定ファイルは作成されません。SDDM にはデフォルト設定のサンプル設定ファイルを生成するコマンドがあるので、必要であれば使って下さい:

# sddm --example-config > /etc/sddm.conf

自動ログイン

KDM と同じように、SDDM は設定ファイルによって自動ログインをサポートしています、例:

/etc/sddm.conf
[Autologin]
User=john
Session=plasma.desktop

上の設定だと、システムが起動した時に john ユーザーで KDE Plasma セッションが起動します。利用できるセッションのタイプは ls /usr/share/xsessions/ でわかります。

警告: 設定を誤ると、あなたのノートパソコンへの物理的なアクセスを手に入れた攻撃者が自動ログインを使って、たやすくデスクトップを破壊してしまう可能性があります。自動ログインは他の認証プロンプトによってシステムが保護されているときにだけ有効にしてください。例: パスフレーズによる root ファイルシステムの暗号化

KDE Plasma の自動ログインを使用した場合、セッションのロックは利用できなくなります [1]

以下のスクリプトを追加することで KDE のスクリーンセーバーを自動的に有効化することが可能です:

#!/bin/bash
/usr/bin/qdbus-qt4 org.kde.screensaver /ScreenSaver SetActive true &
exit 0

ログイン時に KDE Wallet のロックを解除

KDE Wallet#ログイン時に KDE ウォレットを自動的にアンロックを見てください。

テーマ設定

テーマの設定は [Theme] セクションで変更できます。

デフォルトの Plasma テーマを使いたい場合 breeze に設定してください。

archlinux-themes-sddmAUR など、AUR から入手できるテーマもあります。

メインテーマ

メインテーマは Current で設定します。例: Current=archlinux-simplyblack

テーマの編集

SDDM のデフォルトのテーマディレクトリは /usr/share/sddm/themes/ です。作成したカスタムテーマはこのディレクトリのサブディレクトリに追加することができます。インストールされているファイルを参考に自分自身のテーマを作成してみてください。

マウスカーソル

マウスカーソルのテーマを設定したい場合は、CursorTheme を使用したいカーソルテーマに設定してください。

Plasma で使用できるマウスカーソルのテーマの名前は: breeze_cursors, Breeze_Snow, breeze-dark

アバターの変更

username.face.icon という名前の png 画像をデフォルトディレクトリ /usr/share/sddm/faces/ に配置してください。もしくはデフォルトディレクトリを別のディレクトリに変更することもできます。例:

/etc/sddm.conf
[Theme]
FacesDir=/var/lib/AccountsService/icons/

ホームディレクトリのルートに .face.icon という名前の PNG 画像を置く方法もあります。ただし、sddm ユーザーからファイルが読み込めるようにする必要があります。

ノート: アバター画像がシンボリックリンクの場合、リンク先のファイルに適切なファイル権限を設定してください。

Numlock

Numlock を強制的に有効にしたい場合、[General] セクションに Numlock=on と設定してください。

ディスプレイの回転

Xrandr#設定を見てください。

設定 GUI

  • KDE Frameworks のシステム設定に SDDM 設定モジュールが含まれています。sddm-kcm パッケージをインストールすることで使うことができます。
  • Qt ベースの設定エディタを AURsddm-config-editor-gitAUR でインストールできます。

DPI の設定

ディスプレイマネージャからディスプレイの PPI 設定を適切に設定できると便利です。sddm.conf の "ServerArguments" パラメータの末尾に -dpi %YOUR RESOLUTION を追加してください。例:

/etc/sddm.conf
ServerArguments=-nolisten tcp -dpi 94

トラブルシューティング

ログイン後にフリーズする

~/.Xauthority を削除してみてください。

SDDM が tty7 ではなく tty1 で起動する

SDDM は systemd の慣習 にしたがって tty1 に一番目のグラフィカルセッションを起動します。tty1 から tty6 まではテキストコンソール用にするという、昔のやり方が良い場合は、sddm.conf[X11] セクションの MinimumVT 変数をアンコメント・編集してください:

/etc/sddm.conf
[X11]
...
MinimumVT=7
...

ユーザーが greeter に表示されない

警告: UID が高すぎたり低すぎるユーザーは基本的にディスプレイマネージャから認識されないようになっています。

SDDM はデフォルトで UID が 1000 から 65000 の間のユーザーしか表示しません。使用したいユーザーの UID がこの値を下回っている場合、範囲を修正する必要があります。sddm.conf を以下のように変更してください (例えば UID が 501 の場合):

/etc/sddm.conf
[Users]
HideShells=/sbin/nologin,/bin/false
# Hidden users, this is if any system users fall within your range, see /etc/passwd on your system.
HideUsers=git,sddm,systemd-journal-remote,systemd-journal-upload

# Maximum user id for displayed users
MaximumUid=65000

# Minimum user id for displayed users
MinimumUid=500 #My UID is 501

SDDM が US キーボードのレイアウトしかロードしない

SDDM は /etc/X11/xorg.conf.d/00-keyboard.conf で指定されたキーボードレイアウトをロードします。localectl set-x11-keymap コマンドを使うことでこの設定ファイルを生成することが可能です。詳しくは Xorg でのキーボード設定を見て下さい。

ユーザーアイコンが表示されない

SDDM はユーザーアイコンを ~/.face.icon あるいは FacesDir/username.face.icon から読み込みます。

SDDM ユーザーからファイルが読み込めるように権限を設定してください:

$ setfacl -m u:sddm:x /home/username
$ setfacl -m u:sddm:r /home/username/.face.icon
$ setfacl -m u:sddm:r /home/username/.face

詳しくは SDDM README: No User Icon を参照。

画面解像度が低すぎる

EDID の情報が壊れているディスプレイで HiDPI を使用した場合に発生する問題です [2]

sddm.conf で HiDPI を無効化してみてください:

/etc/sddm.conf
[General]
# Enable Qt's automatic high-DPI scaling
EnableHiDPI=false

sddm-gitAUR のインストールで問題が解決する場合もあります。