Содержание
Как и большинство пользователей Ubuntu 10.04 с его графической оболочкой Gnome2, как-то привык к верхнему трею, особенно ко всяким, живущим в нем, апплетам. И для меня было большой неожиданностью, что в Unity исчезла возможность легко управлять этими апплетами. Кроме того, некоторые программы (Skype, например) сворачиваются в трей, то есть, просто, пропадают в никуда.
Но Linux на то и Linux, что дает пользователю широкие возможности для всевозможных настроек. В этой статье попробую описать, как можно настроить трей, чтобы получилось что-то похожее на трей 10.04
Вместо достаточно скромного, предлагаемого по умолчанию в 12.04:
Разрешаем программам и апплетам использовать трей

Для начала, разрешим Skype использовать трей. Дело в том, что разработчики Unity завели так называемый белый список приложений, все приложения, не вошедшие в него, не будут отображаться в трее. Skype, по вполне понятным причинам, в этот список не входит.
Исправим это. Открываем терминал (Ctrl+Alt+T) и пишем:
gsettings get com.canonical.Unity.Panel systray-whitelist
В ответ получим «белый список» приложений, которым разрешено использование трея:
['JavaEmbeddedFrame','Wine','Update-notifier']
Как видим - не густо. Для того, чтобы добавить в него Skype (а также любое другое приложение), достаточно добавить его в этот список. Набираем в терминале следующее:
gsettings get com.canonical.Unity.Panel systray-whitelist "['JavaEmbeddedFrame','Wine','Update-notifier','Skype']"
Посколько мы будем добавлять много апплетов, то, чтобы не добавлять каждый вручную, проще разрешить всем приложениям использовать трей:
gsettings set com.canonical.Unity.Panel systray-whitelist "['all']"
После этого, чтобы настройки вступили в силу, необходимо перезапустить Unity, для этого нажмите Alt+F2 и введите команду
unity --replace
Теперь осталось в самом Скайпе выставить «галочку» напротив «запускать свернутым в системный трей» и… Вуаля! - наслаждаемся значком Скайпа.
Поскольку мы разрешили всем приложениям использовать трей, то, при установке других приложений или апплетов, никаких манипуляций проводить уже не нaдо. Все должно работать автоматически. Естественно, в настройках самого приложения надо включить опцию использования трея.
- Удалить Скайп, если он уже установлен (естественно закрыв саму программу перед этим);
- Добавить партнерский репозиторий;
- Установить Скайп.
В терминале это выполняется несколькими командами:
killall skype sudo apt-get purge skype sudo apt-add-repository "deb http://archive.canonical.com/ $(lsb_release -sc) partner" sudo apt-get update sudo apt-get install skype
Изменяем внешний вид часов
Немного изменим внешний вид часов. По умолчанию апплет отображает только время, мне хотелось бы также день недели и число. Идем в настройки часов (Правая кнопка мыши на апплете, в выпадающем меню выбираем «настройки времени и даты») и выставим соответствующие «галочки».
Ну вот - совсем другое дело.
Но есть один неприятный момент: цифры сливаются, нету четкого разделения между днем недели, датой и временем, как это было в 10.04. Но и это лечится. Для этого нам понадобится редактор конфигурации dconf-editor (не путайте с gconf-editor). Установить можно либо через терминал:
sudo apt-get install dconf-tools
либо через центр приложений. Откроем его и наберем в строке поиска dconf
Запускаем редактор (либо через лаунчер, либо набрав в терминале dconf-editor) идём com → canonical → indicator → datetime и изменяем значение time-format на custom, кликнув ЛКМ по local-default в time-format. Далее необходимо отредактировать ячейку custom-time-format согласно Вашим предпочтениям, например, так:
Значения для редактирования можно узнать набрав в терминале:
man strftime
Вот, что у нас получилось:
Меняем индикатор раскладки клавиатуры
Если, по каким-либо причинам, Вам не нравится стандартный значок индикатора раскладки клавиатуры, можно его поменять на красивые флажки или сделать более аккуратные индикаторы языка.
Значки надо переименовать в соответствии с раскладкой: для русской - ru.png, для английской - us.png, украинской - ua.png и т.д. Затем, перенести значки в соответствующую папку: /home/Имя пользователя/.icons/flags (для изменения значков одного пользователя) или /usr/share/icons/flags (для изменения значков всех пользователей, нужны права root). Если директорий не существует, создать. После, разрешить системе использовать флаги в индикаторе раскладки. Для этого в терминале нужно выполнить команду:
gsettings set org.gnome.libgnomekbd.indicator show-flags true
Наконец, надо завершить сеанс или перезагрузиться.
Замечания
- Формат файла должен быть либо .png либо .svg.
- Желательно подогнать значек под размер трея. Сделать это можно в GIMP или в Inkskape (для .svg). Обе эти программы есть в репозиториях. Экспериментальным путем установлено, что высота значка в 50 пикселей оптимальна.
Убираем апплет смены учетной записи
Если в системе только один пользователь и гостевой сеанс не используется, то апплет смены учетных записей тоже не нужен. Можно убрать и его: запускаем уже знакомый нам редактор конфигурации, идем apps/indicator-session и снимаем галочку с user-show-menu. Перезагружаемся.
Добавляем полезные апплеты
Теперь осталось только добавить несколько полезных апплетов и все будет готово.
Апплет погоды
Из погодных апплетов я предпочитаю My-Weather-Indicator, посколько кроме, собственно, текущей погоды он показывает и прогноз на ближайшие 3 дня. Этого апплета нет в стандартном репозитории Ubuntu, поэтому нам придется добавить его репозиторий. Открываем терминал и вводим:
sudo apt-add-repository ppa:atareao/atareao sudo apt-get update sudo apt-get install my-weather-indicator

