.\" DO NOT MODIFY THIS FILE! it was generated by rd2 .TH APT-LISTBUGS 1 "October 2023" .SH NAME .PP apt\-listbugs \- Lists critical bugs before each APT installation/upgrade .SH SYNOPSIS .PP \&\fBapt\-listbugs\fP [\&\fB\-s\fP \fIseverities\fP] [\&\fB\-T\fP \fItags\fP] [\&\fB\-S\fP \fIstates\fP] [\&\fB\-B\fP \fIbug#\fP] [\&\fB\-D\fP] [\&\fB\-H\fP \fIhostname\fP] [\&\fB\-p\fP \fIport\fP] [\&\fB\-P\fP \fIpriority\fP] [\&\fB\-E\fP \fItitle\fP] [\&\fB\-q\fP] [\&\fB\-C\fP \fIapt.conf\fP] [\&\fB\-F\fP] [\&\fB\-N\fP] [\&\fB\-y\fP] [\&\fB\-n\fP] [\&\fB\-a\fP] [\&\fB\-d\fP] \fIcommand\fP [\fIargument\fP ...] .PP \&\fBapt\-listbugs \-h\fP .PP \&\fBapt\-listbugs \-v\fP .SH DESCRIPTION .PP \&\fBapt\-listbugs\fP is a tool which retrieves bug reports from the Debian Bug Tracking System and lists them. In particular, it is intended to be invoked before each installation or upgrade by APT, or other compatible package managers, in order to check whether the installation/upgrade is safe. .PP In the typical use case, the user is installing or upgrading a number of packages with APT or some other compatible package manager. Before the package installation or upgrade is actually performed, \&\fBapt\-listbugs\fP is automatically invoked: it queries the Debian Bug Tracking System for bugs (of certain configured severities) that would be introduced into the system by the installation or upgrade; if any such bug is found, \&\fBapt\-listbugs\fP warns the user and asks how to proceed. Among other things, the user has the opportunity to continue, to abort the installation or upgrade, or to pin some packages (so that the unsafe installation or upgrade is deferred). However, pinning is not effective immediately, and requires restarting the APT session (by aborting and then re\-running the same APT command). .PP Each package pin is automatically removed by a daily cron job (or by an equivalent systemd timer), as soon as the corresponding bug is fixed in (or no longer affects) the package version available for installation or upgrade. When the pin is removed, the installation or upgrade of the package becomes possible again. .PP In order for the automatic pin removal to work correctly, the daily cron job or systemd timer has to be actually executed: if systemd is used as init system, this should be taken care of automatically; otherwise, if the system is up and running almost 24/7, then \&\fBcron\fP should suffice; in all other cases, the installation of \&\fBanacron\fP is recommended. Moreover the Internet link must be working, while the daily job is run. Finally, the APT package lists should be kept up\-to\-date. .SH OPTIONS .TP .fi .B \-s \fIseverities\fP , \-\-severity \fIseverities\fP Filter (and sort) bugs by severity, showing only the bugs matching specified values. List the bug severities that you want to see, separated by commas and in the desired order. Possible values are \&\fBcritical\fP, \&\fBgrave\fP, \&\fBserious\fP, \&\fBimportant\fP, \&\fBnormal\fP, \&\fBminor\fP, \&\fBwishlist\fP, or the special value \&\fBall\fP to disable filtering. Default: \&\fBcritical,grave,serious\fP. The default list may be changed by setting the \&\fBAptListbugs::Severities\fP configuration option. .TP .fi .B \-T \fItags\fP , \-\-tag \fItags\fP Filter bugs by tags, showing only the bugs matching all specified values. List the tags that you want to see, separated by commas. Default: no filter. Possible values include \&\fBconfirmed,l10n\fP to show only bugs that have both these tags. .TP .fi .B \-S \fIstates\fP , \-\-stats \fIstates\fP Filter (and sort) bugs by pending\-state, showing only the bugs matching specified values. List the pending\-state categories that you want to see, separated by commas and in the desired order. Default: \&\fBpending,forwarded,pending\-fixed,fixed,done\fP. Possible values are: \&\fBpending\fP (open bug), \&\fBforwarded\fP (marked as "forwarded"), \&\fBpending\-fixed\fP (tagged as "pending"), \&\fBfixed\fP (tagged as "fixed"), \&\fBabsent\fP (not found in this distribution/architecture), \&\fBdone\fP (resolved in some version for this distribution/architecture). Note that a bug can only match one such state (when multiple conditions on this list match, the later one takes priority), and that \&\fBpending\fP does not mean "tagged as pending". .TP .fi .B \-B \fIbug#\fP , \-\-bugs \fIbug#\fP Filter bugs by number, showing only the bugs directly specified. List the bug numbers that you want to see, separated by commas (e.g. \&\fB123456,567890,135792\fP). Default: no filter. .TP .fi .B \-D, \-\-show\-downgrade Show bugs of downgraded packages. (apt mode only) .TP .fi .B \-H \fIhostname\fP , \-\-hostname \fIhostname\fP Specifies the hostname of the Debian Bug Tracking System. Default: \&\fBbugs\.debian.org\fP . .TP .fi .B \-p \fIport\fP , \-\-port \fIport\fP Specifies the port number of the web interface of the Debian Bug Tracking System. Default: 80. .TP .fi .B \-P \fIpriority\fP , \-\-pin\-priority \fIpriority\fP Specifies \&\fBPin\-Priority\fP value. Default: 30000. .TP .fi .B \-E \fItitle\fP , \-\-title \fItitle\fP Specifies the title of RSS output. .TP .fi .B \-q, \-\-quiet Don't display progress bar. This option is assumed if stdout is not a terminal. .TP .fi .B \-C \fIapt.conf\fP , \-\-aptconf \fIapt.conf\fP Specifies an additional APT configuration file to use. This file will be read after the default APT configuration files. .TP .fi .B \-F, \-\-force\-pin When in apt mode, assumes that you want to automatically pin all buggy packages without any prompt. This option is assumed if stdout is not a terminal, unless the \&\fB\-N\fP command\-line option is used. .TP .fi .B \-N, \-\-force\-no\-pin When in apt mode, never automatically pin any package without prompt. This is the default behavior, as long as stdout is a terminal. .TP .fi .B \-y, \-\-force\-yes Assumes that you select yes for all questions. When in apt mode, this implies that you accept to continue with the installation/upgrade, even when bugs are found or errors occur. .TP .fi .B \-n, \-\-force\-no Assumes that you select no for all questions. When in apt mode, this implies that you want to abort the installation/upgrade, as soon as bugs are found or errors occur. This option is assumed if stdout is not a terminal, unless the \&\fB\-y\fP command\-line option is used. .TP .fi .B \-a, \-\-force\-default Assumes that you select the default (automatic) reply for all questions. When in apt mode, this implies that you accept to continue with the installation/upgrade, even when bugs are found, but not when errors occur. .TP .fi .B \-d, \-\-debug Give extra debug output, important for debugging problems. Please include \&\fB\-d\fP when reporting problems. .TP .fi .B \-h, \-\-help Print usage help and exit. .TP .fi .B \-v, \-\-version Print version number and exit. .SH COMMANDS .TP .fi .B apt Reads package actions from a file descriptor specified in the $\&\fBAPT_HOOK_INFO_FD\fP environment variable (typically provided by APT or other compatible package manager; \&\fBPre\-Install\-Pkgs\fP hook info protocol version 3 is expected \- see \&\fBapt\.conf\fP(5) for more details). .TP .fi .B list [ \fIpackage\fP [: \fIarch\fP ][/ \fIversion\fP ] ...] Reads package names from the arguments and simply lists bugs of these packages. Package versions may be specified with a slash, as in \&\fBapt/1\.0\fP for example. Package architectures may be specified with a colon, as in \&\fBapt:amd64\fP or \&\fBapt:amd64/1\.0\fP (but please note that the Debian Bug Tracking System does not distinguish the architectures, hence the same bugs will be listed, regardless of the specified architecture). .TP .fi .B rss [ \fIpackage\fP [: \fIarch\fP ][/ \fIversion\fP ] ...] Reads package names from the arguments and lists bugs of these packages in RSS format. Again, package versions may be specified with a slash and architectures with a colon. .SH ENVIRONMENT VARIABLES .TP .fi .B APT_LISTBUGS_FRONTEND If this variable is set to "none", \&\fBapt\-listbugs\fP will not execute at all; this might be useful if you would like to script the use of a program that calls \&\fBapt\-listbugs\fP. .TP .fi .B http_proxy If $\&\fBhttp_proxy\fP is set, the value is used for HTTP Proxy, unless proxy settings are found in APT configuration (see below). .TP .fi .B APT_HOOK_INFO_FD File descriptor from which package actions will be read (APT or other compatible package managers are expected to write information to this file descriptor and to properly set this environment variable). .SH CONFIGURATION FILE .PP \&\fBapt\-listbugs\fP reads the APT configuration (see \&\fBapt\.conf\fP(5) for more details). The following configuration options are recognized: .TP .fi .B Acquire::http::Proxy Default HTTP Proxy setting (overrides any $\&\fBhttp_proxy\fP environment variable value). An empty string or the special keyword "DIRECT" will disable proxy. .TP .fi .B Acquire::http::Proxy\-Auto\-Detect Automatic HTTP Proxy discovery (overrides the default HTTP Proxy setting and any $\&\fBhttp_proxy\fP environment variable value). It can be used to specify an external command that is expected to output the proxy on stdout. .TP .fi .B Acquire::http::Proxy::bugs.debian.org Specific HTTP Proxy setting (overrides any other proxy setting). Useful for setting HTTP proxy for \&\fBapt\-listbugs\fP. The special keyword "DIRECT" will disable proxy. .TP .fi .B AptListbugs::Severities Default (comma\-separated) list of bug severities to be shown. When this option is not set, the list is "critical,grave,serious", unless explicitly altered by using the \&\fB\-s\fP command\-line option. On the other hand, when this option is set, the list of severities is its value, unless explicitly altered by using the \&\fB\-s\fP command\-line option. .TP .fi .B AptListbugs::IgnoreRegexp Bugs to ignore when in apt mode. This is evaluated using Ruby regular expressions: if the bug title matches, the bug is ignored. Default: nothing. A possible suggested value is "FTBFS", since those bugs tend to not affect the user. .TP .fi .B AptListbugs::QueryStep Maximum number of packages to be queried (on the Debian Bug Tracking System) in a single batch. Default value is 200. The query operation is performed in batches of at most \&\fBQueryStep\fP packages, for performance reasons; setting a lower value may slow down \&\fBapt\-listbugs\fP, but may increase reliability on poor network links. .TP .fi .B AptListbugs::ParseStep Maximum number of bug reports to be queried (on the Debian Bug Tracking System) and parsed in a single batch. Default value is 200. The query and parse operation is performed in batches of at most \&\fBParseStep\fP bugs, for performance reasons; setting a lower value may slow down \&\fBapt\-listbugs\fP, but may increase reliability on poor network links. .TP .fi .B AptListbugs::DebugFile File for the debug output. Default value is stderr. When set, the specified file will be overwritten with the debug output, if the \&\fB\-d\fP option has been passed. .SH OUTPUT EXAMPLE .nf \& [bug severity] bugs of [package] ([current version] \-> [package version to be installed]) <[state of bug report]> \& [bN] \- [#bug] \- [bug title] [(Fixed: fixed version, if it's fixed in a future version)] \& Summary: \& [package]([number of] bugs) .fi .PP e.g.: .nf \& important bugs of apt\-listbugs (0.0.47 \-> 0.0.49) \& b1 \- #332442 \- apt\-listbugs: Apt\-listbugs doesn't actually download any bug reports \& b2 \- #389903 \- apt\-listbugs: Does not offer to exit if timeout occurs fetching reports \& Summary: \& apt\-listbugs(2 bugs) .fi .SH EXIT STATUS .TP .fi .B 0 If the program ran successfully and (when in apt mode) you decided to continue with the installation/upgrade. Or otherwise, if a SIGUSR1 was received (for instance because you issued the command \&\fBkillall \-USR1 apt\-listbugs\fP). .TP .fi .B 1 If an error occurred. .TP .fi .B 10 If the program ran successfully in apt mode, but you decided to abort the installation/upgrade. .TP .fi .B 130 If a SIGINT was received (for instance because you pressed [Ctrl+C]). .PP N.B.: When the program is invoked by APT, any non\-zero exit status will cause the installation/upgrade to be aborted. .SH FILES .TP .fi .B \fI/etc/apt/preferences.d/apt\-listbugs\fP Version preferences file fragment for APT managed by \&\fBapt\-listbugs\fP: this is where the package pins are added by the \&\fBapt\-listbugs\fP program and removed by its daily cron job or systemd timer. This file is managed automatically and there's normally no need to modify it by hand. .TP .fi .B \fI/var/lib/apt\-listbugs/ignore_bugs\fP Automatic list of bug numbers to be ignored by \&\fBapt\-listbugs\fP: this is where the program saves the bug numbers that the user decided to ignore. This file is managed automatically and there's normally no need to modify it by hand. .TP .fi .B \fI/etc/apt/listbugs/ignore_bugs\fP User list of bug numbers and packages to be ignored by \&\fBapt\-listbugs\fP: this is where the (root) user may manually add bug numbers or package names that \&\fBapt\-listbugs\fP will ignore. This file is only read by \&\fBapt\-listbugs\fP, but never modified: the (root) user has to edit it by hand. The format is: one bug number or package name per line; lines whose first non\-blank character is '#' are treated as comments and skipped entirely. .TP .fi .B \fI/etc/apt/apt.conf\fP and \fI/etc/apt/apt.conf.d/*\fP Default APT configuration files (see \&\fBapt\.conf\fP(5) for more details). .TP .fi .B \fI/etc/apt/apt.conf.d/10apt\-listbugs\fP Configuration file fragment for APT containing options related to \&\fBapt\-listbugs\fP: this is the recommended place where the (root) user may tweak the behavior of \&\fBapt\-listbugs\fP, but usually no customization is required. .SH AUTHORS .PP 2002 \- 2004: \&\fBapt\-listbugs\fP was originally written by Masato Taruishi . .PP 2006 \- 2008: Junichi Uekawa rewrote it to handle BTS Versioning features and the SOAP interface. The \&\fB\-\-bugs\fP option was added by Francesco Poli in 2008. .PP 2009 \- 2010: \&\fBapt\-listbugs\fP was maintained by Francesco Poli and Ryan Niebur .PP 2011 \- 2012: maintenance was carried on by Francesco Poli and Thomas Mueller . .PP 2013 \- present day: \&\fBapt\-listbugs\fP has been maintained by Francesco Poli. .PP The latest source code is available from https://salsa.debian.org/frx\-guest/apt\-listbugs .SH SEE ALSO .PP \&\fBapt\.conf\fP(5), \&\fBsensible\-browser\fP(1), \&\fBxdg\-open\fP(1), \&\fBwww\-browser\fP(1), \&\fBquerybts\fP(1)