<h3>Entries from January 2013.</h3>
+ <div class="entry">
+ <div class="title">
+ <a href="http://people.skolelinux.org/pere/blog/First_prototype_ready_making_hardware_easier_to_use_in_Debian.html">First prototype ready making hardware easier to use in Debian</a>
+ </div>
+ <div class="date">
+ 21st January 2013
+ </div>
+ <div class="body">
+ <p>Early this month I set out to try to
+<a href="http://people.skolelinux.org/pere/blog/Lets_make_hardware_dongles_easier_to_use_in_Debian.html">improve
+the Debian support for pluggable hardware devices</a>. Now my
+prototype is working, and it is ready for a larger audience. To test
+it, fetch the
+<a href="http://anonscm.debian.org/viewvc/debian-edu/trunk/src/hw-support-handler/">source
+from the Debian Edu subversion repository</a>, build and install the
+package. You might have to log out and in again activate the
+autostart script.</p>
+
+<p>The design is simple:</p>
+
+<ul>
+
+<li>Add desktop entry in /usr/share/autostart/ causing a program
+hw-support-handlerd to start when the user log in.</li>
+
+<li>This program listen for kernel events about new hardware (directly
+from the kernel like udev does), not using HAL dbus events as I
+initially did.</li>
+
+<li>When new hardware is inserted, look up the hardware modalias in
+the APT database, a database
+<a href="http://anonscm.debian.org/viewvc/debian-edu/trunk/src/hw-support-handler/modaliases?view=markup">available
+via HTTP</a> and a database available as part of the package.</li>
+
+<li>If a package is mapped to the hardware in question, the package
+isn't installed yet and this is the first time the hardware was
+plugged in, show a desktop notification suggesting to install the
+package or packages.</li>
+
+<li>If the user click on the 'install package now' button, ask
+aptdaemon via the PackageKit API to install the requrired package.</li>
+
+<li>aptdaemon ask for root password or sudo password, and install the
+package while showing progress information in a window.</li>
+
+</ul>
+
+<p>I still need to come up with a better name for the system. Here
+are some screen shots showing the prototype in action. First the
+notification, then the password request, and finally the request to
+approve all the dependencies. Sorry for the Norwegian Bokmål GUI.</p>
+
+<p><img src="http://people.skolelinux.org/pere/blog/images/2013-01-21-hw-support-1-notification.png">
+<br><img src="http://people.skolelinux.org/pere/blog/images/2013-01-21-hw-support-2-password.png">
+<br><img src="http://people.skolelinux.org/pere/blog/images/2013-01-21-hw-support-3-dependencies.png">
+<br><img src="http://people.skolelinux.org/pere/blog/images/2013-01-21-hw-support-4-installing.png">
+<br><img src="http://people.skolelinux.org/pere/blog/images/2013-01-21-hw-support-5-installing-details.png" width="70%"></p>
+
+<p>The prototype still need to be improved with longer timeouts, but
+is already useful. The database of hardware to package mappings also
+need more work. It is currently compatible with the Ubuntu way of
+storing such information in the package control file, but could be
+changed to use other formats instead or in addition to the current
+method. I've dropped the use of discover for this mapping, as the
+modalias approach is more flexible and easier to use on Linux as long
+as the Linux kernel expose its modalias strings directly.</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>.
+
+
+ </div>
+ </div>
+ <div class="padding"></div>
+
<div class="entry">
<div class="title">
<a href="http://people.skolelinux.org/pere/blog/Thank_you_Thinkpad_X41__for_your_long_and_trustworthy_service.html">Thank you Thinkpad X41, for your long and trustworthy service</a>
<li>2013
<ul>
-<li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (9)</a></li>
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (10)</a></li>
</ul></li>
<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 (67)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (68)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (118)</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 (173)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (174)</a></li>
<li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (21)</a></li>