Debian configuration system: Difference between revisions

Content deleted Content added
correction
External links: no official website supplied
 
(69 intermediate revisions by 50 users not shown)
Line 1:
{{For|the annual developers conference for this operating system|Debian Conference}}
{{wrongtitle|title=debconf}}
'''debconf''' is a software utility for performing system-wide configuration tasks on [[Unix-like]] operating systems. It is developed for the [[Debian|Debian GNU/Linux]] [[Linux distribution|distribution]], and is closely integrated with Debian's package management system, [[dpkg]].
 
{{Infobox software
When packages are being installed, debconf 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 <code>''dpkg-reconfigure''</code> program.
| name = debconf
| logo =
| screenshot = Debconf software package.png
| screenshot_size = 250px
| caption = Reconfigure tzdata package using debconf (1.5.38) on Debian Linux 6.0 (squeeze/unstable).
| author = {{wikidata|property|linked|references|P170}}
| developer = {{wikidata|property|linked|references|P170}}, Colin Watson
| latest release version = {{wikidata|property|preferred|references|edit|P348|P548=Q2804309}}
| latest release date = {{wikidata|qualifier|preferred|single|P348|P548=Q2804309|P577}}
| latest preview version =
| latest preview date =
| operating system = {{wikidata|property|linked|references|P306}}
| size =
| programming language = {{wikidata|property|linked|references|P277}}
| genre =
| license = {{wikidata|property|linked|references|P275}}
}}
 
'''{{notatypo|debconf}}''' is a software utility for performing system-wide configuration tasks on [[Unix-like]] operating systems. It is developed for the [[Debian|Debian GNU/Linux]] [[Linux distribution|distribution]], and is closely integrated with Debian's package management system, [[dpkg]].
The design of debconf allows for [[Front-end and back-end|front-ends]] for answering configuration questions to be added in a modular way, and there exist several, such as one for the terminal, one for [[KDE]], one for [[GNOME]], etc.
 
When [[deb (file format)|packages]] are being installed, {{notatypo|debconf}} 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 <code>''dpkg-reconfigure''</code> program, or another program such as [[Synaptic Package Manager|Synaptic]].
 
The design of {{notatypo|debconf}} allows for [[Front-end and back-end|front-ends]] for answering configuration questions to be added in a modular way, and there exist several, such as one for [[Dialog (software)|dialog]], one for [[readline]], one that uses a [[text editor]], one for [[KDE]], one for [[GNOME]],<ref>[https://thegnomejournal.wordpress.com/2005/03/09/simplified-package-management-in-ubuntu-hoary/ The GNOME Journal: Simplified Package Management in Ubuntu Hoary<!-- Bot generated title -->]</ref> a [[Python (programming language)|Python]] front-end [[API]], etc.
 
The original implementation of {{notatypo|debconf}} is in [[Perl]]. During the development of debian-installer (the new installer used for [[SargeDebian-Installer]]), a new implementation in [[C (programming language)|C]] was developed, which is named ''{{notatypo|cdebconf}}''. 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 {{notatypo|debconf}} front-end and the client code ("{{notatypo|confmodule}}"); this is a simple line-based protocol similar to common [[Internet]] protocols.
 
{{notatypo|Debconf}} does not physically configure any packages, but asks the user certain configuration questions stored in the {{notatypo|.templates}} file, under the direction of the package's maintainer scripts ({{notatypo|.config}}, {{notatypo|.postinst}}, etc.). Typically, the {{notatypo|.config}} script uses {{notatypo|debconf}} to ask questions, while {{notatypo|.postinst}} 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 {{notatypo|debconf}} are cached in {{notatypo|debconf}}'s database.
 
==References==
{{Reflist}}
 
The original implementation of debconf is in [[Perl]]. During the development of debian-installer (the new installer used for [[Sarge]]), a new implementation in [[C programming language|C]] was developed, which is named ''cdebconf''. The new implementation is currently only used in the installer, but is intended to eventually replace the original entirely.
==External links==
* [httphttps://apwjoeyh.xs4all.nlname/cgi-bincode/man2html?debconf+8/ Original Manpageauthor's ofweb DEBCONFsite]
* [http://apwwww.xs4allfifi.nlorg/cgi-bin/man2html?dpkg-reconfigure+/usr/share/man/man8/debconf.8.gz ManpageMan of DPKG-RECONFIGUREPage]
* [http://bugswww.debianfifi.org/cgidoc/debconf-bindoc/bugreporttutorial.cgi?bug=265570html The RequestDebconf forProgrammer's adoptionTutorial]
* [https://www.debian.org/doc/packaging-manuals/debconf_specification.html The Debconf specification]
*[http://kitenet.net/programs/debconf/ Maintainer's web site, with screenshots (outdated)]
 
{{Debian}}
{{Perl}}
 
[[Category:Dpkg]]
[[Category:Debian]]
[[Category:Free software projects]]
[[Category:Unix configuration utilities]]
[[Category:Ubuntu]]
[[Category:Free software projectsprogrammed in Perl]]
[[Category:Software using the BSD license]]