Openbox/Guide/ru

Это руководство покажет Вам как установить оконный менеджер Openbox и упомянет множество возможных программ для использования в соединении с сессией Openbox.

Что такое Openbox?
Итак, Вы установили X-сервер и поняли, что TWM просто не может быть приемлемым для Ваших нужд. Вы также, может быть, имели некоторый опыт работы с полновесными окружениями рабочего стола, такими как KDE, GNOME , и Xfce. Один из компонентов этих крупных окружений рабочего стола называется оконный менеджер (window manager, или в сокращении WM). Оконный менеджер отвечает за появление и размещение контейнеров (или "окон"), внутри которых запускаются программы. Openbox - это минималистичный оконный менеджер без рюшек и оборочек.

Почему я должен это использовать?
Openbox, в отличие от более крупных окружений рабочего стола, зависит от очень небольшого количества библиотек. По этой причине, он может предоставить легковесное графическое окружение, которое запускается очень быстро, даже на устаревшем аппаратном обеспечении. Является ли Ваше аппаратное обеспечение новым или старым, Openbox также предусматривает легконастраиваемую и ненавязчивую рабочую среду. Это значит, что если Вам не нужна панель задач, часы, лишняя панель или любая другая программа, эти возможности оставлены на Ваш выбор!

Первоначальная установка
После того как Вы установили и настроили, установка Openbox может быть выполнена одной простой командой:

Как и в случае с другими оконными менеджерами и окружениями рабочего стола, Вам нужно сообщить X-серверу, чтобы он загружал Openbox автоматически, добавив его в.

Это автоматически запустит сессию Openbox, когда Вы введете  в терминале.

Теперь, когда Вы установили Openbox и добавили его в Ваш, продолжайте и запустите команду , чтобы увидеть Openbox в действии. Как видите, рабочий стол в полном беспорядке! Следуя философии Openbox, то, что Вы видите, это чистая среда, из которой Вы можете построить рабочий стол в полном соответствии с Вашим вкусом.

Так как Вы смотрите в черный экран, и ничего больше, Вы можете удивиться, куда подевалось меню. Если Вы кликнете правой кнопкой мыши, Вы заметите, что меню возникает в местоположении курсора. Это меню не что иное как пример, для того чтобы проиллюстрировать стиль меню Openbox. Так как это просто пример, ни один из элементов меню не будет работать, если только Вы не установили эти программы на самом деле. В следующем разделе Вы увидите как создать Ваше собственное меню, которое содержит ссылки на Ваши программы.

Конфигурация меню
Так как меню Openbox по умолчанию, в сущности, бесполезно, по причинам, упомянутым выше, пришло время создать то меню, которое будет работать. Все, что есть в меню Openbox, написано в соответствующим образом названном файле,, который может находиться в пользовательском файле , или в системном файле. По умолчанию, только одним созданным файлом является системный файл, который применяется ко всем пользователям системы.

Простым способом получить основной файл меню, который Вы можете изменить, является использование MenuMaker, который сгенерирует файл, основанный на программах, который установлены на Вашу систему. Чтобы так сделать, Вы должны сначала его установить:

Как только он установлен, убедитесь, что Вы вышли из учетной записи администратора и вошли обратно под учетной записью Вашего пользователя. Затем Вы можете проинструктировать MenuMaker чтобы он создал меню специально используя синтаксис Openbox XML:

Сгенерированное меню будет расположено в. Затем Вы можете по своему выбору оставить его в качестве пользовательского файла, или дополнительно скопировать его в конфигурацию системного меню:

Когда Вы откроете файл в Вашем любимом редакторе (например, vi), Вы можете заметить, что используемые XML-тэги удобочитаемы и легки для понимания. Вы можете по Вашему выбору изменить файл по умолчанию для удовлетворения Вашим нуждам, или Вы можете пожелать написать его с нуля (не беспокойтесь, это на самом деле не так сложно). Основной синтаксис XML-меню выглядит следующим образом:

Приведенный выше пример будет работать с любыми приложениями, которые запускаются со стандартными параметрами в их собственных окнах, но что если Вам нужно добавить параметры к программе во время ее запуска? Это также не проблема, но синтаксис элемента меню будет немного другим.

Просто замените все, что написано заглавными буквами в двух приведенных выше примерах на Ваши данные. Альтернативно, Вы можете запустить, что является графическим интерфейсам, позволяющим Вам создание Ваших собственных меню без необходимости редактировать файл  вручную. Это очень небольшое приложение и оно предлагает неплохой набор возможностей персонализации без всякого ввода XML.

