Debian: Можно ли / безопасно установить пакеты из более старой версии репозитория?


21

Сейчас я провожу тестирование Debian (Wheezy) и пытаюсь заставить работать SCIM . Я хочу установить пакет scim-pinyin , но в репозитории тестирования такого пакета нет, хотя он был в предыдущем стабильном (Squeeze) репозитории. Существует копия пакета в нестабильном, но не для моей архитектуры (amd64).

Глядя на версии пакета, я замечаю, что версия в стабильных репозиториях такая же, как и в нестабильных. В таком случае у меня есть два вопроса:

  1. Есть ли какая-то причина, по которой я не могу установить пакет из более старого репозитория, поскольку я предполагаю, что большинство пакетов Squeeze, вероятно, будут иметь свои зависимости, соответствующие тем версиям пакетов, которые в настоящее время тестируются?

  2. Каков наилучший способ достичь этого? (Добавить репозиторий Squeeze в sources.list? Загрузить пакет Squeeze и установить его вручную?)


Однажды я установил пакет от Ленни на Squeeze. Я думаю, что это был lib2c.so. Все работало нормально, но у меня было и остается плохое предчувствие. Сначала я удалил текущее хранилище Squeeze, добавил Lennys (гуглил для URL архивирующих серверов), установил необходимый пакет и вернулся к хранилищу Squeeze, удалив Lennys.
TheMeaningfulEngineer

2
Смотрите также bugs.debian.org/cgi-bin/bugreport.cgi?bug=659310 ... это звучит как , возможно , вы не должны хотеть , чтобы установить его.
Дероберт

Проверьте мой ответ ниже; Кроме того, этот вопрос SU может помочь вам.
Эмануэль Берг

В общем, ваш лучший вариант - перекомпилировать его на платформе, на которой вы его используете. Это дает вам лучший шанс успешного использования. Сказав это, он, вероятно, был удален из Debian по уважительной причине, поэтому я бы проверил лучшие альтернативы.
Фахим Митха

Ответы:


15

В этом случае да , это возможно и безопасно.

В качестве debian хранится дерево зависимостей для каждого запрошенного пакета.

Вообще существует риск того, что некоторые библиотеки не могут существовать в двух разных версиях вместе в одной и той же установке из-за конфликта (резервирование порта, драйвер устройства и т. Д.). В такой ситуации aptвам помешают и спросят, что делать. (Вернись с другим вопросом UL в этом случае ;-)

Вы можете добавить squeeze.listкsource.list.d

( Осторожно! Новые версии APT будут игнорировать имя файла, не заканчивающееся на " .list".):

cat <<eof >/etc/apt/sources.list.d/squeeze.list
deb http://ftp.be.debian.org/debian/ squeeze-updates main contrib
deb-src http://security.debian.org/ squeeze/updates main contrib
eof

добавить defaultдирективу/etc/apt/apt.conf.d/

cat <<eof >/etc/apt/apt.conf.d/99squeeze
APT::Default-Release "wheezy";

Чем использовать -tпереключатель для apt-get для переопределения конфигурации по умолчанию:

apt-get -t squeeze install scim-pinyin

Это имеет смысл. В конце концов, благодаря информации в ссылке , размещенном @derobert я решил не устанавливать SCIM и использовать fcitx вместо этого, который является доступен в астматический. Так что я нашел решение своей проблемы, но все же узнал что-то новое по пути - спасибо.
FixMaker

1
Я хотел бы отметить, что добавленные файлы sources.list.dтеперь игнорируются, если они не имеют listрасширения. Так что в моем случае, файл будет/etc/apt/sources.list.d/squeeze.list
carandraug

Я попытался скопировать и вставить это в бастер, чтобы я мог использовать несколько стрейч-пакетов. Я обнаружил, что мне не нужны «обновления» - мой файл stretch.list выглядел так: deb http://deb.debian.org/debian/ stretch main contrib non-free deb-src http://deb.debian.org/debian stretch main contrib non-freeи директива выпуска по умолчанию явно изменилась на"buster"
mozboz

6

Я сделал это однажды - это был просмотрщик изображений gliv, который я хотел, потому что он может делать слайд-шоу, но в последней версии (в Debian sid) была ошибка, и она закрывалась при запуске. Когда-то "пониженный", это работало.

В /etc/apt/sources.listскажем, это выглядит так:

deb http://ftp.de.debian.org/debian sid main contrib non-free
# deb http://ftp.de.debian.org/debian wheezy main contrib non-free
# deb http://ftp.de.debian.org/debian squeeze main contrib non-free

В этом случае я раскомментирую последние две строки, затем запускаю sudo aptitude update, затем aptitude versions PACKAGE. Найдите версию, которая мне нравится, и запустите sudo aptitude install PACKAGE=VERSION(введите версию точно так же, как во втором столбце вывода aptitude).

Когда это будет сделано, я, возможно, захочу вернуться, /etc/apt/sources.listтак что я просто бродю по одному выпуску Debian за раз.


Я хотел бы принять оба ответа, так как оба имеют смысл. Спасибо за предложение.
FixMaker

@Lorax: Нет проблем, это обычная ситуация на сайтах SX.
Эмануэль Берг

Этот ответ помог мне решить еще одну не связанную библиотечную проблему. Благодарю.
Dark Star1

Этот ответ помог мне решить еще одну не связанную библиотечную проблему. Благодарю.
Dark Star1
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.