回答:
最初に、デスクトップをロードしない特別な場合を処理するユーザー定義セッションを定義する必要があります。/ usr / share / xsessions /に次のような内容のcustom.desktopファイルを作成して、このセッションを定義します。
[Desktop Entry]
Name=Custom
Comment=Custom Session to run ~./.xsession
Exec=/home/<username>/.xsession
X-Ubuntu-Gettext-Domain=<gnome-session-3.0>
これは、GDMに.xsession
ユーザーのHOMEにあるスクリプトを実行するように指示します<username>
。
X-Ubuntu-Gettext-Domain
Unity / GNOMEデスクトップを後でロードする場合(gdm
10.04で置き換え)、正しい言語翻訳のためにオプションが必要です。
このスクリプト〜/ .xsessionは、次のように単純に見えるかもしれません。
#! /bin/bash
xterm
logout
gdm画面で特定のユーザーのログイン中にセッション「カスタム」をロードするように定義すると、Xターミナルのみが開始され、終了時にgdmに戻ります。次回ユーザーとしてログインすると、この設定がデフォルトとして記憶されます。
もちろん、GNOMEなどのWindowsマネージャーを必要とするアプリケーションをまだ実行することはできません。これを行うには、.xsessionスクリプトを次のようなものに置き換えます。
#! /bin/bash
gnome-wm &
firefox
logout
GNOME Windowsマネージャーがロードされたが、デスクトップ要素が存在しないことがわかります。これにより、アプリケーション(ここではfirefoxなど)を開始できます。
しかし、あなたが何をすべきか注意してください:存在しないトレイへのアプリケーションを最小化すると、見栄えの良い壁紙になります。このためlogout
、アプリケーションの終了後にセッションをログアウトするには、スクリプトの最後に含めることが非常に重要です。スクリプトにスクリプトを追加するまで、これを実行するプログラムは他にありません。デスクトップを意図的にfirefoxのみに置き換えました(悪い考えです)。
もちろん、スクリプトから(gnome-desktop
またはgnome-session
オプションで)起動することもできますが、これは既定で既に実行されています。