Запуск приложений GTK в XFCE как в MATE.

Вопрос или проблема

Когда запускается, например, thunar в XFCE 4.18, кажется, что он использует другую версию GTK, чем при запуске в MATE 1.26. Разница заключается в том, что MATE отображает мнемоники клавиши Alt (акселераторы меню/ключи доступа, подчеркнутые буквы в меню окна), в то время как в XFCE эта функция исчезла, так как она была устаревшей в GTK3. Даже не-XFCE приложения, такие как gimp, имеют мнемоники в MATE, но больше не в XFCE.

Возможно ли запускать приложения в XFCE (например, возможно с помощью LD_PRELOAD или LD_LIBRARY_PATH), чтобы они работали так, как в MATE?

В чем причина этой разницы между XFCE и MATE?

Ответ или решение

Для понимания вопроса о запуске GTK-приложений в XFCE так, как они запускаются в MATE, необходимо осветить несколько ключевых аспектов, связанных с различиями в архитектуре данных окружений рабочего стола и их зависимостях от различных версий GTK.

Теория

MATE и XFCE — оба популярные окружения рабочего стола для UNIX-подобных операционных систем, таких как Linux. Они оба используют GTK (GIMP Toolkit) для отрисовки графического интерфейса, но различаются в подходе к использованию и интеграции версий этой библиотеки.

MATE появился как форк GNOME 2 после того, как GNOME перешел на версию 3, в которой было много изменений в пользовательском интерфейсе. MATE стремился сохранить классический интерфейс GNOME 2 и последовательность в поведении приложений. Именно поэтому в MATE все еще можно встретить поддержку функций, которые были в версии GTK2 или ранних GTK3, таких как отображение горячих клавиш при нажатии Alt (мнемоники).

XFCE, с другой стороны, ориентируется на легкость и скорость, что означает, что оно стремится использовать более современные версии библиотек для улучшения производительности и взаимодействия с пользователем. В последующих обновлениях GTK3 и в GTK4 мнемоники скрыты по умолчанию и доступны только при нажатии клавиши Alt, что делает интерфейс более минималистичным, но несколько усложняет обнаружение горячих клавиш.

Пример

Запуск приложения, такого как Thunar, в среде XFCE и MATE может создавать впечатление использования разных версий GTK, из-за вышеупомянутых аспектов интеграции. В MATE активация мнемоник происходит автоматически, что обеспечивает быстрый доступ к навигации по меню посредством клавиатуры. В XFCE данной функции, как правило, не заметно без явной активации клавишей Alt, что в некоторых случаях может снижать удобство использования, особенно для тех, кто привык полагаться на эти функции.

Применение

Для решения вашей задачи — обеспечения работы GTK-приложений в XFCE, как они работают в MATE, — существует несколько подходов. Однако стопроцентно идентичное поведение может быть недостижимо без глубоких изменений в конфигурациях или даже исходных кодах приложений.

  1. Изменение настроек GTK: Попробуйте отредактировать файл настроек GTK, обычно находящийся в ~/.config/gtk-3.0/settings.ini или аналогичной директории. Вы можете попробовать добавить строку:

    gtk-enable-mnemonics=1

    Данная опция активирует показ мнемоник, но учтите, что современные версии GTK могут игнорировать или поступать со значениями, если это прямо не поддержано.

  2. Использование окружения переменных: Задание окружения переменных, таких как GTK_MODULES, может помочь, однако это предложение не всегда действует в новых версиях. Для этого используйте терминал:

    export GTK_MODULES=your-desired-modules
  3. Компиляция с альтернативным GTK2 или ранним GTK3: Это весьма радикальный метод, требующий сборки приложений с другими верcиями GTK, совместимыми с MATE, но он может вызвать проблемы совместимости с системе, особенной новыми приложениями.

  4. Использование LD_PRELOAD или LD_LIBRARY_PATH: Теоретически можно указать системе загрузить специфическую версию библиотеки до запуска приложений, но это также может привести к нестабильной работе. Пример команды:

    LD_PRELOAD=/path/to/specific/libgtk-3.so thunar

    При этом стоит убедиться, что применяемая библиотека не конфликтует с остальными компонентами на вашей системе.

  5. Добавление пользовательских тем: В некоторых случаях применение определенных тем GTK может вернуть возможность мнемоник, или по крайней мере сделать интерфейс схожим с таковым в MATE.

Заключение

При решении вопросов связаных с GUI окружениями на Linux, пользователи могут столкнуться с множеством нюансов, которые требуют разного уровня технических знаний и навыков. Подходы, описанные выше, должны проводиться с осторожностью, особенно на продуктивных системах, и, возможно, в тестовой среде для оценки влияния изменений. Надеюсь, это поможет вам добиться необходимого поведения приложений в XFCE.

Оцените материал
Добавить комментарий

Капча загружается...