xが起動するたびに実行したい簡単なスクリプトがあります。
#! /bin/sh
/home/kevin/.dropbox-dist/dropboxd &
chmod 755を実行して完全に実行可能です。そうだろう。いいえ。働く
スクリプトを.xsessionに設定すると、特定のデスクトップ(xmonad)を選択しない限り、ディスプレイマネージャ(SLiMとLightDMでテスト済み)は繰り返しログイン情報を要求します。 .xsessionファイルがない場合は、xmonadをデフォルトセッションにロードします。それにもかかわらず、スクリプトは実行されません。
私はこのスクリプトのバリエーションを試したことに言及する必要があります。 「exec xmonad」ステートメントを使用または使用せずに、ドロップボックスの代わりにデスクトップの背景をロードします。 xmonadは現在私にとって可能な唯一のセッションなので、まだセッションパラメータに基づいてswitch-caseステートメントを試していません。
私はそれを(execステートメントなしで).xprofileに入れ、/etc/X11/xinit/xinitrcに私のユーザーにsuを知らせる行を追加し、スクリプトを実行して終了します。また、これを.xinitrcにし、すべてのディスプレイマネージャを削除してxを始めました。すべての行がコメントアウトされたとき、またはファイル自体が削除/移動されたときにのみ消えるエラーが発生します。
ログイン後にスクリプトを実行し、実行され、予想されるすべてのタスクを実行できるため、スクリプト自体が大丈夫であることを知っています。
私はxmonadを使って独自のDebian 8を実行しています。私のシステムには他に何もインストールされていません。
答え1
xmonadを起動する前に実行したいコマンドを配置できます~/.xmonad/xmonad-session-rc
。
もしあれば、~/.xsession
それはXセッション全体を開始することです。スクリプトが返されると、セッションは終了します。したがって、このファイルを使用するには、このファイルでxmonadを起動する必要があります。
#! /bin/sh
/home/kevin/.dropbox-dist/dropboxd &
exec xmonad
実行するには、.xsession
xmonadではなくディスプレイマネージャでカスタムセッションを選択する必要があります。
~/.xinitrc
~/.xsession
シャットダウンと同様に、Xセッションは終了します。違いは、~.xsession
ログインしたばかりのディスプレイマネージャで実行され、外部X/xinitrc
で開始されたXセッションに対して実行されることです。startx
またはできますxmonadでプログラムを実行するstartupHook
しかし、xmonadが再起動すると再実行されるという欠点があります。