Openbox - настройка в Ubuntu

 18.06.2009 00:00 | Руслан Горбенко | (стиль написания и орфография автора)

      Рано или поздно, большинство пользователей ОС Linux, приходят к мнению, что в Gnome, KDE много лишнего и ненужного. Но, согласитесь, ставить целиком систему и потом чистить от лишнего - не верный путь. Почему бы не собрать систему с нуля? Тем самым, установив только то, что на самом деле нужно и получить быструю, качественную ОС.
      В этой статье описана не только установка openbox, но и то как собрать систему с нуля, настроив ее при этом под свои, конкретные задачи. Так что если вы не планируете собирать систему, а хотите только попробовать что же такое openbox на уже установленное ubuntu, то не обращайте внимания на установку иксов.
Я опишу то, что сам на днях делал, как устанавливал, как настраивал.


1. Установка Ubuntu 9.04 c Minimal CD.  [к содержанию]


Для начала необходимо скачать дистрибутив Ubuntu Minimal. Он занимает крайне мало места. Грузимся с него и, следуя указаниям, устанавливаем на компьютер.
Стоит отметить, что в процессе установки необходимо настроить интернет, т.к. установка будет идти по сети.
После установки мы получим чистую систему, с минимальным набором ПО.

2. X Window и Openbox.  [к содержанию]


Теперь перейдем непосредственно к установке Иксов. Выполните команду:
sudo aptitude install xorg
Не думаю, что стоит проверять правильно ли они установились, т.к. на этом этапе проблем быть не должно.
Вы можете почитать довольно много материалов на тему легких WM, их не мало: Openbox, Fluxbox, Icewm, LXDE и другие. Я же выбрал для себя Openbox. Почему? Он действительно легкий, нет панели при установке, т.е. можно выбрать какую ставить, если это действительно нужно, легко читаемые конфиги. Именно Openbox мы сейчас и будем ставить.
sudo aptitude install openbox
Теперь мы можем смело проверить, что же у нас установилось! Наберите команду:
startx
Вы увидите пустой рабочий стол с курсором мыши по центру. Это означает, что мы все сделали правильно и система работает корректно.


3. Много маленьких программ.  [к содержанию]


3.1 Настройка внешнего вида рабочего стола.  [к содержанию]


Для настройки внешнего вида рабочего стола есть достаточно простая программка, называется obconf. Она позволяет достаточно качественно настроить рабочий стол. Давайте установим программу. Наберите в терминале (открыть его можно нажав правой кнопкой по рабочему столу и выбрав terminal):
sudo aptitude install obconf
Запустим программу командой obconf. Выглядит она вот так:
Тут есть одно, очень удобное, "НО"! Вам достаточно скопировать папку с темой из любого другого дистрибутива, и, нажав кнопку Create a theme archive (.obt), создать из этой папки тему, пригодную для последующей установки. Я таким образом скопировал тему из дистрибутива Crunchbang.

3.2 Настройка меню openbox  [к содержанию]


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

sudo aptitude install obmenu

Запустим:

obmenu

Откроется вот такое окошко:

Теперь раскроем пункт Openbox 3 menu:

Это и есть основное приложение для настройки меню. Но так же можно вручную отредактировать файл rc.xml, он находится в /home/ваш_логин/.config/openbox
Я не думаю, что у Вас возникнут трудности в добавлении пунктов, но, все же, я опишу как это делается. Для добавления пункта, надо нажать конпку New Item, после чего в списке появится новый пункт, переименуйте его так, как Вам надо, в выпадающем меню Action, должен быть выбран пункт Execute, в последнем поле Execute, необходимо ввести ту команду, которая будет запускать нужное приложение.
Если Вам надо создать группу пунктов, например "Офис", то нет ничего проще, чем нажать на New Menu, после чего добавлять туда пункты как описано выше.

3.3 Выбор темы GTK и иконок  [к содержанию]


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

sudo aptitude install lxappearance

Выглядит вот так:

