i3ウィンドウマネージャ(バージョン4)を設定していますが、デフォルトの自動起動を使用しているように見えたり失敗したりすることがありますexec
。exec_all
(*)
i3_autostart.sh
だから私は必要なすべてを1つの整理された場所に追加するスクリプトを作成することにしました。これを行うのと似ているか、KDE
独自GNOME
のフォルダがあります。
スクリプトは~/.config/i3/config
次の行(**)を使用して呼び出されます。
exec_always --no-startup-id /home/beco/.config/i3/i3_autostart.sh
次に、デフォルトでは、自動起動したいすべてのプログラムを実行する関数を呼び出す自動起動スクリプトを入力します。例は次のとおりです。
Autostart()
{
# why, o my?
sleep 1
# set keyboard bindings
xkbcomp -w 0 /home/beco/.config/xkbmap_kde $DISPLAY
# toggle touchpad
/home/beco/bin/touchpad off
# set wallpaper
feh --bg-scale /home/beco/Pictures/wallpaper/Stonehenge-Desktop-Wallpaper-i3help.png
# clipboard
parcellite
# network manager
nm-tray
# why, o my?
sleep 1
}
を除くすべてのプログラムが正常に起動しますnm-tray
。いくつかのコマンドの組み合わせとスキルを試してみましたが、役に立ちませんでした。
私が見たことの問題は、nm-trayが前景を実行するのが好きですが、背景を実行する必要があり、私が知っている限り、コマンドラインで設定するオプションがないことです。だから私たちはbash
施設を利用する必要があります。
私の試みは次のとおりです。
- シンプルな背景
# network manager
nm-tray &
- 否定しよう
# network manager
nm-tray &>/dev/null &
disown $!
- ノーヘットと否定
# network manager
nohup nm-tray &>/dev/null &
disown $!
nm-trayがまだ実行されていることを確認するために、自動起動スクリプト全体をバックグラウンドで実行中のままにしようとしました。exec_always --no-startup-id /home/beco/.config/i3/i3_autostart.sh &>/dev/null &
クリップボードのアイコンとキーボードのアイコンが表示されます。タッチパッドがオフに設定されています。しかし、nm-trayアイコンは機能しないと主張しています。
どんな提案がありますか?ありがとうございます。
@drbeco
(*) いくつかのバグレポートを読みましたが、この質問はこの問題を解決するためのものではありません。これは、問題がまだ存在している間に信頼できる優れた解決策を作成することです。
(**) 絶対に失敗しないラインだからexec_always
気に入らない。
ベストアンサー1
バックグラウンドで実行を拒否する(または後で機能しない)唯一のプログラムは、端末が必要なプログラムです。
問題は、バックグラウンドで起動nm-tray
しないため、まったく実行されないことです。したがって、この2行の終わりにアンパサンドを追加し(自分で分離されていない他の長期実行/持続プログラムを起動する場合は、アンパサンドを追加しますが、現在上記のリストにはないようです)、A disavowを追加します。スクリプトを実行するには、プログラムが完了するまでスクリプトをハングアップしないでください。parcellite
上記の例の代わりにこのブロックを試してください。
Autostart()
{
# why, o my?
sleep 1
# set keyboard bindings
xkbcomp -w 0 /home/beco/.config/xkbmap_kde $DISPLAY
# toggle touchpad
/home/beco/bin/touchpad off
# set wallpaper
feh --bg-scale /home/beco/Pictures/wallpaper/Stonehenge-Desktop-Wallpaper-i3help.png
# clipboard
parcellite &
# network manager
nm-tray &
# detach the started background programs
disown
# why, o my?
#sleep 1
}