Не удается настроить apt-pinning
Вообще говоря, проблемы только с aptitude:
rom@rom:~> cat /etc/apt/preferences.d/prosody
Package: *
Pin: origin packages.prosody.im
Pin-Priority: 995
rom@rom:~> apt-cache policy prosody
prosody:
Установлен: (отсутствует)
Кандидат: 0.6.1-1
Таблица версий:
0.6.1-1 0
995 http://packages.prosody.im unstable/main Packages
0.5.2-2 0
990 ftp://ftp.debian.org testing/main Packages
500 ftp://ftp.debian.org unstable/main Packages
rom@rom:~> aptitude download prosody
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Чтение информации о расширенных состояниях
Инициализация состояний пакетов... Готово
Получить:1 ftp://ftp.debian.org testing/main prosody 0.5.2-2 [133kB]
Получено 133kБ в 2с (66,5kБ/с)
rom@rom:~> rm prosody_0.5.2-2_i386.deb
rom@rom:~> aptitude download prosody/unstable
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Чтение информации о расширенных состояниях
Инициализация состояний пакетов... Готово
Получить:1 ftp://ftp.debian.org testing/main prosody 0.5.2-2 [133kB]
Получено 133kБ в 1с (67,0kБ/с)
Однако:
rom@rom:~> sudo apt-get -s install prosody
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Будут установлены следующие дополнительные пакеты:
liblua5.1-expat0 liblua5.1-filesystem0 liblua5.1-sec0
liblua5.1-socket2
lua5.1
Предлагаемые пакеты:
lua-zlib
НОВЫЕ пакеты, которые будут установлены:
liblua5.1-expat0 liblua5.1-filesystem0 liblua5.1-sec0
liblua5.1-socket2
lua5.1 prosody
обновлено 0, установлено 6 новых пакетов, для удаления отмечено 0
пакетов, и 0 пакетов не обновлено.
Inst liblua5.1-expat0 (1.1.0-3 Debian:testing)
Inst liblua5.1-filesystem0 (1.4.2-2 Debian:testing)
Inst liblua5.1-socket2 (2.0.2-4 Debian:testing)
Inst lua5.1 (5.1.4-5 Debian:testing)
Inst liblua5.1-sec0 (0.3.2-2prosody1 prosody:0.0/prosody)
Inst prosody (0.6.1-1 prosody:0.0/prosody)
Conf liblua5.1-expat0 (1.1.0-3 Debian:testing)
Conf liblua5.1-filesystem0 (1.4.2-2 Debian:testing)
Conf liblua5.1-socket2 (2.0.2-4 Debian:testing)
Conf lua5.1 (5.1.4-5 Debian:testing)
Conf liblua5.1-sec0 (0.3.2-2prosody1 prosody:0.0/prosody)
Conf prosody (0.6.1-1 prosody:0.0/prosody)
apt-get тянет "правильную" версию.
Есть такой существенный момент:
rom@rom:~> cat /etc/apt/apt.conf
APT::Default-Release "testing";
Если эту строку убрать, aptitude тянет нужную версию по умолчанию,
но тогда полсистемы пытается обновиться до unstable, даже
если сделать /etc/apt/preferences.d/distro типа:
Package: *
Pin: release a=testing
Pin-Priority: 990
apt-get отрабатывает эту ситуацию нормально (ничего не обновляет)
Сам-то пакет из нужного репозитория можно установить, указав в качестве
целевой ветки не unstable, как можно было бы ожидать, а prosody:
aptitude install prosody/prosody
и это работает вообще безо всяких pinning и с настроенным
Default-Release. Но тогда пакет не будет автоматом из этого репозитория
обновляться.
В чем причина такого поведения aptitude, что я делаю не так?
--
С уважением,
Роман Гуща
Reply to: