pkg upgrade problem

JochenF

Well-Known Member
Hallo,

das pkg macht mir immer wieder Kopfschmerzen. Ich habe das Paket "unison240" installiert, und zwar aus den Ports, weil ich es ohne X11 haben wollte. Nun möchte mir "pkg upgrade" das Paket neu als Binary installieren, wegen geänderter Optionen. Das ist schon mal der erste Punkt der mich nervt. Es gibt doch keinen Grund für ein "upgrade", nur weil ich die Optionen geändert habe. Kann man ihm das irgendwie abgewöhnen?

Nun habe ich das Paket unison240 also mit "pkg lock" gesperrt, damit er mir das nicht mehr anfasst. Jetzt kriege ich beim upgrade aber ständig andere Fehlermeldungen:
Code:
unison240 has no direct installation candidates, change it to unison?

Was zum Teufel will der jetzt von mir, und wie treibe ich ihm das aus?
 
Darf ich dumm fragen: Wie machst du denn das Update?

Dass er bei geänderten Optionen updaten will ist an sich schon sinnvoll, denn du musst ja im gesamten Abhängigkeitsbaum denken.
 
Na mit "sudo pkg upgrade". Gibts noch andere Möglichkeiten?

Ein Upgrade finde ich nur dann sinnvoll wenn sich die Versionsnummer erhöht hat. Bleibt die Version gleich, soll er mir doch nicht meine geänderten Optionen kaputt machen.
 
Na mit "sudo pkg upgrade". Gibts noch andere Möglichkeiten?

Ein Upgrade finde ich nur dann sinnvoll wenn sich die Versionsnummer erhöht hat. Bleibt die Version gleich, soll er mir doch nicht meine geänderten Optionen kaputt machen.
Das wird gemacht, um stets einen konsistenten Zustand zu haben.
 
Was ist daran inkonsistent wenn ich Pakete mit anderen Optionen aus den Ports baue? Dafür hat man doch die Möglichkeit, und pkg unterstützt beide.
 
Nunja, ich nehme einfach mal an, dass die anderen Pakete einfach mit Optionen gebaut sind, die zueinander passen, aber eben nicht zwingend dir gefallen. Deshalb geht es eigentlich nicht, zweigleisig zu fahren.
Zum Beispiel nutze ich nicht gerne Pulse-Audio und habe das in meinen Optionen beim Bau aus den Ports nicht drin gehabt. Durch die Pakete kam es nun aber scheinbar doch und viele Anwendungen brauchen es nun. Pakete sind ja schon sehr viel schneller und ich frage mich, wie weit ich damit leben kann. Nun, wenn es funktioniert....
Bei den Ausnahmen nehme ich pkg lock (wie ich neulich hier lernen durfte) und verhindere damit erst mal den Neubau oder das Updaten durch Pakete.
 
Ein "Mischbetrieb" ist ja expilzit vorgesehen, deswegen kann ja das pkgng mit beiden umgehen. Das mit dem lock sehe ich nur als dirty workaround für ein Problem dass eigentlich nicht auftreten sollte. Das lock verhindert dass ein Paket überhaupt aktualisiert wird. Auf die Art verpennt man dann aber evtl. Sicherheitsupdates. Ich möchte eigentlich schon immer alle Pakete auf aktuellem Stand haben. Aber was ich mit eigenen Optionen aus den Ports gebaut habe, soll natürlich auch aus den Ports aktualisiert werden, und nicht binär. Dafür fehlt mir noch die passende Strategie, denn ein "portmaster -a" baut dann auch die binär installierten Pakete neu aus den Ports. Irgendwas fehlt da noch in dem System. Die müssten sich merken ob ein Paket binär oder aus Ports installiert wurde, und dann entsprechend updaten.
 
Pkg kann nicht "mit beiden umgehen", sondern ausschließlich mit Paketen. Leider das immer wieder übersehen. Für das System selbst gibt es nur Pakete. Diese werden per pkg installiert, verwaltet und gelöscht. Wenn du eine Software aus einem Port installierst wird der Quellcode gezogen, mit deinen Einstellungen übersetzt, ein Paket draus gemacht und per pkg installiert. Es ist da also keine Magie die Pakete und Ports parallel zueinander verwaltet und auseinanderdröselt, sondern es wird alles gleich als Paket verwaltet. Daher rühren dann aber nunmal auch deine Probleme. Ich muss dir jedoch recht geben, dass man abhängig davon welche Art von Paket es ist (denn das steht ja widerum schon darin) unterschiedliche Philosophien vorgeben könnte. Aber sein wir froh, dass wir pkg "endlich" haben und es an sich so gut funktioniert... Evtl werden solche Probleme auch noch gelöst.

Zu deinem Problem hätte ich den Vorschlag, dass du wie es ja schon tust deine Ports lockst. Deine Updates per pkg fährst und anschliessend mit pkg audit nachsiehst ob es da noch Sicherheitsprobleme in deinen Ports gibt. Diese kannst du dann Portmaster vor die Füsse werfen.
 
Zurück
Oben