Welche Version wird mit pkg_add installiert?

mcfritt

Member
Hallo alle zusammen!

Ich habe eine Frage bzgl. der Version, die bei Anwendung von pkg_add -r installiert wird. Ich wollte die aktuelle Firefox Version einspielen und war zunächst erstaunt, dass tatsächlich Version 0.9.3 installiert wurde. Ein Blick ins Handbook verriet mir dann aber, dass bei Verwendung der RELEASE Version von FreeBSD (ich verwende 5.3) nicht zwangsläufig auch die aktuellste Software mit pkg_add -r installiert wird.

Meine Frage ist nun, wie man herausfindet, welche Version tatsächlich heruntergeladen und installiert wird und meine damit nicht ports sondern packages!

Ich habe bei einer Suche auf der ports changes Seite für FreeBSD 5.0 und die CURRENT Version jeweils Firefox 1.0 gefunden, für die von mir verwendete 5.3er RELEASE aber "nur" Firefox 0.9.3. Auch wenn ich den Sinn dahinter nicht ganz verstehe, frage ich mich nun, ob diese Versionsnummern auf den ports Seiten auch für die packages gelten???
 
Guck dir mal den Pfad an, von wo die Datei heruntergeladen wird, da gibt es nur die Packages die zum Portstree passen, der mit 5.3-RELEASE ausgeliefert wurde.

In `man pkg_add` steht drin wie du den Downloadpfad ändern kannst, ich meine es wäre PACKAGESITE gewesen.

Willkommen im Forum :)
 
Danke erstmal für die schnelle Antwort. Ja, kann mich erinnern, dass im Handbook erwähnt wird, wie man den download-Pfad ändert.

Habe noch eine kurze Frage in dieser Sache: ich habe den Portstree auf meiner Platte bereits vorher aktualisiert, so dass dort Firefox 1.0 enthalten ist. Verstehe ich das richtig, dass pkg_add -r auf dem entsprechenden Server nachschaut, was im ursprünglichen Portstree der installierten FreeBSD Version enthalten war, und dann das package mit der zugehörigen Version installiert?

OK, noch eine Frage (sorry, bin relativ neu bei FreeBSD und noch in der Einarbeitungsphase). Kann ich das bereits installierte package einfach updaten, indem ich nach Änderung des Downloadpfades noch einmal pkg_add -r laufen lasse, oder empfielt es sich, das alte package erst zu löschen?

Vielen Dank!!!
 
mcfritt schrieb:
Verstehe ich das richtig, dass pkg_add -r auf dem entsprechenden Server nachschaut, was im ursprünglichen Portstree der installierten FreeBSD Version enthalten war, und dann das package mit der zugehörigen Version installiert?
Quasi ja ;)
pkg_add bastelt einen Pfad zusammen, der zu deiner Version passt, und in diesem Pfad liegt auf den Mirrors immer nur passende Version zum Tree. Es gibt allerdings auch Pfade, wo relativ neue Pakete liegen.
Wenn du den Pfad änderst nimm bitte direkt einen deutschen Mirror wie ftp6.de.freebsd.org, weil ftp.freebsd.org schon ziemlich stark belastet ist...

OK, noch eine Frage (sorry, bin relativ neu bei FreeBSD und noch in der Einarbeitungsphase). Kann ich das bereits installierte package einfach updaten, indem ich nach Änderung des Downloadpfades noch einmal pkg_add -r laufen lasse, oder empfielt es sich, das alte package erst zu löschen?

Vielen Dank!!!
Vorher deinstallieren, dann das neue installieren. Hier empfiehlt sich portupgrade, welches natürlich auch in den ports ist...
 