Конфигурация темы и поведения Openbox
Помимо того, что он минималистичный и легковесный, Openbox также на удивление настраиваемый и гибкий. Как пользователь Openbox, Вы можете с легкостью изменять различные настройки, связанные с темой, оформлением, размещением окон, стыковкой окон и т.д. Имеются два параметра для конфигурации этих настроек в Openbox. Вы можете или отредактировать вручную, или Вы можете пожелать использовать GUI для помощи в быстром изменении настроек.

Если Вы хотите редактировать вручную, просто откройте его своим любимым текстовым редактором и начните вносить изменения. Вы также можете пожелать сделать резервное копирование первоначального файла на всякий случай и сохранить его в примерно таком местоположении:. Внутри самого документа существует множество комментариев, которые должны помочь Вам с редактированием. Альтернативно, Вы можете взглянуть на Руководства по конфигурации Openbox.

Если редактирование файла вручную не кажется Вам интересным занятием, Вы можете использовать приложение GTK+ для управления темами и поведением Openbox. Приложение, которым Вы будете пользоваться, называется ObConf, и может быть установлено на систему также легко, как и сам Openbox.

Затем Вы можете открыть конфигуратор, набрав  в терминале. После этого Вы можете продолжить и ввести запись для ObConf в Ваш, так чтобы он отобразился в меню Openbox. Если листинг кода с "редактированием файла menu.xml" выше показался Вам довольно неясным, для того чтобы быть полезным, мы будем использовать ObConf в качестве примера элемента меню:

В то время как ObConf это отличный GUI инструмент для редактирования многих настроек поведения Openbox, он не разрешает управлять таким большим количеством настроек, как представлено в самом файле. Если Вы испытываете проблемы с поиском отдельной настройки, которую Вы хотели бы изменить, пожалуйста, проконсультируйтесь с Openbox Wiki для получения подробностей.

Конфигурация автозапуска
Как упомянуто выше, Вы не увидите кучу всякой всячины, когда запустите команду  в первый раз после установки Openbox. В дополнение к регулированию внешнего вида меню в соответствии с Вашим вкусом и изменению поведения оконного менеджера, Вы, возможно, захотите, чтобы некоторые программы запускались автоматически с сессией Openbox. Существует легко редактируемый сценарий, который позволяет Вам это сделать. Как и файл, имеются два разных местоположения для сценария - системное   и пользовательское.

В сценарии по умолчанию Вы заметите группу строчек, вызываемых для таких программ как gnome-settings-daemon, XDG и других. Эти строчки сгенерируют ошибки при выходе, если у Вас не установлено этих программ и они не сконфигурированы. Самой легкой вещью при начале работы с Openbox будет просто раскомментировать эти строчки, используя символ #.

