RPM's aus RPM-Paketen installieren

Post Reply
Message
Author
gbl
Posts: 2
Joined: 22. Jan 2007 19:05

RPM's aus RPM-Paketen installieren

#1 Post by gbl »

Hallo.

Mein RPM-Paket ist abhängig von diversen anderen Paketen die mittels YUM installiert werden könnten.
Gibt es nun eine Möglichkeit diese nicht installierten RPM's automatisch nachzuinstallieren wenn ich mein RPM installiere?

Füge ich rpm -ivh namedespaketes im %POST Teil der .SPEC Datei ein, so erhalte ich später "TRANSACTION DB LOCKED"

mfg
Günter

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#2 Post by Janka »

Falsche Vorgehensweise. Dies wird *ausschließlich* über die Direktive "Requires:" im Kopf der Spec-Datei erreicht.

Lies dir lieber mal die RPM-Doku genau durch. http://www.rpm.org/max-rpm/ Kap. 14

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

gbl
Posts: 2
Joined: 22. Jan 2007 19:05

#3 Post by gbl »

Danke für die Antwort.

Ich weis sehr wohl daß unter REQUIRES die Abhängigkeit erzwungen wird. Eines meiner Pakete ist jedoch von 14 "bekannten" abhängig und diese sollen eben automatisch installiert werden, wenn meines mittels rpm -ivh xxxx installiert wird.
Da diese "anderen" im offiziellen YUM Repository enthalten sind, sollte dies - meiner Meinung nach - möglich sein.
Gibt es eine Alternative?

Günter

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#4 Post by Janka »

Das Auflösen der Abhängigkeiten ist nicht Sache des Paketes. Das macht ausschließlich der Distributions-Paketmanager. Bitte vergiss die Idee, über die Pre-/Postinstall-Skripte sowas wie eine eigene Abhängigkeitsverwaltung aufbauen zu wollen -- das geht spätestens beim nächsten Update eines der abhängigen Pakete schief! Vermutlich schon vorher, wenn der Benutzer das Paket wieder abwählt, woran ihn der Paketmanager nicht hindern wird, weil die Abhängigkeit nicht gelistet wird.

Wer mittels rpm/Kommandozeile installiert *will* normalerweise gar nicht, dass Abhängigkeiten automatisch aufgelöst werden. Das ist bei SuSE eine Sache von YaST/YUM/ZMD und bei Debian beispielsweise von apt (bei SuSE natürlich auch, wenn man möchte).

Setz' bittebitte keine schrottigen Pakete in die Weltgeschichte!
Wenn du irgendwas exotisches machen willst, bau' dir dein eigenes Buildsystem, aber vergewaltige nicht das Paketsystem dafür.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

Post Reply