cupt(1)
NAME
cupt - console package management tool
SYNOPSIS
cupt [ option... ] action [ { parameter | option } ... ]
ACTIONS
- Query actions
- config-dump
If invoked without arguments, prints all configuration variables to standard output.If one argument is supplied, it is treaten as a configuration
option and only the value of this option is printed (empty string
in case of undefined value). Note that only scalar (non-list)
options can be retrieved in this mode.Examples:"cupt config-dump""cupt config-dump acquire::http::timeout" - show
prints version info of specified packagesThis subcommand receives list of "Binary package version
expression"'s, see below.Specific options:--all-versions,-aprint all versions of the package, not selected oneCorresponding configuration variable: apt::cache::allversions--no-all-versionsdon't print all versions of the package, use only selected oneCorresponding configuration variable: apt::cache::allversions--with-release-infoalso print information about release info where the version of the package liveExamples:"cupt show qmmp""cupt show --all-versions qmmp debianutils""cupt show --with-release-info audacious/testing apt
debianutils=2.3.38" - search
searches for packages that contains some string within package
names and package descriptionsThis subcommand receives a list a Perl-compatible Regular
Expressions (PCRE) to search. Only those packages will be printed
that contain all of specified patterns.Specific options:--case-sensitivesearch case-sensitively--names-only,-nsearch only in package namesCorresponding configuration variable: apt::cache::namesonlyExamples:"cupt search nvidia driver""cupt search --case-sensitive Vim""cupt search -n vim""cupt search "package manager"" - depends
prints dependency relation expressions for given version of packageBy default prints 'Pre-Depends', 'Depends' and 'Recommends' for the version.This subcommand receives list of "Binary package version
expression"'s, see below.Specific options:--with-suggeststake also 'Suggests' dependencies into account--recurseprocess the dependencies recursivelyCorresponding configuration variable:
apt::cache::recursedependsExamples:"cupt depends nlkt perl/stable""cupt depends --important xserver-xorg-core""cupt depends --recurse xmlto" - rdepends
same as depends, but prints reverse relations instead of forward
ones - policy
prints available versions with pins and release info for each
package nameThis subcommand receives the list of package names.Examples:"cupt policy dpkg""cupt policy libpqxx-2.6.9ldbl libpqxx-3.0" - pkgnames
prints package names that start with a supplied suffixIf no suffix is given, prints all package namesExamples:"cupt pkgnames""cupt pkgnames liba"
- changelog
displays changelog for given versions of packagesThis subcommand receives list of "Binary package version
expression"'s, see below.Works only with installed packages and official Debian and Ubuntu
repositories.Examples:"cupt changelog dpkg/installed""cupt changelog --installed-only dpkg nlkt lintian""cupt changelog libqtcore4" - copyright
displays copyright for given versions of packagesThis subcommand receives list of "Binary package version
expression"'s, see below.Works only with installed packages and official Debian and Ubuntu
repositories.Examples:"cupt copyright dpkg/installed""cupt copyright --installed-only dpkg nlkt lintian""cupt copyright libqtcore4" - screenshots
open a browser window/tab with screenshots of given packages.This subcommand receives list of package names.Example:"cupt screenshots arora"
- query-specific options
- --important,-i
don't take 'Recommends' dependencies into accountCorresponding configuration variable: apt::cache::important
- --installed-only
work only with installed versions of packages; valuable only for
"show", "depends", "rdepends", "search", "pkgnames", "changelog"
actions - Management actions
- update
updates package indexesThis subcommand receives no arguments.Example:"cupt update"
- install
installs, upgrades or downgrades specified packagesThis subcommand receives list of "Binary package version
expression"'s, see below.If some version of package was already installed, this command will upgrade/downgrade it; otherwise, the package will be freshly
installed.Examples:"cupt install nlkt""cupt install devscripts xserver-xorg/experimental
xfce4-mixer=4.6.0-2" - remove
removes specified packagesThis subcommand receives the list of package names.Examples:"cupt remove nlkt""cupt remove devscripts kde4-minimal"
- full-upgrade
performs as more upgrades of the installed packages as possible,
the recommended way to do upgradesThis subcommand is usually invoked without any further parameters:"cupt full-upgrade"List of "Binary package version expression"'s can be however
specified as additional parameters.Example: the command "cupt full-upgrade xserver-xorg/installed"
will try to upgrade your system, however preserving package
'xserver-xorg' to be sticked with currently installed version. - safe-upgrade
the same as full-upgrade, but with the change that problem resolver won't try to remove non-automatically installed packages in order
to upgrade more packages, equivalent of 'full-upgrade --no-remove'. - markauto
marks specified packages as automatically installedThis subcommand receives the list of package names.Examples:"cupt markauto libstreamanalyzer0""cupt markauto lsof gimp-data"
- unmarkauto
marks specified packages as manually installedThis subcommand receives the list of package names.Examples:"cupt unmarkauto kpogre""cupt unmarkauto dpkg-dev"
- satisfy
performs all needed operations to satisfy list of specified
relationsThis subcommand receives the list of relations or relation lines.
Relation and relation lines has the same syntax as defined in
Debian Policy AX7.1.Examples:"cupt satisfy "kmail (>= 4:4.2)"""cupt satisfy "xserver-xorg (>> 1.6)" "xserver-common (<< 1.6.1~)"""cupt satisfy "nautilus (>= 2.16.0), libnautilus-extension1 (>=
2.16.0), wget (>= 1.10.0)"" - clean
removes all deb archives from cache on diskThis subcommand receives no arguments.Example: "cupt clean"
- autoclean
removes deb archives which are not available in package indexes
from cache on diskThis subcommand receives no arguments.Example: "cupt autoclean" - query-specific options
- --no-remove
disallow problem resolver to remove manually installed packages.
Packages that are marked to remove/purge in the command line will
be remove/purged as usual.Corresponding configuration option: cupt::resolver::no-remove - --no-auto-remove
don't try to remove automatically installed packages after doing
requested actionsCorresponding configuration option: cupt::resolver::auto-remove - --simulate,-s
don't modify anything in the system, just print supposed actionsDoesn't require root privileges.Corresponding configuration option: cupt::worker::simulate
- --resolver=
string, determines type of resolver: can befairmedium-class resolver. It chooses best possible solution (by
overall score) each time. This is a default resolver.fullfull resolver. Guaranteed to suggest solution in precise order from the best to the worst result score (by the resolver's
opinion). Latter means that resolver builds full resolve tree
before suggesting the solutions, which means large RAM and
speed penalties. Use it with caution.Corresponding configuration option: cupt::resolver::type - --max-solution-count=
number, determines how many maximum solutions will resolver store
in memory. This option prevents large memory grows by purging away solutions with worst scores. Defaults to 256. Note that very
complex requests or requests on multi-repository system will
increase size of solution tree dramatically, so prepare to play
with increasing this option accordingly.Corresponding configuration option:
cupt::resolver::max-solution-count - --no-install-recommends,-R
cupt installs recommended packages by default, this option cancels described behaviorCorresponding configuration option: apt::install-recommends
- --show-versions,-V
when displaying actions preview prompt, display also versions of
packages - --show-size-changes,-Z
when displaying actions preview prompt, display also changes in
disk space usage for each package - --show-reasons,--show-deps,-D
when displaying actions preview prompt, display also reasons why
this action was considered to performCorresponding configuration option: cupt::resolver::track-reasons - --no-install-unpacked
By default cupt will implicitly install all already unpacked
packages, this is needed, for example, for proper continue of
interrupted upgrades. This option cancels behavior described. - --download-only,-d
stop after download stage, don't modify the system; not applicable for "markauto" and "markauto" actionsCorresponding configuration option: cupt::worker::download-only
- management modifiers
- - remove the package, can be used in non-remove actions
Examples:"cupt install kde4 icewm-" - install the package 'kde4' and remove the package 'icewm' simultaneously."cupt full-upgrade iceweasel- icedove-" - upgrade the system,
deleting iceweasel and icedove - + install the package, can be used in remove actions
Examples:"cupt remove kde konqueror+" - remove kde, but install/upgrade
konqueror"cupt remove kde konqueror/installed+" - remove kde, but leave
konqueror
EXPRESSIONS
- This section documents some common expressions used by actions.
- Binary package version expression
- package_name[modifier]
- selects one version of given binary package.
- Possible modifiers:
- <none>
selects policy version of the packageExample: "audacious".
- =<version string>
selects specified version of the packageExample: "audacious=1.5.1-2"
- /<distribution>
selects a version from specified distribution (archive name or
codename)Examples: "audacious/lenny" (by codename), "audacious/stable" (by
archive name) - /installed
selects installed version of the packageExample: "audacious/installed"
COMMON OPTIONS
- --option=,-o
- sets specified configuration option, syntax: "<name>=<value>"
- Examples:
- "cupt remove nlkt -o 'cupt::resolver::keep-recommends=0'" (regular option)
- "cupt remove nlkt -o 'apt::neverautoremove::=libcanberra0" (list
option) - --target-release=,--default-release=,-t
- sets preferred release to pick up packages from, you can specify
codename or archive name - Corresponding configuration option: apt::default-release
- Examples: "cupt install -t unstable xserver-xorg", "cupt -t squeeze full-upgrade"
- --purge
- when removing packages, also delete their configuration files
- Corresponding configuration option: cupt::worker::purge
- --quiet,-q
- don't output anything to standard output
CONFIGURATION VARIABLES
Firstly, Cupt uses following APT configuration variables:
acquire::*::timeout, acquire::*::proxy, 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::allowunauthenticated, 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::state, dir::state::extendedstates,
dir::state::lists, 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 recognizes (but doesn't use) following configuration
variables:
apt::cache-limit, rpm::pre-invoke, rpm::post-invoke
Thirdly, Cupt introduces following cupt-specific configuration
variables:
- acquire::http::allow-redirects
- boolean (0/1), specifies whether should downloader follow HTTP
redirects. True by default. - cupt::downloader::max-simultaneous-downloads
- positive number, specifies maximum number of simultaneous downloads
- cupt::update::keep-bad-signatures
- boolean (0/1), specifies whether to keep signature files that
failed GPG check when doing update. False by default. Setting this option to true will break compatibility with APT in area of
signature checking. - cupt::resolver::keep-recommends
- boolean (0/1), specifies whether should resolver try to keep
already installed recommended packages or not. True by default. - cupt::resolver::keep-suggests
- boolean (0/1), specifies whether should resolver try to keep
already installed suggested packages or not. False by default. - cupt::resolver::auto-remove
- see --no-auto-remove/
- cupt::resolver::max-solution-count
- see --max-solution-count
- cupt::resolver::external-command
- a preview-only, experimental option to use external resolver using CUDF protocol Don't use it unless you know what you are doing.
- Example: "cupt -s safe-upgrade -o
"cupt::resolver::external-command=cat > cudfout.txt"" - cupt::resolver::no-remove
- see --no-remove
- cupt::resolver::track-reasons
- see --show-reasons
- cupt::resolver::type
- see --resolver
- cupt::worker::defer-triggers
- boolean (0/1), specifies whether should worker defer dpkg trigger
processing to the end of the whole operation or not. Being set to
true, speeds up large-amount actions, but if the operation will
somewhy interrupted, leaves system in the interim trigger state,
which can be fixed by manual run of 'dpkg --triggers-only
--pending' command. True by default. - cupt::worker::download-only
- see --download-only
- cupt::worker::purge
- boolean (0/1), specifies whether purge packages in addition to
removing or not. False by default. - cupt::worker::simulate
- see --simulate
- debug::resolver
- boolean (0/1), if true, resolver will print a lot of debug
information to the standard error - debug::worker
- boolean (0/1), if true, worker will print some debug information to the standard error
- debug::gpgv
- boolean (0/1), if true, cache will print some debug information
while verifying signatures to the standard error - debug::downloader
- boolean (0/1), if true, the downloader manager will print some
debug messages
DEFINITIONS
TODO
REPORTING
Please report all bugs in Cupt to Debian BTS using reportbug(1).
The discussion channel about Cupt is irc://irc.debian.org#cupt.
SEE ALSO
AUTHOR
- Eugene V. Lyubimkin <jackyf.devel@gmail.com>