Не всем нравится интерфейс Unity рабочего стола Ubuntu: при добавлении значков в лончер значительно снижается его «откликабельность», а вместе с ней и удобство. Из-за этого недостатка кто-то устанавливает плохо настраиваемые костыли вроде gnome-panel или ClassicMenu Indicator или добавляет на рабочий стол настраиваемые докбары. Последние – неплохое решение, но, начиная со средненького 2-х-ядерника и хуже, навороченные докбары своей неповоротливостью больше мешают, чем помогают. Вот и отказывается народ от Ubuntu, переходя на другие сборки. Не спешите делать это! Проще кое-что позаимствовать из других сборок впридачу к Unity, не отягощая систему.
Давным-давно, для минималистского оконного менеджера openbox3 была разработана чрезвычайно лёгкая настраиваемая панель tint2. Оказывается, эта панель вписывается практически в любую популярную сборку Линукса. Поначалу она не обладала лончером, но теперь он есть. Им-то и воспользуемся, остальное можно выбросить. Менеджер панели имеется в репозиториях Ubuntu и устанавливается командой
sudo apt-get install tint2
Сразу после установки в папке /.config появляется папка tint2, содержащая файл конфигурации tint2rc. Откройте его любым редактором. «Что есть что» можно почитать здесь.
Поначалу в дефолтном конфигфайле панели tint2, установленной из репозиториев Ubuntu, нет места лончеру. Но его можно создать. Для этого в секцию Panel дописываем примерно следующее:
panel_items = LTSBC
launcher_icon_theme = Faenza
launcher_padding = 4 2 2
launcher_background_id = 0
launcher_icon_size = 24
Здесь переменная panel_items кодирует наличие элементов панели:
L – лончер,
T – таскбар (задачи),
S – системный трей,
B – индикатор батареи,
С – часы.
Элементы T,S,B,C можно исключить, как присутствующие по умолчанию, да и лишние для нашей цели. Системный трей на панели tint2 отображаться не будет, так как Ubuntu уже имеет собственный трей.
Сначала оформляем геометрию панели. Рассказывать об этом не имеет смысла, поскольку это достаточно подробно изложено по вышеприведенной ссылке. Далее добавляем значки в лончер, дописывая строки с путями к файлам-пускачам, имеющим расширение .desktop. Например:
launcher_item_app = /usr/share/applications/brasero.desktop
launcher_item_app = /usr/share/applications/skype.desktop
launcher_item_app = /usr/share/applications/marlin.desktop
И т.д. Каждый значок – это текстовый файл c расширением .desktop. Так принято. Но есть одна тонкость. Если вы собственноручно сделали на рабочем столе свой особый значок или создали его с помощью фоггера, то файл значка следует скопировать в папку /usr/share/applications командой
sudo cp ~/'Рабочий стол'/имя_значка.desktop' /usr/share/applications
А чтобы этот значок появился на панели tint2 необходимо подредактировать файл /usr/share/applications/имя_значка.desktop в части параметра Icon. Этому параметру через знак равенства надо присвоить без расширения имя файла изображения значка, который должен находиться в папке usr/share/icons/Faenza/apps/24. Ветвь темы в пути может быть и не Faenza, если в конфигфайле панели параметр launcher_icon_theme оговаривает другую установленную тему. Также и ветвь 24 может быть другой, если в этом же конфигфайле параметр launcher_icon_size оговаривает размер значка не 24x24. Главное, чтобы нужная папка соответствовала нужной теме и содержала значок нужного размера, иначе утилита tint2 или не сможет найти и отобразить его, или исказит. Кроме того, такая «хитрость» заставляет самодельные значки отображаться в даше при поисках по названию, прежнему использованию и т.д.
Как при необходимости сделать красивый значок? Я для этого использую приложение inkscape, делаю квадратный рисунок, сохраняю в формате png, потом генерирую миниатюру командой
mogrify -thumbnail размер имя_рисунка.png
Размер здесь указывается, как SIZExSIZE, например, 24x24. Миниатюру надо скопировать в папку с выбранной темой и в соответствии с размером. Чтобы команда mogrify работала, надо установить инструментарий imagemagick, он есть в репозиториях Ubuntu.
Вот мы и подошли к тому, ради чего затевалось написание статьи. Идея в том, чтобы по мере надобности горячими клавишами или жестами можно было включать экране разные панели, описываемые разными конфигфайлами, содержащими разные лончеры. Приложение tint2 специально для этого заточено. Например, команда
tint2 -c ~/.config/tint2/tint2rc_0
включит на экране панель, которая описывается конфигфайлом tint2rc_0 и никаким другим, а команда
tint2 -c ~/.config/tint2/tint2rc_1
включит панель, описываемую файлом tint2rc_1. И т.д. Чтобы команды срабатывали одновременно, а не enter-поочередно, в скрипте их нужно объединить оператором &:
#!/bin/bash
tint2 -c ~/.config/tint2/tint2rc_0 & tint2 -c ~/.config/tint2/tint2rc_1
Сохраните скрипт под каким-нибудь именем в домашней папке и дайте ему права на выполнение. Скрипт запускается командой
/home/имя_пользователя/имя_скрипта
Можно сделать несколько скриптов для разных наборов лончеров. Разумеется, разные пользователи могут иметь разные наборы значков.
Выключаются все лончеры командой
killall tint2
Скрипты можно усложнить проверкой на наличие уже работающих лончеров. Кто желает поупражняться в написании скриптов – пожалуйста, есть поле для творчества. Но можно и без этого. И очень надеюсь, что читатель уже умеет связывать команды с горячими клавишами или жестами. Если нет – пожалуйста, спрашивайте или ищите сами, как это делается.
Описанным способом можно строить лончеры практически для любого оконного менеджера. Получается примерно, как на этом фрагменте экрана:
Вы сможете так же легко сделать то же в Windows? Сомневаюсь.
Успехов!
Комментарии
Страницы
Ахахаха! Типичное заблуждение. Прежде, чем попасть в базы Касперского и прочие базы мальвари попадают в компьютеры юзеров. :)) Такова жизнь. Поэтому всякие софт-презервативы могут быть столь же дырявы, как и всамделишные резиновые. Правда, объяснять это некоторым бесполезно. Натянут на комп презик, хорошо если не ворованый, и думают, что Венда не залетит. Ещё как залетает, если сёрфишь с правами админа!
Мой приятель закончил в Штатах университет, а затем и аспирантуру и устроился старшим инженером в NXP Semiconductors, где его сразу же заставили изучать Линукс (а он думал Виндой отделаться:-)).
Сами по себе мы действительно мало значим. Но сработанный и сопровождаемый проданный софт, а также проекты, на реализацию которых затрачены бабки, кое-что да значат для авторов.
Верю. Компы редко "падают смертью". Чаще всего мальварь повреждает софт частично или вообще не повреждает, а потихоньку делает своё дело. Просто из вредности, а не потому, что юзер что-то там значит. Думаю, если бы на твоём компе стояла Венда, купленая за кровные, или дорогая система разработки, ты бы вряд ли сёрфил с правами админа.
Один мой приятель переходит улицу, где хочет, и утверждает, что его ни разу не оштрафовали. Я ему тоже верю.
>>ПОТЕНЦИАЛЬНО ОПАСНАЯ СИСТЕМА
Mike, а чего ж тогда Linux, а не OpenBSD?
В смысле безопасности OpenBSD, возможно, самая продвинутая система. Но писал же Козьма Прутков: "Никто не обнимет необъятное". Я ответил на ваш вопрос?
>Я ответил на ваш вопрос?
Неа. Почему ты не начал "обнимать" c BSD или не в процессе перехода на нее?
Savely, я ещё дофига чем не владею, и что? Отравиться или повеситься? Ты вот грамотный и в русском, и в компьютерах, много лет ты на форумах "Вестей", а не пишешь сюда статей, мотивируя тем, что "всё есть в Интернете". Помнится, я задал тебе вопрос, ты поискал-поискал, но не смог удовлетворительно ответить. Но ты же не считаешь, что облажался?
Страницы