स्रोत से एप्लिकेशन इंस्टॉल करते समय, और कभी-कभार हैक के दौरान मैंने इसे कुछ बार चलाया है update-alternatives
। अब तक, यह केवल एक छोटी सी झुंझलाहट है (यानी, अंत-लक्ष्य के रास्ते में नहीं मिला), लेकिन यह अब निराशा है क्योंकि यह मेरे ज्ञान-आधार के एक छेद की ओर इशारा कर रहा है ... इसलिए जब मुझे एक संदेश मिलता है कि ' foo '' एक पंजीकृत अनुप्रयोग नहीं है '' (या मैं foo के डिफ़ॉल्ट आइकन का उपयोग नहीं कर सकता क्यूज़ उबंटू को 'foo' का कोई ज्ञान नहीं है:
क्या "पंजीकृत अनुप्रयोग" को परिभाषित करता है?
मैं स्रोत से स्थापित एप्लिकेशन (और $ HOME / बिन / ऐप-नाम में रहने की संभावना) को कैसे परिभाषित कर सकता हूं कि यह एक .deb से स्थापित पैकेज के समान कार्यक्षमता पैक करता है? (यदि समाधान 1 उत्तर से स्पष्ट नहीं है)
उदाहरण:
मैं डाउनलोड और खोलना दैनिक देव की बनाता sublime-text-2
करने के लिए /home/tom/bin/sublime-text-2
। मैंने उपयुक्त शॉर्टकट्स के साथ एक * .desktop फ़ाइल बनाई है, आदि। लेकिन सबलेक के लिए आइकन किसी भी लॉन्चर में प्रदर्शित नहीं किया जा सकता है, भले ही मैं विकल्प के लिए पूर्ण पथनाम प्रदान करता हूं। समाधान एक डिब पैकेज से उदात्त का दूसरा उदाहरण स्थापित करना है ।
जब मैं एक .deb पैकेज से उदात्त-पाठ -2 स्थापित करता हूं, तो यह नीचे /usr/bin && /usr/lib
स्थापित होता है । स्थापित .desktop फ़ाइल को नीचे संग्रहीत किया जाता है /usr/share/applications
, और संबंधित पंक्ति पढ़ता है icon=sublime_text
:।
मैं कहां गायब हूं? किसी तरह उबंटू जानता है कि sublime_text
बाद में आइकन को कैसे ठीक किया जाए , लेकिन पूर्व में नहीं (फिर से, यहां तक कि पूर्ण पथ प्रदान किया गया)।
/.local/share/applications
। सबसे उल्लेखनीय स्थान जिसे मैं "पंजीकृत ऐप" संदेश याद कर सकता हूं, जब update-alternatives
सूची में विम के संकलित-से-स्रोत संस्करण को छेड़ने की कोशिश की गई थी, तो यह 'डिफ़ॉल्ट' इंस्टॉल के बजाय आएगा। सहायक? लगता है कि मैं क्या देख रहा हूं, वह तंत्र है जो उबंटू को ज्ञान प्रदान करता है कि कहां पर (उदाहरण के लिए) ऐप ए के लिए सही आइकन - जैसा कि यह .desktop फ़ाइलों के साथ करता है /usr/share/applications/
।
~/.local/share/applications
लॉन्चर में "आइकन" का मान सिर्फ sublime_text
( पूरा रास्ता नहीं) निर्धारित करते हैं , तो क्या वह काम करता है?