mcfritt schrieb:
Habe noch eine kurze Frage in dieser Sache: ich habe den Portstree auf meiner Platte bereits vorher aktualisiert, so dass dort Firefox 1.0 enthalten ist. Verstehe ich das richtig, dass pkg_add -r auf dem entsprechenden Server nachschaut, was im ursprünglichen Portstree der installierten FreeBSD Version enthalten war, und dann das package mit der zugehörigen Version installiert?
Ja. pkg_add -r installiert immer die Version aus dem Pfad den es vorgegeben hat. Dies ist normalerweise der zugehörige für das jeweilge Release. Ist ein Release einmal draussen, werden nicht mehr oft neue Versionen hineingelegt. Mittels des Befehls pkg_add -r kann man meines Wissens vor der Installation nicht herausfinden, welche Version nun da gezogen wird. Das ist blöd, ich weiss. Die einzigen bequemen Möglichkeiten herauszufinden, was da installiert wird ist /stand/sysinstall zu nutzen oder auf freebsd.org/ports unter dem jeweiligen Release nachzuschauen, ob bei dem Port der Wahl sowas wie "Package" runterladbar ist. Dies heisst es sollte ein fertiges Binary dasein, aber halt nur zu der wahrscheinlich inzwschen alten Version.

Den Downloadpfad von Hand ändern ist eine Sache mit eventuellen Nebeneffekten. Es könnte im Extremfall sein, dass die neueren Pakete mit anderen Kompilern (denen des neuen Releases) kompiliert wurden. Somit wäre es möglich, dass das Paket dann nicht richtig funktioniert.

Kann ich das bereits installierte package einfach updaten, indem ich nach Änderung des Downloadpfades noch einmal pkg_add -r laufen lasse, oder empfielt es sich, das alte package erst zu löschen?
Wenn du von einem Binärpaket auf das neuere updaten willst ist es besser den Port / das Paket Portupgrade zu installieren. Dies ist wesentlich mächtiger als die nativ enthaltenen Paketmanagewerkzeuge. Hiermit kannst du z.B. ein Paket samt seiner Abhängigkeiten updaten, ihm sagen, versuche erst fertige Binaries zu ziehen, wenn nicht vorhanden dann kompilier selber etc. Dazu gibt es sicher viel Stoff hier im Forum.

Gruß, I.MC
 
I.MC schrieb:
Den Downloadpfad von Hand ändern ist eine Sache mit eventuellen Nebeneffekten. Es könnte im Extremfall sein, dass die neueren Pakete mit anderen Kompilern (denen des neuen Releases) kompiliert wurden. Somit wäre es möglich, dass das Paket dann nicht richtig funktioniert.

Solange man in -stable bleibt ändert sich die Binärkompatibilität nicht, d.h. es sollte kein Problem sein ein Paket für 4.10 auch unter 4.8 ans laufen zu bekommen.
 
Und wieso ist es dann nicht per default auf den Pfad von -STABLE gesetzt :-)... wie gesagt ich habe schon öfter von anderen dieselbe Problematik zu bedenken bekommen.

Gruß, I.MC
 
Verstehe ich das richtig, dass pkg_add -r auf dem entsprechenden Server nachschaut, was im ursprünglichen Portstree der installierten FreeBSD Version enthalten war, und dann das package mit der zugehörigen Version installiert?
Nein!

Wenn Du:
# pkg_add -r <Programmname>
eingibst, bestimmt pkg_add zuerst deine FreeBSD-Version und lädt dann das Package unter dem Pfad:

ftp://ftp.freebsd.org/pub/FreeBSD/ports/<Prozessorfamilie>/packages-<FreeBSD-Version>/Latest/<Programmname>.tbz

herunter. Alle Einträge im Verzeichnis Latest sind Verknüpfungen auf die Package-Version, welche bei der Erscheinung der FreeBSD-Version aktuell war. Die Packages findest Du unter:

ftp://ftp.freebsd.org/pub/FreeBSD/ports/<Prozessorfamilie>/packages-<FreeBSD-Version>/All/
 
I.MC schrieb:
Und wieso ist es dann nicht per default auf den Pfad von -STABLE gesetzt :-)... wie gesagt ich habe schon öfter von anderen dieselbe Problematik zu bedenken bekommen.

Gruß, I.MC

Weil es Probleme mit den Abhängigkeiten geben kann, u.a. :)

Für absolute Anfänger ist sowieso zu empfehlen bei den Versionen vom RELEASE zu bleiben, die sind getestet...
 
Zurück
Oben