Molta gente non usa un sistema operativo, ma usa applicazioni. È quindi fondamentale che un sistema operativo ben fatto consenta all'utente di installare, rimuovere, aggiornare, configurare facilmente i programmi che preferisce. FreeBSD ha un sistema di gestione pacchetti molto efficiente, denominato ports. Il sistema dei ports è costituito da un albero di directory che comincia in /usr/ports contententi Makefile: il software è suddiviso in diverse categorie a seconda della tipologia: audio, editors, net, security, x11, www...
Installare un port è molto semplice: innanzi tutti è necessario individuare in quale directory si trovi il port. Per fare questo spostiamoci in /usr/ports/ ed eseguiamo la ricerca nel seguente modo:
# make search name=wmnd Port: wmnd-0.4.7 Path: /usr/ports/net/wmnd Info: Improved network monitoring dock app (with tons of features) Maint: flag@gufi.org Index: net B-deps: XFree86-libraries-4.3.0_6 expat-1.95.6_1 fontconfig-2.2.90_3 freetype2-2.1.5_1 gettext-0.12.1 gmake-3.80_1 imake-4.3.0_1 libiconv-1.9.1_3 perl-5.6.1_15 pkgconfig-0.15.0 R-deps: XFree86-libraries-4.3.0_6 expat-1.95.6_1 fontconfig-2.2.90_3 freetype2-2.1.5_1 imake-4.3.0_1 perl-5.6.1_15 pkgconfig-0.15.0Questo comando esegue la ricerca di wmnd tra i nomi di tutti i ports, e se trova risultati, li mostra indicandone:
Entriamo quindi nella directory del port indicata dal campo Path: ed esaminiamo il suo contenuto:
# cd /usr/ports/net/wmnd # ls Makefile README.html distinfo pkg-descr pkg-message pkg-plistMakefile contiene le istruzioni per la compilazione e l'installazione del port. README.html e pkg-descr contengono una descrizione del port in una decina di righe. pkg-message è un messaggio per l'utente che viene visualizzato una volta completata l'installazione. L'impronta md5 del pacchetto sorgente è contenuta nel file distinfo.
L'installazione avviene con un semplice comando:
# make install clean distcleanOra saranno scaricati i sorgenti del programma, che verranno patchati se necessario, compilati ed installati. Quindi verrà rimossa la directory di lavoro ./work e il pacchetto dei sorgenti che era posto in /usr/ports/distfiles/.
È molto importante che tutte le applicazioni vengano installate attraverso i ports, perché solo così si potrà garantire un perfetto funzionamento delle applicazioni stesse.
I packages non sono altro che ports già compilati dal cluster di FreeBSD.org. Sono utili in caso si voglia risparmiare il tempo di compilazione, quindi specialmente per le macchine più lente e/o i pacchetti più grossi (OpenOffice, KDE, Gnome). Per installare un package si agisce in questo modo:
# pkg_add -r wmndIl pacchetto precompilato verrà scaricato ed installato. Se si ha già il pacchetto disponibile sul proprio computer è sufficiente
# pkg_add pacchetto