[devel] %post considered harmful
Aleksandr Shamaraev
shad на altlinux.org
Пн Май 4 16:22:41 MSK 2026
On Mon, May 04, 2026 at 12:29:13PM +0300, Aleksandr Shamaraev wrote:
> Доброго дня всем.
>
> <...>
>
> %post
> <...>
>
> ...перестал выполняться скрипт.
>
> Сказать по правде для пакета alt-mirror-switcher (
> https://packages.altlinux.org/ru/sisyphus/srpms/alt-mirror-switcher/specfiles/
> ) это критично, так как если используются какие нибудь дополнительные
> зеркала, то они могут быть сброшены во время обновления и обновление,
> как
> таковое, сломается из-за отсутствия источников.
Но как? К моменту установки нового пакета alt-mirror-switcher и запуска
его %post вся транзакция уже определена, а входящие в неё пакеты
выкачаны.
Прошу прощения, я видать не полностью выразил свою мысль.
Сама транзакция обновления пройдет, но допустим если будет дальше идти
update-kernel вот тут будет проблема, также она будет если повторно
запустить к примеру apt-get update
Данная ситуация может возникнуть только в случае, если меняется пакет
содержащий зеркала, то есть к примеру дополнительный пакет зеркал
alt-mirror-switcher-lists-sisyphus идет с заремаренными по умолчанию
значениями (выкл), если изначально пользователь использует что-то из
этих зеркал, после обновления они сбросятся, следовательно на вторую
транзакцию apt-get не будет знать где смотреть.
Собственно столкнувшись ранее с этой проблемой, я добавил конфиг файл, в
который gui версия пишет, что выбрал пользователь, и при запуске
переключателя после обновления он сам все восстановит как было, если это
нужно, а вот для восстановления того, что было, во время обновления,
собственно и использовался %post , чтоб тот же update-kernel прошел без
проблем следом.
Пока я подумываю скрипт ams_check.py переписать на баш или perl, дабы
решить эту проблему.
С уважением, Александр
Подробная информация о списке рассылки Devel