четверг, 16 октября 2008 г.

[Gnome] Количество пунктов в Places (Перейти)


Places содержит в точности те закладки, которые были внесены в панельку places наутилуса. Только вот по умолчанию вы в своём гноме похожего не увидите - вместо большого меню с закладками будет подменю Bookmarks. Если точнее, ваша картинка будет похожа на мою, пока закладок будет меньше шести. При шести и более закладках вы увидите подменю. В своё время меня это сильно раздражало, что я решил спросить на багзиле гнома. Там мне посоветовали следующий рецепт (требует правки исходников пакета gnome-panel, но в случае debian-based или всяких генту это не проблема):
  1. Получаем как-нибудь исходники gnome-panel
  2. Распаковываем их куда-нибудь, например в каталог gnome-panel и заходим туда (у меня полный путь к этому каталогу выглядит как /var/cache/apt-build/build/gnome-panel-2.24.0/
  3. Редактируем файл gnome-panel/panel-menu-items.c (я делаю sudo emacs /var/cache/apt-build/build/gnome-panel-2.24.0/gnome-panel/panel-menu-items.c)
  4. Находим макрос MAX_ITEMS_OR_SUBMENU и изменяем его значение с 5 на, например, 50

Последним шагом собираем и устанавливаем пакет.
В случае debian-based дистрибутивов можно и нужно использовать утилиту apt-build:
sudo aptitude install apt-build # проходим процесс конфигурации
sudo apt-build source gnome-panel # скачиваем исходники
Потом изменяем исходный код (он как у меня будет валяться в /var/cache/apt-build/build), если вы не измените это при конфигурации apt-build, и, наконец, устанавливаем:
sudo apt-build install -f gnome-panel.
А вот для ленивых, просто скопируйте в командную строку:
sudo aptitude apt-build; echo 'deb file:/var/cache/apt-build/repository apt-build main' | cat /etc/apt/sources.list > ~/lol.list; sudo mv ~/lol.list /etc/apt/sources.list; sudo apt-build source gnome-panel; file=`find /var/cache/apt-build/build -name *gnome-panel -type d | sort | tail -1`'/panel-menu-items.c'; sed -e 's/^#define MAX_ITEMS_OR_SUBMENU.*/#define MAX_ITEMS_OR_SUBMENU 50/g' $file > ~/lol.tmp; sudo mv ~/lol.tmp $file; sudo apt-build install -f gnome-panel; killall gnome-panel

Комментариев нет: