Проверила выше описанный способ в Matuntu-TV64-M112-X115 для автозапуска Firefox на рабочем столе 2.
Файл конфигурации DevilsPie2 выглядит так::
Спойлер
if (get_window_name() == "Mozilla Firefox") then
set_window_workspace(2)
end
debug_print("Mozilla Firefox: " .. get_window_name());
debug_print("Firefox: " .. get_application_name())
И всё рулит!
Пока разбирался с DevilsPie2, разработчикам Mate сильно икалось. :)
Как-то у них не очень логично получилось - либо вообще не делали бы функцию восстановления сеанса, либо делали её полноценной, а не только для своих приложений. Очевидно же, что пользователи будут пользоваться и сторонними.
По DevilsPie2:
if (get_window_name() == "Calculator") then
set_window_workspace(3)
end
Вместо get_window_name лучше использовать get_application_name, ибо имя окна может быть очень загадочным:
Спойлер
Window Name: Как раскидать окна по рабочим столам после загрузки / Хабрахабр - Mozilla Firefox
Application name: Firefox
Window Name: x-caja-desktop
Application name: Caja
Window Name: None
Application name: terminator
Да и get_application_name работает для всего приложения, а не для конкретного окна. Запускается в терминале для проверки командой devilspie2, без амперсанда в конце. С амперсандом не работает. Если в скрипте всё задано верно, то, при работающем в терминале DevilsPie2, нужное приложение запускается на указаном рабочем столе. Прерывание работы CTRL-C. Добавил в автозагрузку - всё отлично работает.
Мой вариант скрипта rules.lua
Спойлер
if (get_application_name() == "terminator") then
set_window_workspace(2)
end
if (get_application_name() == "untitled - Atom") then
set_window_workspace(3)
end
if (get_application_name() == "cherrytree") then
set_window_workspace(4)
end
Вообще, DevilsPie2 умеет не только закреплять рабочий стол за приложением, но и задавать размер, декорацию и прочая. Полный список в официальном мануале - http://www.gusnan.se/devilspie2/manual.php (http://www.gusnan.se/devilspie2/manual.php)
vita, Вам большое спасибо.