]> pere.pagekite.me Git - homepage.git/blobdiff - blog/archive/2013/06/index.html
Generated.
[homepage.git] / blog / archive / 2013 / 06 / index.html
index 57c5a6a8a002c9ae4febe6d1c49ce81dc60a237d..36e57ef27fc4482a81db245b7902931816d20f4f 100644 (file)
 
     <h3>Entries from June 2013.</h3>
     
+    <div class="entry">
+      <div class="title">
+        <a href="http://people.skolelinux.org/pere/blog/Automatically_locate_and_install_required_firmware_packages_on_Debian__Isenkram_0_4_.html">Automatically locate and install required firmware packages on Debian (Isenkram 0.4)</a>
+      </div>
+      <div class="date">
+        25th June 2013
+      </div>
+      <div class="body">
+        <p>It annoys me when the computer fail to do automatically what it is
+perfectly capable of, and I have to do it manually to get things
+working.  One such task is to find out what firmware packages are
+needed to get the hardware on my computer working.  Most often this
+affect the wifi card, but some times it even affect the RAID
+controller or the ethernet card.  Today I pushed version 0.4 of the
+<a href="http://packages.qa.debian.org/isenkram">Isenkram package</a>
+including a new script isenkram-autoinstall-firmware handling the
+process of asking all the loaded kernel modules what firmware files
+they want, find debian packages providing these files and install the
+debian packages.  Here is a test run on my laptop:</p>
+
+<p><pre>
+# isenkram-autoinstall-firmware 
+info: kernel drivers requested extra firmware: ipw2200-bss.fw ipw2200-ibss.fw ipw2200-sniffer.fw
+info: fetching http://http.debian.net/debian/dists/squeeze/Contents-i386.gz
+info: locating packages with the requested firmware files
+info: Updating APT sources after adding non-free APT source
+info: trying to install firmware-ipw2x00
+firmware-ipw2x00
+firmware-ipw2x00
+Preconfiguring packages ...
+Selecting previously deselected package firmware-ipw2x00.
+(Reading database ... 259727 files and directories currently installed.)
+Unpacking firmware-ipw2x00 (from .../firmware-ipw2x00_0.28+squeeze1_all.deb) ...
+Setting up firmware-ipw2x00 (0.28+squeeze1) ...
+# 
+</pre></p>
+
+<p>When all the requested firmware is present, a simple message is
+printed instead:</p>
+
+<p><pre>
+# isenkram-autoinstall-firmware 
+info: did not find any firmware files requested by loaded kernel modules.  exiting
+# 
+</pre></p>
+
+<p>It could use some polish, but it is already working well and saving
+me for time when setting up new machines. :)</p>
+
+<p>So, how does it work?  It look at the set of currently loaded
+kernel modules, and look up each one of them using modinfo, to find
+the firmware files listed in the module meta-information.  Next, it
+download the Contents file from a nearby APT mirror, and search for
+the firmware files in this file to locate the package with the
+requested firmware file.  If the package is in the non-free section, a
+non-free APT source is added and the package is installed using
+<tt>apt-get install</tt>.  The end result is a slightly better working
+machine.</p>
+
+<p>I hope someone find time to implement a more polished version of
+this script as part of the hw-detect debian-installer module, to
+finally fix <a href="http://bugs.debian.org/655507">BTS report
+#655507</a>.  There really is no need to insert USB sticks with
+firmware during a PXE install when the packages already are available
+from the nearby Debian mirror.</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/The_value_of_a_good_distro_wide_test_suite___.html">The value of a good distro wide test suite...</a>
@@ -1056,7 +1133,7 @@ debian-edu@</a>.</p>
 
 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
 
-<li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (9)</a></li>
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
 
 </ul></li>
 
@@ -1206,7 +1283,7 @@ debian-edu@</a>.</p>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (77)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (78)</a></li>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (135)</a></li>
 
@@ -1216,7 +1293,7 @@ debian-edu@</a>.</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/english">english (202)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (203)</a></li>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (21)</a></li>
 
@@ -1228,7 +1305,7 @@ debian-edu@</a>.</p>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (37)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (6)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (7)</a></li>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (18)</a></li>