Lxpanel в Xfce

Lxpanel в Xfce

Возможно ли в Debian Stretch объединить рабочий стол XFCE с lxpanel из LXDE (вместо xfce4-panel)?

Возникают проблемы с запуском (обе панели, нет панели, сбои, ...), а также отсутствуют все пункты меню.

решение1

Да, это возможно, но на самом деле это не так просто.

Шаги, которые нужно выполнить, чтобы это заработало:


Установка

Как обычно, просто

apt-get install lxpanel

в терминале под учетной записью root должно быть достаточно.

Делатьнетпопробуйте удалить xfce4-panel - это удалит слишком много из-за зависимостей.


Первая инициализация

После установки запустите его вручную один раз из терминала, просто набрав

lxpanel

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

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


Меню выхода

После повторного закрытия панели с помощью Ctrl-C действие для строки меню выхода из системы должно быть изменено, так как по умолчанию это программа, которая принадлежит рабочему столу LXDE.
Для этого создайте файл~/.config/lxpanel/default/configследующего содержания:

[Command]
Logout=xfce4-session-logout
Terminal=uxterm

Как видно, в последней строке вы также можете установить предпочитаемый вами эмулятор терминала.


Скрипт запуска панели

По нескольким причинам полезен скрипт оболочки, который XFCE позже будет использовать для запуска lxpanel, вместо того, чтобы запускать его напрямую. Создайте файл и сделайте его исполняемым (чмод +х), с:

#!/bin/bash

XDG_MENU_PREFIX=lxde-
export XDG_MENU_PREFIX

linecount="$(ps aux | grep xfdesktop | grep Sl | wc -l)"
while [[ "linecount" -lt 0 ]]; do
    sleep 0.1
    linecount="$(ps aux | grep xfdesktop | grep Sl | wc -l)"
done
sleep 0.1

lxpanel &

Объяснение:

Первый раздел необходим для того, чтобы в меню панелей отображались все обычные пункты меню (кроме «Выполнить» и «Выход»). Xfce по умолчанию устанавливает другое значение xfce-, которое здесь не помогает.

В следующем разделе скрипт ждет, пока xfdesktop будет запущен, и не просто запущен, а в состоянии процесса "Sl" - в котором он обычно находится после инициализации.
Причина: Хотя панель Xfce, похоже, не имеет проблем, если рабочий стол не готов, lxpanel в таких случаях более или менее аварийно завершает работу (продолжает работать, но показывает только серую полосу). И когда панель будет запущена во время запуска Xfce, нет никакой гарантии, что рабочий стол готов.

Наконец, запускается lxpanel.


Отключение панели Xfce

Сначала дважды проверьте, есть ли в файле/etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml, xfce4-panel находится в "Клиенте2Раздел «Команда». Если нет, измените номер соответствующим образом в следующей команде.

Теперь установите его на фиктивную программу./bin/истина, чтобы предотвратить запуск панели, выполните следующую команду:

xfconf-query -c xfce4-session -p /sessions/Failsafe/Client2_Command -t string -sa /bin/true

Делатьнетиспользуйте новый скрипт оболочки, указанный выше, вместо/bin/истина. Если вы используете функцию сохраненного сеанса Xfce (например, с помощью флажка в диалоговом окне выхода/завершения работы), повторный запуск после сохранения не приведет к запуску панели.

Также не редактируйтеxfce4-сессия.xmlнапрямую — он действителен для всех пользователей (команда просто изменяет его для текущей учетной записи), и существует некоторая проблема с кэшированием в xfconf, которая может помешать применению изменений в файлах.


Автоматический запуск lxpanel

Наконец, запустите программу.xfce4-сеанс-настройка. Там, на третьей вкладке, вы можете добавить запись для скрипта оболочки, который будет запускаться всегда вместе с Xfce (независимо от сеансов).


Кстати, использовать Pcmanfm в качестве файлового менеджера по умолчанию проще:
после установки pcmanfm просто измените программу по умолчанию вexo-предпочтительные-приложения.

Связанный контент