web-dev-qa-db-ja.com

Awesome Window Managerでスタートアップアプリケーションを定義するにはどうすればよいですか?

私はオンラインでできる限り読んでいますが、どれも機能していないようです(つまり、~/.config/awesome/rc.luaを変更しています)。

レポジトリから awesome ウィンドウマネージャーをインストールしました。GDM経由でログインし、セッションにログインするたびにいくつかのアプリケーションを起動できるようにします。

8
Jonathan

テンプレートから始める

まず、テンプレートrc.luaファイルをホームフォルダーにコピーする必要があります。

mkdir ~/.config/awesome
cp /etc/xdg/awesome/rc.lua ~/.config/awesome/

開始するアプリケーションの定義

awesome - edit configを使用して、新しいrc.luaファイルの最後に次のコードをコピーします

do
  local cmds =
  {
    "firefox",
    "xedit"
  }

  for _,i in pairs(cmds) do
    awful.util.spawn(i)
  end
end

この例では、起動時にfirefoxとxeditが実行されます。

これを説明する優れたwikiページは、 ArchLinux で見つけることができます

8
fossfreedom
awful.util.spawn("conky")
awful.util.spawn("nm-applet")

.config/awseome/rc.luaの下部にあるこのような行は、トリックを行います。シンプルにしたい場合。少なくとも、それは awesome-wiki がシンプルと呼ぶものです。

7
doxanthropos

Awesomeのアップグレード後のソリューション:

awful.util.spawn("nm-applet &")

クラッシュさせます(ログインプロンプトに戻ります)。

ただし、次の場合にはうまく機能します。

os.execute("nm-applet &")

関連チケット: 起動時にawful.util.spawn()を使用するとクラッシュします

0
Maxime

二重起動を防ぐには:

do
  local autostarts =
  {
    "safeeyes",
  }

  for _,i in pairs(autostarts) do
      awful.spawn.easy_async_with_Shell('ps -C '.. i ..' |wc -l',function(stdout, stderr, reason, exit_code) 
        gears.debug.dump(stdout)
         if tonumber(stdout) or 0 < 2 then
          awful.spawn(i)
        end
        end)
  end
end
0
0xdeface