[devel-distro] os-release

Andrey Cherepanov cas at altlinux.org
Thu Aug 19 14:58:12 MSK 2021


19.08.2021 14:43, Dmitry V. Levin пишет:
> On Thu, Aug 19, 2021 at 02:39:21PM +0300, Andrey Cherepanov wrote:
>> 19.08.2021 13:33, Dmitry V. Levin пишет:
>>> On Mon, Aug 16, 2021 at 12:26:55PM +0300, Anton Farygin wrote:
>>>> On 16.08.2021 12:22, Anton V. Boyarshinov wrote:
>>>>>     
>>>>>>> У каждого продукта своё версионирование и не вполне понятно -- как
>>>>>>> можно связать это версионирование с "версией бранча". Версия бранча это
>>>>>>> вообще имя_бранча+дата.
>>>>>> У /etc/os-release есть куча полей, куда можно записывать и дату бранча в
>>>>>> том числе.
>>>>>>
>>>>>> Плюс в стандарте есть возможность создавать свои расширения.
>>>>> Значит надо продумать как единообразным образом использовать эти кучу
>>>>> полей и, возможно, расширения.
>>>> Я для обсуждеия этого повесил баг:
>>>>
>>>> https://bugzilla.altlinux.org/40703
>>>>
>>>> предлагаю с обсуждением переместиться туда.
>>> Обсуждать в баге неудобно.
>>> Я предлагаю следующую простую схему.
>>>
>>> Файл /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/altlinux-release)
> Это очень простой merger.  В чём избыточная сложность?

Зачем хранить всю информацию, если требуется только наименование 
операционной системы и её версии.

А так вместо одной строки нужно дублировать 5 (!).

> Какому пакету будет принадлежать копия /etc/altlinux-release?
>
Ни к какому.

-- 
Andrey Cherepanov
cas �� altlinux.org



More information about the devel-distro mailing list