Существует ли простой способ установки пакетов с большим деревом зависимостей при условии, что у вас нет прав суперпользователя? Например, скажем, я хотел установить Firefox. Firefox имеет массу зависимостей, каждая из которых имеет свои собственные зависимости и т. Д. Установка этих способов "./configure; make; make install" заняла бы вечность.
Могу ли я дать apt-get возможность установить его в личном каталоге? Или есть способ взломать его, чтобы сделать всю тяжелую работу для меня?
Ответы:
Вы можете установить отдельные файлы .deb в свой домашний каталог с помощью:
Но это не заботится о таких зависимостях, как aptitude или apt-get.
источник
Проверьте NixOs ( LWN ). Пакеты изолированы (иногда дистрибутив должен их исправлять) и могут быть установлены несколько раз, в разных версиях или разными пользователями.
jhbuild может автоматизировать большой процесс CMMI. Но кто-то должен написать модуль (граф зависимостей).
Если вы собираетесь выполнить процесс ручной настройки / установки всех параметров, можно использовать stow для упрощения установки вещей в вашем доме. Stow полезен для установки нескольких префиксов, но для разрешения зависимостей используется только один префикс.
dpkg можно принудительно установить в другом префиксе с помощью instdir / admindir / root, но это полезно только для сред chroot.
источник
Не компилируйте Firefox из исходного кода, просто установите бинарный пакет в свой домашний каталог.
В этой статье базы знаний Mozilla объясняется, как это сделать. В основном вам нужно просто распаковать архив и запустить в нем
firefox
файл; все зависимости уже включены, поэтому вам не нужно ничего устанавливатьapt
.РЕДАКТИРОВАТЬ: Нет, универсального метода не существует, по крайней мере, потому что большинство приложений (и особенно GUI) требуют, чтобы большая часть связанных с ними данных была размещена в хорошо известных местах, таких как / usr / share, и они жестко закодированы в ней (хорошо, это может быть настроено во время компиляции, но вы не хотите перекомпилировать все, как вы сказали в вопросе). Таким образом, вы можете просто проверить предварительно скомпилированные бинарные пакеты, которые ищут ресурсы в каталоге запуска, а не системные.
источник
Я думаю, что ответ в значительной степени "нет". Во-первых, база данных пакетов доступна только пользователю root, а во-вторых, некоторые / многие пакеты имеют жестко закодированные пути, которые делают невозможным их перемещение. Использование chroot было бы возможным ответом, но для этого вам также нужен root или, по крайней мере, кто-то с root, чтобы предоставить вам ограниченные права.
источник
Я считаю, что вы должны сделать chroot, тогда вы можете установить свои пакеты там.
ссылка: https://help.ubuntu.com/6.10/ubuntu/packagingguide/C/appendix-chroot.html https://wiki.ubuntu.com/DebootstrapChroot
источник