Date: Tue, 8 Oct 2013 21:32:37 +0000 (UTC) From: Dru Lavigne <dru@FreeBSD.org> To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r42904 - head/en_US.ISO8859-1/books/handbook/ports Message-ID: <201310082132.r98LWbgb080801@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dru Date: Tue Oct 8 21:32:37 2013 New Revision: 42904 URL: http://svnweb.freebsd.org/changeset/doc/42904 Log: White space fix only. Translators can ignore. 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 Tue Oct 8 19:48:28 2013 (r42903) +++ head/en_US.ISO8859-1/books/handbook/ports/chapter.xml Tue Oct 8 21:32:37 2013 (r42904) @@ -67,8 +67,8 @@ <procedure> <step> - <para>Find and download the software, which might be distributed in - source code format or as a binary.</para> + <para>Find and download the software, which might be + distributed in source code format or as a binary.</para> </step> <step> @@ -96,20 +96,22 @@ </step> </procedure> - <para>If the software package was not - deliberately ported, or tested to work, on &os;, the source code may need editing - in order for it to install and run properly. At the time of - this writing, over &os.numports; third-party - applications have been ported to &os;.</para> + <para>If the software package was not deliberately ported, or + tested to work, on &os;, the source code may need editing in + order for it to install and run properly. At the time of this + writing, over &os.numports; third-party applications have been + ported to &os;.</para> - <para>&os; provides two technologies which automate these steps.</para> + <para>&os; provides two technologies which automate these + steps.</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 the traditional &os; - package management commands, such as &man.pkg.add.1;, or using - the newer <application>pkgng</application> commands, such as - <command> pkg install</command>.</para> + and documentation. A package can be manipulated with the + traditional &os; package management commands, such as + &man.pkg.add.1;, or using the newer + <application>pkgng</application> commands, such as + <command>pkg install</command>.</para> <para>A &os; port is a collection of files designed to automate the process of compiling an application from source code. The @@ -121,9 +123,8 @@ can be manipulated with the &os; package management commands.</para> - <para>Both packages and ports understand - dependencies. If a package or port - is used to install an application and a + <para>Both packages and ports understand dependencies. If a + package or port is used to install an application and a dependent library is not already installed, the library will automatically be installed first.</para> @@ -143,8 +144,7 @@ <listitem> <para>Packages do not require compilation time. For large - applications, such as - <application>Mozilla</application>, + applications, such as <application>Mozilla</application>, <application>KDE</application>, or <application>GNOME</application>, this can be important on a slow system.</para> @@ -185,8 +185,8 @@ <listitem> <para>The licensing conditions of some software forbid binary - distribution. Such software must be distributed as source code - which must be compiled by the end-user.</para> + distribution. Such software must be distributed as source + code which must be compiled by the end-user.</para> </listitem> <listitem> @@ -238,9 +238,9 @@ <indexterm><primary>FreshPorts</primary></indexterm> <para>Dan Langille maintains <ulink - url="http://www.FreshPorts.org/">FreshPorts.org</ulink> which - provides a comprehensive search utility and also tracks - changes to the applications in the Ports Collection. + url="http://www.FreshPorts.org/">FreshPorts.org</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> @@ -249,17 +249,17 @@ <listitem> <indexterm><primary>Freecode</primary></indexterm> - <para>If you do not know the name of an application, - try using a site like <ulink - url="http://www.freecode.com/">Freecode.com</ulink> to find an - application, then check back at the &os; site to see if - the application has been ported yet.</para> + <para>If you do not know the name of an application, try + using a site like <ulink + url="http://www.freecode.com/">Freecode.com</ulink> to + find an application, then check back at the &os; site to + see if the application has been ported yet.</para> </listitem> <listitem> <para>If the Ports Collection is already installed, there are - several methods to query the local version of the ports tree. - To find out which category a port is in, type + several methods to query the local version of the ports + tree. To find out which category a port is in, type <command>whereis <replaceable>file</replaceable></command>, where <replaceable>file</replaceable> is the program to be installed:</para> @@ -273,21 +273,21 @@ lsof: /usr/ports/sysutils/lsof</screen> <screen>&prompt.root; <userinput>echo /usr/ports/*/*lsof*</userinput> /usr/ports/sysutils/lsof</screen> - <para>Note that this will also return any matched files downloaded - into the <filename + <para>Note that this will also return any matched files + downloaded into the <filename class="directory">/usr/ports/distfiles</filename> directory.</para> </listitem> <listitem> <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 class="directory">/usr/ports</filename> then run <command>make - <maketarget>search</maketarget> + Collection's built-in search mechanism. To use the search + feature, <application>cd</application> to <filename + class="directory">/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 + 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> @@ -328,9 +328,10 @@ Info: Lists information about open fil <command>make <maketarget>quicksearch</maketarget> key=<replaceable>string</replaceable></command>, where <replaceable>string</replaceable> is some text to search - for. The text can be in comments, descriptions, or dependencies - in order to find ports which relate to a particular subject - when the name of the program is unknown.</para> + for. The text can be in 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>When using <maketarget>search</maketarget> or <maketarget>quicksearch</maketarget>, the search string @@ -360,16 +361,16 @@ Info: Lists information about open fil may wish to investigate the benefits of using <link linkend="pkgng-intro">PKGng</link> to manage third-party software on &os;. This section describes the traditional method - for managing binary packages and only applies to those users who have not yet migrated to the + for managing binary packages and only applies to those users + who have not yet migrated to the <application>pkgng</application> format.</para> - <para>This method of package management uses a - package database directory, - <filename class="directory">/var/db/pkg</filename>, to track - installed software versions and the files installed with each - application. Several utilities interact with the database - directory and are used to manage binary packages. These - commands begin with <literal>pkg_</literal>. This section + <para>This method of package management uses a package database + directory, <filename class="directory">/var/db/pkg</filename>, + to track installed software versions and the files installed + with each application. Several utilities interact with the + database directory and are used to manage binary packages. + These commands begin with <literal>pkg_</literal>. This section provides an overview of the commands which are used to install, delete, and gather information about binary packages. Each command provides many switches to customize its operation. @@ -387,17 +388,17 @@ Info: Lists information about open fil <indexterm> <primary><command>pkg_add</command></primary> </indexterm> - <para>To install a binary package from - a local &os; media or a remote &os; package server, use &man.pkg.add.1;. - While a &os; media can provide a source of local packages - without requiring a network connection, it may not contain - the latest versions of binary packages as new versions are - always being rebuilt for the &os; package servers. To install - from a package server, always include <option>-r</option> (for remote) with - &man.pkg.add.1;. This automatically determines the correct - object format and release, and then fetches and installs the - package from a package server without any further user - intervention.</para> + <para>To install a binary package from a local &os; media or + a remote &os; package server, use &man.pkg.add.1;. While a + &os; media can provide a source of local packages without + requiring a network connection, it may not contain the latest + versions of binary packages as new versions are always being + rebuilt for the &os; package servers. To install from a + package server, always include <option>-r</option> (for + remote) with &man.pkg.add.1;. This automatically determines + the correct object format and release, and then fetches and + installs the package from a package server without any + further user intervention.</para> <indexterm> <primary><command>pkg_add</command></primary> @@ -405,15 +406,17 @@ Info: Lists information about open fil <screen>&prompt.root; <userinput>pkg_add -r <replaceable>lsof</replaceable></userinput></screen> <para>In this example, <literal>lsof</literal> is used without - specifying a version number as the version is not included when the remote - fetching feature is used. To specify an alternative &os; FTP mirror, specify the - mirror in the <envar>PACKAGESITE</envar> environment variable. + specifying a version number as the version is not included + when the remote fetching feature is used. 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 - FTP/HTTP proxy. See &man.fetch.3; for the complete list of FTP-related variables.</para> + <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 FTP/HTTP proxy. See &man.fetch.3; for the complete list + of FTP-related variables.</para> <note> <para>&man.pkg.add.1; will automatically download the latest @@ -431,14 +434,16 @@ Info: Lists information about open fil </note> <para>Package files are distributed in the - <filename>.tbz</filename> format. Packages are - available from <ulink - url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/"></ulink> + <filename>.tbz</filename> format. Packages are available + from <ulink + url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/"></ulink> or the <filename>/packages</filename> directory of the &os; - DVD distribution. The layout of the packages directory is similar to - that of the <filename class="directory">/usr/ports</filename> tree. Each - category has its own directory, and every package can be found - within the <filename class="directory">All</filename> directory.</para> + DVD distribution. The layout of the packages directory is + similar to that of the <filename + class="directory">/usr/ports</filename> tree. Each + category has its own directory, and every package can be + found within the <filename + class="directory">All</filename> directory.</para> </sect2> <sect2> @@ -461,9 +466,10 @@ colordiff-1.0.13 Tool to colorize dif docbook-1.4 Meta-port for the different versions of the DocBook DTD ...</screen> - <para>To receive a summary of the versions of all - installed packages and a comparison of the installed package versions to the - current versions found in the locally installed ports tree, use &man.pkg.version.1;:</para> + <para>To receive a summary of the versions of all installed + packages and a comparison of the installed package versions + to the current versions found in the locally installed ports + tree, use &man.pkg.version.1;:</para> <indexterm> <primary><command>pkg_version</command></primary> @@ -473,8 +479,8 @@ colordiff = docbook = ...</screen> - <para>The symbols in the second column indicate the relative age - of the installed version and the version available in the + <para>The symbols in the second column indicate the relative + age of the installed version and the version available in the local ports tree.</para> <informaltable frame="none" pgwide="1"> @@ -506,6 +512,7 @@ docbook = that the local ports tree is probably out of date.</entry> </row> + <row> <entry>?</entry> <entry>The installed package cannot be found in the @@ -554,8 +561,8 @@ docbook = name and number and that the above command would not work if <replaceable>xchat</replaceable> was given instead of <replaceable>xchat-2.8.8_1</replaceable>. Use - &man.pkg.version.1; to find the version of the - installed package, or use a wildcard:</para> + &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> @@ -568,38 +575,38 @@ docbook = <title>Using <application>pkgng</application> for Binary Package Management</title> - <para><application>pkgng</application> is the next generation replacement - for the traditional &os; package management tools, offering - many features that make dealing with binary packages faster and - easier.</para> + <para><application>pkgng</application> is the next generation + replacement for the traditional &os; package management tools, + offering many features that make dealing with binary packages + faster and easier.</para> <para><application>pkgng</application> is not a replacement for port management tools like <filename role="package">ports-mgmt/portmaster</filename> or <filename role="package">ports-mgmt/portupgrade</filename>. These - tools can be used to - install third-party software from both binary packages and the - Ports Collection, while <application>pkgng</application> installs - only binary packages.</para> + tools can be used to install third-party software from both + binary packages and the Ports Collection, while + <application>pkgng</application> installs only binary + packages.</para> <sect2 id="pkgng-initial-setup"> <title>Getting Started with <application>pkgng</application></title> - <para>&os; 9.1 and later includes a bootstrap - utility which can be used to download and install - <application>pkgng</application>, along with its manual pages.</para> + <para>&os; 9.1 and later includes a bootstrap utility + which can be used to download and install + <application>pkgng</application>, along with its manual + pages.</para> <para>To bootstrap the system, run:</para> <screen>&prompt.root; <userinput>/usr/sbin/pkg</userinput></screen> <para>For earlier &os; versions, - <application>pkgng</application> must instead be installed from the - Ports Collection or as a binary package.</para> + <application>pkgng</application> must instead be installed + from the Ports Collection or as a binary package.</para> - <para>To install the port, - run:</para> + <para>To install the port, run:</para> <screen>&prompt.root; <userinput>cd /usr/ports/ports-mgmt/pkg</userinput> &prompt.root; <userinput>make</userinput> @@ -609,9 +616,9 @@ docbook = <screen>&prompt.root; <userinput>pkg_add -r pkg</userinput></screen> - <para>Once <application>pkgng</application> is installed, the package database - must be converted from the traditional format to the - new format by running this command:</para> + <para>Once <application>pkgng</application> is installed, the + package database must be converted from the traditional format + to the new format by running this command:</para> <screen>&prompt.root; <userinput>pkg2ng</userinput></screen> @@ -628,16 +635,16 @@ docbook = <note> <para>The package database conversion may emit errors as the contents are converted to the new version. Generally, these - errors can be safely ignored. However, a list of third-party - software that was not successfully converted will be listed - after <command>pkg2ng</command> has finished and these applications must be - manually reinstalled.</para> + errors can be safely ignored. However, a list of + third-party software that was not successfully converted + will be listed after <command>pkg2ng</command> has finished + and these applications must be manually reinstalled.</para> </note> - <para>To ensure that the &os; Ports Collection registers new - software with <application>pkgng</application>, and not - the traditional packages format, &os; versions earlier - than 10.<replaceable>X</replaceable> require this line in + <para>To ensure that the &os; Ports Collection registers + new software with <application>pkgng</application>, and not + the traditional packages format, &os; versions earlier than + 10.<replaceable>X</replaceable> require this line in <filename>/etc/make.conf</filename>:</para> <programlisting>WITH_PKGNG= yes</programlisting> @@ -650,8 +657,7 @@ docbook = overrides the configuration file.</para> <para>Additional <application>pkgng</application> - configuration options are described in - pkg.conf(5).</para> + configuration options are described in pkg.conf(5).</para> <para>Usage information for <application>pkgng</application> is available in pkg(8) or by running @@ -666,44 +672,45 @@ docbook = <screen>&prompt.root; <userinput>man pkg-install</userinput></screen> - <para>The rest of this section demonstrates common binary package management - tasks which can be performed using <application>pkgng</application>. Each - demonstrated command provides many switches to customize its - use. Refer to a command's help or man page for details and - more examples.</para> + <para>The rest of this section demonstrates common binary + package management tasks which can be performed using + <application>pkgng</application>. Each demonstrated command + provides many switches to customize its use. Refer to a + command's help or man page for details and more + examples.</para> </sect2> <sect2 id="pkgng-pkg-info"> - <title>Obtaining Information About Installed Packages</title> + <title>Obtaining Information About Installed Packages</title> - <para>Information about the packages installed on a system can - be viewed by running <command>pkg info</command> which, when run without any switches, will - list the package version for either all installed packages or the specified package.</para> + <para>Information about the packages installed on a system + can be viewed by running <command>pkg info</command> which, + when run without any switches, will list the package version + for either all installed packages or the specified + package.</para> - <para>For example, to see which version of - <application>pkgng</application> is installed, - run:</para> + <para>For example, to see which version of + <application>pkgng</application> is installed, run:</para> - <screen>&prompt.root; <userinput>pkg info pkg</userinput> + <screen>&prompt.root; <userinput>pkg info pkg</userinput> pkg-1.1.4_1</screen> - </sect2> + </sect2> <sect2 id="pkgng-installing-deinstalling"> - <title>Installing and Removing Packages</title> + <title>Installing and Removing Packages</title> - <para>To install a binary package - use the following command, where - <replaceable>packagename</replaceable> is the name of the - package to install:</para> + <para>To install a binary package use the following command, + where <replaceable>packagename</replaceable> is the name of + the package to install:</para> - <screen>&prompt.root; <userinput>pkg install <replaceable>packagename</replaceable></userinput></screen> + <screen>&prompt.root; <userinput>pkg install <replaceable>packagename</replaceable></userinput></screen> - <para>This command uses repository data to determine which - version of the software to install and if it has any - uninstalled dependencies. For example, to install - <application>curl</application>:</para> + <para>This command uses repository data to determine which + version of the software to install and if it has any + uninstalled dependencies. For example, to install + <application>curl</application>:</para> - <screen>&prompt.root; <userinput>pkg install curl</userinput> + <screen>&prompt.root; <userinput>pkg install curl</userinput> Updating repository catalogue /usr/local/tmp/All/curl-7.31.0_1.txz 100% of 1181 kB 1380 kBps 00m01s @@ -749,43 +756,45 @@ Proceed with deleting packages [y/N]: <u </sect2> <sect2 id="pkgng-upgrading"> - <title>Upgrading Installed Packages</title> + <title>Upgrading Installed Packages</title> - <para>Packages that are outdated can be found with - <command>pkg version</command>. If a local ports tree - does not exist, pkg-version(8) will use the remote - repository catalogue. Otherwise, the local ports tree will - be used to identify package versions.</para> - - <para>Installed packages can be upgraded to their latest versions - by typing <command>pkg upgrade</command>. This command - will compare the installed versions with those available - in the repository catalogue. When finished, it will list - the applications that have newer versions. Type - <userinput>y</userinput> to proceed with the upgrade or - <userinput>n</userinput> to cancel the upgrade.</para> + <para>Packages that are outdated can be found with + <command>pkg version</command>. If a local ports tree + does not exist, pkg-version(8) will use the remote + repository catalogue. Otherwise, the local ports tree will + be used to identify package versions.</para> + + <para>Installed packages can be upgraded to their latest + versions by typing <command>pkg upgrade</command>. This + command will compare the installed versions with those + available in the repository catalogue. When finished, it + will list the applications that have newer versions. Type + <userinput>y</userinput> to proceed with the upgrade or + <userinput>n</userinput> to cancel the upgrade.</para> </sect2> <sect2 id="pkgng-auditing"> - <title>Auditing Installed Packages</title> + <title>Auditing Installed Packages</title> - <para>Occasionally, software vulnerabilities may be discovered - in third-party applications. To address this, - <application>pkgng</application> includes a built-in auditing mechanism. - To determine if there are any known vulnerabilities for the software installed on the system, run:</para> + <para>Occasionally, software vulnerabilities may be discovered + in third-party applications. To address this, + <application>pkgng</application> includes a built-in auditing + mechanism. To determine if there are any known + vulnerabilities for the software installed on the system, + run:</para> <screen>&prompt.root; <userinput>pkg audit -F</userinput></screen> </sect2> <sect2 id="pkgng-autoremove"> - <title>Automatically Removing Leaf Dependencies</title> + <title>Automatically Removing Leaf Dependencies</title> - <para>Removing a package may leave behind - dependencies which are no longer required. Unneeded packages that - were installed as dependencies can be automatically detected - and removed using:</para> + <para>Removing a package may leave behind dependencies which + are no longer required. Unneeded packages that were installed + as dependencies can be automatically detected and removed + using:</para> - <screen>&prompt.root; <userinput>pkg autoremove</userinput> + <screen>&prompt.root; <userinput>pkg autoremove</userinput> Packages to be autoremoved: ca_root_nss-3.13.5 @@ -796,252 +805,247 @@ Deinstalling ca_root_nss-3.15.1_1... don </sect2> <sect2 id="pkgng-backup"> - <title>Backing Up the Package - Database</title> + <title>Backing Up the Package Database</title> - <para>Unlike the traditional package management system, - <application>pkgng</application> includes its own package - database backup mechanism. To manually back up the contents of the package - database, run the following command, replacing - <replaceable>pkgng.db</replaceable> with a suitable file - name:</para> - - <screen>&prompt.root; <userinput>pkg backup -d <replaceable>pkgng.db</replaceable></userinput></screen> - - <para>Additionally, <application>pkgng</application> includes - a &man.periodic.8; script to automatically perform a daily back up of the - package database. This functionality is enabled if - <literal>daily_backup_pkgng_enable</literal> is set to - <literal>YES</literal> in &man.periodic.conf.5;.</para> + <para>Unlike the traditional package management system, + <application>pkgng</application> includes its own package + database backup mechanism. To manually back up the contents + of the package database, run the following command, replacing + <replaceable>pkgng.db</replaceable> with a suitable file + name:</para> + + <screen>&prompt.root; <userinput>pkg backup -d <replaceable>pkgng.db</replaceable></userinput></screen> + + <para>Additionally, <application>pkgng</application> includes + a &man.periodic.8; script to automatically perform a daily + back up of the package database. This functionality is + enabled if <literal>daily_backup_pkgng_enable</literal> is + set to <literal>YES</literal> in &man.periodic.conf.5;.</para> - <tip> - <para>To disable the - periodic script from backing up the package database, - set <literal>daily_backup_pkgdb_enable</literal> to - <literal>NO</literal> in &man.periodic.conf.5;.</para> - </tip> + <tip> + <para>To disable the periodic script from backing up the + package database, set <literal>daily_backup_pkgdb_ + enable</literal> to <literal>NO</literal> in + &man.periodic.conf.5;.</para> + </tip> - <para>To restore the contents of a previous package database - backup, run:</para> + <para>To restore the contents of a previous package database + backup, run:</para> - <screen>&prompt.root; <userinput>pkg backup -r <replaceable>/path/to/pkgng.db</replaceable></userinput></screen> + <screen>&prompt.root; <userinput>pkg backup -r <replaceable>/path/to/pkgng.db</replaceable></userinput></screen> </sect2> <sect2 id="pkgng-clean"> - <title>Removing Stale - Packages</title> + <title>Removing Stale Packages</title> - <para>By default, <application>pkgng</application> stores - binary packages in a cache directory defined by - <envar>PKG_CACHEDIR</envar> in pkg.conf(5). When - upgrading packages with <command>pkg upgrade</command>, old - versions of the upgraded packages are not automatically - removed.</para> + <para>By default, <application>pkgng</application> stores + binary packages in a cache directory defined by + <envar>PKG_CACHEDIR</envar> in pkg.conf(5). When upgrading + packages with <command>pkg upgrade</command>, old versions + of the upgraded packages are not automatically removed.</para> - <para>To remove these outdated binary packages, run:</para> + <para>To remove these outdated binary packages, run:</para> - <screen>&prompt.root; <userinput>pkg clean</userinput></screen> + <screen>&prompt.root; <userinput>pkg clean</userinput></screen> </sect2> <sect2 id="pkgng-set"> - <title>Modifying Package - Metadata</title> + <title>Modifying Package Metadata</title> + + <para>Software within the &os; Ports Collection can + undergo major version number changes. To address this, + <application>pkgng</application> has a built-in command to + update package origins. This can be useful, for example, if + <filename role="package">lang/php5</filename> is renamed to + <filename role="package">lang/php53</filename> so that + <filename role="package">lang/php5</filename> can now + represent version <literal>5.4</literal>.</para> - <para>Software within the &os; Ports - Collection can undergo major version number changes. To address this, - <application>pkgng</application> has a built-in command to - update package origins. This can be useful, for example, if <filename - role="package">lang/php5</filename> is renamed to - <filename role="package">lang/php53</filename> so that <filename - role="package">lang/php5</filename> can now represent - version <literal>5.4</literal>.</para> - - <para>To change the package origin for the above - example, run:</para> - - <screen>&prompt.root; <userinput>pkg set -o lang/php5:lang/php53</userinput></screen> - - <para>As another example, to update <filename - role="package">lang/ruby18</filename> to <filename - role="package">lang/ruby19</filename>, run:</para> - - <screen>&prompt.root; <userinput>pkg set -o lang/ruby18:lang/ruby19</userinput></screen> - - <para>As a final example, to change the origin of the - <filename>libglut</filename> shared libraries from <filename - role="package">graphics/libglut</filename> to <filename - role="package">graphics/freeglut</filename>, run:</para> + <para>To change the package origin for the above example, + run:</para> - <screen>&prompt.root; <userinput>pkg set -o graphics/libglut:graphics/freeglut</userinput></screen> + <screen>&prompt.root; <userinput>pkg set -o lang/php5:lang/php53</userinput></screen> - <note> - <para>When changing package origins, it is - important to reinstall packages that are dependent on the - package with the modified origin. To force a - reinstallation of dependent packages, run:</para> + <para>As another example, to update <filename + role="package">lang/ruby18</filename> to <filename + role="package">lang/ruby19</filename>, run:</para> - <screen>&prompt.root; <userinput>pkg install -Rf <replaceable>graphics/freeglut</replaceable></userinput></screen> - </note> + <screen>&prompt.root; <userinput>pkg set -o lang/ruby18:lang/ruby19</userinput></screen> + + <para>As a final example, to change the origin of the + <filename>libglut</filename> shared libraries from <filename + role="package">graphics/libglut</filename> to <filename + role="package">graphics/freeglut</filename>, run:</para> + + <screen>&prompt.root; <userinput>pkg set -o graphics/libglut:graphics/freeglut</userinput></screen> + + <note> + <para>When changing package origins, it is important to + reinstall packages that are dependent on the package with + the modified origin. To force a reinstallation of dependent + packages, run:</para> + + <screen>&prompt.root; <userinput>pkg install -Rf <replaceable>graphics/freeglut</replaceable></userinput></screen> + </note> </sect2> </sect1> <sect1 id="ports-using"> <title>Using the Ports Collection</title> - <para>The Ports Collection is a set of - <filename>Makefiles</filename>, patches, and description files - stored in <filename class="directory">/usr/ports</filename>. This set of files - is used to compile and install applications on &os;. Before - an application can be compiled using a port, the Ports - Collection must first be installed. If it was not installed during the installatio of &os;, - use one of the following methods to install it:</para> - - <procedure> - <title>Portsnap Method</title> - - <para><application>Portsnap</application> is a fast and - user-friendly tool for retrieving the Ports Collection and is the - recommended choice for most users. See - <xref linkend="updating-upgrading-portsnap"/> - for a detailed description of - <application>Portsnap</application>.</para> - - <step> - <para>Download a compressed snapshot of the Ports Collection - into <filename - class="directory">/var/db/portsnap</filename>.</para> - - <screen>&prompt.root; <userinput>portsnap fetch</userinput></screen> - </step> - - <step> - <para>When running <application>Portsnap</application> - for the first time, extract the snapshot into - <filename class="directory">/usr/ports</filename>:</para> - - <screen>&prompt.root; <userinput>portsnap extract</userinput></screen> - </step> - - <step> - <para>After the first use of - <application>Portsnap</application> has been completed as - shown above, - <filename class="directory">/usr/ports</filename> can be - updated as needed by running:</para> + <para>The Ports Collection is a set of + <filename>Makefiles</filename>, patches, and description files + stored in <filename class="directory">/usr/ports</filename>. + This set of files is used to compile and install applications + on &os;. Before an application can be compiled using a port, + the Ports Collection must first be installed. If it was not + installed during the installatio of &os;, use one of the + following methods to install it:</para> - <screen>&prompt.root; <userinput>portsnap fetch</userinput> + <procedure> + <title>Portsnap Method</title> + + <para><application>Portsnap</application> is a fast and + user-friendly tool for retrieving the Ports Collection and + is the recommended choice for most users. See <xref + linkend="updating-upgrading-portsnap"/> for a detailed + description of <application>Portsnap</application>.</para> + + <step> + <para>Download a compressed snapshot of the Ports Collection + into <filename + class="directory">/var/db/portsnap</filename>.</para> + + <screen>&prompt.root; <userinput>portsnap fetch</userinput></screen> + </step> + + <step> + <para>When running <application>Portsnap</application> for + the first time, extract the snapshot into <filename + class="directory">/usr/ports</filename>:</para> + + <screen>&prompt.root; <userinput>portsnap extract</userinput></screen> + </step> + + <step> + <para>After the first use of + <application>Portsnap</application> has been completed as + shown above, <filename + class="directory">/usr/ports</filename> can be updated as + needed by running:</para> + + <screen>&prompt.root; <userinput>portsnap fetch</userinput> &prompt.root; <userinput>portsnap update</userinput></screen> - </step> - </procedure> + </step> + </procedure> - <procedure> - <title>Subversion Method</title> + <procedure> + <title>Subversion Method</title> - <para>If more control over the ports tree is needed or if - local changes need to be maintained, - <application>Subversion</application> can be used to - obtain the Ports Collection. Refer to <ulink - url="&url.articles.committers-guide;/subversion-primer.html">the - Subversion Primer</ulink> for a detailed description of - <application>Subversion</application>.</para> - - <step> - <para><application>Subversion</application> must be - installed before it can be used to check out the ports - tree. If a copy of the ports tree is already present, - install <application>Subversion</application> like - this:</para> + <para>If more control over the ports tree is needed or if + local changes need to be maintained, + <application>Subversion</application> can be used to + obtain the Ports Collection. Refer to <ulink + url="&url.articles.committers-guide;/subversion-primer.html">the + Subversion Primer</ulink> for a detailed description of + <application>Subversion</application>.</para> - <screen>&prompt.root; <userinput>cd /usr/ports/devel/subversion</userinput> + <step> + <para><application>Subversion</application> must be + installed before it can be used to check out the ports + tree. If a copy of the ports tree is already present, + install <application>Subversion</application> like + this:</para> + + <screen>&prompt.root; <userinput>cd /usr/ports/devel/subversion</userinput> &prompt.root; <userinput>make install clean</userinput></screen> - <para>If the ports tree is not available, - <application>Subversion</application> can be installed as - a package:</para> - - <screen>&prompt.root; <userinput>pkg_add -r subversion</userinput></screen> - - <para>If <application>pkgng</application> is being used to - manage packages, <application>Subversion</application> can - be installed with it instead:</para> - - <screen>&prompt.root; <userinput>pkg install subversion</userinput></screen> - </step> - - <step> - <para>Check out a copy of the ports tree. For better performance, - replace <replaceable>svn0.us-east.FreeBSD.org</replaceable> with a - <ulink - url="&url.books.handbook;/svn-mirrors.html">Subversion - mirror</ulink> close to your geographic location:</para> - - <screen>&prompt.root; <userinput>svn checkout https://<replaceable>svn0.us-east.FreeBSD.org</replaceable>/ports/head /usr/ports</userinput></screen> - </step> - - <step> - <para>As needed, update - <filename class="directory">/usr/ports</filename> after - the initial <application>Subversion</application> - checkout:</para> - - <screen>&prompt.root; <userinput>svn update /usr/ports</userinput></screen> - </step> - </procedure> - - <para>The Ports Collection installs a series of directories - representing software categories with each category having - a subdirectory for each application. Each subdirectory, also - referred to as a ports skeleton, contains a set of files that tell &os; - how to compile and install that program. Each port skeleton - includes these files and directories:</para> - - <itemizedlist> - <listitem> - <para><filename>Makefile</filename>: contains statements that - specify how the application should be compiled and where - its components should be installed.</para> - </listitem> - - <listitem> - <para><filename>distinfo</filename>: contains the names - and checksums of the files that must be downloaded to - build the port.</para> - </listitem> - - <listitem> - <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><filename>pkg-descr</filename>: provides a - more detailed description of the program.</para> - </listitem> - - <listitem> - <para><filename>pkg-plist</filename>: 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.</para> - </listitem> - </itemizedlist> - - <para>Some ports include - <filename>pkg-message</filename> or other - files to handle special situations. For more details - 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 does not include the actual source code, also - known as a <filename>distfile</filename>. The extract portion - of building a port will automatically save the downloaded - source to <filename - class="directory">/usr/ports/distfiles</filename>.</para> + <para>If the ports tree is not available, + <application>Subversion</application> can be installed as + a package:</para> + + <screen>&prompt.root; <userinput>pkg_add -r subversion</userinput></screen> + + <para>If <application>pkgng</application> is being used to + manage packages, <application>Subversion</application> can + be installed with it instead:</para> - <sect2 id="ports-skeleton"> + <screen>&prompt.root; <userinput>pkg install subversion</userinput></screen> + </step> + + <step> + <para>Check out a copy of the ports tree. For better + performance, replace + <replaceable>svn0.us-east.FreeBSD.org</replaceable> with a + <ulink + url="&url.books.handbook;/svn-mirrors.html">Subversion + mirror</ulink> close to your geographic location:</para> + + <screen>&prompt.root; <userinput>svn checkout https://<replaceable>svn0.us-east.FreeBSD.org</replaceable>/ports/head /usr/ports</userinput></screen> + </step> + + <step> + <para>As needed, update <filename + class="directory">/usr/ports</filename> after the initial + <application>Subversion</application> checkout:</para> + + <screen>&prompt.root; <userinput>svn update /usr/ports</userinput></screen> + </step> + </procedure> + + <para>The Ports Collection installs a series of directories + representing software categories with each category having + a subdirectory for each application. Each subdirectory, also + referred to as a ports skeleton, contains a set of files that + tell &os; how to compile and install that program. Each port + skeleton includes these files and directories:</para> + + <itemizedlist> + <listitem> + <para><filename>Makefile</filename>: contains statements that + specify how the application should be compiled and where + its components should be installed.</para> + </listitem> + + <listitem> + <para><filename>distinfo</filename>: contains the names + and checksums of the files that must be downloaded to + build the port.</para> + </listitem> + + <listitem> + <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><filename>pkg-descr</filename>: provides a more detailed + description of the program.</para> + </listitem> + + <listitem> + <para><filename>pkg-plist</filename>: 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.</para> + </listitem> + </itemizedlist> + + <para>Some ports include <filename>pkg-message</filename> or *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201310082132.r98LWbgb080801>