X-Git-Url: http://pere.pagekite.me/gitweb/homepage.git/blobdiff_plain/6858ce2065f53c1a3b26f35dffe5160916a5285c..2377a19a2fcd67c09830cbb4a2a81cfd5a6f00d6:/blog/archive/2016/12/12.rss diff --git a/blog/archive/2016/12/12.rss b/blog/archive/2016/12/12.rss index 66ac11c289..f9d4af8878 100644 --- a/blog/archive/2016/12/12.rss +++ b/blog/archive/2016/12/12.rss @@ -6,6 +6,198 @@ http://people.skolelinux.org/pere/blog/ + + Appstream just learned how to map hardware to packages too! + http://people.skolelinux.org/pere/blog/Appstream_just_learned_how_to_map_hardware_to_packages_too_.html + http://people.skolelinux.org/pere/blog/Appstream_just_learned_how_to_map_hardware_to_packages_too_.html + Fri, 23 Dec 2016 10:30:00 +0100 + <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> + + + + + Isenkram updated with a lot more hardware-package mappings + http://people.skolelinux.org/pere/blog/Isenkram_updated_with_a_lot_more_hardware_package_mappings.html + http://people.skolelinux.org/pere/blog/Isenkram_updated_with_a_lot_more_hardware_package_mappings.html + Tue, 20 Dec 2016 11:55:00 +0100 + <p><a href="http://packages.qa.debian.org/isenkram">The Isenkram +system</a> I wrote two years ago to make it easier in Debian to find +and install packages to get your hardware dongles to work, is still +going strong. It is a system to look up the hardware present on or +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 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 +bluez +cheese +ethtool +fprintd +fprintd-demo +gkrellm-thinkbat +hdapsd +libpam-fprintd +pidgin-blinklight +thinkfan +tlp +tp-smapi-dkms +tp-smapi-source +tpb +% +</pre></p> + +<p>It can also list the firware package providing firmware requested +by the load kernel modules, which in my case is an empty list because +I have all the firmware my machine need: + +<p><pre> +% /usr/sbin/isenkram-autoinstall-firmware -l +info: did not find any firmware files requested by loaded kernel modules. exiting +% +</pre></p> + +<p>The last few days I had a look at several of the around 250 +packages in Debian with udev rules. These seem like good candidates +to install when a given hardware dongle is inserted, and I found +several that should be proposed by isenkram. I have not had time to +check all of them, but am happy to report that now there are 97 +packages packages mapped to hardware by Isenkram. 11 of these +packages provide hardware mapping using AppStream, while the rest are +listed in the modaliases file provided in isenkram.</p> + +<p>These are the packages with hardware mappings at the moment. The +<strong>marked packages</strong> are also announcing their hardware +support using AppStream, for everyone to use:</p> + +<p>air-quality-sensor, alsa-firmware-loaders, argyll, +<strong>array-info</strong>, avarice, avrdude, b43-fwcutter, +bit-babbler, bluez, bluez-firmware, <strong>brltty</strong>, +<strong>broadcom-sta-dkms</strong>, calibre, cgminer, cheese, colord, +<strong>colorhug-client</strong>, dahdi-firmware-nonfree, dahdi-linux, +dfu-util, dolphin-emu, ekeyd, ethtool, firmware-ipw2x00, fprintd, +fprintd-demo, <strong>galileo</strong>, gkrellm-thinkbat, gphoto2, +gpsbabel, gpsbabel-gui, gpsman, gpstrans, gqrx-sdr, gr-fcdproplus, +gr-osmosdr, gtkpod, hackrf, hdapsd, hdmi2usb-udev, hpijs-ppds, hplip, +ipw3945-source, ipw3945d, kde-config-tablet, kinect-audio-setup, +<strong>libnxt</strong>, libpam-fprintd, <strong>lomoco</strong>, +madwimax, minidisc-utils, mkgmap, msi-keyboard, mtkbabel, +<strong>nbc</strong>, <strong>nqc</strong>, nut-hal-drivers, ola, +open-vm-toolbox, open-vm-tools, openambit, pcgminer, pcmciautils, +pcscd, pidgin-blinklight, printer-driver-splix, +<strong>pymissile</strong>, python-nxt, qlandkartegt, +qlandkartegt-garmin, rosegarden, rt2x00-source, sispmctl, +soapysdr-module-hackrf, solaar, squeak-plugins-scratch, sunxi-tools, +<strong>t2n</strong>, thinkfan, thinkfinger-tools, tlp, tp-smapi-dkms, +tp-smapi-source, tpb, tucnak, uhd-host, usbmuxd, viking, +virtualbox-ose-guest-x11, w1retap, xawtv, xserver-xorg-input-vmmouse, +xserver-xorg-input-wacom, xserver-xorg-video-qxl, +xserver-xorg-video-vmware, yubikey-personalization and +zd1211-firmware</p> + +<p>If you know of other packages, please let me know with a wishlist +bug report against the isenkram-cli package, and ask the package +maintainer to +<a href="https://wiki.debian.org/AppStream/Guidelines">add AppStream +metadata according to the guidelines</a> to provide the information +for everyone. In time, I hope to get rid of the isenkram specific +hardware mapping and depend exclusively on AppStream.</p> + +<p>Note, the AppStream metadata for broadcom-sta-dkms is matching too +much hardware, and suggest that the package with with any ethernet +card. See <a href="http://bugs.debian.org/838735">bug #838735</a> for +the details. I hope the maintainer find time to address it soon. In +the mean time I provide an override in isenkram.</p> + + + Oolite, a life in space as vagabond and mercenary - nice free software http://people.skolelinux.org/pere/blog/Oolite__a_life_in_space_as_vagabond_and_mercenary___nice_free_software.html