Написал небольшой скрипт для скачивания и распаковки пакетов с packages.debian.org или packages.ubuntu.com
В каталоге с simply_builder должен находится текстовый файл packs с ссылками на пакеты. Сборщик читает ссылку из файла packs, скачивает пакет в каталог ./download и распаковывает его в каталог ./build Игнорируются все строки, которые не начинаются с ftp или http или Section: Если сборщик встречает строку вроде Section: бла-бла-бла, он спрашивает пользователя - ставить эту секцию или нет. Если нет - пакеты пропускаются до следующей Section: Это нужно, чтобы не плодить десяток packs-файлов, а обходится одним.
Если нужный пакет уже лежит в каталоге ./download, повторно он не скачивается. Каталог ./build в начале работы очищается.
Порядок работы такой. Вдумчиво бродя по сайту ubuntu или debian формируем список URL-ов пакетов и их зависимостей. Потом легким движением руки запускаем simply_builder и получаем желаемое в каталоге ./build Если выясняется, что что-то забыли - дополняем packs и запускаем simply_builder еще раз.
В скрипте есть краткая справка simply_builder -h
С сайтом ubuntu я не проверял, но должно работать. С debian качает нормально, проверенно.
Писано на tcl. Отбросьте расширение .txt, проверьте права на выполнение.