[AppStream] Adding install duration to <release> for firmware

Matthias Klumpp matthias at tenstral.net
Sat Nov 10 14:52:44 UTC 2018


Hi!

Am Sa., 10. Nov. 2018 um 11:50 Uhr schrieb Richard Hughes <hughsient at gmail.com>:
>
> Hi all,
>
> I'm using AppStream metadata on the LVFS which is parsed by fwupd. So
> far I've managed to use a subset of AppStream, and using the
> per-component <custom> section for the crazy bits. I now need to add
> the estimated install duration to the <release>. It's not
> per-component as different releases may have very different
> installation times (for instance, updating the EC v.s. updating the
> EC+ME+BIOS) -- I've really got a few option here:
>
> * Add some kind of duration to the specification that I can use in
> <release> without feeling guilty

That would be my preferred solution.

> * Add a <X-install_duration> tag to <release>
> * Add a new <custom> section to the <release>
>
> For firmware, if we're installing an EC update on for instance an
> XPS13, I *know* it's going to take 120 seconds +/- 5 seconds.

Interesting... I wouldn't have thought that install times are that
deterministic.

> That's going to be true almost always. I'm not so sure this tag makes sense
> for applications, as if we're installing a flatpak on a SSD with 16
> core processor it might take 10 seconds, and the same flatpak on a
> single-core ARM with spinning rust is going to take 5 minutes.
>
> Happy for ideas here. Thanks.

I think adding install_duration properly makes the most sense. If
there is interest in a per-release custom tag from other parties,
adding that would maybe make sense too, I think, but let's discuss
adding the tag properly first.
At the moment, I can't think of any reason not to add it, except for
maybe people misusing it for regular applications (which isn't really
an argument not to add it, the specification just needs to make the
tag's intended purpose clear here. For regular apps, a software center
could estimate the install time from the installed-size and
download-size with some disk performance metrics, if the user really
needs to know).

What will install_duration be used for? Just to show the user some
information on how long the process will take? For other apps so far,
a simple progress bar has been sufficient (granted, you don't really
get that with firmware updates...).

Cheers,
    Matthias

---
I welcome VSRE emails. See http://vsre.info/


More information about the AppStream mailing list