SYNOPSIS

debtags [options] <command> [options and arguments]

DESCRIPTION

debtags manages package tag data in a debian system and performs basic queries on it.

debtags can 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; 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. Finally, tags can be listed with tag ls, edited with the tag add and tag rm, and submitted to the Debtags database with submit.

The update command can be used to download extra tags as listed in /etc/debtags/sources.list: see the contents of that file for more information.

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.

cat

output the full package tag database

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

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

dumpavail [tag expression]

output the full package database

grep <tag expression>

output the lines of the full package tag database that match the given tag expression. A tag expression (given as a single argument) is an arbitrarily complex binary expression of tag names. For example: role::program && ((use::editing || use::viewing) && !works-with::text)

search <tag expression>

output the names and descriptions of the packages that match the given tag expression

show <pkg>

show informations about a package, like apt-cache show does, but adding the tag informations from the debtags index

submit [patch]

upload the given patch file to the central tag repository. If [patch] is omitted, mail the local tag modifications (uses debtags-submit-patch)

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

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

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

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 cat

Options controlling matching of packages:

-i, --invert

invert the match, selecting non-matching items.

Options controlling transformations of tag data on output:

--facets

output only the names of the facets (mainly used for computing statistics).

--names

output only the names of the packages.

-q, --quiet

do not write anything to standard output.

Options for command check

Options for command diff

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.

--full

output the full record of package data.

--short

output the names of the packages, plus a short description.

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:

--facets

output only the names of the facets (mainly used for computing statistics).

--names

output only the names of the packages.

-q, --quiet

do not write anything to standard output.

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.

--full

output the full record of package data.

--short

output the names of the packages, plus a short description.

Options for command show

Options for command submit

Options for command tag

Options for command tagcat

Options for command tagshow

Options for command tagsearch

Options for command update

--local

do not download files when performing an update.

--reindex

do not download any file, just do reindexing if needed.

Options for command vocfilter

--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

  # 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 && works-with::image:raster && \
                ! (role::shared-lib || role::dummy)"

  # Show all mail clients
  debtags search 'works-with::mail && network::client'

  # Output the collection of all mail clients, ready to be reprocessed via
  # tagcoll
  debtags grep 'works-with::mail && network::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 diff work-tags > my-tagpatch

  # Submit the patch
  debtags submit my-tagpatch

FILES

/var/lib/debtags/vocabulary

The normative tag vocabulary

/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.

/etc/debtags/sources.list

The list of sources to build the package tags database from

RELATED TO debtags…

tagcoll(1), axi-cache(1),

http://wiki.debian.org/Debtags

http://debtags.debian.net

AUTHOR

debtags is maintained by [email protected].

This manpage has been automatically generated by the debtags program.