Pkgsrc er paakesystemet som brukes av NetBSD, men det er blitt portet til flere andre OS, blant annet Linux, FreeBSD og Solaris. Det støtter både binærpakker og kildekodepakker. Kildekodepakkene inneholder informasjon om hvor kildekoden skal lastes ned fra og informasjon om hvordan pakken skal bygges og diverse annen info om pakken. Selve kildenkoden lastes ned som første fase i byggeprosessen. En av de store fordelene er at pakker en pakke er avhengig av bygges disse automatisk først (rekursivt). Det vil man se mye av når man har få pakker. Pakke A kan ha angitt at den er avhengig av B og B kan ha satt opp avhengighet av C. Da bygges først C, så B og til slutt A. Det er veldig mye tid å spare på å bruke et pakkesystem som pkgsrc fremfor å laste ned og installere mer eller mindre manuelt:
Andre pakkesystemer vi bruker
csw:
Støtter kun binærpakker (Solaris-format). Begrenset utvalg pakker og det tar ofte lang tid før nye versjoner kommer. Vi kan ikke gjøre endringer på pakkene siden det er binærpakker.sfw
(SunFreeWare)
Dette er ikke et eget pakkesystem, men en del av Solaris-installasjon og inneholder i hovedak pakker komplert fra åpen kildekode. Vi har per i dag ikke noe opplegg for å holde disse pakken oppdatert. Uten vedlikeholdsavtale får vi bare et utvalg patcher for Solaris.STORE:
Det er egentlig ikke noe pakkesystem og det er like mye jobb (ofte mer siden det må tilpaasses STORE-omgivelse) som å installere en programpakke utenfor store (f.eks under /usr/local). Det ligger mye gammelt i STORE, noe av det har ikke vært oppdatert på 10 år. I praksis har det vist seg svært vanskelig å vedlike holde så mye programvare på en så manuell måte. I tillegg har STORE eierskap på pakker og de som en gang var eiere har gjerne sluttet.
Som om ikke dette var nok har vi noe programvare installert under /local/bin selv om det mest er script.
Vi kommer gradvis til å erstatte pakker fra andre pakkesystemer med pkgsrc-pakker. Det er uheldig at samme program ligger mange steder.
Installasjon av PKGSRC
Punkter for innstallering og bruk av pkgsrc på Solaris.
Forhåndskrav på Solaris
Ifølge http://www.asyd.net/home/docs/solaris/pkgsrc så bør følgende pakker være innstallert på Solaris:
- SUNWgccruntime
- SUNWgcc
- SUNWhea
- SUNWgzip
- SUNWbinutils
- SUNWsprot
- SUNWarc
- SUNWbtool
- SUNWtoo
- SUNWscpr
- SUNWscpu
- SUNWxcu4
- SUNWlibmr
- SUNWlibm
- SUNWxwinc
Sun Studio 11 (SUNWsprot og SUNWsprox) og GCC For SPARC(tm) Systems (SUNW0gccfss og SUNW0scgfss) kan sikkert være greit.
Bootstrap
Denne oppskrifta er foreløpig utestet. Har tidliegere innstallert bra binaries.
Bruke cvs fra /store
# Example /usr/pkg/etc/mk.conf file produced by bootstrap-pkgsrc # Wed Dec 8 23:10:08 EST 2004 .ifdef BSD_PKG_MK # begin pkgsrc settings PKG_DBDIR=/var/db/pkg LOCALBASE=/usr/pkg FETCH_CMD=/usr/pkg/bin/ftp PAX=/usr/pkg/bin/pax SED=/usr/pkg/bin/nbsed PKGSRC_COMPILER=gcc CC=gcc ACCEPTABLE_LICENSES+=opera-850-license .endif # end pkgsrc settings
Kunne kanskje ha satt LOCALBASE=/opt/pkg, men det skaper problemer for binærpakker.
export CVSROOT=anoncvs@anoncvs.NetBSD.org:/cvsroot export CVS_RSH=ssh cd /usr cvs checkout -P pkgsrc