В примере выше, символ комментария (#) был добавлен перед каждой строкой. Комментирование предпочитается просто удалению строк, потому что Вы можете захотеть включить поддержку некоторых из тех элементов запуска позже. Таким образом, сохранение строчек по умолчанию на месте может облегчить этот процесс.

Добавление Ваших собственных программ в сценарий так же легко, как и вписывание имени программы для многих приложений. Например, если у Вас установлен Conky (легковесный системный монитор) и Вы хотите, чтобы он запускался автоматически с сессией Openbox, просто добавьте следующую строку в Ваш :

Добавление Conky в Ваш autostart.sh

Амперсанд (&) после команды позволяет этому приложению загружаться в фоновом режиме. Вы, скорее всего, захотите загрузить все приложения в Вашем сценарии в фоновом режиме, потому что выполнение этого позволит Openbox и другим программам загружаться без завершения предыдущей программы.

Конфигурация PolKit
Множество приложений зависят от фреймворка аутентификации PolKit. Вам может потребоваться агент PolKit, такой как , запущенный в Вашей сессии Openbox.

Сначала установите агент:

Теперь настройте PolKit на автоматический запуск, когда Вы выполняете вход в Openbox. Добавьте следующую строку в (для одного единственного пользователя) или  (для всех пользователей):

Автоматический запуск PolKit

Настройка фона
Некоторые вещи, которые Вы могли воспринимать как сами собой разумеющиеся в полновесных окружениях рабочего среда, не включаются по умолчанию в Openbox. Одной из таких вещей является настройка фона рабочего стола. Для того чтобы поместить изображение в качестве Ваших обоев, Вам нужно поставить такую программу как feh или nitrogen. - это простая программа просмотра изображений, которая также может устанавливать фон рабочего стола и может быть легко помещена в сценарий автозапуска. Как только Вы поставили , Вы можете запустить следующую команду, чтобы установить фон:

feh имеет много других параметров помимо --bg-scale, который отмасштабирует изображение до разрешения экрана. Проконсультируйтесь с документацией feh.

После того как Вы установили фон вручную, в Вашем домашнем каталоге будеть создан файл. Этот файл просто содержит команду, приведенную выше, которую Вы вводили в терминале, и автоматически обновляется когда Вы вызываете другую команду для установки фона. Теперь, для того чтобы установить фон автоматически после входа в систему, Вы можете добавить следующую строку в сценарий :

Если Вам не особо нравится идея запуска команды в терминале для того чтобы установить фон, Вы можете кроме того использовать. Он позволит Вам установить папку для фоновых изображений, просмотреть миниатюры этих изображений и подогнать по размеру экрана, растянуть или замостить их на Вашем рабочем столе.

Установка  и добавление его в меню Openbox требует еще нескольких шагов, которые вполне очевидны. Во-первых, Вам надо запустить команду. Во-вторых, Вам потребуется запустить  с добавленным каталогом с файлами фона:

В третьих, Вы можете настроить фоновое изображение, но его не будет после того, как Вы выйдете из системы. Как и в случае с , Вам нужно восстановить фон, отредактировав сценарий , чтобы он включал следующую строку:

Это заставить nitrogen загружаться автоматически, когда Вы запускаете сессию Openbox, и это может привести к немного более медленному времени загрузки, чем использование feh.

Программы для использования с Openbox
Ниже следует список программ, которые Вы можете захотеть использовать в среде Openbox. В то время как список содержит множество эмуляторов терминала, файловых менеджеров, панелей и т.д., он ни в коем случае не должен рассматриваться как исчерпывающий. Если ни одна из перечисленных программ не удовлетворяет Вашим нуждам, пожалуйста, проверьте соответствующие категории в дереве портежей для получения большего количества возможностей.

Эмуляторы терминала

 * LXterminal - это терминал по умолчанию для LXDE. Он очень легковесный, и основан на VTE (виртуальном эмуляторе терминала). В то время как EvilVTE предлагает намного больше возможностей для конфигурирования (включая прозрачность), LXterminal имеет графический интерфейс для некоторых из наиболее распространенных параметров (шрифт, цвета и так далее).


 * EvilVTE - это чрезвычайно легковесный эмулятор терминала, основанный на (Вы уже догадались) VTE. Он поддерживает вкладки, множественные кодировки, так же как и легкий и расширяемый файл конфигурации.


 * Mrxvt - это клон rxvt со множественными вкладками с поддержкой XFT, прозрачного фона и CJK. Его особенностью также является поддержка сессии для каждой вкладки.


 * Aterm поддерживает прозрачность и обратную совместимость с rxvt. Первоначально он был разработан для оконного менеджера AfterStep, но легко интегрируется в другие окружения.


 * Eterm - это терминал, основанный на vt102 и разработанный для того, чтобы быть более функциональной заменой для xterm.


 * Rxvt-unicode - это клон rxvt, который поддерживает Unicode, демоны, встроенный интерпретатор perl и множественные шрифты одновременно.


 * Terminal - это терминал рабочего стола Xfce по умолчанию, основанный на виртуальном эмуляторе терминала VTE, поэтому он требует некоторые библиотеки Xfce для запуска. Однако, он все еще довольно быстр, поддерживает прозрачность и легконастраиваем.

Файловые менеджеры

 * PCManFM - это легковесный файловый менеджер среды рабочего стола LXDE. Он поддерживает просмотр во вкладках (tabbed browsing), перетаскивание, миниатюры для изображений, закладки, управление томами, поиск и т.д. Он также предусматривает поддержку управления фоном рабочего стола и рисования иконок рабочего стола (обе функции включаются на выбор).


 * Thunar - это стандартный файловый менеджер из Xfce. Он поддерживает групповое переименование файлов, настраиваемые пользователем действия и фреймворк для расширения функциональности, наряду со множеством опциональных плагинов, таких как плагины для редактирования медиа-тэгов. Он зависит от нескольких библиотек Xfce, но все еще сделан более легким в сравнении с другими файловыми менеджерами, такими как Nautilus (из окружения рабочего стола GNOME) и Konqueror (из KDE).


 * Nautilus - это мощный файловый менеджер окружения рабочего стола GNOME. Он включает в себя управление томами, миниатюры для изображений, поиск и некоторую конфигурацию системы. Так как он зависит от многих библиотек GNOME для работы должным образом, он может показаться немного более тяжелым в сравнении с другими файловыми менеджерами.


 * Gentoo (не имеет отношения к этому великолепному дистрибутиву Linux) - это двухпанельный файловый менеджер. Он исключительно легковесен, но не обладает некоторыми функциями, которые теперь являются широко известными в современных файловых менеджерах. Он определенно должен рассматриваться для более старого аппаратного обеспечения, или если Вы хотите минимальную установку.


 * emelFM2 - это еще один файловый менеджер в духе Midnight Commander. Он обладает двухпанельным окном. Как и файловый менеджер Gentoo (приведенный выше), он минималистичен и не включает множество функций, преобладающих в более новых файловых менеджерах. Однако, он предлагает несколько функций, не встречающихся в других файловых менеджерах, таких как встроенная командная строка в отдельной панели.

Управление рабочими столами

 * Хотя PCManFM - это, в основном, файловый менеджер, он также дает Вам возможность управлять фоном рабочего стола (вместо использования  или  ) и рисовать иконки рабочего стола.


 * iDesk - это простая программа, используемая для рисования иконок рабочего стола. Она поддерживает шрифты с тенью и сглаживанием, изображения PNG, прикрепление размещенных элементов к сетке ("snap-to-grid") и изменение фона рабочего стола.

Панели

 * Tint2 - это простая, легковесная панель задач. Она поддерживает цвет, прозрачность, часы, перетаскивание между виртуальными рабочими столами, системный трей и поставляется с приложением мониторинга батареи. Вы даже можете добавить кнопку для отображения меню приложений из оконного менеджера.


 * PyPanel - это легконастраиваемая панель, написанная на Python и C. Она поддерживает прозрачность, обычное затенение (shading), затенение цветом (triting), конфигурацию местоположения и размещения компонентов (layout), конфигурацию типа шрифта, автоскрытие, запускатель приложений и т.д.


 * LXPanel - это панель задач по умолчанию из LXDE. Она представляет запускатель, меню, часы и инструмент конфигурации, основанный на GUI. Она богата функциями при том, что зависит от очень небольшого числа пакетов, что делает ее хорошим выбором для легковесной системы.


 * Xfce4-panel - это панель по умолчанию из окружения рабочего стола Xfce. Она поддерживает запускатели приложений, отделяемые меню (detachable menus), пейджер (переключатель рабочих столов xfce), планировщик задач (tasklist), часы, апплеты и т.д. Он, однако же, требует некоторые библиотеки Xfce, которые не являются зависимостями для некоторых других панелей.


 * FBpanel - это простая, чрезвычайно легковесная панель, которая поодерживает списки окон, запускатели, часы и несколько других "плюшек". Это не самая функциональная панель, и она может быть обременительной в конфигурации, но она требует для запуска только GTK+.

Переключатели рабочих столов и области уведомлений

 * NetWMpager - это EWMH-совместимый переключатель, который отлично интегрируется в любое окружение рабочего стола, оканчивающееся на *box. Он не настолько навязчивый, и гораздо более легко настраиваемый чем большинство других переключателей.


 * BBpager - это переключатель рабочих столов, который был первоначально написан для BlackBox, но также хорошо работает и с Openbox. Хотя, он имеет некоторые зависимости от BlackBox.


 * Docker - это область уведомлений, специально разработанная для Openbox. Они не имеет дополнительных зависимостей и дает Вам возможность просмотра и использования значков в области уведомлений для поддерживаемых приложений, основанных на GTK и QT.


 * Trayer - это область уведомлений, которая была доработана из кода FBpanel. Она часто используется с FVWM. Одним из ее достоинств является то, что она поддерживает прозрачность.

Управление сессиями

 * LXsession - это менеджер сессий LXDE без излишеств. Он спроектирован с запоминанием приложений, которые были запущены пользователем со времени последнего выхода из системы, для того чтобы автоматически перезапускать эти программы. Он также поддерживает демон HAL.


 * Xfce4-session - это менеджер сессий из, как Вы уже догадались, Xfce. Он способен сохранять несколько сессий, и предусматривает методы для выхода из системы, перезагрузки и переключения компьютера в режим энергосбережения. Он, однако же, имеет много зависимостей Xfce.

Инструменты конфигурации

 * ObConf - это приложение с графическим интерфейсом пользователя, позволяющее настройку оконного менеджера Openbox без редактирования файла вручную.


 * LXappearance - это конфигуратор темы и иконок GTK, используемый с LXDE. Он предусматривает приятный графический интерфейс для установки темы и иконок, при зависимости от небольшого количества дополнительных библиотек.


 * GTK-ChTheme is a simple application allowing for easier switching of GTK themes and your font. Currently, it does not allow for the switching of icon themes.


 * GTK-theme-switch is another simple application that lets you change your GTK theme.

Miscellaneous

 * Conky is a lightweight system monitor that can display over 250 objects, including date and time, CPU usage, memory usage, IMAP/POP3 email, top processes, hardware sensor data, and even info from your music player. It is highly customisable both in appearance and data display. We also have a Conky configuration guide available.


 * Leafpad is a simple text editor. It is very lightweight, but includes features like codeset options, and the ability to undo/redo without limits.


 * feh is a simple image viewer that runs from the terminal, but it also has many other features. It can display a slideshow of images, create an index print, dynamically zoom, and set the desktop background (detailed instructions above).


 * GPicView is a GUI-based image viewer. Though it has more dependencies than , it is incredibly quick to load and run.


 * SLiM is the Simple Login Manager, which allows you to login to your Openbox session via a graphical interface instead of the terminal. It has very few dependencies, and supports many themes, but should not be used on machines that require remote logins.

LXDE
If installing each component of a working environment sounds like a little too much customisation, but you still want the flexibility of Openbox, you may want to look into a desktop environment that uses Openbox as its default window manager. That environment is LXDE, the Lightweight X Desktop Environment. Designed to require even fewer system resources than Xfce, it is built around Openbox.

Openbox inside GNOME
If you already have a GNOME environment installed, you may just want to replace the Metacity window manager with Openbox. Fortunately, this is quite a simple task! You will need to fire up your favourite editor, open your file, and put the following command inside it:

Adding an Openbox-GNOME session to your .xinitrc

If you use GDM or another graphical login manager, you will see a new "GNOME/Openbox" option in your session menu. You can simply select that option instead of manually editing your.

Openbox inside KDE
Say you have KDE installed and like it, but you want more flexibility with your window management than KWin offers. You can use Openbox as your window manager inside of KDE by simply editing your file, and replacing your current exec command with the following:

Adding an Openbox-KDE session to your .xinitrc

Now when you issue  you will see KDE, but instead of KWin, you will have the customisability of the Openbox window manager.

If you use KDM or another graphic login manager, you will see a new "KDE/Openbox" option in your session menu. You can simply select that option instead of manually editing your.

Openbox inside Xfce
If you use Xfce4 and would like to replace xfwm4 with Openbox, you will need to go about it a little differently than with KDE or GNOME. First, you need to start your normal Xfce session, and open up a terminal. From the terminal, issue the following command:

Second, you need to exit out of your Xfce session, and make sure to tick the checkbox that says "Save session for future login." This will keep Openbox as your default window manager. Third, you will notice that you can't logout properly when using the default menu action. To fix this problem, open up your, and locate this line:

Change it to this:

External resources
While this document will easily take you through the inital installation and customisation of Openbox, it is by no means the only reference on the topic. There are several other resources that will aid you in creating your perfect Openbox setup. Some of them are listed below:


 * On The Official Openbox website you will find more detailed information regarding theming, creating menus (including pipe menus), autostart scripting, and much more. This site also has information regarding new releases, upgrades, and instructions on how you can contribute to development.


 * The Urukrama's Guide to Openbox blog contains a plethora of information about switching GTK+ themes, setting up keybindings, desktop effects, and other programs to use in conjunction with Openbox. Though the tutorial was originally written for use with Ubuntu, everything is applicable to Gentoo (and other Linux distributions for that matter).


 * Box-Look provides numerous themes, icons, wallpapers, fonts, and tools to be used with Openbox (as well as the other *box window managers like Fluxbox, Blackbox, PekWM, etc.)

Acknowledgements
We would like to thank the following authors and editors for their contributions to this guide:


 * nathanzachary
 * nightmorph