「SDDM」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (→Wayland で動かす: コンポジタ) |
(同期) |
||
1行目: | 1行目: | ||
[[Category:KDE]] |
[[Category:KDE]] |
||
[[Category:ディスプレイマネージャ]] |
[[Category:ディスプレイマネージャ]] |
||
+ | [[de:Login-Manager#SDDM]] |
||
[[en:SDDM]] |
[[en:SDDM]] |
||
[[fr:SDDM]] |
[[fr:SDDM]] |
||
9行目: | 10行目: | ||
{{Related|KDE}} |
{{Related|KDE}} |
||
{{Related articles end}} |
{{Related articles end}} |
||
− | [ |
+ | The [https://github.com/sddm/sddm/ Simple Desktop Display Manager] (SDDM) は[[ディスプレイマネージャ]]です。[[KDE]] Plasma と [[LXQt]] デスクトップ環境の推奨ディスプレイマネージャです。 |
− | Wikipedia より: |
+ | [[Wikipedia:ja:Simple Desktop Display Manager]] より: |
− | : |
+ | :Simple Desktop Display Manager (SDDM) は、X Window SystemとWayland向けのディスプレイマネージャである。SDDMはC++11で書かれており、QMLによるテーマをサポートしている。 |
− | {{Note|Wayland の |
+ | {{Note|Wayland のウィンドウシステムは、まだ完全にはサポートされていません: Wayland のセッションは一覧に表示されますが、SDDM は X11 で動作します。SDDM 0.20 で完全な Wayland サポートが導入されます。[https://github.com/sddm/sddm/pull/1393]}} |
== インストール == |
== インストール == |
||
− | {{Pkg|sddm}} パッケージを[[インストール]]してください。任意で [[KDE#KCM|KConfig Module |
+ | {{Pkg|sddm}} パッケージを[[インストール]]してください。任意で [[KDE#KCM|KConfig Module]] のための {{Pkg|sddm-kcm}} もインストールしてください。 |
− | + | [[ディスプレイマネージャ#ディスプレイマネージャをロードする]]に従って、ブート時に SDDM を起動させてください。 |
|
== 設定 == |
== 設定 == |
||
27行目: | 28行目: | ||
SDDM のデフォルト設定ファイルは {{ic|/usr/lib/sddm/sddm.conf.d/default.conf}} に存在します。設定を変更するときは {{ic|/etc/sddm.conf.d/}} に設定ファイルを作成してください。利用可能なオプションは {{man|5|sddm.conf}} を見て下さい。 |
SDDM のデフォルト設定ファイルは {{ic|/usr/lib/sddm/sddm.conf.d/default.conf}} に存在します。設定を変更するときは {{ic|/etc/sddm.conf.d/}} に設定ファイルを作成してください。利用可能なオプションは {{man|5|sddm.conf}} を見て下さい。 |
||
− | ({{grp|plasma}} グループに含まれている) {{pkg|sddm-kcm}} パッケージをインストールすることで Plasma のシステム設定から GUI で SDDM を設定できます。[[Qt]] ベースの設定エディタ |
+ | ({{grp|plasma}} グループに含まれている) {{pkg|sddm-kcm}} パッケージをインストールすることで Plasma のシステム設定から GUI で SDDM を設定できます。[[Qt]] ベースの設定エディタ {{AUR|sddm-config-editor-git}} も存在します。 |
− | [[systemd]] |
+ | Arch Linux は [[systemd]] を使用していて、さらに SDDM はデフォルトで {{ic|systemd-logind}} をセッション管理に使用するので、特に設定せずに機能するはずです。 |
− | |||
− | # sddm --example-config > /etc/sddm.conf.d/sddm.conf |
||
=== 自動ログイン === |
=== 自動ログイン === |
||
− | + | SDDM は設定ファイルによって自動ログインをサポートしています、例: |
|
{{hc|/etc/sddm.conf.d/autologin.conf|2= |
{{hc|/etc/sddm.conf.d/autologin.conf|2= |
||
45行目: | 44行目: | ||
上の設定だと、システムが起動した時に {{ic|john}} ユーザーで KDE Plasma セッションが起動します。利用できるセッションのタイプについては、X 用は {{ic|/usr/share/xsessions/}} で、Wayland 用は {{ic|/usr/share/wayland-sessions/}} でわかります。 |
上の設定だと、システムが起動した時に {{ic|john}} ユーザーで KDE Plasma セッションが起動します。利用できるセッションのタイプについては、X 用は {{ic|/usr/share/xsessions/}} で、Wayland 用は {{ic|/usr/share/wayland-sessions/}} でわかります。 |
||
− | KDE Plasma |
+ | KDE Plasma に自動ログインすると同時にセッションをロックするオプションは利用できません。[https://github.com/sddm/sddm/issues/306] |
− | + | 回避策として、KDE のスクリーンセーバをアクティブ化するスクリプトを自動起動に追加することができます: |
|
− | + | #!/bin/sh |
|
/usr/bin/dbus-send --session --type=method_call --dest=org.freedesktop.ScreenSaver /ScreenSaver org.freedesktop.ScreenSaver.Lock & |
/usr/bin/dbus-send --session --type=method_call --dest=org.freedesktop.ScreenSaver /ScreenSaver org.freedesktop.ScreenSaver.Lock & |
||
=== ログイン時に KDE Wallet のロックを解除 === |
=== ログイン時に KDE Wallet のロックを解除 === |
||
− | [[KDE Wallet#ログイン時に KDE ウォレットを自動的にアンロック]]を見てください。 |
+ | [[KDE Wallet#ログイン時に KDE ウォレットを自動的にアンロック]] を見てください。 |
=== テーマ設定 === |
=== テーマ設定 === |
||
− | + | {{ic|[Theme]}} セクションでテーマの設定を変更できます。Plasma の KDE システム設定を使っている場合、テーマのプレビューを表示できます。 |
|
− | デフォルトの Plasma テーマを使 |
+ | デフォルトの Plasma テーマを使うには {{ic|breeze}} に設定してください。 |
{{AUR|archlinux-themes-sddm}} など、[[AUR]] から入手できるテーマもあります。 |
{{AUR|archlinux-themes-sddm}} など、[[AUR]] から入手できるテーマもあります。 |
||
− | ==== |
+ | ==== 現在のテーマ ==== |
− | + | 現在のテーマは {{ic|Current}} で設定します。例: {{ic|1=Current=archlinux-simplyblack}}。 |
|
==== テーマの編集 ==== |
==== テーマの編集 ==== |
||
− | SDDM のデフォルトのテーマディレクトリは {{ic|/usr/share/sddm/themes/}} です。作成したカスタムテーマはこのディレクトリのサブディレクトリに追加することができます。サブディレクトリの名前はテーマの名前と |
+ | SDDM のデフォルトのテーマディレクトリは {{ic|/usr/share/sddm/themes/}} です。作成したカスタムテーマはこのディレクトリのサブディレクトリに追加することができます。サブディレクトリの名前はテーマの名前と同じである必要があります。インストールされているファイルを参考に自分自身のテーマを作成してみてください。 |
==== テーマをカスタマイズ ==== |
==== テーマをカスタマイズ ==== |
||
− | 設定ファイル |
+ | 設定ファイル {{ic|theme.conf}} の設定をオーバーライドするには、カスタムの {{ic|theme.conf.user}} ファイルを同じディレクトリに作成してください。例えば、テーマの背景を変更するには: |
{{hc|head=/usr/share/sddm/themes/''name''/theme.conf.user|output= |
{{hc|head=/usr/share/sddm/themes/''name''/theme.conf.user|output= |
||
83行目: | 82行目: | ||
==== テーマのテスト (プレビュー) ==== |
==== テーマのテスト (プレビュー) ==== |
||
− | 必要であれば SDDM のテーマをプレビューすることができます。以下のようにコマンドを実行してください: |
+ | 必要であれば SDDM のテーマをプレビューすることができます。これは、テーマを編集した際などにテーマがどのような見た目になるか分からない場合や、ログアウトせずにテーマを確認したい場合などに便利です。以下のようにコマンドを実行してください: |
− | $ sddm-greeter --theme /usr/share/sddm/themes/breeze |
+ | $ sddm-greeter --test-mode --theme /usr/share/sddm/themes/breeze |
− | 新しいウィンドウが開 |
+ | 接続されているモニタすべてに新しいウィンドウが開き、テーマのプレビューが表示されます。 |
− | {{Note|プレビューモードでは、シャットダウンやサスペンド、ログインなどは |
+ | {{Note|これはプレビューだけです。このモードでは、シャットダウンやサスペンド、ログインなどの一部のアクションは効果がありません。}} |
==== マウスカーソル ==== |
==== マウスカーソル ==== |
||
95行目: | 94行目: | ||
マウスカーソルのテーマを設定したい場合は、{{ic|CursorTheme}} を使用したいカーソルテーマに設定してください。 |
マウスカーソルのテーマを設定したい場合は、{{ic|CursorTheme}} を使用したいカーソルテーマに設定してください。 |
||
− | [[Plasma]] で使用できるマウスカーソルのテーマの名前は |
+ | [[Plasma]] で使用できるマウスカーソルのテーマの名前は、{{ic|breeze_cursors}}、{{ic|Breeze_Snow}}、そして {{ic|breeze-dark}} です。 |
− | ==== アバター |
+ | ==== ユーザアイコン (アバター) ==== |
+ | {{Out of date|設定をせずとも SDDM は {{ic|/var/lib/AccountsService/icons/}} 内のアイコンを検出します。そして、Plasma はもはや {{ic|$HOME/}} 内にファイル (以下で述べているアイコンファイルや、そのファイルへのシンボリックリンク) を作成しません。}} |
||
− | {{ic|username.face.icon}} という名前の png 画像をデフォルトディレクトリ {{ic|/usr/share/sddm/faces/}} に配置してください。もしくはデフォルトディレクトリを別のディレクトリに変更することもできます。例: |
||
+ | |||
+ | SDDM は、各ユーザの {{ic|~/.face.icon}} か、あるいは SDDM 設定ファイル内の {{ic|FacesDir}} で指定された全ユーザに共通の場所から PNG イメージのユーザアイコン (別名: "アバター") を読み込みます。設定は {{ic|/etc/sddm.conf}} に直接、あるいは {{ic|/etc/sddm.conf.d/avatar.conf}} のように {{ic|/etc/sddm.conf.d/}} 下のファイルとして保存することができます (後者が推奨されます)。 |
||
+ | |||
+ | {{ic|FacesDir}} のオプションを使用するには、設定ファイルの {{ic|FacesDir}} キーで指定された場所に各ユーザに対して {{ic|''ユーザ名''.face.icon}} という名前で PNG イメージファイルを配置してください。デフォルトの {{ic|FacesDir}} は {{ic|/usr/share/sddm/faces/}} です。ニーズに応じてデフォルトの {{ic|FacesDir}} を変更することができます。例えば以下のように: |
||
{{hc|/etc/sddm.conf.d/avatar.conf|2= |
{{hc|/etc/sddm.conf.d/avatar.conf|2= |
||
106行目: | 109行目: | ||
}} |
}} |
||
− | ホームディレクトリのルートに {{ic|.face.icon}} という名前の PNG |
+ | もう一つの方法は、ホームディレクトリのルートに {{ic|.face.icon}} という名前の PNG ファイルを置くことです。この場合、SDDM の設定ファイルを変更する必要はありません。ただし、{{ic|sddm}} ユーザがユーザアイコンの PNG イメージファイルを読むことができるようにしておく必要があります。 |
− | {{Note| |
+ | {{Note|多くの KDE バージョンで、ユーザのアイコンイメージファイルは {{ic|~/.face}} であり、{{ic|~/.face.icon}} はそのファイルへのシンボリックリンクとなっています。ユーザのアイコンイメージがシンボリックリンクである場合、シンボリックリンク先のファイルに適切なファイルパーミッションを設定する必要があります。}} |
+ | |||
+ | [[アクセス制御リスト#ACL の設定|適切なパーミッションを設定する]]には、以下を実行してください: |
||
+ | |||
+ | $ setfacl -m u:sddm:x ~/ |
||
+ | $ setfacl -m u:sddm:r ~/.face.icon |
||
+ | |||
+ | 以下を実行することで、[[アクセス制御リスト#ACL の表示|パーミッションを確認する]]ことができます: |
||
+ | |||
+ | $ getfacl ~/ |
||
+ | $ getfacl ~/.face.icon |
||
+ | |||
+ | [https://github.com/sddm/sddm#no-user-icon SDDM README: No User Icon] を参照してください。 |
||
=== Numlock === |
=== Numlock === |
||
116行目: | 131行目: | ||
=== ディスプレイの回転 === |
=== ディスプレイの回転 === |
||
− | [[Xrandr#設定]]を見てください。 |
+ | [[Xrandr#設定]] を見てください。 |
=== DPI の設定 === |
=== DPI の設定 === |
||
− | ディスプレイマネージャ |
+ | ディスプレイマネージャのレベルでディスプレイの PPI 設定を適切に設定できると便利です。[https://github.com/sddm/sddm/blob/master/README.md#custom-dpi] {{ic|ServerArguments}} の末尾にパラメータ {{ic|-dpi ''your_dpi''}} を追加する必要があります。例: |
{{hc|head=/etc/sddm.conf.d/dpi.conf|output= |
{{hc|head=/etc/sddm.conf.d/dpi.conf|output= |
||
152行目: | 167行目: | ||
これで、SDDM は仮想キーボードを開くボタンをログインスクリーンの左下の角に表示するようになります。 |
これで、SDDM は仮想キーボードを開くボタンをログインスクリーンの左下の角に表示するようになります。 |
||
− | === 指紋 |
+ | === 指紋リーダーを使う === |
− | {{Note| |
+ | {{Note|これらの変更を加える前に、あなたの指紋が登録されていることを確認してください。指紋リーダーへの対応はまだ不完全であり、この方法を使うとパスワードのみでのログインができなくなってしまうようです。}} |
− | SDDM では [[fprint]] を利用した指紋認証が可能です。{{Pkg|fprint}} をインストールし指紋署名を登録したのち、{{ic|/etc/pam.d/sddm}} の先頭に以下の行を加えてください: |
+ | SDDM では [[fprint]] を利用した指紋認証が可能です。{{Pkg|fprint}} をインストールして指紋署名を登録したのち、{{ic|/etc/pam.d/sddm}} の先頭に以下の行を加えてください: |
{{hc|/etc/pam.d/sddm| |
{{hc|/etc/pam.d/sddm| |
||
auth sufficient pam_fprintd.so}} |
auth sufficient pam_fprintd.so}} |
||
− | パスワードか指紋認証のいずれか片方を使う |
+ | パスワードか指紋認証のいずれか片方を使うには、代わりに以下の行を {{ic|/etc/pam.d/sddm}} の先頭に加えてください: |
{{hc|1=/etc/pam.d/sddm|2= |
{{hc|1=/etc/pam.d/sddm|2= |
||
167行目: | 182行目: | ||
auth sufficient pam_fprintd.so}} |
auth sufficient pam_fprintd.so}} |
||
− | KWallet は指紋リーダーを使ってロックを解除できないことに注意してください([[KDE Wallet#ログイン時に KDE ウォレットを自動的にアンロック]] をご覧ください)。しかし、1行目によりパスワードログインが自動的に KWallet を解除することが保証されます。 |
+ | KWallet は指紋リーダーを使ってロックを解除できないことに注意してください ([[KDE Wallet#ログイン時に KDE ウォレットを自動的にアンロック]] をご覧ください)。しかし、1行目の記述によりパスワードログインが自動的に KWallet を解除することが保証されます。 |
+ | {{Tip|以下を {{ic|/etc/pam.d/kde}} の先頭に追加することで、これを KDE のロックスクリーンでも動作させることができます: |
||
− | {{Tip|KDE のロックスクリーンで動作させるには、先と同じ行を {{ic|/etc/pam.d_kde}} の先頭に加えてください。 |
||
− | |||
− | また、ロックスクリーンではパスワード認証と指紋認証のいずれか片方を使うこともできます。auth セクションの先頭に以下を加えてください: |
||
{{hc|/etc/pam.d/kde| |
{{hc|/etc/pam.d/kde| |
||
auth sufficient pam_unix.so try_first_pass likeauth nullok |
auth sufficient pam_unix.so try_first_pass likeauth nullok |
||
− | auth sufficient pam_fprintd.so |
+ | auth sufficient pam_fprintd.so}} |
+ | |||
+ | 1行目が先の {{ic|/etc/pam.d/sddm}} の対応する設定と異なることがわかります。KDE のロックスクリーンは KWallet の pam モジュールを実行する必要がないからです。 |
||
}} |
}} |
||
− | |||
− | 1行目が先の {{ic|/etc/pam.d/sddm}} の対応する設定と異なることがわかります。KDE のロックスクリーンは KWallet の pam モジュールを実行する必要がないからです。}} |
||
パスワード欄を空にして {{ic|Enter}} キーを押すと、指紋認証が開始されます。 |
パスワード欄を空にして {{ic|Enter}} キーを押すと、指紋認証が開始されます。 |
||
186行目: | 199行目: | ||
SDDM は Wayland で rootless に動かすことができます。ただし、今のところ {{AUR|sddm-git}} パッケージを使っているときのみです。 |
SDDM は Wayland で rootless に動かすことができます。ただし、今のところ {{AUR|sddm-git}} パッケージを使っているときのみです。 |
||
− | 新しい設定ファイルを {{ic|/etc/sddm.conf.d/}} ディレクトリに作成し、名前は {{ic|/etc/sddm.conf.d/10-wayland.conf}} のようにしてください。 |
+ | 新しい設定ファイルを {{ic|/etc/sddm.conf.d/}} ディレクトリに作成し、名前は {{ic|/etc/sddm.conf.d/10-wayland.conf}} のようなものにしてください。 |
− | そして、その新しいファイルに以下の内容を追加し |
+ | そして、その新しいファイルに以下の内容を追加してください: |
{{hc|/etc/sddm.conf.d/10-wayland.conf|2= |
{{hc|/etc/sddm.conf.d/10-wayland.conf|2= |
||
198行目: | 211行目: | ||
CompositorCommand=}} |
CompositorCommand=}} |
||
− | 次に、SDDM を |
+ | 次に、SDDM をレンダリングするための Wayland のコンポジタ (例えば、[[KDE]] の KWin コンポジタ) が必要です。{{ic|CompositorCommand}} へのパラメータとしてコンポジタのプログラムや関連する引数を入力してください。 |
==== KDE / KWin ==== |
==== KDE / KWin ==== |
||
− | {{Warning|SDDM は KWin によって別のウインドウとして扱われるので、ログインすることによりそのウインドウを閉じることになります。ゆえに、'''ログアウト'''や'''ユーザの切り替え'''は望ましくない動作を引き起こします。}} |
+ | {{Warning|SDDM は KWin によって個別のウインドウとして扱われるので、ログインすることによりそのウインドウを閉じることになります。ゆえに、'''ログアウト'''や'''ユーザの切り替え'''は望ましくない動作を引き起こします。}} |
− | {{Tip|KDE Wayland のディスプレイの設定( |
+ | {{Tip|KDE Wayland のディスプレイの設定 (例:モニターレイアウト、解像度など) に対する如何なる変更も SDDM に対しては適用されません。設定を適用させるには、KDE の ''KDE システム設定'' を開き、''起動と終了 > ログイン画面 (SDDM)'' へ行き、"''Plasma 設定を適用...''" をクリックしてください。この操作を行うためには許可が必要です。}} |
− | 以下 |
+ | 以下を {{ic|CompositorCommand}} へのパラメータとして、先に作成した SDDM の設定ファイル (例: {{ic|/etc/sddm.conf.d/10-wayland.conf}}) に追加してください: |
{{hc|/etc/sddm.conf.d/10-wayland.conf|2= |
{{hc|/etc/sddm.conf.d/10-wayland.conf|2= |
||
212行目: | 225行目: | ||
CompositorCommand=kwin_wayland --no-lockscreen}} |
CompositorCommand=kwin_wayland --no-lockscreen}} |
||
− | 仮想キーボードのサポートを有効化するためには(例えば、{{pkg|qt5-virtualkeyboard}} や {{pkg|maliit-keyboard}} を使う場合)、以下のように {{ic|--inputmethod}} フラグに適切なキーボードを指定して、{{ic|kwin_wayland}} コマンドに追加してください(必要に応じて、{{ic|maliit-keyboard}} を {{ic|qtvirtualkeyboard}} に置き換えてください): |
+ | 仮想キーボードのサポートを有効化するためには (例えば、{{pkg|qt5-virtualkeyboard}} や {{pkg|maliit-keyboard}} を使う場合)、以下のように {{ic|--inputmethod}} フラグに適切なキーボードを指定して、{{ic|kwin_wayland}} コマンドに追加してください (必要に応じて、{{ic|maliit-keyboard}} を {{ic|qtvirtualkeyboard}} に置き換えてください): |
{{hc|/etc/sddm.conf.d/10-wayland.conf|2= |
{{hc|/etc/sddm.conf.d/10-wayland.conf|2= |
||
220行目: | 233行目: | ||
== トラブルシューティング == |
== トラブルシューティング == |
||
− | === greeterが表示されず、カーソルのみの黒画面 === |
+ | === greeter が表示されず、カーソルのみの黒画面 === |
利用可能なディスクの空き領域が存在しない場合、greeter はクラッシュします。{{ic|df -h}} でディスクの空き領域を確認してください。 |
利用可能なディスクの空き領域が存在しない場合、greeter はクラッシュします。{{ic|df -h}} でディスクの空き領域を確認してください。 |
||
− | ディスクの空き領域の問題でないとしたら、[https://github.com/sddm/sddm/issues/1179 バグ]のせいかもしれません。[[Getty#インストール|他の TTY に切り替えて]]、{{ic|loginctl unlock-session ''session_id''}} を実行するか、SDDM を[[ |
+ | ディスクの空き領域の問題でないとしたら、[https://github.com/sddm/sddm/issues/1179 バグ]のせいかもしれません。[[Getty#インストール|他の TTY に切り替えて]]、{{ic|loginctl unlock-session ''session_id''}} を実行するか、SDDM を[[再起動]]してみてください。 |
=== SDDM が greeter を表示するのに時間がかかる === |
=== SDDM が greeter を表示するのに時間がかかる === |
||
− | エントロピープールが小さいと SDDM のロードに長い時間がかかる可能性があります([https://github.com/sddm/sddm/issues/1036 バグレポート])。[[乱数生成]]にエントロピープールを大きくする方法があります。 |
+ | エントロピープールが小さいと SDDM のロードに長い時間がかかる可能性があります ([https://github.com/sddm/sddm/issues/1036 バグレポート])。[[乱数生成]] の記事にエントロピープールを大きくする方法があります。 |
=== ログイン後にフリーズする === |
=== ログイン後にフリーズする === |
||
− | {{ic|~/.Xauthority}} を削除してみてください。 |
+ | {{ic|~/.Xauthority}} を削除し、再起動せずに再ログインしてみてください。ログインせずに再起動すると、このファイルが再び作成されてしまい、問題が解決されません。 |
=== SDDM が tty7 ではなく tty1 で起動する === |
=== SDDM が tty7 ではなく tty1 で起動する === |
||
− | SDDM は [http://0pointer.de/blog/projects/serial-console.html systemd の慣習] |
+ | SDDM は [http://0pointer.de/blog/projects/serial-console.html systemd の慣習]に従って tty1 に最初のグラフィカルセッションを起動します。tty1 から tty6 まではテキストコンソール用にするという昔のやり方が良い場合は、設定ファイルで {{ic|[X11]}} セクションの {{ic|MinimumVT}} 変数を変更してください: |
{{hc|/etc/sddm.conf.d/tty.conf|2= |
{{hc|/etc/sddm.conf.d/tty.conf|2= |
||
243行目: | 256行目: | ||
}} |
}} |
||
− | === ユーザ |
+ | === 1つ以上のユーザが greeter に表示されない === |
− | {{Warning| |
+ | {{Warning|一般に、[https://systemd.io/UIDS-GIDS/ 1000 未満あるいは 60513 より大きい UID] に設定されているユーザは[[ディスプレイマネージャ]]に公開すべきではありません。}} |
− | + | デフォルトでは、SDDM は 1000 から 60513 の範囲内の UID を持つユーザのみを表示するように設定されています。表示したいユーザの UID がこの範囲の外である場合、この範囲を変更しなければなりません。 |
|
− | 例えば、 |
+ | 例えば、501 の UID を持つユーザの場合、{{ic|MinimumUid}} を設定し、システムユーザによって使用されるシェルを持つユーザは隠してください: |
{{hc|/etc/sddm.conf.d/uid.conf|2= |
{{hc|/etc/sddm.conf.d/uid.conf|2= |
||
257行目: | 270行目: | ||
}} |
}} |
||
− | + | 高い UID を持つユーザの場合は {{ic|MaximumUid}} を適切な値に変更してください。 |
|
+ | === ユーザのアバターが greeter に表示されない === |
||
− | {{hc|/etc/sddm.conf.d/uid.conf|2= |
||
+ | |||
− | [Users] |
||
+ | ユーザの数が {{ic|DisableAvatarsThreshold}} を超過した場合や、アバターが {{ic|EnableAvatars}} パラメータによって有効化されていない場合、ユーザのアバターは表示されません。これを回避するには、以下の記述を sddm の設定に追加してください: |
||
− | MaximumUid=60513 |
||
+ | |||
+ | {{hc|/etc/sddm.conf.d/avatars.conf|2= |
||
+ | [Theme] |
||
+ | EnableAvatars=true # enable avatars |
||
+ | DisableAvatarsThreshold=7 # set the threshold for the number of users. Avatars are not shown if this threshold is exceeded. |
||
}} |
}} |
||
=== SDDM が US キーボードのレイアウトしかロードしない === |
=== SDDM が US キーボードのレイアウトしかロードしない === |
||
− | 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 でのキーボード設定]] を見て下さい。 |
+ | SDDM でのみ効果を持ち、後続のセッションには適用されないキーボードレイアウトを設定するもう一つの方法は、SDDM のスタートアップスクリプト ({{ic|/usr/share/sddm/scripts/Xsetup}} にあり) で ''setxkbmap'' コマンドを実行することです。例は [[Xorg でのキーボード設定#setxkbmap を使う]] を参照してください。 |
||
− | 最初キーボードレイアウトが 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}} から読み込みます。 |
||
− | |||
− | SDDM ユーザーからファイルが読み込めるように権限を設定してください: |
||
− | |||
− | $ setfacl -m u:sddm:x ~/ |
||
− | $ setfacl -m u:sddm:r ~/.face.icon |
||
+ | また、SDDM は間違ってレイアウトを US キーボードとして表示することもありますが、パスワードを打ち始めると即座に正しいレイアウトに変わります [https://github.com/sddm/sddm/issues/202#issuecomment-76001543]。これは SDDM のバグではなく、[[X]] のバグのようです。[https://gitlab.freedesktop.org/xorg/xserver/-/issues/257] |
||
− | 詳しくは [https://github.com/sddm/sddm#no-user-icon SDDM README: No User Icon] を参照。 |
||
=== 画面解像度が低すぎる === |
=== 画面解像度が低すぎる === |
||
− | EDID の情報が壊れているディスプレイで [[HiDPI]] を使用した場合に発生する問題です [https://github.com/sddm/sddm/issues/692]。 |
+ | [[Wikipedia:Extended Display Identification Data|EDID]] の情報が壊れているディスプレイで [[HiDPI]] を使用した場合に発生する可能性のある問題です [https://github.com/sddm/sddm/issues/692]。[[#HiDPI の有効化|HiDPI]] を有効化している場合、HiDPI を無効にしてみてください。 |
+ | 無効にしても問題が解決しない場合、Xorg の設定ファイルでスクリーンのサイズを設定してみることができます: |
||
− | [[#HiDPI の有効化|HiDPI]] を有効化している場合、HiDPI を無効にしてみてください。 |
||
− | 無効にしても問題が解決しない場合、Xorg の設定ファイルでスクリーンのサイズを設定してください: |
||
{{hc|/etc/X11/xorg.conf.d/90-monitor.conf|2= |
{{hc|/etc/X11/xorg.conf.d/90-monitor.conf|2= |
||
Section "Monitor" |
Section "Monitor" |
||
299行目: | 307行目: | ||
SDDM はデフォルトでユーザーのアバターとして {{ic|~/.face.icon}} ファイルを使います。ホームディレクトリが [[autofs]] の場合 (例えば [[dm-crypt]] を使っている場合)、autofs がディレクトリをマウントできないと報告するまで SDDM は60秒間待機します。 |
SDDM はデフォルトでユーザーのアバターとして {{ic|~/.face.icon}} ファイルを使います。ホームディレクトリが [[autofs]] の場合 (例えば [[dm-crypt]] を使っている場合)、autofs がディレクトリをマウントできないと報告するまで SDDM は60秒間待機します。 |
||
− | + | 以下の設定ファイルを作成することでアバターを無効化することができます: |
|
− | {{hc|/etc/sddm.conf|2= |
+ | {{hc|/etc/sddm.conf.d/avatar.conf|2= |
[Theme] |
[Theme] |
||
EnableAvatars=false |
EnableAvatars=false |
||
}} |
}} |
||
− | === X authority ( |
+ | === X authority (別名 MIT-MAGIC-COOKIE) ファイル === |
− | [https://github.com/sddm/sddm/issues/622]で詳細が言及されているように、SDDM は 認証ファイルのためにランダムな新しい UUID を使います。そのため、そのファイルを見つけるために |
+ | [https://github.com/sddm/sddm/issues/622] で詳細が言及されているように、SDDM は 認証ファイルのためにランダムな新しい UUID を使います。そのため、そのファイルを見つけるためにスクリプトを使うことができます: |
# find /var/run/sddm/ -type f |
# find /var/run/sddm/ -type f |
||
− | ログイン中のユーザーがいない時に [[x11vnc]] を開始する必要がある場合、このスクリプトが必要です。例えば: |
+ | ログイン中のユーザーがいない時に [[x11vnc]] を開始する必要がある場合、このスクリプトが必要である場合があります。例えば: |
# x11vnc -display :0 -auth "$( find /var/run/sddm/ -type f )" |
# x11vnc -display :0 -auth "$( find /var/run/sddm/ -type f )" |
||
− | === |
+ | === マルチモニタの環境で greeter が重複する === |
− | 複数スクリーンの |
+ | 複数スクリーンの環境で X モニターのレイアウトが正しく設定されずに greeter が重複することがあります。この問題を解決するためには、以下のスクリプトを追加して、sddm greeter のレイアウトを左から右に並べてください: |
{{hc|/usr/share/sddm/scripts/Xsetup|2= |
{{hc|/usr/share/sddm/scripts/Xsetup|2= |
||
327行目: | 335行目: | ||
done |
done |
||
}} |
}} |
||
+ | |||
+ | === 予期しないディスプレイにログイン画面が表示される === |
||
+ | |||
+ | 複数のディスプレイが接続されている場合に、SDDM のログインセッションがプライマリディスプレイではないディスプレイに表示されることがあります。サブディスプレイが回転されているがプライマリディスプレイはそうなっていない場合、この問題は腹立たしいでしょう。この問題に対するシンプルな修正法は、''xrandr'' を使って、ログインセッションが ''Xsetup'' スクリプトを使用する前にディスプレイを設定することです。例えば、以下では、''xrandr'' は、2つのディスプレイが接続されており、2つ目のディスプレイ (DP-2) はプライマリディスプレイ (DP-4) の左にあると報告しています。 |
||
+ | |||
+ | # 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 |
||
+ | |||
+ | 以下の ''Xsetup'' は、上記のセットアップをログインウィンドウのために再作成します: |
||
+ | {{hc|/usr/share/sddm/scripts/Xsetup|2= |
||
+ | #!/bin/sh |
||
+ | # Xsetup - run as root before the login dialog appears |
||
+ | |||
+ | xrandr --output DP-4 --auto --primary |
||
+ | xrandr --output DP-2 --left-of DP-4 --rotate left --noprimary |
||
+ | }} |
||
+ | |||
+ | === KDE Plasma Wayland がシャットダウンと再起動の時にハングする === |
||
+ | |||
+ | KDE Plasma Wayland セッションにおいて、シャットダウンや再起動のコマンドが発行されても SDDM (リリース 0.19.0-9) が停止しないケースがあります。その結果、[[systemd]] が SDDM の停止を待つ間、シャットダウンのプロセスが止まってしまいます。このバグはすでに修正されていますが、新しい SDDM のバージョンがリリースされるまで、いくつかの回避策を試すことができます: |
||
+ | |||
+ | * {{AUR|sddm-git}} をインストールする。問題を修正するコミットが含まれています。 |
||
+ | |||
+ | * シャットダウンのプロセスが止まっているときに {{ic|Ctrl+Alt+F1}} を押して SDDM の tty に切り替えることで SDDM を適切に停止させることができます。 |
||
+ | |||
+ | * Plasma からログアウトして、SDDM から適切にシャットダウンや再起動をすることができます。 |
||
+ | |||
+ | * デフォルトでは、[[systemd]] は SDDM を SIGKILL で強制終了するまで90秒待機します。しかし、{{ic|sddm.service}} サービスを[[ドロップインファイル]]で[[編集]]することで、この時間をより短くすることができます。 |
||
+ | |||
+ | {{hc|/etc/systemd/system/sddm.service.d/override.conf|2= |
||
+ | [Service] |
||
+ | TimeoutStopSec=5s |
||
+ | }} |
||
+ | |||
+ | このバグに関する詳細は [https://github.com/sddm/sddm/issues/1476] や [https://bugs.kde.org/show_bug.cgi?id=445449] を参照してください。 |
||
+ | |||
+ | === NVIDIA グラフィックカードでログアウト後に黒画面 === |
||
+ | |||
+ | ユーザからログアウトした後に、完全な黒画面や、カーソル/ディスプレイデバイスのロゴだけの黒画面が発生する場合があります。これは、{{ic|sddm.service}} が NVIDIA ドライバよりも早く起動してしまうため、発生します。[[NVIDIA#早期ロード|KMS の早期ロード]] を検討してください。 |
||
+ | |||
+ | {{TranslationStatus|SDDM|2023-05-10|776774}} |
2023年5月10日 (水) 13:43時点における版
関連記事
The Simple Desktop Display Manager (SDDM) はディスプレイマネージャです。KDE Plasma と LXQt デスクトップ環境の推奨ディスプレイマネージャです。
Wikipedia:ja:Simple Desktop Display Manager より:
- Simple Desktop Display Manager (SDDM) は、X Window SystemとWayland向けのディスプレイマネージャである。SDDMはC++11で書かれており、QMLによるテーマをサポートしている。
目次
- 1 インストール
- 2 設定
- 3 トラブルシューティング
- 3.1 greeter が表示されず、カーソルのみの黒画面
- 3.2 SDDM が greeter を表示するのに時間がかかる
- 3.3 ログイン後にフリーズする
- 3.4 SDDM が tty7 ではなく tty1 で起動する
- 3.5 1つ以上のユーザが greeter に表示されない
- 3.6 ユーザのアバターが greeter に表示されない
- 3.7 SDDM が US キーボードのレイアウトしかロードしない
- 3.8 画面解像度が低すぎる
- 3.9 ホームディレクトリが autofs の場合にロード時間が長い
- 3.10 X authority (別名 MIT-MAGIC-COOKIE) ファイル
- 3.11 マルチモニタの環境で greeter が重複する
- 3.12 予期しないディスプレイにログイン画面が表示される
- 3.13 KDE Plasma Wayland がシャットダウンと再起動の時にハングする
- 3.14 NVIDIA グラフィックカードでログアウト後に黒画面
インストール
sddm パッケージをインストールしてください。任意で KConfig Module のための sddm-kcm もインストールしてください。
ディスプレイマネージャ#ディスプレイマネージャをロードするに従って、ブート時に SDDM を起動させてください。
設定
SDDM のデフォルト設定ファイルは /usr/lib/sddm/sddm.conf.d/default.conf
に存在します。設定を変更するときは /etc/sddm.conf.d/
に設定ファイルを作成してください。利用可能なオプションは sddm.conf(5) を見て下さい。
(plasma グループに含まれている) sddm-kcm パッケージをインストールすることで Plasma のシステム設定から GUI で SDDM を設定できます。Qt ベースの設定エディタ sddm-config-editor-gitAUR も存在します。
Arch Linux は systemd を使用していて、さらに SDDM はデフォルトで systemd-logind
をセッション管理に使用するので、特に設定せずに機能するはずです。
自動ログイン
SDDM は設定ファイルによって自動ログインをサポートしています、例:
/etc/sddm.conf.d/autologin.conf
[Autologin] User=john Session=plasma
上の設定だと、システムが起動した時に john
ユーザーで KDE Plasma セッションが起動します。利用できるセッションのタイプについては、X 用は /usr/share/xsessions/
で、Wayland 用は /usr/share/wayland-sessions/
でわかります。
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#ログイン時に KDE ウォレットを自動的にアンロック を見てください。
テーマ設定
[Theme]
セクションでテーマの設定を変更できます。Plasma の KDE システム設定を使っている場合、テーマのプレビューを表示できます。
デフォルトの Plasma テーマを使うには breeze
に設定してください。
archlinux-themes-sddmAUR など、AUR から入手できるテーマもあります。
現在のテーマ
現在のテーマは Current
で設定します。例: Current=archlinux-simplyblack
。
テーマの編集
SDDM のデフォルトのテーマディレクトリは /usr/share/sddm/themes/
です。作成したカスタムテーマはこのディレクトリのサブディレクトリに追加することができます。サブディレクトリの名前はテーマの名前と同じである必要があります。インストールされているファイルを参考に自分自身のテーマを作成してみてください。
テーマをカスタマイズ
設定ファイル theme.conf
の設定をオーバーライドするには、カスタムの theme.conf.user
ファイルを同じディレクトリに作成してください。例えば、テーマの背景を変更するには:
/usr/share/sddm/themes/name/theme.conf.user
[General] background=/path/to/background.png
テーマのテスト (プレビュー)
必要であれば SDDM のテーマをプレビューすることができます。これは、テーマを編集した際などにテーマがどのような見た目になるか分からない場合や、ログアウトせずにテーマを確認したい場合などに便利です。以下のようにコマンドを実行してください:
$ sddm-greeter --test-mode --theme /usr/share/sddm/themes/breeze
接続されているモニタすべてに新しいウィンドウが開き、テーマのプレビューが表示されます。
マウスカーソル
マウスカーソルのテーマを設定したい場合は、CursorTheme
を使用したいカーソルテーマに設定してください。
Plasma で使用できるマウスカーソルのテーマの名前は、breeze_cursors
、Breeze_Snow
、そして breeze-dark
です。
ユーザアイコン (アバター)
SDDM は、各ユーザの ~/.face.icon
か、あるいは SDDM 設定ファイル内の FacesDir
で指定された全ユーザに共通の場所から PNG イメージのユーザアイコン (別名: "アバター") を読み込みます。設定は /etc/sddm.conf
に直接、あるいは /etc/sddm.conf.d/avatar.conf
のように /etc/sddm.conf.d/
下のファイルとして保存することができます (後者が推奨されます)。
FacesDir
のオプションを使用するには、設定ファイルの FacesDir
キーで指定された場所に各ユーザに対して ユーザ名.face.icon
という名前で PNG イメージファイルを配置してください。デフォルトの FacesDir
は /usr/share/sddm/faces/
です。ニーズに応じてデフォルトの FacesDir
を変更することができます。例えば以下のように:
/etc/sddm.conf.d/avatar.conf
[Theme] FacesDir=/var/lib/AccountsService/icons/
もう一つの方法は、ホームディレクトリのルートに .face.icon
という名前の PNG ファイルを置くことです。この場合、SDDM の設定ファイルを変更する必要はありません。ただし、sddm
ユーザがユーザアイコンの PNG イメージファイルを読むことができるようにしておく必要があります。
適切なパーミッションを設定するには、以下を実行してください:
$ setfacl -m u:sddm:x ~/ $ setfacl -m u:sddm:r ~/.face.icon
以下を実行することで、パーミッションを確認することができます:
$ getfacl ~/ $ getfacl ~/.face.icon
SDDM README: No User Icon を参照してください。
Numlock
Numlock を強制的に有効にしたい場合、[General]
セクションに Numlock=on
と設定してください。
ディスプレイの回転
Xrandr#設定 を見てください。
DPI の設定
ディスプレイマネージャのレベルでディスプレイの PPI 設定を適切に設定できると便利です。[3] ServerArguments
の末尾にパラメータ -dpi your_dpi
を追加する必要があります。例:
/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 をインストールして指紋署名を登録したのち、/etc/pam.d/sddm
の先頭に以下の行を加えてください:
/etc/pam.d/sddm
auth sufficient pam_fprintd.so
パスワードか指紋認証のいずれか片方を使うには、代わりに以下の行を /etc/pam.d/sddm
の先頭に加えてください:
/etc/pam.d/sddm
auth [success=1 new_authtok_reqd=1 default=ignore] pam_unix.so try_first_pass likeauth nullok auth sufficient pam_fprintd.so
KWallet は指紋リーダーを使ってロックを解除できないことに注意してください (KDE Wallet#ログイン時に KDE ウォレットを自動的にアンロック をご覧ください)。しかし、1行目の記述によりパスワードログインが自動的に KWallet を解除することが保証されます。
パスワード欄を空にして Enter
キーを押すと、指紋認証が開始されます。
Wayland で動かす
SDDM は Wayland で rootless に動かすことができます。ただし、今のところ sddm-gitAUR パッケージを使っているときのみです。
新しい設定ファイルを /etc/sddm.conf.d/
ディレクトリに作成し、名前は /etc/sddm.conf.d/10-wayland.conf
のようなものにしてください。
そして、その新しいファイルに以下の内容を追加してください:
/etc/sddm.conf.d/10-wayland.conf
[General] DisplayServer=wayland GreeterEnvironment=QT_WAYLAND_SHELL_INTEGRATION=layer-shell [Wayland] CompositorCommand=
次に、SDDM をレンダリングするための Wayland のコンポジタ (例えば、KDE の KWin コンポジタ) が必要です。CompositorCommand
へのパラメータとしてコンポジタのプログラムや関連する引数を入力してください。
KDE / KWin
以下を CompositorCommand
へのパラメータとして、先に作成した SDDM の設定ファイル (例: /etc/sddm.conf.d/10-wayland.conf
) に追加してください:
/etc/sddm.conf.d/10-wayland.conf
[Wayland] CompositorCommand=kwin_wayland --no-lockscreen
仮想キーボードのサポートを有効化するためには (例えば、qt5-virtualkeyboard や maliit-keyboard を使う場合)、以下のように --inputmethod
フラグに適切なキーボードを指定して、kwin_wayland
コマンドに追加してください (必要に応じて、maliit-keyboard
を qtvirtualkeyboard
に置き換えてください):
/etc/sddm.conf.d/10-wayland.conf
[Wayland] CompositorCommand=kwin_wayland --no-lockscreen --inputmethod maliit-keyboard
トラブルシューティング
greeter が表示されず、カーソルのみの黒画面
利用可能なディスクの空き領域が存在しない場合、greeter はクラッシュします。df -h
でディスクの空き領域を確認してください。
ディスクの空き領域の問題でないとしたら、バグのせいかもしれません。他の TTY に切り替えて、loginctl unlock-session session_id
を実行するか、SDDM を再起動してみてください。
SDDM が greeter を表示するのに時間がかかる
エントロピープールが小さいと SDDM のロードに長い時間がかかる可能性があります (バグレポート)。乱数生成 の記事にエントロピープールを大きくする方法があります。
ログイン後にフリーズする
~/.Xauthority
を削除し、再起動せずに再ログインしてみてください。ログインせずに再起動すると、このファイルが再び作成されてしまい、問題が解決されません。
SDDM が tty7 ではなく tty1 で起動する
SDDM は systemd の慣習に従って tty1 に最初のグラフィカルセッションを起動します。tty1 から tty6 まではテキストコンソール用にするという昔のやり方が良い場合は、設定ファイルで [X11]
セクションの MinimumVT
変数を変更してください:
/etc/sddm.conf.d/tty.conf
[X11] MinimumVT=7
1つ以上のユーザが greeter に表示されない
デフォルトでは、SDDM は 1000 から 60513 の範囲内の UID を持つユーザのみを表示するように設定されています。表示したいユーザの UID がこの範囲の外である場合、この範囲を変更しなければなりません。
例えば、501 の UID を持つユーザの場合、MinimumUid
を設定し、システムユーザによって使用されるシェルを持つユーザは隠してください:
/etc/sddm.conf.d/uid.conf
[Users] HideShells=/usr/bin/nologin,/sbin/nologin,/bin/false,/usr/bin/git-shell MinimumUid=500
高い UID を持つユーザの場合は MaximumUid
を適切な値に変更してください。
ユーザのアバターが greeter に表示されない
ユーザの数が DisableAvatarsThreshold
を超過した場合や、アバターが EnableAvatars
パラメータによって有効化されていない場合、ユーザのアバターは表示されません。これを回避するには、以下の記述を sddm の設定に追加してください:
/etc/sddm.conf.d/avatars.conf
[Theme] EnableAvatars=true # enable avatars DisableAvatarsThreshold=7 # set the threshold for the number of users. Avatars are not shown if this threshold is exceeded.
SDDM が US キーボードのレイアウトしかロードしない
SDDM は /etc/X11/xorg.conf.d/00-keyboard.conf
で指定されたキーボードレイアウトをロードします。localectl set-x11-keymap
コマンドを使うことでこの設定ファイルを生成することが可能です。詳しくは Xorg でのキーボード設定 を見て下さい。
SDDM でのみ効果を持ち、後続のセッションには適用されないキーボードレイアウトを設定するもう一つの方法は、SDDM のスタートアップスクリプト (/usr/share/sddm/scripts/Xsetup
にあり) で setxkbmap コマンドを実行することです。例は Xorg でのキーボード設定#setxkbmap を使う を参照してください。
また、SDDM は間違ってレイアウトを US キーボードとして表示することもありますが、パスワードを打ち始めると即座に正しいレイアウトに変わります [4]。これは SDDM のバグではなく、X のバグのようです。[5]
画面解像度が低すぎる
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.d/avatar.conf
[Theme] EnableAvatars=false
X authority (別名 MIT-MAGIC-COOKIE) ファイル
[7] で詳細が言及されているように、SDDM は 認証ファイルのためにランダムな新しい UUID を使います。そのため、そのファイルを見つけるためにスクリプトを使うことができます:
# find /var/run/sddm/ -type f
ログイン中のユーザーがいない時に x11vnc を開始する必要がある場合、このスクリプトが必要である場合があります。例えば:
# x11vnc -display :0 -auth "$( find /var/run/sddm/ -type f )"
マルチモニタの環境で greeter が重複する
複数スクリーンの環境で X モニターのレイアウトが正しく設定されずに greeter が重複することがあります。この問題を解決するためには、以下のスクリプトを追加して、sddm greeter のレイアウトを左から右に並べてください:
/usr/share/sddm/scripts/Xsetup
for next in $(xrandr --listmonitors | grep -E " *[0-9]+:.*" | cut -d" " -f6); do [ -z "$current" ] && current=$next && continue xrandr --output $current --auto --output $next --auto --right-of $current current=$next done
予期しないディスプレイにログイン画面が表示される
複数のディスプレイが接続されている場合に、SDDM のログインセッションがプライマリディスプレイではないディスプレイに表示されることがあります。サブディスプレイが回転されているがプライマリディスプレイはそうなっていない場合、この問題は腹立たしいでしょう。この問題に対するシンプルな修正法は、xrandr を使って、ログインセッションが Xsetup スクリプトを使用する前にディスプレイを設定することです。例えば、以下では、xrandr は、2つのディスプレイが接続されており、2つ目のディスプレイ (DP-2) はプライマリディスプレイ (DP-4) の左にあると報告しています。
# 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
以下の Xsetup は、上記のセットアップをログインウィンドウのために再作成します:
/usr/share/sddm/scripts/Xsetup
#!/bin/sh # Xsetup - run as root before the login dialog appears xrandr --output DP-4 --auto --primary xrandr --output DP-2 --left-of DP-4 --rotate left --noprimary
KDE Plasma Wayland がシャットダウンと再起動の時にハングする
KDE Plasma Wayland セッションにおいて、シャットダウンや再起動のコマンドが発行されても SDDM (リリース 0.19.0-9) が停止しないケースがあります。その結果、systemd が SDDM の停止を待つ間、シャットダウンのプロセスが止まってしまいます。このバグはすでに修正されていますが、新しい SDDM のバージョンがリリースされるまで、いくつかの回避策を試すことができます:
- sddm-gitAUR をインストールする。問題を修正するコミットが含まれています。
- シャットダウンのプロセスが止まっているときに
Ctrl+Alt+F1
を押して SDDM の tty に切り替えることで SDDM を適切に停止させることができます。
- Plasma からログアウトして、SDDM から適切にシャットダウンや再起動をすることができます。
- デフォルトでは、systemd は SDDM を SIGKILL で強制終了するまで90秒待機します。しかし、
sddm.service
サービスをドロップインファイルで編集することで、この時間をより短くすることができます。
/etc/systemd/system/sddm.service.d/override.conf
[Service] TimeoutStopSec=5s
このバグに関する詳細は [8] や [9] を参照してください。
NVIDIA グラフィックカードでログアウト後に黒画面
ユーザからログアウトした後に、完全な黒画面や、カーソル/ディスプレイデバイスのロゴだけの黒画面が発生する場合があります。これは、sddm.service
が NVIDIA ドライバよりも早く起動してしまうため、発生します。KMS の早期ロード を検討してください。