Hallo, kann man bei einem RPM vorher prüfen, ob ALLE Requirements erfüllt werden können? Zypper zeigt ja immer nur eins an. Hat man das erfüllt, kriegt man beim nächsten Installationsversuch das nächste vorgesetzt. Ist etwas nervig, wenns da um 30 oder 40 Abhängigkeiten geht, die zypper nicht selbst auflösen kann. ds -- Daniel Spannbauer Systemadministration marco Systemanalyse und Entwicklung GmbH Tel +49 8333 9233-27 Fax -11 Rechbergstr. 4-6, D 87727 Babenhausen Mobil +49 171 4033220 http://www.marco.de/ Email ds@marco.de Geschäftsführer Martin Reuter HRB 171775 Amtsgericht München -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Hallo Daniel, hallo zusammen, Am Donnerstag, 30. Januar 2020, 09:34:21 CET schrieb Daniel Spannbauer:
kann man bei einem RPM vorher prüfen, ob ALLE Requirements erfüllt werden können?
Zypper zeigt ja immer nur eins an. Hat man das erfüllt, kriegt man beim nächsten Installationsversuch das nächste vorgesetzt.
Ist etwas nervig, wenns da um 30 oder 40 Abhängigkeiten geht, die zypper nicht selbst auflösen kann.
Klingt, als ob Du vom Auflösen von Konflikten sprichst. Es gibt ein paar Optionen für "zypper in", die Dir helfen können. In steigender Aggressivität: --solver-focus Installed --solver-focus Update (Default ist "Job". Was die Unterschiede sind, wird in man zypper im Abschnitt "Package Dependencies" erklärt.) --force-resolution Damit wird eine Lösung erzwungen, notfallls auch durchs Löschen von Paketen. ACHTUNG: Diese Optionen, insbesondere die letzte, könnte man auch als Holzhammer beschreiben - trifft immer, manchmal aber auch den Daumen ;-) Daher würde ich empfehlen, die von zypper vorgeschlagenen Änderungen _sehr_ genau zu kontrollieren, bevor Du zypper loslegen lässt. Evtl. macht auch --dry-run Sinn - das reduziert das Risiko, dass Du versehentlich Return drückst. Gruß Christian Boltz -- Such mal im Archiv dieser Liste nach 'reiserfs', oder genauer, nach 'rasierfs' und 'reisswolffs'. Reiserfs reagiert auf Fehler (diverser Art) wie ne Diva... [David Haller in suse-linux] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Am 1/30/20 um 10:59 PM schrieb Christian Boltz:
Hallo Daniel, hallo zusammen,
Am Donnerstag, 30. Januar 2020, 09:34:21 CET schrieb Daniel Spannbauer:
kann man bei einem RPM vorher prüfen, ob ALLE Requirements erfüllt werden können?
Zypper zeigt ja immer nur eins an. Hat man das erfüllt, kriegt man beim nächsten Installationsversuch das nächste vorgesetzt.
Ist etwas nervig, wenns da um 30 oder 40 Abhängigkeiten geht, die zypper nicht selbst auflösen kann. Klingt, als ob Du vom Auflösen von Konflikten sprichst.
Es gibt ein paar Optionen für "zypper in", die Dir helfen können. In steigender Aggressivität:
--solver-focus Installed --solver-focus Update
(Default ist "Job". Was die Unterschiede sind, wird in man zypper im Abschnitt "Package Dependencies" erklärt.)
--force-resolution
Damit wird eine Lösung erzwungen, notfallls auch durchs Löschen von Paketen.
ACHTUNG: Diese Optionen, insbesondere die letzte, könnte man auch als Holzhammer beschreiben - trifft immer, manchmal aber auch den Daumen ;-) Daher würde ich empfehlen, die von zypper vorgeschlagenen Änderungen _sehr_ genau zu kontrollieren, bevor Du zypper loslegen lässt. Evtl. macht auch --dry-run Sinn - das reduziert das Risiko, dass Du versehentlich Return drückst.
Geht schon in die richtige Richtung. Mal etwas genauer erklärt... Wir haben uns für 42.3 ein patterns-RPM gemacht. Jetzt wollen wir das für 15.2 anpassen, aber die Paketnahmen haben sich geändert. Ich bekomme jetzt natürlich bei jedem Installationsversuch eine FEhlermeldung,d as PAket xyz nicht gefunden werden kann. Das bessere ich im pattern aus, bau es neu, versuche die Installation erneut. Jetzt wird gemeldet, das ABC nicht existiert. Also wieder ausbessern, erneuter versuch, jetzt fehlt Paket DEF. Ich will "einfach", dass zypper mir sagt "Es konnten xyz, abc, def, ...... nicht gefunden werden, bla kollidiert mit hurz" Alle PRobleme sollten auf einmal ausgegeben werden, das wäre eine große hilfe. Bei 40 Paketen im PAttern wirds onst schnell hässlich.... Auflösen muss zypper hier erstmal gar nichts, er soll nur alle Probleme auf einmal melden. Gruß Daniel -- Daniel Spannbauer Systemadministration marco Systemanalyse und Entwicklung GmbH Tel +49 8333 9233-27 Fax -11 Rechbergstr. 4-6, D 87727 Babenhausen Mobil +49 171 4033220 http://www.marco.de/ Email ds@marco.de Geschäftsführer Martin Reuter HRB 171775 Amtsgericht München -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Hallo Daniel, hallo zusammen, Am Freitag, 31. Januar 2020, 08:51:27 CET schrieb Daniel Spannbauer: [...]
Geht schon in die richtige Richtung.
:-)
Mal etwas genauer erklärt...
Wir haben uns für 42.3 ein patterns-RPM gemacht.
Jetzt wollen wir das für 15.2 anpassen, aber die Paketnahmen haben sich geändert.
Theoretisch ;-) sollten bei umbenannten Paketen die alten Namen noch via "Obsoletes:" und "Provides:" dabei sein - aber wenn ein Paket rausfliegt oder durch ein völlig anderes ersetzt wird, gibt es das natürlich nicht.
Ich bekomme jetzt natürlich bei jedem Installationsversuch eine FEhlermeldung,d as PAket xyz nicht gefunden werden kann.
Das bessere ich im pattern aus, bau es neu, versuche die Installation erneut. Jetzt wird gemeldet, das ABC nicht existiert.
Also wieder ausbessern, erneuter versuch, jetzt fehlt Paket DEF.
Ich will "einfach", dass zypper mir sagt "Es konnten xyz, abc, def, ...... nicht gefunden werden, bla kollidiert mit hurz"
Alle PRobleme sollten auf einmal ausgegeben werden, das wäre eine große hilfe. Bei 40 Paketen im PAttern wirds onst schnell hässlich....
Ich bin mir nicht sicher, ob/wie zypper sowas kann. Ich "missbrauche" dafür gern den Buildservice - bau ein kleines Hilfspaket namens "meinpattern-QA" mit "BuildRequires: meinpattern" [1]. Dann siehst Du im Webinterface beim Buildstatus "unresolvable", und wenn Du mit der Maus drübergehst oder draufklickst, bekommst Du eine ausführliche Liste der Abhängigkeitsprobleme. Eine weitere Option wäre, In Deinem pattern.spec alle Requires: zu Recommends: zu ändern. Dann ist es garantiert installierbar, weil die nicht mehr vorhandenen Pakete ignoriert werden. Anhand der Installationszusammenfassung oder mit rpm -q $paketliste kannst Du dann überprüfen, welche der gewünschten Pakete tatsächlich installiert wurden und welche es nicht mehr gibt. Gruß Christian Boltz [1] siehe z. B. https://build.opensuse.org/package/show/home:cboltz/postfixadmin-QA -- Ist mein Briefkasten und wenn du an meinem Listenhund vorbei willst um was einzuwerfen musst du schon Wurst mitbringen :-) [Uwe Drießen in postfixbuch-users] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Am 30.01.20 um 09:34 schrieb Daniel Spannbauer: (...)
kann man bei einem RPM vorher prüfen, ob ALLE Requirements erfüllt werden können?
Zypper zeigt ja immer nur eins an. Hat man das erfüllt, kriegt man beim nächsten Installationsversuch das nächste vorgesetzt.
Ist etwas nervig, wenns da um 30 oder 40 Abhängigkeiten geht, die zypper nicht selbst auflösen kann.
Ist der Installationsversuch mittels # rpm -Uhv <RPM-File> evtl. ein Weg? Bernd -- Es sprach der Fürst zum Herrn Kaplan: "Halt' Du sie dumm, ich halt sie arm!" -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
participants (3)
-
Bernd Nachtigall
-
Christian Boltz
-
Daniel Spannbauer