web-dev-qa-db-ja.com

.xsession。 .xinitrc、xmonad、およびlightdm

私の質問の前に次のことを書いてみましょう。 、しかし、私はまだいくつかのことを整理したいと思います。

セットアップ:12.04、完全に新規インストール(3時間前かもしれません)。 xmonadをWMとして使用したい。デュアルヘッドセットアップ。

私の質問:どのプログラムが何をしているか、X、ユニティ、ログインマネージャー(またはそれらが呼び出されるもの)およびウィンドウマネージャーに関して、私は完全に、またはまったくまったく混乱しています。私はxmonadをウィンドウマネージャーとして使用していますが、これはよく知っています。また、ログインするとき、またはおそらくそれ以前に、xrandrを実行するスクリプトを使用して(既に作業している)デュアルモニターを適切にセットアップする必要があります。私が話したり、質問をオンラインで読んだりする人はすべて、xinitrc、〜/ .xsession、または/ etc/X11/xsessionについて話しますが、これらのファイルはどれも実行されていません。/usr/share/xsesssions内のファイルが実行されている唯一のファイルであるように思われ、私は一生、これに関するドキュメントを見つけることができません。

このシステムの一貫性はどこにありますか?これを適切に実行したい場合、正確には何をすべきですか?一部のウィンドウマネージャーはこれを行うようです(KDEとgnomeには「自動起動」と呼ばれるものがあるようです)。ウィンドウマネージャーにX、またはlightdmを処理させますか?私はおそらくこれを入れることができる起動プロセスに数十のファイルがあることを理解していますが、適切な規約を求めています。 theソリューションとは何ですか?

TL; DR; X上で実行されるすべてのウィンドウマネージャーに対して自動的にスクリプトを実行する一貫した方法はありますか、それとも使用しているウィンドウマネージャーとログインマネージャーの組み合わせに完全に依存しますか?

16
foobarbaz

あなたはこれがあなたのために働くと思うかもしれません。ダッシュスクリプト/ usr/sbin/lightdm-sessionがソースとなり、後でウィンドウマネージャーのexecが実行されます。

これはあなただけのものであり、Xに関連しているため、〜/ .xprofileに入れることをお勧めします。システムのすべてのユーザーに適用される場合は、/ etc/xprofileの方が適切な場合があります。

ファイル〜/ .xprofileを作成し、xrandrコマンドを含むように編集します(次のテスト項目に類似):

 xrandr --output LVDS --mode 1280x854 

詳細については、 ログインしてUnityまたは別のグラフィカルユーザーインターフェイスを起動するとどうなりますか? で確認できます。ユニティ以外のウィンドウマネージャで発生することの一部をカバーしています。

11
John S Gruber

「カバーの下で何が起こるか...」リンクに感謝します。

〜/ .xprofileが早すぎるため、xrandr設定が失われます。

1つの解決策は、スクリプトを作成し、「起動時のアプリケーション」で実行することです。ただし、nautilusはすでに起動されており、(xrandrコマンドの後)セカンダリモニターにアイコンを表示することを決定するため、最後に追加しました。

killall -1 nautilus
nautilus -n

汚れていますが機能します。お役に立てれば。

3
jissouille