Запускаем апплет. Он появляется в трее. Осталось только настроить. ПКМ на апплете Параметры и настраиваем свое расположение (апплет позволяет настроить сразу два), и нe забудьте поставить «галочку» напротив параметра Автозапуск.
Кроме текущего состояния погоды, апплет показывает также прогноз на ближайшие 3 дня. Вот что у нас получилось:
Апплет в трее:
И прогноз на ближайщие 3 дня:
Апплет датчиков
Терминал:
sudo apt-add-repository ppa:alexmurray/indicator-sensors sudo apt-get update sudo apt-get install indicator-sensors
Запускаем. Настраиваем. Смотрим.
Этот апплет сам прописывается в автозагрузку, поэтому больше ничего делать не надо.
Апплет классического меню Gnome2
Специально для любителей Gnome2 добавим апплет классического меню. Итак, открываем терминал:
sudo apt-get install classicmenu-indicator
Запускаем апплет и видим привычное классическое меню.
Индикатор скорости сетевого трафика Indicator Netspeed Unity
В режиме реального времени показывает объем входящего и исходящего трафика.
Также показывает, сколько всего было скачено и отдано данных за текущую сессию.
Установка в терминале:
sudo apt-add-repository ppa:fixnix/netspeed sudo apt-get update sudo apt-get install indicator-netspeed-unity
Скачать вручную: здесь.
После установки индикатор можно запустить, значок располагается в главном меню в разделе «Интернет» под именем «Индикатор netspeed-unity». Индикатор при установки прописывается в автозагрузку, поэтому после перезагрузки запускается сам.
Индикатор Keylock
Индикатор Keylock — это очень полезная утилита, если у вашей клавиатуры или ноутбука нет лампочек, оповещающих о том, что клавиши Num/Caps/Scroll Lock включены или выключены. Она также отображает оповещения, когда какие-либо кнопки включаются или выключаются. Также среди клавиш Num/Caps/Scroll Lock можно выбрать одну, состояние которой будет отображаться на панели на иконке индикатора.
sudo apt-get install indicator-keylock
Индикатор System Monitor
Этот индикатор отображает использование центрального процессора и памяти на панели. Также через него вы можете получить доступ к системному монитору.
sudo add-apt-repository ppa:fossfreedom/indicator-sysmonitor sudo apt-get update sudo apt-get install indicator-sysmonitor
Системный трэй для Ubuntu 14.04 и выше - Indicator Systemtray Unity
Индикатор, при нажатии на который появляется трэй.
Также есть режим отображения «отдельно от индикатора» - поверх панели на подобии дока. В этом режиме - положение по горизонтали можно менять - крутя колёсиком мыши над значком индикатора. Режимы отображения можно менять нажатием средней кнопки мыши (у ноутбука: одновременно нажатием левой и правой клавиши тачпада) над значком индикатора.
Установка в терминале:
sudo apt-add-repository ppa:fixnix/indicator-systemtray-unity sudo apt-get update sudo apt-get install indicator-systemtray-unity
Затем необходимо завершить сеанс и снова зайти под своим пользователем.
Для удаления использовать команду:
sudo apt-get --purge remove indicator-systemtray-unity
Другие апплеты
Меняем апплеты местами
Вот что у нас получилось после всех наших манипуляций:
Все апплеты на месте, но все немного перемешано. Давайте приведем это в порядок. К сожалению, в Юнити убрали возможность простого перетаскивания апплетов мышкой. (Также нельзя изменять положение системных апплетов. Так что переместить апплеты сессии, даты-времени и т.п. не получится.)
Для изменения порядка, нам нужно, просто, отредактировать файл /usr/share/indicator-application/ordering-override.keyfile. Итак, отрываем терминал (Ctrl+Alt+T, надеюсь, еще не забыли) и вводим:
sudo gedit /usr/share/indicator-application/ordering-override.keyfile
И приводим его к следующему виду:
[Ordering Index Overrides] nm-applet=1 gnome-power-manager=2 ibus=3 classicmenu-indicator=4 gst-keyboard-xkb=5 gsd-keyboard-xkb=6 indicator-sensors=7 my-weather-indicator=8 skype=9
Где номер - это порядковый номер апплета справа налево. Не забываем, что системные апплеты перенести нельзя. Поэтому, как бы мне не хотелось поставить апплет классического меню рядом с апплетом сесии, сделать этого не получится. После сохранения файла, достаточно завершить сеанс и войти заново.
Убираем индикатор раскладки клавиатуры
Для того, что бы полностью убрать стандартный индикатор раскладки клавиатуры (иконку клавиатуры и обозначение текущей ракладки) необходимо изменить один бит в библиотеке libkeyboard.so, которая лежит:
- для Ubuntu старее 11.04 по пути
/usr/lib/gnome-settings-daemon-2.0/libkeyboard.so
- для Ubuntu 11.04 и новее по пути
/usr/lib/gnome-settings-daemon-3.0/libkeyboard.so
Делаем резервную копию файла:
sudo cp /usr/lib/gnome-settings-daemon-3.0/libkeyboard.so /usr/lib/gnome-settings-daemon-3.0/libkeyboard.so.bak
Открываем файл на редактирование любым HEX-редактором1)
sudo bless /usr/lib/gnome-settings-daemon-3.0/libkeyboard.so
Ищем кусок кода
FF 83 F8 01 0F
и меняем 01 на 02, должно получится так:
Сохраняем файл и перезаходим в сессию.
Старый способ (для ubuntu 10.04)
Выполните в терминале команду:
gconftool-2 -s /desktop/gnome/peripherals/keyboard/general/disable_indicator -t bool true
Или воспользуйтесь Редактором Конфигурации GNOME:
gconf-editor
В нем перейдите desktop → gnome → peripherals → keyboard → general и отметьте галочкой ключ disable_indicator.
Если данный ключ не существует, его нужно создать. Для этого в контекстном меню выберите пункт «Создать ключ» и введите следующие параметры: