IT Notes

Почему я пользуюсь Openbox?

Введение

В качестве основной операционной системы для своего домашнего компьютера я уже 7 лет использую Linux. Я успел перепробовать с десяток различных дистрибутивов, включая OpenSuse, Ubuntu, Mandriva, Debian, Slackware и другие. Одно время даже экспериментировал с FreeBSD. Но для себя я сделал вывод, что самым важным в операционной системе для меня является оперативное обновление репозиториев с пакетами программного обеспечения и "простота" использования. Слово простота взято в кавычки не просто так. В Linux под простотой принято понимать не то, что для каждого действия найдется графическая утилита с кучей кнопок, а то, что это действие можно сделать напрямую с помощью соответствующих конфигурационных файлов. И если знать в каком файле и что надо поменять, то результата можно достичь во много раз быстрее. Однако стоит признать, что иногда и GUI бывает полезным, иначе можно было вообще не выбираться из консоли. Например, интернет-браузеры, работающие в текстовом режиме, вполне пригодны для использования, но я все равно выбираю Chromium по многим вполне очевидным причинам.

В поисках идеального дистрибутива

Первое время я не стал особо заморачиваться по поводу выбора дистрибутива и остановился на достаточно простом и удобном Ubuntu. Меня в нем устраивало и обилие программных пакетов в официальных репозиториях, и скорость их обновления, и то, что все работало "само" из коробки. Да и среда рабочего стола Gnome, которая применялась в Ubuntu на то время, меня вполне устраивала. В отличие от того же KDE (который мне сразу не понравился) она не столь перегружена и очень хорошо работает даже на не самых производительных системах. Потом в Ubuntu перешли на Unity в качестве окружения по умолчанию. По началу я не придал этому особого значения, но вскоре стало очевидно, что Ubuntu еще дальше приблизился к Windows по своей идеологии. Однако нельзя сказать, что это плохо. Для многих пользователей, которые только хотят попробовать Linux, но боятся, что это сложная система и они в ней не разберутся после Windows, это вполне приемлемый выход для плавного погружения в новую ОС.

И вот я решил, что пора попробовать что-то новое. Конечно, можно было взять за основу все тот же Ubuntu и начать допиливать его под себя. Но мне эта идея не понравилась и я решил перейти на дистрибутив, который был создан специально для этого. Идеальным выбором оказался Archlinux. После установки базовой системы вы получаете лишь ядро и минимум консольных утилит, необходимых для дальнейшей настройки. Даже сам установщик на то время был консольной утилитой, а сейчас (на момент написания статьи) пропал и он. Конечно, по началу это несколько усложняет работу. Все равно что перейти с автоматической коробки передач на ручную. Если недостаточно опыта, то вы будете периодически "глохнуть", уходя в прекрасно написанную официальную документацию, которой ОЧЕНЬ много. Но это того стоит. Только так можно получить полный контроль над системой, установив каждое приложение вручную и настроив его для работы "под себя", как надо именно вам.

Подбор графической оболочки

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

Существует три основных типа оконных менеджеров:

  1. Стековые. Можно сказать, что это классический вариант. Он принят, если уж не во всех, то в большинстве сред рабочего стола Linux, а также используется в Windows и OS X;
  2. Фреймовые. Компонуют окна на экране по определенным схемам в виде плиток. Таким образом, экран как бы делится на прямоугольные области, которые можно масштабировать и перемещать. Основным преимуществом является то, что на одном экране можно запустить сразу несколько приложений одновременно, которые автоматически расположатся таким образом, что не будут перекрывать друг друга;
  3. Динамические. Совмещаются преимущества стековых и фреймовых оконных менеджеров. Поддерживают оба режима работы и позволяют переключаться между ними.

Я попробовал по одному оконному менеджеру каждого типа. Из стековых я выбрал Openbox, из фреймовых - howm, а из динамических - awesome. Возможно, кто-то не согласится, но мне концепция фреймов абсолютно не понравилась. Намного удобнее, когда каждое окно отображается крупно и на весь экран. У меня на столе стоит два больших 27-дюймовых монитора, но все равно после запуска 3-4 приложений окна начинают казаться слишком мелкими и с ними становится неудобно работать. Поэтому можно сказать, что фреймовые менеджеры мои ожидания не оправдали. Awesome показался мне более интересным, но и им я пользовался не так долго. Все потому, что я не использовал его фреймовые варианты компоновки, а они составляют 50% его возможностей. В результате я понял, что все это не для меня и занялся серьезной настройкой Openbox.

Настройка Openbox

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

my_openbox_desktop

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

Tint2

Первой необходимостью для меня стало добавление панели, в которой я бы мог видеть те приложения. которые запущены в данный момент. Здесь идеально подошел tint2. Он довольно гибко настраивается и обладает всеми необходимыми возможностями. Он совмещает в себе и панель задач, и системный трей. При желании в нем можно отображать часы, индикатор батареи, регулятор громкости и еще много чего. Но мне эти возможности показались достаточно бесполезными, поскольку, как и в Windows, ими не особо удобно пользоваться из-за мелких размеров. Посмотреть на то, как выглядит панель tint2, вы можете на моем скриншоте. Там она расположена сверху.

Conky

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

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

Вы можете расположить панели conky там, где пожелаете, и вывести на них все, что угодно. Поэтому советую обратить внимание на эту утилиту.

Быстрые клавиши

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

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

