LINUX.ORG.RU

[debian] Как выкачать все дерево зависимостей для пакета


0

1

Задача такова: есть пакет, скажем vim, для примера. Как мне скачать пакет vim*.deb, а также все его зависимости автоматически.

aptitude -d install не предлагать - покусаю. Мне нужны все зависимости, а не те которых у меня не установленны. Т.е. в независимости от того установлен ли у меня libc, мне он нужен скачаным.

★★★★

я, конечно, недавно с deb-based вожусь, но, может, как-то так:

mkdir -p /tmp/apt/{archive,cache}
touch /tmp/apt/status
apt-get install  -d -o Dir::State::status="/tmp/apt/status" -o Dir::Archive="/tmp/apt/archive" -o Debug::NoLocking=True -o APT::Architecture=i386 -o Dir::Cache=/tmp/apt/cache vim

это, несомненно, хромированный костыль, но качается ведь! %)

aol ★★★★★ ()

apt-rdepends посмотрите, он способен рекурсивно строить зависимости для пакетов и меня формат своего вывода, например в JSONб думаю с помощью нее и маленького скриптика можно все дерево выкачать потом

Nicholass ★★★ ()
Ответ на: комментарий от aol

> это, несомненно, хромированный костыль, но качается ведь! %)

Именно костыль мне и нужен сейчас. И я примерно так уже делал. Получаю:

E: Не удалось найти пакет vim

zloelamo ★★★★ ()
Ответ на: комментарий от zloelamo

а, че забыл скопипастить-то!

apt-get update -o Dir::State::status="/tmp/apt/status" -o Dir::Archive="/tmp/apt/archive" -o Debug::NoLocking=True -o APT::Architecture=i386 -o Dir::Cache=/tmp/apt/cache

а потом команду из моего первого коментария

aol ★★★★★ ()
Ответ на: комментарий от drull

> Ты же так пол системы выкачаешь.

Мне это и нужно. Есть проблема: хочу сделать chroot, но со строго конкретным списком ПО. Debootstrap не катит, т.к. он тянет много барахла: мне не нужен логин в этот chroot, не нужен там bash, perl и другое барахло. Вот я пути и исследую, т.к. хочу это дело автоматизировать до полной красоты.

З.Ы. про makejail я в курсе, но там заход через неправильное место: запустили и смотрим куда он тыркается. Зачем, когда есть пакетная база со всеми зависимостями?

zloelamo ★★★★ ()
Ответ на: комментарий от aol

Работает! Спасибо. Я так думаю, что так я в chroot смогу все залить! Только надо понять где я лажал и почему у меня не работало.

zloelamo ★★★★ ()
Ответ на: комментарий от zloelamo

Можешь написать скрипт, который будет рекурсивно парсить вывод apt-cache depends <packagename>.

drull ★☆☆☆ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.