/usr/share/metainfo/%{id}.metainfo.xml
.
<?xml version="1.0" encoding="UTF-8"?> <component type="firmware"> <id>com.hughski.ColorHug2.firmware</id> <name>ColorHugALS Firmware</name> <summary>Firmware for the ColorHugALS Ambient Light Sensor</summary> <description> <p> Updating the firmware on your ColorHugALS device improves performance and adds new features. </p> </description> <url type="homepage">http://www.hughski.com/</url> <metadata_license>CC0-1.0</metadata_license> <project_license>GPL-2.0+</project_license> <developer_name>Hughski Limited</developer_name> <provides> <firmware type="flashed">84f40464-9272-4ef7-9399-cd95f12da696</firmware> </provides> <releases> <release version="3.0.2" date="2015-02-16"> <artifacts> <artifact type="binary"> <location>http://www.hughski.com/downloads/colorhug-als/firmware/colorhug-als-3.0.2.cab</location> </artifact> </artifacts> <description> <p>This stable release fixes the following bugs:</p> <ul> <li>Fix the return code from GetHardwareVersion</li> <li>Scale the output of TakeReadingRaw by the datasheet values</li> </ul> </description> </release> </releases> </component>
type
property set to firmware
. This clearly identifies this metainfo document as describing firmware.
<id/>
tag must follow the reverse-DNS scheme as described for generic components. It is sometimes useful to suffix the ID with .firmware
to make it more unique. For example com.hughski.ColorHug2.firmware
.
<release/>
child at least one <artifact/>
tag is required in case the component describes flashed firmware.
<location/>
tag of the binary artifact specifies a remote location where the firmware .cab
can be downloaded from. The download location needs to be accessible via HTTP, HTTPS or FTP.
<releases> <release version="3.0.2" date="2015-02-16"> <artifacts> <artifact type="binary"> <location>http://www.hughski.com/downloads/colorhug-als/firmware/colorhug-als-3.0.2.cab</location> </artifact> </artifacts> <description> <p>This stable release fixes bugs.</p> </description> </release> </releases>
provides/firmware
tag describes the technical information needed to associate a firmware with a device, or describes which runtime firmware file it makes available to the kernel.
type
property of the firmware
tag needs to be set to runtime
, and its value needs to define the filename of a firmware below /lib/firmware
to the firmware file in question, like the firmware value exported from Linux kernel modules.
<provides> <firmware type="runtime">ipw2200-bss.fw</firmware> </provides>
type
property of the tag needs to be set to flashed
. Its value needs to define the GUID of the device the firmware should be flashed onto.
<provides> <firmware type="flashed">84f40464-9272-4ef7-9399-cd95f12da696</firmware> </provides>
firmware
, the following tags are required and must be present for a valid document: <id/>, <name/>, <summary/>, <metadata_license/>, <provides/> ↪ <firmware/>.