Но вернемся к быстрым клавишам. Я настроил Openbox таким образом, что практически каждая клавиша на клавиатуре, нажатая вместе с Win или Ctrl+Alt, образует некое сочетание для действия с окнами или запуска приложений. С помощью клавиатуры я могу сворачивать и разворачивать окна, менять их размер, двигать по экрану и между виртуальными рабочими столами, перемещать с одного экрана на другой. И для каждого действия я подобрал комбинацию клавиш. Например, увеличить громкость я могу нажав Win+0, а уменьшить с помощью Win+9. Если нажму комбинацию Win+T, то мгновенно окажусь на первом рабочем столе в окне с терминалом Sakura. А если нажму Ctrl+V, то на втором экране запустится GVim. Это еще одна удобная возможность Openbox. Приложение можно привязать к нужному экрану и рабочему столу или сделать его плавающим, то есть чтобы при переходе с одного рабочего стола на другой оно всегда оставалось видимым. Например, Skype у меня привязан ко второму экрану, но на каком бы виртуальном рабочем столе я не оказался он всегда доступен и отображается на своем месте.

Ну а что делать, если клавиши на клавиатуре закончатся? Для этого я использую приложение gmrun. Это достаточно простой, но вполне пригодный лаунчер для запуска других приложений. Естественно, для самого gmrun выделено сочетание клавиш и я могу запустить его с помощью Win+]. Хотя мне он не особо нравится из-за слишком уж скудных возможностей. Он не ведет статистику запросов и не предоставляет возможности по быстрому доступу к файлам. Вполне возможно, что в ближайшее время я попробую подыскать ему замену. Ранее я пробовал более навороченные лаунчеры Launchy и Synapse, но что-то меня в них не устраивало.

Заключение

Вот я и рассказал вам вкратце о моем опыте работы с Openbox и Linux вообще. Надеюсь, мой опыт кому-нибудь пригодится. Однако не берусь утверждать, что мой путь является самым правильным, а тем более единственным. Полностью уверен, что любой дистрибутив и любую графическую оболочку можно довести до ума, чтобы именно вам было удобно ей пользоваться. Для меня таким сочетанием стали Archlinux+Openbox. Возможно, что для вас это окажется Slackware+Awesome или FreeBSD+KDE, а может и Windows. Главное определиться с тем, что вы сами хотите получить от компьютера и зачем он вам нужен. В конце концов это лишь инструмент, который создан для быстрого решения однотипных задач, чтобы у вас оставалось больше времени на поиск ответов для настоящему сложных вопросов.

Понравилась статья?
Не забудь поделиться ей с друзьями!

Похожие публикации

Комментарии

Слыхал я про такой званный debootstrap, но про него интернету ничего не известно.

Аноним:

Да нет же, собрать с нуля в том смысле, что установить чистую систему, а не через обновление с testing на experimental.

Просто обычно под понятием "собрать" имеют в виду компоновку из исходников.

Мне кажется, что установка всех пакетов из experimental - не самое удачное решение. Скорее всего, самые свежие версии понадобятся для 5-10 пакетов (и их зависимостей). Вот для них и можно рискнуть, устанавливая по одному и проверяя работоспособность. При этом следует держать в голове, что потенциально каждый из них может все сломать.

Аноним:

Слыхал я про такой званный debootstrap, но про него интернету ничего не известно.

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

Напишите наконец-то уже как вкусно приготовить Openbox!

Анон:

Напишите наконец-то уже как вкусно приготовить Openbox!

ОК! Займусь такой статьей в ближайшее время.

Что-то меня на Арчик потянуло, наверное это не с проста ;)

Анон:

Что-то меня на Арчик потянуло, наверное это не с проста ;)

Арч такой. На него быстро подсесть можно =)

Хочу как на скриншотике!

Совушка:

Хочу как на скриншотике!

Спасибо за отзыв =)

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

Как настроить всё это под домохозяйку? Оффтоп: сделайте, пожалуйста статью о том, как написать свою прошивку Android, было бы интересно.

Анон:

Как настроить всё это под домохозяйку?

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

Анон:

Оффтоп: сделайте, пожалуйста статью о том, как написать свою прошивку Android, было бы интересно.

Хорошая тема. Но довольно специфическая. Это как со сборкой собственного ядра. К тому же, следует понимать, что, как и в случае с ядром, вряд ли кто-то будет именно "писать свою прошивку". Все сводится к модификации существующей, но оптимизированной под конкретное устройство (и конкретного пользователя).

Насчёт домохозяйки: да, чтобы всё действия можно было совершать мышкой, чтобы было подобие "Диагностика сетей Windows 1.0", где ты тыкаешь мышкой, и оно за тебя ищет проблему. Обновлённый дизайн сайта мне нравится.

Анон:

Насчёт домохозяйки: да, чтобы всё действия можно было совершать мышкой, чтобы было подобие "Диагностика сетей Windows 1.0", где ты тыкаешь мышкой, и оно за тебя ищет проблему.

Мне кажется, что до такой степени Linux в Windows превращать смысла нет. Все же философия работы с Linux подразумевает прямую работу с конфигурационными файлами, а не ГУИ-утилитами. Да и по опыту могу сказать, что типичная домохозяйка сама и не полезет в "Диагностику сетей". Даже если для решения проблемы нужно нажать всего одну кнопку.

А если эти возможности все же нужны, то, вероятно, есть смысл смотреть в сторону KDE, Gnome или Unity, а не Openbox. Последний настроить можно не хуже, но времени это займет намного больше.

Анон:

Обновлённый дизайн сайта мне нравится.

Спасибо :)

Окей, ну хотя бы ту единственную кнопку диагностики как настроить, мне она и самому часто помогает.

Mikhail:

А если эти возможности все же нужны, то, вероятно, есть смысл смотреть в сторону KDE, Gnome или Unity

Если и выбирать DE, то более-менее схожее с поведением explorer.exe.

Так, теперь такой вопрос, конечно возможен спор, но: что выбрать Qt или GTK+?

RSS RSS-рассылка

Популярное

Дешевый хостинг