Это старая версия документа.
Содержание
Openbox — минималистичный менеджер окон для X Window System, распространяется по лицензии GPL.
Openbox входит в состав рабочего окружения LXDE, но его можно использовать и отдельно от этого окружения:
- собрать на его основе собственное окружение
- использовать в каком-либо окружении рабочего стола только как рамку окон
Что он может:
- отрисовывать рамку окон с кнопками управления и меню, с текстовым описанием
- управлять окнами: свернуть, развернуть, закрыть, максимизировать, восстановить прежний размер, перетаскивать окно курсором при нажатой клавише Alt, изменять размер окна потянув за край, переключаться между окнами клавишами Alt tab
- управлять виртуальными рабочими столами: переключаться между ними, перемещать окна с одного на другой
- показывать контекстное меню на на рабочем столе
- запускать программы при входе в сессию openbox, завершать работу программ при выходе из сессии openbox
- назначать горячие клавиши
Установка
sudo apt-get install openbox obconf obmenu
Формируем собственное окружение на основе openbox
Теперь перелогинимся из текущего окружения в openbox (выйдите из системы к меню ввода пароля и входа, нажмите на кнопку выбора окружения над полем и выберите openbox). Пред нами предстал серый фон и (возможно, если устанавливали) conky. Весь смысл openbox заключается в создании полностью стилизованного под себя окружения. Существует огромное количество допилок для openbox, самые основные будут приведены в этом руководстве.
Добавляем панель
На выбор предстает достаточно много панелей, самые известные - lxpanel, pypanel, fbpanel, adeskbar, tint2, wbar (только панель запуска).
Здесь приведен пример настройки lxpanel. Эта панель используется по умолчанию в lxde, установка:
sudo apt-get install lxpanel
Запуск:
lxpanel
Она запустится в стандартной конфигурации. В ней присутствует определённое количество виджетов по умолчанию, есть возможность добавлять gtk апплеты (network-manager у вас будет ярким примером). Настройка осуществляется с помощью файла ~/.config/lxpanel/название_конфига/config/. Так-же возможна через клик правой кнопкой мыши на панели → Настройки панели.
Переключение раскладки клавиатуры
Переключение раскладки клавишами Alt Shift можно включить добавив в актозапуск команду
setxkbmap -layout "us,ru(winkeys)" -model "pc105" -option "grp:alt_shift_toggle,grp_led:scroll" &
Отображение индикатора раскладки в виде флага можно включить установив и записав в автозапуск fbxkb или gxneur.
Есть другой способ - добавить на lxpanel индикатор раскладки, нажать на нем правой клавишей мыши и настроить переключение клавиатуры между разными раскладками. В последней версии lxpanel добавили такую возможность.
Автозапуск программ
Стандартное приложение контроля автозапуска ведет себя адекватно, но мы рассмотрим ещё один способ для openbox - скрипт autostart в папке ~/.config/openbox/. По умолчанию он не создается, создайте его сами в любом текстовом редакторе. Он использует обычный bash синтаксис. Пример:
conky & lxpanel & feh --bg-scale ~/.img/303215-1280x1024.jpg & nautilus -n & setxkbmap -layout "us,ru(winkeys)" -model "pc105" -option "grp:alt_shift_toggle,grp_led:scroll" & skype --disable-cleanlooks -style GTK & xscreensaver -nosplash &
Знак '&' в конце строки означает запуск в фоновом режиме.
Мультимедиа клавиши
Ubuntu по умолчанию использует pulseaudio, звук регулировать будем через него. Добавьте строки ниже в ваш ~/.config/openbox/rc.xml. В этом файле хранятся все конфирурации «забинденных» сочетаний клавиш. Для большинства клавиатур подойдёт такой xml-код:
<keybind key="XF86AudioRaiseVolume"> <action name="Execute"> <command>amixer -D pulse set Master 5%+ unmute</command> </action> </keybind> <keybind key="XF86AudioLowerVolume"> <action name="Execute"> <command>amixer -D pulse set Master 5%- unmute</command> </action> </keybind> <keybind key="XF86AudioMute"> <action name="Execute"> <command>amixer set Master toggle</command> </action> </keybind>
Определение названий мультимедиа клавиш
Если X дает отличные от «XF86Audio…» названия вашим мультимедиа клавишам, то для их определения вы можете использовать утилиту xev. Запустите её в терминале, перед вами откроется окошко с квадратиком. Сделайте окно активным (просто поместите его поверх всех остальных), «вытащите» из него курсор и нажмите на любую мультимедиа клавишу. Не нажимая другие клавиши (кроме, конечно, кнопки мыши) и не вводя курсор в окно закройте его. Возьмите текст последнего абзаца, он будет примерно таким:
KeymapNotify event, serial 46, synthetic NO, window 0x0, keys: 79 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 KeyRelease event, serial 46, synthetic NO, window 0x3000001, root 0x34f, subw 0x0, time 1620513, (-72,18), root:(352,715), state 0x0, keycode 122 (keysym 0x1008ff11, XF86AudioLowerVolume), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False
где XF86AudioLowerVolume - искомое название. Проделайте данную операцию со всеми остальными мультимедиа кнопками и проделайте рецепт выше, заменив «XF86Audio…» на ваши названия, в первом случае на «громкость больше», во втором случае на «громкость меньше», а в третьем на «выключить звук».
Верните alt+f2!
Решение аналогичное предыдущему (с мультимедиа клавишами). Выберите любой менеджер запуска приложений, в качестве примера используется gmrun. Установите его:
sudo apt-get install gmrun
Добавьте следующие строчки в ~/.config/openbox/rc.xml:
<code><keybind key="A-F2"> <action name="Execute"> <command>gmrun</command> </action> </keybind></code>
Перезапустите openbox.
Файловый менеджер
Вы можете использовать любой, какой вам захочется:
и так далее…
Фон рабочего стола
Существует много приложений для управления фоном рабочего стола, здесь приводится пример для feh. Установка:
sudo apt-get install feh
Использование:
feh --bg-scale путь_до_изображения
Пример добавления в автозапуск см. выше.
Меню выключения
Существует много различных способов добавления данной опции. Самая простая - через obmenu и gxmessage. Gxmessage - маленькая програмка, позволяющая сделать gui для bash скриптов. Obmenu - редактор контекстного меню у openbox (того, которое открывается при нажатии правой кнопкой мыши рабочему столу, если запущен nautilus - убейте этот процесс через killall -9 nautilus). Установим необходимые пакеты:
sudo apt-get install obmenu gxmessage
Сначала надо отредактировать sudoers. Для этого в терминале:
sudo visudo
Добавьте эти строчки в конец файла, заменив shkiper на имя вашего пользователя:
shkiper ALL=NOPASSWD: /sbin/shutdown, /sbin/reboot, /usr/sbin/pm-hibernate
Сохраните файл нажатием ctrl+O и выйдите через ctrl+x.
Перезапустите sudo через
sudo -K
Создайте в домашнем каталоге файл .shutdown с таким содержанием:
#!/bin/bash gxmessage "Выключить компьютер?" -center -title "Take action" -font "Sans bold 10" -default "Отмена" -buttons "_Отмена":1,"_Гибернация":2,"_Перезагрузка":3,"_Выключение":4,"_Выход из сеанса":5 >/dev/null case $? in 1) echo "Exit";; 2) sudo /usr/sbin/pm-hibernate;; 3) sudo /sbin/reboot;; 4) sudo /sbin/shutdown -h now;; 5) openbox --exit;; esac
Если не пользуетесь гибернацией, то с таким:
#!/bin/bash gxmessage "Выключить компьютер?" -center -title "Take action" -font "Sans bold 10" -default "Отмена" -buttons "_Отмена":1,"_Перезагрузка":2,"_Выключение":3,"_Выход из сеанса":4 >/dev/null case $? in 1) echo "Exit";; 2) sudo /sbin/reboot;; 3) sudo /sbin/shutdown -h now;; 4) openbox --exit;; esac
Сохраните его. Теперь запустите obmenu.
obmenu
Раскройте список «Openbox 3» и с помощью кнопки «New item» добавьте пункт, в настройках (внизу окна) укажите: Label - название пункта меню, Action - Execute, Execute - sh /home/имя_пользователя/.shutdown. Нажмите на кнопку «Сохранить» и проверьте появление пункта, нажав правой кнопкой мыши по рабочему столу.
Если вы используете менеджер рабочего стола и не пользуетесь контекстным меню openbox, то вы можете установить хоткей на определенное сочетание клавиш и вызов этого скрипта. Например, для ctrl+alt+e добавьте следующие строки в ~/.config/openbox/rc.xml:
<keybind key="C-A-e"> <action name="Execute"> <command>sh /home/имя_пользователя/.shutdown</command> </action> </keybind>
GTK2+GTK3+Openbox
Это одна из самых сложных тем в настройке openbox. Вам нужно подобрать такую тему openbox, gtk2 и gtk3, чтобы они подходили друг к другу (на ваш вкус). Подбирать их можно на ресурсах gnome-look.org и box-look.org (для gtk и *box соответственно).
Итак, вы выбрали темы. Но не спешите радоваться! Во-первых, русские шрифты могут всё испортить. Во-вторых, никто не знает, как она запустится у вас. Лучше сначала посмотреть gtk3 тему (по одной из инструкций ниже), если нормально запустится и понравится - ставить gtk2 из того-же архива и подбирать под все это *box тему.
Установка gtk2 темы
Здесь все просто. Вы можете вручную редактировать файл ~/.gtkrc-2.0. Подробнее о его синтаксисе вам поможет узнать google. Здесь описан простой способ установки gtk2 темы. Устанавливаем пакет gtk-theme-switch:
sudo apt-get install gtk-theme-switch
Скопируйте из архива папку с названием темы, содержащую в себе «gtk2.0» и, возможно, «index.theme» в ~/.themes (если такой папки нет - создайте). Воспользуйтесь командой в терминале
gtk-theme-switch2
Выберите свежеустановленную тему и нажмите «Apply». Ваши настройки применятся и сгенерируется новый файл ~/.gtkrc-2.0.
Установка gtk3 темы
Воспользуйтесь любой инструкцией из интернета по установке через ubuntu-tweak. Не работает? Распакуйте из скачанного архива содержимое папки «Название_темы/gtk3.0» в ~/.config/gtk-3.0« и запустите какое-либо приложение, использующее gtk3 (например gedit).
Установка openbox темы
Здесь все очень просто: с box-look.org вы скачаете .obt файл - архив с темой. С помощью obconf выберите его, нажав в окне этой программы «Установить новую тему…»
Ссылки
Форум ubuntu.ru :
Документация:
Оформление Openbox: