понедельник, 13 июля 2009 г.

Fluxbox

Привет! Эта статья написана в рамках «недели DE/WM» на welinux.ru (оригинал), и речь в ней пойдёт о моём любимом WM — Fluxbox.

Для начала давайте разберёмся в том, что такое WM. Эта аббревиатура расшифровывается как Window Manager, то есть менеджер окон. Название целиком отражает суть — менеджер окон занимается управлением окнами, то есть отрисовывает рамки вокруг окон приложений и обеспечивает возможность сворачивать, разворачивать, таскать по экрану и закрывать их. В данном случае под «окном приложения» подразумевается область экрана, в которой программа взаимодействует с пользователем (чтобы лучше уяснить, что это, воспользуйтесь небольшим рецептом, который когда-то давал ainick). Все WM'ы по сути своей минималистичны, то есть имеют лишь самый необходимый минимум функционала (в отличие от DE (Desktop Environments, окружений рабочего стола), которые помимо собственного WM'а содержат набор софта вроде текстового редактора и плеера).

Теперь, когда вам ясно, о чём речь, перейдём к собственно Fluxbox'у. Какие возможности он представляет пользователям, как его конфигурировать, в конце концов, почему я использую именно его?

Так как целевой аудиторией данной статьи являются новички в мире Linux, которые в большинстве своём являются мигрантами с Windows, я буду рассматривать Fluxbox с точки зрения отличий от винды.

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

Вторым шоком станет отсутствие кнопки Пуск :) Главное меню — или, как его называют во Fluxbox'е, root menu — вызывается правым кликом по Рабочему столу. В отличие от виндового Пуска, меню Fluxbox'а полностью настраиваемо — вы можете свободно добавлять, удалять и редактировать пункты и субменю, а также менять их местами. По этому поводу не премину сослаться на свою статью о том, как добавить в меню пункты «Выключить» и «Перезагрузить».

Третим любопытным моментом является отсутствие иконок на Рабочем столе. Fluxbox не имеет никаких встроенных средств для работы с ними, но вы можете поставить idesk, который добавит необходимый функционал.

Наконец, последним ключевым отличием станут хоткеи. Конечно, вы можете использовать Fluxbox так же, как виндовый explorer — то есть таскать, закрывать и масштабировать окна мышью. Но это будет значить, что вы, как красиво говорят англичане, missed a point, то есть упустили суть :) Хоткеи — очень мощное средство, позвояющее увеличить производительность вашей работы. Например, я повесил на Alt+R программку fbrun — это некое подобие диалога, вызываемого по WinKey+R в винде. fbrun позволяет запускать произвольный бинарник, введя его название и нажав Enter. Помимо fbrun'а я назначил хоткеи для Firefox'а и эмулятора терминала — это те вещи, которые я использую достаточно часто. Поверьте, нажать Alt+T (у меня это хоткей для запуска терминала) значительно быстрее, чем делать правый клик по Рабочему столу и кликать по пункту терминала в открывшемся меню (даже если вы будете тренироваться в этом несколько часов, любой, кто за 10 минут привык к хоткею, будет открывать терминал быстрее вас).

Раз уж речь зашла о хоткеях, пора бы познакомить вас со средствами конфигурирования Fluxbox'а. Ими являются текстовые конфигурационные файлы, расположенные в директории ~/.fluxbox. Конечно, существуют утилиты, позволяющие конфигурировать Fluxbox в графическом режиме (они даже включены в поставку самого WM'а). Сюда следует отнести fluxmenu (средство конфигурирования меню), fluxkeys (конфигуратор хоткеев) и fluxconf (отвечает за общие настройки). Но я все равно предпочитаю править конфиги — мне это кажется более удобным. Объём статьи не позволяет мне подробно расписать, как именно следует конфигурировать Fluxbox, поэтому я вынужден отослать заинтересовавшихся в Google. Несмотря на то, что его страницы изобилуют информацией, я хотел бы выделить несколько ресурсов, которые считаю лучшими:
  1. Документация Fluxbox
  2. Руководство по настройке Fluxbox
  3. Fluxbox Wiki
  4. Fuck-n-Hack: Fluxbox — инструкция по базовой настройке + несколько фич.
  5. DE и WM. Part 2. Fluxbox. — краткая инструкция по фичам менеджера.
Ещё несколько преимуществ Fluxbox:
  • благодаря тому, что он написан на C++, этот WM очень легковесен и быстр;
  • благодаря тому, что Fluxbox базируется на Blackbox'е, имеется обратная совместимость — вы можете использовать темы и, возможно, конфиги от Blackbox'а во Fluxbox'е (и наоборот);
  • простые и понятные конфигурационные файлы способствуют удобной настройке WM'а под себя.
Собственно, легковесность и приятные конфиги стали главными причинами моего перехода на Fluxbox. Раньше я юзал KDE 3.5.9, но при 512-и мегабайтах оперативной памяти довольно сложно говорить о комфортной работе (да, согласен, кеды на 512-и метрах бегают отлично — пока не запустишь Firefox и ещё чего-нибудь; каждый день при выключении компьютера я отмечал, что занято как минимум 200 метров свопа — а на протяжении дня я мог ощущать, как увеличивается и увеличивается время отклика системы). После перехода на Fluxbox своп начал юзаться только если очень активно работать с Firefox — его утечки памяти живо сжирали всю память, до какой могли дотянуться. К тому же переход на WM позволил избавиться от кучи ненужных мне приложений, которыми напичкан KDE (что вполне нормально для любого DE).

В общем, Fluxbox — идеальное решение для слабых машин с ограниченным количеством памяти, хотя его можно использовать и для построения собственного окружения, которое будет настолько удобным, что просто перестаёшь его замечать.

Удачи вам в освоении этого прекрасного менеджера окон, не стесняйтесь задавать вопросы. Помните, что на welinux всегда найдутся люди, готовые помочь — для этого и был создан проект!

P.S. Возможно, кому-то будет интересно (по крайней мере, на welinux такой вопрос возник) посмотреть на мои fluxbox'овские конфиги. Держите:
~/.fluxbox/init
~/.fluxbox/keys
~/.fluxbox/startup
Ещё должен был быть файл ~/.fluxbox/menu, но я его почему-то не скопировал (винт у меня накрылся, сейчас конфиги эти из бекапов доставал). Там единственная фишка — это пункты «Выключить» и «Перезагрузка». Рецепт уже упоминался выше :)

И ещё два:
~/.Xmodmap — он нужен для того, чтобы работали мои аппаратные клавиши для управления плеером (подробнее о том, как я это дело настраивать)
~/.conkyrc — в принципе, можно жить и без него, но мне комфортнее с conky :)

Копируете статью — поставьте ссылку!

3 комментария:

virens комментирует...

Я бы добавил в пост пару скриншотов (ну хотя бы свой десктоп). Новичкам (и вообще всем, кто с флюксбоксом не знаком) было бы интересно взглянуть, что же он собой представляет.
Так что народ требует скриншотов :-)

Minoru комментирует...

Вот напасть-то — на welinux'е тоже требовали :) Там же я отписался, почему скринов не будет.

Да и вообще, его (Fluxbox) же можно запилить так, что даже родная мама^W^Wразработчики не узнают — толку от скриншотов-то?

И ещё одно — комплект скриншотов, хоть как-то раскрывающих суть Fluxbox'а, будет весить ну никак не меньше метра-полтора (я же не признаю никакого другого формата для скриншотов, кроме PNG, а ведь с ним файлы довольно жирненькие — относительно JPEG'а — получаются), в то время как пакет для Lenny amd64 весит 1 483 990 байт (а для i386 и того меньше) :) Пусть лучше его скачают, а не картинки, которые покажут не больше, чем просто одну из множества возможных тем + окошки с какими-то приложениями.

virens комментирует...

Вот напасть-то — на welinux'е тоже требовали :)
И правильно, что требовали. Глас народа и всё такое :-)

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

Да и вообще, его (Fluxbox) же можно запилить так
Ну ICeWM можно точно так же запилить, однако скриншоты там радуют глаз. Но не суть.

И ещё одно — комплект скриншотов, хоть как-то раскрывающих суть Fluxbox'а, будет весить ну никак не меньше метра-полтора (я же не признаю никакого другого формата для скриншотов, кроме PNG
Это ты зря. Подумай о тех, у кого канал узкий и кто не может грузить все эти прелести. JPEG много чего портит, но пока альтернатив ему не видно.

Пусть лучше его скачают, а не картинки
Саш, так в том и дело, что качать не будут: когда не видишь, ради чего, качать-то не очень тянет.

Есть компромиссный вариант: вставить миниатюру с официального сайта. И весит мало, и красиво, и все довольны :-)

Скриншоты расцвечивают пост, и в них есть только плюсы. Даже если заскриншочен джЫпег.

Отправить комментарий

Примечание. Отправлять комментарии могут только участники этого блога.

 
Blogger logo Debian logo Creative Commons License FeedBurner Subscribers Counter