[AppStream] Dependencies on things in AppStream

Richard Hughes hughsient at gmail.com
Sun Mar 25 20:11:20 UTC 2018


On 25 March 2018 at 20:44, Matthias Klumpp <matthias at tenstral.net> wrote:
> <requires>
>   <memory>4GiB</memory>

Eww. Can we not just make this an integer number of bytes/Mb/Gb? The
number of GB seems like it has the required precision.

> System resources and interfaces:
> ```
> <requires>
>   <kernel version=">= 4.16">Linux</kernel>

Not valid XML, it'd need to be >=4.16 -- in appstream-glib I'm just
using a compare string, e.g. ge, lt, eq etc. Real world example:

    <requires>
      <firmware compare="eq" version="USB:0x046D">vendor-id</firmware>
      <id compare="ge" version="0.8.2">org.freedesktop.fwupd</id>
      <firmware compare="regex" version="BOT03.0[0-1]_*">bootloader</firmware>
    </requires>

>  2) People will want to add and/or relations to the items they depend
> on (like "this hardware or that hardware", "this interface or that
> interface"), so should we add "and" and "or" tags to wrap the existing
> tags in, to allow people to reflect those relations? (= do we want
> that extra complexity?)

Nope, this sounds like a nightmare to reflect in XML...

Richard


More information about the AppStream mailing list