Like most Linux distributions, Debian GNU/Linux provides
A complete list is available from any of the Debian mirrors.
indices/Packages-Master-i386.gz provides a list,
including short descriptions, of all packages that are available for
computers with 80386 (or more advanced) chips.
indices/Packages-Master-m68k.gz provides a similar list
of packages that are available for computers with Motorola 68xxx CPUs.
The WWW interface to the Debian packages conveniently summarizes the packages in each of about twenty "sections" of the Debian archive, as well as the 10 most recently uploaded packages.
A list of packages which are most urgently needed for the Debian distribution is maintained by Sven Rudolph. For more details, see the section on contributing to the Debian project.
This is a historical question, no longer relevant, but is included with this FAQ because it may still hold the record as the single most frequently asked question on the Debian mailing lists.
The functionality of the Berkeley utility
which is provided
in the Bash shell by the built-in command
type. To learn the
path name for an executable file "foo", use the command
type foo. To learn all the paths where "foo" can
be found, use
type -a foo.
To accommodate users' lack of familiarity with this (in this writer's
opinion, obscure) feature of Bash, the Debian maintainers have
built a package called
debianutils, which includes a Bash script
which. This script includes only these lines:
#!/bin/bash for i in $*; do type -all -path $i | head -1 done
debianutils package is normally stored in the
section of the FTP archive, and is therefore part of the
initial installation of every Debian system.
The Java Development Kit from Sun is currently available as a Debian
jdk_VVV-RRR_i386.deb). The JDK will allow you to run
Java programs and applets, and write your own. If your kernel is
properly configured (see below), the JDK will allow you to
run Java programs just like other
executables. The JDK package also includes a number of demo programs.
Debian's kernel is configured with Java support built in as a module (i.e.,
CONFIG_BINFMT_JAVA=m). Users who wish to build their own
custom kernel can of course omit this if
they choose. Once module support is available in the kernel, you
need to make sure the module is loaded. You can do it at boot time
by inserting the line
binfmt_java in the file
Alternatively, you can install the module from the command line by
executing the command
insmod DIRNAME/binfmt_java.o where
DIRNAME is the name of the directory where the modules that
have been built for the version of the kernel now running are stored.
On a system with the 2.0.0 version of the kernel,
DIRNAME is likely to be
You can check that a module is loaded using the command
Running a Java applet requires a browser with the capability to recognize and execute them. The Netscape browser that can be installed as a Debian package will run Java applets. (The Netscape source code is not publicly available. The Debian netscape package provides a wrapper which aids the installation and management of Netscape on a Debian system. This is actually a good example of the integration of commercial packages with the Debian system.)
A final note of mixed blessings: Sun's licensing policies on the JDK are becoming more restricted with time, so this package may not be available as part of the Debian distribution soon. It is possible that it may be available in the same way that Netscape is available for Debian Linux. Better news is that a number of ports are currently being developed with may provide attractive publicly-available alternatives.
The software that's been packaged for Debian GNU/Linux is available in one of several directory trees on each Debian mirror site.
a.outbinary format files) to Debian-1.1 (based on
ELFbinary files). Included are instructions for upgrading (either "manually" using
dpkg, or more automatically, using
dselect), along with a copy of the particular version of the package management tool,
dpkgthat must be used in
a.outsystems to start the upgrade, and a list of files that will be needed in order to do the upgrade.
Within each of the major directory trees (
project/experimental), which is too small to subdivide),
the binary packages reside in sub-directories whose names indicate the
chip architecture for which they were compiled:
Source code is included for everything in the Debian system. Most of the license terms of programs in the system require that source code be distributed along with the programs, or that an offer to provide the source code accompany the programs.
Source code may or may not be available for packages in the "contrib" "non-free" directories, which are not formally part of the Debian system.
Check for the existence of the file
This contains a stanza reporting the status of each of the
installed Debian packages on a system.
There is a file,
/etc/debian_version, which contains
a single one-line entry giving the version number of the release,
as defined by the package
Users should be aware, however, that the Debian system consists
of many parts, each of which can be updated (almost) independently.
Each Debian "release" contains well defined and unchanging
contents. Updates are separately available. For a one-line description
of the installation status of package
foo, use the command
dpkg -l foo. (With no arguments, this command prints out
versions of all installed packages.) For a more verbose description,
dpkg --status foo.
kbdpackage) to install, view, and modify the tables. The installation prompts the user to specify the keyboad he'll use.
manpages-depackage, and support for Spanish-language manpages is provided through the
manpages-espackage. To access an NLS manpage, the user must set LC_MESSAGES to the appropriate string. In the case of the German-language manpages, LC_MESSAGES must be set to 'de_DE'. The
manprogram will then search for german manpages under