DEBTAGS(1)
NAME
debtags - Command line interface to access and manipulate Debian Package Tags
SYNOPSIS
debtags [options] <command> [options and arguments]
DESCRIPTION
debtags manages package tag data in a debian system and performs basic
queries on it.
Package data are activated or updated in the system using the debtags
update command; that must be run by root. Tag data are pulled from a
variety of sources listed in /etc/debtags/sources.list and merged
together.
Recently, a basic version of the tag data is also present in the APT
database. It is a very useful resource for applications that are not
using debtags-specific functions (such as apt-cache or grep-dctrl), but
it does not support local changes or merging from different sources.
debtags itself can also be used to perform basic queries on the Debtags system: the vocabulary can be queried with the tagshow and tagsearch commands; a package tag database can be checked against the vocabulary with the check command; packages related to a given one (or group) can be shown with the related command; the whole collection can be copied to standard output to be processed with tagcoll or other tools by the cat command; packages can be searched by tags using the grep command.
COMMANDS
debtags accepts a non-switch argument, that indicates what is the operation that should be performed:
- help [command]
- With no arguments, print a summary of available commands. If given a command name as argument, print detailed informations about that command.
- update
- Collect package tag data from the sources listed in /etc/debtags/sources.list, then regenerate the debtags tag database and
main index.
It needs to be run as root - selfcheck
- perform a series of internal self checks using the current tag data
- check <file>
- check that all the tags in the given tagged collection are present in the tag vocabulary. Checks the main database if no file is specified
- tagcat
- output the tag vocabulary
- tagshow
- show the vocabulary informations about a tag
- tagsearch <string [string [string ...]]>
- show a summary of all tags whose data contains the given strings
- show <pkg>
- show informations about a package, like apt-cache show does, but adding the tag informations from the debtags index
- related <pkg1[,pkg2[,pkg3...]]>
- Output a list of the packages that are related to the given
package or list of packages. If more than one package are to be
specified, separate them with commas.
The --distance option can be used to control how closely related the output packages should be from the package(s) specified. - cat
- output the full package tag database
- dumpavail [tag expression]
- output the full package database
- search <tag expression>
- output the names and descriptions of the packages that match the given tag expression
- grep <tag expression>
- output the lines of the full package tag database that match the given tag expression
- install <tag expression>
- Invokes apt-get install with the names of the packages matched by the given tag expression. If you want to see what packages would be installed you can use debtags search, as debtags install just calls apt-get install on all the results of an equivalent debtags search. Please note that debtags install is just a prototype feature useful for experimenting in some environments like Custom Debian Distributions. For this reason it is suggested that you use debtags just as a way to find packages, and proper package managers as the way to install them
- diff or mkpatch [filename]
- create a tag patch between the current tag database and the tag collection [filename]. Standard input is used if filename is not specified
- maintainers
- create a tagged collection of maintainers and the tags of the packages they maintain
- tag {add|rm|ls} <package> [tags...]
- General manipulation of tags, useful for automation in scripts.
It can be used in three ways:
tag add <package> <tags...> will add the tags to the given package
tag rm <package> <tags...> will remove the tags from the given package
tag ls <package> will output the names of the tags of the given package - submit [patch]
- mail the given patch file to the central tag repository.If [patch] is omitted, mail the local tag modifications.
- todo
- print a list of the installed packages that are not yet tagged
- score
- score uninstalled packages according to how often their tags appear in the packages that are installed already
- stats
- print statistics about Debtags
- smartsearch <word [word1 [+tag [-tag1 ...]]]>
- Perform a keyword search integrated with related packages.
A + prefix indicates a wanted tag. A - prefix indicates an unwanted tag. Other words indicate keywords to search.
Remember to use '--' before unwanted tags to avoid having them interpreted as command line switches. - vocfilter tagfile
- filter out the tags that are not found in the given vocabulary file
OPTIONS
This program follows the usual GNU command line syntax, with long
options starting with two dashes (`-').
Every one of the commands listed above has its own set of options. To
keep this manpage readable, all the options are presented together.
Please refer to "debtags help command" to see which options are
accepted by a given command.
Help options:
- -h, -?, --help
- print commandline help and exit.
- --version
- print the program version and exit.
- --manpage=[hooks]
- output the debtags manpage and exit.
- Other options:
- -v, --verbose
- enable verbose output.
- --debug
- enable debugging output (including verbose output). Options for
command help
Options for command update - Other options:
- --local
- do not download files when performing an update.
- --reindex
- do not download any file, just do reindexing if needed. Options
for command selfcheck
Options for command check Options for command tagcat Options for command tagshow Options for command tagsearch Options for command show Options for command related - Other options:
- -d distance, --distance=distance
- set the maximum distance to use for the "related" command (defaults to 0). Options for command cat
- Options controlling matching of packages:
- -i, --invert
- invert the match, selecting non-matching items.
- Options controlling transformations of tag data on output:
- --names
- output only the names of the packages.
- -q, --quiet
- do not write anything to standard output.
- --facets
- output only the names of the facets (mainly used for computing statistics).
- Options for command dumpavail
- Options controlling matching of packages:
- -i, --invert
- invert the match, selecting non-matching items.
- Options controlling transformations of package data on output:
- --names
- output only the names of the packages.
- -q, --quiet
- do not write anything to standard output.
- --short
- output the names of the packages, plus a short description.
- --full output the full record of package data.
- Options for command search
- Options controlling matching of packages:
- -i, --invert
- invert the match, selecting non-matching items.
- Options controlling transformations of package data on output:
- --names
- output only the names of the packages.
- -q, --quiet
- do not write anything to standard output.
- --short
- output the names of the packages, plus a short description.
- --full output the full record of package data.
- Options for command grep
- Options controlling matching of packages:
- -i, --invert
- invert the match, selecting non-matching items.
- Options controlling transformations of tag data on output:
- --names
- output only the names of the packages.
- -q, --quiet
- do not write anything to standard output.
- --facets
- output only the names of the facets (mainly used for computing statistics).
- Options for command install
- Options controlling matching of packages:
- -i, --invert
- invert the match, selecting non-matching items.
- Options for command diff
Options for command maintainers - Options controlling transformations of tag data on output:
- --names
- output only the names of the packages.
- -q, --quiet
- do not write anything to standard output.
- --facets
- output only the names of the facets (mainly used for computing statistics).
- Options for command tag
Options for command submit Options for command todo - Options controlling transformations of package data on output:
- --names
- output only the names of the packages.
- -q, --quiet
- do not write anything to standard output.
- --short
- output the names of the packages, plus a short description.
- --full output the full record of package data.
- Options for command score
Options for command stats
Options for command smartsearch - Other options:
- --relevant
- only print the tag names sorted by increasing relevance.
- --discriminant
- only print the tag names sorted by increasing discriminance. Options for command vocfilter
- Other options:
- --vocabulary=file
- vocabulary file to use instead of the current debtags vocabulary.
EXAMPLES
- Here are some example invocations of debtags:
- # Update the package tag database
debtags update - # Show apt-cache informations about the mutt package,
# adding tag informations
debtags show mutt - # Show packages related to mutt
# (adjust the distance as needed)
debtags related -d 7 mutt - # Show packages related to galeon and mozilla-browser
# (adjust the distance as needed)
debtags related -d 5 galeon,mozilla-browser - # Search the tag vocabulary for mail-related tags
debtags tagsearch mail - # Output a list of all packages which can edit raster images, excluding
# shared libraries and dummy packages
debtags search "use::editing && media::rasterimage && \! (role::aux-shlib || role::aux-dummy)" - # Show all mail clients
debtags search 'works-with::mail && role::sw:client' - # Output the collection of all mail clients, ready to be reprocessed via
# tagcoll
debtags grep 'works-with::mail && role::sw:client' - # Produce an easily navigable hierarchy with the collection data
debtags cat | tagcoll hierarchy - # Produce a local tag patch
debtags cat > work-tags
...edit work-tags...
debtags mkpatch work-tags > my-tagpatch - # Produce a local tag patch with tagcolledit
debtags cat > orig-tags
debtags cat > work-tags
tagcolledit work-tags
tagcoll diff orig-tags work-tags > my-tagpatch - # Submit the patch
debtags submit my-tagpatch - # Install all IRC clients
debtags install 'protocol::irc && role::sw:client' - # Look for friends ;)
# (adjust the distance as needed)
debtags maintainers | tagcoll related -d 12 'Enrico Zini <enrico@debian.org>'
FILES
- /var/lib/debtags/vocabulary
- The normative tag vocabulary
- /etc/debtags/sources.list
- The list of sources to build the package tags database from
- /var/lib/debtags/package-tags
- The system package tags database, only kept as an easily parsable reference. In the same directory there is a the binary index with the same content, used by applications for fast access.
SEE ALSO
debtags-edit(1), tagcoll(1), tagcolledit(1), apt-cache(1), http://debtags.alioth.debian.org/ http://debian.vitavonni.de/packagebrowser/
AUTHOR
debtags is maintained by enrico@enricozini.org.
- This manpage has been automatically generated by the debtags program.