Как вынудить Chrome открыться как новое приложение из .desktop файла

Google Chrome имеет опцию запустить веб-страницу как оконное 'приложение Chrome', которое при использовании с Рабочим столом Gnome создаст специальный .desktop файл, который может использоваться для выполнения Chrome в автономном режиме с его собственным значком, отображенным в переключателе окна и тире/прикреплении.

Проблема с этим режимом состоит в том, что Chrome пытается явиться олицетворением темы GTK, приводящей к довольно ужасному заголовку окна. Это также поднимает ненужное пространство, отображающее строку поиска и другие средства управления наверху окна. Это особенно верно при использовании небезопасного соединения, которое типично для доступа к локально-приложениям-хоста.

Альтернатива должна запустить Chrome с a --app=http://example.com опция, которая приводит к намного более хорошему опыту. Сравнение появления этих двух режимов в конце этого вопроса.

Я могу создать .desktop файл для запуска Chrome с --app опция и значок, который я указываю, но это приводит к новому окну, сгруппированному с другими экземплярами Chrome, который вся доля та же универсальная запись значка Chrome в переключателе окна и тире/прикреплении.

Существует ли опция, или в Chrome или в Gnome, для принуждения окна, которое следует из .desktop файла для поведения как абсолютно отдельное приложение?

Приложение Google Chrome: Chrome app

Google Chrome с --app опция: Chrome with --app option

0
задан 14 March 2020 в 05:43

2 ответа

Используя applicationize для создания приложений Chrome. Create extension

Отбросьте свое расширение в chrome://расширения Chrome extensions

Пример .desktop файла:

[Desktop Entry]  
Version=1.0  
Type=Application  
Name=Netflix Chrome (Application).  
GenericName=Netflix Browser  
Categories=Network;WebBrowser;  
Exec=/opt/google/chrome-unstable/chrome --user-data-dir=/home/USER/.config/google-chrome-netflix --profile-directory=Netflix --class=google-chrome-netflix --app-id=mhmidglabaofnaganlmeicdfedljohpf --flag-switches-begin --flag-switches-end %U  
Icon=chrome-mhmidglabaofnaganlmeicdfedljohpf-Netflix  
MimeType=text/html;text/xml;application/xhtml_xml;image/webp;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;  
StartupNotify=true  
Terminal=false  
StartupWMClass=crx_mhmidglabaofnaganlmeicdfedljohpf

Не забывайте корректироваться --user-data-dir= и дополнительный идентификатор.

1
ответ дан 17 March 2020 в 00:02

Я нашел решение здесь:

https://blog.aldomann.com/jupyterlab-desktop-on-linux/

Создайте jupyter-lab.desktop:

touch ~/.local/share/applications/jupyter-lab.desktop

Затем напишите приведенный ниже код (замените своим именем пользователя) и сохраните его:

[Desktop Entry]
Version=1.0
Type=Application
Name=JupyterLab
GenericName=JupyterLab
Comment=JupyterLab is the next-generation web-based user interface for Project Jupyter
Keywords=python;tensorflow;keras
Exec= bash -c "/usr/bin/env PATH=/home/<user>/.anaconda3/bin/:$PATH /home/<user>/.anaconda3/bin/jupyter lab"
StartupWMClass=Google-chrome
Categories=Development;Science;IDE;Qt;
Icon=jupyter-lab
Terminal=true
StartupNotify=true
MimeType=text/x-python3;text/x-python;application/x-ipynb+json;e

Перезапустите раздел Gnome (нажмите Alt+F2 и внутри диалогового окна напишите 'r')

Создайте новый файл .desktop в Google Chrome:

cp /usr/share/applications/google-chrome.desktop ~/.local/share/applications/google-chrome.desktop

Затем, если не существует строки с StartupWMClass=google-chrome добавьте эту строку, в противном случае замените ее приведенным ниже кодом:

StartupWMClass=google-chrome

Получите значок для Jupyter. Например:

https://blog.aldomann.com/assets/img/jupyter-lab.svg

и сохраните его по адресу ~/.local/share/icons.

3
ответ дан 12 May 2020 в 03:14

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

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