Commit 7b113b2e authored by Lorenzo "Palinuro" Faletra's avatar Lorenzo "Palinuro" Faletra Committed by Lorenzo "Palinuro" Faletra

Import Debian version 2.1.8+parrot1

apt (2.1.8+parrot1) rolling-testing; urgency=medium

  * Import new Debian release.

apt (2.1.8) unstable; urgency=medium

  [ Julian Andres Klode ]
  * Fully deprecate apt-key, schedule removal for Q2/2022
  * apt-key: Allow depending on gpg instead of gnupg
  * Removal of racist terminology, except for two cases that still need consensus
  * Various fixes to http code:
    - http: Always Close() the connection in Die()
    - http: Die(): Merge flushing code from Flush()
    - http: Only return false for EOF if we actually did not read anything
    - http: Die(): Do not flush the buffer, error out instead
    - http: Finish copying data from server to file before sending stuff to server
    - http: On select timeout, error out directly, do not call Die()
    - http: Redesign reading of pending data
    - http: Always write to the file if there's something to write; this fixes
      a regression from removing the buffer flushing code
    Overall, there's hope this Closes: #959518. It reproduced a bit, but eventually
    snapshot.d.o ratelimiting kicked in and broke the test case.

  [ Nicolas Schier ]
  * Support marking all newly installed packages as automatically installed
parent 0329b6ee
Pipeline #930 failed with stages
...@@ -51,17 +51,17 @@ function(add_vendor_file) ...@@ -51,17 +51,17 @@ function(add_vendor_file)
endfunction() endfunction()
# Add symbolic links to a file # Add symbolic links to a file
function(add_slaves destination master) function(add_links directory target)
set(slaves "") set(link_names "")
foreach(slave ${ARGN}) foreach(link_name ${ARGN})
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${slave} add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${link_name}
COMMAND ${CMAKE_COMMAND} -E create_symlink ${master} ${CMAKE_CURRENT_BINARY_DIR}/${slave}) COMMAND ${CMAKE_COMMAND} -E create_symlink ${target} ${CMAKE_CURRENT_BINARY_DIR}/${link_name})
list(APPEND slaves ${CMAKE_CURRENT_BINARY_DIR}/${slave}) list(APPEND link_names ${CMAKE_CURRENT_BINARY_DIR}/${link_name})
endforeach() endforeach()
STRING(REPLACE "/" "-" master "${master}") STRING(REPLACE "/" "-" target "${target}")
add_custom_target(${master}-slaves ALL DEPENDS ${slaves}) add_custom_target(${target}-link_names ALL DEPENDS ${link_names})
install(FILES ${slaves} DESTINATION ${destination}) install(FILES ${link_names} DESTINATION ${directory})
endfunction() endfunction()
# Generates a simple version script versioning everything with current SOVERSION # Generates a simple version script versioning everything with current SOVERSION
......
...@@ -136,8 +136,8 @@ function(apt_add_update_po) ...@@ -136,8 +136,8 @@ function(apt_add_update_po)
list(APPEND potfiles ${CMAKE_CURRENT_BINARY_DIR}/${domain}.pot) list(APPEND potfiles ${CMAKE_CURRENT_BINARY_DIR}/${domain}.pot)
endforeach() endforeach()
get_filename_component(master_name ${output} NAME_WE) get_filename_component(primary_name ${output} NAME_WE)
add_custom_target(nls-${master_name} add_custom_target(nls-${primary_name}
COMMAND msgcomm --sort-by-file --add-location=file COMMAND msgcomm --sort-by-file --add-location=file
--more-than=0 --output=${output} --more-than=0 --output=${output}
${potfiles} ${potfiles}
...@@ -154,11 +154,11 @@ function(apt_add_update_po) ...@@ -154,11 +154,11 @@ function(apt_add_update_po)
endif() endif()
add_custom_target(update-po-${langcode} add_custom_target(update-po-${langcode}
COMMAND msgmerge -q --previous --update --backup=none ${translation} ${output} COMMAND msgmerge -q --previous --update --backup=none ${translation} ${output}
DEPENDS nls-${master_name} DEPENDS nls-${primary_name}
) )
add_dependencies(update-po update-po-${langcode}) add_dependencies(update-po update-po-${langcode})
endforeach() endforeach()
add_dependencies(update-po nls-${master_name}) add_dependencies(update-po nls-${primary_name})
endfunction() endfunction()
function(apt_add_po_statistics excluded) function(apt_add_po_statistics excluded)
......
...@@ -204,7 +204,7 @@ check_cxx_target(HAVE_FMV_SSE42_AND_CRC32DI "sse4.2" "__builtin_ia32_crc32di(0,i ...@@ -204,7 +204,7 @@ check_cxx_target(HAVE_FMV_SSE42_AND_CRC32DI "sse4.2" "__builtin_ia32_crc32di(0,i
# Configure some variables like package, version and architecture. # Configure some variables like package, version and architecture.
set(PACKAGE ${PROJECT_NAME}) set(PACKAGE ${PROJECT_NAME})
set(PACKAGE_MAIL "APT Development Team <deity@lists.debian.org>") set(PACKAGE_MAIL "APT Development Team <deity@lists.debian.org>")
set(PACKAGE_VERSION "2.1.7") set(PACKAGE_VERSION "2.1.8")
string(REGEX MATCH "^[0-9.]+" PROJECT_VERSION ${PACKAGE_VERSION}) string(REGEX MATCH "^[0-9.]+" PROJECT_VERSION ${PACKAGE_VERSION})
if (NOT DEFINED DPKG_DATADIR) if (NOT DEFINED DPKG_DATADIR)
......
...@@ -251,6 +251,9 @@ void ExecGPGV(std::string const &File, std::string const &FileGPG, ...@@ -251,6 +251,9 @@ void ExecGPGV(std::string const &File, std::string const &FileGPG,
setenv("APT_CONFIG", conf.get(), 1); setenv("APT_CONFIG", conf.get(), 1);
} }
// Tell apt-key not to emit warnings
setenv("APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE", "1", 1);
if (releaseSignature == DETACHED) if (releaseSignature == DETACHED)
{ {
auto detached = make_unique_FILE(FileGPG, "r"); auto detached = make_unique_FILE(FileGPG, "r");
......
...@@ -1771,7 +1771,7 @@ URI::operator string() ...@@ -1771,7 +1771,7 @@ URI::operator string()
{ {
// FIXME: Technically userinfo is permitted even less // FIXME: Technically userinfo is permitted even less
// characters than these, but this is not conveniently // characters than these, but this is not conveniently
// expressed with a blacklist. // expressed with a denylist.
Res << QuoteString(User, ":/?#[]@"); Res << QuoteString(User, ":/?#[]@");
if (Password.empty() == false) if (Password.empty() == false)
Res << ":" << QuoteString(Password, ":/?#[]@"); Res << ":" << QuoteString(Password, ":/?#[]@");
......
...@@ -1156,6 +1156,7 @@ struct CompareProviders /*{{{*/ ...@@ -1156,6 +1156,7 @@ struct CompareProviders /*{{{*/
/*}}}*/ /*}}}*/
bool pkgDepCache::MarkInstall_StateChange(pkgCache::PkgIterator const &Pkg, bool AutoInst, bool FromUser) /*{{{*/ bool pkgDepCache::MarkInstall_StateChange(pkgCache::PkgIterator const &Pkg, bool AutoInst, bool FromUser) /*{{{*/
{ {
bool AlwaysMarkAsAuto = _config->FindB("APT::Get::Mark-Auto", false) == true;
auto &P = (*this)[Pkg]; auto &P = (*this)[Pkg];
if (P.Protect() && P.InstallVer == P.CandidateVer) if (P.Protect() && P.InstallVer == P.CandidateVer)
return true; return true;
...@@ -1171,7 +1172,7 @@ bool pkgDepCache::MarkInstall_StateChange(pkgCache::PkgIterator const &Pkg, bool ...@@ -1171,7 +1172,7 @@ bool pkgDepCache::MarkInstall_StateChange(pkgCache::PkgIterator const &Pkg, bool
P.Mode = pkgDepCache::ModeInstall; P.Mode = pkgDepCache::ModeInstall;
P.InstallVer = P.CandidateVer; P.InstallVer = P.CandidateVer;
if(FromUser) if(FromUser && !AlwaysMarkAsAuto)
{ {
// Set it to manual if it's a new install or already installed, // Set it to manual if it's a new install or already installed,
// but only if its not marked by the autoremover (aptitude depend on this behavior) // but only if its not marked by the autoremover (aptitude depend on this behavior)
......
...@@ -276,6 +276,7 @@ static bool addArgumentsAPTGet(std::vector<CommandLine::Args> &Args, char const ...@@ -276,6 +276,7 @@ static bool addArgumentsAPTGet(std::vector<CommandLine::Args> &Args, char const
addArg(0,"force-yes","APT::Get::force-yes",0); addArg(0,"force-yes","APT::Get::force-yes",0);
addArg(0,"print-uris","APT::Get::Print-URIs",0); addArg(0,"print-uris","APT::Get::Print-URIs",0);
addArg(0,"trivial-only","APT::Get::Trivial-Only",0); addArg(0,"trivial-only","APT::Get::Trivial-Only",0);
addArg(0,"mark-auto","APT::Get::Mark-Auto",0);
addArg(0,"remove","APT::Get::Remove",0); addArg(0,"remove","APT::Get::Remove",0);
addArg(0,"only-source","APT::Get::Only-Source",0); addArg(0,"only-source","APT::Get::Only-Source",0);
addArg(0,"allow-unauthenticated","APT::Get::AllowUnauthenticated",0); addArg(0,"allow-unauthenticated","APT::Get::AllowUnauthenticated",0);
......
...@@ -110,7 +110,7 @@ bool DoUpdate(CommandLine &CmdL) ...@@ -110,7 +110,7 @@ bool DoUpdate(CommandLine &CmdL)
if (uri.User.empty() && uri.Password.empty()) if (uri.User.empty() && uri.Password.empty())
continue; continue;
// we can't really predict if a +http method supports everything http does, // we can't really predict if a +http method supports everything http does,
// so we play it safe and use a whitelist here. // so we play it safe and use an allowlist here.
char const *const affected[] = {"http", "https", "tor+http", "tor+https", "ftp"}; char const *const affected[] = {"http", "https", "tor+http", "tor+https", "ftp"};
if (std::find(std::begin(affected), std::end(affected), uri.Access) != std::end(affected)) if (std::find(std::begin(affected), std::end(affected), uri.Access) != std::end(affected))
// TRANSLATOR: the first two are manpage references, the last the URI from a sources.list // TRANSLATOR: the first two are manpage references, the last the URI from a sources.list
......
...@@ -53,7 +53,7 @@ install(TARGETS apt-helper RUNTIME DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}/apt/) ...@@ -53,7 +53,7 @@ install(TARGETS apt-helper RUNTIME DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}/apt/)
install(TARGETS apt-dump-solver apt-internal-solver RUNTIME DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}/apt/solvers) install(TARGETS apt-dump-solver apt-internal-solver RUNTIME DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}/apt/solvers)
install(TARGETS apt-internal-planner RUNTIME DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}/apt/planners) install(TARGETS apt-internal-planner RUNTIME DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}/apt/planners)
add_slaves(${CMAKE_INSTALL_LIBEXECDIR}/apt/planners ../solvers/dump planners/dump) add_links(${CMAKE_INSTALL_LIBEXECDIR}/apt/planners ../solvers/dump planners/dump)
# Install the not-to-be-compiled programs # Install the not-to-be-compiled programs
INSTALL(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/apt-key DESTINATION ${CMAKE_INSTALL_BINDIR}) INSTALL(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/apt-key DESTINATION ${CMAKE_INSTALL_BINDIR})
...@@ -671,10 +671,10 @@ prepare_gpg_home() { ...@@ -671,10 +671,10 @@ prepare_gpg_home() {
# well as the script hopefully uses apt-key optionally then like e.g. # well as the script hopefully uses apt-key optionally then like e.g.
# debian-archive-keyring for (upgrade) cleanup did # debian-archive-keyring for (upgrade) cleanup did
if [ -n "$DPKG_MAINTSCRIPT_PACKAGE" ] && [ -z "$APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE" ]; then if [ -n "$DPKG_MAINTSCRIPT_PACKAGE" ] && [ -z "$APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE" ]; then
if ! dpkg-query --show --showformat '${Pre-Depends}${Depends}${Recommends}\n' "$DPKG_MAINTSCRIPT_PACKAGE" 2>/dev/null | grep -q gnupg; then if ! dpkg-query --show --showformat '${Pre-Depends}${Depends}${Recommends}\n' "$DPKG_MAINTSCRIPT_PACKAGE" 2>/dev/null | grep -E -q 'gpg|gnupg'; then
cat >&2 <<EOF cat >&2 <<EOF
Warning: The $DPKG_MAINTSCRIPT_NAME maintainerscript of the package $DPKG_MAINTSCRIPT_PACKAGE Warning: The $DPKG_MAINTSCRIPT_NAME maintainerscript of the package $DPKG_MAINTSCRIPT_PACKAGE
Warning: seems to use apt-key (provided by apt) without depending on gnupg or gnupg2. Warning: seems to use apt-key (provided by apt) without depending on gpg, gnupg, or gnupg2.
Warning: This will BREAK in the future and should be fixed by the package maintainer(s). Warning: This will BREAK in the future and should be fixed by the package maintainer(s).
Note: Check first if apt-key functionality is needed at all - it probably isn't! Note: Check first if apt-key functionality is needed at all - it probably isn't!
EOF EOF
...@@ -740,8 +740,18 @@ warn_on_script_usage() { ...@@ -740,8 +740,18 @@ warn_on_script_usage() {
# (Maintainer) scripts should not be using apt-key # (Maintainer) scripts should not be using apt-key
if [ -n "$DPKG_MAINTSCRIPT_PACKAGE" ]; then if [ -n "$DPKG_MAINTSCRIPT_PACKAGE" ]; then
echo >&2 "Warning: apt-key should not be used in scripts (called from $DPKG_MAINTSCRIPT_NAME maintainerscript of the package ${DPKG_MAINTSCRIPT_PACKAGE})" echo >&2 "Warning: apt-key should not be used in scripts (called from $DPKG_MAINTSCRIPT_NAME maintainerscript of the package ${DPKG_MAINTSCRIPT_PACKAGE})"
elif [ ! -t 1 ]; then fi
echo >&2 "Warning: apt-key output should not be parsed (stdout is not a terminal)"
echo >&2 "Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8))."
}
warn_outside_maintscript() {
# In del, we want to warn in interactive use, but not inside maintainer
# scripts, so as to give people a chance to migrate keyrings.
#
# FIXME: We should always warn starting in 2022.
if [ -z "$DPKG_MAINTSCRIPT_PACKAGE" ]; then
echo >&2 "Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8))."
fi fi
} }
...@@ -760,6 +770,7 @@ case "$command" in ...@@ -760,6 +770,7 @@ case "$command" in
;; ;;
del|rm|remove) del|rm|remove)
# no script warning here as removing 'add' usage needs 'del' for cleanup # no script warning here as removing 'add' usage needs 'del' for cleanup
warn_outside_maintscript
requires_root requires_root
foreach_keyring_do 'remove_key_from_keyring' "$@" foreach_keyring_do 'remove_key_from_keyring' "$@"
aptkey_echo "OK" aptkey_echo "OK"
...@@ -772,6 +783,7 @@ case "$command" in ...@@ -772,6 +783,7 @@ case "$command" in
merge_back_changes merge_back_changes
;; ;;
net-update) net-update)
warn_on_script_usage
requires_root requires_root
setup_merged_keyring setup_merged_keyring
net_update net_update
......
...@@ -60,7 +60,7 @@ case "$1" in ...@@ -60,7 +60,7 @@ case "$1" in
chmod -f 0640 /var/log/apt/term.log* || true chmod -f 0640 /var/log/apt/term.log* || true
fi fi
# create kernel autoremoval blacklist on update # create kernel autoremoval denylist on update
if dpkg --compare-versions "$2" lt 0.9.9.3; then if dpkg --compare-versions "$2" lt 0.9.9.3; then
/etc/kernel/postinst.d/apt-auto-removal /etc/kernel/postinst.d/apt-auto-removal
fi fi
......
apt (2.1.8+parrot1) rolling-testing; urgency=medium
* Import new Debian release.
-- Lorenzo "Palinuro" Faletra <palinuro@parrotsec.org> Wed, 12 Aug 2020 01:01:03 +0200
apt (2.1.8) unstable; urgency=medium
[ Julian Andres Klode ]
* Fully deprecate apt-key, schedule removal for Q2/2022
* apt-key: Allow depending on gpg instead of gnupg
* Removal of racist terminology, except for two cases that still need consensus
* Various fixes to http code:
- http: Always Close() the connection in Die()
- http: Die(): Merge flushing code from Flush()
- http: Only return false for EOF if we actually did not read anything
- http: Die(): Do not flush the buffer, error out instead
- http: Finish copying data from server to file before sending stuff to server
- http: On select timeout, error out directly, do not call Die()
- http: Redesign reading of pending data
- http: Always write to the file if there's something to write; this fixes
a regression from removing the buffer flushing code
Overall, there's hope this Closes: #959518. It reproduced a bit, but eventually
snapshot.d.o ratelimiting kicked in and broke the test case.
[ Nicolas Schier ]
* Support marking all newly installed packages as automatically installed
-- Julian Andres Klode <jak@debian.org> Tue, 04 Aug 2020 12:41:28 +0200
apt (2.1.7+parrot1) rolling-testing; urgency=medium apt (2.1.7+parrot1) rolling-testing; urgency=medium
* Import new Debian version. * Import new Debian version.
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
&apt-email; &apt-email;
&apt-product; &apt-product;
<!-- The last update date --> <!-- The last update date -->
<date>2020-01-15T00:00:00Z</date> <date>2020-02-27T00:00:00Z</date>
</refentryinfo> </refentryinfo>
<refmeta> <refmeta>
...@@ -545,6 +545,16 @@ ...@@ -545,6 +545,16 @@
Configuration Item: <literal>APT::Get::Trivial-Only</literal>.</para></listitem> Configuration Item: <literal>APT::Get::Trivial-Only</literal>.</para></listitem>
</varlistentry> </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> <varlistentry><term><option>--no-remove</option></term>
<listitem><para>If any packages are to be removed apt-get immediately aborts without <listitem><para>If any packages are to be removed apt-get immediately aborts without
prompting. prompting.
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
&apt-email; &apt-email;
&apt-product; &apt-product;
<!-- The last update date --> <!-- The last update date -->
<date>2019-04-04T00:00:00Z</date> <date>2020-05-06T00:00:00Z</date>
</refentryinfo> </refentryinfo>
<refmeta> <refmeta>
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
<!-- Man page title --> <!-- Man page title -->
<refnamediv> <refnamediv>
<refname>apt-key</refname> <refname>apt-key</refname>
<refpurpose>APT key management utility</refpurpose> <refpurpose>Deprecated APT key management utility</refpurpose>
</refnamediv> </refnamediv>
&synopsis-command-apt-key; &synopsis-command-apt-key;
...@@ -37,13 +37,15 @@ ...@@ -37,13 +37,15 @@
authenticated using these keys will be considered trusted. authenticated using these keys will be considered trusted.
</para> </para>
<para> <para>
Note that if usage of <command>apt-key</command> is desired the additional Use of <command>apt-key</command> is deprecated, except for the use of
<command>apt-key del</command> in maintainer scripts to remove existing
keys from the main keyring.
If such usage of <command>apt-key</command> is desired the additional
installation of the GNU Privacy Guard suite (packaged in installation of the GNU Privacy Guard suite (packaged in
<package>gnupg</package>) is required. For this reason alone the programmatic <package>gnupg</package>) is required.
usage (especially in package maintainer scripts!) is strongly discouraged. </para>
Further more the output format of all commands is undefined and can and does <para>
change whenever the underlying commands change. <command>apt-key</command> will apt-key(8) will last be available in Debian 11 and Ubuntu 22.04.
try to detect such usage and generates warnings on stderr in these cases.
</para> </para>
</refsect1> </refsect1>
...@@ -63,7 +65,7 @@ ...@@ -63,7 +65,7 @@
<refsect1><title>Commands</title> <refsect1><title>Commands</title>
<variablelist> <variablelist>
<varlistentry><term><option>add</option> <option>&synopsis-param-filename;</option></term> <varlistentry><term><option>add</option> <option>&synopsis-param-filename;</option> (deprecated)</term>
<listitem> <listitem>
<para> <para>
Add a new key to the list of trusted keys. Add a new key to the list of trusted keys.
...@@ -85,7 +87,7 @@ ...@@ -85,7 +87,7 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry><term><option>del</option> <option>&synopsis-param-keyid;</option></term> <varlistentry><term><option>del</option> <option>&synopsis-param-keyid;</option> (mostly deprecated)</term>
<listitem> <listitem>
<para> <para>
...@@ -96,7 +98,7 @@ ...@@ -96,7 +98,7 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry><term><option>export</option> <option>&synopsis-param-keyid;</option></term> <varlistentry><term><option>export</option> <option>&synopsis-param-keyid;</option> (deprecated)</term>
<listitem> <listitem>
<para> <para>
...@@ -107,7 +109,7 @@ ...@@ -107,7 +109,7 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry><term><option>exportall</option></term> <varlistentry><term><option>exportall</option> (deprecated)</term>
<listitem> <listitem>
<para> <para>
...@@ -118,7 +120,7 @@ ...@@ -118,7 +120,7 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry><term><option>list</option>, <option>finger</option></term> <varlistentry><term><option>list</option>, <option>finger</option> (deprecated)</term>
<listitem> <listitem>
<para> <para>
...@@ -129,7 +131,7 @@ ...@@ -129,7 +131,7 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry><term><option>adv</option></term> <varlistentry><term><option>adv</option> (deprecated)</term>
<listitem> <listitem>
<para> <para>
Pass advanced options to gpg. With <command>adv --recv-key</command> you Pass advanced options to gpg. With <command>adv --recv-key</command> you
...@@ -160,7 +162,7 @@ ...@@ -160,7 +162,7 @@
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry><term><option>net-update</option></term> <varlistentry><term><option>net-update</option> (deprecated)</term>
<listitem> <listitem>
<para> <para>
...@@ -183,7 +185,7 @@ ...@@ -183,7 +185,7 @@
<refsect1><title>Options</title> <refsect1><title>Options</title>
<para>Note that options need to be defined before the commands described in the previous section.</para> <para>Note that options need to be defined before the commands described in the previous section.</para>
<variablelist> <variablelist>
<varlistentry><term><option>--keyring</option> <option>&synopsis-param-filename;</option></term> <varlistentry><term><option>--keyring</option> <option>&synopsis-param-filename;</option> (deprecated)</term>
<listitem><para>With this option it is possible to specify a particular keyring <listitem><para>With this option it is possible to specify a particular keyring
file the command should operate on. The default is that a command is executed file the command should operate on. The default is that a command is executed
on the <filename>trusted.gpg</filename> file as well as on all parts in the on the <filename>trusted.gpg</filename> file as well as on all parts in the
......
...@@ -274,7 +274,7 @@ ...@@ -274,7 +274,7 @@
"> ">
<!-- this will be updated by 'prepare-release' --> <!-- this will be updated by 'prepare-release' -->
<!ENTITY apt-product-version "2.1.7"> <!ENTITY apt-product-version "2.1.8">
<!-- (Code)names for various things used all over the place --> <!-- (Code)names for various things used all over the place -->
<!ENTITY debian-oldstable-codename "stretch"> <!ENTITY debian-oldstable-codename "stretch">
......
...@@ -73,6 +73,7 @@ APT ...@@ -73,6 +73,7 @@ APT
Assume-Yes "<BOOL>"; // not as dangerous, but use with care still Assume-Yes "<BOOL>"; // not as dangerous, but use with care still
Assume-No "<BOOL>"; Assume-No "<BOOL>";
Trivial-Only "<BOOL>"; Trivial-Only "<BOOL>";
Mark-Auto "<BOOL>";
Remove "<BOOL>"; Remove "<BOOL>";
AllowUnauthenticated "<BOOL>"; // skip security AllowUnauthenticated "<BOOL>"; // skip security
......
...@@ -5,9 +5,9 @@ ...@@ -5,9 +5,9 @@
#, fuzzy #, fuzzy
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: apt-doc 2.1.7\n" "Project-Id-Version: apt-doc 2.1.8\n"
"Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n"
"POT-Creation-Date: 2020-07-08 09:40+0200\n" "POT-Creation-Date: 2020-08-04 12:40+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
...@@ -1411,6 +1411,16 @@ msgid "" ...@@ -1411,6 +1411,16 @@ msgid ""
"<literal>APT::Get::Trivial-Only</literal>." "<literal>APT::Get::Trivial-Only</literal>."
msgstr "" msgstr ""
#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
#: apt-get.8.xml
msgid ""
"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>."
msgstr ""
#. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
#: apt-get.8.xml #: apt-get.8.xml
msgid "" msgid ""
...@@ -2014,7 +2024,7 @@ msgstr "" ...@@ -2014,7 +2024,7 @@ msgstr ""
#. type: Content of: <refentry><refnamediv><refpurpose> #. type: Content of: <refentry><refnamediv><refpurpose>
#: apt-key.8.xml #: apt-key.8.xml
msgid "APT key management utility" msgid "Deprecated APT key management utility"
msgstr "" msgstr ""
#. type: Content of: <refentry><refsect1><para> #. type: Content of: <refentry><refsect1><para>
...@@ -2028,14 +2038,16 @@ msgstr "" ...@@ -2028,14 +2038,16 @@ msgstr ""
#. type: Content of: <refentry><refsect1><para> #. type: Content of: <refentry><refsect1><para>
#: apt-key.8.xml #: apt-key.8.xml
msgid "" msgid ""
"Note that if usage of <command>apt-key</command> is desired the additional " "Use of <command>apt-key</command> is deprecated, except for the use of "
"installation of the GNU Privacy Guard suite (packaged in " "<command>apt-key del</command> in maintainer scripts to remove existing keys "
"<package>gnupg</package>) is required. For this reason alone the " "from the main keyring. If such usage of <command>apt-key</command> is "
"programmatic usage (especially in package maintainer scripts!) is strongly " "desired the additional installation of the GNU Privacy Guard suite (packaged "
"discouraged. Further more the output format of all commands is undefined " "in <package>gnupg</package>) is required."
"and can and does change whenever the underlying commands " msgstr ""
"change. <command>apt-key</command> will try to detect such usage and "