Установка тем тут происходит следующим образом. Берем архив темы *.tar.gz например, распаковываем, после чего папку с темой копируем сюда /usr/share/themes. Перезапустив программу, мы увидим нашу тему в списке.
Я люблю "темные" темы, потому выкладываю 2 варианта:
1. совсем темная - Clearlooks-Zenburn
2. несовсем темная - DarkWay (стоит у меня, ее видно на скринах)
Так же тут можно выбрать тему иконок.

3.4 Автоматическое монтирование дисков, флешек и т.д.  [к содержанию]


Предлагаю установить программку ivman, она позволит автоматически монтировать CD диски и флешки.

sudo aptitude install ivman

Но для полноценного монтирования этого мало. Для правильной работы необходимо добавить пару строк. Откроем файл /etc/PolicyKit/PolicyKit.conf, добавим строку:

org.freedesktop.hal.storage.mount-removable

В итоге файл должен выглядеть вот так:

Теперь можно перезагрузиться, чтоб изменения вступили в силу, а можно пойти ТРУ путем и рестартануть HAL и Иксы. В терминале наберем:

sudo /etc/init.d/hal stop
sudo /etc/init.d/hal start

рестартанем иксы и готово, все что Вы будете вставлять в USB будет подхватываться как положено.
P.S. т.к. конфиг в формате XML, не получается его нормально выложить ввиде текста, потому картинка, сорри.

