Одно терминальное приложение; два режима запуска (Избранное)

При запуске Ubuntu 20.04 я хочу иметь два интерактивных режима запуска для gnome-terminal на панели избранного [т.е. в «Доке»]. Например, мне нужен как запуск по умолчанию, так и индивидуальный запуск. Пусковую установку по умолчанию было тривиально добавить на панель избранного с помощью хорошо известных механизмов. Для настраиваемой программы запуска я создал следующий файл .desktop :

$ cat ~/.local/share/applications/custom-terminal.desktop 
[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=CustomTerminal
Comment=Terminal for Specialized Development
Exec=$HOME/.bin/custom-terminal.sh
Icon=/usr/share/icons/gnome/48x48/apps/gnome-terminal.png
Terminal=false

Для индивидуального запуска я установил переменную среды ( FOOBAR ), с помощью которой мой ~ /. Файл bashrc может вызывать настраиваемую логику:

$ cat $HOME/.bin/custom-terminal.sh
#!/bin/bash
FOOBAR=SomeTriggerValue /usr/bin/gnome-terminal

ПРОБЛЕМА: Я могу добавить настраиваемую программу запуска на панель «Избранное», но запущенный экземпляр неправильно связан со значком средства запуска по умолчанию. то есть значок средства запуска по умолчанию [на панели избранного] получает «красную точку» для моего пользовательского экземпляра gnome-terminal .

Я пробовал делать копии исполняемого файла [разумеется, с разными путями], чтобы «обмануть» рабочий стол, полагая, что одно приложение на самом деле два, но этот трюк не удался.

Я заметил, что если щелкнуть правой кнопкой мыши значок по умолчанию gnome-terminal , мне будет предложена опция Предпочтения . Щелчок правой кнопкой мыши на пользовательском значке gnome-terminal не предлагает параметр Предпочтения .

ВОПРОС: Как добавить 2+ пользовательских программы запуска для gnome-terminal в панель избранного?

1
задан 14 August 2021 в 00:41

1 ответ

Средство запуска Ubuntu различает запущенные приложения на основе WMClass. Вы должны сделать две вещи

  • , чтобы убедиться, что терминал из настраиваемой программы запуска принимает другой WM_CLASS, чем значение по умолчанию.
  • объявляют этот пользовательский WM_CLASS в программе запуска с помощью директивы StartupWMClass = .

См. gnome-terminal --help-gtk , чтобы узнать, как установить свой собственный WM_CLASS.

0
ответ дан 20 August 2021 в 10:27

Другие вопросы по тегам:

Похожие вопросы: