私は Gnome 3.14.1 を実行する Debian 8 を使用しています。
自動ログインを設定したいのですが、自動ログインするユーザー名が固定されていないため、スクリプトを使用して設定したいと考えています。GDMのドキュメント(https://help.gnome.org/admin/gdm/3.14/configuration.html.en#デーモンセクション)、/etc/gdm3/daemon.conf ファイルの AutomaticLogin プロパティの末尾に「パイプ」(|) を使用して、ユーザー名を取得するためにスクリプトを使用する必要があることを示すことができます。
AutomaticLoginEnable が true の場合、これは直ちにログインするユーザーです。値が縦棒 | (パイプ記号) で終わる場合、GDM は指定されたプログラムを実行し、プログラムから標準出力に返される値をユーザーとして使用します。プログラムは DISPLAY 環境変数を設定して実行されるため、ディスプレイごとにユーザーを指定できます。たとえば、値が "/usr/bin/getloginuser|" の場合、プログラム "/usr/bin/getloginuser" が実行され、ユーザーの値が取得されます。
しかし、私のコンピュータでは、gdm はスクリプトの結果ではなく、ユーザー "/usr/bin/getloginuser|" をログに記録しようとします。これを動作させる方法を誰か知っていますか?
ありがとう。
答え1
Debian 8 に含まれている gdm3 パッケージのソースコードを確認したところ、この「パイプ」機能が正しく実装されていないため使用できないようです。
コメントの 1 つに示されているように、gnome-session パッケージも調べてみましたが、それがどのように問題を解決できるのかわかりません。
最終的に、gdm の前に実行され、必要な条件に応じて /etc/gdm3/daemon.conf 内の AutomaticProperty を変更する systemd サービスを作成することで、問題を回避しました。