Меня что-то торкнуло в сторону тайлинговых WM (windows manager, менеджер окон). Идея понравилась :) особенно на широкоформатном дисплее ноутбука... правда, есть одно "но": как правило, настройке эти DM подвергаются достаточно сложно. Начать "смотреть" решил с "самого простого" - DWM.
Оказалось, правда, что он самый сложный. Потому что настройка его сводится к измнению заголовочного C-файла, и перекомпиляции. Афигеть! Но "just for fun" попробовать стоит.
В общем, я буду потихоньку описывать тут - что сделано, что как решил...
Итак, первое. Вы установили DWM (ставится из репозиториев Убунты) и зашли в него. Посмотрели. Захотели что-нибудь запустить... а как - непонятно: меню нет, значков нет, ничего нет! Мышка есть - но зачем она, непонятно.
Да, DWM управляется с клавиатуры. И самое первое, что надо запомнить - это Shift-Alt-Enter. Запуск терминала. Кроме того, DWM поддерживает Dmenu - удобная вещь для запуска разных приложений. Вызывается через Alt-P. Alt-Num - переходы по "тегам" (9 областей). Alt-Shift-c - закрыть активное окно.
Второе. Вы захотели выйти из DWM.
Решается двумя путями:
1) Alt-Shift-q - закрыть dwm (штатная возможность DWM, ни за что бы не догадался).
2) Воспользоваться странным, но универсальным способом: killall -u `whoami` (я вообще себе в .bashrc прописал alias logoff='killall -u `whoami`' и использую logoff из консоли).
Пояснение: для Linux Mint (и подозреваю Убунты) - эта команда закрывает все процессы текущего пользователя, то есть выкидывает в окно логина. Потенциально это опасно, т.к. может быть фоном что-то запущено... и не отработано... в общем, на свой страх и риск. Тем не менее - это хороший работающий способ выйти из сеанса пользователя из консоли, для WM, которые этого не поддерждивают явно.
Третье. Обоев тоже нет, а среда графическая.
Ну, тут вроде должно быть просто: есть feh, есть nitrogen (я лично предпочитаю его)... но вот засада: нет в DWM startup скриптов. Никаких. Вообще!
Что в таком случае делают тру-линуксодиды? Правильно, используют .xinitrc (лично я давно не использовал этот как мне казалось - рудимнет, на чём и погорел, но об этом ниже). Так вот, раньше как было: в папке пользователя создаешь .xinitrc - пишешь туда, что нужно, и вуаля, оп! всё работает! Но, как выяснилось .xinitrc - "не работает". Теперь автостарт при старте иксов подхватывает ~/.xsessionrc - беда не велика, будем работать с ним.
Дальше - больше и интереснее. Если просто прописать в .xsessionrc - nitrogen --restore, то обои "из нитрогена" будут "переписывать" обои используемых WM. Для обоев может и не критично, а вот разнести запуск каких-то специфических для WM вещей хотелось бы... В итоге родилось такое вот извращенское решение:
(sleep 5
if [ `ps -aux | grep '0:00 dwm' | wc -l` -eq 2 ] ;
then
nitrogen --restore
fi;) &
Тут, кстати, надо сделать пару пояснений. Идея в том, чтобы после того, как загрузится DWM (или другой WM) - убедиться что загружен именно DWM, и, если это так - провести нужные нам запуски (в данном примере - только нитроген). Задержка в 5 секунд нужна, чтобы DWM загрузился (на самом деле, это очень быстрая и легкая среда - грузится намного быстрее, секунды за 3. Остальные 2 - страховка).
Ну и для памяти: ps -aux | grep xfce-session - позволяет узнать, запущен ли xfce в данный момент (может, кому пригодится).
Продолжение наверное следует :)