<?xml version="1.0" encoding="utf-8" standalone="no"?>
-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
-
-<!ENTITY % aptent SYSTEM "apt.ent">
-%aptent;
-
-<!ENTITY % aptverbatiment SYSTEM "apt-verbatim.ent">
-%aptverbatiment;
-
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % aptent SYSTEM "apt.ent"> %aptent;
+<!ENTITY % aptverbatiment SYSTEM "apt-verbatim.ent"> %aptverbatiment;
+<!ENTITY % aptvendor SYSTEM "apt-vendor.ent"> %aptvendor;
]>
<refentry>
&apt-email;
&apt-product;
<!-- The last update date -->
- <date>2012-05-21T00:00:00Z</date>
+ <date>2012-06-09T00:00:00Z</date>
</refentryinfo>
<refmeta>
<refsect1><title>Description</title>
<para><command>apt-get</command> is the command-line tool for handling packages, and may be
considered the user's "back-end" to other tools using the APT
- library. Several "front-end" interfaces exist, such as &dselect;,
+ library. Several "front-end" interfaces exist, such as
&aptitude;, &synaptic; and &wajig;.</para>
<para>Unless the <option>-h</option>, or <option>--help</option> option is given, one of the
available.</para></listitem>
</varlistentry>
- <varlistentry><term><option>dselect-upgrade</option></term>
- <listitem><para><literal>dselect-upgrade</literal>
- is used in conjunction with the traditional Debian packaging
- front-end, &dselect;. <literal>dselect-upgrade</literal>
- follows the changes made by &dselect; to the <literal>Status</literal>
- field of available packages, and performs the actions necessary to realize
- that state (for instance, the removal of old and the installation of new
- packages).</para></listitem>
- </varlistentry>
-
<varlistentry><term><option>dist-upgrade</option></term>
<listitem><para><literal>dist-upgrade</literal> in addition to performing the function of
<literal>upgrade</literal>, also intelligently handles changing dependencies
with new versions of packages; <command>apt-get</command> has a "smart" conflict
resolution system, and it will attempt to upgrade the most important
packages at the expense of less important ones if necessary.
- So, <literal>dist-upgrade</literal> command may remove some packages.
+ The <literal>dist-upgrade</literal> command may therefore remove some packages.
The <filename>/etc/apt/sources.list</filename> file contains a list of locations
from which to retrieve desired package files.
See also &apt-preferences; for a mechanism for
overriding the general settings for individual packages.</para></listitem>
</varlistentry>
+ <varlistentry><term><option>dselect-upgrade</option></term>
+ <listitem><para><literal>dselect-upgrade</literal>
+ is used in conjunction with the traditional Debian packaging
+ front-end, &dselect;. <literal>dselect-upgrade</literal>
+ follows the changes made by &dselect; to the <literal>Status</literal>
+ field of available packages, and performs the actions necessary to realize
+ that state (for instance, the removal of old and the installation of new
+ packages).</para></listitem>
+ </varlistentry>
+
<varlistentry><term><option>install</option></term>
<listitem>
<para><literal>install</literal> is followed by one or more
packages desired for installation or upgrading.
Each package is a package name, not a fully qualified
- filename (for instance, in a Debian GNU/Linux system,
- libc6 would be the argument provided, not
- <literal>libc6_1.9.6-2.deb</literal>). All packages required
+ filename (for instance, in a Debian system,
+ <package>apt-utils</package> would be the argument provided, not
+ <filename>apt-utils_&apt-product-version;_amd64.deb</filename>). All packages required
by the package(s) specified for installation will also
be retrieved and installed.
The <filename>/etc/apt/sources.list</filename> file is
<varlistentry><term><option>remove</option></term>
<listitem><para><literal>remove</literal> is identical to <literal>install</literal> except that packages are
- removed instead of installed. Note the removing a package leaves its
- configuration files in system. If a plus sign is appended to the package
+ removed instead of installed. Note that removing a package leaves its
+ configuration files on the system. If a plus sign is appended to the package
name (with no intervening space), the identified package will be
installed instead of removed.</para></listitem>
</varlistentry>
<literal>pkg/release</literal> syntax, if possible.</para>
<para>Source packages are tracked separately
- from binary packages via <literal>deb-src</literal> type lines
+ from binary packages via <literal>deb-src</literal> lines
in the &sources-list; file. This means that you will need to add such a line
- for each repository you want to get sources from. If you don't do this
- you will properly get another (newer, older or none) source version than
- the one you have installed or could install.</para>
+ for each repository you want to get sources from; otherwise you will probably
+ get either the wrong (too old/too new) source versions or none at all.</para>
<para>If the <option>--compile</option> option is specified
then the package will be compiled to a binary .deb using
used for the package files. This enables exact matching of the source
package name and version, implicitly enabling the
<literal>APT::Get::Only-Source</literal> option.</para>
-
- <para>Note that source packages are not tracked like binary packages, they
- exist only in the current directory and are similar to downloading source
- tar balls.</para></listitem>
+
+ <para>Note that source packages are not installed and tracked in the
+ <command>dpkg</command> database like binary packages; they are simply downloaded
+ to the current directory, like source tarballs.</para></listitem>
</varlistentry>
<varlistentry><term><option>build-dep</option></term>
<listitem><para><literal>clean</literal> clears out the local repository of retrieved package
files. It removes everything but the lock file from
<filename>&cachedir;/archives/</filename> and
- <filename>&cachedir;/archives/partial/</filename>. When APT is used as a
- &dselect; method, <literal>clean</literal> is run automatically.
- Those who do not use dselect will likely want to run <literal>apt-get clean</literal>
- from time to time to free up disk space.</para></listitem>
+ <filename>&cachedir;/archives/partial/</filename>.</para></listitem>
</varlistentry>
<varlistentry><term><option>autoclean</option></term>
</varlistentry>
<varlistentry><term><option>changelog</option></term>
- <listitem><para><literal>changelog</literal> downloads a package changelog and displays
- it through <command>sensible-pager</command>. The server name and base
- directory is defined in the <literal>APT::Changelogs::Server</literal>
- variable (e. g. <ulink url="http://packages.debian.org/changelogs">packages.debian.org/changelogs</ulink> for
- Debian or <ulink url="http://changelogs.ubuntu.com/changelogs">changelogs.ubuntu.com/changelogs</ulink> for
- Ubuntu).
- By default it displays the changelog for the version that is
- installed. However, you can specify the same options as for
- the <option>install</option> command.
- </para>
+ <listitem><para><literal>changelog</literal> tries to download the
+ changelog of a package and displays it through
+ <command>sensible-pager</command>. By default it
+ displays the changelog for the version that is installed.
+ However, you can specify the same options as for the
+ <option>install</option> command.</para>
</listitem>
</varlistentry>
+ <varlistentry><term><option>indextargets</option></term>
+ <listitem><para>Displays by default a deb822 formatted listing of
+ information about all data files (aka index targets) <command>apt-get
+ update</command> would download. Supports a
+ <option>--format</option> option to modify the output format as
+ well as accepts lines of the default output to filter the records
+ by. The command is mainly used as an interface for external tools
+ working with APT to get information as well as filenames for
+ downloaded files so they can use them as well instead of
+ downloading them again on their own. Detailed documentation is
+ omitted here and can instead be found in the source tree in
+ <literal><filename>doc/acquire-additional-files.txt</filename></literal>.
+ </para>
+ </listitem>
+ </varlistentry>
</variablelist>
running APT for the first time; APT itself does not allow broken package
dependencies to exist on a system. It is possible that a system's
dependency structure can be so corrupt as to require manual intervention
- (which usually means using &dselect; or <command>dpkg --remove</command> to eliminate some of
+ (which usually means using <command>dpkg --remove</command> to eliminate some of
the offending packages). Use of this option together with <option>-m</option> may produce an
error in some situations.
Configuration Item: <literal>APT::Get::Fix-Broken</literal>.</para></listitem>
<varlistentry><term><option>-m</option></term><term><option>--ignore-missing</option></term>
<term><option>--fix-missing</option></term>
- <listitem><para>Ignore missing packages; If packages cannot be retrieved or fail the
+ <listitem><para>Ignore missing packages; if packages cannot be retrieved or fail the
integrity check after retrieval (corrupted package files), hold back
those packages and handle the result. Use of this option together with
<option>-f</option> may produce an error in some situations. If a package is
<listitem><para>Quiet; produces output suitable for logging, omitting progress indicators.
More q's will produce more quiet up to a maximum of 2. You can also use
<option>-q=#</option> to set the quiet level, overriding the configuration file.
- Note that quiet level 2 implies <option>-y</option>, you should never use -qq
+ Note that quiet level 2 implies <option>-y</option>; you should never use -qq
without a no-action modifier such as -d, --print-uris or -s as APT may
- decided to do something you did not expect.
+ decide to do something you did not expect.
Configuration Item: <literal>quiet</literal>.</para></listitem>
</varlistentry>
<term><option>--dry-run</option></term>
<term><option>--recon</option></term>
<term><option>--no-act</option></term>
- <listitem><para>No action; perform a simulation of events that would occur but do not
- actually change the system.
- Configuration Item: <literal>APT::Get::Simulate</literal>.</para>
-
- <para>Simulation run as user will deactivate locking (<literal>Debug::NoLocking</literal>)
- automatic. Also a notice will be displayed indicating that this is only a simulation,
- if the option <literal>APT::Get::Show-User-Simulation-Note</literal> is set (Default: true).
- Neither NoLocking nor the notice will be triggered if run as root (root should know what
- he is doing without further warnings by <literal>apt-get</literal>).</para>
-
- <para>Simulate prints out
- a series of lines each one representing a dpkg operation, Configure (Conf),
- Remove (Remv), Unpack (Inst). Square brackets indicate broken packages
- and empty set of square brackets meaning breaks that are of no consequence
- (rare).</para></listitem>
+ <listitem><para>No action; perform a simulation of events that would occur
+ based on the current system state but do not actually change the
+ system. Locking will be disabled (<option>Debug::NoLocking</option>)
+ so the system state could change while <command>apt-get</command> is
+ running. Simulations can also be executed by non-root users which might
+ not have read access to all apt configuration distorting the simulation.
+ A notice expressing this warning is also shown by default for non-root
+ users (<option>APT::Get::Show-User-Simulation-Note</option>).
+ Configuration Item: <literal>APT::Get::Simulate</literal>.</para>
+
+ <para>Simulated runs print out a series of lines, each representing a <command>dpkg</command>
+ operation: configure (<literal>Conf</literal>), remove (<literal>Remv</literal>)
+ or unpack (<literal>Inst</literal>). Square brackets indicate broken packages, and
+ empty square brackets indicate breaks that are of no consequence (rare).</para></listitem>
</varlistentry>
<varlistentry><term><option>-y</option></term><term><option>--yes</option></term>
</varlistentry>
<varlistentry><term><option>-u</option></term><term><option>--show-upgraded</option></term>
- <listitem><para>Show upgraded packages; Print out a list of all packages that are to be
+ <listitem><para>Show upgraded packages; print out a list of all packages that are to be
upgraded.
Configuration Item: <literal>APT::Get::Show-Upgraded</literal>.</para></listitem>
</varlistentry>
by <command>apt-get source --compile</command> and how cross-builddependencies
are satisfied. By default is it not set which means that the host architecture
is the same as the build architecture (which is defined by <literal>APT::Architecture</literal>).
- Configuration Item: <literal>APT::Get::Host-Architecture</literal>
+ Configuration Item: <literal>APT::Get::Host-Architecture</literal>.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>-P</option></term>
+ <term><option>--build-profiles</option></term>
+ <listitem><para>This option controls the activated build profiles for which
+ a source package is built by <command>apt-get source --compile</command> and
+ how build dependencies are satisfied. By default no build profile is active.
+ More than one build profile can be activated at a time by concatenating them
+ with a comma.
+ Configuration Item: <literal>APT::Build-Profiles</literal>.
</para></listitem>
</varlistentry>
</varlistentry>
<varlistentry><term><option>--ignore-hold</option></term>
- <listitem><para>Ignore package Holds; This causes <command>apt-get</command> to ignore a hold
+ <listitem><para>Ignore package holds; this causes <command>apt-get</command> to ignore a hold
placed on a package. This may be useful in conjunction with
<literal>dist-upgrade</literal> to override a large number of undesired holds.
Configuration Item: <literal>APT::Ignore-Hold</literal>.</para></listitem>
</varlistentry>
+ <varlistentry><term><option>--with-new-pkgs</option></term>
+ <listitem><para>Allow installing new packages when used in
+ conjunction with <literal>upgrade</literal>. This is useful if
+ the update of a installed package requires new dependencies to be
+ installed. Instead of holding the package back <literal>upgrade</literal>
+ will upgrade the package and install the new dependencies. Note that
+ <literal>upgrade</literal> with this option will never remove packages,
+ only allow adding new ones.
+ Configuration Item: <literal>APT::Get::Upgrade-Allow-New</literal>.
+ </para></listitem>
+ </varlistentry>
+
<varlistentry><term><option>--no-upgrade</option></term>
- <listitem><para>Do not upgrade packages; When used in conjunction with <literal>install</literal>,
+ <listitem><para>Do not upgrade packages; when used in conjunction with <literal>install</literal>,
<literal>no-upgrade</literal> will prevent packages on the command line
from being upgraded if they are already installed.
Configuration Item: <literal>APT::Get::Upgrade</literal>.</para></listitem>
</varlistentry>
<varlistentry><term><option>--only-upgrade</option></term>
- <listitem><para>Do not install new packages; When used in conjunction
+ <listitem><para>Do not install new packages; when used in conjunction
with <literal>install</literal>, <literal>only-upgrade</literal> will
install upgrades for already installed packages only and ignore requests
to install new packages.
</varlistentry>
<varlistentry><term><option>--force-yes</option></term>
- <listitem><para>Force yes; This is a dangerous option that will cause apt to continue
+ <listitem><para>Force yes; this is a dangerous option that will cause apt to continue
without prompting if it is doing something potentially harmful. It
should not be used except in very special situations. Using
<literal>force-yes</literal> can potentially destroy your system!
<varlistentry><term><option>--print-uris</option></term>
<listitem><para>Instead of fetching the files to install their URIs are printed. Each
URI will have the path, the destination file name, the size and the expected
- md5 hash. Note that the file name to write to will not always match
+ MD5 hash. Note that the file name to write to will not always match
the file name on the remote site! This also works with the
<literal>source</literal> and <literal>update</literal> commands. When used with the
<literal>update</literal> command the MD5 and size are not included, and it is
</varlistentry>
<varlistentry><term><option>--reinstall</option></term>
- <listitem><para>Re-Install packages that are already installed and at the newest version.
+ <listitem><para>Re-install packages that are already installed and at the newest version.
Configuration Item: <literal>APT::Get::ReInstall</literal>.</para></listitem>
</varlistentry>
<varlistentry><term><option>--list-cleanup</option></term>
- <listitem><para>This option defaults to on, use <literal>--no-list-cleanup</literal> to turn it
- off. When on <command>apt-get</command> will automatically manage the contents of
- <filename>&statedir;/lists</filename> to ensure that obsolete files are erased.
- The only reason to turn it off is if you frequently change your source
- list.
+ <listitem><para>This option is on by default; use <literal>--no-list-cleanup</literal> to turn
+ it off. When it is on, <command>apt-get</command> will automatically manage the contents
+ of <filename>&statedir;/lists</filename> to ensure that obsolete files are erased.
+ The only reason to turn it off is if you frequently change your sources list.
Configuration Item: <literal>APT::Get::List-Cleanup</literal>.</para></listitem>
</varlistentry>
<varlistentry><term><option>-t</option></term>
<term><option>--target-release</option></term>
<term><option>--default-release</option></term>
- <listitem><para>This option controls the default input to the policy engine, it creates
+ <listitem><para>This option controls the default input to the policy engine; it creates
a default pin at priority 990 using the specified release string.
This overrides the general settings in <filename>/etc/apt/preferences</filename>.
Specifically pinned packages are not affected by the value
<varlistentry><term><option>--trivial-only</option></term>
<listitem><para>
Only perform operations that are 'trivial'. Logically this can be considered
- related to <option>--assume-yes</option>, where <option>--assume-yes</option> will answer
+ related to <option>--assume-yes</option>; where <option>--assume-yes</option> will answer
yes to any prompt, <option>--trivial-only</option> will answer no.
Configuration Item: <literal>APT::Get::Trivial-Only</literal>.</para></listitem>
</varlistentry>
<varlistentry><term><option>--auto-remove</option></term>
<listitem><para>If the command is either <literal>install</literal> or <literal>remove</literal>,
- then this option acts like running <literal>autoremove</literal> command, removing the unused
+ then this option acts like running the <literal>autoremove</literal> command, removing unused
dependency packages. Configuration Item: <literal>APT::Get::AutomaticRemove</literal>.
</para></listitem>
</varlistentry>
</varlistentry>
<varlistentry><term><option>--allow-unauthenticated</option></term>
- <listitem><para>Ignore if packages can't be authenticated and don't prompt about it.
- This is useful for tools like pbuilder.
- Configuration Item: <literal>APT::Get::AllowUnauthenticated</literal>.</para></listitem>
+ <listitem><para>Ignore if packages can't be authenticated and don't prompt
+ about it. This can be useful while working with local repositories,
+ but is a huge security risk if data authenticity isn't ensured in
+ another way by the user itself. The usage of the
+ <option>Trusted</option> option for &sources-list; entries should
+ usually be preferred over this global override. Configuration Item:
+ <literal>APT::Get::AllowUnauthenticated</literal>.</para></listitem>
</varlistentry>
-
+
+ <varlistentry><term><option>--no-allow-insecure-repositories</option></term>
+ <listitem><para>Forbid the update command to acquire unverifiable
+ data from configured sources. Apt will fail at the update command
+ for repositories without valid cryptographically signatures.
+
+ Configuration Item: <literal>Acquire::AllowInsecureRepositories</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--show-progress</option></term>
+ <listitem><para>Show user friendly progress information in the
+ terminal window when packages are installed, upgraded or
+ removed. For a machine parsable version of this data see
+ README.progress-reporting in the apt doc directory.
+ Configuration Item: <literal>Dpkg::Progress</literal> and <literal>Dpkg::Progress-Fancy</literal>.</para></listitem>
+ </varlistentry>
+
&apt-commonoptions;
</refsect1>
<refsect1><title>See Also</title>
- <para>&apt-cache;, &apt-cdrom;, &dpkg;, &dselect;, &sources-list;,
+ <para>&apt-cache;, &apt-cdrom;, &dpkg;, &sources-list;,
&apt-conf;, &apt-config;, &apt-secure;,
The APT User's guide in &guidesdir;, &apt-preferences;, the APT Howto.</para>
</refsect1>