xdg-open केवल URL को पास करने के बावजूद एक नई क्रोमियम विंडो में एक नया टैब खोलता है


10

जब मैं xdg-openक्रोमियम में एक लिंक खोलने के लिए उपयोग कर रहा हूं , तो इसका परिणाम सिर्फ और केवल नए टैब पृष्ठ के साथ एक नई क्रोमियम विंडो में होता है।

उदाहरण के लिए, xdg-open 'https://askubuntu.com'बस एक नई क्रोमियम विंडो खोलेगी और AskUbuntu नहीं खुलेगी।

ऐसा लगता है कि क्रोमियम को URL पास नहीं किया जा रहा है, क्योंकि क्रोमियम को लागू करना सीधे काम करता है और वांछित पृष्ठ खोलता है: chromium-browser 'https://askubuntu.com' कार्य करता है

जाहिर है, क्रोमियम डिफ़ॉल्ट ब्राउज़र है।

समस्या कहां हो सकती है, और मैं इसे कैसे ठीक कर सकता हूं? यह विशेष रूप से कष्टप्रद है जब कुछ प्रोग्राम xdg-openएक लिंक को खोलने के लिए उपयोग करते हैं और आप उस पेज पर नहीं जा सकते जो आप चाहते हैं, या यहां तक ​​कि देखें कि क्या खोला गया था।


हालाँकि यह सवाल क्रोमियम के लिए है, यह फ़ायरफ़ॉक्स के लिए काम कर सकता है अगर यह एक ही मुद्दा है।
लेओ लैम

जवाबों:


17

मुद्दा वास्तव में है कि xdg-openक्रोमियम के लिए अनुरोधित URL को पास नहीं किया जाता है, इसलिए चलने के बजाय chromium-browser url-here, यह निष्पादित कर रहा है chromium-browserजो बस एक नई विंडो खोलता है।

इंटरनेट पर खोज करने के बाद, मुझे पता चला कि xdg-openकुछ "कॉन्फ़िगर" फाइलों का उपयोग करता है /usr/share/applications

/usr/share/applications/chromium-browser.desktop ऐसा प्रतीत होता है कि सही है, क्योंकि यह URL को क्रोमियम में सही ढंग से पास करने के लिए कॉन्फ़िगर किया गया है:

$ grep Exec /usr/share/applications/chromium-browser.desktop
Exec=chromium-browser %U
...

तो क्या गलत था? यह पता चला है कि एक और स्थान है जो xdg-openउपयोग करता है और उस पर प्राथमिकता है /usr/share/applications

$ grep Exec ~/.local/share/applications/chromium-browser.desktop
Exec=/usr/lib/chromium-browser/chromium-browser --use-system-title-bar --ppapi-flash-path=/usr/lib/pepflashplugin-installer/libpepflashplayer.so --ppapi-flash-version=14.0.0.125

मुझे इस बात का कोई अंदाजा नहीं है कि एक और क्रोमियम-ब्राउजर .desktop क्यों है, लेकिन ध्यान दें कि यह Exec लाइन URL को पारित नहीं करती है; यह गायब है %U। इसलिए मैंने बस %Uइस लाइन को जोड़ा । इसने xdg-openक्रोमियम के साथ सभी मुद्दों को तुरंत ठीक कर दिया ।


अतुल्य! मैं इस पर एक सप्ताह के लिए एक ईंट की दीवार के खिलाफ अपना सिर पीट रहा हूं, मुश्किल से यह जवाब मिला। google-chromeपैकेज के साथ भी यही होता है । आपने यह कैसे पता लगाया?
एडलीन सिमोनियन

1
मेरे पास यह मुद्दा लंबे समय तक भी था, और मुझे केवल इसका कारण मिला जब मैं .desktopआवेदन फाइलों के बारे में पढ़ने के लिए हुआ - मैंने क्रोमियम के साथ मुद्दों को याद किया और फाइलों की जांच करने का फैसला किया, और इसी तरह मैंने इसे ठीक किया।
लीओ लैम

1
अंततः, मुझे लगता है कि यह मुद्दा पेपरफ्लैश के कारण हुआ था, हालांकि मुझे यकीन नहीं है। सुनिश्चित करने के लिए पैकेज फ़ाइल सूची को देखने या स्क्रिप्ट स्थापित करने की आवश्यकता है।
लीओ लैम

धन्यवाद, ~ ~ .local / share / Applications / google-chrome.desktop
Vlad

/.Local/share/applications से क्रोम से संबंधित फ़ाइलों को ले जाया गया और यह तुरंत काम करना शुरू कर दिया! धन्यवाद!
03होर मे
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.