]> pere.pagekite.me Git - homepage.git/commitdiff
New post on isenkram/appstream.
authorPetter Reinholdtsen <pere@hungry.com>
Fri, 23 Dec 2016 09:28:25 +0000 (10:28 +0100)
committerPetter Reinholdtsen <pere@hungry.com>
Fri, 23 Dec 2016 09:28:25 +0000 (10:28 +0100)
blog/data/2016-12-23-isenkram.txt [new file with mode: 0644]

diff --git a/blog/data/2016-12-23-isenkram.txt b/blog/data/2016-12-23-isenkram.txt
new file mode 100644 (file)
index 0000000..86cafd2
--- /dev/null
@@ -0,0 +1,83 @@
+Title: Appstream just learned how to map hardware to packages too!
+Tags: english, debian, isenkram
+Date: 2016-12-23 10:30
+
+<p>I received a very nice christmas present today.  As my regular
+readers probably know, I have been working on the
+<a href="http://packages.qa.debian.org/isenkram">the Isenkram
+system</a> for many years.  It make it easier for users to figure out
+what to install to get a given piece of hardware to work in Debian,
+and a key part of this system is a way to map hardware to packages.
+Isenkram have its own mapping database, and also uses data provided by
+each package using the AppStream metadata format.  And today,
+<a href="https://tracker.debian.org/pkg/appstream">AppStream</a> in
+Debian learned to look up hardware the same way Isenkram is doing it,
+ie using fnmatch():</p>
+
+<p><pre>
+% appstreamcli what-provides modalias \
+  usb:v1130p0202d0100dc00dsc00dp00ic03isc00ip00in00
+Identifier: pymissile [generic]
+Name: pymissile
+Summary: Control original Striker USB Missile Launcher
+Package: pymissile
+% appstreamcli what-provides modalias usb:v0694p0002d0000
+Identifier: libnxt [generic]
+Name: libnxt
+Summary: utility library for talking to the LEGO Mindstorms NXT brick
+Package: libnxt
+---
+Identifier: t2n [generic]
+Name: t2n
+Summary: Simple command-line tool for Lego NXT
+Package: t2n
+---
+Identifier: python-nxt [generic]
+Name: python-nxt
+Summary: Python driver/interface/wrapper for the Lego Mindstorms NXT robot
+Package: python-nxt
+---
+Identifier: nbc [generic]
+Name: nbc
+Summary: C compiler for LEGO Mindstorms NXT bricks
+Package: nbc
+%
+</pre></p>
+
+<p>A similar query can be done using the combined AppStream and
+Isenkram databases using the isenkram-lookup tool:</p>
+
+<p><pre>
+% isenkram-lookup usb:v1130p0202d0100dc00dsc00dp00ic03isc00ip00in00
+pymissile
+% isenkram-lookup usb:v0694p0002d0000
+libnxt
+nbc
+python-nxt
+t2n
+%
+</pre></p>
+
+<p>If you want to make this system a success and help Debian users
+make the most of the hardware they have, please
+help<a href="https://wiki.debian.org/AppStream/Guidelines">add
+AppStream metadata for your package following the guidelines</a>
+documented in the wiki.  So far only 11 packages provide such
+information, among the several hundred hardware specific packages in
+Debian. The Isenkram database on the other hand contain 101 packages,
+mostly related to USB dongles.  Most of the packages with hardware
+mapping in AppStream are LEGO Mindstorms related, because I have, as
+part of my involvement in
+<a href="https://wiki.debian.org/LegoDesigners">the Debian LEGO
+team</a> given priority to making sure LEGO users get proposed the
+complete set of packages in Debian for that particular hardware.  The
+team also got a nice Christmas present today.  The
+<a href="https://tracker.debian.org/pkg/nxt-firmware">nxt-firmware
+package</a> made it into Debian.  With this package in place, it is
+not possible to use the LEGO Mindstorms NXT unit with only free
+software, as the nxt-firmware package contain the source and firmware
+binaries for the NXT brick.</p>
+
+<p>As usual, if you use Bitcoin and want to show your support of my
+activities, please send Bitcoin donations to my address
+<b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&label=PetterReinholdtsenBlog">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>