SYNOPSIS
$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/*DESCRIPTION
Cupt uses the same configuration syntax as apt.conf(5), which see.CONFIGURATION VARIABLES
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, dpkg::options, dpkg::pre-invoke, dpkg::post-invoke, dpkg::pre-install-pkgs, gpgv::trustedkeyring, quiet
See apt.conf(5) for their meanings.
Secondly, Cupt introduces cupt-specific configuration variables.
variable types
- 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
variables
- 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::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
``no''.
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::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.