svn commit: r40822 - head/en_US.ISO8859-1/books/handbook/ports
Dru Lavigne
dru at FreeBSD.org
Wed Jan 30 14:39:05 UTC 2013
Author: dru
Date: Wed Jan 30 14:39:04 2013
New Revision: 40822
URL: http://svnweb.freebsd.org/changeset/doc/40822
Log:
This patch addresses the following:
- fixes missing &os; entities
- fixes most redundancy--this required general rewording and
tightening
- more general tightening and rewording to remove most instances of
"you"
- a few title fixes
- imake section was removed as this is a ports maintainer issue
which should not be an end-user problem
- reword incorrect usage of pkg_install (this comes with pkgng, not
traditional system)
Approved by: bcr (mentor)
Modified:
head/en_US.ISO8859-1/books/handbook/ports/chapter.xml
Modified: head/en_US.ISO8859-1/books/handbook/ports/chapter.xml
==============================================================================
--- head/en_US.ISO8859-1/books/handbook/ports/chapter.xml Wed Jan 30 14:36:55 2013 (r40821)
+++ head/en_US.ISO8859-1/books/handbook/ports/chapter.xml Wed Jan 30 14:39:04 2013 (r40822)
@@ -13,46 +13,43 @@
<indexterm><primary>ports</primary></indexterm>
<indexterm><primary>packages</primary></indexterm>
- <para>FreeBSD is bundled with a rich collection of system tools as
+ <para>&os; is bundled with a rich collection of system tools as
part of the base system. However, there is only so much one can
do before needing to install an additional third-party
- application to get real work done. FreeBSD provides two
- complementary technologies for installing third-party software
- on your system: the FreeBSD Ports Collection (for installing
- from source), and packages (for installing from pre-built
- binaries). Either method may be used to install the newest
- version of your favorite applications from local media or
- straight off the network.</para>
+ application to get real work done. &os; provides two
+ complementary technologies for installing third-party software:
+ the &os; Ports Collection (for installing from source), and
+ packages (for installing from pre-built binaries). Either
+ method may be used to install software from local media or
+ from the network.</para>
- <para>After reading this chapter, you will know:</para>
+ <para>After reading this chapter, you will know how to:</para>
<itemizedlist>
<listitem>
- <para>How to install third-party binary software
- packages.</para>
+ <para>Install third-party binary software packages.</para>
</listitem>
<listitem>
- <para>How to build third-party software from source by using
- the ports collection.</para>
+ <para>Build third-party software from source by using the
+ Ports Collection.</para>
</listitem>
<listitem>
- <para>How to remove previously installed packages or
- ports.</para>
+ <para>Remove previously installed packages or ports.</para>
</listitem>
<listitem>
- <para>How to override the default values that the ports
- collection uses.</para>
+ <para>Override the default values used by the Ports
+ Collection.</para>
</listitem>
<listitem>
- <para>How to find the appropriate software package.</para>
+ <para>Find the appropriate software package.</para>
</listitem>
<listitem>
- <para>How to upgrade your applications.</para>
+ <para>Upgrade installed software.</para>
</listitem>
</itemizedlist>
</sect1>
@@ -60,9 +57,8 @@
<sect1 id="ports-overview">
<title>Overview of Software Installation</title>
- <para>If you have used a &unix; system before you will know that
- the typical procedure for installing third-party software goes
- something like this:</para>
+ <para>The typical steps for installing third-party software on a
+ &unix; system include:</para>
<procedure>
<step>
@@ -77,11 +73,10 @@
</step>
<step>
- <para>Locate the documentation (perhaps an
- <filename>INSTALL</filename> or <filename>README</filename>
- file, or some files in a <filename>doc/</filename>
- subdirectory) and read up on how to install the
- software.</para>
+ <para>Locate the documentation in
+ <filename>INSTALL</filename>, <filename>README</filename>
+ or some file in a <filename>doc/</filename> subdirectory and
+ read up on how to install the software.</para>
</step>
<step>
@@ -96,59 +91,40 @@
</step>
</procedure>
- <para>And that is only if everything goes well. If you are
- installing a software package that was not deliberately ported
- to FreeBSD you may even have to go in and edit the code to make
- it work properly.</para>
-
- <para>Should you want to, you can continue to install software the
- <quote>traditional</quote> way with FreeBSD. However, FreeBSD
- provides two technologies which can save you a lot of effort:
- packages and ports. At the time of writing, over &os.numports;
- third-party applications have been made available in this
- way.</para>
-
- <para>For any given application, the FreeBSD package for that
- application is a single file which you must download. The
- package contains pre-compiled copies of all the commands for the
- application, as well as any configuration files or
- documentation. A downloaded package file can be manipulated
- with FreeBSD package management commands, such as
- &man.pkg.add.1;, &man.pkg.delete.1;, &man.pkg.info.1;, and so
- on. Installing a new application can be carried out with a
- single command.</para>
-
- <para>A FreeBSD port for an application is a collection of files
- designed to automate the process of compiling an application
- from source code.</para>
-
- <para>Remember that there are a number of steps you would normally
- carry out if you compiled a program yourself (downloading,
- unpacking, patching, compiling, installing). The files that
- make up a port contain all the necessary information to allow
- the system to do this for you. You run a handful of simple
- commands and the source code for the application is
- automatically downloaded, extracted, patched, compiled, and
- installed for you.</para>
-
- <para>In fact, the ports system can also be used to generate
- packages which can later be manipulated with
- <command>pkg_add</command> and the other package management
- commands that will be introduced shortly.</para>
+ <para>If you are installing a software package that was not
+ deliberately ported to &os; you may even have to go in and edit
+ the code to make it work properly.</para>
+
+ <para>&os; provides two technologies which perform these steps for
+ you. At the time of writing, over &os.numports; third-party
+ applications are available.</para>
+
+ <para>A &os; package contains pre-compiled copies of all the
+ commands for an application, as well as any configuration files
+ and documentation. A package can be manipulated with &os;
+ package management commands, such as &man.pkg.add.1;,
+ &man.pkg.delete.1;, and &man.pkg.info.1;.</para>
+
+ <para>A &os; port is a collection of files designed to automate
+ the process of compiling an application from source code. The
+ files that comprise a port contain all the necessary information
+ to automatically download, extract, patch, compile, and install
+ the application.</para>
+
+ <para>The ports system can also be used to generate packages which
+ can be manipulated with the &os; package management
+ commands.</para>
<para>Both packages and ports understand
- <emphasis>dependencies</emphasis>. Suppose you want to install
- an application that depends on a specific library being
- installed. Both the application and the library have been made
- available as FreeBSD ports and packages. If you use the
- <command>pkg_add</command> command or the ports system to add
- the application, both will notice that the library has not been
- installed, and automatically install the library first.</para>
-
- <para>Given that the two technologies are quite similar, you might
- be wondering why FreeBSD bothers with both. Packages and ports
- both have their own strengths, and which one you use will depend
- on your own preference.</para>
+ <emphasis>dependencies</emphasis>. If &man.pkg.add.1; or the
+ Ports Collection is used to install an application and a
+ dependent library is not already installed, the library will
+ automatically be installaed first.</para>
+
+ <para>While the two technologies are quite similar, packages and
+ ports each have their own strengths. Select the technology that
+ meets your requirements for installing a particular
+ application.</para>
<itemizedlist>
<title>Package Benefits</title>
@@ -160,17 +136,17 @@
</listitem>
<listitem>
- <para>Packages do not require any additional compilation. For
- large applications, such as
+ <para>Packages do not require compilation time. For large
+ applications, such as
<application>Mozilla</application>,
<application>KDE</application>, or
<application>GNOME</application> this can be important,
- particularly if you are on a slow system.</para>
+ on a slow system.</para>
</listitem>
<listitem>
<para>Packages do not require any understanding of the process
- involved in compiling software on FreeBSD.</para>
+ involved in compiling software on &os;.</para>
</listitem>
</itemizedlist>
@@ -179,105 +155,89 @@
<listitem>
<para>Packages are normally compiled with conservative
- options, because they have to run on the maximum number of
- systems. By installing from the port, you can tweak the
- compilation options to (for example) generate code that is
- specific to a Pentium 4 or Athlon processor.</para>
+ options because they have to run on the maximum number of
+ systems. By compiling from the port, one can change the
+ compilation options.</para>
</listitem>
<listitem>
<para>Some applications have compile-time options relating to
- what they can and cannot do. For example,
+ which features are installed. For example,
<application>Apache</application> can be configured with a
- wide variety of different built-in options. By building
- from the port you do not have to accept the default options,
- and can set them yourself.</para>
+ wide variety of different built-in options.</para>
<para>In some cases, multiple packages will exist for the same
application to specify certain settings. For example,
<application>Ghostscript</application> is available as a
<filename>ghostscript</filename> package and a
<filename>ghostscript-nox11</filename> package, depending on
- whether or not you have installed an X11 server. This sort
- of rough tweaking is possible with packages, but rapidly
- becomes impossible if an application has more than one or
- two different compile-time options.</para>
+ whether or not <application>Xorg</application> is installed.
+ Creating multiple packages rapidly becomes impossible if an
+ application has more than one or two different compile-time
+ options.</para>
</listitem>
<listitem>
- <para>The licensing conditions of some software distributions
- forbid binary distribution. They must be distributed as
- source code.</para>
+ <para>The licensing conditions of some software forbid binary
+ distribution. These must be distributed as source code
+ which must be compiled by the end-user.</para>
</listitem>
<listitem>
- <para>Some people do not trust binary distributions. At least
- with source code, you can (in theory) read through it and
- look for potential problems yourself.</para>
+ <para>Some people do not trust binary distributions or prefer
+ to read through source code in order to look for potential
+ problems.</para>
</listitem>
<listitem>
<para>If you have local patches, you will need the source in
order to apply them.</para>
</listitem>
-
- <listitem>
- <para>Some people like having code around, so they can read it
- if they get bored, hack it, borrow from it (license
- permitting, of course), and so on.</para>
- </listitem>
</itemizedlist>
<para>To keep track of updated ports, subscribe to the
&a.ports; and the &a.ports-bugs;.</para>
<warning>
- <para>Before installing any application, you should check <ulink
+ <para>Before installing any application, check <ulink
url="http://vuxml.freebsd.org/"></ulink> for security issues
- related to your application.</para>
-
- <para>You can also install
- <filename role="package">ports-mgmt/portaudit</filename>
- which will automatically check all installed applications for
- known vulnerabilities; a check will be also performed before
- any port build. Meanwhile, you can use the command
- <command>portaudit -F -a</command> after you have installed
- some packages.</para>
+ related to the application or install <filename
+ role="package">ports-mgmt/portaudit</filename>. Once
+ installed, type <command>portaudit -F -a</command> to check
+ all installed applications for known vulnerabilities</para>
</warning>
- <para>The remainder of this chapter will explain how to use
- packages and ports to install and manage third-party software on
- FreeBSD.</para>
+ <para>The remainder of this chapter explains how to use packages
+ and ports to install and manage third-party software on
+ &os;.</para>
</sect1>
<sect1 id="ports-finding-applications">
- <title>Finding Your Application</title>
+ <title>Finding Software</title>
- <para>Before you can install any applications you need to know
- what you want, and what the application is called.</para>
-
- <para>FreeBSD's list of available applications is growing all the
- time. Fortunately, there are a number of ways to find what you
- want:</para>
+ <para>&os;'s list of available applications is growing all the
+ time. There are a number of ways to find software to
+ install:</para>
<itemizedlist>
<listitem>
- <para>The FreeBSD web site maintains an up-to-date searchable
+ <para>The &os; web site maintains an up-to-date searchable
list of all the available applications, at <ulink
url="&url.base;/ports/index.html">http://www.FreeBSD.org/ports/</ulink>.
- The ports are divided into categories, and you may either
- search for an application by name (if you know it), or see
- all the applications available in a category.</para>
+ The ports can be searched by application name or by
+ software category.</para>
</listitem>
<listitem>
<indexterm><primary>FreshPorts</primary></indexterm>
- <para>Dan Langille maintains FreshPorts, at <ulink
- url="http://www.FreshPorts.org/"></ulink>. FreshPorts
- tracks changes to the applications in the ports tree as they
- happen, allows you to <quote>watch</quote> one or more
- ports, and can send you email when they are updated.</para>
+ <para>Dan Langille maintains <ulink
+ url="http://www.FreshPorts.org/">FreshPorts</ulink> which
+ provides a comprehensive search utility and also tracks
+ changes to the applications in the Ports Collection.
+ Registered users can create a customized watch list in order
+ to receive an automated email when their watched ports are
+ updated.</para>
</listitem>
<listitem>
@@ -286,32 +246,21 @@
<para>If you do not know the name of the application you want,
try using a site like Freecode (<ulink
url="http://www.freecode.com/"></ulink>) to find an
- application, then check back at the FreeBSD site to see if
+ application, then check back at the &os; site to see if
the application has been ported yet.</para>
</listitem>
<listitem>
- <para>If you know the exact name of the port, but just need to
- find out which category it is in, you can use the
- &man.whereis.1; command. Simply type
+ <para>To find out which category a port is in, type
<command>whereis <replaceable>file</replaceable></command>,
- where <replaceable>file</replaceable> is the program you
- want to install. If it is found on your system, you will be
- told where it is, as follows:</para>
+ where <replaceable>file</replaceable> is the program to be
+ installed:</para>
<screen>&prompt.root; <userinput>whereis lsof</userinput>
lsof: /usr/ports/sysutils/lsof</screen>
- <para>This tells us that <command>lsof</command> (a system
- utility) can be found in the
- <filename>/usr/ports/sysutils/lsof</filename>
- directory.</para>
- </listitem>
-
- <listitem>
- <para>Additionally, you can use a simple &man.echo.1;
- statement to find where a port exists in the ports tree.
- For example:</para>
+ <para>Alternately, a &man.echo.1; statement can be
+ used:</para>
<screen>&prompt.root; <userinput>echo /usr/ports/*/*lsof*</userinput>
/usr/ports/sysutils/lsof</screen>
@@ -323,15 +272,15 @@ lsof: /usr/ports/sysutils/lsof</screen>
</listitem>
<listitem>
- <para>Yet another way to find a particular port is by using
- the Ports Collection's built-in search mechanism. To use
- the search feature, you will need to be in the
- <filename>/usr/ports</filename> directory. Once in that
- directory, run <command>make <maketarget>search</maketarget>
- name=<replaceable>program-name</replaceable></command> where
- <replaceable>program-name</replaceable> is the name of the
- program you want to find. For example, if you were looking
- for <command>lsof</command>:</para>
+ <para>Another way to find software is by using the Ports
+ Collection's built-in search mechanism. To use
+ the search feature, <application>cd</application> to
+ <filename>/usr/ports</filename> then run <command>make
+ <maketarget>search</maketarget>
+ name=<replaceable>program-name</replaceable></command>
+ where <replaceable>program-name</replaceable> is the name of
+ the software. For example,to search for
+ <command>lsof</command>:</para>
<screen>&prompt.root; <userinput>cd /usr/ports</userinput>
&prompt.root; <userinput>make search name=lsof</userinput>
@@ -343,18 +292,11 @@ Index: sysutils
B-deps:
R-deps: </screen>
- <para>The part of the output you want to pay particular
- attention to is the <quote>Path:</quote> line, since that
- tells you where to find the port. The other information
- provided is not needed in order to install the port, so it
- will not be covered here.</para>
-
- <para>Alternatively, there is another search feature from
- ports that achieves the same purpose but with less noise,
- the <command>quicksearch</command> feature. This feature
- accepts the same parameter as the <command>search</command>
- feature. For example, searching for <command>lsof</command>
- would return:</para>
+ <para>The <quote>Path:</quote> line indicates where to find
+ the port.</para>
+
+ <para>To receive less information, use the
+ <command>quicksearch</command> feature:</para>
<screen>&prompt.root; <userinput>cd /usr/ports</userinput>
&prompt.root; <userinput>make quicksearch name=lsof</userinput>
@@ -362,19 +304,18 @@ Port: lsof-4.87.a,7
Path: /usr/ports/sysutils/lsof
Info: Lists information about open files (similar to fstat(1))</screen>
- <para>For more in-depth searching you can also use
+ <para>For more in-depth searching, use
<command>make <maketarget>search</maketarget>
key=<replaceable>string</replaceable></command> or
<command>make <maketarget>quicksearch</maketarget>
key=<replaceable>string</replaceable></command>, where
<replaceable>string</replaceable> is some text to search
- for. This searches port names, comments, descriptions and
- dependencies and can be used to find ports which relate to a
- particular subject if you do not know the name of the
- program you are looking for.</para>
+ for. The text can be comments, descriptions or dependencies
+ in order to find ports which relate to a particular subject
+ when the name of the program is unknown.</para>
- <para>In both of these cases (<maketarget>search</maketarget>
- and <maketarget>quicksearch</maketarget>), the search string
+ <para>When using (<maketarget>search</maketarget> and
+ <maketarget>quicksearch</maketarget>), the search string
is case-insensitive. Searching for <quote>LSOF</quote> will
yield the same results as searching for
<quote>lsof</quote>.</para>
@@ -394,10 +335,10 @@ Info: Lists information about open fil
<!-- 30 Mar 2001 -->
</sect1info>
- <title>Using the Packages System</title>
+ <title>Using Binary Packages</title>
<para>There are several different tools used to manage packages on
- FreeBSD:</para>
+ &os;:</para>
<itemizedlist>
<listitem>
@@ -424,9 +365,8 @@ Info: Lists information about open fil
<indexterm>
<primary><command>pkg_add</command></primary>
</indexterm>
- <para>You can use the &man.pkg.add.1; utility to install a
- FreeBSD software package from a local file or from a server on
- the network.</para>
+ <para>Use &man.pkg.add.1; to install a &os; binary package from
+ a local file or from a server on the network.</para>
<example>
<title>Downloading a Package Manually and Installing It
@@ -457,26 +397,22 @@ local: lsof-4.56.4.tgz remote: lsof-4.56
&prompt.root; <userinput>pkg_add <replaceable>lsof-4.56.4.tgz</replaceable></userinput></screen>
</example>
- <para>If you do not have a source of local packages (such as a
- FreeBSD CD-ROM set) then it will probably be easier to use the
- <option>-r</option> option to &man.pkg.add.1;. This will
- cause the utility to automatically determine the correct
- object format and release and then fetch and install the
- package from an FTP site.</para>
+ <para>If you do not have a source of local packages, such as a
+ &os; CD-ROM set, include <option>-r</option> with
+ &man.pkg.add.1;. This automatically determines the correct
+ object format and release, and then fetches and installs the
+ package from an FTP site without any further user
+ intervention.</para>
<indexterm>
<primary><command>pkg_add</command></primary>
</indexterm>
<screen>&prompt.root; <userinput>pkg_add -r <replaceable>lsof</replaceable></userinput></screen>
- <para>The example above would download the correct package and
- add it without any further user intervention. If you want to
- specify an alternative &os; Packages Mirror, instead of the
- main distribution site, you have to set the
- <envar>PACKAGESITE</envar> environment variable accordingly,
- to override the default settings. &man.pkg.add.1; uses
- &man.fetch.3; to download the files, which honors various
- environment variables, including
+ <para>To specify an alternative &os; FTP mirror, specify the
+ mirror in the <envar>PACKAGESITE</envar> environment variable.
+ &man.pkg.add.1; uses &man.fetch.3; to download files, which
+ uses various environment variables, including
<envar>FTP_PASSIVE_MODE</envar>, <envar>FTP_PROXY</envar>, and
<envar>FTP_PASSWORD</envar>. You may need to set one or more
of these if you are behind a firewall, or need to use an
@@ -484,41 +420,32 @@ local: lsof-4.56.4.tgz remote: lsof-4.56
Note that in the example above <literal>lsof</literal> is used
instead of <literal>lsof-4.56.4</literal>. When the remote
fetching feature is used, the version number of the package
- must be removed. &man.pkg.add.1; will automatically fetch the
- latest version of the application.</para>
+ must be removed.</para>
<note>
- <para>&man.pkg.add.1; will download the latest version of
- your application if you are using &os.current; or
- &os.stable;. If you run a -RELEASE version, it will grab
- the version of the package that was built with your
+ <para>&man.pkg.add.1; will automatically download the latest
+ version of the application if you are using &os.current; or
+ &os.stable;. If you run a -RELEASE version, it instead
+ installs the version of the package that was built with that
release. It is possible to change this behavior by
- overriding <envar>PACKAGESITE</envar>.
- For example, if you run a &os; 8.1-RELEASE
- system, by default &man.pkg.add.1; will try to fetch
- packages from
+ overriding <envar>PACKAGESITE</envar>. For example, on a
+ &os; 8.1-RELEASE system, by default &man.pkg.add.1;
+ will try to fetch packages from
<literal>ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.1-release/Latest/</literal>.
- If you want to force &man.pkg.add.1; to download
- &os; 8-STABLE packages, set <envar>PACKAGESITE</envar>
- to
+ To force &man.pkg.add.1; to download &os; 8-STABLE
+ packages, set <envar>PACKAGESITE</envar> to
<literal>ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8-stable/Latest/</literal>.</para>
</note>
<para>Package files are distributed in <filename>.tgz</filename>
- and <filename>.tbz</filename> formats. You can find them at
- <ulink
+ and <filename>.tbz</filename> formats. Packages are
+ available from <ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/"></ulink>,
- or on the FreeBSD CD-ROM distribution. Every CD on the
- FreeBSD 4-CD set (and the PowerPak, etc.) contains packages in
- the <filename>/packages</filename> directory. The layout of
- the packages is similar to that of the
- <filename>/usr/ports</filename> tree. Each category has its
- own directory, and every package can be found within the
- <filename>All</filename> directory.</para>
-
- <para>The directory structure of the package system matches the
- ports layout; they work with each other to form the entire
- package/port system.</para>
+ or the <filename>/packages</filename> directory of the &os;
+ DVD distribution. The layout of the packages is similar to
+ that of the <filename>/usr/ports</filename> tree. Each
+ category has its own directory, and every package can be found
+ within the <filename>All</filename> directory.</para>
</sect2>
<sect2>
@@ -529,8 +456,8 @@ local: lsof-4.56.4.tgz remote: lsof-4.56
<secondary>managing</secondary>
</indexterm>
- <para>&man.pkg.info.1; is a utility that lists and describes
- the various packages installed.</para>
+ <para>&man.pkg.info.1; can be used to list and describe
+ installed packages:</para>
<indexterm>
<primary><command>pkg_info</command></primary>
@@ -541,9 +468,9 @@ colordiff-1.0.13 A tool to colorize d
docbook-1.2 Meta-port for the different versions of the DocBook DTD
...</screen>
- <para>&man.pkg.version.1; is a utility that summarizes the
- versions of all installed packages. It compares the package
- version to the current version found in the ports tree.</para>
+ <para>&man.pkg.version.1; summarizes the versions of all
+ installed packages and compares the package version to the
+ current version found in the ports tree.</para>
<indexterm>
<primary><command>pkg_version</command></primary>
@@ -576,22 +503,22 @@ docbook =
<row>
<entry><</entry>
<entry>The installed version is older than the one
- available in the ports tree.</entry>
+ available in the local ports tree.</entry>
</row>
<row>
<entry>></entry><entry>The installed version is newer
- than the one found in the local ports tree. (The
- local ports tree is probably out of
- date.)</entry>
+ than the one found in the local ports tree, meaning
+ that the local ports tree is probably out of
+ date.</entry>
</row>
<row>
<entry>?</entry>
<entry>The installed package cannot be found in the
- ports index. (This can happen, for instance, if an
- installed port is removed from the Ports Collection or
- renamed.)</entry>
+ ports index. This can happen when an installed port
+ is removed from the Ports Collection or is
+ renamed.</entry>
</row>
<row>
@@ -625,18 +552,17 @@ docbook =
<secondary>deleting</secondary>
</indexterm>
- <para>To remove a previously installed software package, use the
- &man.pkg.delete.1; utility.</para>
+ <para>To remove a previously installed software package, use
+ &man.pkg.delete.1;:</para>
<screen>&prompt.root; <userinput>pkg_delete <replaceable>xchat-1.7.1</replaceable></userinput></screen>
<para>Note that &man.pkg.delete.1; requires the full package
name and number; the above command would not work if
<replaceable>xchat</replaceable> was given instead of
- <replaceable>xchat-1.7.1</replaceable>. It is, however, easy
- to use &man.pkg.version.1; to find the version of the
- installed package. You could instead simply use a
- wildcard:</para>
+ <replaceable>xchat-1.7.1</replaceable>. Use
+ &man.pkg.version.1; to find the version of the
+ installed package, or use a wildcard:</para>
<screen>&prompt.root; <userinput>pkg_delete <replaceable>xchat\*</replaceable></userinput></screen>
@@ -647,10 +573,9 @@ docbook =
<sect2>
<title>Miscellaneous</title>
- <para>All package information is stored within the
- <filename>/var/db/pkg</filename> directory. The installed
- file list and descriptions of each package can be found within
- files in this directory.</para>
+ <para>All package information, including the file list and
+ descriptions of each installed package is stored within the
+ <filename>/var/db/pkg</filename> directory.</para>
</sect2>
</sect1>
@@ -659,11 +584,10 @@ docbook =
Management</title>
<para><application>pkgng</application> is an improved replacement
- for the traditional &os; <application>pkg_install</application>
- package management tools, offering many features that make
- dealing with binary packages faster and easier. The first
- release of <application>pkgng</application> was in August,
- 2012.</para>
+ for the traditional &os; package management tools, offering
+ many features that make dealing with binary packages faster and
+ easier. The first release of <application>pkgng</application>
+ was in August, 2012.</para>
<para><application>pkgng</application> is not a replacement for
port management tools like <filename
@@ -777,7 +701,7 @@ docbook =
<screen>&prompt.root; <userinput>man pkg-install</userinput></screen>
<sect3 id="pkgng-pkg-info">
- <title>Obtaining Information about Installed Packages with
+ <title>Obtaining Information About Installed Packages with
<application>pkgng</application></title>
<para>Information about the packages installed on a system can
@@ -939,10 +863,10 @@ Deinstalling ca_root_nss-3.13.5... done<
<title>Backing Up the <application>pkgng</application> Package
Database</title>
- <para>Unlike the <application>pkg_install</application>
- package management system, <application>pkgng</application>
- includes its own package database backup mechanism. To
- manually back up the package database contents, run:</para>
+ <para>Unlike the traditional package management system,
+ <application>pkgng</application> includes its own package
+ database backup mechanism. To manually back up the package
+ database contents, run:</para>
<screen>&prompt.root; <userinput>pkg backup -d <replaceable>pkgng.db</replaceable></userinput></screen>
@@ -1048,11 +972,10 @@ Deinstalling ca_root_nss-3.13.5... done<
<sect1 id="ports-using">
<title>Using the Ports Collection</title>
- <para>The following sections provide basic instructions on using
- the Ports Collection to install or remove programs from your
- system. The detailed description of available
- <command>make</command> targets and environment variables is
- available in &man.ports.7;.</para>
+ <para>This section provides basic instructions on using the Ports
+ Collection to install or remove software. The detailed
+ description of available <command>make</command> targets and
+ environment variables is available in &man.ports.7;.</para>
<warning>
<para>As of mid 2012, the &os; Ports Project has migrated
@@ -1072,7 +995,7 @@ Deinstalling ca_root_nss-3.13.5... done<
<para>The Ports Collection is a set of
<filename>Makefiles</filename>, patches, and description files
stored in <filename>/usr/ports</filename>. This set of files
- is used for building and installing applications on &os;. The
+ is used to compile and install applications on &os;. The
instructions below show several methods of obtaining the Ports
Collection if it was not installed during initial &os;
setup.</para>
@@ -1312,75 +1235,57 @@ Deinstalling ca_root_nss-3.13.5... done<
<secondary>installing</secondary>
</indexterm>
- <para>The first thing that should be explained when it comes to
- the Ports Collection is what is actually meant by a
- <quote>skeleton</quote>. In a nutshell, a port skeleton is a
- minimal set of files that tell your FreeBSD system how to
- cleanly compile and install a program. Each port skeleton
+ <para>A port skeleton is a set of files that tell &os; system
+ how to compile and install a program. Each port skeleton
includes:</para>
<itemizedlist>
<listitem>
- <para>A <filename>Makefile</filename>. The
- <filename>Makefile</filename> contains various statements
- that specify how the application should be compiled and
- where it should be installed on your system.</para>
+ <para><filename>Makefile</filename>: The
+ <filename>Makefile</filename> contains statements that
+ specify how the application should be compiled and where
+ its components should be installed.</para>
</listitem>
<listitem>
- <para>A <filename>distinfo</filename> file. This file
- contains information about the files that must be
- downloaded to build the port, and their checksums
- (using &man.sha256.1;), to
- verify that files have not been corrupted during the
- download.</para>
+ <para><filename>distinfo</filename>: This file contains
+ information about the files that must be downloaded to
+ build the port, and their checksums (using
+ &man.sha256.1;), to verify that files have not been
+ corrupted during the download.</para>
</listitem>
<listitem>
- <para>A <filename>files</filename> directory. This
- directory contains patches to make the program compile and
- install on your FreeBSD system. Patches are basically
- small files that specify changes to particular files.
- They are in plain text format, and basically say
- <quote>Remove line 10</quote> or <quote>Change line 26 to
- this ...</quote>. Patches are also known as
- <quote>diffs</quote> because they are generated by the
- &man.diff.1; program.</para>
-
- <para>This directory may also contain other files used to
- build the port.</para>
+ <para><filename>files/</filename>: This directory contains
+ any patches needed for the program to compile and install
+ on &os;. This directory may also contain other files used
+ to build the port.</para>
</listitem>
<listitem>
- <para>A <filename>pkg-descr</filename> file. This is a more
- detailed, often multiple-line, description of the
- program.</para>
+ <para><filename>pkg-descr</filename>: This file provides a
+ more detailed description of the program.</para>
</listitem>
<listitem>
- <para>A <filename>pkg-plist</filename> file. This is a list
+ <para><filename>pkg-plist</filename>: This is a list
of all the files that will be installed by the port. It
also tells the ports system what files to remove upon
deinstallation.</para>
</listitem>
</itemizedlist>
- <para>Some ports have other files, such as
+ <para>Some ports include other files, such as
<filename>pkg-message</filename>. The ports system uses these
files to handle special situations. If you want more details
- on these files, and on ports in general, check out the
- <ulink url="&url.books.porters-handbook;/index.html">FreeBSD
+ on these files, and on ports in general, refer to the
+ <ulink url="&url.books.porters-handbook;/index.html">&os;
Porter's Handbook</ulink>.</para>
- <para>The port includes instructions on how to build source
- code, but does not include the actual source code. You can
- get the source code from a CD-ROM or from the Internet.
- Source code is distributed in whatever manner the software
- author desires. Frequently this is a tarred and gzipped file,
- but it might be compressed with some other tool or even
- uncompressed. The program source code, whatever form it comes
- in, is called a <quote>distfile</quote>. The two methods for
- installing a &os; port are described below.</para>
+ <para>The port does not include the actual source code, also
+ known as a <quote>distfile</quote>. Source code is distributed
+ in whatever manner the software author desires. The two
+ methods for installing a &os; port are described below.</para>
<note>
<para>You must be logged in as <username>root</username> to
@@ -1388,39 +1293,32 @@ Deinstalling ca_root_nss-3.13.5... done<
</note>
<warning>
- <para>Before installing any port, you should be sure to have
- an up-to-date Ports Collection and you should check
- <ulink url="http://vuxml.freebsd.org/"></ulink> for security
- issues related to your port.</para>
-
- <para>A security vulnerabilities check can be automatically
- done by <application>portaudit</application> before any new
- application installation. This tool can be found in the
- Ports Collection (<filename
- role="package">ports-mgmt/portaudit</filename>). Consider
- running <command>portaudit -F</command> before installing a
- new port, to fetch the current vulnerabilities database. A
- security audit and an update of the database will be
- performed during the daily security system check. For more
- information read the &man.portaudit.1; and &man.periodic.8;
- manual pages.</para>
+ <para>Before compiling any port, be sure to have an
+ up-to-date Ports Collection and check <ulink
+ url="http://vuxml.freebsd.org/"></ulink> for security
+ issues related to your port. If <filename
+ role="package">ports-mgmt/portaudit</filename>) is
+ installed, run <command>portaudit -F</command> before
+ installing a new port, to fetch the current vulnerabilities
+ database. A security audit and an update of the database
+ will be performed during the daily security system check.
+ For more information read the &man.portaudit.1; and
+ &man.periodic.8; manual pages.</para>
</warning>
- <para>The Ports Collection makes an assumption that you have a
- working Internet connection. If you do not, you will need to
- put a copy of the distfile into
- <filename>/usr/ports/distfiles</filename> manually.</para>
+ <para>Using the Ports Collection assumes a working Internet
+ connection. Otherwise, manually obtain and place a copy of
+ the distfile into
+ <filename>/usr/ports/distfiles</filename>.</para>
- <para>To begin, change to the directory for the port you want
- to install:</para>
+ <para>To begin, change to the directory of the port to
+ be installed:</para>
<screen>&prompt.root; <userinput>cd /usr/ports/sysutils/lsof</userinput></screen>
- <para>Once inside the <filename>lsof</filename> directory, you
- will see the port skeleton. The next step is to compile, or
- <quote>build</quote>, the port. This is done by simply
- typing <command>make</command> at the prompt. Once you have
- done so, you should see something like this:</para>
+ <para>To compile, or <quote>build</quote>, the port, type
+ <command>make</command> at the prompt. You should see
+ messages similar to the ones in this example:</para>
<screen>&prompt.root; <userinput>make</userinput>
>> lsof_4.57D.freebsd.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
@@ -1442,11 +1340,9 @@ Deinstalling ca_root_nss-3.13.5... done<
...
&prompt.root;</screen>
- <para>Notice that once the compile is complete you are
- returned to your prompt. The next step is to install the
- port. In order to install it, you simply need to tack one
- word onto the <command>make</command> command, and that word
- is <maketarget>install</maketarget>:</para>
+ <para>Once the compile is complete, you are returned to the
+ prompt. The next step is to install the port using
+ <maketarget>make install</maketarget>:</para>
<screen>&prompt.root; <userinput>make install</userinput>
===> Installing for lsof-4.57
@@ -1461,18 +1357,18 @@ Deinstalling ca_root_nss-3.13.5... done<
increased privileges.
&prompt.root;</screen>
- <para>Once you are returned to your prompt, you should be able
- to run the application you just installed. Since
- <command>lsof</command> is a program that runs with
- increased privileges, a security warning is shown. During
- the building and installation of ports, you should take heed
- of any other warnings that may appear.</para>
+ <para>Once you are returned to the prompt, you should be able
+ to run the installed application. Since
+ <command>lsof</command> is a program that runs with increased
+ privileges, a security warning is shown. During the building
+ and installation of ports, take heed of any other warnings
+ that may appear.</para>
<para>It is a good idea to delete the working subdirectory,
which contains all the temporary files used during
- compilation. Not only does it consume valuable disk space,
- but it would also cause problems later when upgrading to the
- newer version of the port.</para>
+ compilation. Doing so saves disk space and minimizes the
+ chance of problems later when upgrading to the newer version
+ of the port.</para>
<screen>&prompt.root; <userinput>make clean</userinput>
===> Cleaning for lsof-4.57
@@ -1489,13 +1385,12 @@ Deinstalling ca_root_nss-3.13.5... done<
</note>
<note>
- <para>When installing a port, using only
+ <para>Using only
<command>make <maketarget>install</maketarget></command>
- from the beginning means there will potentially be many
+ means there will potentially be many
waiting periods between user interaction as the default
- behaviour is to prompt the user for options. When there are
- many dependencies, this sometimes makes building a single
- port a huge hassle. To avoid this, first run <command>make
+ behaviour is to prompt the user for options. To avoid this
+ when there are many dependencies, first run <command>make
<maketarget>config-recursive</maketarget></command> to do
the configuration in one batch. Then run <command>make
<maketarget>install [clean]</maketarget></command>
@@ -1519,32 +1414,30 @@ Deinstalling ca_root_nss-3.13.5... done<
available in the directories listed in the
<envar>PATH</envar> environment variable, to speed up lookup
operations for the executable file of these commands. If
- you are using one of these shells, you might have to use the
- <command>rehash</command> command after installing a port,
- before the newly installed commands can be used. This
- command will work for shells like <command>tcsh</command>.
- Use the <command>hash -r</command> command for shells like
- <command>sh</command>. Look at the documentation for your
- shell for more information.</para>
+ you are using <command>tcsh</command>, you might have to
+ type <command>rehash</command> so that a newly installed
+ command can be used without specifying its full path. Use
+ <command>hash -r</command> instead for the
+ <command>sh</command> shell. Refer to the documentation for
+ the shell for more information.</para>
</note>
- <para>Some third-party DVD-ROM products such as the FreeBSD
- Toolkit from the
- <ulink url="http://www.freebsdmall.com/">FreeBSD Mall</ulink>
- contain distfiles. They can be used with the Ports
- Collection. Mount the DVD-ROM on <filename>/cdrom</filename>.
- If you use a different mount point, set
- <makevar>CD_MOUNTPTS</makevar> make variable. The needed
- distfiles will be automatically used if they are present on
- the disk.</para>
+ <para>Some third-party DVD products such as the &os;
+ Toolkit from the <ulink url="http://www.freebsdmall.com/">&os;
+ Mall</ulink> contain distfiles. They can be used with the
+ Ports Collection. Mount the DVD on
+ <filename>/cdrom</filename>. If you use a different mount
+ point, set <makevar>CD_MOUNTPTS</makevar> make variable. The
+ needed distfiles will be automatically used if they are
+ present on the disk.</para>
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-doc-head
mailing list