NAME¶
debram - look .debs up in the Debian Ramification
SYNOPSIS¶
debram [
-cwprtxABTXDMNP1lLu.sj?V ] [
-d package
]... [
-m maintainer ]... [
ramification... ]
DESCRIPTION¶
Debian GNU/Linux provides thousands upon daunting thousands of software
packages. Sorting them into broad classes then dividing and redividing them
into finer, more specific branches, this command ramifies Debian's packages in
much the same manner as a university library ramifies its books. If you know
what you want your computer to do but do not yet know the package to do it,
you can find the package here.
QUICK START¶
Give the command
- debram -cx
(Omit the `
c' option if your terminal has a white background or does not
support color.) Now explore ram 1000 with
- debram -cx 1000
Observe the output, then retrieve a plan of ram 1100 with
- debram -cp 1100
Repeat the same operation with the abbreviation
- debram -cp 11
Again, but with cross-references.
- debram -cpx 11
Show the trunk above 1100.
- debram -cpt 11
Retrieve 1100's plan, showing also the trunk.
- debram -cptr 11
Enough plans. Let's look at some packages. Notice
1112 File Listing and
Finding in the previous output, then
- debram -cx 1112
(Try adding a
-w option to the command if your terminal is at least 132
columns wide.) Now list the same ram in brief.
- debram -cXD 1112
Again, and show the trunk this time.
- debram -cXDt 1112
Be very brief: list only the package names.
- debram -1 1112
Limit the listing to packages currently installed (or dpkg-selected).
- dpkg --get-selections | debram -cXDs 1112
What packages does E. Zini keep?
- debram -cm 'E. Zini'
Suppose that you have been looking for the
tar package, but have not seen
it yet. Find it now.
- debram -cd tar
Retrieve the entire Ramification plan.
- debram -cp | more -f
Now you know enough to begin using the
debram(1) profitably. If you have
or can open a text terminal at least 132 columns wide, you will also wish to
try the
-w option:
- debram -cxrw 3110 | less -r
(Press `q' to exit
less(1).) To view the long, long listing of the entire
ramification at once, enter
- debram -cxrw | less -r
omitting the
-w if your terminal is only 80 columns wide.
OPTIONS¶
- -c, --color
- Color-code the output (recommended).
- -w, --wide
- Output in 132-column format. This is recommended if your
terminal is sufficiently wide. (See below for a way to boot Linux into a
132x60 terminal.)
Other General Options¶
- -dpackage
- --find-deb=package
- Find the named package.
- -mmaintainer
- --maint=maintainer
- Find all maintainer's packages.
- -p, --plan
- Print the ramification plan or table of contents. If a
ramification is specified, print a partial plan descending from it.
(Implies -r, except when -t is given.)
- -r, --recursive
- Print the entire tree under the given
ramification.
- -t, --trunk, --recursive-up
- Print the trunk above the given ramification. That
is, print the ram, the parent ram, the grandparent ram, and so on, up to
the root of the tree.
- -x, --expand-xref
- Print cross-references in long-form, showing each ram's
title rather than just its number.
Selective Output Suppression¶
The
-A and
-B options focus
debram(1)'s overall operation.
Usually
debram(1) prints the tables both of end-level ramifications
(such as 1311 and 1312, each having a table of Debian packages) and of
higher-level ramifications (such as 1350 and 1300, each having only a table of
subramifications); but you may not always wish the two kinds of tables
intermixed, especially when requesting an
-r or
-T listing. The
-A (
--no-end-level) and
-B (
--only-end-level)
options respectively cause
debram(1) not to print the end-level and
higher-level ramification tables.
- -A, --no-end-level
- Omit package tables.
- -B, --only-end-level
- Omit subramification tables.
- -T, --no-title
- Omit ramification titles. (Implies -X.)
- -X, --no-xref
- Omit cross-references.
- -D, --no-desc
- Omit package descriptions.
- -M, --no-maint
- Omit names of package maintainers.
- -N, --no-count
- Omit per-ramification .deb counts.
- -P, --no-pri
- Omit package priorities.
- -1, --names-only
- Print package names only. This option is equivalent to
-BTXDMNP.
Manual Character-Encoding Selection¶
debram(1) defaults appropriately for your locale, so selecting a
character encoding manually is optional. If your locale is the default C/POSIX
non-locale, then
debram(1) defaults to Latin-1—which is
technically nonstandard behavior but for
debram is usually the right
thing to do. Use
-L if you definitely want pure ascii.
- -l, --latin1
- Output and accept arguments in Latin-1 (iso-8859-1).
- -L, --ascii, --no-latin1
- Output and accept arguments in ascii. (See also the
-. option.)
- -u, --utf8
- Output and accept arguments in utf-8 (Unicode) rather than
Latin-1.
Other Options¶
- -., --ascii-dots
- In the output, fill blanks with ascii's `.' full-stop
character (rather than the middle dot, which ascii does not provide; see
also the -L option).
- -s, --selections
- Print only packages named on stdin. The principal use of
this option is in “dpkg --get-selections | debram -s
...”, which causes debram to ignore packages you have
neither installed nor selected for installation. As such, the option
accepts package names on standard input, one name per line, each name
optionally followed the word “install” (which debram
ignores).
Seldom Used Options¶
- -j, --pri-one-color
- Output the package-priority column all in the same color:
do not differentiate.
- --data-file=file
- Substitute clear-text file for the library data
file.
- --data-file-gz=file
- Substitute compressed file for the library data
file.
- -?, --help
- Give a help list.
- --usage
- Give a short usage message.
- -V, --version
- Print the program version.
RAMIFICATIONS¶
A
ramification is a branch of the Debian archive whose packages serve
approximately the same application domain or interest similar groups of users.
The first division of the archive follows the traditional GNU/Linux manpage
hierarchy, with ram 1000 corresponding roughly to man section (1), ram 3000 to
section (3), and so forth. Further subramifications successively focus on
tighter domains.
debram(1) works on the
ramifications you specify on the command
line, defaulting to the umbrella metaramification 0000 if you specify none.
The useful
-r recursive option causes
debram(1) to select
the named ramifications plus all subramifications branching recursively from
them. Many rams cross-reference other rams across the tree; by default the
program concisely prints only cross-reference ram numbers, but with the
-x option it prints expanded cross-reference information.
The branch-numbering system needs little explanation, except perhaps in one
respect: a ram number's count of non-zero digits always reveals its ram's
level. Thus, for instance, 5060 and 5600 would each be second-level rams under
the top-level 5000, but 5660 would be a third-level ram under the second-level
5600.
If you give fewer than four
ramification digits,
debram(1)
completes the number with zeros. Thus
8 is a valid abbreviation for
8000, for example.
Although the usage is not entirely consistent (even within this manpage),
- •
- the top-level rams like 1000 and 8000 are usually called
sections (after the traditional “man section”
nomenclature),
- •
- the second-level rams like 1100 and 1200 are usually called
divisions,
- •
- the third-level rams like 1110 and 1120 are usually called
groups, and
- •
- the end-level rams like 1121 and 1140 (the latter of which
is an end-level ram despite its number's ending in a zero) are usually
called branches.
UPDATING THE LIBRARY DATA¶
As an autobiographer cannot cover the last events of his life, neither can
debram cover the last packages to enter Debian's stable release.
Debram is fine as is, but if you prefer complete full coverage, then
after the release you can look for a revised
debram-data package
bearing the same number as the version you now have (run “
debram
-V” for the number) but with a single letter appended. For example,
if you now have version 1.2.3, then you can look for
debram-data
version 1.2.3a, 1.2.3b or the like. Besides completing the coverage of the
stable release, such an update will undoubtedly also correct some errors and
oversights; so, it is worth getting if you want it.
The easiest place to get the update if you time it right will be from Debian's
unstable archive. However, that archive must eventually drop it in favor of a
new development version, which is not what you want if you are running Debian
stable. A more lasting source for the update will be
(Of course, no update can be guaranteed to appear—what is guaranteed to
appear is the
debram-data you already have—but an update did
appear for the last stable release of Debian and is equally likely to appear
for this one. Look for it within four to six months.)
If running Debian stable, you need not and probably should not update the
debram package itself; it suffices to update
debram-data.
Furthermore, for Debian stable you should only update to the same version with
the single letter appended, as 1.2.3a. Versions bearing later numbers (like
1.2.4 or 1.3.0 against 1.2.3) are development versions toward the following
Debian release; they are probably not what you want.
WIDENING THE LINUX CONSOLE¶
debram(1) was originally programmed to provide the most easily readable
output when invoked with the
-cw options on a 132-column wide
terminal—especially on the standard non-
X(7) Linux console (see
console(4)). Fewer users today use the console than used to, and
X(7) terminals typically show 132 columns or more in any case, so it's
not as important an issue as it used to be. However, some console users may
still be interested to learn how to widen their consoles to the standard
wide-console width of 132 columns. This section of the man page tells how it
can be done, at least on some computer hardware.
Exactly how to widen your Linux console depends on your specific hardware and OS
installation. Nevertheless the following instructions should lead you in the
correct direction.
Print a hard copy of this manpage with
- man -Tps 1 debram | lpr
Reboot while holding <Shift> down (without the <Shift>, some Linux
machines are programmed never to offer you a boot prompt). At the boot prompt,
enter
- Linux video=vga16:off vga=ask
(Your kernel image may have some other name than “Linux”. Also, the
video= option may not be necessary for you. Adapt your boot-prompt
entry accordingly.)
Notice that the kernel offers you the choice of several video modes. If you do
not yet see 132x60,
scan.
Choose
132x60. (The kernel may offer you hexadecimal numbers but demand
decimal numbers in return. If you are reading this section of the manpage, you
probably already know how to convert hexadecimal to decimal, but if you feel
uncertain then refer to the table in
ascii(7).)
If all is well the kernel now boots into a 132x60 console.
The foregoing procedure naturally gives you 132x60 only once: the kernel returns
to 80 columns the next time you boot it. Configuring the kernel to boot 132x60
by default requires editing
/etc/lilo.conf then running
lilo(8)
(presuming that you are booting with
lilo(8); else see
Grub
below). The author has added the lines
- vga=0x123
append="video=vga16:off"
to the appropriate stanza of his own
/etc/lilo.conf on at least one
machine, but yours may need something slightly different to achieve the
desired effect. (The author got the number 0x123 for his video hardware during
the boot-time video-mode scan referenced above. You can do likewise to obtain
the needed number for your video hardware.)
You may like the 132x60 non-
X(7) Linux console. The author does. Try it
if you wish.
Grub¶
The foregoing assumes that you boot your Debian system with
lilo(8). A
modern Debian system, however, is more likely booted with
grub(8). The
author does not yet know the latter boot system well enough to write a new man
page section on it, but perhaps the present section provides information even
grub(8) users will find of interest or use.
FILES¶
- /usr/share/debram/debram.txt.gz
- the default library data file (it is human-readable,
too)
- /usr/share/doc/debram/
- reference documents including the Command Selection
Guide.
ENVIRONMENT¶
- LC_ALL, LC_CTYPE, LANG
- These variables optionally specify your locale, which
determines how debram(1) outputs non-ascii characters by default.
See locale(7) for general information about locales.
BUGS¶
The
-c or
--color option produces pleasing colors only on a
terminal with a black background, such as xterm and the standard non-X Linux
console. Other common terminals, such as the standard Gnome terminal, have
white backgrounds by default. Users of these terminals probably will not find
the
-c option very useful.
Non-i386 architectures enjoy a handful of special packages not available on
i386. Debram does not cover these. Debram probably should at least cover all
the special amd64 packages, but it doesn't, yet.
Unavoidably in a ramification of this size, several packages inadvertently yet
undoubtedly remain misramified. Report misramifications sensibly, please, to
Debian's Bug Tracking System. If you are running Debian
stable, please
check the latest
debram-data in Debian
unstable before reporting
the bug.
AUTHOR¶
Thaddeus H. Black <thb@debian.org>
Although the changelog details the direct parts several have played in debram
development, the author particularly wishes to acknowledge the contributions
of his Debian sponsor Giacomo Catenazzi, whose review and counsel have made
debram significantly better a package than it otherwise would have been; and
of the
debtags development team led by Enrico Zini, who have welcomed
the debram (they might easily have done otherwise) and have gone out of their
way to integrate it successfully into the larger debtags structure.
COPYLEFT¶
Copyright (C) 2002-2006 Thaddeus H. Black
debram(1) and all the files included in the
debram package are
free software; you can redistribute them and/or modify them under the terms of
the GNU General Public License, Version 2.
SEE ALSO¶
dpkg(8),
apt-get(8),
more(1),
less(1), the
Command Selection Guide (included in the standard
debram
distribution),
debtags.deb