Port-Sammlung und Portmaster/Ports aktualisieren

Macke1979

FreeBSD-User
Laut FreeBSD-Handbuch gibt es zwei Methoden, um unter FreeBSD Software von Drittanbietern zu installieren: Die Installation über vorkompilierte Binärpakete mittels
Code:
pkg install paketname
sowie über den Ports-Tree. Letzterer beschreibt (wenn ich das richtig verstanden habe) die Pfade der auf diese Weise installierter Programme und beinhaltet die korrekten Makefiles, so dass man ganz unkompliziert seine Software mit
Code:
make install
compilieren (und natürlich auch mit "clean" die anfallenden temporären Files löschen) kann, wobei etwaige Abhängigkeiten automatisch aufgelöst werden. Tolle Sache. Nur eins verwirrt mich ein bisschen: Ich habe mir, da ich meinen PC auch als Fernseher und DVD-Abspielgerät nutze, über die Ports libdvdcss installiert... Um meine Ports aktuell zu halten, habe ich mir auf demselben Weg portmaster installiert, was, umso mehr ich darüber nachdenke, vielleicht gar nicht nötig gewesen wäre, da ich ja mit
Code:
portsnap fetch update
ebenfalls die auf diese Weise installierte Software aktuell zu halten vermag, aber... Wenn ich, wie im Handbuch beschrieben
Code:
portmaster -L
in die Konsole haue, um die installierten Ports anzuzeigen, wird da ein ganzer Haufen Software angezeigt, obgleich ich, mit Ausnahme von libdvdcss alles andere über die binären Pakete installiert habe. Das kommt mir etwas komisch vor, oder zeigt mir portmaster auch die Ports an, die im Verzeichnisbaum liegen, aber noch nicht installiert sind? Bin ein wenig verwirrt, allerdings kann ich nicht leugnen, dass mir bisher noch nie so eine einfache Methode begegnet ist, Software aus den Quellen zu bauen. Mit Slackware war das sehr fehleranfällig und Abhängigkeiten wurden auch nicht automatisch aufgelöst.
 
portsnap fetch extract bezieht sich rein nur auf den portstree (Die Bauanleitungen) und entpackt initial auf frischem System. Danach nur noch portsnap fetch update zur Aktualisierung des trees.
Den portstree findest du dann unter /usr/ports
Du kannst dann manuell dein make config/install starten oder du nimmst das tool portmaster dazu. Zwang ist portmaster jedenfalls nicht. :)
Es gibt auch noch andere Alternativen, sowie poudriere für den automatischen Bau.
Wenn ich mal was brauche/wissen will, bin ich faul und gucke auf https://www.freshports.org nach.

pkg info listet dir auf, was du installiert hast. Somit wird auch ersichtlich, dass am Ende des Bauens ein Paket rauskommt, das dann installiert wird. An Binärpaketen ist nichts verkehrt (erst recht nicht am Anfang), da man Probleme bekommen kann, wenn man zuviel die falschen mischt, wenn Abhängigkeiten nicht mehr passen. Das kann nervig werden, aber ist alles fixbar. Man macht nichts verkehrt, wenn man sich mal fürs Erste auf eine der beiden Variante einschießt und dabei bleibt.
 
Moin,

soweit du (weiterhin) Programme aus den Ports installierst, solltest du dir poudriere ansehen. Portmaster ist mE nicht (mehr) Mittel der Wahl. Daneben (das ist aber jetzt ein wenig OT) lege ich dir ZFS ans Herz. Du willst ZFS. ;)
 
wird da ein ganzer Haufen Software angezeigt, obgleich ich, mit Ausnahme von libdvdcss alles andere über die binären Pakete installiert habe
Das passiert auch bei pkg info.
Die Binärpakete werden auf Basis der Ports und deren Standardeinstellungen erstellt. Wenn du einen Port installierst, wird ebenso letztendlich ein Paket erzeugt und dieses dann installiert.

Rob
 
Daneben (das ist aber jetzt ein wenig OT) lege ich dir ZFS ans Herz. Du willst ZFS. ;)
Mit meiner kleinen 128 GB SSD eher nicht, da habe ich mich dann während der Installation doch lieber für UFS entschieden (wie anderswo gesagt, Rechner von 2016). Wenn ich allerdings eine Platte in Terabyte-Größe mein Eigen nennen würde, dann hätte ich mich natürlich definitiv für ZFS entschieden. ;)
Es gibt den Port bzw. Paket multimedia/libdvdcss. Hast dies als Paket oder Port installiert?
Als Paket scheint es das nicht zu geben.
Code:
pkg search libdvdcss
lieferte kein Ergebnis, laut Dokumentation ist das ein Port und den habe ich auch genommen. ;)
 
