cupt.conf - configuration file for Cupt
$APT_CONFIG, /etc/apt/apt.conf,
/etc/apt/apt.conf.d/*, $CUPT_PRE_CONFIG,
/etc/cupt/pre.conf, /etc/cupt/cupt.conf, /etc/cupt/cupt.conf.d/*
Cupt uses the same configuration syntax as apt.conf(5),
which see.
Firstly, Cupt uses following APT configuration variables:
acquire::*::dl-limit, acquire::*::timeout, acquire::*::proxy,
acquire::http::allowredirect, acquire::retries, apt::cache::allversions,
apt::cache::important, apt::cache::namesonly, apt::cache::recursedepends,
apt::default-release, apt::install-recommends, apt::install-suggests,
apt::neverautoremove, apt::get::assume-yes, apt::get::allowunauthenticated,
apt::get::automaticremove, apt::get::list-cleanup, apt::get::purge,
apt::update::pre-invoke, apt::update::post-invoke,
apt::update::post-invoke-success, dir, dir::bin::dpkg, dir::cache,
dir::cache::archives, dir::etc, dir::etc::sourcelist, dir::etc::sourceparts,
dir::etc::parts, dir::etc::main, dir::etc::preferences,
dir::ignore-files-silently, dir::state, dir::state::extendedstates,
dir::state::status, dir::etc::trusted, dir::etc::trustedparts dpkg::options,
dpkg::pre-invoke, dpkg::post-invoke, dpkg::pre-install-pkgs, quiet
See apt.conf(5) for their meanings.
Secondly, Cupt introduces cupt-specific configuration
variables.
- boolean
- false may be specified as "0" or "false" or
"no", everything else interpretes as true
if undefined, interpretes as false
- integer
- signed 32-bit integer on 32-bit systems, signed 64-bit integer on 64-bit
systems
if undefined, interpretes as 0
- string
- interpreted as is
if undefined, interpretes as empty string
- list
- list of strings
if undefined, intepretes as empty list
- cupt::cache::limit-releases::by-*::type
- string, determines the type of limiting repository releases to use
All repository indexes which are disallowed by this option are
not added to the package cache, in other words, they are completely
hidden.
'*' can be 'archive' or 'codename'
Possible values:
- none
- No limiting will be done for this category. The default.
- include
- Only values of the 'cupt::cache::limit-releases::by-*' option will be
allowed.
- exclude
- Only values which are not present in the value of the
'cupt::cache::limit-releases::by-*' option will be allowed.
Example:
If you set 'cupt::cache::limit-releases::by-archive::type' to
'include' and 'cupt::cache::limit-releases::by-archive' to '{
"stable", "testing" };', only repositories with archive
names 'stable' and 'testing' will be added to the cache.
- cupt::cache::limit-releases::by-*
- list of allowed/disallowed release attributes, see above
- cupt::cache::pin::addendums::but-automatic-upgrades
- integer, specifies priority change for versions that come only from
sources which have both 'not automatic' and 'but automatic upgrades'
flags. Defaults to 4200.
- cupt::cache::pin::addendums::downgrade
- integer, specifies priority change for versions that are smaller than
currently installed. Defaults to -10000.
- cupt::cache::pin::addendums::hold
- integer, specifies priority increase for versions that are put on hold.
Defaults to 1000000. Set this option to 0 if you do not want to obey
holds. You may want to increase this option in (very unlikely to happen)
situations: when you have thousands of manually installed packages and
very large query; when you have a manually crafted pin priorities system
with very large pin values.
- cupt::cache::pin::addendums::not-automatic
- integer, specifies priority increase for versions that come only from 'not
automatic' sources. Defaults to -4000.
If you change the value of this option, you might want to
change the value of the option
"cupt::cache::pin::addendums::but-automatic-upgrades"
accordingly.
- cupt::cache::release-file-expiration::ignore
- boolean, if set to true, Cupt will ignore the fact that a Release file is
expired and use it anyway. False by default.
Warning! Setting this option to true will make the system
vulnerable to a replay attack on package manager indexes.
- cupt::console::allow-untrusted
- boolean, don't treat using untrusted packages as dangerous action
- cupt::console::assume-yes
- boolean, see cupt(1) --assume-yes
- cupt::console::actions-preview::package-indicators::manually-installed
- boolean, whether to print "{m}" prefix
for manually installed packages in non-color mode. Enabled by
default.
- cupt::console::actions-preview::package-indicators::automatically-installed
- boolean, whether to print "{a}" prefix
for automatically installed packages in non-color mode. Disabled by
default.
- cupt::console::actions-preview::show-not-preferred
- string, determines whether packages which will have a not preferred
version after the proposed changes are done should be shown in the actions
preview. Defaults to 'for-upgrades'.
Possible values:
- no
- Do not show.
- for-upgrades
- Show for upgrade subcommands (namely, for "full-upgrade",
"safe-upgrade" and the second part of
"dist-upgrade").
- yes
- Show always.
- cupt::console::actions-preview::show-archives
- boolean, if true, release archive(s) will be shown for each package in the
actions preview. False by default.
- cupt::console::actions-preview::show-codenames
- boolean, if true, release codename(s) will be shown for each package in
the actions preview. False by default.
- cupt::console::actions-preview::show-components
- boolean, if true, release component(s) will be shown for each package in
the actions preview. False by default.
- cupt::console::actions-preview::show-details
- boolean, if true, details of planned actions will be shown in the actions
preview. True by default.
- cupt::console::actions-preview::show-empty-versions
- boolean, if true, empty versions (i.e. removed or not installed packages)
will be shown as '<empty>' instead of being omitted
- cupt::console::actions-preview::show-size-changes
- boolean, if true, a change in the disk space usage will be shown for each
package in the actions preview. False by default.
- cupt::console::actions-preview::show-reasons
- boolean, see cupt(1) --show-reasons
- cupt::console::actions-preview::show-summary
- string, tristate ("yes", "no" or "auto"),
controls whether summary of planned actions will be shown in the actions
preview or not. Defaults to "yes".
Currently, "auto" means that summary will be shown
when there are >= 100 change entries in total.
- cupt::console::actions-preview::show-versions
- boolean, if true, a version will be shown for each package in the actions
preview. False by default.
- cupt::console::actions-preview::show-vendors
- boolean, if true, a version will be shown for each package in the actions
preview. False by default.
- cupt::console::show-progress-messages
- boolean, if true, package management actions will print stage messages
("Building a cache", "Resolving possible unmet
dependencies" etc.). True by default.
- cupt::console::use-colors
- string, specifies whether to use colors in the console interface. Defaults
to "auto".
For now concerns only the action preview.
Available values:
- no
- Don't use colors.
- yes
- Use colors.
- auto
- Use colors if the standard output is a terminal and a terminal type seem
to allow colors.
- cupt::console::warnings::removal-of-essential
- boolean, treat removals of essential packages as dangerous action. True by
default.
- cupt::console::warnings::removal-of-important
- boolean, treat removals of important packages as dangreous action. True by
default.
- cupt::directory
- string, base directory for all cupt::directory::* options
- cupt::directory::configuration
- string, base directory for Cupt-specific configuration files
- cupt::directory::configuration::main
- string, relative file path for the Cupt main configuration file (same
format as apt.conf(5))
- cupt::directory::configuration::main-parts
- string, relative directory path for additional Cupt configuration files
(same format as apt.conf(5))
- cupt::directory::configuration::pre
- string, relative file path for the Cupt preconfiguration file which is
read before paths of any other configuration files are calculated. This is
the only place where one can effectively override default values of
dir::etc and cupt::directory::configuration options and/or their
suboptions. The environment variable CUPT_PRE_CONFIG overrides this
option if defined.
- cupt::directory::log
- string, relative file path for the log file
- cupt::directory::state
- string, directory which contains Cupt state info
- cupt::directory::state::lists
- string, directory for repository indexes
- cupt::downloader::max-simultaneous-downloads
- integer, positive, specifies maximum number of simultaneous downloads.
Defaults to 2.
- cupt::downloader::protocols::protocol::priority
- integer, positive, defines the priority of download protocol
protocol, determines an order in which different URIs for the same
file will be tried. Defaults to 100.
- cupt::downloader::protocols::protocol::methods::method::priority
- positive number, defines the priority of download method method,
the method with maximum priority will be used for downloading the URI of
protocol protocol. Defaults to 100.
- cupt::downloader::protocols::protocol::methods
- list, names of the methods available to download protocol
protocol
- cupt::languages::indexes
- string, specifies localizations of what languages should be used for
repository indexes. Defaults to "environment,en".
The value is comma-delimited (no spaces allowed) list of
localization specificators. Localization specificator is either:
- environment
- A special string which is substituted by the current locale (precisely, by
a value of the environment variable LC_MESSAGES).
- none
- A special string which indicates no localization.
- language_code[_country_code]
- A language code (for example: 'fi', 'fr', 'ru') or a language code with a
country code (for example, 'pt_BR', 'zh_CN').
If the localization specificator contains a country code, the
additional specificator without a country code will be implicitly used as
fallback.
Localization specificators should be listed in the preference
order. Duplicates are allowed but ignored.
Examples:
- fi,ru,fr
- Download Finnish, Russian and French translations. For every description,
try to use Finnish translation; if it's not available, try to use Russian
one; if it's also not available; try to use French one; else use an
original one.
- pt_BR
- Download Portuguese (Brazil) and Portuguese localizations. Use Portuguese
(Brazil) translation; if it's not available, use Portuguese translation;
else use an original one.
- de,environment,fr_FR
- (Supposing LC_MESSAGES is 'pl_PL.UTF-8')
Download and use these translations, in the following order:
German, Polish (Poland), Polish, French (France), French.
- cupt::update::check-release-files
- boolean, if set, Release files will be checked for the validity (including
the expiration check and a signature if present) at the download stage.
True by default.
- cupt::update::compression-types::*::priority
- integer, defines preference to download compressed files with higher
priority first. 100 by default.
'*' can be 'gz', 'bz2', 'lzma', 'xz', and 'uncompressed'.
Set some option to <100 value to make it low-precedence
than default, and >100 to make it high-precedence than default.
If some methods have the equal priority (which is the default
setting), then files with smaller size with be chosen over the files
with bigger size.
Example:
You have a low-speed CPU but rather high-speed internet
connection and want to prefer gzip over lzma and lzma over bzip2. Then
you have to set options like:
cupt::update::compression-types
{
gz::priority "200";
lzma::priority "150";
}
Also, if you have a local mirror, which may store uncompressed
indexes too (an official Debian archive doesn't store them), you may set
also
cupt::update::compression-types::uncompressed::priority
"300";
- cupt::update::generate-index-of-index
- boolean, specifies whether to build "index-of-index" for every
Packages and Sources. If set to true, slightly increases the time of
postprocessing after downloading new metadata files but speedes up
significantly the initialization time for every invocation. True by
default.
- cupt::update::use-index-diffs
- boolean, specifies whether to try downloading repository index deltas and
apply them locally before downloading the full index. True by default.
When turned on, this option saves bandwidth but increases CPU
and disk usage while updating. On the fast unlimited connections (say,
>= 2 Mbit/s, but heavily depends on many other factors) you would
likely want to turn off this option.
- cupt::resolver::keep-recommends
- boolean, specifies whether should resolver try to keep already installed
recommended packages or not. True by default.
- cupt::resolver::keep-suggests
- boolean, specifies whether should resolver try to keep already installed
suggested packages or not. False by default.
- cupt::resolver::auto-remove
- boolean, see cupt(1) --no-auto-remove
- cupt::resolver::max-leaf-count
- integer, specifies how many leaves the solution tree will grow before
resolver will give up. -1 means infinite. -1 by default.
- cupt::resolver::max-solution-count
- integer, positive, see cupt(1) --max-solution-count
- cupt::resolver::no-autoremove-if-rdepends-exist
- list of regular expressions; if the package name matches to any of those
regular expressions it will be not considered for auto-removal if there
are any reverse dependencies installed. Empty by default.
Example (simplified real situation):
Package: xserver-xorg
Depends: xserver-xorg-video-all | xorg-driver-video
Package: xserver-xorg-video-nv
Provides: xorg-driver-video
Package: xserver-xorg-video-radeon
Provides: xorg-driver-video
You have:
xserver-xorg: manually installed
xserver-xorg-video-all: not installed
xserver-xorg-video-nv: automatically installed
xserver-xorg-video-radeon: automatically installed
Both xserver-xorg-video-nv and xserver-xorg-video-radeon
satisfy the dependency of xserver-xorg, so only one of them is needed in
the system. Therefore, by default one of these two will be considered
for auto-removal. If you add a regular expression 'xserver-xorg-video.*'
to the value of this option, none of packages providing
xorg-driver-video will be considered for auto-removal as long as
xserver-xorg is installed.
- cupt::resolver::no-remove
- boolean, see cupt(1) --no-remove
- cupt::resolver::synchronize-by-source-versions
- string, this option controls whether and how the native resolver will
attempt to keep all binary packages from the same source package at the
same source version
This option uses the information from source packages. No
synchronization will be performed for the versions which have not a
corresponding source version in the repository.
Possible values:
- none
- Don't attempt to synchronize. This is the default value.
- soft
- Don't forbid any modifications to the packages and attempt to synchronize
related binary packages when possible upon the modifications of certain
binary package.
- hard
- Forbid any modifications to the packages when at least one related binary
package cannot be synchronized with the modified one.
- cupt::resolver::track-reasons
- boolean, specifies whether 'suggestedPackages::reasons' is filled in the
Resolver::Offer. False by default.
- cupt::resolver::type
- string, see cupt(1) --resolver
- cupt::resolver::score::<part>
- The group of integer options which control internal resolver's score
calculation. Values are absolute.
<part> can be one of:
- new
- installing a new package
- removal
- removal of an existing package
- removal-of-essential
- removal of an existing essential package (a general removal option
is applied as well)
- removal-of-autoinstalled
- removal of an automatically installed package (a general removal
option is applied as well)
- upgrade
- installing a higher version of an existing package
- downgrade
- installing a lower version of an existing package
- position-penalty
- when several actions may be performed to resolve a problem, apply N
penalties to N-th action (counting from 0)
- quality-adjustment
- the value will be added to each action's score
- unsatisfied-recommends
- some 'recommends' dependency is not satisfied (when requested)
- unsatisfied-suggests
- some 'suggests' dependency is not satisfied (when requested)
- failed-synchronization
- some source version synchronization cannot be performed (when
cupt::resolver::synchronize-source-versions is 'soft')
- version-factor::common
- defines (in percents), how much version score difference affects the
action score
- version-factor::negative
- defines (in percents) scaling of negative version scores (applied after
version-factor)
- version-factor::priority-downgrade
- defines (in percents) scaling of version score if version priority
difference is negative. For calculations regarding this factor, if there
is no original version, its priority is 0, if there is no supposed
version, its priority is the default priority for versions from a default
package archive.
- cupt::worker::archives-space-limit
- integer, bytes, positive, if set, limits the worker to not download more
than specified amount of archives, and use download-install-clean
algorithm (download archives, install packages, clean just downloaded
archives). Worker will try to split all actions into unrelated changesets
so each changeset require only limited download space. Any system changes
will be started only if changesets are generated successfully.
- cupt::worker::defer-triggers
- string, specifies whether should worker defer dpkg trigger processing to
the end of the whole operation or not. When enabled, speeds up
large-amount actions, but if the operation will somewhy be interrupted,
leaves system in the interim trigger state, which can be fixed by manual
run of 'dpkg --triggers-only --pending' command. Defaults to
"auto".
Available values:
- no
- Disable deferring triggers.
- yes
- Enable deferring triggers.
- auto
- Enable deferring triggers if enough recent version of dpkg (1.16.1, where
tiresome trigger-related bug (Debian BTS #526774) is fixed) is
installed.
- cupt::worker::download-only
- boolean, see cupt(1) --download-only
- cupt::worker::log
- boolean, whether to log performed actions or not. True by default.
- cupt::worker::log::levels::metadata
- non-negative integer, the log level for the metadata updates. 1 by
default.
- cupt::worker::log::levels::packages
- non-negative integer, the log level for the package changes
(install/upgrade/remove etc.). 2 by default.
- cupt::worker::log::levels::snapshots
- non-negative integer, the log level for the snapshot actions. 1 by
default.
- cupt::worker::purge
- boolean, specifies whether purge packages in addition to removing or not.
False by default.
- cupt::worker::simulate
- boolean, see cupt(1) --simulate
- cupt::worker::use-locks
- boolean, specifies whether Cupt protects simultaneous runs of itself
against the misuse of the common resources. True by default.
Warning! Setting this option to false will allow several
non-simulating Cupt instances to break the system when
misused.
- debug::resolver
- boolean, if true, resolver will print a lot of debug information to the
standard error. False by default.
- debug::worker
- boolean, if true, worker will print some debug information to the standard
error. False by default.
- debug::gpgv
- boolean, if true, cache will print some debug information while verifying
signatures to the standard error. False by default.
- debug::downloader
- boolean, if true, the downloader manager will print some debug messages.
False by default.
- debug::logger
- boolean, if true, the logger will print some debug messages. False by
default.