「ディスプレイマネージャ」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(カテゴリを修正)
(→‎ディスプレイマネージャをロードする: 内部リンクを日本語版に修正)
49行目: 49行目:
 
グラフィカルログインを有効にするには、適切なシステムサービスを[[有効]]にしてください。例えば、[[SDDM]]の場合、{{ic|sddm.service}} を有効にします。
 
グラフィカルログインを有効にするには、適切なシステムサービスを[[有効]]にしてください。例えば、[[SDDM]]の場合、{{ic|sddm.service}} を有効にします。
   
これだけで動くはずですが、動かない場合、カスタム {{ic|default.target}} シンボリックリンクをリセットして、デフォルトの {{ic|graphical.target}} を指すようにする必要があるかもいれません。[[systemd#Change default target to boot into]] を参照してください。
+
これだけで動くはずですが、動かない場合、カスタム {{ic|default.target}} シンボリックリンクをリセットして、デフォルトの {{ic|graphical.target}} を指すようにする必要があるかもいれません。[[systemd#起動時のデフォルトターゲットを変更する]] を参照してください。
   
 
SDDM を [[有効]]にした後、シンボリックリンク {{ic|display-manager.service}} を {{ic|/etc/systemd/system/}} に設定する必要があります。古いシンボリックリンクを上書きするために、{{ic|--force}} を使う必要があるかもしれません。
 
SDDM を [[有効]]にした後、シンボリックリンク {{ic|display-manager.service}} を {{ic|/etc/systemd/system/}} に設定する必要があります。古いシンボリックリンクを上書きするために、{{ic|--force}} を使う必要があるかもしれません。

2021年10月22日 (金) 10:44時点における版

関連記事

ディスプレイマネージャ、もしくはログインマネージャは、起動の最後に標準のシェルにかわって表示されるグラフィカルインターフェースです。ウィンドウマネージャデスクトップ環境の数が多くあるように、様々な種類のディスプレイマネージャがあります。さらに、それぞれのマネージャをカスタマイズしたりテーマを選択したりすることが可能です。

ディスプレイマネージャ一覧

コンソール

  • CDMBash で記述されたログインマネージャー.
https://github.com/ghost1227/cdm || cdm-gitAUR
  • Console TDM — Bash だけで書かれた xorg-xinit の拡張。
https://github.com/dopsi/console-tdm || console-tdmAUR
  • nodm — 自動ログイン用のディスプレイマネージャ(2017年以降はメンテナンスされていません)。
http://enricozini.org/sw/nodm/ || nodm
  • Ly — Linux および BSD 用の TUI(ncurse みたいな)ディスプレイマネージャー。
https://github.com/nullgemm/ly || lyAUR
  • tbsm — Bash セッションまたはアプリケーションランチャー。X および Wayland セッションをサポートします。
https://loh-tar.github.io/tbsm/ || tbsmAUR
  • emptty — X と Wayland をサポートする TTY上のシンプルな CLI ディスプレイマネージャー。
https://github.com/tvrzna/emptty/ || emptty-gitAUR

グラフィカル

  • Entrance — EFL ベースのディスプレイマネージャ、実験段階。
http://enlightenment.org/ || entrance-gitAUR
  • GDMGNOME のディスプレイマネージャ。
https://wiki.gnome.org/Projects/GDM || gdm
  • KDMKDE のディスプレイマネージャ (開発終了)。
https://www.kde.org/ || kdebase-workspaceAUR
  • LightDM — クロスデスクトップのディスプレイマネージャ、様々なツールキットを使って書かれたフロントエンドを使用できます。
https://www.freedesktop.org/wiki/Software/LightDM || lightdm
  • LXDMLXDE のディスプレイマネージャ。LXDE とは別個に使うことも可能。
https://sourceforge.net/projects/lxdm/ || lxdm
  • SDDM — QML ベースのディスプレイマネージャ (KDM の後継)。Plasma 5 や LXQt の推奨ディスプレイマネージャ。
https://github.com/sddm/sddm || sddm
  • XDM — XDMCP をサポートした X ディスプレイマネージャ、ホストが選べる。
https://www.x.org/archive/X11R7.5/doc/man/man1/xdm.1.html || xorg-xdm

ログインデーモン

  • Greetd — コンソールとグラフィカルグリーターの両方をサポートする最小限の柔軟で不可知論的なログインデーモン。
https://git.sr.ht/~kennylevinsen/greetd || greetdAUR

ディスプレイマネージャをロードする

グラフィカルログインを有効にするには、適切なシステムサービスを有効にしてください。例えば、SDDMの場合、sddm.service を有効にします。

これだけで動くはずですが、動かない場合、カスタム default.target シンボリックリンクをリセットして、デフォルトの graphical.target を指すようにする必要があるかもいれません。systemd#起動時のデフォルトターゲットを変更する を参照してください。

SDDM を 有効にした後、シンボリックリンク display-manager.service/etc/systemd/system/ に設定する必要があります。古いシンボリックリンクを上書きするために、--force を使う必要があるかもしれません。

$ file /etc/systemd/system/display-manager.service
/etc/systemd/system/display-manager.service: symbolic link to /usr/lib/systemd/system/sddm.service

systemd-logind を使う

ユーザーセッションの状態を確認するには loginctl を使います。サスペンドや外部デバイスのマウントなどの全ての polkit アクションはそのまま動きます。

$ loginctl show-session $XDG_SESSION_ID

セッション設定

多くのディスプレイマネージャは /usr/share/xsessions/ ディレクトリから利用できるセッションを読み込みます。このディレクトリには DM/WM のための標準の デスクトップエントリファイル が入っています。

ディスプレイマネージャのセッションリストにエントリを追加・削除するには、/usr/share/xsessions/ にある .desktop ファイルを必要に応じて作成・削除してください。典型的な .desktop ファイルは以下のようになります:

[Desktop Entry]
Encoding=UTF-8
Name=Openbox
Comment=Log in using the Openbox window manager (without a session manager)
Exec=/usr/bin/openbox-session
TryExec=/usr/bin/openbox-session
Icon=openbox.png
Type=XSession

セッションとして ~/.xinitrc を実行

xinit-xsessionAUR をインストールすることで .xinitrc をセッションとして実行することができるようになります。

ウィンドウマネージャを使わずにアプリケーションを起動

ウィンドウ装飾やデスクトップ、ウィンドウ管理を省いて、アプリケーションを起動することもできます。例えば google-chromeAUR を起動するには、以下のように /usr/share/xsessions/web-browser.desktop ファイルを作成します:

[Desktop Entry]
Encoding=UTF-8
Name=Web Browser
Comment=Use a web browser as your session
Exec=/usr/bin/google-chrome --auto-launch-at-startup
TryExec=/usr/bin/google-chrome --auto-launch-at-startup
Icon=google-chrome

この場合、ログイン時に、Exec で設定したアプリケーションがすぐに起動します。アプリケーションを閉じると、ログインマネージャに復帰します (DE/WM からログアウトしたときと同じ)。

この方法で起動することを、ほとんどのグラフィカルアプリケーションは想定していないため、上手く行くように設定が必要になるかもしれません (ウィンドウマネージャが存在しないため、ウィンドウの移動やサイズ変更はできず、ダイアログも使えません。アプリケーションの設定ファイルでウィンドウの配置を設定しておかなくてはならないでしょう)。

xinitrc#ウィンドウマネージャを使わずにアプリケーションを起動も参照。

ヒントとテクニック

自動起動

ほとんどのディスプレイマネージャは /etc/xprofile, ~/.xprofile, /etc/X11/xinit/xinitrc.d/ を実行します。詳しくは xprofile を見て下さい。

言語の設定

AccountsService を使用するディスプレイマネージャの場合、/var/lib/AccountsService/users/$USER を編集することでディスプレイマネージャのロケールを設定できます:

[User]
Language=your_locale

your_localeja_JP.UTF-8 といった値に置き換えて下さい。

または、D-Bus を使用してこれを実現できます。 busctl call org.freedesktop.Accounts /org/freedesktop/Accounts/User$UID org.freedesktop.Accounts.User SetLanguage s your_locale

ディスプレイマネージャを再起動することで変更が適用されます。

翻訳ステータス: このページは en:Display manager の翻訳バージョンです。最後の翻訳日は 2021-10-22 です。もし英語版に 変更 があれば、翻訳の同期を手伝うことができます。