Ports tree

From FreeBSDwiki
Jump to: navigation, search

The ports tree is commonly located in "/usr/ports/". It is composed of a two level directory structure containg a few files. Each application has it own directory, for example, vim is located in "/editors/vim" from the root of the port directory, so commonly, "/usr/ports/editors/vim" from the root of the system.

Each directory contains a few files:

  • Makefile: Used for compiling ports.
  • distinfo: Contains informations on the files needed to install (To check their integrity).
  • pkg-descr: This file describes what the port is.
  • pkg-plist: This file lists the binaries installed by the port.
  • An optional files folder: Patches the port will apply to the standard source code before compilation; may be either to add features or reconfigure the port to install itself in BSD-centric directory format.


You have nothing to do while installing: dependencies are automaticaly installed. But this is *NOT* done while uninstalling (uninstalling a port will not deinstall the other that need it), so you shall not deinstall port directly in the port tree. Instead, use pkg_deinstall.

Looking for ports

You can browse the port tree randomly to find many interesting ports, but you can also search ports using keywords :

# cd /usr/ports ; make search key=MyKeyword

It you want to search a port by name, use this :

# cd /usr/ports ; make search name=PortName

Another way is to install and use the package or port psearch. Then the following will search for a program and optionally the options -c can be used to filter a category, or -l can be used for a long description:

psearch xorg -l -c x11

See also Ports,_Installing, Ports_Tree,_Updating.

Personal tools