Como posso definir aplicativos de inicialização com o Awesome Window Manager?

10

Eu tenho lido o máximo que posso online, mas nada parece funcionar (ou seja, mudando ~/.config/awesome/rc.lua).

Instalei o gerenciador de janelas incrível dos repositórios e faço login nele via GDM, e agora gostaria que ele iniciasse alguns aplicativos toda vez que fizer login na sessão.

Jonathan
fonte

Respostas:

8

A partir de um modelo

Primeiro, você precisará copiar o arquivo template rc.lua para sua pasta pessoal

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

Definindo aplicativos para iniciar

Agora, awesome - edit configcopie o seguinte código na parte inferior do seu novo arquivo rc.lua

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

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

Neste exemplo - firefox e xedit são executados na inicialização.

Uma excelente página wiki descrevendo isso e muito mais pode ser encontrada no ArchLinux

liberdade de expressão
fonte
8
awful.util.spawn("conky")
awful.util.spawn("nm-applet")

Linhas como estas na parte inferior do seu .config / awseome / rc.lua farão o truque. Se você quer que seja simples. Pelo menos, é o que o awesome-wiki chama de simples.

doxanthropos
fonte
2

você pode usar single_instance ou uma vez e passar regras como estas

awful.spawn.single_instance("firefox", awful.rules.rules)
George Shalvashvili
fonte
0

para impedir o lançamento duplo:

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
0xdeface
fonte
awful.spawn.single_instance()deve evitar a dupla-lançamento por isso a resposta de George parece ser uma técnica melhor
Codebling
Obrigado, eu tomar nota
0xdeface