is a software utility for performing system-wide configuration tasks on
Unix-like
A Unix-like (sometimes referred to as UN*X, *nix or *NIX) operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification. A Uni ...
operating systems. It is developed for the
Debian
Debian () is a free and open-source software, free and open source Linux distribution, developed by the Debian Project, which was established by Ian Murdock in August 1993. Debian is one of the oldest operating systems based on the Linux kerne ...
Linux distribution
A Linux distribution, often abbreviated as distro, is an operating system that includes the Linux kernel for its kernel functionality. Although the name does not imply product distribution per se, a distro—if distributed on its own—is oft ...
, and is closely integrated with Debian's package management system,
dpkg
dpkg is the software at the base of the package management system in the free software, free operating system Debian and its numerous Debian family, derivatives. dpkg is used to install, remove, and provide information about deb (file format), . ...
.
When
packages are being installed, asks the user questions which determine the contents of the system-wide configuration files associated with that package. After package installation, it is possible to go back and change the configuration of a package by using the
''dpkg-reconfigure''
program, or another program such as
Synaptic.
The design of allows for
front-ends for answering configuration questions to be added in a modular way, and there exist several, such as one for
dialog, one for
readline
GNU Readline is a software library that provides in-line editing and history capabilities for interactive programs with a command-line interface, such as Bash. It is currently maintained by Chet Ramey as part of the GNU Project.
It allows users ...
, one that uses a
text editor
A text editor is a type of computer program that edits plain text. An example of such program is "notepad" software (e.g. Windows Notepad). Text editors are provided with operating systems and software development packages, and can be used to c ...
, one for
KDE
KDE is an international free software community that develops free and open-source software. As a central development hub, it provides tools and resources that enable collaborative work on its projects. Its products include the KDE Plasma gra ...
, one for
GNOME
A gnome () is a mythological creature and diminutive spirit in Renaissance magic and alchemy, introduced by Paracelsus in the 16th century and widely adopted by authors, including those of modern fantasy literature. They are typically depict ...
,
The GNOME Journal: Simplified Package Management in Ubuntu Hoary
/ref> a Python
Python may refer to:
Snakes
* Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia
** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia
* Python (mythology), a mythical serpent
Computing
* Python (prog ...
front-end API
An application programming interface (API) is a connection between computers or between computer programs. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how to build ...
, etc.
The original implementation of is in Perl
Perl is a high-level, general-purpose, interpreted, dynamic programming language. Though Perl is not officially an acronym, there are various backronyms in use, including "Practical Extraction and Reporting Language".
Perl was developed ...
. During the development of Debian-Installer
Debian-Installer is a system installer for Debian and its derivatives. It originally appeared in Skolelinux (Debian-Edu) 1.0, released in June 2004, but is now used as the official installation system since Debian 3.1 (Sarge), which was relea ...
, a new implementation in C was developed, which is named '. The new implementation is currently only used in the installer, but is intended to eventually replace the original entirely. Both implementations make use of the same protocol for communication between the front-end and the client code (""); this is a simple line-based protocol similar to common Internet
The Internet (or internet) is the Global network, global system of interconnected computer networks that uses the Internet protocol suite (TCP/IP) to communicate between networks and devices. It is a internetworking, network of networks ...
protocols.
does not physically configure any packages, but asks the user certain configuration questions stored in the file, under the direction of the package's maintainer scripts (, , etc.). Typically, the script uses to ask questions, while applies configuration changes to the unpacked package in reaction to the answers; however, this can vary due to technical requirements. The user's answers to the configuration questions asked by are cached in 's database.
References
External links
*
Original author's web site
Man Page
{{Perl
Dpkg
Debian
Unix configuration utilities
Ubuntu
Free software programmed in Perl
Software using the BSD license