Hallo RPM Bastler, kann man in RPM Abhängigkeiten so formulieren, daß ein Paket C von Paket A oder B abhängt, wobei gewährleistet sein muß, daß beide Pakete A und B gleichzeitig installiert werden können? Die Pakete A und B sollen sich also nicht stören. Zur Installation von C ist aber wenigstens A oder B nötig. Geht das? Danke, Torsten -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Donnerstag 29 November 2007 war zu lesen:
kann man in RPM Abhängigkeiten so formulieren, daß ein Paket C von Paket A oder B abhängt,
Wenn Paket A und B sich gegenseitig ausschließen geht das so, dass man entweder bei Paket A bei Provides B einträgt oder umgekehrt oder man trägt bei beiden D ein, wobei D kein real existierendes Paket, sondern ein virtuelles Paket ist. Das sieht dann also konkret so aus: 1. Möglichkeit Paket A: Provides: A Paket B: Provides: A Paket C: Requires: A 2. Möglichkeit Paket A: Provides: B Paket B: Provides: B Paket C: Requires: B 3. Möglichkeit: Paket A: Provides: D Paket B: Provides: D Paket C: Requires: D Gruß Markus -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, Am Don, 29 Nov 2007, Torsten Foertsch schrieb:
Hallo RPM Bastler,
Die Frage passt besser nach opensuse-programming-de...
kann man in RPM Abhängigkeiten so formulieren, daß ein Paket C von Paket A oder B abhängt, wobei gewährleistet sein muß, daß beide Pakete A und B gleichzeitig installiert werden können? Die Pakete A und B sollen sich also nicht stören. Zur Installation von C ist aber wenigstens A oder B nötig.
==== A.spec ==== Provides: meta-AB ==== B.spec ==== Provides: meta-AB ==== C.spec ==== Requires: meta-AB ==== AFAIK stört sich RPM nicht dran, wenn mehrere Pakete ein gleiches Provide enthalten. Erst ein 'Conflicts: B' (bei A) würde die parallel-Installation von A und B verbieten. Vergleiche die specs von postfix, sendmail und nem Paket welches ein "meta"-Require "smtp_daemon" enthält, z.B. mailx. Bzw. befrage dein rpm mit den Optionen: rpm -q --provides PAKET, rpm -q --whatrequires smtp_daemon, rpm -q --conflicts PAKET usw. -dnh -- BE MAD! IT HELPS! -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Donnerstag 29 November 2007 schrieb David Haller:
AFAIK stört sich RPM nicht dran, wenn mehrere Pakete ein gleiches Provide enthalten. Erst ein 'Conflicts: B' (bei A) würde die parallel-Installation von A und B verbieten.
Vergleiche die specs von postfix, sendmail und nem Paket welches ein "meta"-Require "smtp_daemon" enthält, z.B. mailx.
Irrtum: # rpm -Uhv --dump sendmail-8.14.1-53.i586.rpm error: Failed dependencies: postfix conflicts with sendmail-8.14.1-53.i586 sendmail conflicts with postfix-2.4.5-20.i586 Gruß Markus -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, Am Don, 29 Nov 2007, Markus Kohm schrieb:
Am Donnerstag 29 November 2007 schrieb David Haller:
AFAIK stört sich RPM nicht dran, wenn mehrere Pakete ein gleiches Provide enthalten. Erst ein 'Conflicts: B' (bei A) würde die parallel-Installation von A und B verbieten.
Vergleiche die specs von postfix, sendmail und nem Paket welches ein "meta"-Require "smtp_daemon" enthält, z.B. mailx.
Irrtum:
# rpm -Uhv --dump sendmail-8.14.1-53.i586.rpm error: Failed dependencies: postfix conflicts with sendmail-8.14.1-53.i586 sendmail conflicts with postfix-2.4.5-20.i586
Das widerspricht meiner Aussage genau gar nicht. Die Pakete enthalten eben ein 'Conflicts:'. $ rpm -q --conflicts postfix sendmail exim $ rpm -qp --conflicts http://download.opensuse.org/distribution/10.2/repo/oss/suse/i586/sendmail-8... smail postfix sendmail-tls postfix-tls Warum hier das 'exim' bei den Conflicts und das 'smail' bei denen von Postfix fehlt, darfst du mich aber nicht fragen :P Aber so ein "Conflicts:' muß man ja nicht selber setzen, wenn die Pakete eben auch parallel installiert werden können sollen... -dnh --
Write the code like you are going to lose your memory in six months. Most people would say I write code like I've already lost my mind. Is that the same thing? -- Randal L. Schwartz -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Donnerstag 29 November 2007 schrieb David Haller:
Das widerspricht meiner Aussage genau gar nicht. Die Pakete enthalten eben ein 'Conflicts:'.
Stimmt. Probleme gibt es tatsächlich nicht, wenn zwei Pakete dasselbe virtuelle Paket in Provides enthalten. Die gibt es nur, wenn zwei Pakete dieselbe reale Datei in Provides enthalten. Gruß Markus -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
participants (3)
-
David Haller
-
Markus Kohm
-
Torsten Foertsch