summaryrefslogtreecommitdiffstats
path: root/doc/apt-get.8.xml
diff options
context:
space:
mode:
Diffstat (limited to 'doc/apt-get.8.xml')
-rw-r--r--doc/apt-get.8.xml716
1 files changed, 716 insertions, 0 deletions
diff --git a/doc/apt-get.8.xml b/doc/apt-get.8.xml
new file mode 100644
index 0000000..8d6bd8e
--- /dev/null
+++ b/doc/apt-get.8.xml
@@ -0,0 +1,716 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!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>
+
+ <refentryinfo>
+ &apt-author.jgunthorpe;
+ &apt-author.team;
+ &apt-email;
+ &apt-product;
+ <!-- The last update date -->
+ <date>2023-12-15T00:00:00Z</date>
+ </refentryinfo>
+
+ <refmeta>
+ <refentrytitle>apt-get</refentrytitle>
+ <manvolnum>8</manvolnum>
+ <refmiscinfo class="manual">APT</refmiscinfo>
+ </refmeta>
+
+ <!-- Man page title -->
+ <refnamediv>
+ <refname>apt-get</refname>
+ <refpurpose>APT package handling utility -- command-line interface</refpurpose>
+ </refnamediv>
+
+ &synopsis-command-apt-get;
+
+ <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
+ &aptitude;, &synaptic; and &wajig;.</para>
+
+ <para>Unless the <option>-h</option>, or <option>--help</option> option is given, one of the
+ commands below must be present.</para>
+
+ <variablelist>
+ <varlistentry><term><option>update</option></term>
+ <listitem><para><literal>update</literal> is used to resynchronize the package index files from
+ their sources. The indexes of available packages are fetched from the
+ location(s) specified in <filename>/etc/apt/sources.list</filename>.
+ For example, when using a Debian archive, this command retrieves and
+ scans the <filename>Packages.gz</filename> files, so that information about new
+ and updated packages is available. An <literal>update</literal> should always be
+ performed before an <literal>upgrade</literal> or <literal>dist-upgrade</literal>. Please
+ be aware that the overall progress meter will be incorrect as the size
+ of the package files cannot be known in advance.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>upgrade</option></term>
+ <listitem><para><literal>upgrade</literal> is used to install the newest versions of all packages
+ currently installed on the system from the sources enumerated in
+ <filename>/etc/apt/sources.list</filename>. Packages currently installed with
+ new versions available are retrieved and upgraded; under no circumstances
+ are currently installed packages removed, or packages not already installed
+ retrieved and installed. New versions of currently installed packages that
+ cannot be upgraded without changing the install status of another package
+ will be left at their current version. An <literal>update</literal> must be
+ performed first so that <command>apt-get</command> knows that new versions of packages are
+ available.</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.
+ 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 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
+ used to locate the desired packages. If a hyphen is
+ appended to the package name (with no intervening space),
+ the identified package will be removed if it is installed.
+ Similarly a plus sign can be used to designate a
+ package to install. These latter features may be used
+ to override decisions made by apt-get's conflict
+ resolution system.
+ </para>
+
+ <para>A specific version of a package can be selected for installation by
+ following the package name with an equals and the version of the package
+ to select. This will cause that version to be located and selected for
+ install. Alternatively a specific distribution can be selected by
+ following the package name with a slash and the version of the
+ distribution or the Archive name (stable, testing, unstable).</para>
+
+ <para>Both of the version selection mechanisms can downgrade packages and must
+ be used with care.</para>
+
+ <para>This is also the target to use if you want to upgrade one or
+ more already-installed packages without upgrading every package
+ you have on your system. Unlike the "upgrade" target, which
+ installs the newest version of all currently installed packages,
+ "install" will install the newest version of only the package(s)
+ specified. Simply provide the name of the package(s) you wish
+ to upgrade, and if a newer version is available, it (and its
+ dependencies, as described above) will be downloaded and
+ installed.
+ </para>
+
+ <para>Finally, the &apt-preferences; mechanism allows you to
+ create an alternative installation policy for
+ individual packages.</para>
+
+ <para>If no package matches the given expression and the expression contains one
+ of '.', '?' or '*' then it is assumed to be a POSIX regular expression,
+ and it is applied
+ to all package names in the database. Any matches are then installed (or
+ removed). Note that matching is done by substring so 'lo.*' matches 'how-lo'
+ and 'lowest'. If this is undesired, anchor the regular expression
+ with a '^' or '$' character, or create a more specific regular expression.</para>
+ <para>Fallback to regular expressions is deprecated in APT 2.0, has been removed in
+ &apt;, except for anchored expressions, and will be removed from &apt-get;
+ in a future version. Use &apt-patterns; instead.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>reinstall</option></term>
+ <listitem><para><literal>reinstall</literal> is an alias for <literal>install --reinstall</literal>.</para></listitem>
+ </varlistentry>
+
+ <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 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>
+
+ <varlistentry><term><option>purge</option></term>
+ <listitem><para><literal>purge</literal> is identical to <literal>remove</literal> except that packages are
+ removed and purged (any configuration files are deleted too).</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>source</option></term>
+ <listitem><para><literal>source</literal> causes <command>apt-get</command> to fetch source packages. APT
+ will examine the available packages to decide which source package to
+ fetch. It will then find and download into the current directory the
+ newest available version of that source package while respecting the
+ default release, set with the option <literal>APT::Default-Release</literal>,
+ the <option>-t</option> option or per package with the
+ <literal>pkg/release</literal> syntax, if possible.</para>
+
+ <para>The arguments are interpreted as binary and source package names.
+ See the <option>--only-source</option> option if you want to change that.</para>
+
+ <para>Source packages are tracked separately
+ 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; 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
+ <command>dpkg-buildpackage</command> for the architecture as
+ defined by the <command>--host-architecture</command> option.
+ If <option>--download-only</option> is specified then the source package
+ will not be unpacked.</para>
+
+ <para>A specific source version can be retrieved by postfixing the source name
+ with an equals and then the version to fetch, similar to the mechanism
+ 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 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>build-dep</literal> causes apt-get to install/remove packages in an
+ attempt to satisfy the build dependencies for a source package. By default the dependencies are
+ satisfied to build the package natively. If desired a host-architecture can be specified
+ with the <option>--host-architecture</option> option instead.</para><para>The arguments are
+ interpreted as binary or source package names. See the <option>--only-source</option>
+ option if you want to change that.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>satisfy</option></term>
+ <listitem><para><literal>satisfy</literal> causes apt-get to satisfy the given dependency strings. The
+ dependency strings may have build profiles and architecture restriction list as in build dependencies. They
+ may optionally be prefixed with <literal>"Conflicts: "</literal> to unsatisfy the dependency string. Multiple strings of the same type can be specified.</para>
+
+ <para>Example: <literal>apt-get satisfy "foo" "Conflicts: bar" "baz (&gt;&gt; 1.0) | bar (= 2.0), moo"</literal></para>
+
+ <para>The legacy operator '&lt;/&gt;' is not supported, use '&lt;=/&gt;=' instead.</para>
+
+
+ </listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>check</option></term>
+ <listitem><para><literal>check</literal> is a diagnostic tool; it updates the package cache and checks
+ for broken dependencies.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>download</option></term>
+ <listitem><para><literal>download</literal> will download the given
+ binary package into the current directory. The authenticity of
+ the package data is ensured as usual.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>clean</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>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>autoclean</option> (and the <option>auto-clean</option> alias since 1.1)</term>
+ <listitem><para>Like <literal>clean</literal>, <literal>autoclean</literal> clears out the local
+ repository of retrieved package files. The difference is that it only
+ removes package files that can no longer be downloaded, and are largely
+ useless. This allows a cache to be maintained over a long period without
+ it growing out of control. The configuration option
+ <literal>APT::Clean-Installed</literal> will prevent installed packages from being
+ erased if it is set to off.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>distclean</option> (and the <option>dist-clean</option> alias)</term>
+ <listitem><para><literal>distclean</literal> removes all files under
+ <filename>&statedir;/lists</filename> except Release, Release.gpg, and InRelease.
+ It can be used for example, when finalizing images distributed to users.
+ The release files are kept for security reasons, to prevent various types of attacks.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>autoremove</option> (and the <option>auto-remove</option> alias since 1.1)</term>
+ <listitem><para><literal>autoremove</literal> is used to remove packages that were automatically
+ installed to satisfy dependencies for other packages and are now no longer needed.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>autopurge</option></term>
+ <listitem><para>Like <literal>autoremove</literal>, but <literal>autopurge</literal> also
+ removes configuration files. This is a shortcut for <literal>autoremove
+ --purge</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>changelog</option></term>
+ <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 file
+ &apt-acquire-additional-files; shipped by the <package>apt-doc</package> package.
+ </para>
+ </listitem>
+ </varlistentry>
+
+
+ </variablelist>
+ </refsect1>
+
+ <refsect1><title>options</title>
+ &apt-cmdblurb;
+
+ <variablelist>
+ <varlistentry><term><option>--no-install-recommends</option></term>
+ <listitem><para>Do not consider recommended packages as a dependency for installing.
+ Configuration Item: <literal>APT::Install-Recommends</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--install-suggests</option></term>
+ <listitem><para>Consider suggested packages as a dependency for installing.
+ Configuration Item: <literal>APT::Install-Suggests</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>-d</option></term><term><option>--download-only</option></term>
+ <listitem><para>Download only; package files are only retrieved, not unpacked or installed.
+ Configuration Item: <literal>APT::Get::Download-Only</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>-f</option></term><term><option>--fix-broken</option></term>
+ <listitem><para>Fix; attempt to correct a system with broken dependencies in
+ place. This option, when used with install/remove, can omit any packages
+ to permit APT to deduce a likely solution. If packages are specified,
+ these have to completely correct the problem. The option is sometimes necessary when
+ 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 <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>
+
+ <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
+ 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
+ selected for installation (particularly if it is mentioned on the
+ command line) and it could not be downloaded then it will be silently
+ held back.
+ Configuration Item: <literal>APT::Get::Fix-Missing</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--no-download</option></term>
+ <listitem><para>Disables downloading of packages. This is best used with
+ <option>--ignore-missing</option> to force APT to use only the .debs it has
+ already downloaded.
+ Configuration Item: <literal>APT::Get::Download</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>-q</option></term><term><option>--quiet</option></term>
+ <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
+ without a no-action modifier such as -d, --print-uris or -s as APT may
+ decide to do something you did not expect.
+ Configuration Item: <literal>quiet</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>-s</option></term>
+ <term><option>--simulate</option></term>
+ <term><option>--just-print</option></term>
+ <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
+ 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>
+ <term><option>--assume-yes</option></term>
+ <listitem><para>Automatic yes to prompts; assume "yes" as answer to all prompts and run
+ non-interactively. If an undesirable situation, such as changing a held
+ package, trying to install an unauthenticated package or removing an essential package
+ occurs then <literal>apt-get</literal> will abort.
+ Configuration Item: <literal>APT::Get::Assume-Yes</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--assume-no</option></term>
+ <listitem><para>Automatic "no" to all prompts.
+ Configuration Item: <literal>APT::Get::Assume-No</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--no-show-upgraded</option></term>
+ <listitem><para>Do not show a list of all packages that are to be upgraded.
+ Configuration Item: <literal>APT::Get::Show-Upgraded</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>-V</option></term><term><option>--verbose-versions</option></term>
+ <listitem><para>Show full versions for upgraded and installed packages.
+ Configuration Item: <literal>APT::Get::Show-Versions</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>-a</option></term>
+ <term><option>--host-architecture</option></term>
+ <listitem><para>This option controls the architecture packages are built for
+ 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>.
+ </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><term><option>-b</option></term><term><option>--compile</option></term>
+ <term><option>--build</option></term>
+ <listitem><para>Compile source packages after downloading them.
+ Configuration Item: <literal>APT::Get::Compile</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--ignore-hold</option></term>
+ <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 an 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>,
+ <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
+ with <literal>install</literal>, <literal>only-upgrade</literal> will
+ install upgrades for already installed packages only and ignore requests
+ to install new packages.
+ Configuration Item: <literal>APT::Get::Only-Upgrade</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--allow-downgrades</option></term>
+ <listitem><para>This is a dangerous option that will cause apt to continue
+ without prompting if it is doing downgrades. It
+ should not be used except in very special situations. Using
+ it can potentially destroy your system!
+ Configuration Item: <literal>APT::Get::allow-downgrades</literal>. Introduced in APT 1.1.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--allow-remove-essential</option></term>
+ <listitem><para>Force yes; this is a dangerous option that will cause apt to continue
+ without prompting if it is removing essentials. It
+ should not be used except in very special situations. Using
+ it can potentially destroy your system!
+ Configuration Item: <literal>APT::Get::allow-remove-essential</literal>. Introduced in APT 1.1.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--allow-change-held-packages</option></term>
+ <listitem><para>Force yes; this is a dangerous option that will cause apt to continue
+ without prompting if it is changing held packages. It
+ should not be used except in very special situations. Using
+ it can potentially destroy your system!
+ Configuration Item: <literal>APT::Get::allow-change-held-packages</literal>. Introduced in APT 1.1.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--force-yes</option></term>
+ <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!
+ Configuration Item: <literal>APT::Get::force-yes</literal>. This is deprecated and replaced by
+ <option>--allow-unauthenticated</option>
+ , <option>--allow-downgrades</option>
+ , <option>--allow-remove-essential</option>
+ , <option>--allow-change-held-packages</option> in 1.1. </para></listitem>
+ </varlistentry>
+
+ <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
+ 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
+ up to the user to decompress any compressed files.
+ Configuration Item: <literal>APT::Get::Print-URIs</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--purge</option></term>
+ <listitem><para>Use purge instead of remove for anything that would be removed.
+ An asterisk ("*") will be displayed next to packages which are
+ scheduled to be purged. <option>remove --purge</option> is equivalent to the
+ <option>purge</option> command.
+ Configuration Item: <literal>APT::Get::Purge</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--reinstall</option></term>
+ <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 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>-S</option></term>
+ <term><option>--snapshot</option></term>
+ <listitem><para>This option controls the snapshot chosen for archives with <literal>Snapshot: enable</literal>
+ in the source entry. For example, <option>-S 20220102T030405Z</option> selects a snapshot from January 2nd,
+ 2022 at 03:04:05 UTC.
+ Configuration Item: <literal>APT::Snapshot</literal>;
+ see also the &sources-list; manual page.
+ </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
+ 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
+ of this option. In short, this option
+ lets you have simple control over which distribution packages will be
+ retrieved from. Some common examples might be
+ <option>-t '2.1*'</option>, <option>-t unstable</option>
+ or <option>-t sid</option>.
+ Configuration Item: <literal>APT::Default-Release</literal>;
+ see also the &apt-preferences; manual page.</para></listitem>
+ </varlistentry>
+
+ <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
+ 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>--mark-auto</option></term>
+ <listitem><para>
+ After successful installation, mark all freshly installed packages as
+ automatically installed, which will cause each of the packages to be
+ removed when no more manually installed packages depend on this package.
+ This is equally to running <command>apt-mark auto</command> for all
+ installed packages.
+ Configuration Item: <literal>APT::Get::Mark-Auto</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--no-remove</option></term>
+ <listitem><para>If any packages are to be removed apt-get immediately aborts without
+ prompting.
+ Configuration Item: <literal>APT::Get::Remove</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--auto-remove</option></term><term><option>--autoremove</option></term>
+ <listitem><para>If the command is either <literal>install</literal> or <literal>remove</literal>,
+ 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><term><option>--only-source</option></term>
+ <listitem><para>Only has meaning for the
+ <literal>source</literal> and <literal>build-dep</literal>
+ commands. Indicates that the given source names are not to be
+ mapped through the binary table. This means that if this option
+ is specified, these commands will only accept source package
+ names as arguments, rather than accepting binary package names
+ and looking up the corresponding source package. Configuration
+ Item: <literal>APT::Get::Only-Source</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--diff-only</option></term><term><option>--dsc-only</option></term><term><option>--tar-only</option></term>
+ <listitem><para>Download only the diff, dsc, or tar file of a source archive.
+ Configuration Item: <literal>APT::Get::Diff-Only</literal>, <literal>APT::Get::Dsc-Only</literal>, and
+ <literal>APT::Get::Tar-Only</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--arch-only</option></term>
+ <listitem><para>Only process architecture-dependent build-dependencies.
+ Configuration Item: <literal>APT::Get::Arch-Only</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--indep-only</option></term>
+ <listitem><para>Only process architecture-independent build-dependencies.
+ Configuration Item: <literal>APT::Get::Indep-Only</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--allow-unauthenticated</option></term>
+ <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>--allow-insecure-repositories</option></term>
+ <listitem><para>Allow the update command to acquire unverifiable
+ data from configured sources. APT will otherwise fail at the update
+ command for repositories without valid cryptographically signatures.
+ See also &apt-secure; for details on the concept and the implications.
+
+ Configuration Item: <literal>Acquire::AllowInsecureRepositories</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--allow-releaseinfo-change</option></term>
+ <listitem><para>Allow the update command to continue downloading
+ data from a repository which changed its information of the release
+ contained in the repository indicating e.g a new major release.
+ APT will fail at the update command for such repositories until the
+ change is confirmed to ensure the user is prepared for the change.
+ See also &apt-secure; for details on the concept and configuration.
+ </para><para>
+ Specialist options
+ (<literal>--allow-releaseinfo-change-</literal><replaceable>field</replaceable>)
+ exist to allow changes only for certain fields like <literal>origin</literal>,
+ <literal>label</literal>, <literal>codename</literal>, <literal>suite</literal>,
+ <literal>version</literal> and <literal>defaultpin</literal>. See also &apt-preferences;.
+
+ Configuration Item: <literal>Acquire::AllowReleaseInfoChange</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 Items: <literal>Dpkg::Progress</literal> and <literal>Dpkg::Progress-Fancy</literal>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>--with-source</option> <option>&synopsis-param-filename;</option></term>
+ <listitem><para>
+ Adds the given file as a source for metadata. Can be repeated to add multiple files.
+ See <option>--with-source</option> description in &apt-cache; for further details.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>-e<replaceable>any</replaceable></option></term><term><option>--error-on=<replaceable>any</replaceable></option></term>
+ <listitem><para>Fail the update command if any error occured, even a transient one.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term><option>-U</option></term><term><option>--update</option></term>
+ <listitem><para>Run the <option>update</option> command before the specified command. This is supported for commands
+ installing, removing, or upgrading packages such as
+ <option>install</option>, <option>remove</option>, <option>safe-upgrade</option>, <option>full-upgrade</option>.
+ This can be useful to ensure a command always installs the latest versions, or, in combination with the
+ <option>--snapshot</option> option to make sure the snapshot is present when install is being run.
+ </para>
+ <para>Caveat: Due to technical limitations, locks are acquired individually for each phase, hence an install
+ may fail to acquire locks after successfully executing the update. Until this is resolved, this is merely
+ syntactic sugar for <literal>apt update &amp;&amp; apt install</literal></para>
+ </listitem>
+ </varlistentry>
+
+
+ &apt-commonoptions;
+
+ </variablelist>
+ </refsect1>
+
+ <refsect1><title>Files</title>
+ <variablelist>
+ &file-sourceslist;
+ &file-aptconf;
+ &file-preferences;
+ &file-cachearchives;
+ &file-statelists;
+ </variablelist>
+ </refsect1>
+
+ <refsect1><title>See Also</title>
+ <para>&apt-cache;, &apt-cdrom;, &dpkg;, &sources-list;,
+ &apt-conf;, &apt-patterns;, &apt-config;, &apt-secure;,
+ The APT User's guide in &guidesdir;, &apt-preferences;, the APT Howto.</para>
+ </refsect1>
+
+ <refsect1><title>Diagnostics</title>
+ <para><command>apt-get</command> returns zero on normal operation, decimal 100 on error.</para>
+ </refsect1>
+ &manbugs;
+</refentry>