ucf - Update Configuration File(s): preserve user changes to config files

Property Value
Distribution Ubuntu 18.04 LTS (Bionic Beaver)
Repository Ubuntu Main amd64
Package name ucf
Package version 3.0038
Package architecture all
Package type deb
Installed size 183 B
Download size 49.30 KB
Official Mirror archive.ubuntu.com
Debian policy mandates that user changes to configuration files must be
preserved during package upgrades. The easy way to achieve this behavior
is to make the configuration file a 'conffile', in which case dpkg
handles the file specially during upgrades, prompting the user as
This is appropriate only if it is possible to distribute a default
version that will work for most installations, although some system
administrators may choose to modify it. This implies that the
default version will be part of the package distribution, and must
not be modified by the maintainer scripts during installation (or at
any other time).
This script attempts to provide conffile-like handling for files that
may not be labelled conffiles, and are not shipped in a Debian package,
but handled by the postinst instead. This script allows one to
maintain files in /etc, preserving user changes and in general
offering the same facilities while upgrading that dpkg normally
provides for 'conffiles'.
Additionally, this script provides facilities for transitioning a
file that had not been provided with conffile-like protection to come
under this schema, and attempts to minimize questions asked at
installation time. Indeed, the transitioning facility is better than the
one offered by dpkg while transitioning a file from a non-conffile to
conffile status.


Package Version Architecture Repository
ucf_3.0038_all.deb 3.0038 all Ubuntu Main
ucf - - -


Name Value
coreutils >= 5.91
debconf >= 1.5.19
sensible-utils -


Type URL
Binary Package ucf_3.0038_all.deb
Source Package ucf

Install Howto

  1. Update the package index:
    # sudo apt-get update
  2. Install ucf deb package:
    # sudo apt-get install ucf




2018-02-25 - Manoj Srivastava <srivasta@debian.org>
ucf (3.0038) unstable; urgency=medium
* A bug fixing and translation adding release.
* Bug fix: "Vcs-Git URL is 404-compliant", thanks to Sven Joachim
(Closes: #890647).
* Bug fix: "there should be a --purge-all option", thanks to Marc Haber
(Closes: #878893). Documented how to loop over ucfq to remove/purge
all the conffiles.
* Bug fix: "[INTL:ru] Russian debconf templates translation update",
thanks to Yuri Kozlov (Closes: #890643).
* Bug fix: "[INTL:pt] Updated Portuguese translation - debconf
messages", thanks to Américo Monteiro (Closes: #890708).
* Bug fix: "[INTL:da] Danish translation of the debconf templates ucf",
thanks to Joe Dalton (Closes: #890739).
* Bug fix: "[l10n] update Japanese debconf translation", thanks to
Kenshi Muto (Closes: #890802).
* Bug fix: "[INTL:pt_BR] Brazilian Portuguese debconf templates
translation", thanks to Adriano Rafael Gomes (Closes: #891165).
2018-02-16 - Manoj Srivastava <srivasta@debian.org>
ucf (3.0037) unstable; urgency=medium
* A new bugfixing release.
* Bug fix: "Typo in ucfr(1)", thanks to Carsten Leonhardt (Closes:
* Bug fix: "[PATCH] diffs are rendered with broken spacing", thanks to
Dima Kogan (Closes: #862607).
* Bug fix: "offers 3-way merge even without --three-way option", thanks
to Marc Haber (Closes: #879558).
* Bug fix: "Corrupt its database if root&#39;s bashrc has GREP_OPTIONS
env", thanks to Adam Cecile &lt;adam.cecile@hitec.lu&gt; (Closes:
* Bug fix: "please consider removing the experimental tag from
--three-way", thanks to Marc Haber (Closes: #879641).
* Bug fix: "manpage ucf(1) refers ancient releases", thanks to Marc
Haber (Closes: #878891).
* Bug fix: "Bad UI on prompts", thanks to Peter Palfrader (Closes:
#870474). We already had a title that mentioned the conffile
name. Added it to the beginning of the running text as well. If the
title is not displayed, then the denconf frontend should be improved.
2016-03-16 - Manoj Srivastava <srivasta@debian.org>
ucf (3.0036) unstable; urgency=low
* Incorporate enhancement from Robert Luberda <robert@debian.org>
* Bug fix: "diff screen is ugly, unreadable and counterintuitive",
thanks to Robert Luberda                      (Closes: #817982).
* Updated the Standards version to 3.9.7. No changes needed.
2016-03-13 - Robert Luberda <robert@debian.org>
ucf (3.0035+local1) UNRELEASED; urgency=medium
* Display the file permissions and ownerships information either in diff
label lines or in additional lines prepended to sdiff output not to
hide the actuall file differences by the whole output of /usr/bin/stat
command (Closes: #817982). As a side effect, fix a bug introduced in
3.0034 that caused ucf to fail on not yet existing destination files.
2016-02-14 - Manoj Srivastava <srivasta@debian.org>
ucf (3.0035) unstable; urgency=low
* Minor typo fixing release.
2016-02-13 - Manoj Srivastava <srivasta@debian.org>
ucf (3.0034) unstable; urgency=low
* Bug fix: "show differences with respect to permissions and ownership
of old/new file", thanks to Paul Gevers. Now uses /usr/bin/stat from
coreutils to show the metadata about the old and the new files before
the actual diffs. (Closes: #812321).
2016-01-23 - Manoj Srivastava <srivasta@debian.org>
ucf (3.0033) unstable; urgency=low
* Bug fix: "ucf breaks installation of texlive-base (basename: missing
operand)", thanks to Andreas Metzler. This has been a long standing
bug, unmasked by the cleanup done last upload. When purging, there is
no new file, just a destination file that needs to be removed. So,
this commit makes no action on new-file when purging.  (Closes: #812402).

See Also

Package Description
ucpp_1.3.2-2_amd64.deb embeddable, quick and light C preprocessor
udev_237-3ubuntu10_amd64.deb /dev/ and hotplug management daemon
udisks2-doc_2.7.6-3_all.deb udisks2 documentation
udisks2_2.7.6-3_amd64.deb D-Bus service to access and manipulate storage devices
ufw_0.35-5_all.deb program for managing a Netfilter firewall
uidmap_4.5-1ubuntu1_amd64.deb programs to help use subuids
unattended-upgrades_1.1ubuntu1_all.deb automatic installation of security upgrades
unifont_10.0.07-1_all.deb font with a glyph for each visible Unicode Plane 0 character
unixodbc-dev_2.3.4-1.1ubuntu3_amd64.deb ODBC libraries for UNIX (development files)
uno-libs3_6.0.3-0ubuntu1_amd64.deb LibreOffice UNO runtime environment -- public shared libraries
unzip_6.0-21ubuntu1_amd64.deb De-archiver for .zip files
update-inetd_4.44_all.deb inetd configuration file updater
update-manager-core_18.04.11_all.deb manage release upgrades
update-manager_18.04.11_all.deb GNOME application that manages apt updates
update-motd_3.6-0ubuntu1_all.deb compliments pam_motd in libpam-modules