LSOpenURLsWithRole () त्रुटि -10810 के साथ विफल रहता है Yosemite पर tmux के भीतर से


17

कमांडलाइन (Terminal.app) से एक एप्लिकेशन खोलने की कोशिश कर रहा है, अंदर tmux(MacPorts, संस्करण 1.9a के माध्यम से स्थापित), और निम्नलिखित परिणाम प्राप्त कर रहा है:

$ open /Applications/Adobe\ Reader.app/
LSOpenURLsWithRole() failed with error -10810 for the file /Applications/Adobe Reader.app.

एक ही आदेश ठीक काम करता है, एक ही टर्मिनल से, अगर tmux के बाहर निष्पादित किया जाता है।

परिचारिका को मेजबान से पढ़ा जाना चाहिए; निम्नलिखित tmux.conf में है:set -g update-environment -r

जब टर्मिनल .app या tmux को फिर से शुरू किया जाता है, तो यह कभी-कभी पहले एक अलग संदेश के साथ त्रुटियां करता है , (नीचे देखें) और जब पुन: प्रयास किया जाता है, तो इसके बजाय उपरोक्त त्रुटि -10810 दी गई है।

$ open /Applications/Adobe\ Reader.app/
The window server could not be contacted.  open must be run with a user logged in at the console, either as that user or as root.

मैंने दोनों एप्स के स्वयं के ऐप्स (पूर्वावलोकन, फ़ॉन्ट बुक, संपर्क) और तीसरे पक्ष (Adobe, Evernote आदि) की कोशिश की है। कोई फर्क नहीं। एक ऐप जो काम करने लगता है, वह है खोजकर्ता। ( open [dirname]उदाहरण के लिए।)

जवाबों:


19

इसके लिए एक समाधान / समाधान है:

  • अपने संस्करण को अपडेट करें reattach-to-user-namespace। कार्यक्रमों को निष्पादित करने के लिए tmux द्वारा इसका उपयोग किया जाता है। मैं macports के बजाय काढ़ा का उपयोग करें, तो मैं बस किया brew update; brew upgrade reattach-to-user-namespace:। मैकपोर्ट्स कुछ ऐसा ही करने में सक्षम होने की संभावना है।
  • अपनी .tmux.confफ़ाइल में निम्न जोड़ें :

    set -g default-command "reattach-to-user-namespace -l /bin/bash"

अपने tmux सत्र को पुनरारंभ करें और इससे आपको कमांड लाइन से प्रोग्राम शुरू करने की अनुमति मिल सकती है।

अधिक जानकारी इस github मुद्दे पर मिल सकती है


एफडब्ल्यूआईडब्ल्यू, अपडेट करने reattach-to-user-namespaceसे मेरे लिए कोई फर्क नहीं पड़ता है, और समस्या अभी भी बनी हुई है। ऐसा लगता है कि tmux को स्वयं तय किया जाना चाहिए (अन्य उत्तर देखें)।
कोनराड रुडोल्फ

डिफ़ॉल्ट शेल का उपयोग नहीं करने पर, कमांड में पथ को बदलना सुनिश्चित करें (जैसे, path/to/your/fish)।
अवील सकल

3

मुद्दा यह है कि tmux बूटस्ट्रैप को सिस्टम डोमेन में तब बदल रहा है जब इसे नहीं करना चाहिए (देखें https://trac.macports.org/ticket/18357 )। लॉन्च के पुराने संस्करणों ने tmux में इस बग के आसपास काम किया, लेकिन OS X Yosemite में फिर से लिखा गया लॉन्च इस tmux बग के आसपास काम नहीं करता है।

संभवतः आपको कम से कम 6 वर्षों से ज्ञात tmux में इस बग को ठीक करने के लिए tmux बग या pester tmux डेवलपर्स के आसपास काम करने वाले अपडेट को जारी करने के लिए Apple की प्रतीक्षा करनी होगी।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.