Package: esptool
Version: 4.7.0+dfsg-0.1
Tags: patch
User: p...@hungry.com
Usertags: appstream-modalias

Here is a draft patch to add Appstream metainfo XML announcing the
hardware handled by this package.  The USB IDs were fetched from the
kernel module cdc_acm, based on its listing in debian/esptool.udev.  The
change is untested, as I lacked the needed free disk space to install
all dependencies.

Including this information in the package will ensure programs mapping
hardware to packages using Appstream information, like the isenkram
package, will know that this package is useful on machines where the
hardware is discovered.

The appstream metadata file can be checked using this command after
package build:

  appstreamcli validate-tree  --no-net --explain debian/esptool

diff --git a/debian/esptool.install b/debian/esptool.install
new file mode 100644
index 0000000..84f3b9a
--- /dev/null
+++ b/debian/esptool.install
@@ -0,0 +1 @@
+com.github.espressif.esptool.metainfo.xml usr/share/metainfo
diff --git a/debian/patches/1000-appstream-metainfo.patch 
b/debian/patches/1000-appstream-metainfo.patch
new file mode 100644
index 0000000..b5bc308
--- /dev/null
+++ b/debian/patches/1000-appstream-metainfo.patch
@@ -0,0 +1,159 @@
+Description: Added AppStream metainfo XML with hardware provide info.
+ This allow isenkram to propose this package when the relevant hardware is
+ present.
+Author: Petter Reinholdtsen
+Forwarded: no
+Last-Update: 2024-08-23
+---
+Index: esptool-salsa/com.github.espressif.esptool.metainfo.xml
+===================================================================
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ esptool-salsa/com.github.espressif.esptool.metainfo.xml    2024-08-23 
15:03:35.941332029 +0200
+@@ -0,0 +1,147 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<component>
++  <id>com.github.espressif.esptool</id>
++  <metadata_license>MIT</metadata_license>
++  <name>esptool</name>
++  <summary>create and flash firmware files to ESP8266 and ESP32 
chips</summary>
++  <description>
++    <p>Communicate with the ROM bootloader in Espressif ESP8266 and
++    ESP32 chips to fash firmware files, create firmware images or read
++    OTP ROM or flash memory content such is manufacturer or device
++    IDs.</p>
++  </description>
++  <url type="homepage">https://github.com/espressif/esptool</url>
++  <provides>
++    <modalias>usb:*ic02isc02ip00in*</modalias>
++    <modalias>usb:*ic02isc02ip01in*</modalias>
++    <modalias>usb:*ic02isc02ip02in*</modalias>
++    <modalias>usb:*ic02isc02ip03in*</modalias>
++    <modalias>usb:*ic02isc02ip04in*</modalias>
++    <modalias>usb:*ic02isc02ip05in*</modalias>
++    <modalias>usb:*ic02isc02ip06in*</modalias>
++    <modalias>usb:v03EBp0030d*</modalias>
++    <modalias>usb:v0421p0001d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0007d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p000Ed*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p002Fd*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p003Ad*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0042d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0070d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0071d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p007Bd*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0088d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p008Fd*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0094d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0099d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p00A0d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p00ABd*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p00B0d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p00E9d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p00FCd*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0108d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p010Ed*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0128d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0134d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0154d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0178d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p01D0d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p01D4d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p01F5d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0223d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p026Cd*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0275d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p02D9d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p02E3d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0302d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0335d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p03CDd*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0418d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0419d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0420d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0425d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p042Dd*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p042Fd*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0445d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p044Dd*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p046Ed*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0475d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0481d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0486d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p048Ed*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p04B2d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p04C9d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p04CEd*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p04D8d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p04DFd*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p04E6d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p04F0d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0421p0508d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v0424p274Ed*</modalias>
++    <modalias>usb:v045Bp023Cd*</modalias>
++    <modalias>usb:v045Bp0248d*</modalias>
++    <modalias>usb:v045Bp024Dd*</modalias>
++    <modalias>usb:v0482p0203d*</modalias>
++    <modalias>usb:v04E2p1400d*</modalias>
++    <modalias>usb:v04E2p1401d*</modalias>
++    <modalias>usb:v04E2p1402d*</modalias>
++    <modalias>usb:v04E2p1403d*</modalias>
++    <modalias>usb:v04E2p1410d*</modalias>
++    <modalias>usb:v04E2p1411d*</modalias>
++    <modalias>usb:v04E2p1412d*</modalias>
++    <modalias>usb:v04E2p1414d*</modalias>
++    <modalias>usb:v04E2p1420d*</modalias>
++    <modalias>usb:v04E2p1422d*</modalias>
++    <modalias>usb:v04E2p1424d*</modalias>
++    <modalias>usb:v04E7p6651d*ic02isc02ipFFin*</modalias>
++    <modalias>usb:v04E8p685Dd*</modalias>
++    <modalias>usb:v0572p1321d*</modalias>
++    <modalias>usb:v0572p1324d*</modalias>
++    <modalias>usb:v0572p1328d*</modalias>
++    <modalias>usb:v0572p1329d*</modalias>
++    <modalias>usb:v0572p1340d*</modalias>
++    <modalias>usb:v0572p1349d*</modalias>
++    <modalias>usb:v058Bp0041d*</modalias>
++    <modalias>usb:v05F9p4002d*</modalias>
++    <modalias>usb:v076Dp0006d*</modalias>
++    <modalias>usb:v079Bp000Fd*</modalias>
++    <modalias>usb:v0803p3095d*</modalias>
++    <modalias>usb:v0870p0001d*</modalias>
++    <modalias>usb:v09D8p0320d*</modalias>
++    <modalias>usb:v0ACEp1602d*</modalias>
++    <modalias>usb:v0ACEp1608d*</modalias>
++    <modalias>usb:v0ACEp1611d*</modalias>
++    <modalias>usb:v0C26p0020d*</modalias>
++    <modalias>usb:v0CA6pA050d*</modalias>
++    <modalias>usb:v0E8Dp0003d*</modalias>
++    <modalias>usb:v0E8Dp2000d*</modalias>
++    <modalias>usb:v0E8Dp3329d*</modalias>
++    <modalias>usb:v108Cp0159d*</modalias>
++    <modalias>usb:v108Cp0168d*</modalias>
++    <modalias>usb:v108Cp0169d*</modalias>
++    <modalias>usb:v11CAp0201d*</modalias>
++    <modalias>usb:v1519p0452d*</modalias>
++    <modalias>usb:v1576p03B1d*</modalias>
++    <modalias>usb:v17EFp7000d*</modalias>
++    <modalias>usb:v1965p0018d*</modalias>
++    <modalias>usb:v1BBBp0003d*</modalias>
++    <modalias>usb:v1BC7p0021d*</modalias>
++    <modalias>usb:v1BC7p0023d*</modalias>
++    <modalias>usb:v20DFp0001d*</modalias>
++    <modalias>usb:v2184p001Cd*</modalias>
++    <modalias>usb:v2184p0036d*</modalias>
++    <modalias>usb:v22B8p2D91d*</modalias>
++    <modalias>usb:v22B8p2D92d*</modalias>
++    <modalias>usb:v22B8p2D93d*</modalias>
++    <modalias>usb:v22B8p2D95d*</modalias>
++    <modalias>usb:v22B8p2D96d*</modalias>
++    <modalias>usb:v22B8p2D97d*</modalias>
++    <modalias>usb:v22B8p2D99d*</modalias>
++    <modalias>usb:v22B8p2D9Ad*</modalias>
++    <modalias>usb:v22B8p6425d*</modalias>
++    <modalias>usb:v22B8p7000d*</modalias>
++    <modalias>usb:v27C6p5395d*</modalias>
++    <modalias>usb:v2912p0001d*</modalias>
++    <modalias>usb:v32A7p0000d*</modalias>
++    <modalias>usb:vFFF0p0100d*</modalias>
++  </provides>
++</component>
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..42e8b1a
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1 @@
+1000-appstream-metainfo.patch

-- 
Happy hacking
Petter Reinholdtsen

Reply via email to