Gibt es eine einfache Möglichkeit, Pakete mit einem großen Abhängigkeitsbaum zu installieren, vorausgesetzt, Sie haben keinen Superuser-Zugriff? Angenommen, ich wollte Firefox installieren. Firefox hat eine Menge Abhängigkeiten, von denen jede ihre eigenen Abhängigkeiten usw. hat. Die Installation dieser Abhängigkeiten auf die Weise "./configure; make; make install" würde ewig dauern.
Gibt es eine Option, die ich apt-get geben kann, damit es in einem persönlichen Verzeichnis installiert wird? Oder gibt es eine Möglichkeit, es zu hacken, um all das schwere Heben für mich zu erledigen?
Antworten:
Sie können einzelne .deb-Dateien in Ihrem Home-Verzeichnis installieren mit:
Dies berücksichtigt jedoch nicht die Abhängigkeiten wie aptitude oder apt-get.
quelle
Schauen Sie sich NixOs ( LWN ) an. Pakete sind isoliert (manchmal muss die Distribution sie patchen) und können mehrmals, in verschiedenen Versionen oder von verschiedenen Benutzern installiert werden.
jhbuild kann einen großen cmmi-Prozess automatisieren. Aber jemand muss ein Modulset (ein Abhängigkeitsdiagramm) schreiben.
Wenn Sie mit dem manuellen Konfigurieren / Ausführen aller Installationsvorgänge beginnen, können Sie mit stow die Installation in Ihrem Haus vereinfachen. Stow ist hilfreich, um Dinge in mehreren Präfixen zu installieren, aber nur ein Präfix für die Abhängigkeitsauflösung zu verwenden.
dpkg kann gezwungen werden, in einem anderen Präfix mit instdir / admindir / root zu installieren, dies ist jedoch nur für Chroot-Umgebungen nützlich.
quelle
Kompilieren Sie Firefox nicht aus dem Quellcode, sondern installieren Sie einfach ein Binärpaket in Ihrem Home-Verzeichnis.
In diesem Mozilla KnowledgeBase-Artikel wird die Vorgehensweise erläutert. Grundsätzlich müssen Sie nur einen Tarball extrahieren und eine
firefox
Datei darin ausführen . Alle Abhängigkeiten sind bereits enthalten, sodass Sie nichts mit installieren müssenapt
.BEARBEITEN: Nein, es gibt keine generische Methode, zumindest weil die meisten Anwendungen (und insbesondere GUI-Anwendungen) erfordern, dass ein Großteil der zugehörigen Daten an bekannten Orten wie / usr / share abgelegt wird und darin fest codiert ist ( na ja , Es kann zur Kompilierungszeit konfiguriert werden, aber Sie möchten nicht alles neu kompilieren, wie Sie es in Frage gestellt haben. Sie können also nur nach vorkompilierten Binärpaketen suchen, die im Startverzeichnis nach Ressourcen suchen und nicht nach Systempaketen.
quelle
Ich denke, die Antwort ist so ziemlich "nein". Erstens ist die Paketdatenbank nur über root zugänglich, und zweitens haben einige / viele Pakete fest codierte Pfade, die es unmöglich machen, sie zu verschieben. Die Verwendung einer Chroot wäre eine mögliche Antwort, aber Sie benötigen auch root dafür oder zumindest jemanden mit root, um Ihnen eingeschränkte Rechte zu gewähren.
quelle
Ich glaube, Sie müssen eine Chroot machen, dann können Sie Ihre Pakete dort installieren.
Ref: https://help.ubuntu.com/6.10/ubuntu/packagingguide/C/appendix-chroot.html https://wiki.ubuntu.com/DebootstrapChroot
quelle