[systemd-devel] /etc/os-release but for images
Davide Bettio
davide.bettio at secomind.com
Wed Mar 23 09:51:07 UTC 2022
Hello,
First of all, thanks for your answers.
It wasn't really clear to me that the /etc/os-release file was editable
from a 3rd party other than the distribution maintainers, so thanks for the
clarifications. Are the distributions required to leave IMAGE_ID and
IMAGE_VERSION empty? Can I safely just append those fields at the end of
the copy of the /etc/os-release file?
Speaking of BUILD_ID, according to the spec sounds like a field reserved to
distributions: "BUILD_ID may be used in distributions where the original
installation image version is important", from my side what I need is to
identify the git revision + build date of the recipe I'm using to cook the
image installed on the system, also my plan is to change that ID every time
I cook a new image, furthermore I plan to replace the whole operating
system image (that I keep read-only) in order to update it, so BUILD_ID
would change at every update (so it sounds slightly different from the
original described semantic).
Last but not least, I was looking for a machine parsable unique id, so I
plan to use BUILD_UUID if it is not kept reserved for other usages, that
will be an UUID that is freshly generated every time I cook a new image.
Regards,
Davide Bettio.
Il giorno mar 22 mar 2022 alle ore 18:09 Lennart Poettering <
lennart at poettering.net> ha scritto:
> On Di, 22.03.22 17:10, Davide Bettio (davide.bettio at secomind.com) wrote:
>
> > Hello,
> >
> > I would like to figure out if anyone has proposed any kind of standard
> for
> > storing metadata about a system image.
>
> The IMAGE_ID= and IMAGE_VERSION= fields from /etc/os-release are
> supposed to be used for that.
>
> i.e. the idea was that you can take a generic distro (fedora, debian,
> …) build an image off it, and it will put its own os info in
> /usr/lib/os-release, and make /etc/os-release a symlink to it. Your
> image build would then replace /etc/os-release with a file, that
> incorporates /usr/lib/os-release and adds in IMAGE_ID=/IMAGE_VERSION=.
>
> Each time you rebuild the image your image building tool would repeat
> that step. i.e. it would be the image builder tool's job to extend the
> generic OS data from /usr/lib/ with info about the image and place the
> result in /etc/.
>
> Lennart
>
> --
> Lennart Poettering, Berlin
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/systemd-devel/attachments/20220323/a72131dd/attachment.htm>
More information about the systemd-devel
mailing list