3.5 Запуск приложений по Alt+F2 (хорошо знакомая комбинация после Gnom'а)  [к содержанию]


Многие из Вас хоть раз запускали приложения комбинацией клавиш Alt+F2, это удобно. В свежеуствновленном openbox нет такой возможности. Но ее нетрудно добавить, установим:

sudo aptitude install gmrun

3.6 Системный трей  [к содержанию]


Это достаточно объемная тема, т.к. вариантов треев достаточно много, есть самостоятельные, есть встроенные в панели и т.д. Я не буду расписывать тему, ибо пишу только то, что реально делал сам. Себе поставил самостоятельный трей и подстроил его под conky, мне так нравится, вот скрин (уменьшать не стал для наглядности, потому отдельным файлом). Установим трей:

sudo aptitude install stalonetray

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

window_type dock
transparent true
geometry 124x24+1550-9
icon_gravity NE
window_layer normal

P.S. у меня разрешение экрана 1680*1050, так что параметр geometry настройте в соответствии с Вашим разрешением.

3.7 Легкий файловый менеджер  [к содержанию]


Дошло время и до файлового менеджера. Тут тоже есть о чем поговорить. Файловых менеджеров не так много, но у каждого есть свои приверженцы. Вот Вам на выбор: pcmanfm, thunar, mc и т.д. Для себя я выбрал pcmanfm. Мне он понравился реальной легкостью, наличием табов, закладок. Вы же можете поставить любой другой менеджер. Выглядит pcmanfm вот так:
Теперь установим:

sudo aptitude install pcmanfm

3.8 Сохранение языка ввода для каждого окна  [к содержанию]


Я думаю, что заголовок говорит сам за себя. Но, все же... Согласитесь, удобно будет, если в каждом окне свой язык вода. Для чего это нужно? Например, вы общаетесь в аське и одновременно пишете какой-либо документ на другом языке. При переключении окон, у Вас будет оставаться тот язык, который был в активном окне, т.е. пишите в асе на русском, переключились на документ на английском, а раскладка стала русской. Так вот чтоб такого не было, нужна программа xxkb, установим:

sudo aptitude install xxkb

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

XXkb.mainwindow.enable: no //убирает окошко с флагом языка
XXkb.button.enable: no //убирает иконку с флагом в заголовке окна

P.S. Подробную инструкцию по настройке программы, можно прочитать тут.

3.9 Включение Num Lock при загрузке openbox  [к содержанию]


Это совершенно необязательная функция, но мне удобно, когда при загрузке компа NumLock активен сразу. Поэтому я поставил себе:

sudo aptitude install numlockx

3.10 Текстовый редактор  [к содержанию]


Тут каждый волен выбрать все, что ему нравится. Если Вам нужен простенький редактор типа "блокнот", то Ваш выбор может пасть на leafpad

sudo aptitude install leafpad

если же нужен редактор с подсветкой синтаксиса, то вполне подойдет хорошо знакомый gedit

sudo aptitude install gedit

3.11 Управление фоном рабочего стола  [к содержанию]


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

sudo aptitude install nitrogen

Выполним nitrogen в терминале. Запустится программа, которая выглядит вот так:

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

nitrogen /home/ваш_логин/папка_с_изображениями

Результатом такой команды будет вот такое окно:


3.12 Терминал  [к содержанию]


Тут все просто. Выберите тот терминал, к которому привыкли. Мне нравятся terminator и tilda (прочитать о настройке тильды можно в статье Установка и настройка Tilda) Устанавливаем:

sudo aptitude install terminator

или

sudo aptitude install tilda

3.13 Системный монитор  [к содержанию]


У меня стоит conky, я считаю, что это самый лучший монитор системы. Достаточно подробно процесс настройки я описал в статьях:

1. Conky - монитор XWindow
2. Conky - мониторинг траффика
3. Conky - мониторинг траффика (ч. 2)

P.S. обратите внимание, если правой кнопкой нажать на ту часть рабочего стола, где находятся conky, то меню не появится, либо моргнет и исчезнет. Это исправляется очень просто. Необходимо в файле rc.xml (~/.config/openbox) внести изменения. Найдите секцию, в которой присутствует "root-menu". Замените action="Press" на action="Click".

Все, теперь при нажатии правой кнопкой по conky, будет нормально отображаться меню.

3.15 Создание скриншотов  [к содержанию]


Привыкли делать скриншоты кнопкой Print Screen? Ну что же, давайте не будем уходить от привычек и реализуем это в openbox. Установим программу scrot:

sudo aptitude install scrot

Если сейчас нажать на Print Screen, то ничего не произойдет. Так и должно быть. Нам необходимо привязать команду к конкретной кнопке. Для этого откроем конфигурационный файл rc.xml, который находится в ~/.config/openbox и добавим в секцию keyboard вот эту привязку:

scrot '%Y-%m-%d-%T-screenshot.png' -e 'mv $f ~/'

Скриншот будет создаваться в Вашей домашней папке, называться он будет так: год-месяц-день-время-screenshot.png. Вы можете сами задать формат имени, изменив параметры блока execute.

P.S. аналогичным образом Вы можете привязать любые команды к любым клавишам или их сочетаниям. Сочетания выглядят вот так: C+A+f - это Ctrl+Alt+f.

На данном этапе у нас установлен необходимый для комфортной работы софт и есть понимание того, как создавать свое меню. Если сейчас перезагрузить компьютер, и опять набрать startx, то Вы обратите внимание, что стол остался точно такой же, как и был в первый раз, т.е. без заставки, которую Вы выбрали, не запустится трей, тильда, коньки, не будут монтироваться флешки и т.д. Так и должно быть, т.к. все маленькие/сопутствующие приложения, надо прописывать в автозагрузку openbox. Итак, идем в папку /home/ваш_логин/.config/openbox и создаем там файл autostart.sh, в нем мы и будем указывать то, что нужно для автозагрузки.

Давайте сразу пропишем фон рабочего стола:

nitrogen --restore &

Теперь при запуске openbox, заcтавка будет на месте. Если Вы установили tilda вместо terminator, то ее надо бы так же прописать:

tilda &

Добавьте сразу вот эти команды:

numlockx on &
xxkb &
conky &
stalonetray &

На этом мы остановимся в добавлении программ для автозапуска, все, что Вам надо пропишите сами, благо, теперь Вы знаете как это делается.

3.16 Просмотр изображений  [к содержанию]


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

- показывает картинки (включая анимированный gif);
- умеет переворачивать изображения, обрезать и менять размер, а так же менять яркость;
- есть слайдшоу, боковая панель для навигации по фоткам;
- возможность открыть картинку сразу в Gimp.

Программа занимает всего 150кб ;) Установим:

