ОБРАЗ

Сортировка меню Gnome в Fedora Linux для удобного им пользования.

1. Положение вещей.

При установке GNOME формируется минимальный набор правил сортировки меню. Этот набор правил использует свойство "Categories" описания программ на 20%, распределяя программы только по основным группам. В этих правилах поддерживаюся только основние значения данного свойства. Дальнейшее распределение программ оставляется на участь (и, соответственно, способности) администратора.

Просмотреть правила сортировки можно в /etc:

$ ls -r /etc/xdg/menus/*

1.1. Дополнения правил сортировки меню.

Существует несколько пакетов меняющих или дополняющих исходные правила сортировки программ. Эти пакеты не позволяют управлять правилами сортировки, а лишь добовляют те, которые считаются проверенными. Эти пакеты используют свойство "Categories" описания программ. Эти пакеты имеют узкую направленность: разбивают одну группу на подгруппы. Список данных пакетов:

astronomy-menus
electronics-menu
games-menus
multimedia-menus
preferences-menus

Помимо этого, существует специальный пакет, улучшающий доступ к компонентам безопасности:

security-menus

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

Задавшись целью использовать опыт вышеперечисленных пакетов, я объединил результаты этих пакетов и распространил их на все остальные группы программ. В результате получился пакет, полностью упорядочивающий меню GNOME и использующий свойсто "Categories" описаний программ по максимуму. Но об этом в главе 2.

1.2. Alacarte.

Пакет Alacarte позволяет менять порядок положения программ в меню на уровне пользователя (то есть переопределяет правила сортировки, лежащие в /etc, правилами, лежащими в ~/). Данные правила естественным образом действуют только на конечного пользователя (это хорошо при конечной доводке меню, но не при начальмом его формировании). Данные правила не используют свойство "Categories" в описании программ, а используют только имена файлов описания программ. Помимо этого, при необходимости, Alacarte создает копии описаний программ, расположенных в /usr/share/applications, в домашней папке. И производит их подмену в меню. Так же, при необходимости, в домашней папке создаются описания групп программ.

Все это хорошо и механизм вроде бы верен, но есть ряд но.

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

2. Gnome Menu Categories (GnoMC).

package:gnome-menu-categories-20110313.tar.gz
size:171922
crc32:59fbf744
md5:a2c7d952a175d84b4583a595a12d54e1
sha1:814a06e8388a251b1802ec18fa20b6d666cb299b

package:gnome-menu-categories-20110523.tar.gz
size:212485
crc32:3fdb1d4c
md5:81ee6556a513565727841e57c7462904
sha1:f0bd93db10f809fc512b1d10453162b3a6c75402

Gnome Menu Categories (GnoMC) - это не Alacarte.
GnoMC - пакет, сортирующий меню GNOME по группам, для удобного пользования.
GnoMC - не включает в себя активных компонентов (скрипты находятся в стадии разработки), а лишь содержит проверенные описания групп программ и программного меню.

GnoMC использует категории описаний программ на 95%:

$ grep "Categories=" /usr/share/application/*.desktop

При недостатке категорий в описании программ GnoMC определяет положение данных программ по имени файла описания:

$ grep "Name=" /usr/share/application/*.desktop
или
$ grep "Name\[ru\]=" /usr/share/application/*.desktop

GnoMC не меняет описаний программ, определенных разработчиком!

GnoMC добавляет незначительное количество описаний групп программ в каталог описаний:

$ grep "Name=" /usr/share/desktop-directories/*.directory
или
$ grep "Name\[ru\]=" /usr/share/desktop-directories/*.directory

GnoMC заменяет таблицы (xml) сортировки программ по группам:

$ ls -r /etc/xdg/menus/*

После замены, данные правила сортировки действуют на всех пользователей!
Так же данные правила распространяются на меню IceWM при установленном пакете icewm-xdgmenu!


27 мая 2011г.

Made in Terra No Names.


Сайт управляется системой uCoz