]> pere.pagekite.me Git - homepage.git/blobdiff - blog/index.html
Generated.
[homepage.git] / blog / index.html
index c28d1a9023273549c21d3c69c876bc338e9aa393..43e77707854225cd4f283b85a6747261722e6971 100644 (file)
 
 
     
 
 
     
+    <div class="entry">
+      <div class="title"><a href="http://people.skolelinux.org/pere/blog/Using_appstream_with_isenkram_to_install_hardware_related_packages_in_Debian.html">Using appstream with isenkram to install hardware related packages in Debian</a></div>
+      <div class="date">20th December 2015</div>
+      <div class="body"><p>Around three years ago, I created
+<a href="http://packages.qa.debian.org/isenkram">the isenkram
+system</a> to get a more practical solution in Debian for handing
+hardware related packages.  A GUI system in the isenkram package will
+present a pop-up dialog when some hardware dongle supported by
+relevant packages in Debian is inserted into the machine.  The same
+lookup mechanism to detect packages is available as command line
+tools in the isenkram-cli package.  In addition to mapping hardware,
+it will also map kernel firmware files to packages and make it easy to
+install needed firmware packages automatically.  The key for this
+system to work is a good way to map hardware to packages, in other
+words, allow packages to announce what hardware they will work
+with.</p>
+
+<p>I started by providing data files in the isenkram source, and
+adding code to download the latest version of these data files at run
+time, to ensure every user had the most up to date mapping available.
+I also added support for storing the mapping in the Packages file in
+the apt repositories, but did not push this approach because while I
+was trying to figure out how to best store hardware/package mappings,
+<a href="http://www.freedesktop.org/software/appstream/docs/">the
+appstream system</a> was announced.  I got in touch and suggested to
+add the hardware mapping into that data set to be able to use
+appstream as a data source, and this was accepted at least for the
+Debian version of appstream.</p>
+
+<p>A few days ago using appstream in Debian for this became possible,
+and today I uploaded a new version 0.20 of isenkram adding support for
+appstream as a data source for mapping hardware to packages.  The only
+package so far using appstream to announce its hardware support is my
+pymissile package.  I got help from Matthias Klumpp with figuring out
+how do add the required
+<a href="https://appstream.debian.org/html/sid/main/metainfo/pymissile.html">metadata
+in pymissile</a>.  I added a file debian/pymissile.metainfo.xml with
+this content:</p>
+
+<blockquote><pre>
+&lt;?xml version="1.0" encoding="UTF-8"?&gt;
+&lt;component&gt;
+  &lt;id&gt;pymissile&lt;/id&gt;
+  &lt;metadata_license&gt;MIT&lt;/metadata_license&gt;
+  &lt;name&gt;pymissile&lt;/name&gt;
+  &lt;summary&gt;Control original Striker USB Missile Launcher&lt;/summary&gt;
+  &lt;description&gt;
+    &lt;p&gt;
+      Pymissile provides a curses interface to control an original
+      Marks and Spencer / Striker USB Missile Launcher, as well as a
+      motion control script to allow a webcamera to control the
+      launcher.
+    &lt;/p&gt;
+  &lt;/description&gt;
+  &lt;provides&gt;
+    &lt;modalias&gt;usb:v1130p0202d*&lt;/modalias&gt;
+  &lt;/provides&gt;
+&lt;/component&gt;
+</pre></blockquote>
+
+<p>The key for isenkram is the component/provides/modalias value,
+which is a glob style match rule for hardware specific strings
+(modalias strings) provided by the Linux kernel.  In this case, it
+will map to all USB devices with vendor code 1130 and product code
+0202.</p>
+
+<p>Note, it is important that the license of all the metadata files
+are compatible to have permissions to aggregate them into archive wide
+appstream files.  Matthias suggested to use MIT or BSD licenses for
+these files.  A challenge is figuring out a good id for the data, as
+it is supposed to be globally unique and shared across distributions
+(in other words, best to coordinate with upstream what to use).  But
+it can be changed later or, so we went with the package name as
+upstream for this project is dormant.</p>
+
+<p>To get the metadata file installed in the correct location for the
+mirror update scripts to pick it up and include its content the
+appstream data source, the file must be installed in the binary
+package under /usr/share/appdata/.  I did this by adding the following
+line to debian/pymissile.install:</p>
+
+<blockquote><pre>
+debian/pymissile.metainfo.xml usr/share/appdata
+</pre></blockquote>
+
+<p>With that in place, the command line tool isenkram-lookup will list
+all packages useful on the current computer automatically, and the GUI
+pop-up handler will propose to install the package not already
+installed if a hardware dongle is inserted into the machine in
+question.</p>
+
+<p>Details of the modalias field in appstream is available from the 
+<a href="https://wiki.debian.org/DEP-11">DEP-11</a> proposal.</p>
+
+<p>To locate the modalias values of all hardware present in a machine,
+try running this command on the command line:</p>
+
+<blockquote><pre>
+cat $(find /sys/devices/|grep modalias)
+</pre></blockquote>
+
+<p>To learn more about the isenkram system, please check out
+<a href="http://people.skolelinux.org/pere/blog/tags/isenkram/">my
+blog posts tagged isenkram</a>.</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/Bokhandeldistribusjon_av_boken_Fri_kultur_av_Lawrence_Lessig.html">Bokhandeldistribusjon av boken Fri kultur av Lawrence Lessig</a></div>
       <div class="date">14th December 2015</div>
     <div class="entry">
       <div class="title"><a href="http://people.skolelinux.org/pere/blog/Bokhandeldistribusjon_av_boken_Fri_kultur_av_Lawrence_Lessig.html">Bokhandeldistribusjon av boken Fri kultur av Lawrence Lessig</a></div>
       <div class="date">14th December 2015</div>
@@ -1103,72 +1218,6 @@ på papir fra lulu.com</a>,» avslutter Reinholdtsen.</p>
     </div>
     <div class="padding"></div>
     
     </div>
     <div class="padding"></div>
     
-    <div class="entry">
-      <div class="title"><a href="http://people.skolelinux.org/pere/blog/_Fri_kultur__av__lessig___norsk_utgave_av__Free_Culture__tilgjengelig_p__papir__PDF_og_ePub.html">"Fri kultur" av @lessig - norsk utgave av "Free Culture" tilgjengelig på papir, PDF og ePub</a></div>
-      <div class="date">28th October 2015</div>
-      <div class="body"><p><a href="http://www.lulu.com/shop/lawrence-lessig/fri-kultur/paperback/product-22406445.html">Klikk her for å kjøpe boken</a>.</p>
-
-<p>I 2004, mens <a href="https://creativecommons.org/">Creative
-Commons-bevegelsen</a> vokste frem, skrev bevegelsens stifter Lawrence
-Lessig boken
-<a href="https://en.wikipedia.org/wiki/Free_Culture_(book)">Free
-Culture</a> for å forklare problemene med økene åndsverksregulering og
-for å foreslå noen løsninger.  Jeg leste boken den gangen, og den både
-inspirerte meg og endret på hvordan jeg så på opphavsrettslovigving.
-Jeg skulle ønske flere folk leste denne boken.  Den gir en god
-gjennomgang av hvordan økende åndsverksregulering skader både
-nyskapning og kulturlivet, og skisserer hvordan både lovgivere og oss
-vanlige borgere kan bidra for å få slutt på dette.</p>
-
-<p>Derfor bestemte jeg meg sommeren 2012 for å oversette den til norsk
-bokmål og gjøre den tilgjengelig for de blant mine venner og familie
-som foretrekker å lese bøker på norsk.  Jeg oversatte boken ved hjelp
-av docbook og en gettext PO-fil, og endte opp med to utgaver, en på
-norsk og en på engelsk.  Den engelske publiserte jeg i forrige uke, og
-den norske utgaven på papir
-<a href="http://www.lulu.com/shop/lawrence-lessig/fri-kultur/paperback/product-22406445.html">er
-nå klar for salg</a>.  Jeg fikk heldigvis hjelp med oversetting og
-korrekturlesing av den norske utgaven fra en rekke frivillige.  Se
-side 245 for en komplett liste.  Slik ser omslaget ut:
-
-<p align="center"><a href="http://www.lulu.com/shop/lawrence-lessig/fri-kultur/paperback/product-22406445.html"><img align="center" src="http://people.skolelinux.org/pere/blog/images/2015-10-28-free-culture-norwegian-published-cover.png"/></a></p>
-
-<p>I tillegg til den norske og engelske utgaven holder vi på med en
-fransk utgave.  Den koordineres av dblatex-utvikleren Benoît Guillon,
-og oversettelsen var komplett denne uka men må korrekturleses før den
-kan gis ut.  Flere frivillige trengs her, så ta kontakt med Benoît
-hvis du vil bidra.</p>
-
-<p>Boken er også tilgjengelig i PDF, ePub og MOBI-format fra
-<a href="https://github.com/petterreinholdtsen/free-culture-lessig">min
-github-prosjektside</a>.  Merk at ePub og MOBI-utgavene har noen
-formatteringsproblemer som jeg tror kommer av feil i docbook-verktøyet
-dbtoepub (Debian BTS-rapporter
-<a href="https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=795842">#795842</a>
-og
-<a href="https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796871">#796871</a>),
-men jeg har ikke tatt meg tid til å undersøke problemene.  For de som
-vil ha elektronisk kopi anbefaler jeg å bruke PDF- og ePub-utgaven i
-denne omgang, da de ser ut til å hånderes bra av de fremviserne jeg
-har tilgjengelig.</p>
-
-<p>Etter at oversettelsen til bokmål var ferdig klarte jeg å overtale
-<a href="http://www.nuugfoundation.no/">NUUG Foundation</a> til å
-sponse trykking av boken.  Det er årsaken til at stiftelsens logo er
-på baksiden av omslaget.  Jeg er svært takknemlig for dette, og bruker
-bidraget til å gi en kopi av den norske utgaven til alle
-Stortingsrepresentanter og andre beslutningstakere her i Norge.</p>
-</div>
-      <div class="tags">
-        
-        
-        Tags: <a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook</a>, <a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>. 
-        
-        
-      </div>
-    </div>
-    <div class="padding"></div>
-    
     <p style="text-align: right;"><a href="index.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS feed" width="36" height="14" /></a></p>
     <div id="sidebar">
       
     <p style="text-align: right;"><a href="index.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS feed" width="36" height="14" /></a></p>
     <div id="sidebar">
       
@@ -1202,7 +1251,7 @@ Stortingsrepresentanter og andre beslutningstakere her i Norge.</p>
 
 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/11/">November (6)</a></li>
 
 
 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/11/">November (6)</a></li>
 
-<li><a href="http://people.skolelinux.org/pere/blog/archive/2015/12/">December (1)</a></li>
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2015/12/">December (2)</a></li>
 
 </ul></li>
 
 
 </ul></li>
 
@@ -1412,7 +1461,7 @@ Stortingsrepresentanter og andre beslutningstakere her i Norge.</p>
 
  <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/chrpath">chrpath (2)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (114)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (115)</a></li>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (154)</a></li>
 
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (154)</a></li>
 
@@ -1424,7 +1473,7 @@ Stortingsrepresentanter og andre beslutningstakere her i Norge.</p>
 
  <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/drivstoffpriser">drivstoffpriser (4)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (296)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (297)</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/fiksgatami">fiksgatami (23)</a></li>
 
@@ -1440,7 +1489,7 @@ Stortingsrepresentanter og andre beslutningstakere her i Norge.</p>
 
  <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/intervju">intervju (42)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (10)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (11)</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 (19)</a></li>