Openbox

Материал из Gentoo Linux Wiki
Перейти к: навигация, поиск


Содержание

[править] Определение

Файл:Openbox.jpg
Openbox with aterm, gkrellm, torsmo, idesk, and pypanel (desktop from Ninjai)
  • Openbox это соответствующий стандартам, быстрый и легкий X11 оконный менеджер под лицензией GPL, который может работать самостоятельно или в сочетании с Gnome или KDE
  • Openbox 3 полностью переписан заново, Openbox 2 и ниже основан на коде Blackbox 0.65.0.

Openbox 2 был написан на C++ с использованием только X11 библиотек. Openbox3 переписан на C с зависимостью на libxft.

[править] Особенности Openbox

Некоторые особенности на которые стоит обратить внимание

  • ICCCM и EWMH стандартизирован
  • Чрезвычайно быстрый
  • Последовательные горящие клавиши
  • Настраиваемые действия для мыши
  • Window resistance
  • Поддeрживает вывод изображения на несколько мониторов (Xinerama)
  • Интерактивное меню
  • Написан на C

[править] Установка и запуск

Для установки выполните

emerge openbox

для установки дополнительных тем можно выполнить

emerge openbox-themes

после нескольких минут компиляции можно будет приступить к настройке

[править] Openbox и Gnome

В Gnome по умолчанию используется metacity. Для переключения с metacity в Openbox выполните

openbox --replace

Затем выберите сохранить сессию при выходе из Gnome что бы при следующем входе стартовал Openbox.

Примечание: Для Gnome 2.4, gnome-panel не имеет собственных горячих клавиш для показа Главного меню и командной строки и использует для этого функции оконного менеджера. Openbox использует для этого gnome-panel-control, которые может быть использован для привязки горячих клавиш к gnome-panel. Используйте --main-menu опцию для показа панели Gnome и --run-dialog для показа командной строки.

[править] Openbox и KDE

KDE по умолчанию использует kwin. Для переключения в Openbox необходимо выставить переменную в стартовых скриптах

export KDEWM=openbox
Файл: ~/.xinitrc
# Startup stuff for X

# Make openbox the KDE window manager
export KDEWM=openbox

# Start the KDE environment
startkde

[править] Openbox сам по себе

Если вы хотите использовать Openbox в одиночном режиме, то измените $HOME/.xinitrc или /etc/X11/xinit/xinitrc следущим образом:

Файл: ~/.xinitrc or /etc/X11/xinit/xinitrc
#Startup stuff for X
exec openbox-session

[править] Настройка через менеджер дисплея

Вы можете почитать документацию по настройке вашего менеджера дисплея про то как добавить дополнительные пункты. Или можно просто подправить файл ~/.xsession. Этот файл - обычный скрипт который может быть таким же, как и в вышеприведенном примере .xinitrc. С этим методом вам выбирать какая оболочка будет загружаться.

При установке openbox, portage добавит файл /usr/share/xsessions/openbox.desktop что даст возможность выбирать openbox в качестве оконной оболочки через меню логина таких менеджеров как gdm и kdm.

[править] Конфигурация

Когда Openbox стартует в первый раз, то выглядит это достаточно странно, потому как ничего нету и только по правому клику выпадает меню.

Конфигурация Openbox достаточна проста, потому как всё хранится в XML файлах, которые можно редактировать в простом текстовом редакторе, также можно воспользоваться утилитой Obconf.

[править] Утилита Obconf

Файл:Obconf.png
Утилита Obconf

x11-misc/obconf это Openbox Configurator, и позволяет изменить общие настройки Openbox.

emerge obconf

Эта утилита не может изменить меню, и если что-то надо поправить в XML файле, то лучше это сделать ручками.

[править] Утилита menumaker

Menu Maker это программа, созданная для интеграции меню из разных оконных менеджеров таким образом, чтобы они не конфликтовали/пересекались между собой в выборе программ

Так как menumaker не является частью openbox, вам придётся установить его самостоятельно:

Code: emerging menumaker
$ su 
# emerge -va menumaker
# exit
$ mmaker -vA OpenBox3

Заметьте, что это действие добавит /очень много/ нового в ваше меню.

[править] Правим ручками

