# LightDM (日本語)

関連記事

- ディスプレイマネージャ
- GDM
- KDM
- LXDM

LightDM は X サーバーの標準ディスプレイマネージャになることを目指しているクロスデスクトップのディスプレイマネージャです。主な特徴は以下の通り:

- 軽量なコードベース
- 標準準拠 (PAM, logind, etc)
- サーバーとユーザーインターフェースの間に定義されているインターフェイス
- クロスデスクトップ (あらゆるツールキットを使ってユーザーインターフェースを書くことができます)

LightDM の設計に関する詳細は ここ から見れます。

## インストール

公式リポジトリから lightdm をインストールしてください。開発ブランチは AUR から lightdm-develか lightdm-bzr をインストールすることで使えます。

### Greeter

greeter (LightDM のユーザーインターフェース) もインストールする必要があります。基準となる greeter は lightdm-gtk-greeter で lightdm-gtk2-greeter や lightdm-gtk3-greeter に入っています。KDE ユーザーは Qt ベースの greeter である lightdm-kde-greeter をインストールできます。

他の greeter は AUR からインストールすることができます:

- lightdm-another-gtk-greeter: カスタムテーマをサポートする GTK3 greeter。
- lightdm-webkit-greeter: テーマに Webkit を使用する greeter。
- lightdm-crowd-greeter: プロファイルとして動き回る 3D のキャラクターを選べる 3D greeter。
- lightdm-unity-greeter: Ubuntu の Unity で使われている greeter。
- lightdm-razor-greeter: Razor-qt デスクトップ環境の greeter。
- lightdm-pantheon-greeter: ElementaryOS プロジェクトの greeter。
- lxqt-lightdm-greeter-git: LXQt デスクトップ環境の greeter。

設定ファイルの [SeatDefaults] 以下を変更することでデフォルトの greeter を変えることが可能です:

    /etc/lightdm/lightdm.conf

    [SeatDefaults]
    …
    greeter-session=lightdm-yourgreeter-greeter

## LightDM を有効にする

systemctl を使って `lightdm.service` デーモンを有効にしてください、それで LightDM がブート時に起動するようになります。

## コマンドラインツール

LightDM はコマンドラインツール `dm-tool` を提供しています。これを使うことで現在のシートのロック、セッションの切り替えなどができます。'最小主義の'ウィンドウマネージャを使っている場合やテストに便利です。利用できるコマンドを表示するには、次を実行してください:

    $ dm-tool --help

## テスト

まず、公式リポジトリから xorg-server-xephyr をインストールしてください。

そして X アプリケーションとして LightDM を起動してください:

    $ lightdm --test-mode --debug

## 任意の設定と調整

greeter によっては固有の設定ファイルを持っているものがあります。例えば lightdm-gtk2-greeter や lightdm-gtk3-greeter は次のファイルを持っています:

    /etc/lightdm/lightdm-gtk-greeter.conf

lightdm-kde-greeter は次のファイルを持っています:

    /etc/lightdm/lightdm-kde-greeter.conf

さらに KDE のシステム設定にセクションもあります (推奨)。

設定スクリプトを直接修正したり `/usr/lib/lightdm/lightdm/` にある `lightdm-set-defaults` アプリケーションを使うことで LightDM の設定を行えます。利用できるオプションを見るには、次を実行してください:

    $ man lightdm-set-defaults

また、設定ファイルを編集するほうが `lightdm-set-defaults` アプリケーションを使うよりも多くの変数を使うことができます。

### 背景画像・色を変更する

単色 (画像なし) を使いたい場合は background 変数を十六進数の色コードに設定してください。

例:

    background=#000000

画像を使いたい場合は以下を参照してください。

#### GTK+ Greeter

greeter 画面の壁紙をカスタマイズするには `/etc/lightdm/lightdm-gtk-greeter.conf` を編集して background 変数を定義する必要があります。

例:

    background=/usr/share/pixmaps/black_and_white_photography-wallpaper-1920x1080.jpg

#### Unity Greeter

lightdm-unity-greeter を使っている場合 `/usr/share/glib-2.0/schemas/com.canonical.unity-greeter.gschema.xml` ファイルを編集して次を実行してください:

    # glib-compile-schemas /usr/share/glib-2.0/schemas/

このページを参照。

Note: LightDM のユーザーが壁紙ファイルを読み込めるようにするため `/usr/share/pixmaps` に PNG や JPG ファイルを配置することが推奨されています。

#### KDE Greeter

System Settings > Login Screen (LightDM) に行き背景画像を変更してください。

### アバターを変更する

#### .face を使う

greeter 画面のユーザーイメージをカスタマイズするには home ディレクトリに `.face` や `.face.icon` という名前の PNG 画像を置く必要があります。LightDM から読み込めるようになっているか確認してください。

Note: As of December 2013, some people have issues where the icon file does not get picked up. The preferred way is to install accountsservice and use the following AccountsService way.

#### AccountsService を使う

.face を使う方法は問題を起こすことが知られています。幸いにも、LightDM は AccountsService を自動で使用することができます。まず accountsservice パッケージ (公式リポジトリにあります) がインストールされているか確認してください。それから、以下の手順で設定してください。<username> はあなたのログイン名に置き換えてください。.png ファイル拡張子の使用はおそらく任意です。

- `/var/lib/AccountsService/users/<username>` を作成・編集して、次の行を加えて下さい:

    [User]
    Icon=/var/lib/AccountsService/icons/<username>.png

- 96x96 PNG のアイコンファイルを `/var/lib/AccountsService/icons/<username>.png` に配置して下さい。

#### Arch の 64x64 アイコンを使う

AUR の archlinux-artwork パッケージには素晴らしいサンプルが含まれており `/usr/share/archlinux/icons` にインストールされます。以下のように `/usr/share/icons/hicolor/64x64/devices` にコピーすることが可能です:

    # find /usr/share/archlinux/icons -name "*64*" -exec cp {} /usr/share/icons/hicolor/64x64/devices \;

コピーした後は、archlinux-artwork パッケージは削除してかまいません。

### 自動ログインを有効にする

LightDM の設定ファイルを編集して以下の行を変更してください:

    /etc/lightdm/lightdm.conf

    autologin-user=USERNAME
    autologin-user-timeout=0

もしくは次を実行してください:

    # /usr/lib/lightdm/lightdm/lightdm-set-defaults --autologin=USERNAME

LightDM は `autologin` が有効になっているときでも PAM を使います。パスワードを入力しないでログインするためにはユーザーが `autologin` グループに入っている必要があります:

    # groupadd autologin
    # gpasswd -a USERNAME autologin

Note: GNOME users, and by extension any gnome-keyring user will have to set up a blank password to their keyring for it to be unlocked automatically.

### システム・サービスユーザーを隠す

システムユーザーをログイン画面で表示されないようにするには、任意の依存パッケージ accountsservice をインストールするか、ユーザーの名前を `/etc/lightdm/users.conf` の `hidden-users` に追加してください。前者の方法ではユーザーを追加・削除したときにリストを更新する必要はありません。

### SLiM からの移行

xinitrc の中身を xprofile に移動し、ウィンドウマネージャやデスクトップ環境を起動するコマンドを削除してください。

### NumLock を ON にする

numlockx パッケージをインストールして `/etc/lightdm/lightdm.conf` を編集して次の行を加えて下さい:

    greeter-setup-script=/usr/bin/numlockx on

### ユーザー切り替え

LightDM は様々なデスクトップ環境でのユーザー切り替えをサポートしています。ユーザー切り替えを有効にするにはシンボリックリンクを作成する必要があります:

    # ln -s /usr/lib/lightdm/lightdm/gdmflexiserver /usr/local/bin/gdmflexiserver

他の方法については XScreenSaver#Lightdm の記事を見て下さい。

### デフォルトセッション

他の DM と同じように、Lightdm は最後に選択された xsession を `~/.dmrc` に保存します。詳しくは Display_Manager (日本語)#セッションリスト を見て下さい。

## トラブルシューティング

画面が点滅して起動時に lightdm が現れない問題が起こる場合は、lightdm の設定ファイルに greeter を正しく定義しているか確認してください。GTK greeter を定義している場合は、`xsessions-directory` (デフォルト: `/usr/share/xsessions`) が存在していて少なくとも一つは .desktop ファイルが含まれていることを確認してください。

最後に使用したセッションが利用できなくなった時も同じ問題が lightdm の起動時に発生することがあります (例えば gnome を使った後 gnome-session パッケージを削除した場合): 一番簡単な回避策は削除したパッケージを一時的に戻すことです。もうひとつの解決策は:

    # dbus-send --system --type=method_call --print-reply --dest=org.freedesktop.Accounts /org/freedesktop/Accounts/User1000 org.freedesktop.Accounts.User.SetXSession string:xfce

このコマンドはセッション "xfce" を user 1000 ユーザーのデフォルトとして設定します。

### 電源メニュー (再起動、パワーオフなど) が使えない

lightdm-1:1.6.0-6 より前に lightdm をインストールしている場合、次のバグが原因かもしれません: FS#36613。修正するには次を実行してください:

    # chown polkitd:root /usr/share/polkit-1/rules.d

### 間違ったロケールが表示される

Lightdm でロケールが正しく表示されない場合はあなたのロケールを `/etc/environment` に追加してください:

     LANG=ja_JP.utf8

### Xresources が正しく読み込まれない

LightDM には Xresources ファイルがプリプロセッサによってロードされないという上流のバグが存在します。実際面で、これは `#define` で設定された変数が後で呼ばれた時に展開されないということを意味しています。urxvt でカスタムカラーのセットを使った時にピンクの画面になることでこれを確認できます。修正するには、`/etc/lightdm/Xsession` を開いて次の行を探して下さい:

    xrdb -nocpp -merge "$file"

次のように変更してください:

    xrdb -merge "$file"

これで Xresources が処理され変数が正しく展開されます。

### GTK greeter でアイコンが表示されない

lightdm-gtk2-greeter を greeter として使っていてプレースホルダ画像がアイコンとして表示される場合、正しいアイコンテーマとテーマを設定してください。次のファイルを確認してください:

    /etc/lightdm/lightdm-gtk-greeter.conf

    [greeter]
    theme-name=mate      # this should be the name of a directory under /usr/share/themes/
    icon-theme-name=mate # this should be the name of a fully featured icons set directory under /usr/share/icons/

### ログインしようとすると LightDM がフリーズする

適当なユーザー名・パスワードを入力してログインしようとすると、LightDM がフリーズしデスクトップを起動できないことがあります。この問題を修正するには、gdk-pixbuf2 パッケージを再インストールしてください。フォーラムへの投稿を参照。

## 参照

- Ubuntu Wiki article
- Gentoo Wiki article
- Launchpad Page
- LightDM blog

Category:

- Display managers (日本語)