Я понимаю, что пакет состоит из двух компонентов: config
и data
файлов. Во время обновления пакета (т.е. обновления безопасности) data
файлы могут быть перезаписаны, но config
файлы всегда должны оставаться прежними. Также config
файлы обычно в /etc
и data
в /usr
. Иногда, однако, различие размыто.
В моем случае я изменил файл значков для Icedove
(Thunderbird):
/usr/share/applications/icedove.desktop
Теперь каждый раз, когда есть Icedove
обновлении (Thunderbird) мои изменения перезаписываются файлом по умолчанию (даже если он не менялся между обновлениями).
Есть ли способ предотвратить перезапись этого файла?
Установка его в значение immutable с помощью chattr +i icedove.desktop
не является хорошей идеей, так как это приводит к ошибке во время обновления пакета.
$XDG_DATA_HOME/applications/icedove.desktop
, хотя обычно это путь поиска, который вы упоминаете. Спецификация Справочника Базы XDG также предоставляет путь поиска в$XDG_DATA_DIRS
для общесистемных переопределений. Более подробное объяснение того, как в этом случае применяются базовые каталоги XDG, содержится в моем ответе .