За дополнительной информацией можно заглянуть на Openbox Configuration Page Файлы конфигурации расположены в ~/.config/openbox/ для каждого пользователя или глобальный файл в /etc/xdg/openbox/

Два файла, которые там расположены

  • rc.xml описывает общие опции, горячие клавиши, команды для мыши.
  • menu.xml описывает меню при вызове правым кликом мыши

Простой пример menu.xml

Файл: menu.xml
 <?xml version="1.0" encoding="UTF-8"?>
 
 <openbox_menu xmlns="http://openbox.org/"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://openbox.org/
                 file:///usr/share/openbox/menu.xsd">
 
 <menu id="appall-menu" label="Apps">
 <menu id="apps-menu" label="Applications">
   <item label="Firefox">
     <action name="Execute"><execute>firefox</execute></action>
   </item>
     <item label="Links">
     <action name="Execute"><execute>links -g</execute></action>
   </item>
   <item label="AMSN">
     <action name="Execute"><execute>amsn</execute></action>
   </item>
   <item label="Blender CVS">
     <action name="Execute"><execute>/home/blender/blender/blender -w</execute></action>
   </item>
   <item label="XChat-2">
     <action name="Execute"><execute>xchat-2</execute></action>
   </item>
   <item label="Torsmo">
     <action name="Execute"><execute>torsmo</execute></action>
   </item>
   <item label="Scrot">
     <action name="Execute"><execute> scrot $f /home/smerity/ping.png </execute></action>
   </item>
 </menu>
 <menu id="games-menu" label="Games">
   <item label="Frozen Bubble">
     <action name="Execute"><execute>/usr/games/bin/frozen-bubble</execute></action>
   </item>
   <item label="FreeDroid">
     <action name="Execute"><execute>/usr/games/bin/freedroid</execute></action>
   </item>
   <item label="Amor">
     <action name="Execute"><execute>/usr/kde/3.3/bin/amor</execute></action>
   </item>
   <item label="XBill">
     <action name="Execute"><execute>/usr/games/bin/xbill</execute></action>
   </item>
   <item label="SuperTux">
     <action name="Execute"><execute>/usr/games/bin/supertux</execute></action>
   </item>
   <item label="WMFortune">
     <action name="Execute"><execute>wmfortune -s 19999</execute></action>
   </item>
 </menu>
 <menu id="term-menu" label="Terminals">
  <item label="Smerterm">
     <action name="Execute"><execute>aterm -bg LightBlue -tr -tint LightBlue -sh 70 -fade 70 -bgtype scale -name
 Smerity -ls -fg grey +st</execute></action>
   </item>
   <item label="Aterm">
     <action name="Execute"><execute>aterm</execute></action>
   </item>
   <item label="Xterm">
     <action name="Execute"><execute>xterm</execute></action>
   </item>
   <item label="Rox FM">
     <action name="Execute"><execute>rox /root/</execute></action>
   </item>
 </menu>
 </menu>
 
 <menu id="kde-menu" label="KDE">
   <item label="Kicker">
     <action name="Execute"><execute>kicker</execute></action>
   </item>
   <item label="KDesktop">
     <action name="Execute"><execute>kdesktop</execute></action>
   </item>
   <item label="KDE System Guard">
     <action name="Execute"><execute>ksysguard</execute></action>
   </item>
 </menu>
 
 <menu id="open-menu" label="OpenBox Apps">
   <item label="ObConf">
     <action name="Execute"><execute>obconf</execute></action>
   </item>
   <item label="Reconfigure">
     <action name="Reconfigure" />
   </item>
   <separator />
   <item label="Feh">
     <action name="Execute"><execute>feh --bg-scale /home/mountain_man2.jpg</execute></action>
   </item>
   <item label="Menu.xml">
     <action name="Execute"><execute>nedit /etc/xdg/openbox/menu.xml</execute></action>
   </item>
   <item label="Rc.xml">
     <action name="Execute"><execute>nedit /etc/xdg/openbox/rc.xml</execute></action>
   </item>
   <separator />
   <item label="Gkrellm">
     <action name="Execute"><execute>gkrellm2</execute></action>
   </item>
   <menu id="kdm-menu" />
 </menu>
 
 <menu id="root-menu" label="Openbox 3">
   <item label="Smerterm">
     <action name="Execute"><execute>aterm -bg LightBlue -tr -tint LightBlue -sh 70 -fade 70 -bgtype scale -name Smerity -ls -fg grey +st</execute></action></item>
   <item label="Konqueror">
     <action name="Execute"><execute>/usr/kde/3.3/bin/konqueror / </execute></action>
 </item>
   <menu id="appall-menu" />
   <menu id="open-menu" />
   <separator />
   <menu id="client-list-menu" />
   <separator />
   <item label="Nedit">
     <action name="Execute"><execute>nedit</execute></action>
   </item>
   <item label="Notes">
     <action name="Execute"><execute>nedit /home/Notes</execute></action>
   </item>
   <separator />
   <item label="Reboot">
     <action name="Execute"><execute>reboot</execute></action>
   </item>
   <item label="Exit">
     <action name="Exit" />
   </item>
 </menu>
 
 </openbox_menu>

