「SDDM」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(同期)
2行目: 2行目:
 
[[Category:ディスプレイマネージャ]]
 
[[Category:ディスプレイマネージャ]]
 
[[en:SDDM]]
 
[[en:SDDM]]
  +
[[fr:SDDM]]
 
[[ru:SDDM]]
 
[[ru:SDDM]]
 
[[zh-hans:SDDM]]
 
[[zh-hans:SDDM]]
12行目: 13行目:
 
Wikipedia より:
 
Wikipedia より:
   
:''Simple Desktop Display Manager (SDDM) は X11 と Wayland ウィンドウシステム向けのディスプレイマネージャ (グラフィカルログインプログラム) である。SDDM は C++11 によってスクラッチで書かれており QML によるテーマ機能をサポートしています。KDE ディスプレイマネージャの後継で KDE Frameworks 5, KDE Plasma 5, KDE Applications 5 と合わせて使われる。''
+
:''Simple Desktop Display Manager (SDDM) は X11 と Wayland ウィンドウシステム向けのディスプレイマネージャ (グラフィカルログインプログラム) である。SDDM は C++11 によってスクラッチで書かれており QML によるテーマ機能をサポートしてい。KDE ディスプレイマネージャの後継で KDE Frameworks 5, KDE Plasma 5, KDE Applications 5 と合わせて使われる。''
  +
  +
{{Note|Wayland のサポートは完全ではありません [https://github.com/sddm/sddm/issues/440]。Wayland のセッションは認識されますが、SDDM 自体は X11 で動作します。}}
   
 
== インストール ==
 
== インストール ==
   
[[公式リポジトリ]]から {{Pkg|sddm}} パッケージを[[インストール]]してください。
+
{{Pkg|sddm}} パッケージを[[インストール]]してください。
   
 
そして[[ディスプレイマネージャ#ディスプレイマネージャをロードする]]にしたがってブート時に SDDM を起動させます。
 
そして[[ディスプレイマネージャ#ディスプレイマネージャをロードする]]にしたがってブート時に SDDM を起動させます。
22行目: 25行目:
 
== 設定 ==
 
== 設定 ==
   
SDDM の設定ファイルは {{ic|/etc/sddm.conf}} す。オプションの全ては {{ic|man sddm.conf}} を見て下さい。
+
SDDM のデフォルト設定ファイルは {{ic|/usr/lib/sddm/sddm.conf.d/sddm.conf}} に存在します。設定を変更するときは {{ic|/etc/sddm.conf.d/}} に設定ファイルを作成してください。利用可能なオプションは {{man|5|sddm.conf}} を見て下さい。
  +
  +
({{grp|plasma}} グループに含まれている) {{pkg|sddm-kcm}} パッケージをインストールすることで Plasma のシステム設定から GUI で SDDM を設定できます。Qt ベースの設定エディタ ({{AUR|sddm-config-editor-git}}) も存在します。
   
 
[[systemd]] によって制御されている環境では、SDDM がデフォルトで {{ic|systemd-logind}} を使ってセッションを管理するため、何も設定しなくても問題なく動作します。そのため、パッケージをインストールした時に設定ファイルは作成されません。SDDM にはデフォルト設定のサンプル設定ファイルを生成するコマンドがあるので、必要であれば使って下さい:
 
[[systemd]] によって制御されている環境では、SDDM がデフォルトで {{ic|systemd-logind}} を使ってセッションを管理するため、何も設定しなくても問題なく動作します。そのため、パッケージをインストールした時に設定ファイルは作成されません。SDDM にはデフォルト設定のサンプル設定ファイルを生成するコマンドがあるので、必要であれば使って下さい:
   
# sddm --example-config > /etc/sddm.conf
+
# sddm --example-config > /etc/sddm.conf.d/sddm.conf
   
 
=== 自動ログイン ===
 
=== 自動ログイン ===
32行目: 37行目:
 
KDM と同じように、SDDM は設定ファイルによって自動ログインをサポートしています、例:
 
KDM と同じように、SDDM は設定ファイルによって自動ログインをサポートしています、例:
   
  +
{{hc|/etc/sddm.conf.d/autologin.conf|2=
{{hc|
 
  +
[Autologin]
1=/etc/sddm.conf|
 
2=[Autologin]
 
 
User=john
 
User=john
 
Session=plasma.desktop
 
Session=plasma.desktop
69行目: 73行目:
 
==== テーマの編集 ====
 
==== テーマの編集 ====
   
SDDM のデフォルトのテーマディレクトリは {{ic|/usr/share/sddm/themes/}} です。作成したカスタムテーマはこのディレクトリのサブディレクトリに追加することができます。インストールされているファイルを参考に自分自身のテーマを作成してみてください。
+
SDDM のデフォルトのテーマディレクトリは {{ic|/usr/share/sddm/themes/}} です。作成したカスタムテーマはこのディレクトリのサブディレクトリに追加することができます。サブディレクトリの名前はテーマの名前と合わせる必要があります。インストールされているファイルを参考に自分自身のテーマを作成してみてください。
  +
  +
==== テーマのテスト (プレビュー) ====
  +
  +
必要であれば SDDM のテーマをプレビューすることができます。以下のようにコマンドを実行してください:
  +
  +
$ sddm-greeter --theme /usr/share/sddm/themes/breeze
  +
  +
新しいウィンドウが開いてテーマのプレビューが表示されます。
  +
  +
{{Note|プレビューモードでは、シャットダウンやサスペンド、ログインなどは出来ません。}}
   
 
==== マウスカーソル ====
 
==== マウスカーソル ====
81行目: 95行目:
 
{{ic|username.face.icon}} という名前の png 画像をデフォルトディレクトリ {{ic|/usr/share/sddm/faces/}} に配置してください。もしくはデフォルトディレクトリを別のディレクトリに変更することもできます。例:
 
{{ic|username.face.icon}} という名前の png 画像をデフォルトディレクトリ {{ic|/usr/share/sddm/faces/}} に配置してください。もしくはデフォルトディレクトリを別のディレクトリに変更することもできます。例:
   
{{hc|/etc/sddm.conf|2=
+
{{hc|/etc/sddm.conf.d/avatar.conf|2=
 
[Theme]
 
[Theme]
 
FacesDir=/var/lib/AccountsService/icons/
 
FacesDir=/var/lib/AccountsService/icons/
88行目: 102行目:
 
ホームディレクトリのルートに {{ic|.face.icon}} という名前の PNG 画像を置く方法もあります。ただし、{{ic|sddm}} ユーザーからファイルが読み込めるようにする必要があります。
 
ホームディレクトリのルートに {{ic|.face.icon}} という名前の PNG 画像を置く方法もあります。ただし、{{ic|sddm}} ユーザーからファイルが読み込めるようにする必要があります。
   
{{Note|アバター画像がシンボリックリンクの場合、リンク先のファイルに適切なファイル権限を設定してください。}}
+
{{Note|アバター画像がシンボリックリンクの場合、リンク先のファイルに適切なファイル権限を設定してください。[[#ユーザーアイコンが表示されない]]を参照。}}
   
 
=== Numlock ===
 
=== Numlock ===
98行目: 112行目:
 
[[Xrandr#設定]]を見てください。
 
[[Xrandr#設定]]を見てください。
   
=== 設定 GUI ===
+
=== DPI の設定 ===
   
  +
ディスプレイマネージャからディスプレイの PPI 設定を適切に設定できると便利です。設定ファイルで "ServerArguments" パラメータの末尾に {{ic|-dpi ''your_dpi''}} を追加してください。例:
* KDE Frameworks のシステム設定に SDDM 設定モジュールが含まれています。{{Pkg|sddm-kcm}} パッケージをインストールすることで使うことができます。
 
* Qt ベースの設定エディタを [[AUR]] の {{AUR|sddm-config-editor-git}} でインストールできます。
 
   
  +
{{hc|head=/etc/sddm.conf.d/dpi.conf|output=
=== DPI の設定 ===
 
  +
[X11]
  +
ServerArguments=-nolisten tcp -dpi 94
  +
}}
   
  +
=== HiDPI の有効化 ===
ディスプレイマネージャからディスプレイの PPI 設定を適切に設定できると便利です。{{ic|sddm.conf}} の "ServerArguments" パラメータの末尾に {{ic|-dpi %YOUR RESOLUTION}} を追加してください。例:
 
   
  +
{{note|[[HiDPI]] のサポートはバージョン 0.15 から問題が発生しています [https://github.com/sddm/sddm/issues/894]。}}
{{hc|head=/etc/sddm.conf|output=ServerArguments=-nolisten tcp -dpi 94}}
 
  +
  +
以下のファイルを作成してください:
  +
  +
{{hc|/etc/sddm.conf.d/hidpi.conf|2=
  +
[General]
  +
EnableHiDPI=true
  +
}}
   
 
== トラブルシューティング ==
 
== トラブルシューティング ==
117行目: 140行目:
 
=== SDDM が tty7 ではなく tty1 で起動する ===
 
=== SDDM が tty7 ではなく tty1 で起動する ===
   
SDDM は [http://0pointer.de/blog/projects/serial-console.html systemd の慣習] にしたがって tty1 に一番目のグラフィカルセッションを起動します。tty1 から tty6 まではテキストコンソール用にするという、昔のやり方が良い場合は、{{ic|sddm.conf}} の {{ic|[X11]}} セクションの {{ic|MinimumVT}} 変数をアンコメント・編集してください:
+
SDDM は [http://0pointer.de/blog/projects/serial-console.html systemd の慣習] にしたがって tty1 に一番目のグラフィカルセッションを起動します。tty1 から tty6 まではテキストコンソール用にするという、昔のやり方が良い場合は、設定ファイルで {{ic|[X11]}} セクションの {{ic|MinimumVT}} 変数を変更してください:
   
{{hc|/etc/sddm.conf|2=
+
{{hc|/etc/sddm.conf.d/tty.conf|2=
 
[X11]
 
[X11]
...
 
 
MinimumVT=7
 
MinimumVT=7
...
 
 
}}
 
}}
   
130行目: 151行目:
 
{{Warning|{{ic|UID}} が高すぎたり低すぎるユーザーは基本的に[[ディスプレイマネージャ]]から認識されないようになっています。}}
 
{{Warning|{{ic|UID}} が高すぎたり低すぎるユーザーは基本的に[[ディスプレイマネージャ]]から認識されないようになっています。}}
   
SDDM はデフォルトで UID が 1000 から 65000 の間のユーザーしか表示しません。使用したいユーザーの UID がこの値を下回っている場合、範囲を修正する必要があります。{{ic|sddm.conf}} を以下のように変更してください (例えば UID が 501 の場合):
+
SDDM はデフォルトで UID が 1000 から 65000 の間のユーザーしか表示しません。使用したいユーザーの UID がこの値を下回っている場合、範囲を修正する必要があります。設定ファイルで以下のように変更してください (例えば UID が 501 の場合):
   
  +
{{hc|/etc/sddm.conf.d/uid.conf|2=
{{hc|
 
  +
[Users]
1=/etc/sddm.conf|
 
2=[Users]
 
 
HideShells=/sbin/nologin,/bin/false
 
HideShells=/sbin/nologin,/bin/false
 
# Hidden users, this is if any system users fall within your range, see /etc/passwd on your system.
 
# Hidden users, this is if any system users fall within your range, see /etc/passwd on your system.
148行目: 168行目:
   
 
SDDM は {{ic|/etc/X11/xorg.conf.d/00-keyboard.conf}} で指定されたキーボードレイアウトをロードします。{{ic|localectl set-x11-keymap}} コマンドを使うことでこの設定ファイルを生成することが可能です。詳しくは [[Xorg でのキーボード設定]]を見て下さい。
 
SDDM は {{ic|/etc/X11/xorg.conf.d/00-keyboard.conf}} で指定されたキーボードレイアウトをロードします。{{ic|localectl set-x11-keymap}} コマンドを使うことでこの設定ファイルを生成することが可能です。詳しくは [[Xorg でのキーボード設定]]を見て下さい。
  +
  +
最初キーボードレイアウトが US に表示され、パスワードを入力し始めるとすぐに適当なレイアウトに切り替わる場合もあります [https://github.com/sddm/sddm/issues/202#issuecomment-76001543]。これは SDDM のバグではなく {{Pkg|libxcb}} (バージョン 1.13-1) が原因です [https://github.com/sddm/sddm/issues/202#issuecomment-133628462]。
   
 
=== ユーザーアイコンが表示されない ===
 
=== ユーザーアイコンが表示されない ===
   
SDDM はユーザーアイコンを {{ic|~/.face.icon}} あるいは {{ic|''FacesDir''/username.face.icon}} から読み込みます。
+
SDDM はユーザーアイコンを {{ic|~/.face.icon}} から読み込みます。
   
 
SDDM ユーザーからファイルが読み込めるように権限を設定してください:
 
SDDM ユーザーからファイルが読み込めるように権限を設定してください:
   
$ setfacl -m u:sddm:x /home/username
+
$ setfacl -m u:sddm:x ~/
$ setfacl -m u:sddm:r /home/username/.face.icon
+
$ setfacl -m u:sddm:r ~/.face.icon
$ setfacl -m u:sddm:r /home/username/.face
 
   
 
詳しくは [https://github.com/sgerbino/sddm#no-user-icon SDDM README: No User Icon] を参照。
 
詳しくは [https://github.com/sgerbino/sddm#no-user-icon SDDM README: No User Icon] を参照。
165行目: 186行目:
 
EDID の情報が壊れているディスプレイで [[HiDPI]] を使用した場合に発生する問題です [https://github.com/sddm/sddm/issues/692]。
 
EDID の情報が壊れているディスプレイで [[HiDPI]] を使用した場合に発生する問題です [https://github.com/sddm/sddm/issues/692]。
   
{{ic|sddm.conf}} で HiDPI を無効してみてください:
+
[[#HiDPI の有効化|HiDPI]] を有効化している場合、HiDPI を無効してみてください
   
  +
無効にしても問題が解決しない場合、Xorg の設定ファイルでスクリーンのサイズを設定してください:
{{hc|/etc/sddm.conf|2=
 
  +
{{hc|/etc/X11/xorg.conf.d/90-monitor.conf|2=
[General]
 
  +
Section "Monitor"
# Enable Qt's automatic high-DPI scaling
 
  +
Identifier "<default monitor>"
EnableHiDPI=false
 
  +
DisplaySize 345 194 # in millimeters
  +
EndSection
 
}}
 
}}
   
  +
=== ホームディレクトリが autofs の場合にロード時間が長い ===
{{AUR|sddm-git}} のインストールで問題が解決する場合もあります。
 
  +
  +
SDDM はデフォルトでユーザーのアバターとして {{ic|~/.face.icon}} ファイルを使います。ホームディレクトリが [[autofs]] の場合 (例えば [[dm-crypt]] を使っている場合)、autofs がディレクトリをマウントできないと報告するまで SDDM は60秒間待機します。
  +
  +
{{ic|/etc/sddm.conf}} を編集することでアバターを無効化することができます:
  +
  +
{{hc|/etc/sddm.conf|2=
  +
[Theme]
  +
EnableAvatars=false
  +
}}

2018年4月7日 (土) 00:27時点における版

関連記事

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 と合わせて使われる。
ノート: Wayland のサポートは完全ではありません [1]。Wayland のセッションは認識されますが、SDDM 自体は X11 で動作します。

インストール

sddm パッケージをインストールしてください。

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

設定

SDDM のデフォルト設定ファイルは /usr/lib/sddm/sddm.conf.d/sddm.conf に存在します。設定を変更するときは /etc/sddm.conf.d/ に設定ファイルを作成してください。利用可能なオプションは sddm.conf(5) を見て下さい。

(plasma グループに含まれている) sddm-kcm パッケージをインストールすることで Plasma のシステム設定から GUI で SDDM を設定できます。Qt ベースの設定エディタ (sddm-config-editor-gitAUR) も存在します。

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

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

自動ログイン

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

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

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

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

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

以下のスクリプトを追加することで 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/ です。作成したカスタムテーマはこのディレクトリのサブディレクトリに追加することができます。サブディレクトリの名前はテーマの名前と合わせる必要があります。インストールされているファイルを参考に自分自身のテーマを作成してみてください。

テーマのテスト (プレビュー)

必要であれば SDDM のテーマをプレビューすることができます。以下のようにコマンドを実行してください:

$ sddm-greeter --theme /usr/share/sddm/themes/breeze

新しいウィンドウが開いてテーマのプレビューが表示されます。

ノート: プレビューモードでは、シャットダウンやサスペンド、ログインなどは出来ません。

マウスカーソル

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

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

アバターの変更

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

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

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

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

Numlock

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

ディスプレイの回転

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

DPI の設定

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

/etc/sddm.conf.d/dpi.conf
[X11]
ServerArguments=-nolisten tcp -dpi 94

HiDPI の有効化

ノート: HiDPI のサポートはバージョン 0.15 から問題が発生しています [3]

以下のファイルを作成してください:

/etc/sddm.conf.d/hidpi.conf
[General]
EnableHiDPI=true

トラブルシューティング

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

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

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

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

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

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

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

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

/etc/sddm.conf.d/uid.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 でのキーボード設定を見て下さい。

最初キーボードレイアウトが US に表示され、パスワードを入力し始めるとすぐに適当なレイアウトに切り替わる場合もあります [4]。これは SDDM のバグではなく libxcb (バージョン 1.13-1) が原因です [5]

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

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

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

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

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

画面解像度が低すぎる

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

HiDPI を有効化している場合、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 を使っている場合)、autofs がディレクトリをマウントできないと報告するまで SDDM は60秒間待機します。

/etc/sddm.conf を編集することでアバターを無効化することができます:

/etc/sddm.conf
[Theme]
EnableAvatars=false