[devel-distro] branding
Leonid Krivoshein
klark.devel at gmail.com
Sat Aug 21 04:13:34 MSK 2021
Привет!
19.08.2021 13:33, Dmitry V. Levin пишет:
> [...]
> Я предлагаю следующую простую схему.
Ох, ничего себе, простую.)) Перечитав несколько раз предложение и
стандарт, я честно не понял, в чём смысл затеи. Возможно, пример кода
мержера позволил бы понять это лучше.
> Файл /etc/altlinux-release обновляется, как обычные файлы.
Сейчас он опакечивается, как файл конфигурации. Начиная с p8, уж точно.
Если его изменит админ, он больше не будет обновляться. Это же касается
и /etc/os-release, хотя в стандарте говорится следующее:
os-release contains data that is defined by the operating system vendor
and should generally not be changed by the administrator.
Отсюда уточнение: будем давать админам право менять
/etc/altlinux-release или сделаем обычным файлом? В принципе, стандарт
не исключает любого из вариантов и можно оставить, как сейчас.
> Файл /etc/os-release обновляется по правилам, описанным ниже.
>
> Все провайдеры os-release пакуют его в /usr/lib/os-release
> (согласно https://www.freedesktop.org/software/systemd/man/os-release.html),
> /usr/lib/os-release может быть ссылкой куда-то ещё, это несущественно.
> Они же пакуют %ghost /etc/os-release нулевого размера.
> Файлриггер следит за обновлением пакетов, содержащих /usr/lib/os-release,
> и мержит изменения в /etc/os-release следующим образом:
>
> Все параметры, описанные в /usr/lib/os-release, за исключением параметров,
> имена которых начинаются с префикса ALT_installed_, копируются в
> /etc/os-release, при этом, если в /etc/os-release уже были параметры с
> такими именами, то:
>
> - старые параметры, имена и значения которых совпадают с новыми,
> удаляются;
> - остальные старые параметры, имена которых совпадают с новыми,
> переименовываются путём добавления префикса ALT_installed_ и добавляются
> в /etc/os-release, если параметров с такими именами там ещё не было, в
> противном случае удаляются.
Да, стандарт допускает введение собственных параметров. Но зачем эти
параметры нам? Нужно ли нам хранить всё, что ранее было записано в
/etc/os-release? В стандарте есть хорошее поле, которое как раз не
должно меняться при обновлении -- BUILD_ID, это больше похоже на то, что
стоит пересохранять через файлтриггер.
Что касается бранча, то текущий показывает apt-repo, а на каком
строилось первоначальное решение, однозначно определяется по BUILD_ID.
--
Best regards,
Leonid Krivoshein.
More information about the devel-distro
mailing list