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. Главное определиться с тем, что вы сами хотите получить от компьютера и зачем он вам нужен. В конце концов это лишь инструмент, который создан для быстрого решения однотипных задач, чтобы у вас оставалось больше времени на поиск ответов для настоящему сложных вопросов.

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

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

Комментарии

Anonymous:

ALT+F4 не работает как в вантузе

Уже смотрели мою статью про настройку комбинаций клавиш в Openbox? Там предлагается использовать Win+C, но достаточно подробно описано, как задать все, что угодно.

Зачем что-то задавать, если мне нужен грёбанный ALT+F4?

Anonymous:

Зачем что-то задавать, если мне нужен грёбанный ALT+F4?

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

По умолчанию, а я говорю за изменённый конфиг.

Anonymous:

По умолчанию, а я говорю за изменённый конфиг.

В ~/.config/openbox/rc.xml проверьте наличие такой инструкции:

<keybind key="A-F4">

<action name="Close"/>

</keybind>

Запилите гуйд про QEMU, VirtualBох уже не тот. Таки есть игры, которые никогда не пойдут на линупс.

Anonymous:

Запилите гуйд про QEMU, VirtualBох уже не тот. Таки есть игры, которые никогда не пойдут на линупс.

Ок. Интересует эмуляция какой-то конкретной ОС?

Можно любых из серии Windows, но конкретно интересует Windows 7. Заинтересовало, так как пишут, что возможно 95% производительности, как бы то было, как запуск без эмуляции.

Anonymous:

Заинтересовало, так как пишут, что возможно 95% производительности, как бы то было, как запуск без эмуляции.

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

Хорошо. Поэкспериментирую и выпущу статью со своими впечатлениями в ближайшее время.

P.S. Кстати, не рассматривали возможность использования wine? Есть различные утилиты (например, PlayOnLinux), которые упрощают процесс установки и настройки многих Windows-приложений (в том числе и игр). При желании под wine можно запускать тот же steam (есть и нативная версия).

Wine - зло.

Anonymous:

Wine - зло.

Не берусь спорить. Сам wine не использую )

Делюсь впечатлениями от QEMU.

Что с его помощью можно получить по факту: виртуальную систему, работающую с оборудованием напрямую.

Что для этого нужно: поддержка аппаратной виртуализации (Vt-x и Vt-d у процессора и мат. платы). Если цель заключается в создании игровой виртуальной машины под Windows, то понадобится вторая видеокарта.

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

Преимущества: полноценная поддержка аппаратного ускорения 3D-графики под виртуальной машиной.

Недостатки: нужна серьезная аппаратная поддержка.

Что смог получить я: процессор (Intel Core i7) и правда выдает практически максимум своих возможностей под виртуальной машиной на Win7. Но вот аппаратной поддержки Vt-d у моей мат. платы нет. Поэтому видеокарту никак не перекинуть. Различные программные методы виртуализации графики, предусмотренные в QEMU (std, vmware, qxl), хороших результатов не дают.

Альтернатива: в зависимости от целей использования связки Linux+Windows можно получить практически то же самое, если в качестве хост-системы сделать Windows, а не Linux. В этом случае Windows получает полноценное аппаратное ускорение. К Linux особых требований в этом смысле обычно нет, поэтому вполне может подойти VirtualBox или VMware.

VirtualBox и VMware УГ полное, Windows XP даже лагал.

Anonymous:

VirtualBox и VMware УГ полное, Windows XP даже лагал.

Зависит от железа. У меня под Linux VirtualBox на Core i7 + 8Gb RAM выдает достойную производительность для той же Win7. Но понятно, что серьезную 3d-графику не потянет.

VMware, вроде, пробовал пускать под Windows на не самом сильном ноутбуке (Core i3 + 3Gb RAM). Linux работал приемлемо. Под VirtualBox на том же ноутбуке ставил Archlinux с Openbox. Лагов не замечал.

Еще может иметь значение жесткий диск (у меня система работает на SSD) и настройки виртуальной машины. Например, для VM может не хватать оперативной памяти. Насколько помню, VirtualBox по умолчанию выделяет уж очень мало RAM.

RSS RSS-рассылка

Популярное

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