[AppStream] Adding another component specifier for variant
Richard Hughes
hughsient at gmail.com
Fri Sep 20 08:12:47 UTC 2019
Hi all,
At the moment the LVFS and fwupd are using AppStream to describe the
firmware. On the most part it's going pretty well, but I'm again
asking for another tag to fix this bug:
https://github.com/fwupd/lvfs-website/issues/373 -- which is now being
requested by Lenovo and Dell.
So far we use the model name (e.g. ThinkPad P50) in the <name>, a
category of "X-SystemUpdate" and the developer name to turn this into
"Lenovo ThinkPad P50 System Update" in the GUI which is fine for 99%
of cases. In the 1% there can be more than one "variant" of the laptop
model, for instance one version for the US market and one version for
the China market, or a limited version with some kind of speciality
like being designed with some extra security features. Although those
systems have different GUID <provides> they still look like
"duplicates" visually in the LVFS as they have the same composite
title.
What I was going to suggest was an optional <variant> translatable tag
that can describe the component where the name itself is not suitable.
I did think about (ab)using the <branch> for this, but that feels icky
and isn't marked for translation. This might be useful for other
software too, for instance a flatpak with the patented stuff ripped
out (and a different app-id) could be a variant to avoid duplicate
entries in GNOME Software. Other ideas welcome!
The fallback is that I do something like <X-Variant>China</X-Variant>
or even <metadata><value key="LVFS::ComponentVariant">China</key> but
both of those feel like the wrong thing to do. Ideas welcome, thanks.
Richard
More information about the AppStream
mailing list