[править] Иконки в openbox menu

Начиная с версии 3.5.0 вы можете устанавливать иконки в меню openbox. Для этого:

1) Собрать openbox c поддержкой библиотеки imlib: Добавьте USE flag "imlib" для x11-wm/openbox в ваш файл /etc/portage/package.use. Пример:

"x11-wm/openbox imlib"

И запустите #emerge x11-wm/openbox

2) Добавьте <showIcons>yes</showIcons> в секцию <menu> файла rc.xml

3) Добавьте параметр icon="<path>" для необходимых пунктов в файл menu.xml:

<menu label="Shells" icon="/usr/share/icons/shell.png">
	<item label="xterm" icon="/usr/share/icons/xterm.png"><action name="Execute">
		<execute>xterm</execute>
	</action></item>


[править] Панели

Основные панели для Openbox это:

  • x11-misc/fbpanel - Удобная панель FBPanel основана на gtk и FSPanel, с дополнительными возможностями.
  • x11-misc/tint2 - Действительно очень маленькая панель, специально разработанная для Openbox3 на чистом C (имеет зависимости только от библиотек pango, cairo и imlib). Имеется поддержка системного трея.
  • x11-misc/pypanel - Панель, основанная на Python, спортивные иконки, прозрачность, и прочее, при этом занимает всего 25K (в исходниках)
  • x11-misc/fspanel - F***ing Small Panel, быстрая и мальенькая панелька с 9Kb кода!
  • kicker - Панелька от KDE3, работает довольно хорошо, окромя некоторых кнопок (выйти, залочить и т.д.)
  • x11-misc/perlpanel - Панелька, написанная на perl, с иконками, и поддержкой многих апплетов, при желании легко написать свой апплет.
  • x11-misc/apwal - Вызывает под мышкой меню с иконками часто используемых программ (как это выглядит)

[править] Настройки рабочего стола

Десктопы на выбор:

  • plasma из KDE4 (kde-base/plasma-workspace) - Самый универсальный и расширяемый, но и самый тяжёлый менеджер.
  • kdesktop - KDE3's Desktop Manager.
  • x11-misc/idesk - Маленький, быстрый и в комбинации с idesktool прост в использовании.
  • rox-base/rox - Быстрый Декстоп с подержкой кучи плагинов и расширений.
  • x11-misc/pcmanfm - Менеджер файлов, который может отрисовывать рабочий стол с иконками.

[править] Фоновые изображения

  • media-gfx/feh - Легкий просмотрщик графики, поддерживает много форматов и обладает множеством функций, в том числе позволяет установку фонового изображения:
feh --bg-scale /home/user/desktop.jpg

Одно из преимуществ feh состоит в том, что можно сохранить команду в ~/.fehbg чтобы автоматически устанавливать обои при старте X, поправьте ваш ~/.xinitrc:

Файл: ~/.xinitrc
eval `cat $HOME/.fehbg` &
exec openbox
  • x11-terms/eterm - Полезный графический терминал. Обладает большим количеством функций чем xterm. Одна из них позволяет устанавливать фоновое изображение:
Esetroot -center /home/user/some_wallpaper.png

[править] Заключение

Openbox это быстрый оконный менеджер, который использует менее 1 Mb памяти, легок в настройке и удобен в работе.

[править] Ссылки

Источник — «http://ru.gentoo-wiki.com/wiki/Openbox»
поддержка по wiki
На других языках