installation de packages sans accès sudo

11

Existe-t-il un moyen facile d'installer des packages avec une grande arborescence de dépendances, à condition que vous ne disposiez pas d'un accès superutilisateur? Par exemple, disons que je voulais installer Firefox. Firefox a une tonne de dépendances, chacune ayant ses propres dépendances, etc. L'installation de celles-ci de la manière "./configure; make; make install" prendrait une éternité.

Existe-t-il une option que je peux donner à apt-get pour l'installer dans un répertoire personnel? Ou existe-t-il un moyen de le pirater pour faire tout le gros du travail pour moi?


la source
essayez de demander sur www.superuser.com ou si une question de serveur spécifiquement www.serverfault.com

Réponses:

4

Vous pouvez installer des fichiers .deb individuels dans votre répertoire personnel avec:

dpkg-deb -x /path/to/some.deb $HOME

Mais cela ne prend pas en charge les dépendances comme aptitude ou apt-get.

Egon Willighagen
la source
J'ai utilisé cette méthode pour installer Atom pour Julia sur mon poste de travail. De plus, j'ai créé un alias pour atom dans ~ / .bashrc: alias atom = "/ path / to / the / executable / atom / binary / file". Ensuite, exécutez: source ~ / .bashrc, vous êtes prêt à exécuter atom dans le terminal.
Good Will
2

Découvrez NixOs ( LWN ). Les packages sont isolés (parfois la distribution doit les patcher) et peuvent être installés plusieurs fois, à différentes versions ou par différents utilisateurs.

jhbuild peut automatiser un gros processus cmmi. Mais quelqu'un doit écrire un ensemble de modules (un graphe de dépendances).

Si vous utilisez le processus de configuration / création manuelle de toutes les installations, il est possible d'utiliser stow pour simplifier l'installation des choses dans votre maison. Stow est utile pour installer des éléments dans plusieurs préfixes, mais n'utilisez qu'un seul préfixe pour la résolution des dépendances.

dpkg peut être contraint à installer dans un préfixe différent avec instdir / admindir / root, mais cela n'est utile que pour les environnements chroot.

Tobu
la source
0

Ne compilez pas Firefox à partir des sources, installez simplement un paquet binaire dans votre répertoire personnel.

Cet article de la base de connaissances Mozilla explique comment procéder. Fondamentalement, vous devez simplement extraire une archive tar et y exécuter un firefoxfichier; toutes les dépendances sont déjà incluses, vous n'avez donc pas besoin d'installer quoi que ce soit apt.

EDIT: Non, il n'y a pas de méthode générique, du moins parce que la plupart des applications (et en particulier celles de l'interface graphique) nécessitent qu'une grande partie de ses données associées soient placées dans des emplacements bien connus comme / usr / share, et elles sont codées en dur (enfin, il peut être configuré au moment de la compilation, mais vous ne voulez pas tout recompiler comme vous l'avez dit en question). Vous pouvez donc simplement rechercher des packages binaires précompilés qui recherchent des ressources dans le répertoire de lancement et non celles du système.

whitequark
la source
j'interprète la question comme étant sur les pratiques de gestion des paquets. je soupçonne que Firefox n'est qu'un exemple, donc les méthodes spécifiques à Firefox ne sont pas trop utiles.
Quack Quichote
Merci, édité le post. Les informations sur Firefox sont toujours utiles.
whitequark
0

Je pense que la réponse est à peu près "non". Tout d'abord, la base de données des packages n'est accessible que par root, et deuxièmement, certains / plusieurs packages ont des chemins codés en dur qui rendent impossible leur déplacement. L'utilisation d'un chroot serait une réponse possible, mais vous avez également besoin de root pour cela, ou au moins de quelqu'un avec root pour vous accorder des droits limités.

Peter Eisentraut
la source
0

Je pense que vous devez faire un chroot pour pouvoir y installer vos packages.

réf: https://help.ubuntu.com/6.10/ubuntu/packagingguide/C/appendix-chroot.html https://wiki.ubuntu.com/DebootstrapChroot

rogerdpack
la source
les privilèges root sont de toute façon nécessaires pour créer un chroot, alors pourquoi ne pas simplement installer des packages à la place ? En dehors de cela, les chances que votre administrateur système vous accorde des privilèges root complets (ou même simplement liés à apt) sont beaucoup, beaucoup moins que ceux pour chroot. Ce n'est (presque) pas dangereux pour le système hôte.
whitequark