Как в системе Debian извлечь и установить пакет .deb, расположенный в одной папке, и его зависимости, расположенные в «пуле» других папок, используя apt, dpkg и Synaptic соответственно?
Редактировать:
Я хотел бы иметь возможность указать исходную папку, где находится пакет .deb, а также те, которые содержат зависимости. Все они, скажем, в домашней папке. Я не знаю, можно ли это сделать, отредактировав файл sources.list или как-то иначе.
решение1
Если я не ошибаюсь, *.deb установит все, что есть в пулах. Пакету .deb, о котором идет речь, нужна лишь часть из них в качестве зависимостей.
решение2
Вам следует поместить нужный пакет и его зависимости в один каталог пула.
Вам необходимо подготовить папку «pool», содержащую пакеты зависимостей dpkg-scanpackages
, которая находится в dpkg-dev
package.
cd /some/where/package_pool_directory
dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz
Это превращает каталог пула в репозиторий в стиле «тривиального архива».
Теперь вы сможете указать репозиторий в /etc/apt/sources.list
файле следующим образом:
deb file:/some/where/package_pool_directory ./
Перечислите его в верхней части файла, чтобы он был предпочтительнее любого другого репозитория. Затем запустите, apt update
чтобы apt
узнать о новом репозитории, а затем используйте инструменты управления пакетами как обычно.
Обратите внимание, что стиль репозитория "trivial archive" устарел и может перестать работать в будущих выпусках. К тому времени, надеюсь, будет доступно какое-то новое решение.