Mit meiner kleinen 128 GB SSD eher nicht, da habe ich mich dann während der Installation doch lieber für UFS entschieden (wie anderswo gesagt, Rechner von 2016). Wenn ich allerdings eine Platte in Terabyte-Größe mein Eigen nennen würde, dann hätte ich mich natürlich definitiv für ZFS entschieden. ;)
ZFS macht nicht nur bei großen Platten Sinn. Ich möchte die Features nicht mehr missen. Snapshots, Kompression, dynamische Platzverteilung, um nur einige zu nennen. Ich würde es mir noch einmal anschauen.;)
 
Bin gerade ein wenig verunsichert.
Wenn ich einen Port baue und das nicht nur für einen kurzen Test mache, nehme ich dafür normalerweise sofort einen pkg lock.
Normalerweise will ich keinen Port selbst bauen und alles als Paket genießen. Nur in bestimmten Ausnahmen nehme ich gelegentlich mal einen Port hinzu. Deshalb macht es mir auch nichts aus, Ports und Pakete zu mischen, zumal ich hier auf Latest stehe und eh nahe an den Ports segele.
Trotzdem passiert es dann natürlich leicht, dass beim nächsten pkg upgrade mein Port wieder gegen ein Paket ausgetauscht wird. Deshalb der pkg lock für diesen Port, bis ich den halt wieder entferne.
Derzeit habe ich kein pkg gelocked.
Ich bin mir auch ziemlich sicher, dass ich derzeit keinen einzigen Port gebaut habe und nur Pakete benutze.
Code:
pkg info libdvdcss
libdvdcss-1.4.2_2
Name           : libdvdcss
Version        : 1.4.2_2
Installed on   : Sat Feb 20 14:19:04 2021 CET
Origin         : multimedia/libdvdcss
Architecture   : FreeBSD:13:amd64
Prefix         : /usr/local
Categories     : multimedia
Licenses       : GPLv2
Maintainer     : jpaetzel@FreeBSD.org
WWW            : http://www.videolan.org/developers/libdvdcss.html
Comment        : Portable abstraction library for DVD decryption
Options        :
    DOCS           : on
    DOXYGEN        : off
Shared Libs provided:
    libdvdcss.so.2
Annotations    :
    FreeBSD_version: 1300139
    repo_type      : binary
    repository     : FreeBSD
Flat size      : 253KiB
ich weiß nun nicht, wie ich dieses binary wirklich deuten soll. Offenbar gibt es kein Paket. Hatte ich irgendwann mal den Port gebaut? In der Zeit mit dem Wechsel zu 13.1 hatte ich zuletzt schon mal alle Pakete reinstalliert. Wurde dabei das Paket lokal gefunden und installiert und sieht dann aus, wie binary? Aber mit repository FreeBSD?
Oder hat das nichts zu sagen, weil schließlich ja alles irgendwann als Paket installiert wird?
Oder gab es vielleicht mal ein Paket?
Code:
pkg which /usr/local/lib/libdvdcss.so.2
/usr/local/lib/libdvdcss.so.2 was installed by package libdvdcss-1.4.2_2
sieht beinahe danach aus, oder?
 
Oder gab es vielleicht mal ein Paket?
ich weiß nicht, warum man das immer wieder schreiben muss: ein gebauter Port ist auch nur ein Paket! Du kannst also aus der Ausgabe von pkg which ... (was installed by package ...) nicht darauf schließen, dass die Datei nicht aus einem Port kommt.

Eher aus der Angabe repo_type/repository. Hier sollte man aber das Augenmerk auf das Installationsdatum legen (Sat Feb 20 14:19:04 2021 CET), eventuell war es damals noch als Binärpaket verfügbar.

Rob
 
Eher aus der Angabe repo_type/repository. Hier sollte man aber das Augenmerk auf das Installationsdatum legen (Sat Feb 20 14:19:04 2021 CET), eventuell war es damals noch als Binärpaket verfügbar.
deshalb habe ich ja auch gefragt.
Weiß das jemand?
Die Lizenz dürfte sich seither nicht geändert haben?
Die Version in den Ports ist derzeit libdvdcss-1.4.3, aber offenbar funktionieren alle Abhängigkeiten auch noch mit meinem älteren Paket.
Und ich meine, das ist ja nun keine "echte SW, die wirklich kaputt sein könnte". Deshalb verstehe ich gerade nicht, weshalb es das nicht als Paket gibt, bin aber eben nicht zu 100% sicher, ob ich das früher tatsächlich als Paket eingespielt hatte.
 
ZFS macht nicht nur bei großen Platten Sinn. Ich möchte die Features nicht mehr missen. Snapshots, Kompression, dynamische Platzverteilung, um nur einige zu nennen. Ich würde es mir noch einmal anschauen.;)
Aber die Rollbacks von freebsd-update sind, sofern ich mich nicht irre, auch mit UFS möglich, oder?
 
Vielleicht möchte man ja auch bei anderen Gelegenheiten als freebsd-update die Möglichkeit eines Rollback/Snapshots haben..
 
Zurück
Oben