# SOME DESCRIPTIVE TITLE. # Copyright (C) 1996, 1997, 1998 Ian Jackson, Christian Schwarz, 1998-2017, # The Debian Policy Mailing List # This file is distributed under the same license as the Debian Policy # Manual package. # FIRST AUTHOR , 2018. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Debian Policy Manual 4.1.6.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2024-04-07 13:08+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.10.3\n" #: ../../ap-pkg-diversions.rst:2 msgid "" "Diversions - overriding a package's version of a file (from old Packaging" " Manual)" msgstr "" #: ../../ap-pkg-diversions.rst:4 msgid "" "It is possible to have ``dpkg`` not overwrite a file when it reinstalls " "the package it belongs to, and to have it put the file from the package " "somewhere else instead." msgstr "" #: ../../ap-pkg-diversions.rst:8 msgid "" "This can be used locally to override a package's version of a file, or by" " one package to override another's version (or provide a wrapper for it)." msgstr "" #: ../../ap-pkg-diversions.rst:12 msgid "" "Before deciding to use a diversion, read :doc:`ap-pkg-alternatives` to " "see if you really want a diversion rather than several alternative " "versions of a program." msgstr "" #: ../../ap-pkg-diversions.rst:16 msgid "" "There is a diversion list, which is read by ``dpkg``, and updated by a " "special program ``dpkg-divert``. Please see :manpage:`dpkg-divert(8)` for" " full details of its operation." msgstr "" #: ../../ap-pkg-diversions.rst:20 msgid "" "When a package wishes to divert a file from another, it should call " "``dpkg-divert`` in its preinst to add the diversion and rename the " "existing file. For example, supposing that a ``smailwrapper`` package " "wishes to install a wrapper around ``/usr/sbin/smail``:" msgstr "" #: ../../ap-pkg-diversions.rst:30 msgid "" "The ``--package smailwrapper`` ensures that ``smailwrapper``'s copy of " "``/usr/sbin/smail`` can bypass the diversion and get installed as the " "true version. It's safe to add the diversion unconditionally on upgrades " "since it will be left unchanged if it already exists, but ``dpkg-divert``" " will display a message. To suppress that message, make the command " "conditional on the version from which the package is being upgraded:" msgstr "" #: ../../ap-pkg-diversions.rst:45 msgid "" "where ``1.0-2`` is the version at which the diversion was first added to " "the package. Running the command during abort-upgrade is pointless but " "harmless." msgstr "" #: ../../ap-pkg-diversions.rst:49 msgid "The postrm has to do the reverse:" msgstr "" #: ../../ap-pkg-diversions.rst:58 msgid "" "If the diversion was added at a particular version, the postrm should " "also handle the failure case of upgrading from an older version (unless " "the older version is so old that direct upgrades are no longer " "supported):" msgstr "" #: ../../ap-pkg-diversions.rst:70 msgid "" "where ``1.0-2`` is the version at which the diversion was first added to " "the package. The postrm should not remove the diversion on upgrades both " "because there's no reason to remove the diversion only to immediately re-" "add it and since the postrm of the old package is run after unpacking so " "the removal of the diversion will fail." msgstr "" #: ../../ap-pkg-diversions.rst:76 msgid "" "Do not attempt to divert a file which is vitally important for the " "system's operation - when using ``dpkg-divert`` there is a time, after it" " has been diverted but before ``dpkg`` has installed the new version, " "when the file does not exist." msgstr "" #: ../../ap-pkg-diversions.rst:81 msgid "Do not attempt to divert a conffile, as ``dpkg`` does not handle it well." msgstr "" #: ../../ap-pkg-diversions.rst:84 msgid "" "Do not use diversions for files that have their own native override " "mechanisms, such as ``systemd`` unit files. See :doc:`ch-binary` for more" " information." msgstr "" #~ msgid "" #~ "There is a diversion list, which " #~ "is read by ``dpkg``, and updated " #~ "by a special program ``dpkg-divert``." #~ " Please see dpkg-divert(8) for full" #~ " details of its operation." #~ msgstr ""