HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //usr/share/doc/debian-policy/policy.html/_sources/ap-pkg-alternatives.rst.txt
Alternative versions of an interface - ``update-alternatives`` (from old Packaging Manual)
==========================================================================================

When several packages all provide different versions of the same program
or file it is useful to have the system select a default, but to allow
the system administrator to change it and have their decisions
respected.

For example, there are several versions of the ``vi`` editor, and there
is no reason to prevent all of them from being installed at once, each
under their own name (``nvi``, ``vim`` or whatever). Nevertheless it is
desirable to have the name ``vi`` refer to something, at least by
default.

If all the packages involved cooperate, this can be done with
``update-alternatives``.

Each package provides its own version under its own name, and calls
``update-alternatives`` in its postinst to register its version (and
again in its prerm to deregister it).

See the :manpage:`update-alternatives(8)` man page for details.

If ``update-alternatives`` does not seem appropriate you may wish to
consider using diversions instead.