#926849 Generate treeinfo files to ease automatic installations

Package:
ftp.debian.org
Source:
ftp.debian.org
Submitter:
Guido Günther
Date:
2026-01-18 14:47:01 UTC
Severity:
wishlist
Tags:
#926849#5
Date:
2019-04-11 09:49:17 UTC
From:
To:
Hi,
in order to ease fully automatic installation in tools like gnome-boxes,
virt-manager or OpenStack it would be nice to have some additional
metadata to make it simpler for tools like libosinfo (or other tools
using the same information) to identify the installation tree.

Fedora and OpenSUSE came up with treeinfo files in the installer
directories of their repository servers. There was some discussion about
this on debian-devel a while back [0].

E.g. for amd64 and stretch we'd have a file

http://ftp.debian.org/debian/dists/stretch/main/installer-amd64/.treeinfo

looking like

    [checksums]
    current/images/netboot/mini.iso = sha256:...
    current/images/netboot/debian-installer/amd64/initrd.gz = sha256:...
    current/images/netboot/debian-installer/amd64/linux = sha256: ...

    [general]
    arch = x86_64
    family = Debian
    name = Debian Stretch
    version = 9.8.0
    platforms = x86_64

    [images-x86_64]
    boot.iso = current/images/netboot/mini.iso
    initrd = current/images/netboot/debian-installer/amd64/initrd.gz
    kernel = current/images/netboot/debian-installer/amd64/linux

The layout is described at [1]. Some terms are blurry e.g. platform so
I'll look into clarifying these and make things match our requirements
as well.

I don't have experience with these parts of the archive software yet but
would look into providing the necessary changes at some point.
Cheers,
 -- Guido

[0]: https://lists.debian.org/msgid-search/CAK9pz9+D2W2+5x1Nwe_+vXhmafOKe3gehrycudPHm38YKX75FQ@mail.gmail.com
[1]: https://release-engineering.github.io/productmd/treeinfo-1.0.html

#926849#10
Date:
2019-04-11 14:34:28 UTC
From:
To:
Appears kind of redundant information, but whatever.

We like patches (well, merge requests on salsa), and this one sounds
like a useful one, so go go go. :)

#926849#15
Date:
2019-04-11 14:34:28 UTC
From:
To:
Appears kind of redundant information, but whatever.

We like patches (well, merge requests on salsa), and this one sounds
like a useful one, so go go go. :)

#926849#20
Date:
2019-04-11 14:44:38 UTC
From:
To:
Why does it need to exist in this very specific place?  How does the
user know this specific place?

Why not at
http://ftp.debian.org/debian/dists/stretch/main/installer-amd64/current/.treeinfo,
where it can be supplied by d-i itself?

Regards,
Bastian

#926849#25
Date:
2019-04-11 14:44:38 UTC
From:
To:
Why does it need to exist in this very specific place?  How does the
user know this specific place?

Why not at
http://ftp.debian.org/debian/dists/stretch/main/installer-amd64/current/.treeinfo,
where it can be supplied by d-i itself?

Regards,
Bastian

#926849#30
Date:
2019-04-11 16:59:29 UTC
From:
To:
Given one can list multiple architectures at one place, shouldn't that
be
https://deb.debian.org/debian/dists/${release}/main/treeinfo
or
https://deb.debian.org/debian/dists/${release}/treeinfo

Users shouldn't have to deal with installer-amd64 or such.

"[general]" also seems deprecated (and limited to one arch).

Is there any reason why this should be a hidden file?

Shouldn't such a file be signed in some way?  If for some reason you
only want to trust http(s), the canonical location should probably
*not* be the regular mirror network, but some different place (at which
point anyone could generate these files as well).

Ansgar