मैं उस रिपॉजिटरी को कैसे निर्दिष्ट कर सकता हूं जिससे एक पैकेज स्थापित किया जाएगा? (Emacs-स्नैपशॉट)


27

मैं http://emacs.orebokech.com से emacs-snapshot इंस्टॉल करना चाहता हूं, लेकिन उबंटू के रिपॉजिटरी में पहले से ही emacs-snapshot है।

मैं उस रिपॉजिटरी को कैसे निर्दिष्ट कर सकता हूं जिससे एक पैकेज स्थापित किया जाएगा?

जवाबों:


19

आप -tविकल्प के साथ एक रिपॉजिटरी निर्दिष्ट कर सकते हैं । एक उदाहरण के रूप में, मैंने /etc/apt/sources.listआइसवेज़ेल नवीनतम रिलीज़ को स्थापित करने के लिए निम्न रिपॉजिटरी को जोड़ा है :

deb http://mozilla.debian.net/ squeeze-backports iceweasel-release

जैसा कि आप जानते हैं iceweaselकि आधिकारिक डेबियन भंडार में एक ही पैकेज है। यदि मैं इस विशिष्ट रेपो से Iceweasel स्थापित करना चाहता / चाहती हूं:

apt-get install -t squeeze-backports iceweasel

apt-get मैन्युअल पृष्ठ से:

-t, --target-release, --default-release
           This option controls the default input to the policy engine, it creates a default pin at priority 990 using the specified
           release string. This overrides the general settings in /etc/apt/preferences. Specifically pinned packages are not affected by
           the value of this option. In short, this option lets you have simple control over which distribution packages will be retrieved
           from. Some common examples might be -t '2.1*', -t unstable or -t sid. Configuration Item: APT::Default-Release; see also the
           apt_preferences(5) manual page.

मुझे लगता है कि यह एक बेहतर उपाय है,

स्रोत: /ubuntu/27362/how-to-only-install-updates-from-a-specific-repository/57749#57749


हाँ, आपका समाधान मेरे से बेहतर है।
इलावीजो

1
यदि आप उक्त स्रोत को अपने सूत्रों में जोड़ना नहीं चाहते हैं, तो क्या करें।
लिटिलनॉबी

12

मुझे एक वर्कअराउंड मिला। पहले मुझे उन रिपॉजिटरी को खोजने की जरूरत थी जिनके पास pacakage था:

$ apt-cache showpkg emacs-snapshot
Package: emacs-snapshot
Versions: 
1:20100111-1~lenny1 (/var/lib/apt/lists/emacs.orebokech.com_dists_lenny_main_binary-amd64_Packages) (/var/lib/dpkg/status)
 Description Language: 
                 File: /var/lib/apt/lists/emacs.orebokech.com_dists_lenny_main_binary-amd64_Packages
                  MD5: 906df684c212eabe267e6b5c2e8c2032

1:20090909-1 (/var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_karmic_universe_binary-amd64_Packages)
 Description Language: 
                 File: /var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_karmic_universe_binary-amd64_Packages
                  MD5: 906df684c212eabe267e6b5c2e8c2032


Reverse Depends: ...
...

में संस्करण: खंड। मैं विभिन्न रिपॉजिटरी से आने वाले संस्करणों को देखता हूं:

  • 1: 20,100,111-1 ~ lenny1
  • 1: 20,090,909-1

तो अब हम उस विशिष्ट संस्करण को स्थापित करने के लिए उपयुक्त या उपयुक्तता बताते हैं:

$ sudo aptitude install emacs-snapshot=1:20100111-1~lenny1

पैकेज-नाम = version_name

विजय।

मैं अभी भी नहीं जानता कि एक विशिष्ट भंडार का उपयोग कैसे करें। लेकिन इस मामले में एक विशिष्ट संस्करण पर्याप्त था।


1

उपयुक्त के लिए एक प्राथमिकता फ़ाइल है। मुझे लगता है कि यह / etc / apt के अंतर्गत स्थित है, लेकिन 100% निश्चित नहीं है। वहां आप एक पैकेज के लिए प्राथमिकता सेट कर सकते हैं जो Ubunto रिपॉजिटरी से एक ही पैकेज की तुलना में अधिक है। सटीक सिंटैक्स के लिए, आदमी में देखो। फ़ाइल संपादित करें, फिर apt-get के साथ हमेशा की तरह स्थापित करें, यह सर्वोच्च प्राथमिकता मूल से प्राप्त होगा। बस पहले से सुनिश्चित कर लें कि उस भंडार से पैकेज आपके डिस्ट्रो के लिए संकलित है (जैसे एक डेबियन बाइनरी गलत स्थानों पर निर्भरता के लिए देख सकता है) और आपके कर्नेल संस्करण के लिए (यह एक Ubuntu संस्करण के जीवन चक्र में काफी बार बदलता है)। अगर यह काम करेगा तो मौका है।

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