Port (Paketmanagement)
aus Wikipedia, der freien Enzyklopädie
Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf bitte mit ihn zu verbessern und entferne anschließend diese Markierung. |
Mit Ports werden Software-Paketmanagementsysteme in der Welt der Unix-Derivate, speziell der BSD-Betriebssysteme bezeichnet.
Ein Port bezeichnet ein Verzeichnis mit einem Makefile, in dem sich alle für die Installation benötigten Dateien befinden ("Kochrezept").
Inhaltsverzeichnis |
[Bearbeiten] Geschichte und Verbreitung
Das allererste Portsframework wurde von Jordan K. Hubbard 1994 für FreeBSD entwickelt. Später wurde die Idee von OpenBSD, NetBSD (unter dem Namen pkgsrc) und Darwin übernommen. Auch Gentoo hat ein ports-ähnliches Paketmanagement-System namens Portage.
[Bearbeiten] Technische Funktionsweise
Beim Installieren über das Portssystem wird die Software (wenn möglich) automatisch aus dem Internet heruntergeladen und installiert. Das Portssystem besteht lediglich aus Informationen, woher man die Software bekommt, welche Änderungen für BSD notwendig sind und wie die Software zu installieren ist. Außerdem werden alle Dateien, die ein Softwarepaket installiert, aufgezeichnet, so dass das Paket auch wieder deinstalliert werden kann. Ein Paket kann durchaus von mehreren Paketen abhängen, die allesamt nach dem Herunterladen kompiliert, evtl. konfiguriert und dann installiert werden. Dies geschieht nahezu automatisch, evtl. mit benötigten Zusatzangaben des Nutzers.
Ports sind Makefiles mit targets für das automatische herunterladen, auspacken, patchen, kompilieren und installieren von Softwarepaketen. Ein weiteres target dient zum Erzeugen eines Binärpakets.
[Bearbeiten] FreeBSD ports
Unter FreeBSD befindet sich per default unter /usr/ports der sogenannte Portstree. Der Portstree besteht aus Verzeichnissen in denen sich Ports einer bestimmten Kategorie befinden. Unter /usr/ports/Mk liegen verschiedene Makefiles, die von den einzelnen Ports inkludiert werden. bsd.port.mk
ist das Hauptmakefile, es enthält die vordefinierten targets, so dass die Portmakefiles meist nur einzelne Variablen setzen müssen. Informationen über installierte Ports findet man per default unter /var/db/pkg.
[Bearbeiten] Weblinks
- [1] Kapitel über Ports im deutschen FreeBSD Handbuch
- [2] Dan Langille's Webfrontend zum FreeBSD-Ports-Tree
- [3] Das englische "Porter's Handbook" beschreibt, wie man einen Port erzeugt.
- [4] Suchmaske für die Datenbank der FreeBSD-Ports
[Bearbeiten] OpenBSD ports
[Bearbeiten] NetBSD pkgsrc
NetBSD verwendet den Begriff "Port" für die Portierung von NetBSD auf eine Hardwareplattform, weshalb NetBSD seinen Fork der FreeBSD ports "pkgsrc" genannt hat.
NetBSDs pkgsrc wurde mittlerweile auch auf verschiedene andere Betriebssysteme portiert, unter anderem Linux, Solaris und Mac OS X.
Siehe: pkgsrc
[Bearbeiten] MacPorts
Die MacPorts für Mac OS X (ehemals DarwinPorts) verwenden statt des Programms make ein Tcl-Programm namens "port".
[Bearbeiten] Gentoo Linux Ebuilds
Siehe: Ebuilds