reprepro FilterList игнорирует пакеты, содержащие: i386

Я использую reprepro создать частичное локальное зеркало Debian. Мой conf/updates файл похож на это:

Name: update-wheezy
Method: http://ftp.tu-graz.ac.at/mirror/debian
Suite: wheezy
Components: main contrib non-free
Architectures: i386
FilterList: purge mirror.packages

FilterList точки в файл mirror.packages который содержит все в настоящее время устанавливаемые пакеты. Я создаю этот файл с dpkg:

dpkg --get-selections > conf/mirror.packages

Пока все хорошо. Это работает хорошо. Но затем я заметил, что некоторые пакеты отсутствуют в моем локальном репозитории. Вывод dpkg --get-selections содержит некоторые строки, где имя пакета заканчивается :i386. Пример:

libxxf86dga1:i386                               install
libxxf86vm1:i386                                install
lighttpd                                        install

Точно они i386- пакеты отсутствуют. Я обошел это путем удаления суффикса:

dpkg --get-selections | sed 's/:i386//g' > conf/mirror.packages

Теперь мои вопросы:

  1. Действительно ли это - ошибка в reprepro? Или я делаю что-то не так? Страница справочника указывает это FilterList берет выходной формат dpkg --get-selections.
  2. Есть ли некоторый способ иметь dpkg подавить архитектуру?
  3. Почему некоторые пакеты имеют :i386 суффикс, но большинство не имеет?
  4. Почему часть архитектуры имени пакета так или иначе? Действительно ли возможно иметь тот же пакет от различной архитектуры в той же системе?
0
задан 23 September 2015 в 18:28
1 ответ

: i386 не является частью имени пакета, а указывает на архитектуру, для которой этот пакет предназначен. Это результат того, что в Debian появилась поддержка установки пакетов с нескольких архитектур («мультиархитектур»).

См. https://wiki.debian.org/Multiarch для получения дополнительной информации.

Я не уверен, что определяет, будет ли показана архитектура для конкретного пакета. Сначала я думал, что это отображается только тогда, когда пакет был от иностранной архитектуры, но, судя по комментариям nharrer, я явно ошибался. Глядя на список nharrer и размышляя о других контекстах, я видел: в. Я думаю, что он может показывать его для всех пакетов "multi-arch: same"

. Я подозреваю, что функциональность списка фильтров в репозитории предшествует multiarch, не Не понимаю, что означает: i386, и поэтому рассматривает его как часть имени пакета.

1
ответ дан 4 December 2019 в 16:49

Теги

Похожие вопросы