.Desktop फ़ाइल से नए एप्लिकेशन के रूप में खोलने के लिए क्रोम को कैसे बाध्य किया जाए

Mar 14 2020

Google Chrome के पास एक वेब पेज को एक विंडो 'क्रोम ऐप' के रूप में लॉन्च करने का विकल्प है, जिसे गनोम डेस्कटॉप के साथ उपयोग करने पर, एक विशेष .desktop फ़ाइल बनाएगी, जिसका उपयोग क्रोम को अपने आइकॉन के साथ स्टैंड-अलोन मोड में चलाने के लिए किया जा सकता है। डैश / डॉक और विंडो स्विचर में प्रदर्शित किया जाता है।

इस मोड के साथ समस्या यह है कि क्रोम GTK थीम को लागू करने की कोशिश करता है जिसके परिणामस्वरूप एक बहुत बदसूरत खिड़की का शीर्षक है। यह खिड़की के शीर्ष पर एड्रेस बार और अन्य नियंत्रणों को प्रदर्शित करने के लिए अनावश्यक स्थान भी लेता है। असुरक्षित कनेक्शन का उपयोग करते समय यह विशेष रूप से सच है, जो स्थानीय रूप से होस्ट किए गए एप्लिकेशन तक पहुंचने के लिए विशिष्ट है।

एक विकल्प के साथ क्रोम लॉन्च करना एक --app=http://example.comविकल्प है, जिसके परिणामस्वरूप बहुत अच्छा अनुभव होता है। दो मोड की उपस्थिति की तुलना इस प्रश्न के अंत में है।

मैं --appविकल्प के साथ क्रोम लॉन्च करने के लिए एक .desktop फ़ाइल बना सकता हूं और मेरे द्वारा निर्दिष्ट एक आइकन, लेकिन नई विंडो में अन्य क्रोम इंस्टेंस के साथ समूहीकृत किया जा रहा है, जो सभी डैश / डॉक और विंडो स्विचर में समान जेनेरिक क्रोम आइकन प्रविष्टि साझा करते हैं ।

क्या क्रोम या गनोम में या तो एक विकल्प है, जो .desktop फ़ाइल से होने वाली विंडो को पूरी तरह से अलग अनुप्रयोग के रूप में व्यवहार करने के लिए मजबूर करता है?

Google Chrome ऐप:

--appविकल्प के साथ Google Chrome :

जवाब

1 bac0n Mar 14 2020 at 19:31

क्रोम ऐप्स बनाने के लिए एप्लिकेशन का उपयोग करना ।

क्रोम में अपना एक्सटेंशन ड्रॉप करें: // एक्सटेंशन

.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=और एक्सटेंशन को भूलना न भूलें ।

3 LucasRodrigues May 12 2020 at 10:14

मुझे इसका हल मिला:

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

ज्यूपिटर-लैब बनाएँ।

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

फिर नीचे कोड लिखें ( <user>अपने उपयोगकर्ता नाम से बदलें ) और इसे सहेजें:

[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

गनोम अनुभाग को पुनः आरंभ करें (Alt + F2 दबाएं और संवाद के अंदर 'r' लिखें)

Google Chrome में एक नई .desktop फ़ाइल बनाएँ:

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