sudo aptitude install mirage

3.17 Панель  [к содержанию]


Панелей для openbox существует много. Так что Вам выбирать какую ставить. Я опишу панель tint2, т.к. она единственная мне понравилась. Tint2 можно поставить из родного репозитория, но там старая версия, на данный момент 0.6. С ней есть одна проблема, плохо работает трей. Поэтому мы будем ставить панель из репозитория разработчика (версия 0.7.svn.rev135-1). Добавим:

deb http://ppa.launchpad.net/killeroid/ppa/ubuntu jaunty main

Обновимся командой:

sudo aptitude update

И установим панель:

sudo aptitude install tint2

После запуска, панель появится в нижней части экрана, у нее будут скруглены углы. Вцелом выглядит очень не плохо. Если Вы хотите настроить панель под свои задачи, то отредактируйте файл ~/.config/tint2/tint2rc. Конфиг достаточно простой, так что настроить можно все что угодно.

P.S. если Вы решили установить эту панель, то необходимость в отдельном трее (например: stalonetray) отпадает.

4. Автологин и автозапуск X Window  [к содержанию]


Теперь займемся автоматизацией процесса загрузки системы. Для того, чтобы реализовать автологин пользователя при загрузке системы, нам понадобится программа rungetty

sudo aptitude install rungetty

После установки необходимо в конце файла /etc/event.d/tty1 после слова respawn убрать все и прописать:

exec /sbin/rungetty tty1 --autologin ИмяПолзователя

Теперь Вы избавлены от ввода логина и пароля во время загрузки.

Что же касается автозапуска Иксов, то есть немало способов реализации. Я расскажу только об одном, т.к. не вижу смысла распыляться. Итак, меняем содержимое файла ~/.bash_profile на код приведенный ниже:

if
[ -z "$DISPLAY" ] && [ $(tty) = /dev/tty1 ]; then

if [ -d ~/bin ] ; then

PATH=~/bin:"${PATH}"
fi

while
true
do

startx --
sleep
2
done
fi

В этом варианте, при перезагрузке Иксов, они автоматом запустятся сами, а если Вам надо чтоб Иксы просто закрывались и Вы попадали в консоль, то вот так:

if
[ -z "$DISPLAY" ] && [ $(tty) = /dev/tty1 ]; then
startx
fi

Теперь при загрузке Вы будете авторизованы и сразу попадете в openbox, при условии, что это единственная оконная среда. Если же у Вас установлен не только openbox, то необходимо в файле ~/.xinitrc прописать необходимый для загрузки WM, например вот так:

exec openbox-session или exec icewm или exec fluxbox

5. Перезагрузка Иксов клавишами Ctrl+Alt+Backspace  [к содержанию]


В Ubuntu 9.04, по просьбам пользователей, отключили возможность перезагрузки Иксов по Ctrl+Alt+Backspace. У себя я вернул эту возможность, что и Вам советую.
Для этого надо добавить в файл xorg.conf, который находится в /etc/X11/ вот эти строки:

Section "ServerFlags"
Option "DontZap" "false"
EndSection

6. Openoffice + GTK  [к содержанию]


Мне всегда не нравилось, что Openoffice смотрится обособленно от основной темы рабочего стола. Но и для этой ситуации есть решение.
Нам надо поставить вот этот пакет:

sudo aptitude install openoffice.org-gtk

После чего отредактировать уже известный нам файл autostart.sh, в конец файла добавим вот это:

#Force OpenOffice.org to use GTK theme
export OOO_FORCE_DESKTOP=gnome

После перезагрузки Иксов, офис будет выглядеть так же как и все другие приложения, т.е. начнет использовать GTK тему.

7. Настройка звука (ALSA)  [к содержанию]


Перейдем к настройке звука. Я использую ALSA. Кому нужен PulseAudio, настраивайте сами, т.к. я не вижу для себя реального применения этой прослойки.

Итак, давайте установим вот эти пакеты:

