cower - a simple AUR downloader
Usage: cower <operation> [ options ] [ targets ]
cower is a simple tool to get information and download packages from the Arch User Repository (AUR). Invoking cower consists of supplying an operation, any applicable options, and usually one or more targets. If a target is specified as a lone dash (-), additional targets will be read from stdin.
- -d, --download
Download target. Pass this option twice to fetch uninstalled dependencies (done recursively).
- -i, --info
Show info for target.
- -m, --msearch
Search for packages maintained by target. This is a synonym for searching with --by=maintainer.
- -s, --search
Search for packages with the target(s) as the search term(s). Queries with multiple targets will return the result of the intersection of all query results. Extended regex patterns as defined by POSIX in regex(7) are allowed.
Note: Regex is more or less implemented as a hack, since the AUR does not actually support this. cower will search based on the first span of at least 2 consecutive non-regex characters it finds and will filter using the regular expression provided, afterwards. There's no guarantee that complex patterns will return expected results.
- -u, --update
Check foreign packages for updates in the AUR. Without any arguments, all manually installed packages will be checked. If targets are supplied, only those targets will be checked. This operation can be combined with the --download operation. cower will exit with a non-zero status if and only if updates are available.
Search by one of name, name-desc, or maintainer to search for packages by their name, name and description, or by the package maintainer, respectively. This option only makes sense with the --search command. The default is to search by name-desc.
Note: this also has an effect on how regular expressions are applied to the returned results. When searching by name, the pattern will only apply to the name and not the description. Regular expressions are never applied when searching by maintainer.
- -c, --color[=WHEN]
Use colored output. WHEN is never, always or auto. Color will be disabled in a pipe unless WHEN is set to always.
Point cower at a domain other than the default of aur.archlinux.org.
Show debug output. This option should be passed first if used.
- -f, --force
Overwrite existing files when downloading.
Print output from --info, --search, and --msearch operations described by the provided format string. See the FORMATTING section.
- -h, --help
Display the help message and quit.
Ignore a package upgrade. Can be used more than once. Also accepts a comma delimited list as a single argument. Packages listed in pacman's IgnorePkg directive are honored.
Ignore a binary repo when checking for updates. Can be used more than once. Also accepts a comma delimited list as a single argument. When the argument to this option is left blank, all binary repos are ignored and only the AUR is queried.
Specify a delimiter when printing list formatters, default to 2 spaces. This option only has an effect when using the -ii operation combined with --format. See the FORMATTING section.
Disable regex search, interpret target as a literal string.
The reverse of --ignore-ood.
- -o, --ignore-ood
Ignore all results marked as out of date.
- --sort=KEY, --rsort=KEY
Sort the results in ascending or descending order, respectively, by KEY where KEY is firstsubmitted, lastmodified, maintainer, name, outofdate, version, votes or popularity.
- -p, --from-pkgbuild
Interpret non-option arguments to cower as paths to PKGBUILDs which will be parsed for depends and makedepends. These dependencies will then be re-used as package targets for cower.
- -q, --quiet
- -t DIR, --target=DIR
Download targets to alternate directory, specified by DIR. Either a relative or absolute path can be specified, but all components of the path must exist.
Limit the number of threads created, with a default of 10. In practice, you should never need to bother with this setting. Other than the case of an --update operation with no targets specified, a thread is created for each target provided to cower. If cower has fewer targets than threads specified, the number of threads created will instead be the number of targets.
Specify how long libcurl is willing to wait for a connection to be made, in seconds. By default, this is 10 seconds. Setting this value to 0 will disable timeouts.
- -v, --verbose
Output more. This primarily affects the update operation.
- -V, --version
Display version and exit.
When the --format option is used with the --search, --msearch, or --info operations, the following sequences are interpreted within the formatter:
%a last modified %b package base %d description %i id %m maintainer %n name %o votes %p AUR page %r popularity %s submission date %t out of date (yes/no) %u project URL %v version %w out of date (unix timestamp) %% a literal %
The following sequences refer to multivalued items which are delimited by the --listdelim option.
%C conflicts %D depends %K checkdepends %M makedepends %O optdepends %P provides %R replaces %G groups %L licenses %W keywords
Full printf formatter support with justification and field width is supported, e.g. '%-20o'. Simple backslash escape sequences are also honored for lowercase formatters -- see printf(1).
NB: Many of these fields are optional, and not all PKGBUILDs will define all available fields.
cower honors a config file which will be looked for first at:
and falling back to:
A documented example config file can be found at /usr/share/doc/cower/config.
Attempting to use --update with a sufficiently large number of foreign packages will cause the AUR to respond with HTTP 414.
Dave Reisner <email@example.com>