<h3>Entries from December 2016.</h3>
+ <div class="entry">
+ <div class="title">
+ <a href="http://people.skolelinux.org/pere/blog/Appstream_just_learned_how_to_map_hardware_to_packages_too_.html">Appstream just learned how to map hardware to packages too!</a>
+ </div>
+ <div class="date">
+ 23rd December 2016
+ </div>
+ <div class="body">
+ <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. The goal of the Isenkram system is to 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>You can find modalias values relevant for your machine using
+<tt>cat $(find /sys/devices/ -name modalias)</tt>.
+
+<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
+now 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>
+
+ </div>
+ <div class="tags">
+
+
+ Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram</a>.
+
+
+ </div>
+ </div>
+ <div class="padding"></div>
+
<div class="entry">
<div class="title">
<a href="http://people.skolelinux.org/pere/blog/Isenkram_updated_with_a_lot_more_hardware_package_mappings.html">Isenkram updated with a lot more hardware-package mappings</a>
connected to the current system, and map the hardware to Debian
packages. It can either be done using the tools in isenkram-cli or
using the user space daemon in the isenkram package. The latter will
-notify you when new hardware about the packages to install to get it
-working, and even provide a button to click on to ask packagekit to
-install the packages. Here is an command line example from my
-Thinkpad laptop:</p>
+notify you, when inserting new hardware, about what packages to
+install to get the dongle working. It will even provide a button to
+click on to ask packagekit to install the packages.</p>
+
+<p>Here is an command line example from my Thinkpad laptop:</p>
<p><pre>
% isenkram-lookup
<h2>Archive</h2>
<ul>
+<li>2017
+<ul>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2017/01/">January (4)</a></li>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2017/02/">February (2)</a></li>
+
+</ul></li>
+
<li>2016
<ul>
<li><a href="http://people.skolelinux.org/pere/blog/archive/2016/11/">November (8)</a></li>
-<li><a href="http://people.skolelinux.org/pere/blog/archive/2016/12/">December (4)</a></li>
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2016/12/">December (5)</a></li>
</ul></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (143)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (145)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (158)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (335)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (340)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (42)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (14)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (15)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (19)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (20)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (9)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (285)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (287)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (182)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (186)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (26)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (28)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (62)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (64)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (96)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (99)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (1)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (5)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (49)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (50)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (5)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (10)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (11)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (44)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (47)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (2)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
- <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (38)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (40)</a></li>
</ul>