sudo aptitude install alsa-base alsa-utils gstreamer0.10-alsa libesd-alsa0 libpt2.6.1-plugins-alsa libsdl1.2debian-alsa mpg123-alsa

Теперь нам необходимо прописать Вашего пользователя в группу Audio, для этого выполните в консоли:

gpasswd -a ИмяПользователя audio

В целом все, после рестарта звук должен работать. Управлять звуком можно прямо из консоли командой alsamixer, если же хочется нормальной ГУЕвой управлялки, то ставте:

sudo aptitude install gnome-volume-control-pulse


8. Установка кодеков, плагинов и т.д.  [к содержанию]

(BaaTLT: требует другого решения в виду закрытия mediabuntu)

Несложный этап, думаю что каждый из Вас не раз его проходил :)
Добавим репозиторий medibuntu.org, скопируйте в терминал:

medibuntu.orgsudo wget http://www.medibuntu.org/sources.list.d/jaunty.list --output-document=/etc/apt/sources.list.d/medibuntu.list

Теперь установим ключ:

sudo apt-get update && sudo apt-get install medibuntu-keyring && sudo apt-get update

Теперь можно ставить кодеки. Для х32 битной системы:

sudo aptitude install w32codecs

Для х64 битной:

sudo aptitude install w64codecs

Отсюда же можно поставить скайп и многое другое, со списком программ можно ознакомиться на сайте medibuntu.org.
Теперь ставим все остальное:

sudo aptitude install gstreamer0.10-plugins-ugly gstreamer0.10-plugins-ugly-multiverse ttf-mscorefonts-installer flashplugin-nonfree icedtea6-plugin unrar gstreamer0.10-plugins-bad gstreamer0.10-plugins-bad-multiverse gstreamer0.10-ffmpeg libavcodec-unstripped-52 sun-java6-jre zip unzip

Это еще немного кодеков, шрифты, флеш плагин, java, архиваторы.

9. Сетевое окружение  [к содержанию]


Так как же смотреть компы в сети и подключаться к сетевым ресурсам? Есть простой и понятный способ. Нам потребуется пакет pyNeighborhood. Установим:

sudo aptitude install pyNeighborhood

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

В настройках программы надо указать куда конкретно будут подключаться ресурсы, для этого пропишите необходимую Вам папку. Что касается кодировки, то у себя я прописал: codepage=cp1251,iocharset=utf8, после чего папки на русском языке нормально отображаются. Прописывать тут: Edit -> Параметры -> SMB или CIFS -> Options.

После перезагрузки компьютера, все подключенные папки будут отключены, так что процесс подключения надо будет повторить. Хотя если ресурсы статичные, то Вы можете прописать их в fstab. Выглядеть строчка для fstab будет примерно так:

//ip_addres/folder /куда_монтировать cifs codepage=cp1251,iocharset=utf8,rw,mand,nosuid,nodev,user=***,passwd=*** 0 0

Есть другой способ организовать просмотр локальной сети, на мой взгляд более удобный. Нам понадобится установить вот эти пакеты:

sudo aptitude install samba fusesmb

создадим каталог в который будет монтироваться сеть, и дадим следующие права:

sudo mkdir /media/network - тут может быть любой каталог
sudo chmod 777 /media/network
sudo chown :fuse /media/network

Теперь добавим в автозагрузку (~/.config/openbox/autostart.sh):

fusesmb /media/network &

В целом все готово, теперь откроем в pcmanfm созданый каталог, и сделаем на него закладку. После перезагрузки, у вас в этом каталоге появятся все группы и компы, которые есть в Вашей сети.


Ну что же... думаю, пока хватит. Если что-то интересное появится, то я обязательно дополню статью.

1 комментарий:

  1. Здравствуйте. У меня проблема возникла: после работы с программой openbook у исчезла нижняя строка панель управления и все иконки с рабочего стола. И мышка перестала реагировать. Что делать? Помогите пожалуйста. У меня спаркилинукс. Спасибо заранее

    ОтветитьУдалить