LINUX.ORG.RU

Допилил крысоглобалменю.

 , , , ,


9

5

Итак, второй новостной пост о крысоглобалменю.

Github AUR

Зависимости (все есть в официальных репах арча):

  • gtk3
  • bamf
  • libwnck (опционально)
  • xfce4-panel
  • CMake (сборка)
  • Vala (сборка)

Для отображения меню надо:

  • unity-gtk-module (Пакет по ссылке работает с непатченными GTK)
  • appmenu-qt (в официальных репах арча)
  • appmenu-qt5 (в aur)

Ничего больше не надо. Спокойно портируется в любой дистр (только для unity-gtk-module патч утащите из пакета)

Чем лучше topmenu?

  • Сериализует меню => внешний вид меню одинаков
  • Получает все преимущества третьегнома и убунтовых фиксов без ubuntu
  • Хорошо работает с gtk3, qt, qt5, libreoffice и chromium (с лисом запарка пока, но она вроде и в topmenu запарка)
  • Может работать без wnck и x11 (если кто-то напишет bamf для wayland, что не так сложно, ибо dbus, может даже сам возьмусь на основе mutter)

Чем хуже?

  • Нет плагина для mate (может сделаю)
  • Нет сетевой и пользовательской прозрачности by design (о меню рутового ФМ можно не мечтать)

Как устанавливать в арче:

  • Ставим сам плагин
  • Ставим нужные optdepends
  • После установки unity-gtk-module может пропасть меню - это нормально (а если меню не пропало - нужно перелогиниться, меню пропадет и unity-gtk-module включится)
  • Добавляем апплет на панель - меню теперь там. (если ничего не появилось - смело пишите баг)
  • Для скрытия меню в Gtk3 надо в .config/gtk-3.0/settings.ini дописать строки:
    gtk-shell-shows-app-menu=true
    gtk-shell-shows-menubar=true
    
  • Для показа меню в Gtk2 зайти в dconf-editor и выключить com.canonical.unity-gtk-module.gtk2-shell-shows-menubar
★★

Ответ на: комментарий от Athor

Методом научного тыка определил, что падает из-за

export GTK_MODULES=unity-gtk-module:$GTK_MODULES

в .profile

superuser ★★ ()
Ответ на: комментарий от superuser

Тогда ищи, какие ещё модули есть. От unity-gtk-module оно не падает ни у меня, ни у кого. В арче вот это добавляется в .profile

if [ -n "$GTK_MODULES" ]; then
    GTK_MODULES="${GTK_MODULES}:unity-gtk-module"
else
    GTK_MODULES="unity-gtk-module"
fi

if [ -z "$UBUNTU_MENUPROXY" ]; then
    UBUNTU_MENUPROXY=1
fi

export GTK_MODULES
export UBUNTU_MENUPROXY

Athor ★★ ()
Ответ на: комментарий от superuser

Как лентяй и неумеха хотел бы попросить deb пакет, если не сложно, прошу поделиться :)

CPAllianceP ()
Ответ на: комментарий от Athor

В Firefox работает, если запускать его так:

UBUNTU_MENUPROXY=0 firefox
Огромное спасибо за труды.

zezic ★★★ ()

Судя по pkgbuild, лицензия — GPLv3. Одобряю, но лучше добавить полный текст лицензии в файл LICENSE или COPYING в корень репозитория.

Klymedy ★★★★★ ()
Ответ на: комментарий от Athor

Тогда надо исправить pgkbuild и добавить тексты GNU LGPL и GNU GPL (LGPLv3 является не самостоятельной лицензией, а дополнением к GPL).

Klymedy ★★★★★ ()

Сколько костылей и усилий для того, что бы просто оторвать меню у приложения.

Троллейбус из буханки хлеба.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.