Difference between revisions of "Ports"
(→Introduction) |
|||
Line 3: | Line 3: | ||
== Introduction == | == Introduction == | ||
− | '''GhostBSD''' ports are based on FreeBSD/TrueOS ports with additional applications. | + | '''GhostBSD''' ports are based on FreeBSD/TrueOS ports with additional applications. |
− | + | ||
{|class="wikitable" style="width:96.5%;background:#FFFFFF; border:2px solid #008000" | {|class="wikitable" style="width:96.5%;background:#FFFFFF; border:2px solid #008000" | ||
Line 27: | Line 26: | ||
Each port contains a make-file. It downloads, unpacks and installs the source code and all patches of an application. | Each port contains a make-file. It downloads, unpacks and installs the source code and all patches of an application. | ||
− | The | + | The Ports Collection contains directories for software categories. Inside each category are sub-directories for individual applications. Each application sub-directory contains a set of files that tells GhostBSD how to compile and install that program, called a ports skeleton. Each port skeleton includes these files and directories: |
+ | |||
+ | ''Makefile:'' contains statements that specify how the application should be compiled and where its components should be installed. | ||
+ | |||
+ | ''distinfo:'' contains the names and checksums of the files that must be downloaded to build the port. | ||
+ | |||
+ | ''files/:'' this directory contains any patches needed for the program to compile and install on FreeBSD. This directory may also contain other files used to build the port. | ||
+ | |||
+ | '' pkg-descr:'' provides a more detailed description of the program. | ||
+ | |||
+ | ''pkg-plist:'' a list of all the files that will be installed by the port. It also tells the ports system which files to remove upon deinstallation. | ||
+ | |||
+ | Some ports include pkg-message or other files to handle special situations. For more details on these files, and on ports in general, refer to the [https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/index.html FreeBSD Porter's Handbook]. | ||
+ | |||
+ | The port does not include the actual source code, also known as a distfile. The extract portion of building a port will automatically save the downloaded source to /usr/ports/distfiles. | ||
+ | |||
+ | ==Installing Ports== | ||
+ | |||
+ | Go to the directory within the ports directory where the application is located | ||
+ | |||
+ | <code># cd /usr/ports/xyz....</code> | ||
+ | |||
+ | There you do | ||
+ | |||
+ | <code># make install</code> | ||
+ | |||
+ | and see the installation process. | ||
== Suggestion == | == Suggestion == | ||
Line 39: | Line 64: | ||
* [http://github.com/GhostBSD/ports.git Spacial ports for GhostBSD on GitHub] | * [http://github.com/GhostBSD/ports.git Spacial ports for GhostBSD on GitHub] | ||
* [https://github.com/ghostbsd/ghostbsd-ports FreeBSD/TrueOS ports with GhostBSD ports ] | * [https://github.com/ghostbsd/ghostbsd-ports FreeBSD/TrueOS ports with GhostBSD ports ] | ||
− | + | ||
[[Category:Application Management]] | [[Category:Application Management]] |
Revision as of 10:26, 27 December 2019
Application Management | ||||||
---|---|---|---|---|---|---|
pkg | Software Station | Update Station | Ports | Applications | ||
Back to the Wiki |
Introduction
GhostBSD ports are based on FreeBSD/TrueOS ports with additional applications.
Attention: Don't use portsnap to get the FreeBSD ports collection on your computer. If you update a package, that installed a service, you will experience some breakage. |
The GhostBSD ports will be updated from the FreeBSD ports collection continuously. It is recommended to use the GhostBSD ports within GhostBSD. GhostBSD does not use the same init system then FreeBSD.
Instead do: sudo git clone https://github.com/ghostbsd/ghostbsd-ports /usr/ports
The ports-collection of GhostBSD allows users and admins to install applications easily. At the moment are in the ports-collection more than 30.000 ports.
The ports-collection supports always the newest version of an application and follows FreeBSD-CURRENT and FreeBSD-STABLE. Older versions will not be supported.
Function
Each port contains also all patches of a source code of an application.
To install an application you have to download the source code and unpack it. You have to go to the directory of that port on your PC and do: make install as root.
Each port contains a make-file. It downloads, unpacks and installs the source code and all patches of an application.
The Ports Collection contains directories for software categories. Inside each category are sub-directories for individual applications. Each application sub-directory contains a set of files that tells GhostBSD how to compile and install that program, called a ports skeleton. Each port skeleton includes these files and directories:
Makefile: contains statements that specify how the application should be compiled and where its components should be installed.
distinfo: contains the names and checksums of the files that must be downloaded to build the port.
files/: this directory contains any patches needed for the program to compile and install on FreeBSD. This directory may also contain other files used to build the port.
pkg-descr: provides a more detailed description of the program.
pkg-plist: a list of all the files that will be installed by the port. It also tells the ports system which files to remove upon deinstallation.
Some ports include pkg-message or other files to handle special situations. For more details on these files, and on ports in general, refer to the FreeBSD Porter's Handbook.
The port does not include the actual source code, also known as a distfile. The extract portion of building a port will automatically save the downloaded source to /usr/ports/distfiles.
Installing Ports
Go to the directory within the ports directory where the application is located
# cd /usr/ports/xyz....
There you do
# make install
and see the installation process.
Suggestion
There are a lot of pre-compiled packages. It is easier to open a terminal and use pkg or more easier to use Software Station.