Як я можу вказати сховище, з якого буде встановлений пакет? (емак-знімок)


27

Я хочу встановити emacs-знімок із http://emacs.orebokech.com. Але в сховищах Ubuntu вже є знімок emacs.

Як я можу вказати сховище, з якого буде встановлений пакет?

Відповіді:


19

Ви можете вказати сховище з -tопцією. Як приклад, я додав наступне сховище /etc/apt/sources.listдля встановлення останнього випуску Iceweasel:

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

Як відомо, iceweaselв офіційному сховищі Debian є такий самий пакет . Якщо я хочу встановити 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


так, ваше рішення краще, ніж моє.
elviejo79

1
Що робити, якщо ви не хочете додати вказане джерело до свого source.list?
LittleNooby

12

Я знайшов рішення. Спершу мені потрібно було знайти сховища, в яких було збережено пакунок:

$ 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: 20100111-1 ~ lenny1
  • 1: 20090909-1

Тому тепер ми просто повідомляємо apt або здатність встановити цю конкретну версію:

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

package-name = ім'я версії

Перемога.

Я досі не знаю, як використовувати певний сховище. Але в цьому випадку конкретної версії було достатньо.


1

Існує файл налаштувань для apt. Я думаю, що він розташований під / etc / apt, але не на 100% впевнений. Там ви можете встановити пріоритет для пакета із сховища, який буде вищим, ніж для того самого пакету з сховища Ubunto. Для точного синтаксису знайдіть людину apt-get. Відредагуйте файл, а потім встановіть, як зазвичай, з apt-get, він отримає найвищий пріоритетний вихід. Заздалегідь переконайтесь, що пакет із цього сховища складено для вашого дистрибутива (наприклад, бінарний файл debian може шукати залежності в неправильних місцях) та для вашої версії ядра (це досить часто змінюється протягом життєвого циклу версії Ubuntu). Інакше це питання випадковості, якщо це спрацює.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.