Template:Short descriptionTemplate:Primary sources Template:Lowercase title {{#invoke:Infobox|infobox}}Template:Template other{{#invoke:Check for unknown parameters | check | showblankpositional=1 | unknown = Template:Main other | preview = Page using Template:Infobox software with unknown parameter "_VALUE_"|ignoreblank=y | AsOf | author | background | bodystyle | caption | collapsetext | collapsible | developer | discontinued | engine | engines | genre | included with | language | language count | language footnote | latest preview date | latest preview version | latest release date | latest release version | latest_preview_date | latest_preview_version | latest_release_date | latest_release_version | licence | license | logo | logo alt | logo caption | logo upright | logo size | logo title | logo_alt | logo_caption | logo_upright | logo_size | logo_title | middleware | module | name | operating system | operating_system | other_names | platform | programming language | programming_language | released | replaced_by | replaces | repo | screenshot | screenshot alt | screenshot upright | screenshot size | screenshot title | screenshot_alt | screenshot_upright | screenshot_size | screenshot_title | service_name | size | standard | title | ver layout | website | qid }}Template:Main other pkgsrc (package source) is a package management system for Unix-like operating systems. It was forked from the FreeBSD ports collection in 1997 as the primary package management system for NetBSD. Since then it has evolved independently; in 1999, support for Solaris was added, followed by support for other operating systems.Template:R

pkgsrc currently contains over 22,000 packages and includes most popular open-source software. It is the native package manager on NetBSD, SmartOS and MINIX 3, and is portable across 23 different operating systems, including AIX, various BSD derivatives, HP-UX, IRIX, Linux,<ref name=pkgsrc-linux>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref> macOS,<ref name=pkgsrc-osx>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref> Solaris, and QNX.<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref>

There are multiple ways to install programs using pkgsrc. The pkgsrc bootstrap contains a traditional ports collection that utilizes a series of makefiles to compile software from source. Another method is to install pre-built binary packages via the Template:Mono and Template:Mono tools. A high-level utility named Template:Mono also exists, and is designed to automate the installation, removal, and update of binary packages in a manner similar to Debian's Advanced Packaging Tool.<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref>

Several vendors, including MNX.io, provide binary packages for popular operating systems, including macOS and Linux.Template:R

Supported platformsEdit

Platform Date added
NetBSD October 1997
Solaris March 1999
Linux June 1999
Darwin and macOS October 2001
FreeBSD November 2002
OpenBSD November 2002
IRIX December 2002
BSD/OS December 2003
AIX December 2003
Interix (for Windows NT) March 2004
DragonFly BSD October 2004
OSF/1 November 2004
HP-UX April 2007
QNX October 2007
Haiku January 2010
MINIX 3 August 2010
MirBSD January 2011
illumos and SmartOS February 2011
Cygwin May 2013
GNU/kFreeBSD July 2013
Bitrig June 2015

HistoryEdit

On October 3, 1997, NetBSD developers Alistair Crooks and Hubert Feyrer created pkgsrc<ref name="10yrs-pt1"/> based on the FreeBSD ports system and intended to support the NetBSD packages collection. It was officially released as part of NetBSD 1.3<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref> on January 4, 1998. DragonFly BSD used pkgsrc as its official package system from version 1.4 in 2006, to 3.4 in 2013.<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref>Template:R

On 2017-09-12, a commit message policy that accommodates DVCS was established by the project.Template:R

PackagesEdit

The NetBSD Foundation provides official, pre-built binary packages for multiple combinations of NetBSD and pkgsrc releases, and occasionally for certain other operating systems as well.<ref name=tnf-packages>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref>

As of 2018, several vendors provide pre-built binary packages for several platforms:

|CitationClass=web }}</ref> Packages are provided on a rolling release basis from the trunk (HEAD, in CVS terminology) of pkgsrc, with updates every few days;<ref name=pkgsrc-osx/> additionally, quarterly stable releases of pkgsrc for Joyent's own SmartOS are also provided (dating back to 2012Q4).<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref>

|CitationClass=web }}</ref><ref name=uwm2>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref> Packages are only built from the quarterly releases of pkgsrc, aiding use in long-term experiments, where stability and reproducibility of the findings is of the essence.<ref name=msg025383>Template:Cite mailing list</ref>

ReferencesEdit

Template:Reflist

External linksEdit

Template:Portal

Template:NetBSD Template:Package management systems