Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
FREEBSD-BASE(7)		Miscellaneous Information Manual       FREEBSD-BASE(7)

NAME
       freebsd-base -- base system packages

DESCRIPTION
       The  FreeBSD  base system may be	installed as a set of pkg(8) packages,
       which supersedes	the traditional	 method	 of  installing	 using	tar(1)
       archives.

       All  base packages have names beginning with the	string "FreeBSD-", and
       have an origin beginning	with "base/".  In the default system  configu-
       ration,	 the   repository   containing	 these	 packages   is	called
       "FreeBSD-base", but any name may	be used.  The repository name  can  be
       used  with  pkg(8)  to  restrict	 package operations to the base	system
       packages.

       Packages	for all	supported FreeBSD releases as well as active  "STABLE"
       and    "CURRENT"	   branches    are   hosted   on   the	 Internet   at
       https://pkg.freebsd.org.	 These packages	are updated when new errata or
       security	updates	are released  (for  supported  release	versions),  or
       twice daily for development branches.

       Alternatively,  packages	 may  be built from the	system source tree ac-
       cording to the instructions in build(7),	allowing the system to be  up-
       dated from source code using packages.

PACKAGE	ORGANISATION
       To  allow  customisation	of the installed system, each package is split
       into several subpackages	which  contain	different  components  of  the
       package.	 For the package FreeBSD-foo, the following subpackages	may be
       available:

       Package name	      Description
       FreeBSD-foo	      Base  files  for the package (typically executa-
			      bles)
       FreeBSD-foo-lib	      Native runtime libraries
       FreeBSD-foo-lib32      32-bit compatibility runtime libraries
       FreeBSD-foo-dev	      Development files	(headers and static libraries)
       FreeBSD-foo-dev-lib32  32-bit development files
       FreeBSD-foo-dbg	      Debugging	symbols
       FreeBSD-foo-man	      Manual pages.  Manual pages  are	only  packaged
			      separately  if  the WITH_MANSPLITPKG src.conf(5)
			      option was enabled  when	building  the  system,
			      which is not the default.

       The  exact  set	of  available  subpackages differs for each individual
       package.	 For example, some packages may	not  provide  any  development
       files, in which case the	-dev subpackage	is not present.

PACKAGE	SETS
       Package	sets  are  meta-packages  which	do not contain any files them-
       selves, but depend on a selection of other  packages,  such  that  each
       package	set  allows the	complete set of	packages for a supported work-
       load to be installed.

       Package sets are	provided as packages  named  FreeBSD-set-<name>.   The
       following package sets are available in the base	system:

       minimal	     The minimal set of	packages required to bring up a	multi-
		     user  FreeBSD  system.   This  includes  the core system,
		     along with	packages required for hardware	support	 (such
		     as	devmatch(8) and	downloadable firmware),	and basic net-
		     working,  including  DHCP	and IEEE Std 802.11tm wireless
		     networks.

       minimal-jail  The equivalent  of	 minimal  for  systems	running	 in  a
		     jail(8)  environment.  This set excludes hardware support
		     not typically required for	jails.

       devel	     Development tools,	including C/C++	 compilers,  the  link
		     loader,  and  other  tools	such as	ar(1) and nm(1).  This
		     set also includes native development files	 (headers  and
		     static libraries) for all packages.

       optional	     Optional  software	 which is not part of either the devel
		     or	minimal	sets.

       optional-jail
		     The equivalent of	optional  for  systems	running	 in  a
		     jail(8)  environment.  This set excludes system function-
		     ality which typically does	not work or is not useful in a
		     jail.

       lib32	     32-compatibility libraries, for running  32-bit  applica-
		     tions  on	a  64-bit host system.	This set includes both
		     runtime libraries and development files.

       base	     The complete base system,	excluding  tests,  the	system
		     source  code, and debugging symbols.  Installing the base
		     set  is  equivalent  to  installing  minimal,  devel  and
		     optional.

       base-jail     The  equivalent  of base for systems running in a jail(8)
		     environment.   This  set  excludes	 system	 functionality
		     which typically does not work or is not useful in a jail.
		     Installing	 the base-jail set is equivalent to installing
		     minimal-jail, devel and optional-jail.

       src	     The system	source tree for	the userland and  kernel,  in-
		     stalled in	/usr/src.

       tests	     The system	test suite, installed in /usr/tests.

       kernels	     All available system kernels.

EXAMPLES
       Install the vi(1) text editor on	the running system:

	     pkg install FreeBSD-vi

       Install a new jail(8) system using the minimal-jail package set:

	     pkg -r /jails/myjail install FreeBSD-set-minimal-jail

       Install C/C++ compilers on the running system:

	     pkg install FreeBSD-set-devel

       Apply available updates to the running system:

	     pkg upgrade -r FreeBSD-base

       Install	the development	toolchain for FreeBSD/powerpc64le in an	alter-
       nate root (for example, to support cross-compiling software for a  dif-
       ferent target than the host system):

	     pkg -r /ppcdev -oABI=FreeBSD:16:powerpc64le \
		 install FreeBSD-set-devel

SEE ALSO
       build(7), pkg(8), src.conf(5)

HISTORY
       Support	for  installing	 the base system as packages was introduced in
       FreeBSD 15.0.  Earlier releases supported a subset of this  functional-
       ity.

FreeBSD	16.0 CURRENT	       December	4, 2025		       FREEBSD-BASE(7)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=freebsd-base&manpath=FreeBSD+16.0-CURRENT>

home | help