Я использую Ubuntu на MacBook и использую внешний монитор. Поэтому я использую xrandr для отключения монитора ноутбука при запуске, если внешний монитор подключен с помощью этого небольшого скрипта ruby:
#!/usr/bin/ruby
display = `xrandr -q | grep DP-1`.to_s
if !display.include? "disconnected" then
`xrandr --output LVDS-1 --off`
`xrandr --output DP-1 --mode 1920x1080`
sleep 3
end
Я использую rc.lua для запуска скрипта и нескольких других программ в удивительном :
...
awful.util.spawn_with_shell("/home/jo/.config/awesome/setdisplay.rb")
awful.util.spawn_with_shell("nm-applet")
awful.util.spawn_with_shell("dropbox start")
awful.util.spawn_with_shell("setxkbmap de")
awful.util.spawn_with_shell("thunderbird")
awful.util.spawn_with_shell("google-chrome")
awful.util.spawn_with_shell("pidgin")
...
Скрипт монитора работает хорошо, но, к сожалению, несколько программ запускаются дважды, например, google-chrome
и nm-applet
. Я думаю, что все программы запускаются дважды, но другие программы, такие как dropbox
, thunderbird
и т. Д., Допускают только один экземпляр. Я так думаю, потому что thunderbird
жалуется на другой работающий экземпляр.
Возможно ли, что есть два экземпляра awesome, каждый из которых запускает программы, а затем, когда монитор ноутбука отключается, программы перемещаются в потрясающий экземпляр внешнего монитора? Есть идеи, как этого избежать?
В удивительной вики есть страница об автозапуске приложения. Существует также пример кода для принудительного запуска приложений только один раз, см. http://awesome.naquadah.org/wiki/Autostart
.