<link>http://people.skolelinux.org/pere/blog/</link>
+ <item>
+ <title>I spent last weekend recording MakerCon Nordic</title>
+ <link>http://people.skolelinux.org/pere/blog/I_spent_last_weekend_recording_MakerCon_Nordic.html</link>
+ <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/I_spent_last_weekend_recording_MakerCon_Nordic.html</guid>
+ <pubDate>Thu, 23 Oct 2014 23:00:00 +0200</pubDate>
+ <description><p>I spent last weekend at <a href="http://www.makercon.no/">Makercon
+Nordic</a>, a great conference and workshop for makers in Norway and
+the surrounding countries. I had volunteered on behalf of the
+Norwegian Unix Users Group (NUUG) to video record the talks, and we
+had a great and exhausting time recording the entire day, two days in
+a row. There were only two of us, Hans-Petter and me, and we used the
+regular video equipment for NUUG, with a
+<a href="http://dvswitch.alioth.debian.org/wiki/">dvswitch</a>, a
+camera and a VGA to DV convert box, and mixed video and slides
+live.</p>
+
+<p>Hans-Petter did the post-processing, consisting of uploading the
+around 180 GiB of raw video to Youtube, and the result is
+<a href="https://www.youtube.com/user/MakerConNordic/">now becoming
+public</a> on the MakerConNordic account. The videos have the license
+NUUG always use on our recordings, which is
+<a href="http://creativecommons.org/licenses/by-sa/3.0/no/">Creative
+Commons Navngivelse-Del på samme vilkår 3.0 Norge</a>. Many great
+talks available. Check it out! :)</p>
+</description>
+ </item>
+
+ <item>
+ <title>listadmin, the quick way to moderate mailman lists - nice free software</title>
+ <link>http://people.skolelinux.org/pere/blog/listadmin__the_quick_way_to_moderate_mailman_lists___nice_free_software.html</link>
+ <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/listadmin__the_quick_way_to_moderate_mailman_lists___nice_free_software.html</guid>
+ <pubDate>Wed, 22 Oct 2014 20:00:00 +0200</pubDate>
+ <description><p>If you ever had to moderate a mailman list, like the ones on
+alioth.debian.org, you know the web interface is fairly slow to
+operate. First you visit one web page, enter the moderation password
+and get a new page shown with a list of all the messages to moderate
+and various options for each email address. This take a while for
+every list you moderate, and you need to do it regularly to do a good
+job as a list moderator. But there is a quick alternative,
+<a href="http://heim.ifi.uio.no/kjetilho/hacks/#listadmin">the
+listadmin program</a>. It allow you to check lists for new messages
+to moderate in a fraction of a second. Here is a test run on two
+lists I recently took over:</p>
+
+<p><blockquote><pre>
+% time listadmin xiph
+fetching data for pkg-xiph-commits@lists.alioth.debian.org ... nothing in queue
+fetching data for pkg-xiph-maint@lists.alioth.debian.org ... nothing in queue
+
+real 0m1.709s
+user 0m0.232s
+sys 0m0.012s
+%
+</pre></blockquote></p>
+
+<p>In 1.7 seconds I had checked two mailing lists and confirmed that
+there are no message in the moderation queue. Every morning I
+currently moderate 68 mailman lists, and it normally take around two
+minutes. When I took over the two pkg-xiph lists above a few days
+ago, there were 400 emails waiting in the moderator queue. It took me
+less than 15 minutes to process them all using the listadmin
+program.</p>
+
+<p>If you install
+<a href="https://tracker.debian.org/pkg/listadmin">the listadmin
+package</a> from Debian and create a file <tt>~/.listadmin.ini</tt>
+with content like this, the moderation task is a breeze:</p>
+
+<p><blockquote><pre>
+username@example.org
+spamlevel 23
+default discard
+discard_if_reason "Posting restricted to members only. Remove us from your mail list."
+
+password secret
+adminurl https://{domain}/mailman/admindb/{list}
+mailman-list@lists.example.com
+
+password hidden
+other-list@otherserver.example.org
+</pre></blockquote></p>
+
+<p>There are other options to set as well. Check the manual page to
+learn the details.</p>
+
+<p>If you are forced to moderate lists on a mailman installation where
+the SSL certificate is self signed or not properly signed by a
+generally accepted signing authority, you can set a environment
+variable when calling listadmin to disable SSL verification:</p>
+
+<p><blockquote><pre>
+PERL_LWP_SSL_VERIFY_HOSTNAME=0 listadmin
+</pre></blockquote></p>
+
+<p>If you want to moderate a subset of the lists you take care of, you
+can provide an argument to the listadmin script like I do in the
+initial screen dump (the xiph argument). Using an argument, only
+lists matching the argument string will be processed. This make it
+quick to accept messages if you notice the moderation request in your
+email.</p>
+
+<p>Without the listadmin program, I would never be the moderator of 68
+mailing lists, as I simply do not have time to spend on that if the
+process was any slower. The listadmin program have saved me hours of
+time I could spend elsewhere over the years. It truly is nice free
+software.</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>
+</description>
+ </item>
+
+ <item>
+ <title>Debian Jessie, PXE and automatic firmware installation</title>
+ <link>http://people.skolelinux.org/pere/blog/Debian_Jessie__PXE_and_automatic_firmware_installation.html</link>
+ <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Jessie__PXE_and_automatic_firmware_installation.html</guid>
+ <pubDate>Fri, 17 Oct 2014 14:10:00 +0200</pubDate>
+ <description><p>When PXE installing laptops with Debian, I often run into the
+problem that the WiFi card require some firmware to work properly.
+And it has been a pain to fix this using preseeding in Debian.
+Normally something more is needed. But thanks to
+<a href="https://packages.qa.debian.org/i/isenkram.html">my isenkram
+package</a> and its recent tasksel extension, it has now become easy
+to do this using simple preseeding.</p>
+
+<p>The isenkram-cli package provide tasksel tasks which will install
+firmware for the hardware found in the machine (actually, requested by
+the kernel modules for the hardware). (It can also install user space
+programs supporting the hardware detected, but that is not the focus
+of this story.)</p>
+
+<p>To get this working in the default installation, two preeseding
+values are needed. First, the isenkram-cli package must be installed
+into the target chroot (aka the hard drive) before tasksel is executed
+in the pkgsel step of the debian-installer system. This is done by
+preseeding the base-installer/includes debconf value to include the
+isenkram-cli package. The package name is next passed to debootstrap
+for installation. With the isenkram-cli package in place, tasksel
+will automatically use the isenkram tasks to detect hardware specific
+packages for the machine being installed and install them, because
+isenkram-cli contain tasksel tasks.</p>
+
+<p>Second, one need to enable the non-free APT repository, because
+most firmware unfortunately is non-free. This is done by preseeding
+the apt-mirror-setup step. This is unfortunate, but for a lot of
+hardware it is the only option in Debian.</p>
+
+<p>The end result is two lines needed in your preseeding file to get
+firmware installed automatically by the installer:</p>
+
+<p><blockquote><pre>
+base-installer base-installer/includes string isenkram-cli
+apt-mirror-setup apt-setup/non-free boolean true
+</pre></blockquote></p>
+
+<p>The current version of isenkram-cli in testing/jessie will install
+both firmware and user space packages when using this method. It also
+do not work well, so use version 0.15 or later. Installing both
+firmware and user space packages might give you a bit more than you
+want, so I decided to split the tasksel task in two, one for firmware
+and one for user space programs. The firmware task is enabled by
+default, while the one for user space programs is not. This split is
+implemented in the package currently in unstable.</p>
+
+<p>If you decide to give this a go, please let me know (via email) how
+this recipe work for you. :)</p>
+
+<p>So, I bet you are wondering, how can this work. First and
+foremost, it work because tasksel is modular, and driven by whatever
+files it find in /usr/lib/tasksel/ and /usr/share/tasksel/. So the
+isenkram-cli package place two files for tasksel to find. First there
+is the task description file (/usr/share/tasksel/descs/isenkram.desc):</p>
+
+<p><blockquote><pre>
+Task: isenkram-packages
+Section: hardware
+Description: Hardware specific packages (autodetected by isenkram)
+ Based on the detected hardware various hardware specific packages are
+ proposed.
+Test-new-install: show show
+Relevance: 8
+Packages: for-current-hardware
+
+Task: isenkram-firmware
+Section: hardware
+Description: Hardware specific firmware packages (autodetected by isenkram)
+ Based on the detected hardware various hardware specific firmware
+ packages are proposed.
+Test-new-install: mark show
+Relevance: 8
+Packages: for-current-hardware-firmware
+</pre></blockquote></p>
+
+<p>The key parts are Test-new-install which indicate how the task
+should be handled and the Packages line referencing to a script in
+/usr/lib/tasksel/packages/. The scripts use other scripts to get a
+list of packages to install. The for-current-hardware-firmware script
+look like this to list relevant firmware for the machine:
+
+<p><blockquote><pre>
+#!/bin/sh
+#
+PATH=/usr/sbin:$PATH
+export PATH
+isenkram-autoinstall-firmware -l
+</pre></blockquote></p>
+
+<p>With those two pieces in place, the firmware is installed by
+tasksel during the normal d-i run. :)</p>
+
+<p>If you want to test what tasksel will install when isenkram-cli is
+installed, run <tt>DEBIAN_PRIORITY=critical tasksel --test
+--new-install</tt> to get the list of packages that tasksel would
+install.</p>
+
+<p><a href="https://wiki.debian.org/DebianEdu/">Debian Edu</a> will be
+pilots in testing this feature, as isenkram is used there now to
+install firmware, replacing the earlier scripts.</p>
+</description>
+ </item>
+
+ <item>
+ <title>Ubuntu used to show the bread prizes at ICA Storo</title>
+ <link>http://people.skolelinux.org/pere/blog/Ubuntu_used_to_show_the_bread_prizes_at_ICA_Storo.html</link>
+ <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Ubuntu_used_to_show_the_bread_prizes_at_ICA_Storo.html</guid>
+ <pubDate>Sat, 4 Oct 2014 15:20:00 +0200</pubDate>
+ <description><p>Today I came across an unexpected Ubuntu boot screen. Above the
+bread shelf on the ICA shop at Storo in Oslo, the grub menu of Ubuntu
+with Linux kernel 3.2.0-23 (ie probably version 12.04 LTS) was stuck
+on a screen normally showing the bread types and prizes:</p>
+
+<p align="center"><img width="70%" src="http://people.skolelinux.org/pere/blog/images/2014-10-04-ubuntu-ica-storo-crop.jpeg"></p>
+
+<p>If it had booted as it was supposed to, I would never had known
+about this hidden Linux installation. It is interesting what
+<a href="http://revealingerrors.com/">errors can reveal</a>.</p>
+</description>
+ </item>
+
<item>
<title>New lsdvd release version 0.17 is ready</title>
<link>http://people.skolelinux.org/pere/blog/New_lsdvd_release_version_0_17_is_ready.html</link>
<pubDate>Sat, 4 Oct 2014 08:40:00 +0200</pubDate>
<description><p>The <a href="https://sourceforge.net/p/lsdvd/">lsdvd project</a>
got a new set of developers a few weeks ago, after the original
-developer decided to step down and pass the project to fresh blod.
+developer decided to step down and pass the project to fresh blood.
This project is now maintained by Petter Reinholdtsen and Steve
Dibb.</p>