So erzwingen Sie das Öffnen von Chrome als neue Anwendung aus der Desktop-Datei

Mar 14 2020

Google Chrome bietet die Option, eine Webseite als "Chrome-App" mit Fenster zu starten. Bei Verwendung mit Gnome Desktop wird eine spezielle Desktop-Datei erstellt, mit der Chrome in einem eigenständigen Modus mit einem eigenen Symbol ausgeführt werden kann wird im Dash / Dock und im Fensterumschalter angezeigt.

Das Problem in diesem Modus ist, dass Chrome versucht, sich als GTK-Thema auszugeben, was zu einem ziemlich hässlichen Fenstertitel führt. Es nimmt auch unnötigen Platz ein, um die Adressleiste und andere Steuerelemente oben im Fenster anzuzeigen. Dies gilt insbesondere bei Verwendung einer unsicheren Verbindung, die für den Zugriff auf lokal gehostete Anwendungen typisch ist.

Eine Alternative besteht darin, Chrome mit einer --app=http://example.comOption zu starten , was zu einer viel schöneren Erfahrung führt. Ein Vergleich des Erscheinungsbilds der beiden Modi steht am Ende dieser Frage.

Ich kann eine .desktop-Datei erstellen, um Chrome mit der von --appmir angegebenen Option und einem Symbol zu starten. Dies führt jedoch dazu, dass das neue Fenster mit anderen Chrome-Instanzen gruppiert wird, die alle denselben generischen Chrome-Symboleintrag im Dash / Dock und im Fensterumschalter verwenden .

Gibt es in Chrome oder Gnome die Möglichkeit, das aus der .desktop-Datei resultierende Fenster als vollständig separate Anwendung zu verhalten?

Google Chrome App:

Google Chrome mit --appOption:

Antworten

1 bac0n Mar 14 2020 at 19:31

Verwenden von applicationize zum Erstellen von Chrome-Apps.

Legen Sie Ihre Erweiterung in chrome: // extensions ab

Ein Beispiel für eine .desktop-Datei:

[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

Vergessen Sie nicht, die --user-data-dir=ID anzupassen und zu erweitern.

3 LucasRodrigues May 12 2020 at 10:14

Ich habe hier die Lösung gefunden:

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

Erstellen Sie die Datei jupyter-lab.desktop:

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

Schreiben Sie dann den folgenden Code (Ersetzen Sie ihn <user>durch Ihren Benutzernamen) und speichern Sie ihn:

[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

Starten Sie den Gnome-Bereich neu (Drücken Sie Alt + F2 und schreiben Sie im Dialogfeld 'r').

Erstellen Sie eine neue .desktop-Datei in Google Chrome:

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

Wenn keine Zeile vorhanden ist, StartupWMClass=google-chromefügen Sie diese Zeile hinzu. Andernfalls ersetzen Sie sie durch den folgenden Code:

StartupWMClass=google-chrome

Holen Sie sich ein Symbol zu Jupyter. Zum Beispiel:

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

und speichern Sie es bei ~/.local/share/icons.