Автоматическое расположение окон при загрузке

Задача: Ubuntu Precise, Compiz Wall, несколько приложений в автостарте и желание не раскидывать их по рабочим столам вручную каждый раз при логине.

Решение найдет только очень внимательный, что и стало причиной для поста. Оказалось, что задачу можно решить силами самого compiz`a без каких-либо ухищрений. Все что нужно, это плагин "Place Windows", который есть в поставке по умолчанию.

На второй вкладке есть три секции, нам нужна последняя - "windows with fixed viewport". Задаем идентификатор, лучше всего самый общий - class, окна/приложения, и координаты рабочего стола вида (x, y):

Как раскидать окна по рабочим столам после загрузки

Попутно можно зафиксировать другие свойства окон - положение и режим размещения (на нетбуке с небольшим экраном самое актуальное - развернуть на весь экран). При задании идентификатора есть пикер, так что можно просто ткнуть в интересующее вас приложение. Также доступны логические операции над фильтром (and/or/not).

Теперь при открытии любого окна, подпадающего под фильтры, оно будет размещаться в соответствии с указанными правилами.

P.S. Если вы все таки еще на Gnome то у вас сработает такая приблуда, как DevilsPie2:

  • Установим её:
  • Для каждого окна задайте правило вида, где "3" - абсолютный номер рабочего стола:
  • Затем:
  • Если все ок - можно поставить его в автозагрузку

Что бы узнать windows/application name поместите в скрипт следующие правила:

И запустите в отладочном режиме: