ОБНОВЛЕНИЕ: Я ставлю награду за этот вопрос, в измененной форме:

Как сделать так, чтобы APT Pinning работал как положено? Или где я должен прочитать больше (за исключением официальной вики и исправлений / дополнений в нем), чтобы понять, как это работает, и сделать то, что в первоначальном вопросе я хочу сделать?

Короче говоря, я использую Debian Squeeze (версия 6), и я хочу сохранить его таким. И я хочу иметь возможность устанавливать пакеты из тестирования / нестабильности, если это необходимо. Таким образом, у меня есть эта настройка:

(TLDR: 2 вопроса в конце)

# /etc/apt/sources.list
deb http://ftp.uni-sofia.bg/debian/ squeeze main contrib non-free
deb-src http://ftp.uni-sofia.bg/debian/ squeeze main contrib non-free
deb http://ftp.uni-sofia.bg/debian/ wheezy main contrib non-free
deb-src http://ftp.uni-sofia.bg/debian/ wheezy main contrib non-free

У меня также есть /etc/apt/preferences:

Package: *
Pin: release a=squeeze
Pin-Priority: 1100

Package: *
Pin: release a=wheezy
Pin-Priority: 200

apt-get update не игнорирует wheezy repo, я дважды и трижды проверил.

По сути, я хочу, чтобы Wine использовал PulseAudio, но это уже другая тема. :-) Сейчас я просто хотел бы иметь возможность установить libasound2-plugins от wheezy. Мне каким-то образом удалось установить libasound2 из wheezy, но теперь я не могу заставить его сделать то же самое для libasound2-plugins .

Естественно, я попытался apt-get -t wheezy install libasound2-plugins . Вот вывод:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
 initscripts : Breaks: console-setup (< 1.74) but 1.68+squeeze2 is to be installed
               Breaks: nfs-common (< 1:1.2.5-3) but 1:1.2.2-4squeeze2 is to be installed
 libglib2.0-0 : Breaks: emacs23 (< 23.4+1-3)
                Breaks: eog (< 3.2.2-3) but 2.30.2-1 is to be installed
                Breaks: gnome-control-center (< 1:3) but 1:2.30.1-2 is to be installed
 network-manager : Recommends: crda but it is not going to be installed
                   Breaks: network-manager-gnome (< 0.9) but 0.8.1-2 is to be installed
E: Broken packages

Теперь вот вещь. Я не хочу GNOME 3. (обратите внимание на сообщение: gnome-control-center (< 1:3) but 1:2.30.1-2 is to be installed для тестирования / нестабильной только для нескольких пакетов.

Наконец, мне кажется, что APT-пиннинг не работает хорошо, взгляните на это:

apt-cache policy libasound2

libasound2:
  Installed: 1.0.25-2
  Candidate: 1.0.25-2
  Version table:
 *** 1.0.25-2 0
        500 http://ftp.uni-sofia.bg/debian/ wheezy/main amd64 Packages
        100 /var/lib/dpkg/status
     1.0.23-2.1 0
        500 http://ftp.uni-sofia.bg/debian/ squeeze/main amd64 Packages

Все как-то предполагает пин-приоритет 500, а на самом деле я указал 1100 и 200 для squeeze и wheezy соответственно.

Итак, на мои 2 вопроса:

  1. Как я могу даже установить libasound2-plugins из wheezy, не беспокоясь о APT и попросив меня (1) обновить половину моих дистрибутивных пакетов или (2) пожаловаться на сломанные пакеты?
  2. Как я могу сделать так, чтобы APT-пиннинг работал правильно? Я прочитал официальную вики, опечатки и несколько статей, пытаясь подробно описать недостатки в официальной вики, но пока безрезультатно.

Я буду очень благодарен за каждое предложение, которое просвещает меня.

Спасибо за ваше время.

1 ответ1

1

Ответ на ваш первый вопрос будет:

добавлять

APT: релиз по умолчанию "стабильный";

в ваш /etc/apt/apt.conf а затем установите нужные пакеты Wheezy с помощью aptitude:

aptitude install libasound2-plugins/wheezy

Именно так вы обычно тянете пакеты Wheezy в Squeeze, aptitude помогает справиться с ними, и вам не нужно устанавливать 80% Wheezy только для одного пакета.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .