Angenommen, es gibt eine Software, die ich nicht installieren möchte apt
, sondern manuell. (TeXLive, weil ich die apt
Version 2011 verwenden möchte und nur die Version 2009 habe.)
Angenommen, ich möchte eine andere Software installieren apt
, die jedoch von der ersten Software abhängt . (Vim LaTeXSuite, da die manuelle Installation für die systemweite Verwendung sehr schwierig ist.)
Standardmäßig wird apt
die erste Software nicht "gesehen" und es werden viele nicht benötigte und unerwünschte Dateien (z. B. TeXLive 2009) installiert, um die Abhängigkeitsmetadaten zu erfüllen.
Wie kann ich entweder:
Sagen Sie,
apt
dass ein gegebenes Paket (zBtexlive
) ist für alle praktischen Zwecke installiert ist , und dass sie nicht als Abhängigkeit von einem anderen Paket installiert werden soll?Sagen Sie
apt
, dass Sie ein bestimmtes Paket (z. B.vim-latexsuite
) installieren sollen, ohne sich um die Abhängigkeiten zu kümmern?
Ich habe durch verschiedenen gesiebte apt
-related manpages und kam leer, und fand auch diese Frage auf dieser Seite , aber das Gefühl , dass es hat ein weniger hackish Weg, dies zu tun, nicht wahr?
(Aus meiner Gentoo-Zeit erinnere ich mich an emerge --inject
und /etc/portage/package.provides
und suche im Grunde nach den apt
Äquivalenten.)
quelle
Antworten:
Sie sollten das
equivs
Paket verwenden, um Metapakete zu generieren, die diese Abhängigkeiten bereitstellen, und danndpkg
zum Installieren dieser Pakete verwenden.Das Installieren
equivs
und Lesen der Dokumentation sollte ausreichen, aber dieses Handbuch für Ubuntu ist ziemlich umfangreich und sollte auch für andere APT-Systeme gelten.Wenn Sie der Meinung sind, dass ein Paket ohne die angegebene Abhängigkeit installiert werden kann, sollten Sie einen Fehler gegen das Paket einreichen und den Fall erläutern, in dem die Abhängigkeit nicht benötigt wird.
In diesem Fall ,
texlive-base-bin
scheint nur zu sein „empfohlen“ und nicht eine „Abhängigkeit“ in der Basis Debian - Distribution mindestens (wahrscheinlich teil datexlive
solch ein enormes Paket ist), sondern weil es üblich ist , da die Upstream - TeX Live auf Debian installieren Die Distributionsversion hinkt oft stark hinterher (aus dem Grund, dass das Paket ein solches Biest ist, dass es oft nicht ohne wesentliche Arbeit verpackt werden kann, was meistens von einer oder wenigen Personen getan wird, die behaupten, sie hätten Leben neben Debian)equivs
Trick wird oft mit TeX Live verwendet (wow, dieser Satz ist außer Kontrolle geraten :-)).Ergänzung : Für detailliertere Anweisungen für diejenigen, die TeXLive außerhalb des Paketsystems installieren möchten, sind diese Anweisungen in TeX.SX umfangreicher und werden höchstwahrscheinlich weiterhin aktualisiert. Sie enthalten auch ausführlichere Anweisungen zum
equivs
Schritt.quelle
equivs
Paket testen .equivs
hat super funktioniert. Ich habe die Version 9999 von erstellttexlive-base-bin
, das ursprüngliche "Dummy" -Paket mit demselben Namen (bereitgestellt vontexlive-binaries
) überschrieben undvim-latexsuite
problemlos installiert .Sie können das
--nodeps
Flag auf dpkg verwenden, das das Paket ohne Abhängigkeiten installieren soll.Es gibt eine sehr ähnliche Frage zu Serverfault, die ebenfalls einen Blick wert ist
quelle
Das Folgende entfernt die Abhängigkeit aus einer .deb-Datei, in diesem Fall die libperl5.20-Abhängigkeit von freeradius:
Auf diese Weise können Sie das Paket installieren, ohne die Abhängigkeit zu kennen.
Wenn Sie bestimmte Versionen von Paketen manuell installieren, möchten Sie möglicherweise auch
apt-get upgrade
in Zukunft die Aktualisierung des Pakets beenden :quelle