From: Arseny Maslennikov <arseny@altlinux.org>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: Re: [devel] %post considered harmful
Date: Mon, 4 May 2026 15:54:15 +0300
Message-ID: <afiW9zow0zQ_tfVB@cello> (raw)
In-Reply-To: <86d29d44950045f4b9c7c6d0294c14d1@altlinux.org>
[-- Attachment #1: Type: text/plain, Size: 2345 bytes --]
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 вся транзакция уже определена, а входящие в неё пакеты
выкачаны.
> Данный скрипт призван восстановить их во время обновления, чтоб дальше шло
> все как шло.
секция %post существует от безысходности и недостатков в устройстве всего
остального. Вместо %pre/%postun и %post/%preun по возможности надо
полагаться на что-то статически определяемое, неимперативное: файлы в
ФС, например. RPM неплохо умеет сохранять консистентность набора файлов,
распространяемого в пакетах, а вашей программе останется только уметь их
прочесть после установки.
В вашем случае вы сами автор своего счастья^W^W софтины в пакете, и,
наверное, можете добиться того, чтобы список зеркал, включая
дополнительные, был набором файлов в ФС. :) (Или же добиться этого от
сообщества, возложив модель хранения зеркал на него... важная же часть
пакетной системы)
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
prev parent reply other threads:[~2026-05-04 12:54 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-04 9:29 [devel] Выполнение секции %post Aleksandr Shamaraev
2026-05-04 11:05 ` Vitaly Chikunov
2026-05-04 12:54 ` Arseny Maslennikov [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=afiW9zow0zQ_tfVB@cello \
--to=arseny@altlinux.org \
--cc=devel@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git