Настройка и использование Openbox

Материал из Gentoo Linux Wiki

Перейти к: навигация, поиск
Вернуться в раздел руководства


Содержание

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

Openbox with aterm, gkrellm, torsmo, idesk, and pypanel (desktop from Ninjai)
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

Примечание: Текущий релиз KDE использует нестандартный протокол для системного трея, который требует взаимодействия с оконным менеджером. Учитывая эту особенность, Openbox использует kdetrayproxy, для включения которой необходимо прописать в ~/.xinitrc

Файл: ~/.xinitrc
# Startup stuff for X

# Make openbox the KDE window manager
export KDEWM=openbox

# Make KDE system tray apps work
kdetrayproxy &

# 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


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

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

Если у вас установлен gdm, то при установке openbox, portage добавит /usr/share/xsessions/openbox.desktop файл

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

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

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

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

Утилита Obconf
Утилита Obconf

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 это:

  • pypanel - Панель, основанная на Python, спортивные иконки, прозрачность, и прочее, при этом занимает всего 25K (в исходниках)
  • FSPanel - F***ing Small Panel, Быстрая и мальенькая панелька с 9Kb кода!
  • FBPanel - Занимает 77Kb исходного текста, FBPanel основана FSPanel, с дополнительными возможностями.
  • kicker - Панелька от KDE, работает довольно хорошо, окромя некоторых кнопок (выйти, залочить и т.д.)
  • perlpanel - Панелька, написанная на perl, с иконками, и поддержкой многих апплетов, при желании легко написать свой апплет.
  • Apwal - Висит у меня на alt+space, вызывает под мышкой меню с иконками часто используемых программ.Посмотреть пример

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

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

  • kdesktop - KDE's Desktop Manager, работает без ошибок.
  • idesk - Маленький, быстрый и в комбинации с idesktool прост в использовании.
  • rox - Быстрый Декстоп с подержкой кучи плагинов и расширений.

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

  • feh - Легкий просмотрщик графики, поддерживает много форматов и обладает множеством функций, в том числе позволяет установку фонового изображения:

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

Файл: ~/.xinitrc

eval `cat $HOME/.fehbg` &
exec openbox

  • xsetbg - Устанавливается обычно с X, но не поддерживает множество форматов и сложен в управлении.

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

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

Личные инструменты
На других языках