]> pere.pagekite.me Git - homepage.git/blob - blog/tags/english/english.rss
b85e209a676da43b714f6b86950e35d9a2a8987f
[homepage.git] / blog / tags / english / english.rss
1 <?xml version="1.0" encoding="utf-8"?>
2 <rss version='2.0' xmlns:lj='http://www.livejournal.org/rss/lj/1.0/'>
3 <channel>
4 <title>Petter Reinholdtsen - Entries tagged english</title>
5 <description>Entries tagged english</description>
6 <link>http://people.skolelinux.org/pere/blog/</link>
7
8
9 <item>
10 <title>I&#39;m going to the Open Source Developers&#39; Conference Nordic 2015!</title>
11 <link>http://people.skolelinux.org/pere/blog/I_m_going_to_the_Open_Source_Developers__Conference_Nordic_2015_.html</link>
12 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/I_m_going_to_the_Open_Source_Developers__Conference_Nordic_2015_.html</guid>
13 <pubDate>Tue, 7 Apr 2015 10:30:00 +0200</pubDate>
14 <description>&lt;p&gt;I am happy to let you all know that I&#39;m going to the &lt;a
15 href=&quot;http://act.osdc.no/osdc2015no/&quot;&gt;Open Source Developers&#39;
16 Conference Nordic 2015&lt;/a&gt;!&lt;/p&gt;
17
18 &lt;p&gt;It take place Friday 8th to Sunday 10th of May in Oslo next to
19 where I work, and I finally got around to submitting
20 &lt;a href=&quot;http://act.osdc.no/osdc2015no/talk/6192&quot;&gt;a talk proposal for
21 it&lt;/a&gt; (dead link for most people until the talk is accepted). As
22 part of my involvement with the
23 &lt;a href=&quot;http://www.nuug.no/&quot;&gt;Norwegian Unix User Group member
24 association&lt;/a&gt; I have been slightly involved in the planning of this
25 conference for a while now, with a focus on organising a Civic Hacking
26 Hackathon with our friends
27 over at &lt;a href=&quot;http://www.mysociety.org/&quot;&gt;mySociety&lt;/a&gt; and
28 &lt;a href=&quot;http://www.holderdeord.no/&quot;&gt;Holder de ord&lt;/a&gt;. This part is
29 named the &#39;My Society&#39; track in the program. There is still space for
30 more talks and participants. I hope to see you there.&lt;/p&gt;
31
32 &lt;p&gt;Check out &lt;a href=&quot;http://act.osdc.no/osdc2015no/talks&quot;&gt;the talks
33 submitted and accepted so far&lt;/a&gt;.&lt;/p&gt;
34 </description>
35 </item>
36
37 <item>
38 <title>Proof reading the Norwegian translation of Free Culture by Lessig</title>
39 <link>http://people.skolelinux.org/pere/blog/Proof_reading_the_Norwegian_translation_of_Free_Culture_by_Lessig.html</link>
40 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Proof_reading_the_Norwegian_translation_of_Free_Culture_by_Lessig.html</guid>
41 <pubDate>Sat, 4 Apr 2015 09:30:00 +0200</pubDate>
42 <description>&lt;p&gt;During eastern I had some time to continue working on the Norwegian
43 &lt;a href=&quot;http://www.docbook.org/&quot;&gt;docbook&lt;/a&gt; version of the 2004 book
44 &lt;a href=&quot;http://free-culture.cc/&quot;&gt;Free Culture&lt;/a&gt; by Lawrence Lessig.
45 At the moment I am proof reading the finished text, looking for typos,
46 inconsistent wordings and sentences that do not flow as they should.
47 I&#39;m more than two thirds done with the text, and welcome others to
48 check the text up to chapter 13. The current status is available on the
49 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig&quot;&gt;github&lt;/a&gt;
50 project pages. You can also check out the
51 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/blob/master/archive/freeculture.nb.pdf?raw=true&quot;&gt;PDF&lt;/a&gt;,
52 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/blob/master/archive/freeculture.nb.epub?raw=true&quot;&gt;EPUB&lt;/a&gt;
53 and HTML version available in the
54 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/tree/master/archive&quot;&gt;archive
55 directory&lt;/a&gt;.&lt;/p&gt;
56
57 &lt;p&gt;Please report typos, bugs and improvements to the github project if
58 you find any.&lt;/p&gt;
59 </description>
60 </item>
61
62 <item>
63 <title>Frikanalen, Norwegian TV channel for technical topics</title>
64 <link>http://people.skolelinux.org/pere/blog/Frikanalen__Norwegian_TV_channel_for_technical_topics.html</link>
65 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Frikanalen__Norwegian_TV_channel_for_technical_topics.html</guid>
66 <pubDate>Mon, 9 Mar 2015 11:10:00 +0100</pubDate>
67 <description>&lt;p&gt;The &lt;a href=&quot;http://www.nuug.no/&quot;&gt;Norwegian Unix User Group&lt;/a&gt;,
68 where I am a member, and where people interested in free software,
69 open standards and UNIX like operating systems like Linux and the BSDs
70 come together, record our monthly technical presentations on video.
71 The purpose is to document the talks and spread them to a wider
72 audience. For this, the the Norwegian nationwide open channel
73 &lt;a href=&quot;http://www.frikanalen.no/&quot;&gt;Frikanalen&lt;/a&gt; is a useful venue.
74 Since a few days ago, when I figured out the
75 &lt;a href=&quot;http://beta.frikanalen.no/api/&quot;&gt;REST API&lt;/a&gt; to program the
76 &lt;a href=&quot;http://beta.frikanalen.tv/guide/&quot;&gt;channel time schedule&lt;/a&gt;,
77 the channel has been filled with NUUG talks, related recordings and
78 some Creative Commons licensed TED talks (from archive.org). I fill
79 all &quot;leftover bits&quot; on the channel with content from NUUG, which at
80 the moment is almost 17 of 24 hours every day.&lt;/p&gt;
81
82 &lt;p&gt;The list of NUUG videos
83 &lt;a href=&quot;http://beta.frikanalen.tv/organization/82&quot;&gt;uploaded so far&lt;/a&gt;
84 include things like a
85 &lt;a href=&quot;http://beta.frikanalen.tv/video/625090&quot;&gt;one hour talk by John
86 Perry Barlow when he visited Oslo&lt;/a&gt;, a presentation of
87 &lt;a href=&quot;http://beta.frikanalen.tv/video/624275&quot;&gt;Haiku, the BeOS
88 re-implementation&lt;/a&gt;, the
89 &lt;a href=&quot;http://beta.frikanalen.tv/video/624493&quot;&gt;history of FiksGataMi,
90 the Norwegian version of FixMyStreet&lt;/a&gt;, the good old
91 &lt;a href=&quot;http://beta.frikanalen.tv/video/623566&quot;&gt;Warriors of the net
92 video&lt;/A&gt; and many others.&lt;/p&gt;
93
94 &lt;p&gt;We have a large backlog of NUUG talks not yet uploaded to
95 Frikanalen, and plan to upload every useful bit to the channel to
96 spread the word there. I also hope to find useful recordings from the
97 Chaos Computer Club and Debian conferences and spread them on the
98 channel as well. But this require locating the videos and their meta
99 information (title, description, license, etc), and preparing the
100 recordings for broadcast, and I have not yet had the spare time to
101 focus on this. Perhaps you want to help. Please join us on IRC,
102 &lt;a href=&quot;irc://irc.freenode.net/%23nuug&quot;&gt;#nuug on irc.freenode.net&lt;/a&gt;
103 if you want to help make this happen.&lt;/p&gt;
104
105 &lt;p&gt;But as I said, already the channel is already almost exclusively
106 filled with technical topics, and if you want to learn something new
107 today, check out the &lt;a href=&quot;http://www.frikanalen.tv/se&quot;&gt;Ogg Theora
108 web stream&lt;/a&gt; or use one of the other ways to get access to the
109 channel. Unfortunately the Ogg Theora recoding for distribution still
110 do not properly sync the video and sound. It is generated by recoding
111 a internal MPEG transport stream with MPEG4 coded video (ie H.264) to
112 Ogg Theora / Vorbis, and we have not been able to find a way that
113 produces acceptable quality. Help needed, please get in touch if you
114 know how to fix it using free software.&lt;/p&gt;
115 </description>
116 </item>
117
118 <item>
119 <title>The Citizenfour documentary on the Snowden confirmations to Norway</title>
120 <link>http://people.skolelinux.org/pere/blog/The_Citizenfour_documentary_on_the_Snowden_confirmations_to_Norway.html</link>
121 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/The_Citizenfour_documentary_on_the_Snowden_confirmations_to_Norway.html</guid>
122 <pubDate>Sat, 28 Feb 2015 22:10:00 +0100</pubDate>
123 <description>&lt;p&gt;Today I was happy to learn that the documentary
124 &lt;a href=&quot;https://citizenfourfilm.com/&quot;&gt;Citizenfour&lt;/a&gt; by
125 &lt;a href=&quot;https://en.wikipedia.org/wiki/Laura_Poitras&quot;&gt;Laura Poitras&lt;/a&gt;
126 finally will show up in Norway. According to the magazine
127 &lt;a href=&quot;http://montages.no/&quot;&gt;Montages&lt;/a&gt;, a deal has finally been
128 made for
129 &lt;a href=&quot;http://montages.no/nyheter/snowden-dokumentaren-citizenfour-far-norsk-kinodistribusjon/&quot;&gt;Cinema
130 distribution in Norway&lt;/a&gt; and the movie will have its premiere soon.
131 This is great news. As part of my involvement with
132 &lt;a href=&quot;http://www.nuug.no/&quot;&gt;the Norwegian Unix User Group&lt;/a&gt;, me and
133 a friend have
134 &lt;a href=&quot;http://www.nuug.no/news/Dokumentar_om_Snowdenbekreftelsene_til_Norge_.shtml&quot;&gt;tried
135 to get the movie to Norway&lt;/a&gt; ourselves, but obviously
136 &lt;a href=&quot;http://www.nuug.no/news/Dokumentar_om_Snowdenbekreftelsene_endelig_til_Norge_.shtml&quot;&gt;we
137 were too late&lt;/a&gt; and Tor Fosse beat us to it. I am happy he did, as
138 the movie will make its way to the public and we do not have to make
139 it happen ourselves.
140 &lt;a href=&quot;https://www.youtube.com/watch?v=XiGwAvd5mvM&quot;&gt;The trailer&lt;/a&gt;
141 can be seen on youtube, if you are curious what kind of film this
142 is.&lt;/p&gt;
143
144 &lt;p&gt;The whistle blower Edward Snowden really deserve political asylum
145 here in Norway, but I am afraid he would not be safe.&lt;/p&gt;
146 </description>
147 </item>
148
149 <item>
150 <title>The Norwegian open channel Frikanalen - 24x7 on the Internet</title>
151 <link>http://people.skolelinux.org/pere/blog/The_Norwegian_open_channel_Frikanalen___24x7_on_the_Internet.html</link>
152 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/The_Norwegian_open_channel_Frikanalen___24x7_on_the_Internet.html</guid>
153 <pubDate>Wed, 25 Feb 2015 09:10:00 +0100</pubDate>
154 <description>&lt;p&gt;The Norwegian nationwide open channel
155 &lt;a href=&quot;http://www.frikanalen.no/&quot;&gt;Frikanalen&lt;/a&gt; is still going
156 strong. It allow everyone to send the video they want on national
157 television. It is a TV station administrated completely using a web
158 browser, running only &lt;ahref=&quot;https://github.com/Frikanalen&quot;&gt;Free
159 Software&lt;/a&gt;, providing &lt;ahref=&quot;http://beta.frikanalen.tv/api&quot;&gt;a REST
160 api&lt;/a&gt; for administrators and members, and with distribution on the
161 national DVB-T distribution network RiksTV. But only between 12:00
162 and 17:30 Norwegian time. This has finally changed, after many years
163 with limited distribution. A few weeks ago, we set up a Ogg Theora
164 stream via icecast to allow everyone with Internet access to check out
165 the channel the rest of the day. This is presented on
166 &lt;a href=&quot;http://www.frikanalen.tv/se&quot;&gt;the Frikanalen web site now&lt;/a&gt;. And
167 since a few days ago, the channel is also available
168 via &lt;a href=&quot;https://www.uninett.no/iptv-tilgang&quot;&gt;multicast on
169 UNINETT&lt;/a&gt;, available for those using IPTV TVs and set-top boxes in
170 the Norwegian National Research and Education network.&lt;/p&gt;
171
172 &lt;p&gt;If you want to see what is on the channel, point your media player
173 to one of these sources. The first should work with most players and
174 browsers, while as far as I know, the multicast UDP stream only work
175 with VLC.&lt;/p&gt;
176
177 &lt;ul&gt;
178 &lt;li&gt;&lt;a href=&quot;http://video.nuug.no/frikanalen.ogv&quot;&gt;http://video.nuug.no/frikanalen.ogv&lt;/a&gt;&lt;/li&gt;
179 &lt;li&gt;udp://@224.17.43.129:1234&lt;/li&gt;
180 &lt;/ul&gt;
181
182 &lt;p&gt;The Ogg Theora / icecast stream is not working well, as the video
183 and audio is slightly out of sync. We have not been able to figure
184 out how to fix it. It is generated by recoding a internal MPEG
185 transport stream with MPEG4 coded video (ie H.264) to Ogg Theora /
186 Vorbis, and the result is less then stellar. If you have ideas how to
187 fix it, please let us know on frikanalen (at) nuug.no. We currently
188 use this with ffmpeg2theora 0.29:&lt;/p&gt;
189
190 &lt;blockquote&gt;&lt;pre&gt;
191 ./ffmpeg2theora.linux &amp;lt;OBE_gemini_URL.ts&amp;gt; -F 25 -x 720 -y 405 \
192 --deinterlace --inputfps 25 -c 1 -H 48000 --keyint 8 --buf-delay 100 \
193 --nosync -V 700 -o - | oggfwd video.nuug.no 8000 &amp;lt;pw&amp;gt; /frikanalen.ogv
194 &lt;/pre&gt;&lt;/blockquote&gt;
195
196 &lt;p&gt;If you get the multicast UDP stream working, please let me know, as
197 I am curious how far the multicast stream reach. It do not make it to
198 my home network, nor any other commercially available network in
199 Norway that I am aware of.&lt;/p&gt;
200 </description>
201 </item>
202
203 <item>
204 <title>Nude body scanner now present on Norwegian airport</title>
205 <link>http://people.skolelinux.org/pere/blog/Nude_body_scanner_now_present_on_Norwegian_airport.html</link>
206 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Nude_body_scanner_now_present_on_Norwegian_airport.html</guid>
207 <pubDate>Tue, 10 Feb 2015 15:20:00 +0100</pubDate>
208 <description>&lt;p&gt;Aftenposten, one of the largest newspapers in Norway, today report
209 that
210 &lt;a href=&quot;http://www.aftenposten.no/reise/Slik-skannes-kroppen-din-i-fremtidens-sikkerhetskontroll-490666_1.snd&quot;&gt;three
211 of the nude body scanners now is put to use at Gardermoen&lt;/a&gt;, the
212 main airport in Norway. This way the travelers can have their body
213 photographed without cloths when visiting Norway. Of course this
214 horrible news is presented with a positive spin, stating that &quot;now
215 travelers can move past the security check point faster and more
216 efficiently&quot;, but fail to mention that the machines in question take
217 pictures of their nude bodies and store them internally in the
218 computer, while only presenting sketch figure of the body to the
219 public. The article is written in a way that leave the impression
220 that the new machines do not take these nude pictures and only create
221 the sketch figures. In reality the same nude pictures are still
222 taken, but not presented to everyone. They are still available for
223 the owners of the system and the people doing maintenance of the
224 scanners, as long as they are taken and stored.&lt;/p&gt;
225
226 &lt;p&gt;Wikipedia have a more on
227 &lt;a href=&quot;https://en.wikipedia.org/wiki/Full_body_scanner&quot;&gt;Full body
228 scanners&lt;/a&gt;, including example images and a summary of the
229 controversy about these scanners.&lt;/p&gt;
230
231 &lt;p&gt;Personally I will decline to use these machines, as I believe strip
232 searches of my body is a very intrusive attack on my privacy, and not
233 something everyone should have to accept to travel.&lt;/p&gt;
234 </description>
235 </item>
236
237 <item>
238 <title>Nagios module to check if the Frikanalen video stream is working</title>
239 <link>http://people.skolelinux.org/pere/blog/Nagios_module_to_check_if_the_Frikanalen_video_stream_is_working.html</link>
240 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Nagios_module_to_check_if_the_Frikanalen_video_stream_is_working.html</guid>
241 <pubDate>Sun, 8 Feb 2015 13:00:00 +0100</pubDate>
242 <description>&lt;p&gt;When running a TV station with both broadcast and web stream
243 distribution, it is useful to know that the stream is working. As I
244 am involved in the Norwegian open channel
245 &lt;a href=&quot;http://www.frikanalen.no/&quot;&gt;Frikanalen&lt;/a&gt; as part of my
246 activity in the &lt;a href=&quot;http://www.nuug.no/&quot;&gt;NUUG member
247 organisation&lt;/a&gt;, I wrote a script to use mplayer to connect to a
248 video stream, pick two images 35 seconds apart and compare them. If
249 the images are missing or identical, something is probably wrong with
250 the stream and an alarm should be triggered. The script is written as
251 a Nagios plugin, allowing us to use Nagios to run the check regularly
252 and sound the alarm when something is wrong. It is able to detect
253 both a hanging and a broken video stream.&lt;/p&gt;
254
255 &lt;p&gt;I just uploaded the code for the script into the
256 &lt;a href=&quot;https://github.com/Frikanalen/frikanalen/blob/master/nagios-plugin/check_video_stream_images&quot;&gt;Frikanalen
257 git repository&lt;/a&gt; on github. If you run a TV station with web
258 streaming, perhaps you can find it useful too.&lt;/p&gt;
259
260 &lt;p&gt;Last year, the Frikanalen public TV station transformed into using
261 only Linux based free software to administrate, schedule and
262 distribute the TV content. The
263 &lt;a href=&quot;https://github.com/Frikanalen&quot;&gt;source code for the entire TV
264 station&lt;/a&gt; is available from the Github project page. Everyone can
265 use it to send their content on national TV, and we provide both a web
266 GUI and &lt;a href=&quot;http://beta.frikanalen.tv/api/&quot;&gt;a web API&lt;/a&gt; to
267 &lt;a href=&quot;http://beta.frikanalen.tv/login/?next=/members/video/&quot;&gt;add&lt;/a&gt;
268 and &lt;a href=&quot;http://beta.frikanalen.tv/members/plan/&quot;&gt;schedule
269 content&lt;/a&gt;. And thanks to last weeks developer gathering and
270 following activity, we now have the schedule
271 &lt;a href=&quot;http://beta.frikanalen.tv/xmltv/2015/01/01&quot;&gt;available as
272 XMLTV&lt;/a&gt; too. Still a lot of work left to do, especially with the
273 process to add videos and with the scheduling, so your contribution is
274 most welcome. Perhaps you want to set up your own TV station?&lt;/p&gt;
275
276 &lt;p&gt;Update 2015-02-25: Got a tip from Uninett about their
277 &lt;a href=&quot;https://scm.uninett.no/maalepaaler/qstream/&quot;&gt;qstream
278 monitoring system&lt;/a&gt;, which gather connection time, jitter, packet
279 loss and burst bandwidth usage. It look useful to check if UDP
280 streams are working as they should.&lt;/p&gt;
281 </description>
282 </item>
283
284 <item>
285 <title>Norwegian Bokmål subtitles for the FSF video User Liberation</title>
286 <link>http://people.skolelinux.org/pere/blog/Norwegian_Bokm_l_subtitles_for_the_FSF_video_User_Liberation.html</link>
287 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Norwegian_Bokm_l_subtitles_for_the_FSF_video_User_Liberation.html</guid>
288 <pubDate>Mon, 12 Jan 2015 21:00:00 +0100</pubDate>
289 <description>&lt;p&gt;A few days ago, the &lt;a href=&quot;https://www.fsf.org/&quot;&gt;Free Software
290 Foundation&lt;/a&gt; announced a new video
291 &lt;a href=&quot;https://www.fsf.org/blogs/community/user-liberation-watch-and-share-our-new-video&quot;&gt;explaining
292 Free software&lt;/a&gt; in simple terms. The video named User Liberation is
293 3 minutes long, and I recommend showing it to everyone you know as a
294 way to explain what Free Software is all about. Unfortunately several
295 of the people I know do not understand English and Spanish, so it did
296 not make sense to show it to them.&lt;/p&gt;
297
298 &lt;p&gt;But today I was told that
299 &lt;a href=&quot;https://www.fsf.org/blogs/community/user-liberation-watch-and-share-our-new-video&quot;&gt;English
300 subtitles were available&lt;/a&gt; and set out to provide Norwegian Bokmål
301 subtitles based on these. The result has been sent to FSF and made
302 available in
303 &lt;a href=&quot;https://github.com/petterreinholdtsen/fsf-video-user-liberation-subtitles&quot;&gt;a
304 git repository&lt;/a&gt; provided by Github. Please let me know if you find
305 errors or have improvements to the subtitles.&lt;/p&gt;
306
307 &lt;p&gt;Update 2015-02-03: Since I publised this post, FSF created a
308 Libreplanet
309 &lt;a href=&quot;http://libreplanet.org/wiki/Group:FSF/User_Liberation_Video_Translation&quot;&gt;project
310 to track subtitles&lt;/A&gt; for the video.&lt;/p&gt;
311 </description>
312 </item>
313
314 <item>
315 <title>Updated version of the Norwegian web service FiksGataMi</title>
316 <link>http://people.skolelinux.org/pere/blog/Updated_version_of_the_Norwegian_web_service_FiksGataMi.html</link>
317 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Updated_version_of_the_Norwegian_web_service_FiksGataMi.html</guid>
318 <pubDate>Tue, 30 Dec 2014 17:55:00 +0100</pubDate>
319 <description>&lt;p&gt;I am very happy that we in the
320 &lt;a href=&quot;http://www.nuug.no/&quot;&gt;Norwegian Unix User group (NUUG)&lt;/a&gt;,
321 spearheaded by Marius Halden from NUUG and Matthew Somerville from
322 &lt;a href=&quot;http://www.mysociety.org/&quot;&gt;mySociety&lt;/a&gt;, finally managed to
323 upgrade the code base for the Norwegian version of
324 &lt;a href=&quot;http://fixmystreet.org/&quot;&gt;FixMyStreet&lt;/a&gt;. This
325 was the first major update since 2011. The refurbished
326 &lt;a href=&quot;http://www.fiksgatami.no/&quot;&gt;FiksGataMi&lt;/a&gt; is already live, and
327 seem to hold up the pressure. The
328 &lt;a href=&quot;http://www.nuug.no/news/Pressemelding__FiksGataMi_i_oppdatert_og_mobilvennlig_klesdrakt.shtml&quot;&gt;press
329 release and announcement&lt;/a&gt; went out this morning.&lt;/p&gt;
330
331 &lt;p&gt;FixMyStreet is a web platform for allowing the citizens to easily
332 report problems with public infrastructure to the responsible
333 authorities. Think of it as a shared mail client with map support,
334 allowing everyone to see what already was reported and comment on the
335 reports in public.&lt;/p&gt;
336 </description>
337 </item>
338
339 <item>
340 <title>Of course USA loses in cyber war - NSA and friends made sure it would happen</title>
341 <link>http://people.skolelinux.org/pere/blog/Of_course_USA_loses_in_cyber_war___NSA_and_friends_made_sure_it_would_happen.html</link>
342 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Of_course_USA_loses_in_cyber_war___NSA_and_friends_made_sure_it_would_happen.html</guid>
343 <pubDate>Fri, 19 Dec 2014 13:10:00 +0100</pubDate>
344 <description>&lt;p&gt;So, Sony caved in
345 (&lt;a href=&quot;https://twitter.com/RobLowe/status/545338568512917504&quot;&gt;according
346 to Rob Lowe&lt;/a&gt;) and demonstrated that America lost its first cyberwar
347 (&lt;a href=&quot;https://twitter.com/newtgingrich/status/545339074975109122&quot;&gt;according
348 to Newt Gingrich&lt;/a&gt;). It should not surprise anyone, after the
349 whistle blower Edward Snowden documented that the government of USA
350 and their allies for many years have done their best to make sure the
351 technology used by its citizens is filled with security holes allowing
352 the secret services to spy on its own population. No one in their
353 right minds could believe that the ability to snoop on the people all
354 over the globe could only be used by the personnel authorized to do so
355 by the president of the United States of America. If the capabilities
356 are there, they will be used by friend and foe alike, and now they are
357 being used to bring Sony on its knees.&lt;/p&gt;
358
359 &lt;p&gt;I doubt it will a lesson learned, and expect USA to lose its next
360 cyber war too, given how eager the western intelligence communities
361 (and probably the non-western too, but it is less in the news) seem to
362 be to continue its current dragnet surveillance practice.&lt;/p&gt;
363
364 &lt;p&gt;There is a reason why China and others are trying to move away from
365 Windows to Linux and other alternatives, and it is not to avoid
366 sending its hard earned dollars to Cayman Islands (or whatever
367 &lt;a href=&quot;https://en.wikipedia.org/wiki/Tax_haven&quot;&gt;tax haven&lt;/a&gt;
368 Microsoft is using these days to collect the majority of its
369 income. :)&lt;/p&gt;
370 </description>
371 </item>
372
373 <item>
374 <title>How to stay with sysvinit in Debian Jessie</title>
375 <link>http://people.skolelinux.org/pere/blog/How_to_stay_with_sysvinit_in_Debian_Jessie.html</link>
376 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/How_to_stay_with_sysvinit_in_Debian_Jessie.html</guid>
377 <pubDate>Sat, 22 Nov 2014 01:00:00 +0100</pubDate>
378 <description>&lt;p&gt;By now, it is well known that Debian Jessie will not be using
379 sysvinit as its boot system by default. But how can one keep using
380 sysvinit in Jessie? It is fairly easy, and here are a few recipes,
381 courtesy of
382 &lt;a href=&quot;http://www.vitavonni.de/blog/201410/2014102101-avoiding-systemd.html&quot;&gt;Erich
383 Schubert&lt;/a&gt; and
384 &lt;a href=&quot;http://smcv.pseudorandom.co.uk/2014/still_universal/&quot;&gt;Simon
385 McVittie&lt;/a&gt;.
386
387 &lt;p&gt;If you already are using Wheezy and want to upgrade to Jessie and
388 keep sysvinit as your boot system, create a file
389 &lt;tt&gt;/etc/apt/preferences.d/use-sysvinit&lt;/tt&gt; with this content before
390 you upgrade:&lt;/p&gt;
391
392 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
393 Package: systemd-sysv
394 Pin: release o=Debian
395 Pin-Priority: -1
396 &lt;/pre&gt;&lt;/blockquote&gt;&lt;p&gt;
397
398 &lt;p&gt;This file content will tell apt and aptitude to not consider
399 installing systemd-sysv as part of any installation and upgrade
400 solution when resolving dependencies, and thus tell it to avoid
401 systemd as a default boot system. The end result should be that the
402 upgraded system keep using sysvinit.&lt;/p&gt;
403
404 &lt;p&gt;If you are installing Jessie for the first time, there is no way to
405 get sysvinit installed by default (debootstrap used by
406 debian-installer have no option for this), but one can tell the
407 installer to switch to sysvinit before the first boot. Either by
408 using a kernel argument to the installer, or by adding a line to the
409 preseed file used. First, the kernel command line argument:
410
411 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
412 preseed/late_command=&quot;in-target apt-get install --purge -y sysvinit-core&quot;
413 &lt;/pre&gt;&lt;/blockquote&gt;&lt;p&gt;
414
415 &lt;p&gt;Next, the line to use in a preseed file:&lt;/p&gt;
416
417 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
418 d-i preseed/late_command string in-target apt-get install -y sysvinit-core
419 &lt;/pre&gt;&lt;/blockquote&gt;&lt;p&gt;
420
421 &lt;p&gt;One can of course also do this after the first boot by installing
422 the sysvinit-core package.&lt;/p&gt;
423
424 &lt;p&gt;I recommend only using sysvinit if you really need it, as the
425 sysvinit boot sequence in Debian have several hardware specific bugs
426 on Linux caused by the fact that it is unpredictable when hardware
427 devices show up during boot. But on the other hand, the new default
428 boot system still have a few rough edges I hope will be fixed before
429 Jessie is released.&lt;/p&gt;
430
431 &lt;p&gt;Update 2014-11-26: Inspired by
432 &lt;ahref=&quot;https://www.mirbsd.org/permalinks/wlog-10-tg_e20141125-tg.htm#e20141125-tg_wlog-10-tg&quot;&gt;a
433 blog post by Torsten Glaser&lt;/a&gt;, added --purge to the preseed
434 line.&lt;/p&gt;
435 </description>
436 </item>
437
438 <item>
439 <title>A Debian package for SMTP via Tor (aka SMTorP) using exim4</title>
440 <link>http://people.skolelinux.org/pere/blog/A_Debian_package_for_SMTP_via_Tor__aka_SMTorP__using_exim4.html</link>
441 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/A_Debian_package_for_SMTP_via_Tor__aka_SMTorP__using_exim4.html</guid>
442 <pubDate>Mon, 10 Nov 2014 13:40:00 +0100</pubDate>
443 <description>&lt;p&gt;The right to communicate with your friends and family in private,
444 without anyone snooping, is a right every citicen have in a liberal
445 democracy. But this right is under serious attack these days.&lt;/p&gt;
446
447 &lt;p&gt;A while back it occurred to me that one way to make the dragnet
448 surveillance conducted by NSA, GCHQ, FRA and others (and confirmed by
449 the whisleblower Snowden) more expensive for Internet email,
450 is to deliver all email using SMTP via Tor. Such SMTP option would be
451 a nice addition to the FreedomBox project if we could send email
452 between FreedomBox machines without leaking metadata about the emails
453 to the people peeking on the wire. I
454 &lt;a href=&quot;http://lists.alioth.debian.org/pipermail/freedombox-discuss/2014-October/006493.html&quot;&gt;proposed
455 this on the FreedomBox project mailing list in October&lt;/a&gt; and got a
456 lot of useful feedback and suggestions. It also became obvious to me
457 that this was not a novel idea, as the same idea was tested and
458 documented by Johannes Berg as early as 2006, and both
459 &lt;a href=&quot;https://github.com/pagekite/Mailpile/wiki/SMTorP&quot;&gt;the
460 Mailpile&lt;/a&gt; and &lt;a href=&quot;http://dee.su/cables&quot;&gt;the Cables&lt;/a&gt; systems
461 propose a similar method / protocol to pass emails between users.&lt;/p&gt;
462
463 &lt;p&gt;To implement such system one need to set up a Tor hidden service
464 providing the SMTP protocol on port 25, and use email addresses
465 looking like username@hidden-service-name.onion. With such addresses
466 the connections to port 25 on hidden-service-name.onion using Tor will
467 go to the correct SMTP server. To do this, one need to configure the
468 Tor daemon to provide the hidden service and the mail server to accept
469 emails for this .onion domain. To learn more about Exim configuration
470 in Debian and test the design provided by Johannes Berg in his FAQ, I
471 set out yesterday to create a Debian package for making it trivial to
472 set up such SMTP over Tor service based on Debian. Getting it to work
473 were fairly easy, and
474 &lt;a href=&quot;https://github.com/petterreinholdtsen/exim4-smtorp&quot;&gt;the
475 source code for the Debian package&lt;/a&gt; is available from github. I
476 plan to move it into Debian if further testing prove this to be a
477 useful approach.&lt;/p&gt;
478
479 &lt;p&gt;If you want to test this, set up a blank Debian machine without any
480 mail system installed (or run &lt;tt&gt;apt-get purge exim4-config&lt;/tt&gt; to
481 get rid of exim4). Install tor, clone the git repository mentioned
482 above, build the deb and install it on the machine. Next, run
483 &lt;tt&gt;/usr/lib/exim4-smtorp/setup-exim-hidden-service&lt;/tt&gt; and follow
484 the instructions to get the service up and running. Restart tor and
485 exim when it is done, and test mail delivery using swaks like
486 this:&lt;/p&gt;
487
488 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
489 torsocks swaks --server dutlqrrmjhtfa3vp.onion \
490 --to fbx@dutlqrrmjhtfa3vp.onion
491 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
492
493 &lt;p&gt;This will test the SMTP delivery using tor. Replace the email
494 address with your own address to test your server. :)&lt;/p&gt;
495
496 &lt;p&gt;The setup procedure is still to complex, and I hope it can be made
497 easier and more automatic. Especially the tor setup need more work.
498 Also, the package include a tor-smtp tool written in C, but its task
499 should probably be rewritten in some script language to make the deb
500 architecture independent. It would probably also make the code easier
501 to review. The tor-smtp tool currently need to listen on a socket for
502 exim to talk to it and is started using xinetd. It would be better if
503 no daemon and no socket is needed. I suspect it is possible to get
504 exim to run a command line tool for delivery instead of talking to a
505 socket, and hope to figure out how in a future version of this
506 system.&lt;/p&gt;
507
508 &lt;p&gt;Until I wipe my test machine, I can be reached using the
509 &lt;tt&gt;fbx@dutlqrrmjhtfa3vp.onion&lt;/tt&gt; mail address, deliverable over
510 SMTorP. :)&lt;/p&gt;
511 </description>
512 </item>
513
514 <item>
515 <title>First Jessie based Debian Edu released (alpha0)</title>
516 <link>http://people.skolelinux.org/pere/blog/First_Jessie_based_Debian_Edu_released__alpha0_.html</link>
517 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/First_Jessie_based_Debian_Edu_released__alpha0_.html</guid>
518 <pubDate>Mon, 27 Oct 2014 20:40:00 +0100</pubDate>
519 <description>&lt;p&gt;I am happy to report that I on behalf of the Debian Edu team just
520 sent out
521 &lt;a href=&quot;https://lists.debian.org/debian-edu-announce/2014/10/msg00000.html&quot;&gt;this
522 announcement&lt;/a&gt;:&lt;/p&gt;
523
524 &lt;pre&gt;
525 The Debian Edu Team is pleased to announce the release of Debian Edu
526 Jessie 8.0+edu0~alpha0
527
528 Debian Edu is a complete operating system for schools. Through its
529 various installation profiles you can install servers, workstations
530 and laptops which will work together on the school network. With
531 Debian Edu, the teachers themselves or their technical support can
532 roll out a complete multi-user multi-machine study environment within
533 hours or a few days. Debian Edu comes with hundreds of applications
534 pre-installed, but you can always add more packages from Debian.
535
536 For those who want to give Debian Edu Jessie a try, download and
537 installation instructions are available, including detailed
538 instructions in the manual[1] explaining the first steps, such as
539 setting up a network or adding users. Please note that the password
540 for the user your prompted for during installation must have a length
541 of at least 5 characters!
542
543 [1] &amp;lt;URL: &lt;a href=&quot;https://wiki.debian.org/DebianEdu/Documentation/Jessie&quot;&gt;https://wiki.debian.org/DebianEdu/Documentation/Jessie&lt;/a&gt; &amp;gt;
544
545 Would you like to give your school&#39;s computer a longer life? Are you
546 tired of sneaker administration, running from computer to computer
547 reinstalling the operating system? Would you like to administrate all
548 the computers in your school using only a couple of hours every week?
549 Check out Debian Edu Jessie!
550
551 Skolelinux is used by at least two hundred schools all over the world,
552 mostly in Germany and Norway.
553
554 About Debian Edu and Skolelinux
555 ===============================
556
557 Debian Edu, also known as Skolelinux[2], is a Linux distribution based
558 on Debian providing an out-of-the box environment of a completely
559 configured school network. Immediately after installation a school
560 server running all services needed for a school network is set up just
561 waiting for users and machines being added via GOsa², a comfortable
562 Web-UI. A netbooting environment is prepared using PXE, so after
563 initial installation of the main server from CD or USB stick all other
564 machines can be installed via the network. The provided school server
565 provides LDAP database and Kerberos authentication service,
566 centralized home directories, DHCP server, web proxy and many other
567 services. The desktop contains more than 60 educational software
568 packages[3] and more are available from the Debian archive, and
569 schools can choose between KDE, Gnome, LXDE, Xfce and MATE desktop
570 environment.
571
572 [2] &amp;lt;URL: &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;http://www.skolelinux.org/&lt;/a&gt; &amp;gt;
573 [3] &amp;lt;URL: &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Educational_applications_included_in_Debian_Edu___Skolelinux__the_screenshot_collection____.html&quot;&gt;http://people.skolelinux.org/pere/blog/Educational_applications_included_in_Debian_Edu___Skolelinux__the_screenshot_collection____.html&lt;/a&gt; &amp;gt;
574
575 Full release notes and manual
576 =============================
577
578 Below the download URLs there is a list of some of the new features
579 and bugfixes of Debian Edu 8.0+edu0~alpha0 Codename Jessie. The full
580 list is part of the manual. (See the feature list in the manual[4] for
581 the English version.) For some languages manual translations are
582 available, see the manual translation overview[5].
583
584 [4] &amp;lt;URL: &lt;a href=&quot;https://wiki.debian.org/DebianEdu/Documentation/Jessie/Features&quot;&gt;https://wiki.debian.org/DebianEdu/Documentation/Jessie/Features&lt;/a&gt; &amp;gt;
585 [5] &amp;lt;URL: &lt;a href=&quot;http://maintainer.skolelinux.org/debian-edu-doc/&quot;&gt;http://maintainer.skolelinux.org/debian-edu-doc/&lt;/a&gt; &amp;gt;
586
587 Where to get it
588 ---------------
589
590 To download the multiarch netinstall CD release (624 MiB) you can use
591
592 * &lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/debian-edu-8.0+edu0~alpha0-CD.iso&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/debian-edu-8.0+edu0~alpha0-CD.iso&lt;/a&gt;
593 * &lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/debian-edu-8.0+edu0~alpha0-CD.iso&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/debian-edu-8.0+edu0~alpha0-CD.iso&lt;/a&gt;
594 * rsync -avzP ftp.skolelinux.org::skolelinux-cd/debian-edu-8.0+edu0~alpha0-CD.iso .
595
596 The SHA1SUM of this image is: 361188818e036ce67280a572f757de82ebfeb095
597
598 New features for Debian Edu 8.0+edu0~alpha0 Codename Jessie released 2014-10-27
599 ===============================================================================
600
601
602 Installation changes
603 --------------------
604
605 * PXE installation now installs firmware automatically for the hardware present.
606
607 Software updates
608 ----------------
609
610 Everything which is new in Debian Jessie 8.0, eg:
611
612 * Linux kernel 3.16.x
613 * Desktop environments KDE &quot;Plasma&quot; 4.11.12, GNOME 3.14, Xfce 4.10,
614 LXDE 0.5.6 and MATE 1.8 (KDE &quot;Plasma&quot; is installed by default; to
615 choose one of the others see manual.)
616 * the browsers Iceweasel 31 ESR and Chromium 38
617 * !LibreOffice 4.3.3
618 * GOsa 2.7.4
619 * LTSP 5.5.4
620 * CUPS print system 1.7.5
621 * new boot framework: systemd
622 * Educational toolbox GCompris 14.07
623 * Music creator Rosegarden 14.02
624 * Image editor Gimp 2.8.14
625 * Virtual stargazer Stellarium 0.13.0
626 * golearn 0.9
627 * tuxpaint 0.9.22
628 * New version of debian-installer from Debian Jessie.
629 * Debian Jessie includes about 42000 packages available for
630 installation.
631 * More information about Debian Jessie 8.0 is provided in the release
632 notes[6] and the installation manual[7].
633
634 [6] &amp;lt;URL: &lt;a href=&quot;http://www.debian.org/releases/jessie/releasenotes&quot;&gt;http://www.debian.org/releases/jessie/releasenotes&lt;/a&gt; &amp;gt;
635 [7] &amp;lt;URL: &lt;a href=&quot;http://www.debian.org/releases/jessie/installmanual&quot;&gt;http://www.debian.org/releases/jessie/installmanual&lt;/a&gt; &amp;gt;
636
637 Fixed bugs
638 ----------
639
640 * Inserting incorrect DNS information in Gosa will no longer break
641 DNS completely, but instead stop DNS updates until the incorrect
642 information is corrected (Debian bug #710362)
643 * and many others.
644
645 Documentation and translation updates
646 -------------------------------------
647
648 * The Debian Edu Jessie Manual is fully translated to German, French,
649 Italian, Danish and Dutch. Partly translated versions exist for
650 Norwegian Bokmal and Spanish.
651
652 Other changes
653 -------------
654
655 * Due to new Squid settings, powering off or rebooting the main
656 server takes more time.
657 * To manage printers localhost:631 has to be used, currently www:631
658 doesn&#39;t work.
659
660 Regressions / known problems
661 ----------------------------
662
663 * Installing LTSP chroot fails with a bug related to eatmydata about
664 exim4-config failing to run its postinst (see Debian bug #765694
665 and Debian bug #762103).
666 * Munin collection is not properly configured on clients (Debian bug
667 #764594). The fix is available in a newer version of munin-node.
668 * PXE setup for Main Server and Thin Client Server setup does not
669 work when installing on a machine without direct Internet access.
670 Will be fixed when Debian bug #766960 is fixed in Jessie.
671
672 See the status page[8] for the complete list.
673
674 [8] &amp;lt;URL: &lt;a href=&quot;https://wiki.debian.org/DebianEdu/Status/Jessie&quot;&gt;https://wiki.debian.org/DebianEdu/Status/Jessie&lt;/a&gt; &amp;gt;
675
676 How to report bugs
677 ------------------
678
679 &amp;lt;URL: &lt;a href=&quot;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&quot;&gt;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&lt;/a&gt; &amp;gt;
680
681 About Debian
682 ============
683
684 The Debian Project was founded in 1993 by Ian Murdock to be a truly
685 free community project. Since then the project has grown to be one of
686 the largest and most influential open source projects. Thousands of
687 volunteers from all over the world work together to create and
688 maintain Debian software. Available in 70 languages, and supporting a
689 huge range of computer types, Debian calls itself the universal
690 operating system.
691
692 Contact Information
693 For further information, please visit the Debian web pages[9] or send
694 mail to press@debian.org.
695
696 [9] &amp;lt;URL: &lt;a href=&quot;http://www.debian.org/&quot;&gt;http://www.debian.org/&lt;/a&gt; &amp;gt;
697 &lt;/pre&gt;
698 </description>
699 </item>
700
701 <item>
702 <title>I spent last weekend recording MakerCon Nordic</title>
703 <link>http://people.skolelinux.org/pere/blog/I_spent_last_weekend_recording_MakerCon_Nordic.html</link>
704 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/I_spent_last_weekend_recording_MakerCon_Nordic.html</guid>
705 <pubDate>Thu, 23 Oct 2014 23:00:00 +0200</pubDate>
706 <description>&lt;p&gt;I spent last weekend at &lt;a href=&quot;http://www.makercon.no/&quot;&gt;Makercon
707 Nordic&lt;/a&gt;, a great conference and workshop for makers in Norway and
708 the surrounding countries. I had volunteered on behalf of the
709 Norwegian Unix Users Group (NUUG) to video record the talks, and we
710 had a great and exhausting time recording the entire day, two days in
711 a row. There were only two of us, Hans-Petter and me, and we used the
712 regular video equipment for NUUG, with a
713 &lt;a href=&quot;http://dvswitch.alioth.debian.org/wiki/&quot;&gt;dvswitch&lt;/a&gt;, a
714 camera and a VGA to DV convert box, and mixed video and slides
715 live.&lt;/p&gt;
716
717 &lt;p&gt;Hans-Petter did the post-processing, consisting of uploading the
718 around 180 GiB of raw video to Youtube, and the result is
719 &lt;a href=&quot;https://www.youtube.com/user/MakerConNordic/&quot;&gt;now becoming
720 public&lt;/a&gt; on the MakerConNordic account. The videos have the license
721 NUUG always use on our recordings, which is
722 &lt;a href=&quot;http://creativecommons.org/licenses/by-sa/3.0/no/&quot;&gt;Creative
723 Commons Navngivelse-Del på samme vilkår 3.0 Norge&lt;/a&gt;. Many great
724 talks available. Check it out! :)&lt;/p&gt;
725 </description>
726 </item>
727
728 <item>
729 <title>listadmin, the quick way to moderate mailman lists - nice free software</title>
730 <link>http://people.skolelinux.org/pere/blog/listadmin__the_quick_way_to_moderate_mailman_lists___nice_free_software.html</link>
731 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/listadmin__the_quick_way_to_moderate_mailman_lists___nice_free_software.html</guid>
732 <pubDate>Wed, 22 Oct 2014 20:00:00 +0200</pubDate>
733 <description>&lt;p&gt;If you ever had to moderate a mailman list, like the ones on
734 alioth.debian.org, you know the web interface is fairly slow to
735 operate. First you visit one web page, enter the moderation password
736 and get a new page shown with a list of all the messages to moderate
737 and various options for each email address. This take a while for
738 every list you moderate, and you need to do it regularly to do a good
739 job as a list moderator. But there is a quick alternative,
740 &lt;a href=&quot;http://heim.ifi.uio.no/kjetilho/hacks/#listadmin&quot;&gt;the
741 listadmin program&lt;/a&gt;. It allow you to check lists for new messages
742 to moderate in a fraction of a second. Here is a test run on two
743 lists I recently took over:&lt;/p&gt;
744
745 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
746 % time listadmin xiph
747 fetching data for pkg-xiph-commits@lists.alioth.debian.org ... nothing in queue
748 fetching data for pkg-xiph-maint@lists.alioth.debian.org ... nothing in queue
749
750 real 0m1.709s
751 user 0m0.232s
752 sys 0m0.012s
753 %
754 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
755
756 &lt;p&gt;In 1.7 seconds I had checked two mailing lists and confirmed that
757 there are no message in the moderation queue. Every morning I
758 currently moderate 68 mailman lists, and it normally take around two
759 minutes. When I took over the two pkg-xiph lists above a few days
760 ago, there were 400 emails waiting in the moderator queue. It took me
761 less than 15 minutes to process them all using the listadmin
762 program.&lt;/p&gt;
763
764 &lt;p&gt;If you install
765 &lt;a href=&quot;https://tracker.debian.org/pkg/listadmin&quot;&gt;the listadmin
766 package&lt;/a&gt; from Debian and create a file &lt;tt&gt;~/.listadmin.ini&lt;/tt&gt;
767 with content like this, the moderation task is a breeze:&lt;/p&gt;
768
769 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
770 username username@example.org
771 spamlevel 23
772 default discard
773 discard_if_reason &quot;Posting restricted to members only. Remove us from your mail list.&quot;
774
775 password secret
776 adminurl https://{domain}/mailman/admindb/{list}
777 mailman-list@lists.example.com
778
779 password hidden
780 other-list@otherserver.example.org
781 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
782
783 &lt;p&gt;There are other options to set as well. Check the manual page to
784 learn the details.&lt;/p&gt;
785
786 &lt;p&gt;If you are forced to moderate lists on a mailman installation where
787 the SSL certificate is self signed or not properly signed by a
788 generally accepted signing authority, you can set a environment
789 variable when calling listadmin to disable SSL verification:&lt;/p&gt;
790
791 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
792 PERL_LWP_SSL_VERIFY_HOSTNAME=0 listadmin
793 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
794
795 &lt;p&gt;If you want to moderate a subset of the lists you take care of, you
796 can provide an argument to the listadmin script like I do in the
797 initial screen dump (the xiph argument). Using an argument, only
798 lists matching the argument string will be processed. This make it
799 quick to accept messages if you notice the moderation request in your
800 email.&lt;/p&gt;
801
802 &lt;p&gt;Without the listadmin program, I would never be the moderator of 68
803 mailing lists, as I simply do not have time to spend on that if the
804 process was any slower. The listadmin program have saved me hours of
805 time I could spend elsewhere over the years. It truly is nice free
806 software.&lt;/p&gt;
807
808 &lt;p&gt;As usual, if you use Bitcoin and want to show your support of my
809 activities, please send Bitcoin donations to my address
810 &lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&amp;label=PetterReinholdtsenBlog&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
811
812 &lt;p&gt;Update 2014-10-27: Added missing &#39;username&#39; statement in
813 configuration example. Also, I&#39;ve been told that the
814 PERL_LWP_SSL_VERIFY_HOSTNAME=0 setting do not work for everyone. Not
815 sure why.&lt;/p&gt;
816 </description>
817 </item>
818
819 <item>
820 <title>Debian Jessie, PXE and automatic firmware installation</title>
821 <link>http://people.skolelinux.org/pere/blog/Debian_Jessie__PXE_and_automatic_firmware_installation.html</link>
822 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Jessie__PXE_and_automatic_firmware_installation.html</guid>
823 <pubDate>Fri, 17 Oct 2014 14:10:00 +0200</pubDate>
824 <description>&lt;p&gt;When PXE installing laptops with Debian, I often run into the
825 problem that the WiFi card require some firmware to work properly.
826 And it has been a pain to fix this using preseeding in Debian.
827 Normally something more is needed. But thanks to
828 &lt;a href=&quot;https://packages.qa.debian.org/i/isenkram.html&quot;&gt;my isenkram
829 package&lt;/a&gt; and its recent tasksel extension, it has now become easy
830 to do this using simple preseeding.&lt;/p&gt;
831
832 &lt;p&gt;The isenkram-cli package provide tasksel tasks which will install
833 firmware for the hardware found in the machine (actually, requested by
834 the kernel modules for the hardware). (It can also install user space
835 programs supporting the hardware detected, but that is not the focus
836 of this story.)&lt;/p&gt;
837
838 &lt;p&gt;To get this working in the default installation, two preeseding
839 values are needed. First, the isenkram-cli package must be installed
840 into the target chroot (aka the hard drive) before tasksel is executed
841 in the pkgsel step of the debian-installer system. This is done by
842 preseeding the base-installer/includes debconf value to include the
843 isenkram-cli package. The package name is next passed to debootstrap
844 for installation. With the isenkram-cli package in place, tasksel
845 will automatically use the isenkram tasks to detect hardware specific
846 packages for the machine being installed and install them, because
847 isenkram-cli contain tasksel tasks.&lt;/p&gt;
848
849 &lt;p&gt;Second, one need to enable the non-free APT repository, because
850 most firmware unfortunately is non-free. This is done by preseeding
851 the apt-mirror-setup step. This is unfortunate, but for a lot of
852 hardware it is the only option in Debian.&lt;/p&gt;
853
854 &lt;p&gt;The end result is two lines needed in your preseeding file to get
855 firmware installed automatically by the installer:&lt;/p&gt;
856
857 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
858 base-installer base-installer/includes string isenkram-cli
859 apt-mirror-setup apt-setup/non-free boolean true
860 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
861
862 &lt;p&gt;The current version of isenkram-cli in testing/jessie will install
863 both firmware and user space packages when using this method. It also
864 do not work well, so use version 0.15 or later. Installing both
865 firmware and user space packages might give you a bit more than you
866 want, so I decided to split the tasksel task in two, one for firmware
867 and one for user space programs. The firmware task is enabled by
868 default, while the one for user space programs is not. This split is
869 implemented in the package currently in unstable.&lt;/p&gt;
870
871 &lt;p&gt;If you decide to give this a go, please let me know (via email) how
872 this recipe work for you. :)&lt;/p&gt;
873
874 &lt;p&gt;So, I bet you are wondering, how can this work. First and
875 foremost, it work because tasksel is modular, and driven by whatever
876 files it find in /usr/lib/tasksel/ and /usr/share/tasksel/. So the
877 isenkram-cli package place two files for tasksel to find. First there
878 is the task description file (/usr/share/tasksel/descs/isenkram.desc):&lt;/p&gt;
879
880 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
881 Task: isenkram-packages
882 Section: hardware
883 Description: Hardware specific packages (autodetected by isenkram)
884 Based on the detected hardware various hardware specific packages are
885 proposed.
886 Test-new-install: show show
887 Relevance: 8
888 Packages: for-current-hardware
889
890 Task: isenkram-firmware
891 Section: hardware
892 Description: Hardware specific firmware packages (autodetected by isenkram)
893 Based on the detected hardware various hardware specific firmware
894 packages are proposed.
895 Test-new-install: mark show
896 Relevance: 8
897 Packages: for-current-hardware-firmware
898 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
899
900 &lt;p&gt;The key parts are Test-new-install which indicate how the task
901 should be handled and the Packages line referencing to a script in
902 /usr/lib/tasksel/packages/. The scripts use other scripts to get a
903 list of packages to install. The for-current-hardware-firmware script
904 look like this to list relevant firmware for the machine:
905
906 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
907 #!/bin/sh
908 #
909 PATH=/usr/sbin:$PATH
910 export PATH
911 isenkram-autoinstall-firmware -l
912 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
913
914 &lt;p&gt;With those two pieces in place, the firmware is installed by
915 tasksel during the normal d-i run. :)&lt;/p&gt;
916
917 &lt;p&gt;If you want to test what tasksel will install when isenkram-cli is
918 installed, run &lt;tt&gt;DEBIAN_PRIORITY=critical tasksel --test
919 --new-install&lt;/tt&gt; to get the list of packages that tasksel would
920 install.&lt;/p&gt;
921
922 &lt;p&gt;&lt;a href=&quot;https://wiki.debian.org/DebianEdu/&quot;&gt;Debian Edu&lt;/a&gt; will be
923 pilots in testing this feature, as isenkram is used there now to
924 install firmware, replacing the earlier scripts.&lt;/p&gt;
925 </description>
926 </item>
927
928 <item>
929 <title>Ubuntu used to show the bread prizes at ICA Storo</title>
930 <link>http://people.skolelinux.org/pere/blog/Ubuntu_used_to_show_the_bread_prizes_at_ICA_Storo.html</link>
931 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Ubuntu_used_to_show_the_bread_prizes_at_ICA_Storo.html</guid>
932 <pubDate>Sat, 4 Oct 2014 15:20:00 +0200</pubDate>
933 <description>&lt;p&gt;Today I came across an unexpected Ubuntu boot screen. Above the
934 bread shelf on the ICA shop at Storo in Oslo, the grub menu of Ubuntu
935 with Linux kernel 3.2.0-23 (ie probably version 12.04 LTS) was stuck
936 on a screen normally showing the bread types and prizes:&lt;/p&gt;
937
938 &lt;p align=&quot;center&quot;&gt;&lt;img width=&quot;70%&quot; src=&quot;http://people.skolelinux.org/pere/blog/images/2014-10-04-ubuntu-ica-storo-crop.jpeg&quot;&gt;&lt;/p&gt;
939
940 &lt;p&gt;If it had booted as it was supposed to, I would never had known
941 about this hidden Linux installation. It is interesting what
942 &lt;a href=&quot;http://revealingerrors.com/&quot;&gt;errors can reveal&lt;/a&gt;.&lt;/p&gt;
943 </description>
944 </item>
945
946 <item>
947 <title>New lsdvd release version 0.17 is ready</title>
948 <link>http://people.skolelinux.org/pere/blog/New_lsdvd_release_version_0_17_is_ready.html</link>
949 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/New_lsdvd_release_version_0_17_is_ready.html</guid>
950 <pubDate>Sat, 4 Oct 2014 08:40:00 +0200</pubDate>
951 <description>&lt;p&gt;The &lt;a href=&quot;https://sourceforge.net/p/lsdvd/&quot;&gt;lsdvd project&lt;/a&gt;
952 got a new set of developers a few weeks ago, after the original
953 developer decided to step down and pass the project to fresh blood.
954 This project is now maintained by Petter Reinholdtsen and Steve
955 Dibb.&lt;/p&gt;
956
957 &lt;p&gt;I just wrapped up
958 &lt;a href=&quot;https://sourceforge.net/p/lsdvd/mailman/message/32896061/&quot;&gt;a
959 new lsdvd release&lt;/a&gt;, available in git or from
960 &lt;a href=&quot;https://sourceforge.net/projects/lsdvd/files/lsdvd/&quot;&gt;the
961 download page&lt;/a&gt;. This is the changelog dated 2014-10-03 for version
962 0.17.&lt;/p&gt;
963
964 &lt;ul&gt;
965
966 &lt;li&gt;Ignore &#39;phantom&#39; audio, subtitle tracks&lt;/li&gt;
967 &lt;li&gt;Check for garbage in the program chains, which indicate that a track is
968 non-existant, to work around additional copy protection&lt;/li&gt;
969 &lt;li&gt;Fix displaying content type for audio tracks, subtitles&lt;/li&gt;
970 &lt;li&gt;Fix pallete display of first entry&lt;/li&gt;
971 &lt;li&gt;Fix include orders&lt;/li&gt;
972 &lt;li&gt;Ignore read errors in titles that would not be displayed anyway&lt;/li&gt;
973 &lt;li&gt;Fix the chapter count&lt;/li&gt;
974 &lt;li&gt;Make sure the array size and the array limit used when initialising
975 the palette size is the same.&lt;/li&gt;
976 &lt;li&gt;Fix array printing.&lt;/li&gt;
977 &lt;li&gt;Correct subsecond calculations.&lt;/li&gt;
978 &lt;li&gt;Add sector information to the output format.&lt;/li&gt;
979 &lt;li&gt;Clean up code to be closer to ANSI C and compile without warnings
980 with more GCC compiler warnings.&lt;/li&gt;
981
982 &lt;/ul&gt;
983
984 &lt;p&gt;This change bring together patches for lsdvd in use in various
985 Linux and Unix distributions, as well as patches submitted to the
986 project the last nine years. Please check it out. :)&lt;/p&gt;
987 </description>
988 </item>
989
990 <item>
991 <title>How to test Debian Edu Jessie despite some fatal problems with the installer</title>
992 <link>http://people.skolelinux.org/pere/blog/How_to_test_Debian_Edu_Jessie_despite_some_fatal_problems_with_the_installer.html</link>
993 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/How_to_test_Debian_Edu_Jessie_despite_some_fatal_problems_with_the_installer.html</guid>
994 <pubDate>Fri, 26 Sep 2014 12:20:00 +0200</pubDate>
995 <description>&lt;p&gt;The &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux
996 project&lt;/a&gt; provide a Linux solution for schools, including a
997 powerful desktop with education software, a central server providing
998 web pages, user database, user home directories, central login and PXE
999 boot of both clients without disk and the installation to install Debian
1000 Edu on machines with disk (and a few other services perhaps to small
1001 to mention here). We in the Debian Edu team are currently working on
1002 the Jessie based version, trying to get everything in shape before the
1003 freeze, to avoid having to maintain our own package repository in the
1004 future. The
1005 &lt;a href=&quot;https://wiki.debian.org/DebianEdu/Status/Jessie&quot;&gt;current
1006 status&lt;/a&gt; can be seen on the Debian wiki, and there is still heaps of
1007 work left. Some fatal problems block testing, breaking the installer,
1008 but it is possible to work around these to get anyway. Here is a
1009 recipe on how to get the installation limping along.&lt;/p&gt;
1010
1011 &lt;p&gt;First, download the test ISO via
1012 &lt;a href=&quot;ftp://ftp.skolelinux.no/cd-edu-testing-nolocal-netinst/debian-edu-amd64-i386-NETINST-1.iso&quot;&gt;ftp&lt;/a&gt;,
1013 &lt;a href=&quot;http://ftp.skolelinux.no/cd-edu-testing-nolocal-netinst/debian-edu-amd64-i386-NETINST-1.iso&quot;&gt;http&lt;/a&gt;
1014 or rsync (use
1015 ftp.skolelinux.org::cd-edu-testing-nolocal-netinst/debian-edu-amd64-i386-NETINST-1.iso).
1016 The ISO build was broken on Tuesday, so we do not get a new ISO every
1017 12 hours or so, but thankfully the ISO we already got we are able to
1018 install with some tweaking.&lt;/p&gt;
1019
1020 &lt;p&gt;When you get to the Debian Edu profile question, go to tty2
1021 (use Alt-Ctrl-F2), run&lt;/p&gt;
1022
1023 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
1024 nano /usr/bin/edu-eatmydata-install
1025 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
1026
1027 &lt;p&gt;and add &#39;exit 0&#39; as the second line, disabling the eatmydata
1028 optimization. Return to the installation, select the profile you want
1029 and continue. Without this change, exim4-config will fail to install
1030 due to a known bug in eatmydata.&lt;/p&gt;
1031
1032 &lt;p&gt;When you get the grub question at the end, answer /dev/sda (or if
1033 this do not work, figure out what your correct value would be. All my
1034 test machines need /dev/sda, so I have no advice if it do not fit
1035 your need.&lt;/p&gt;
1036
1037 &lt;p&gt;If you installed a profile including a graphical desktop, log in as
1038 root after the initial boot from hard drive, and install the
1039 education-desktop-XXX metapackage. XXX can be kde, gnome, lxde, xfce
1040 or mate. If you want several desktop options, install more than one
1041 metapackage. Once this is done, reboot and you should have a working
1042 graphical login screen. This workaround should no longer be needed
1043 once the education-tasks package version 1.801 enter testing in two
1044 days.&lt;/p&gt;
1045
1046 &lt;p&gt;I believe the ISO build will start working on two days when the new
1047 tasksel package enter testing and Steve McIntyre get a chance to
1048 update the debian-cd git repository. The eatmydata, grub and desktop
1049 issues are already fixed in unstable and testing, and should show up
1050 on the ISO as soon as the ISO build start working again. Well the
1051 eatmydata optimization is really just disabled. The proper fix
1052 require an upload by the eatmydata maintainer applying the patch
1053 provided in bug &lt;a href=&quot;https://bugs.debian.org/702711&quot;&gt;#702711&lt;/a&gt;.
1054 The rest have proper fixes in unstable.&lt;/p&gt;
1055
1056 &lt;p&gt;I hope this get you going with the installation testing, as we are
1057 quickly running out of time trying to get our Jessie based
1058 installation ready before the distribution freeze in a month.&lt;/p&gt;
1059 </description>
1060 </item>
1061
1062 <item>
1063 <title>Suddenly I am the new upstream of the lsdvd command line tool</title>
1064 <link>http://people.skolelinux.org/pere/blog/Suddenly_I_am_the_new_upstream_of_the_lsdvd_command_line_tool.html</link>
1065 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Suddenly_I_am_the_new_upstream_of_the_lsdvd_command_line_tool.html</guid>
1066 <pubDate>Thu, 25 Sep 2014 11:20:00 +0200</pubDate>
1067 <description>&lt;p&gt;I use the &lt;a href=&quot;https://sourceforge.net/p/lsdvd/&quot;&gt;lsdvd tool&lt;/a&gt;
1068 to handle my fairly large DVD collection. It is a nice command line
1069 tool to get details about a DVD, like title, tracks, track length,
1070 etc, in XML, Perl or human readable format. But lsdvd have not seen
1071 any new development since 2006 and had a few irritating bugs affecting
1072 its use with some DVDs. Upstream seemed to be dead, and in January I
1073 sent a small probe asking for a version control repository for the
1074 project, without any reply. But I use it regularly and would like to
1075 get &lt;a href=&quot;https://packages.qa.debian.org/lsdvd&quot;&gt;an updated version
1076 into Debian&lt;/a&gt;. So two weeks ago I tried harder to get in touch with
1077 the project admin, and after getting a reply from him explaining that
1078 he was no longer interested in the project, I asked if I could take
1079 over. And yesterday, I became project admin.&lt;/p&gt;
1080
1081 &lt;p&gt;I&#39;ve been in touch with a Gentoo developer and the Debian
1082 maintainer interested in joining forces to maintain the upstream
1083 project, and I hope we can get a new release out fairly quickly,
1084 collecting the patches spread around on the internet into on place.
1085 I&#39;ve added the relevant Debian patches to the freshly created git
1086 repository, and expect the Gentoo patches to make it too. If you got
1087 a DVD collection and care about command line tools, check out
1088 &lt;a href=&quot;https://sourceforge.net/p/lsdvd/git/ci/master/tree/&quot;&gt;the git source&lt;/a&gt; and join
1089 &lt;a href=&quot;https://sourceforge.net/p/lsdvd/mailman/&quot;&gt;the project mailing
1090 list&lt;/a&gt;. :)&lt;/p&gt;
1091 </description>
1092 </item>
1093
1094 <item>
1095 <title>Speeding up the Debian installer using eatmydata and dpkg-divert</title>
1096 <link>http://people.skolelinux.org/pere/blog/Speeding_up_the_Debian_installer_using_eatmydata_and_dpkg_divert.html</link>
1097 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Speeding_up_the_Debian_installer_using_eatmydata_and_dpkg_divert.html</guid>
1098 <pubDate>Tue, 16 Sep 2014 14:00:00 +0200</pubDate>
1099 <description>&lt;p&gt;The &lt;a href=&quot;https://www.debian.org/&quot;&gt;Debian&lt;/a&gt; installer could be
1100 a lot quicker. When we install more than 2000 packages in
1101 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Skolelinux / Debian Edu&lt;/a&gt; using
1102 tasksel in the installer, unpacking the binary packages take forever.
1103 A part of the slow I/O issue was discussed in
1104 &lt;a href=&quot;https://bugs.debian.org/613428&quot;&gt;bug #613428&lt;/a&gt; about too
1105 much file system sync-ing done by dpkg, which is the package
1106 responsible for unpacking the binary packages. Other parts (like code
1107 executed by postinst scripts) might also sync to disk during
1108 installation. All this sync-ing to disk do not really make sense to
1109 me. If the machine crash half-way through, I start over, I do not try
1110 to salvage the half installed system. So the failure sync-ing is
1111 supposed to protect against, hardware or system crash, is not really
1112 relevant while the installer is running.&lt;/p&gt;
1113
1114 &lt;p&gt;A few days ago, I thought of a way to get rid of all the file
1115 system sync()-ing in a fairly non-intrusive way, without the need to
1116 change the code in several packages. The idea is not new, but I have
1117 not heard anyone propose the approach using dpkg-divert before. It
1118 depend on the small and clever package
1119 &lt;a href=&quot;https://packages.qa.debian.org/eatmydata&quot;&gt;eatmydata&lt;/a&gt;, which
1120 uses LD_PRELOAD to replace the system functions for syncing data to
1121 disk with functions doing nothing, thus allowing programs to live
1122 dangerous while speeding up disk I/O significantly. Instead of
1123 modifying the implementation of dpkg, apt and tasksel (which are the
1124 packages responsible for selecting, fetching and installing packages),
1125 it occurred to me that we could just divert the programs away, replace
1126 them with a simple shell wrapper calling
1127 &quot;eatmydata&amp;nbsp;$program&amp;nbsp;$@&quot;, to get the same effect.
1128 Two days ago I decided to test the idea, and wrapped up a simple
1129 implementation for the Debian Edu udeb.&lt;/p&gt;
1130
1131 &lt;p&gt;The effect was stunning. In my first test it reduced the running
1132 time of the pkgsel step (installing tasks) from 64 to less than 44
1133 minutes (20 minutes shaved off the installation) on an old Dell
1134 Latitude D505 machine. I am not quite sure what the optimised time
1135 would have been, as I messed up the testing a bit, causing the debconf
1136 priority to get low enough for two questions to pop up during
1137 installation. As soon as I saw the questions I moved the installation
1138 along, but do not know how long the question were holding up the
1139 installation. I did some more measurements using Debian Edu Jessie,
1140 and got these results. The time measured is the time stamp in
1141 /var/log/syslog between the &quot;pkgsel: starting tasksel&quot; and the
1142 &quot;pkgsel: finishing up&quot; lines, if you want to do the same measurement
1143 yourself. In Debian Edu, the tasksel dialog do not show up, and the
1144 timing thus do not depend on how quickly the user handle the tasksel
1145 dialog.&lt;/p&gt;
1146
1147 &lt;p&gt;&lt;table&gt;
1148
1149 &lt;tr&gt;
1150 &lt;th&gt;Machine/setup&lt;/th&gt;
1151 &lt;th&gt;Original tasksel&lt;/th&gt;
1152 &lt;th&gt;Optimised tasksel&lt;/th&gt;
1153 &lt;th&gt;Reduction&lt;/th&gt;
1154 &lt;/tr&gt;
1155
1156 &lt;tr&gt;
1157 &lt;td&gt;Latitude D505 Main+LTSP LXDE&lt;/td&gt;
1158 &lt;td&gt;64 min (07:46-08:50)&lt;/td&gt;
1159 &lt;td&gt;&lt;44 min (11:27-12:11)&lt;/td&gt;
1160 &lt;td&gt;&gt;20 min 18%&lt;/td&gt;
1161 &lt;/tr&gt;
1162
1163 &lt;tr&gt;
1164 &lt;td&gt;Latitude D505 Roaming LXDE&lt;/td&gt;
1165 &lt;td&gt;57 min (08:48-09:45)&lt;/td&gt;
1166 &lt;td&gt;34 min (07:43-08:17)&lt;/td&gt;
1167 &lt;td&gt;23 min 40%&lt;/td&gt;
1168 &lt;/tr&gt;
1169
1170 &lt;tr&gt;
1171 &lt;td&gt;Latitude D505 Minimal&lt;/td&gt;
1172 &lt;td&gt;22 min (10:37-10:59)&lt;/td&gt;
1173 &lt;td&gt;11 min (11:16-11:27)&lt;/td&gt;
1174 &lt;td&gt;11 min 50%&lt;/td&gt;
1175 &lt;/tr&gt;
1176
1177 &lt;tr&gt;
1178 &lt;td&gt;Thinkpad X200 Minimal&lt;/td&gt;
1179 &lt;td&gt;6 min (08:19-08:25)&lt;/td&gt;
1180 &lt;td&gt;4 min (08:04-08:08)&lt;/td&gt;
1181 &lt;td&gt;2 min 33%&lt;/td&gt;
1182 &lt;/tr&gt;
1183
1184 &lt;tr&gt;
1185 &lt;td&gt;Thinkpad X200 Roaming KDE&lt;/td&gt;
1186 &lt;td&gt;19 min (09:21-09:40)&lt;/td&gt;
1187 &lt;td&gt;15 min (10:25-10:40)&lt;/td&gt;
1188 &lt;td&gt;4 min 21%&lt;/td&gt;
1189 &lt;/tr&gt;
1190
1191 &lt;/table&gt;&lt;/p&gt;
1192
1193 &lt;p&gt;The test is done using a netinst ISO on a USB stick, so some of the
1194 time is spent downloading packages. The connection to the Internet
1195 was 100Mbit/s during testing, so downloading should not be a
1196 significant factor in the measurement. Download typically took a few
1197 seconds to a few minutes, depending on the amount of packages being
1198 installed.&lt;/p&gt;
1199
1200 &lt;p&gt;The speedup is implemented by using two hooks in
1201 &lt;a href=&quot;https://www.debian.org/devel/debian-installer/&quot;&gt;Debian
1202 Installer&lt;/a&gt;, the pre-pkgsel.d hook to set up the diverts, and the
1203 finish-install.d hook to remove the divert at the end of the
1204 installation. I picked the pre-pkgsel.d hook instead of the
1205 post-base-installer.d hook because I test using an ISO without the
1206 eatmydata package included, and the post-base-installer.d hook in
1207 Debian Edu can only operate on packages included in the ISO. The
1208 negative effect of this is that I am unable to activate this
1209 optimization for the kernel installation step in d-i. If the code is
1210 moved to the post-base-installer.d hook, the speedup would be larger
1211 for the entire installation.&lt;/p&gt;
1212
1213 &lt;p&gt;I&#39;ve implemented this in the
1214 &lt;a href=&quot;https://packages.qa.debian.org/debian-edu-install&quot;&gt;debian-edu-install&lt;/a&gt;
1215 git repository, and plan to provide the optimization as part of the
1216 Debian Edu installation. If you want to test this yourself, you can
1217 create two files in the installer (or in an udeb). One shell script
1218 need do go into /usr/lib/pre-pkgsel.d/, with content like this:&lt;/p&gt;
1219
1220 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
1221 #!/bin/sh
1222 set -e
1223 . /usr/share/debconf/confmodule
1224 info() {
1225 logger -t my-pkgsel &quot;info: $*&quot;
1226 }
1227 error() {
1228 logger -t my-pkgsel &quot;error: $*&quot;
1229 }
1230 override_install() {
1231 apt-install eatmydata || true
1232 if [ -x /target/usr/bin/eatmydata ] ; then
1233 for bin in dpkg apt-get aptitude tasksel ; do
1234 file=/usr/bin/$bin
1235 # Test that the file exist and have not been diverted already.
1236 if [ -f /target$file ] ; then
1237 info &quot;diverting $file using eatmydata&quot;
1238 printf &quot;#!/bin/sh\neatmydata $bin.distrib \&quot;\$@\&quot;\n&quot; \
1239 &gt; /target$file.edu
1240 chmod 755 /target$file.edu
1241 in-target dpkg-divert --package debian-edu-config \
1242 --rename --quiet --add $file
1243 ln -sf ./$bin.edu /target$file
1244 else
1245 error &quot;unable to divert $file, as it is missing.&quot;
1246 fi
1247 done
1248 else
1249 error &quot;unable to find /usr/bin/eatmydata after installing the eatmydata pacage&quot;
1250 fi
1251 }
1252
1253 override_install
1254 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
1255
1256 &lt;p&gt;To clean up, another shell script should go into
1257 /usr/lib/finish-install.d/ with code like this:
1258
1259 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
1260 #! /bin/sh -e
1261 . /usr/share/debconf/confmodule
1262 error() {
1263 logger -t my-finish-install &quot;error: $@&quot;
1264 }
1265 remove_install_override() {
1266 for bin in dpkg apt-get aptitude tasksel ; do
1267 file=/usr/bin/$bin
1268 if [ -x /target$file.edu ] ; then
1269 rm /target$file
1270 in-target dpkg-divert --package debian-edu-config \
1271 --rename --quiet --remove $file
1272 rm /target$file.edu
1273 else
1274 error &quot;Missing divert for $file.&quot;
1275 fi
1276 done
1277 sync # Flush file buffers before continuing
1278 }
1279
1280 remove_install_override
1281 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
1282
1283 &lt;p&gt;In Debian Edu, I placed both code fragments in a separate script
1284 edu-eatmydata-install and call it from the pre-pkgsel.d and
1285 finish-install.d scripts.&lt;/p&gt;
1286
1287 &lt;p&gt;By now you might ask if this change should get into the normal
1288 Debian installer too? I suspect it should, but am not sure the
1289 current debian-installer coordinators find it useful enough. It also
1290 depend on the side effects of the change. I&#39;m not aware of any, but I
1291 guess we will see if the change is safe after some more testing.
1292 Perhaps there is some package in Debian depending on sync() and
1293 fsync() having effect? Perhaps it should go into its own udeb, to
1294 allow those of us wanting to enable it to do so without affecting
1295 everyone.&lt;/p&gt;
1296
1297 &lt;p&gt;Update 2014-09-24: Since a few days ago, enabling this optimization
1298 will break installation of all programs using gnutls because of
1299 &lt;a href=&quot;https://bugs.debian.org/702711&quot;&gt;bug #702711&lt;/a&gt;. An updated
1300 eatmydata package in Debian will solve it.&lt;/p&gt;
1301
1302 &lt;p&gt;Update 2014-10-17: The bug mentioned above is fixed in testing and
1303 the optimization work again. And I have discovered that the
1304 dpkg-divert trick is not really needed and implemented a slightly
1305 simpler approach as part of the debian-edu-install package. See
1306 tools/edu-eatmydata-install in the source package.&lt;/p&gt;
1307
1308 &lt;p&gt;Update 2014-11-11: Unfortunately, a new
1309 &lt;a href=&quot;http://bugs.debian.org/765738&quot;&gt;bug #765738&lt;/a&gt; in eatmydata only
1310 triggering on i386 made it into testing, and broke this installation
1311 optimization again. If &lt;a href=&quot;http://bugs.debian.org/768893&quot;&gt;unblock
1312 request 768893&lt;/a&gt; is accepted, it should be working again.&lt;/p&gt;
1313 </description>
1314 </item>
1315
1316 <item>
1317 <title>Good bye subkeys.pgp.net, welcome pool.sks-keyservers.net</title>
1318 <link>http://people.skolelinux.org/pere/blog/Good_bye_subkeys_pgp_net__welcome_pool_sks_keyservers_net.html</link>
1319 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Good_bye_subkeys_pgp_net__welcome_pool_sks_keyservers_net.html</guid>
1320 <pubDate>Wed, 10 Sep 2014 13:10:00 +0200</pubDate>
1321 <description>&lt;p&gt;Yesterday, I had the pleasure of attending a talk with the
1322 &lt;a href=&quot;http://www.nuug.no/&quot;&gt;Norwegian Unix User Group&lt;/a&gt; about
1323 &lt;a href=&quot;http://www.nuug.no/aktiviteter/20140909-sks-keyservers/&quot;&gt;the
1324 OpenPGP keyserver pool sks-keyservers.net&lt;/a&gt;, and was very happy to
1325 learn that there is a large set of publicly available key servers to
1326 use when looking for peoples public key. So far I have used
1327 subkeys.pgp.net, and some times wwwkeys.nl.pgp.net when the former
1328 were misbehaving, but those days are ended. The servers I have used
1329 up until yesterday have been slow and some times unavailable. I hope
1330 those problems are gone now.&lt;/p&gt;
1331
1332 &lt;p&gt;Behind the round robin DNS entry of the
1333 &lt;a href=&quot;https://sks-keyservers.net/&quot;&gt;sks-keyservers.net&lt;/a&gt; service
1334 there is a pool of more than 100 keyservers which are checked every
1335 day to ensure they are well connected and up to date. It must be
1336 better than what I have used so far. :)&lt;/p&gt;
1337
1338 &lt;p&gt;Yesterdays speaker told me that the service is the default
1339 keyserver provided by the default configuration in GnuPG, but this do
1340 not seem to be used in Debian. Perhaps it should?&lt;/p&gt;
1341
1342 &lt;p&gt;Anyway, I&#39;ve updated my ~/.gnupg/options file to now include this
1343 line:&lt;/p&gt;
1344
1345 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
1346 keyserver pool.sks-keyservers.net
1347 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
1348
1349 &lt;p&gt;With GnuPG version 2 one can also locate the keyserver using SRV
1350 entries in DNS. Just for fun, I did just that at work, so now every
1351 user of GnuPG at the University of Oslo should find a OpenGPG
1352 keyserver automatically should their need it:&lt;/p&gt;
1353
1354 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
1355 % host -t srv _pgpkey-http._tcp.uio.no
1356 _pgpkey-http._tcp.uio.no has SRV record 0 100 11371 pool.sks-keyservers.net.
1357 %
1358 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
1359
1360 &lt;p&gt;Now if only
1361 &lt;a href=&quot;http://ietfreport.isoc.org/idref/draft-shaw-openpgp-hkp/&quot;&gt;the
1362 HKP lookup protocol&lt;/a&gt; supported finding signature paths, I would be
1363 very happy. It can look up a given key or search for a user ID, but I
1364 normally do not want that, but to find a trust path from my key to
1365 another key. Given a user ID or key ID, I would like to find (and
1366 download) the keys representing a signature path from my key to the
1367 key in question, to be able to get a trust path between the two keys.
1368 This is as far as I can tell not possible today. Perhaps something
1369 for a future version of the protocol?&lt;/p&gt;
1370 </description>
1371 </item>
1372
1373 <item>
1374 <title>Do you need an agreement with MPEG-LA to publish and broadcast H.264 video in Norway?</title>
1375 <link>http://people.skolelinux.org/pere/blog/Do_you_need_an_agreement_with_MPEG_LA_to_publish_and_broadcast_H_264_video_in_Norway_.html</link>
1376 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Do_you_need_an_agreement_with_MPEG_LA_to_publish_and_broadcast_H_264_video_in_Norway_.html</guid>
1377 <pubDate>Mon, 25 Aug 2014 22:10:00 +0200</pubDate>
1378 <description>&lt;p&gt;Two years later, I am still not sure if it is legal here in Norway
1379 to use or publish a video in H.264 or MPEG4 format edited by the
1380 commercially licensed video editors, without limiting the use to
1381 create &quot;personal&quot; or &quot;non-commercial&quot; videos or get a license
1382 agreement with &lt;a href=&quot;http://www.mpegla.com&quot;&gt;MPEG LA&lt;/a&gt;. If one
1383 want to publish and broadcast video in a non-personal or commercial
1384 setting, it might be that those tools can not be used, or that video
1385 format can not be used, without breaking their copyright license. I
1386 am not sure.
1387 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Trenger_en_avtale_med_MPEG_LA_for___publisere_og_kringkaste_H_264_video_.html&quot;&gt;Back
1388 then&lt;/a&gt;, I found that the copyright license terms for Adobe Premiere
1389 and Apple Final Cut Pro both specified that one could not use the
1390 program to produce anything else without a patent license from MPEG
1391 LA. The issue is not limited to those two products, though. Other
1392 much used products like those from Avid and Sorenson Media have terms
1393 of use are similar to those from Adobe and Apple. The complicating
1394 factor making me unsure if those terms have effect in Norway or not is
1395 that the patents in question are not valid in Norway, but copyright
1396 licenses are.&lt;/p&gt;
1397
1398 &lt;p&gt;These are the terms for Avid Artist Suite, according to their
1399 &lt;a href=&quot;http://www.avid.com/US/about-avid/legal-notices/legal-enduserlicense2&quot;&gt;published
1400 end user&lt;/a&gt;
1401 &lt;a href=&quot;http://www.avid.com/static/resources/common/documents/corporate/LICENSE.pdf&quot;&gt;license
1402 text&lt;/a&gt; (converted to lower case text for easier reading):&lt;/p&gt;
1403
1404 &lt;p&gt;&lt;blockquote&gt;
1405 &lt;p&gt;18.2. MPEG-4. MPEG-4 technology may be included with the
1406 software. MPEG LA, L.L.C. requires this notice: &lt;/p&gt;
1407
1408 &lt;p&gt;This product is licensed under the MPEG-4 visual patent portfolio
1409 license for the personal and non-commercial use of a consumer for (i)
1410 encoding video in compliance with the MPEG-4 visual standard (“MPEG-4
1411 video”) and/or (ii) decoding MPEG-4 video that was encoded by a
1412 consumer engaged in a personal and non-commercial activity and/or was
1413 obtained from a video provider licensed by MPEG LA to provide MPEG-4
1414 video. No license is granted or shall be implied for any other
1415 use. Additional information including that relating to promotional,
1416 internal and commercial uses and licensing may be obtained from MPEG
1417 LA, LLC. See http://www.mpegla.com. This product is licensed under
1418 the MPEG-4 systems patent portfolio license for encoding in compliance
1419 with the MPEG-4 systems standard, except that an additional license
1420 and payment of royalties are necessary for encoding in connection with
1421 (i) data stored or replicated in physical media which is paid for on a
1422 title by title basis and/or (ii) data which is paid for on a title by
1423 title basis and is transmitted to an end user for permanent storage
1424 and/or use, such additional license may be obtained from MPEG LA,
1425 LLC. See http://www.mpegla.com for additional details.&lt;/p&gt;
1426
1427 &lt;p&gt;18.3. H.264/AVC. H.264/AVC technology may be included with the
1428 software. MPEG LA, L.L.C. requires this notice:&lt;/p&gt;
1429
1430 &lt;p&gt;This product is licensed under the AVC patent portfolio license for
1431 the personal use of a consumer or other uses in which it does not
1432 receive remuneration to (i) encode video in compliance with the AVC
1433 standard (“AVC video”) and/or (ii) decode AVC video that was encoded
1434 by a consumer engaged in a personal activity and/or was obtained from
1435 a video provider licensed to provide AVC video. No license is granted
1436 or shall be implied for any other use. Additional information may be
1437 obtained from MPEG LA, L.L.C. See http://www.mpegla.com.&lt;/p&gt;
1438 &lt;/blockquote&gt;&lt;/p&gt;
1439
1440 &lt;p&gt;Note the requirement that the videos created can only be used for
1441 personal or non-commercial purposes.&lt;/p&gt;
1442
1443 &lt;p&gt;The Sorenson Media software have
1444 &lt;a href=&quot;http://www.sorensonmedia.com/terms/&quot;&gt;similar terms&lt;/a&gt;:&lt;/p&gt;
1445
1446 &lt;p&gt;&lt;blockquote&gt;
1447
1448 &lt;p&gt;With respect to a license from Sorenson pertaining to MPEG-4 Video
1449 Decoders and/or Encoders: Any such product is licensed under the
1450 MPEG-4 visual patent portfolio license for the personal and
1451 non-commercial use of a consumer for (i) encoding video in compliance
1452 with the MPEG-4 visual standard (“MPEG-4 video”) and/or (ii) decoding
1453 MPEG-4 video that was encoded by a consumer engaged in a personal and
1454 non-commercial activity and/or was obtained from a video provider
1455 licensed by MPEG LA to provide MPEG-4 video. No license is granted or
1456 shall be implied for any other use. Additional information including
1457 that relating to promotional, internal and commercial uses and
1458 licensing may be obtained from MPEG LA, LLC. See
1459 http://www.mpegla.com.&lt;/p&gt;
1460
1461 &lt;p&gt;With respect to a license from Sorenson pertaining to MPEG-4
1462 Consumer Recorded Data Encoder, MPEG-4 Systems Internet Data Encoder,
1463 MPEG-4 Mobile Data Encoder, and/or MPEG-4 Unique Use Encoder: Any such
1464 product is licensed under the MPEG-4 systems patent portfolio license
1465 for encoding in compliance with the MPEG-4 systems standard, except
1466 that an additional license and payment of royalties are necessary for
1467 encoding in connection with (i) data stored or replicated in physical
1468 media which is paid for on a title by title basis and/or (ii) data
1469 which is paid for on a title by title basis and is transmitted to an
1470 end user for permanent storage and/or use. Such additional license may
1471 be obtained from MPEG LA, LLC. See http://www.mpegla.com for
1472 additional details.&lt;/p&gt;
1473
1474 &lt;/blockquote&gt;&lt;/p&gt;
1475
1476 &lt;p&gt;Some free software like
1477 &lt;a href=&quot;https://handbrake.fr/&quot;&gt;Handbrake&lt;/A&gt; and
1478 &lt;a href=&quot;http://ffmpeg.org/&quot;&gt;FFMPEG&lt;/a&gt; uses GPL/LGPL licenses and do
1479 not have any such terms included, so for those, there is no
1480 requirement to limit the use to personal and non-commercial.&lt;/p&gt;
1481 </description>
1482 </item>
1483
1484 <item>
1485 <title>Debian Edu interview: Bernd Zeitzen</title>
1486 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Bernd_Zeitzen.html</link>
1487 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Bernd_Zeitzen.html</guid>
1488 <pubDate>Thu, 31 Jul 2014 08:30:00 +0200</pubDate>
1489 <description>&lt;p&gt;The complete and free “out of the box” software solution for
1490 schools, &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu /
1491 Skolelinux&lt;/a&gt;, is used quite a lot in Germany, and one of the people
1492 involved is Bernd Zeitzen, who show up on the project mailing lists
1493 from time to time with interesting questions and tips on how to adjust
1494 the setup. I managed to interview him this summer.&lt;/p&gt;
1495
1496 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
1497
1498 &lt;p&gt;My name is Bernd Zeitzen and I&#39;m married with Hedda, a self
1499 employed physiotherapist. My former profession is tool maker, but I
1500 haven&#39;t worked for 30 years in this job. 30 years ago I started to
1501 support my wife and become her officeworker and a few years later the
1502 administrator for a small computer network, today based on Ubuntu
1503 Server (Samba, OpenVPN). For her daily work she has to use Windows
1504 Desktops because the software she needs to organize her business only
1505 works with Windows . :-(&lt;/p&gt;
1506
1507 &lt;p&gt;In 1988 we started with one PC and DOS, then I learned to use
1508 Windows 98, 2000, XP, …, 8, Ubuntu, MacOSX. Today we are running a
1509 Linux server with 6 Windows clients and 10 persons (teacher of
1510 children with special needs, speech therapist, occupational therapist,
1511 psychologist and officeworkers) using our Samba shares via OpenVPN to
1512 work with the documentations of our patients.&lt;/p&gt;
1513
1514 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux / Debian Edu
1515 project?&lt;/strong&gt;&lt;/p&gt;
1516
1517 &lt;p&gt;Two years ago a friend of mine asked me, if I want to get a job in
1518 his school (&lt;a href=&quot;http://www.gymnasium-harsewinkel.de/&quot;&gt;Gymnasium
1519 Harsewinkel&lt;/a&gt;). They started with Skolelinux / Debian Edu and they
1520 were looking for people to give support to the teachers using the
1521 software and the network and teaching the pupils increasing their
1522 computer skills in optional lessons. I&#39;m spending 4-6 hours a week
1523 with this job.&lt;/p&gt;
1524
1525 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux / Debian
1526 Edu?&lt;/strong&gt;&lt;/p&gt;
1527
1528 &lt;p&gt;The independence.&lt;/p&gt;
1529
1530 &lt;p&gt;First: Every person is allowed to use, share and develop the
1531 software. Even if you are poor, you are allowed to use the software
1532 included in Skolelinux/Debian Edu and all the other Free Software.&lt;/p&gt;
1533
1534 &lt;p&gt;Second: The software runs on old machines and this gives us the
1535 possibility to recycle computers, weeded out from offices. The
1536 servers and desktops are running for more than two years and they are
1537 working reliable. &lt;/p&gt;
1538
1539 &lt;p&gt;We have two servers (one tjener and one terminal server), 45
1540 workstations in three classrooms and seven laptops as a mobile
1541 solution for all classrooms. These machines are all booting from the
1542 terminal server. In the moment we are installing 30 laptops as mobile
1543 workstations. Then the pupils have the possibility to work with these
1544 machines in their classrooms. Internet access is realized by a WLAN
1545 router, connected to the schools network. This is all done without a
1546 dedicated system administrator or a computer science teacher.&lt;/p&gt;
1547
1548 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux / Debian
1549 Edu?&lt;/strong&gt;&lt;/p&gt;
1550
1551 &lt;p&gt;Teachers and pupils are Windows users. &amp;lt;Irony on&amp;gt; And Linux
1552 isn&#39;t cool. It&#39;s software for freaks using the command line. &amp;lt;Irony
1553 off&amp;gt; They don&#39;t realize the stability of the system. &lt;/p&gt;
1554
1555 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
1556
1557 &lt;p&gt;Firefox, Thunderbird, LibreOffice, Ubuntu Server 12.04 (Samba,
1558 Apache, MySQL, Joomla!, … and Skolelinux / Debian Edu)&lt;/p&gt;
1559
1560 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
1561 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
1562
1563 &lt;p&gt;In Germany we have the situation: every school is free to decide
1564 which software they want to use. This decision is influenced by
1565 teachers who learned to use Windows and MS Office. They buy a PC with
1566 Windows preinstalled and an additional testing version of MS
1567 Office. They don&#39;t know about the possibility to use Free Software
1568 instead. Another problem are the publisher of school books. They
1569 develop their software, added to the school books, for Windows.&lt;/p&gt;
1570 </description>
1571 </item>
1572
1573 <item>
1574 <title>98.6 percent done with the Norwegian draft translation of Free Culture</title>
1575 <link>http://people.skolelinux.org/pere/blog/98_6_percent_done_with_the_Norwegian_draft_translation_of_Free_Culture.html</link>
1576 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/98_6_percent_done_with_the_Norwegian_draft_translation_of_Free_Culture.html</guid>
1577 <pubDate>Wed, 23 Jul 2014 22:40:00 +0200</pubDate>
1578 <description>&lt;p&gt;This summer I finally had time to continue working on the Norwegian
1579 &lt;a href=&quot;http://www.docbook.org/&quot;&gt;docbook&lt;/a&gt; version of the 2004 book
1580 &lt;a href=&quot;http://free-culture.cc/&quot;&gt;Free Culture&lt;/a&gt; by Lawrence Lessig,
1581 to get a Norwegian text explaining the problems with todays copyright
1582 law. Yesterday, I finally completed translated the book text. There
1583 are still some foot/end notes left to translate, the colophon page
1584 need to be rewritten, and a few words and phrases still need to be
1585 translated, but the Norwegian text is ready for the first proof
1586 reading. :) More spell checking is needed, and several illustrations
1587 need to be cleaned up. The work stopped up because I had to give
1588 priority to other projects the last year, and the progress graph of
1589 the translation show this very well:&lt;/p&gt;
1590
1591 &lt;p&gt;&lt;img width=&quot;80%&quot; align=&quot;center&quot; src=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/raw/master/progress.png&quot;&gt;&lt;/p&gt;
1592
1593 &lt;p&gt;If you want to read the result, check out the
1594 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig&quot;&gt;github&lt;/a&gt;
1595 project pages and the
1596 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/blob/master/archive/freeculture.nb.pdf?raw=true&quot;&gt;PDF&lt;/a&gt;,
1597 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/blob/master/archive/freeculture.nb.epub?raw=true&quot;&gt;EPUB&lt;/a&gt;
1598 and HTML version available in the
1599 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/tree/master/archive&quot;&gt;archive
1600 directory&lt;/a&gt;.&lt;/p&gt;
1601
1602 &lt;p&gt;Please report typos, bugs and improvements to the github project if
1603 you find any.&lt;/p&gt;
1604 </description>
1605 </item>
1606
1607 <item>
1608 <title>From English wiki to translated PDF and epub via Docbook</title>
1609 <link>http://people.skolelinux.org/pere/blog/From_English_wiki_to_translated_PDF_and_epub_via_Docbook.html</link>
1610 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/From_English_wiki_to_translated_PDF_and_epub_via_Docbook.html</guid>
1611 <pubDate>Tue, 17 Jun 2014 11:30:00 +0200</pubDate>
1612 <description>&lt;p&gt;The &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux
1613 project&lt;/a&gt; provide an instruction manual for teachers, system
1614 administrators and other users that contain useful tips for setting up
1615 and maintaining a Debian Edu installation. This text is about how the
1616 text processing of this manual is handled in the project.&lt;/p&gt;
1617
1618 &lt;p&gt;One goal of the project is to provide information in the native
1619 language of its users, and for this we need to handle translations.
1620 But we also want to make sure each language contain the same
1621 information, so for this we need a good way to keep the translations
1622 in sync. And we want it to be easy for our users to improve the
1623 documentation, avoiding the need to learn special formats or tools to
1624 contribute, and the obvious way to do this is to make it possible to
1625 edit the documentation using a web browser. We also want it to be
1626 easy for translators to keep the translation up to date, and give them
1627 help in figuring out what need to be translated. Here is the list of
1628 tools and the process we have found trying to reach all these
1629 goals.&lt;/p&gt;
1630
1631 &lt;p&gt;We maintain the authoritative source of our manual in the
1632 &lt;a href=&quot;https://wiki.debian.org/DebianEdu/Documentation/Wheezy/&quot;&gt;Debian
1633 wiki&lt;/a&gt;, as several wiki pages written in English. It consist of one
1634 front page with references to the different chapters, several pages
1635 for each chapter, and finally one &quot;collection page&quot; gluing all the
1636 chapters together into one large web page (aka
1637 &lt;a href=&quot;https://wiki.debian.org/DebianEdu/Documentation/Wheezy/AllInOne&quot;&gt;the
1638 AllInOne page&lt;/a&gt;). The AllInOne page is the one used for further
1639 processing and translations. Thanks to the fact that the
1640 &lt;a href=&quot;http://moinmo.in/&quot;&gt;MoinMoin&lt;/a&gt; installation on
1641 wiki.debian.org support exporting pages in
1642 &lt;a href=&quot;http://www.docbook.org/&quot;&gt;the Docbook format&lt;/a&gt;, we can fetch
1643 the list of pages to export using the raw version of the AllInOne
1644 page, loop over each of them to generate a Docbook XML version of the
1645 manual. This process also download images and transform image
1646 references to use the locally downloaded images. The generated
1647 Docbook XML files are slightly broken, so some post-processing is done
1648 using the &lt;tt&gt;documentation/scripts/get_manual&lt;/tt&gt; program, and the
1649 result is a nice Docbook XML file (debian-edu-wheezy-manual.xml) and
1650 a handfull of images. The XML file can now be used to generate PDF, HTML
1651 and epub versions of the English manual. This is the basic step of
1652 our process, making PDF (using dblatex), HTML (using xsltproc) and
1653 epub (using dbtoepub) version from Docbook XML, and the resulting files
1654 are placed in the debian-edu-doc-en binary package.&lt;/p&gt;
1655
1656 &lt;p&gt;But English documentation is not enough for us. We want translated
1657 documentation too, and we want to make it easy for translators to
1658 track the English original. For this we use the
1659 &lt;a href=&quot;http://packages.qa.debian.org/p/poxml.html&quot;&gt;poxml&lt;/a&gt; package,
1660 which allow us to transform the English Docbook XML file into a
1661 translation file (a .pot file), usable with the normal gettext based
1662 translation tools used by those translating free software. The pot
1663 file is used to create and maintain translation files (several .po
1664 files), which the translations update with the native language
1665 translations of all titles, paragraphs and blocks of text in the
1666 original. The next step is combining the original English Docbook XML
1667 and the translation file (say debian-edu-wheezy-manual.nb.po), to
1668 create a translated Docbook XML file (in this case
1669 debian-edu-wheezy-manual.nb.xml). This translated (or partly
1670 translated, if the translation is not complete) Docbook XML file can
1671 then be used like the original to create a PDF, HTML and epub version
1672 of the documentation.&lt;/p&gt;
1673
1674 &lt;p&gt;The translators use different tools to edit the .po files. We
1675 recommend using
1676 &lt;a href=&quot;http://www.kde.org/applications/development/lokalize/&quot;&gt;lokalize&lt;/a&gt;,
1677 while some use emacs and vi, others can use web based editors like
1678 &lt;a href=&quot;http://pootle.translatehouse.org/&quot;&gt;Poodle&lt;/a&gt; or
1679 &lt;a href=&quot;https://www.transifex.com/&quot;&gt;Transifex&lt;/a&gt;. All we care about
1680 is where the .po file end up, in our git repository. Updated
1681 translations can either be committed directly to git, or submitted as
1682 &lt;a href=&quot;https://bugs.debian.org/src:debian-edu-doc&quot;&gt;bug reports
1683 against the debian-edu-doc package&lt;/a&gt;.&lt;/p&gt;
1684
1685 &lt;p&gt;One challenge is images, which both might need to be translated (if
1686 they show translated user applications), and are needed in different
1687 formats when creating PDF and HTML versions (epub is a HTML version in
1688 this regard). For this we transform the original PNG images to the
1689 needed density and format during build, and have a way to provide
1690 translated images by storing translated versions in
1691 images/$LANGUAGECODE/. I am a bit unsure about the details here. The
1692 package maintainers know more.&lt;/p&gt;
1693
1694 &lt;p&gt;If you wonder what the result look like, we provide
1695 &lt;a href=&quot;http://maintainer.skolelinux.org/debian-edu-doc/&quot;&gt;the content
1696 of the documentation packages on the web&lt;/a&gt;. See for example the
1697 &lt;a href=&quot;http://maintainer.skolelinux.org/debian-edu-doc/it/debian-edu-wheezy-manual.pdf&quot;&gt;Italian
1698 PDF version&lt;/a&gt; or the
1699 &lt;a href=&quot;http://maintainer.skolelinux.org/debian-edu-doc/de/debian-edu-wheezy-manual.html&quot;&gt;German
1700 HTML version&lt;/a&gt;. We do not yet build the epub version by default,
1701 but perhaps it will be done in the future.&lt;/p&gt;
1702
1703 &lt;p&gt;To learn more, check out
1704 &lt;a href=&quot;http://packages.qa.debian.org/d/debian-edu-doc.html&quot;&gt;the
1705 debian-edu-doc package&lt;/a&gt;,
1706 &lt;a href=&quot;https://wiki.debian.org/DebianEdu/Documentation/Wheezy/&quot;&gt;the
1707 manual on the wiki&lt;/a&gt; and
1708 &lt;a href=&quot;https://wiki.debian.org/DebianEdu/Documentation/Wheezy/Translations&quot;&gt;the
1709 translation instructions&lt;/a&gt; in the manual.&lt;/p&gt;
1710 </description>
1711 </item>
1712
1713 <item>
1714 <title>Free software car computer solution?</title>
1715 <link>http://people.skolelinux.org/pere/blog/Free_software_car_computer_solution_.html</link>
1716 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Free_software_car_computer_solution_.html</guid>
1717 <pubDate>Thu, 29 May 2014 18:45:00 +0200</pubDate>
1718 <description>&lt;p&gt;Dear lazyweb. I&#39;m planning to set up a small Raspberry Pi computer
1719 in my car, connected to
1720 &lt;a href=&quot;http://www.dx.com/p/400a-4-0-tft-lcd-digital-monitor-for-vehicle-parking-reverse-camera-1440x272-12v-dc-57776&quot;&gt;a
1721 small screen&lt;/a&gt; next to the rear mirror. I plan to hook it up with a
1722 GPS and a USB wifi card too. The idea is to get my own
1723 &quot;&lt;a href=&quot;http://en.wikipedia.org/wiki/Carputer&quot;&gt;Carputer&lt;/a&gt;&quot;. But I
1724 wonder if someone already created a good free software solution for
1725 such car computer.&lt;/p&gt;
1726
1727 &lt;p&gt;This is my current wish list for such system:&lt;/p&gt;
1728
1729 &lt;ul&gt;
1730
1731 &lt;li&gt;Work on Raspberry Pi.&lt;/li&gt;
1732
1733 &lt;li&gt;Show current speed limit based on location, and warn if going too
1734 fast (for example using color codes yellow and red on the screen,
1735 or make a sound). This could be done either using either data from
1736 &lt;a href=&quot;http://www.openstreetmap.org/&quot;&gt;Openstreetmap&lt;/a&gt; or OCR
1737 info gathered from a dashboard camera.&lt;/li&gt;
1738
1739 &lt;li&gt;Track automatic toll road passes and their cost, show total spent
1740 and make it possible to calculate toll costs for planned
1741 route.&lt;/li&gt;
1742
1743 &lt;li&gt;Collect GPX tracks for use with OpenStreetMap.&lt;/li&gt;
1744
1745 &lt;li&gt;Automatically detect and use any wireless connection to connect
1746 to home server. Try IP over DNS
1747 (&lt;a href=&quot;http://dev.kryo.se/iodine/&quot;&gt;iodine&lt;/a&gt;) or ICMP
1748 (&lt;a href=&quot;http://code.gerade.org/hans/&quot;&gt;Hans&lt;/a&gt;) if direct
1749 connection do not work.&lt;/li&gt;
1750
1751 &lt;li&gt;Set up mesh network to talk to other cars with the same system,
1752 or some standard car mesh protocol.&lt;/li&gt;
1753
1754 &lt;li&gt;Warn when approaching speed cameras and speed camera ranges
1755 (speed calculated between two cameras).&lt;/li&gt;
1756
1757 &lt;li&gt;Suport dashboard/front facing camera to discover speed limits and
1758 run OCR to track registration number of passing cars.&lt;/li&gt;
1759
1760 &lt;/ul&gt;
1761
1762 &lt;p&gt;If you know of any free software car computer system supporting
1763 some or all of these features, please let me know.&lt;/p&gt;
1764 </description>
1765 </item>
1766
1767 <item>
1768 <title>Half the Coverity issues in Gnash fixed in the next release</title>
1769 <link>http://people.skolelinux.org/pere/blog/Half_the_Coverity_issues_in_Gnash_fixed_in_the_next_release.html</link>
1770 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Half_the_Coverity_issues_in_Gnash_fixed_in_the_next_release.html</guid>
1771 <pubDate>Tue, 29 Apr 2014 14:20:00 +0200</pubDate>
1772 <description>&lt;p&gt;I&#39;ve been following &lt;a href=&quot;http://www.getgnash.org/&quot;&gt;the Gnash
1773 project&lt;/a&gt; for quite a while now. It is a free software
1774 implementation of Adobe Flash, both a standalone player and a browser
1775 plugin. Gnash implement support for the AVM1 format (and not the
1776 newer AVM2 format - see
1777 &lt;a href=&quot;http://lightspark.github.io/&quot;&gt;Lightspark&lt;/a&gt; for that one),
1778 allowing several flash based sites to work. Thanks to the friendly
1779 developers at Youtube, it also work with Youtube videos, because the
1780 Javascript code at Youtube detect Gnash and serve a AVM1 player to
1781 those users. :) Would be great if someone found time to implement AVM2
1782 support, but it has not happened yet. If you install both Lightspark
1783 and Gnash, Lightspark will invoke Gnash if it find a AVM1 flash file,
1784 so you can get both handled as free software. Unfortunately,
1785 Lightspark so far only implement a small subset of AVM2, and many
1786 sites do not work yet.&lt;/p&gt;
1787
1788 &lt;p&gt;A few months ago, I started looking at
1789 &lt;a href=&quot;http://scan.coverity.com/&quot;&gt;Coverity&lt;/a&gt;, the static source
1790 checker used to find heaps and heaps of bugs in free software (thanks
1791 to the donation of a scanning service to free software projects by the
1792 company developing this non-free code checker), and Gnash was one of
1793 the projects I decided to check out. Coverity is able to find lock
1794 errors, memory errors, dead code and more. A few days ago they even
1795 extended it to also be able to find the heartbleed bug in OpenSSL.
1796 There are heaps of checks being done on the instrumented code, and the
1797 amount of bogus warnings is quite low compared to the other static
1798 code checkers I have tested over the years.&lt;/p&gt;
1799
1800 &lt;p&gt;Since a few weeks ago, I&#39;ve been working with the other Gnash
1801 developers squashing bugs discovered by Coverity. I was quite happy
1802 today when I checked the current status and saw that of the 777 issues
1803 detected so far, 374 are marked as fixed. This make me confident that
1804 the next Gnash release will be more stable and more dependable than
1805 the previous one. Most of the reported issues were and are in the
1806 test suite, but it also found a few in the rest of the code.&lt;/p&gt;
1807
1808 &lt;p&gt;If you want to help out, you find us on
1809 &lt;a href=&quot;https://lists.gnu.org/mailman/listinfo/gnash-dev&quot;&gt;the
1810 gnash-dev mailing list&lt;/a&gt; and on
1811 &lt;a href=&quot;irc://irc.freenode.net/#gnash&quot;&gt;the #gnash channel on
1812 irc.freenode.net IRC server&lt;/a&gt;.&lt;/p&gt;
1813 </description>
1814 </item>
1815
1816 <item>
1817 <title>Install hardware dependent packages using tasksel (Isenkram 0.7)</title>
1818 <link>http://people.skolelinux.org/pere/blog/Install_hardware_dependent_packages_using_tasksel__Isenkram_0_7_.html</link>
1819 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Install_hardware_dependent_packages_using_tasksel__Isenkram_0_7_.html</guid>
1820 <pubDate>Wed, 23 Apr 2014 14:50:00 +0200</pubDate>
1821 <description>&lt;p&gt;It would be nice if it was easier in Debian to get all the hardware
1822 related packages relevant for the computer installed automatically.
1823 So I implemented one, using
1824 &lt;a href=&quot;http://packages.qa.debian.org/isenkram&quot;&gt;my Isenkram
1825 package&lt;/a&gt;. To use it, install the tasksel and isenkram packages and
1826 run tasksel as user root. You should be presented with a new option,
1827 &quot;Hardware specific packages (autodetected by isenkram)&quot;. When you
1828 select it, tasksel will install the packages isenkram claim is fit for
1829 the current hardware, hot pluggable or not.&lt;p&gt;
1830
1831 &lt;p&gt;The implementation is in two files, one is the tasksel menu entry
1832 description, and the other is the script used to extract the list of
1833 packages to install. The first part is in
1834 &lt;tt&gt;/usr/share/tasksel/descs/isenkram.desc&lt;/tt&gt; and look like
1835 this:&lt;/p&gt;
1836
1837 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
1838 Task: isenkram
1839 Section: hardware
1840 Description: Hardware specific packages (autodetected by isenkram)
1841 Based on the detected hardware various hardware specific packages are
1842 proposed.
1843 Test-new-install: mark show
1844 Relevance: 8
1845 Packages: for-current-hardware
1846 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
1847
1848 &lt;p&gt;The second part is in
1849 &lt;tt&gt;/usr/lib/tasksel/packages/for-current-hardware&lt;/tt&gt; and look like
1850 this:&lt;/p&gt;
1851
1852 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
1853 #!/bin/sh
1854 #
1855 (
1856 isenkram-lookup
1857 isenkram-autoinstall-firmware -l
1858 ) | sort -u
1859 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
1860
1861 &lt;p&gt;All in all, a very short and simple implementation making it
1862 trivial to install the hardware dependent package we all may want to
1863 have installed on our machines. I&#39;ve not been able to find a way to
1864 get tasksel to tell you exactly which packages it plan to install
1865 before doing the installation. So if you are curious or careful,
1866 check the output from the isenkram-* command line tools first.&lt;/p&gt;
1867
1868 &lt;p&gt;The information about which packages are handling which hardware is
1869 fetched either from the isenkram package itself in
1870 /usr/share/isenkram/, from git.debian.org or from the APT package
1871 database (using the Modaliases header). The APT package database
1872 parsing have caused a nasty resource leak in the isenkram daemon (bugs
1873 &lt;a href=&quot;http://bugs.debian.org/719837&quot;&gt;#719837&lt;/a&gt; and
1874 &lt;a href=&quot;http://bugs.debian.org/730704&quot;&gt;#730704&lt;/a&gt;). The cause is in
1875 the python-apt code (bug
1876 &lt;a href=&quot;http://bugs.debian.org/745487&quot;&gt;#745487&lt;/a&gt;), but using a
1877 workaround I was able to get rid of the file descriptor leak and
1878 reduce the memory leak from ~30 MiB per hardware detection down to
1879 around 2 MiB per hardware detection. It should make the desktop
1880 daemon a lot more useful. The fix is in version 0.7 uploaded to
1881 unstable today.&lt;/p&gt;
1882
1883 &lt;p&gt;I believe the current way of mapping hardware to packages in
1884 Isenkram is is a good draft, but in the future I expect isenkram to
1885 use the AppStream data source for this. A proposal for getting proper
1886 AppStream support into Debian is floating around as
1887 &lt;a href=&quot;https://wiki.debian.org/DEP-11&quot;&gt;DEP-11&lt;/a&gt;, and
1888 &lt;a href=&quot;https://wiki.debian.org/SummerOfCode2014/Projects#SummerOfCode2014.2FProjects.2FAppStreamDEP11Implementation.AppStream.2FDEP-11_for_the_Debian_Archive&quot;&gt;GSoC
1889 project&lt;/a&gt; will take place this summer to improve the situation. I
1890 look forward to seeing the result, and welcome patches for isenkram to
1891 start using the information when it is ready.&lt;/p&gt;
1892
1893 &lt;p&gt;If you want your package to map to some specific hardware, either
1894 add a &quot;Xb-Modaliases&quot; header to your control file like I did in
1895 &lt;a href=&quot;http://packages.qa.debian.org/pymissile&quot;&gt;the pymissile
1896 package&lt;/a&gt; or submit a bug report with the details to the isenkram
1897 package. See also
1898 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/tags/isenkram/&quot;&gt;all my
1899 blog posts tagged isenkram&lt;/a&gt; for details on the notation. I expect
1900 the information will be migrated to AppStream eventually, but for the
1901 moment I got no better place to store it.&lt;/p&gt;
1902 </description>
1903 </item>
1904
1905 <item>
1906 <title>FreedomBox milestone - all packages now in Debian Sid</title>
1907 <link>http://people.skolelinux.org/pere/blog/FreedomBox_milestone___all_packages_now_in_Debian_Sid.html</link>
1908 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/FreedomBox_milestone___all_packages_now_in_Debian_Sid.html</guid>
1909 <pubDate>Tue, 15 Apr 2014 22:10:00 +0200</pubDate>
1910 <description>&lt;p&gt;The &lt;a href=&quot;https://wiki.debian.org/FreedomBox&quot;&gt;Freedombox
1911 project&lt;/a&gt; is working on providing the software and hardware to make
1912 it easy for non-technical people to host their data and communication
1913 at home, and being able to communicate with their friends and family
1914 encrypted and away from prying eyes. It is still going strong, and
1915 today a major mile stone was reached.&lt;/p&gt;
1916
1917 &lt;p&gt;Today, the last of the packages currently used by the project to
1918 created the system images were accepted into Debian Unstable. It was
1919 the freedombox-setup package, which is used to configure the images
1920 during build and on the first boot. Now all one need to get going is
1921 the build code from the freedom-maker git repository and packages from
1922 Debian. And once the freedombox-setup package enter testing, we can
1923 build everything directly from Debian. :)&lt;/p&gt;
1924
1925 &lt;p&gt;Some key packages used by Freedombox are
1926 &lt;a href=&quot;http://packages.qa.debian.org/freedombox-setup&quot;&gt;freedombox-setup&lt;/a&gt;,
1927 &lt;a href=&quot;http://packages.qa.debian.org/plinth&quot;&gt;plinth&lt;/a&gt;,
1928 &lt;a href=&quot;http://packages.qa.debian.org/pagekite&quot;&gt;pagekite&lt;/a&gt;,
1929 &lt;a href=&quot;http://packages.qa.debian.org/tor&quot;&gt;tor&lt;/a&gt;,
1930 &lt;a href=&quot;http://packages.qa.debian.org/privoxy&quot;&gt;privoxy&lt;/a&gt;,
1931 &lt;a href=&quot;http://packages.qa.debian.org/owncloud&quot;&gt;owncloud&lt;/a&gt; and
1932 &lt;a href=&quot;http://packages.qa.debian.org/dnsmasq&quot;&gt;dnsmasq&lt;/a&gt;. There
1933 are plans to integrate more packages into the setup. User
1934 documentation is maintained on the Debian wiki. Please
1935 &lt;a href=&quot;https://wiki.debian.org/FreedomBox/Manual/Jessie&quot;&gt;check out
1936 the manual&lt;/a&gt; and help us improve it.&lt;/p&gt;
1937
1938 &lt;p&gt;To test for yourself and create boot images with the FreedomBox
1939 setup, run this on a Debian machine using a user with sudo rights to
1940 become root:&lt;/p&gt;
1941
1942 &lt;p&gt;&lt;pre&gt;
1943 sudo apt-get install git vmdebootstrap mercurial python-docutils \
1944 mktorrent extlinux virtualbox qemu-user-static binfmt-support \
1945 u-boot-tools
1946 git clone http://anonscm.debian.org/git/freedombox/freedom-maker.git \
1947 freedom-maker
1948 make -C freedom-maker dreamplug-image raspberry-image virtualbox-image
1949 &lt;/pre&gt;&lt;/p&gt;
1950
1951 &lt;p&gt;Root access is needed to run debootstrap and mount loopback
1952 devices. See the README in the freedom-maker git repo for more
1953 details on the build. If you do not want all three images, trim the
1954 make line. Note that the virtualbox-image target is not really
1955 virtualbox specific. It create a x86 image usable in kvm, qemu,
1956 vmware and any other x86 virtual machine environment. You might need
1957 the version of vmdebootstrap in Jessie to get the build working, as it
1958 include fixes for a race condition with kpartx.&lt;/p&gt;
1959
1960 &lt;p&gt;If you instead want to install using a Debian CD and the preseed
1961 method, boot a Debian Wheezy ISO and use this boot argument to load
1962 the preseed values:&lt;/p&gt;
1963
1964 &lt;p&gt;&lt;pre&gt;
1965 url=&lt;a href=&quot;http://www.reinholdtsen.name/freedombox/preseed-jessie.dat&quot;&gt;http://www.reinholdtsen.name/freedombox/preseed-jessie.dat&lt;/a&gt;
1966 &lt;/pre&gt;&lt;/p&gt;
1967
1968 &lt;p&gt;I have not tested it myself the last few weeks, so I do not know if
1969 it still work.&lt;/p&gt;
1970
1971 &lt;p&gt;If you wonder how to help, one task you could look at is using
1972 systemd as the boot system. It will become the default for Linux in
1973 Jessie, so we need to make sure it is usable on the Freedombox. I did
1974 a simple test a few weeks ago, and noticed dnsmasq failed to start
1975 during boot when using systemd. I suspect there are other problems
1976 too. :) To detect problems, there is a test suite included, which can
1977 be run from the plinth web interface.&lt;/p&gt;
1978
1979 &lt;p&gt;Give it a go and let us know how it goes on the mailing list, and help
1980 us get the new release published. :) Please join us on
1981 &lt;a href=&quot;irc://irc.debian.org:6667/%23freedombox&quot;&gt;IRC (#freedombox on
1982 irc.debian.org)&lt;/a&gt; and
1983 &lt;a href=&quot;http://lists.alioth.debian.org/mailman/listinfo/freedombox-discuss&quot;&gt;the
1984 mailing list&lt;/a&gt; if you want to help make this vision come true.&lt;/p&gt;
1985 </description>
1986 </item>
1987
1988 <item>
1989 <title>S3QL, a locally mounted cloud file system - nice free software</title>
1990 <link>http://people.skolelinux.org/pere/blog/S3QL__a_locally_mounted_cloud_file_system___nice_free_software.html</link>
1991 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/S3QL__a_locally_mounted_cloud_file_system___nice_free_software.html</guid>
1992 <pubDate>Wed, 9 Apr 2014 11:30:00 +0200</pubDate>
1993 <description>&lt;p&gt;For a while now, I have been looking for a sensible offsite backup
1994 solution for use at home. My requirements are simple, it must be
1995 cheap and locally encrypted (in other words, I keep the encryption
1996 keys, the storage provider do not have access to my private files).
1997 One idea me and my friends had many years ago, before the cloud
1998 storage providers showed up, was to use Google mail as storage,
1999 writing a Linux block device storing blocks as emails in the mail
2000 service provided by Google, and thus get heaps of free space. On top
2001 of this one can add encryption, RAID and volume management to have
2002 lots of (fairly slow, I admit that) cheap and encrypted storage. But
2003 I never found time to implement such system. But the last few weeks I
2004 have looked at a system called
2005 &lt;a href=&quot;https://bitbucket.org/nikratio/s3ql/&quot;&gt;S3QL&lt;/a&gt;, a locally
2006 mounted network backed file system with the features I need.&lt;/p&gt;
2007
2008 &lt;p&gt;S3QL is a fuse file system with a local cache and cloud storage,
2009 handling several different storage providers, any with Amazon S3,
2010 Google Drive or OpenStack API. There are heaps of such storage
2011 providers. S3QL can also use a local directory as storage, which
2012 combined with sshfs allow for file storage on any ssh server. S3QL
2013 include support for encryption, compression, de-duplication, snapshots
2014 and immutable file systems, allowing me to mount the remote storage as
2015 a local mount point, look at and use the files as if they were local,
2016 while the content is stored in the cloud as well. This allow me to
2017 have a backup that should survive fire. The file system can not be
2018 shared between several machines at the same time, as only one can
2019 mount it at the time, but any machine with the encryption key and
2020 access to the storage service can mount it if it is unmounted.&lt;/p&gt;
2021
2022 &lt;p&gt;It is simple to use. I&#39;m using it on Debian Wheezy, where the
2023 package is included already. So to get started, run &lt;tt&gt;apt-get
2024 install s3ql&lt;/tt&gt;. Next, pick a storage provider. I ended up picking
2025 Greenqloud, after reading their nice recipe on
2026 &lt;a href=&quot;https://greenqloud.zendesk.com/entries/44611757-How-To-Use-S3QL-to-mount-a-StorageQloud-bucket-on-Debian-Wheezy&quot;&gt;how
2027 to use S3QL with their Amazon S3 service&lt;/a&gt;, because I trust the laws
2028 in Iceland more than those in USA when it come to keeping my personal
2029 data safe and private, and thus would rather spend money on a company
2030 in Iceland. Another nice recipe is available from the article
2031 &lt;a href=&quot;http://www.admin-magazine.com/HPC/Articles/HPC-Cloud-Storage&quot;&gt;S3QL
2032 Filesystem for HPC Storage&lt;/a&gt; by Jeff Layton in the HPC section of
2033 Admin magazine. When the provider is picked, figure out how to get
2034 the API key needed to connect to the storage API. With Greencloud,
2035 the key did not show up until I had added payment details to my
2036 account.&lt;/p&gt;
2037
2038 &lt;p&gt;Armed with the API access details, it is time to create the file
2039 system. First, create a new bucket in the cloud. This bucket is the
2040 file system storage area. I picked a bucket name reflecting the
2041 machine that was going to store data there, but any name will do.
2042 I&#39;ll refer to it as &lt;tt&gt;bucket-name&lt;/tt&gt; below. In addition, one need
2043 the API login and password, and a locally created password. Store it
2044 all in ~root/.s3ql/authinfo2 like this:
2045
2046 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2047 [s3c]
2048 storage-url: s3c://s.greenqloud.com:443/bucket-name
2049 backend-login: API-login
2050 backend-password: API-password
2051 fs-passphrase: local-password
2052 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2053
2054 &lt;p&gt;I create my local passphrase using &lt;tt&gt;pwget 50&lt;/tt&gt; or similar,
2055 but any sensible way to create a fairly random password should do it.
2056 Armed with these details, it is now time to run mkfs, entering the API
2057 details and password to create it:&lt;/p&gt;
2058
2059 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2060 # mkdir -m 700 /var/lib/s3ql-cache
2061 # mkfs.s3ql --cachedir /var/lib/s3ql-cache --authfile /root/.s3ql/authinfo2 \
2062 --ssl s3c://s.greenqloud.com:443/bucket-name
2063 Enter backend login:
2064 Enter backend password:
2065 Before using S3QL, make sure to read the user&#39;s guide, especially
2066 the &#39;Important Rules to Avoid Loosing Data&#39; section.
2067 Enter encryption password:
2068 Confirm encryption password:
2069 Generating random encryption key...
2070 Creating metadata tables...
2071 Dumping metadata...
2072 ..objects..
2073 ..blocks..
2074 ..inodes..
2075 ..inode_blocks..
2076 ..symlink_targets..
2077 ..names..
2078 ..contents..
2079 ..ext_attributes..
2080 Compressing and uploading metadata...
2081 Wrote 0.00 MB of compressed metadata.
2082 # &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2083
2084 &lt;p&gt;The next step is mounting the file system to make the storage available.
2085
2086 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2087 # mount.s3ql --cachedir /var/lib/s3ql-cache --authfile /root/.s3ql/authinfo2 \
2088 --ssl --allow-root s3c://s.greenqloud.com:443/bucket-name /s3ql
2089 Using 4 upload threads.
2090 Downloading and decompressing metadata...
2091 Reading metadata...
2092 ..objects..
2093 ..blocks..
2094 ..inodes..
2095 ..inode_blocks..
2096 ..symlink_targets..
2097 ..names..
2098 ..contents..
2099 ..ext_attributes..
2100 Mounting filesystem...
2101 # df -h /s3ql
2102 Filesystem Size Used Avail Use% Mounted on
2103 s3c://s.greenqloud.com:443/bucket-name 1.0T 0 1.0T 0% /s3ql
2104 #
2105 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2106
2107 &lt;p&gt;The file system is now ready for use. I use rsync to store my
2108 backups in it, and as the metadata used by rsync is downloaded at
2109 mount time, no network traffic (and storage cost) is triggered by
2110 running rsync. To unmount, one should not use the normal umount
2111 command, as this will not flush the cache to the cloud storage, but
2112 instead running the umount.s3ql command like this:
2113
2114 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2115 # umount.s3ql /s3ql
2116 #
2117 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2118
2119 &lt;p&gt;There is a fsck command available to check the file system and
2120 correct any problems detected. This can be used if the local server
2121 crashes while the file system is mounted, to reset the &quot;already
2122 mounted&quot; flag. This is what it look like when processing a working
2123 file system:&lt;/p&gt;
2124
2125 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2126 # fsck.s3ql --force --ssl s3c://s.greenqloud.com:443/bucket-name
2127 Using cached metadata.
2128 File system seems clean, checking anyway.
2129 Checking DB integrity...
2130 Creating temporary extra indices...
2131 Checking lost+found...
2132 Checking cached objects...
2133 Checking names (refcounts)...
2134 Checking contents (names)...
2135 Checking contents (inodes)...
2136 Checking contents (parent inodes)...
2137 Checking objects (reference counts)...
2138 Checking objects (backend)...
2139 ..processed 5000 objects so far..
2140 ..processed 10000 objects so far..
2141 ..processed 15000 objects so far..
2142 Checking objects (sizes)...
2143 Checking blocks (referenced objects)...
2144 Checking blocks (refcounts)...
2145 Checking inode-block mapping (blocks)...
2146 Checking inode-block mapping (inodes)...
2147 Checking inodes (refcounts)...
2148 Checking inodes (sizes)...
2149 Checking extended attributes (names)...
2150 Checking extended attributes (inodes)...
2151 Checking symlinks (inodes)...
2152 Checking directory reachability...
2153 Checking unix conventions...
2154 Checking referential integrity...
2155 Dropping temporary indices...
2156 Backing up old metadata...
2157 Dumping metadata...
2158 ..objects..
2159 ..blocks..
2160 ..inodes..
2161 ..inode_blocks..
2162 ..symlink_targets..
2163 ..names..
2164 ..contents..
2165 ..ext_attributes..
2166 Compressing and uploading metadata...
2167 Wrote 0.89 MB of compressed metadata.
2168 #
2169 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2170
2171 &lt;p&gt;Thanks to the cache, working on files that fit in the cache is very
2172 quick, about the same speed as local file access. Uploading large
2173 amount of data is to me limited by the bandwidth out of and into my
2174 house. Uploading 685 MiB with a 100 MiB cache gave me 305 kiB/s,
2175 which is very close to my upload speed, and downloading the same
2176 Debian installation ISO gave me 610 kiB/s, close to my download speed.
2177 Both were measured using &lt;tt&gt;dd&lt;/tt&gt;. So for me, the bottleneck is my
2178 network, not the file system code. I do not know what a good cache
2179 size would be, but suspect that the cache should e larger than your
2180 working set.&lt;/p&gt;
2181
2182 &lt;p&gt;I mentioned that only one machine can mount the file system at the
2183 time. If another machine try, it is told that the file system is
2184 busy:&lt;/p&gt;
2185
2186 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2187 # mount.s3ql --cachedir /var/lib/s3ql-cache --authfile /root/.s3ql/authinfo2 \
2188 --ssl --allow-root s3c://s.greenqloud.com:443/bucket-name /s3ql
2189 Using 8 upload threads.
2190 Backend reports that fs is still mounted elsewhere, aborting.
2191 #
2192 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2193
2194 &lt;p&gt;The file content is uploaded when the cache is full, while the
2195 metadata is uploaded once every 24 hour by default. To ensure the
2196 file system content is flushed to the cloud, one can either umount the
2197 file system, or ask S3QL to flush the cache and metadata using
2198 s3qlctrl:
2199
2200 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2201 # s3qlctrl upload-meta /s3ql
2202 # s3qlctrl flushcache /s3ql
2203 #
2204 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2205
2206 &lt;p&gt;If you are curious about how much space your data uses in the
2207 cloud, and how much compression and deduplication cut down on the
2208 storage usage, you can use s3qlstat on the mounted file system to get
2209 a report:&lt;/p&gt;
2210
2211 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2212 # s3qlstat /s3ql
2213 Directory entries: 9141
2214 Inodes: 9143
2215 Data blocks: 8851
2216 Total data size: 22049.38 MB
2217 After de-duplication: 21955.46 MB (99.57% of total)
2218 After compression: 21877.28 MB (99.22% of total, 99.64% of de-duplicated)
2219 Database size: 2.39 MB (uncompressed)
2220 (some values do not take into account not-yet-uploaded dirty blocks in cache)
2221 #
2222 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2223
2224 &lt;p&gt;I mentioned earlier that there are several possible suppliers of
2225 storage. I did not try to locate them all, but am aware of at least
2226 &lt;a href=&quot;https://www.greenqloud.com/&quot;&gt;Greenqloud&lt;/a&gt;,
2227 &lt;a href=&quot;http://drive.google.com/&quot;&gt;Google Drive&lt;/a&gt;,
2228 &lt;a href=&quot;http://aws.amazon.com/s3/&quot;&gt;Amazon S3 web serivces&lt;/a&gt;,
2229 &lt;a href=&quot;http://www.rackspace.com/&quot;&gt;Rackspace&lt;/a&gt; and
2230 &lt;a href=&quot;http://crowncloud.net/&quot;&gt;Crowncloud&lt;/A&gt;. The latter even
2231 accept payment in Bitcoin. Pick one that suit your need. Some of
2232 them provide several GiB of free storage, but the prize models are
2233 quite different and you will have to figure out what suits you
2234 best.&lt;/p&gt;
2235
2236 &lt;p&gt;While researching this blog post, I had a look at research papers
2237 and posters discussing the S3QL file system. There are several, which
2238 told me that the file system is getting a critical check by the
2239 science community and increased my confidence in using it. One nice
2240 poster is titled
2241 &quot;&lt;a href=&quot;http://www.lanl.gov/orgs/adtsc/publications/science_highlights_2013/docs/pg68_69.pdf&quot;&gt;An
2242 Innovative Parallel Cloud Storage System using OpenStack’s SwiftObject
2243 Store and Transformative Parallel I/O Approach&lt;/a&gt;&quot; by Hsing-Bung
2244 Chen, Benjamin McClelland, David Sherrill, Alfred Torrez, Parks Fields
2245 and Pamela Smith. Please have a look.&lt;/p&gt;
2246
2247 &lt;p&gt;Given my problems with different file systems earlier, I decided to
2248 check out the mounted S3QL file system to see if it would be usable as
2249 a home directory (in other word, that it provided POSIX semantics when
2250 it come to locking and umask handling etc). Running
2251 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Testing_if_a_file_system_can_be_used_for_home_directories___.html&quot;&gt;my
2252 test code to check file system semantics&lt;/a&gt;, I was happy to discover that
2253 no error was found. So the file system can be used for home
2254 directories, if one chooses to do so.&lt;/p&gt;
2255
2256 &lt;p&gt;If you do not want a locally file system, and want something that
2257 work without the Linux fuse file system, I would like to mention the
2258 &lt;a href=&quot;http://www.tarsnap.com/&quot;&gt;Tarsnap service&lt;/a&gt;, which also
2259 provide locally encrypted backup using a command line client. It have
2260 a nicer access control system, where one can split out read and write
2261 access, allowing some systems to write to the backup and others to
2262 only read from it.&lt;/p&gt;
2263
2264 &lt;p&gt;As usual, if you use Bitcoin and want to show your support of my
2265 activities, please send Bitcoin donations to my address
2266 &lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&amp;label=PetterReinholdtsenBlog&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
2267 </description>
2268 </item>
2269
2270 <item>
2271 <title>ReactOS Windows clone - nice free software</title>
2272 <link>http://people.skolelinux.org/pere/blog/ReactOS_Windows_clone___nice_free_software.html</link>
2273 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/ReactOS_Windows_clone___nice_free_software.html</guid>
2274 <pubDate>Tue, 1 Apr 2014 12:10:00 +0200</pubDate>
2275 <description>&lt;p&gt;Microsoft have announced that Windows XP reaches its end of life
2276 2014-04-08, in 7 days. But there are heaps of machines still running
2277 Windows XP, and depending on Windows XP to run their applications, and
2278 upgrading will be expensive, both when it comes to money and when it
2279 comes to the amount of effort needed to migrate from Windows XP to a
2280 new operating system. Some obvious options (buy new a Windows
2281 machine, buy a MacOSX machine, install Linux on the existing machine)
2282 are already well known and covered elsewhere. Most of them involve
2283 leaving the user applications installed on Windows XP behind and
2284 trying out replacements or updated versions. In this blog post I want
2285 to mention one strange bird that allow people to keep the hardware and
2286 the existing Windows XP applications and run them on a free software
2287 operating system that is Windows XP compatible.&lt;/p&gt;
2288
2289 &lt;p&gt;&lt;a href=&quot;http://www.reactos.org/&quot;&gt;ReactOS&lt;/a&gt; is a free software
2290 operating system (GNU GPL licensed) working on providing a operating
2291 system that is binary compatible with Windows, able to run windows
2292 programs directly and to use Windows drivers for hardware directly.
2293 The project goal is for Windows user to keep their existing machines,
2294 drivers and software, and gain the advantages from user a operating
2295 system without usage limitations caused by non-free licensing. It is
2296 a Windows clone running directly on the hardware, so quite different
2297 from the approach taken by &lt;a href=&quot;http://www.winehq.org/&quot;&gt;the Wine
2298 project&lt;/a&gt;, which make it possible to run Windows binaries on
2299 Linux.&lt;/p&gt;
2300
2301 &lt;p&gt;The ReactOS project share code with the Wine project, so most
2302 shared libraries available on Windows are already implemented already.
2303 There is also a software manager like the one we are used to on Linux,
2304 allowing the user to install free software applications with a simple
2305 click directly from the Internet. Check out the
2306 &lt;a href=&quot;http://www.reactos.org/screenshots&quot;&gt;screen shots on the
2307 project web site&lt;/a&gt; for an idea what it look like (it looks just like
2308 Windows before metro).&lt;/p&gt;
2309
2310 &lt;p&gt;I do not use ReactOS myself, preferring Linux and Unix like
2311 operating systems. I&#39;ve tested it, and it work fine in a virt-manager
2312 virtual machine. The browser, minesweeper, notepad etc is working
2313 fine as far as I can tell. Unfortunately, my main test application
2314 is the software included on a CD with the Lego Mindstorms NXT, which
2315 seem to install just fine from CD but fail to leave any binaries on
2316 the disk after the installation. So no luck with that test software.
2317 No idea why, but hope someone else figure out and fix the problem.
2318 I&#39;ve tried the ReactOS Live ISO on a physical machine, and it seemed
2319 to work just fine. If you like Windows and want to keep running your
2320 old Windows binaries, check it out by
2321 &lt;a href=&quot;http://www.reactos.org/download&quot;&gt;downloading&lt;/a&gt; the
2322 installation CD, the live CD or the preinstalled virtual machine
2323 image.&lt;/p&gt;
2324 </description>
2325 </item>
2326
2327 <item>
2328 <title>Debian Edu interview: Roger Marsal</title>
2329 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Roger_Marsal.html</link>
2330 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Roger_Marsal.html</guid>
2331 <pubDate>Sun, 30 Mar 2014 11:40:00 +0200</pubDate>
2332 <description>&lt;p&gt;&lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt;
2333 keep gaining new users. Some weeks ago, a person showed up on IRC,
2334 &lt;a href=&quot;irc://irc.debian.org/#debian-edu&quot;&gt;#debian-edu&lt;/a&gt;, with a
2335 wish to contribute, and I managed to get a interview with this great
2336 contributor Roger Marsal to learn more about his background.&lt;/p&gt;
2337
2338 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
2339
2340 &lt;p&gt;My name is Roger Marsal, I&#39;m 27 years old (1986 generation) and I
2341 live in Barcelona, Spain. I&#39;ve got a strong business background and I
2342 work as a patrimony manager and as a real estate agent. Additionally,
2343 I&#39;ve co-founded a British based tech company that is nowadays on the
2344 last development phase of a new social networking concept.&lt;/p&gt;
2345
2346 &lt;p&gt;I&#39;m a Linux enthusiast that started its journey with Ubuntu four years
2347 ago and have recently switched to Debian seeking rock solid stability
2348 and as a necessary step to gain expertise.&lt;/p&gt;
2349
2350 &lt;p&gt;In a nutshell, I spend my days working and learning as much as I
2351 can to face both my job, entrepreneur project and feed my Linux
2352 hunger.&lt;/p&gt;
2353
2354 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux / Debian Edu
2355 project?&lt;/strong&gt;&lt;/p&gt;
2356
2357 &lt;p&gt;I discovered the &lt;a href=&quot;http://www.ltsp.org/&quot;&gt;LTSP&lt;/a&gt; advantages
2358 with &quot;Ubuntu 12.04 alternate install&quot; and after a year of use I
2359 started looking for an alternative. Even though I highly value and
2360 respect the Ubuntu project, I thought it was necessary for me to
2361 change to a more robust and stable alternative. As far as I was using
2362 Debian on my personal laptop I thought it would be fine to install
2363 Debian and configure an LTSP server myself. Surprised, I discovered
2364 that the Debian project also supported a kind of Edubuntu equivalent,
2365 and after having some pain I obtained a Debian Edu network up and
2366 running. I just loved it.&lt;/p&gt;
2367
2368 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux / Debian
2369 Edu?&lt;/strong&gt;&lt;/p&gt;
2370
2371 &lt;p&gt;I found a main advantage in that, once you know &quot;the tips and
2372 tricks&quot;, a new installation just works out of the box. It&#39;s the most
2373 complete alternative I&#39;ve found to create an LTSP network. All the
2374 other distributions seems to be made of plastic, Debian Edu seems to
2375 be made of steel.&lt;/p&gt;
2376
2377 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux / Debian
2378 Edu?&lt;/strong&gt;&lt;/p&gt;
2379
2380 &lt;p&gt;I found two main disadvantages.&lt;/p&gt;
2381
2382 &lt;p&gt;I&#39;m not an expert but I&#39;ve got notions and I had to spent a considerable
2383 amount of time trying to bring up a standard network topology. I&#39;m quite
2384 stubborn and I just worked until I did but I&#39;m sure many people with few
2385 resources (not big schools, but academies for example) would have switched
2386 or dropped.&lt;/p&gt;
2387
2388 &lt;p&gt;It&#39;s amazing how such a complex system like Debian Edu has achieved
2389 this out-of-the-box state. Even though tweaking without breaking gets
2390 more difficult, as more factors have to be considered. This can
2391 discourage many people too.&lt;/p&gt;
2392
2393 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
2394
2395 &lt;p&gt;I use Debian, Firefox, Okular, Inkscape, LibreOffice and
2396 Virtualbox.&lt;/p&gt;
2397
2398
2399 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
2400 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
2401
2402 &lt;p&gt;I don&#39;t think there is a need for a particular strategy. The free
2403 attribute in both &quot;freedom&quot; and &quot;no price&quot; meanings is what will
2404 really bring free software to schools. In my experience I can think of
2405 the &lt;a href=&quot;http://www.r-project.org/&quot;&gt;&quot;R&quot; statistical language&lt;/a&gt;; a
2406 few years a ago was an extremely nerd tool for university people.
2407 Today it&#39;s being increasingly used to teach statistics at many
2408 different level of studies. I believe free and open software will
2409 increasingly gain popularity, but I&#39;m sure schools will be one of the
2410 first scenarios where this will happen.&lt;/p&gt;
2411 </description>
2412 </item>
2413
2414 <item>
2415 <title>Public Trusted Timestamping services for everyone</title>
2416 <link>http://people.skolelinux.org/pere/blog/Public_Trusted_Timestamping_services_for_everyone.html</link>
2417 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Public_Trusted_Timestamping_services_for_everyone.html</guid>
2418 <pubDate>Tue, 25 Mar 2014 12:50:00 +0100</pubDate>
2419 <description>&lt;p&gt;Did you ever need to store logs or other files in a way that would
2420 allow it to be used as evidence in court, and needed a way to
2421 demonstrate without reasonable doubt that the file had not been
2422 changed since it was created? Or, did you ever need to document that
2423 a given document was received at some point in time, like some
2424 archived document or the answer to an exam, and not changed after it
2425 was received? The problem in these settings is to remove the need to
2426 trust yourself and your computers, while still being able to prove
2427 that a file is the same as it was at some given time in the past.&lt;/p&gt;
2428
2429 &lt;p&gt;A solution to these problems is to have a trusted third party
2430 &quot;stamp&quot; the document and verify that at some given time the document
2431 looked a given way. Such
2432 &lt;a href=&quot;https://en.wikipedia.org/wiki/Notarius&quot;&gt;notarius&lt;/a&gt; service
2433 have been around for thousands of years, and its digital equivalent is
2434 called a
2435 &lt;a href=&quot;http://en.wikipedia.org/wiki/Trusted_timestamping&quot;&gt;trusted
2436 timestamping service&lt;/a&gt;. &lt;a href=&quot;http://www.ietf.org/&quot;&gt;The Internet
2437 Engineering Task Force&lt;/a&gt; standardised how such service could work a
2438 few years ago as &lt;a href=&quot;http://tools.ietf.org/html/rfc3161&quot;&gt;RFC
2439 3161&lt;/a&gt;. The mechanism is simple. Create a hash of the file in
2440 question, send it to a trusted third party which add a time stamp to
2441 the hash and sign the result with its private key, and send back the
2442 signed hash + timestamp. Both email, FTP and HTTP can be used to
2443 request such signature, depending on what is provided by the service
2444 used. Anyone with the document and the signature can then verify that
2445 the document matches the signature by creating their own hash and
2446 checking the signature using the trusted third party public key.
2447 There are several commercial services around providing such
2448 timestamping. A quick search for
2449 &quot;&lt;a href=&quot;https://duckduckgo.com/?q=rfc+3161+service&quot;&gt;rfc 3161
2450 service&lt;/a&gt;&quot; pointed me to at least
2451 &lt;a href=&quot;https://www.digistamp.com/technical/how-a-digital-time-stamp-works/&quot;&gt;DigiStamp&lt;/a&gt;,
2452 &lt;a href=&quot;http://www.quovadisglobal.co.uk/CertificateServices/SigningServices/TimeStamp.aspx&quot;&gt;Quo
2453 Vadis&lt;/a&gt;,
2454 &lt;a href=&quot;https://www.globalsign.com/timestamp-service/&quot;&gt;Global Sign&lt;/a&gt;
2455 and &lt;a href=&quot;http://www.globaltrustfinder.com/TSADefault.aspx&quot;&gt;Global
2456 Trust Finder&lt;/a&gt;. The system work as long as the private key of the
2457 trusted third party is not compromised.&lt;/p&gt;
2458
2459 &lt;p&gt;But as far as I can tell, there are very few public trusted
2460 timestamp services available for everyone. I&#39;ve been looking for one
2461 for a while now. But yesterday I found one over at
2462 &lt;a href=&quot;https://www.pki.dfn.de/zeitstempeldienst/&quot;&gt;Deutches
2463 Forschungsnetz&lt;/a&gt; mentioned in
2464 &lt;a href=&quot;http://www.d-mueller.de/blog/dealing-with-trusted-timestamps-in-php-rfc-3161/&quot;&gt;a
2465 blog by David Müller&lt;/a&gt;. I then found
2466 &lt;a href=&quot;http://www.rz.uni-greifswald.de/support/dfn-pki-zertifikate/zeitstempeldienst.html&quot;&gt;a
2467 good recipe on how to use the service&lt;/a&gt; over at the University of
2468 Greifswald.&lt;/p&gt;
2469
2470 &lt;p&gt;&lt;a href=&quot;http://www.openssl.org/&quot;&gt;The OpenSSL library&lt;/a&gt; contain
2471 both server and tools to use and set up your own signing service. See
2472 the ts(1SSL), tsget(1SSL) manual pages for more details. The
2473 following shell script demonstrate how to extract a signed timestamp
2474 for any file on the disk in a Debian environment:&lt;/p&gt;
2475
2476 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2477 #!/bin/sh
2478 set -e
2479 url=&quot;http://zeitstempel.dfn.de&quot;
2480 caurl=&quot;https://pki.pca.dfn.de/global-services-ca/pub/cacert/chain.txt&quot;
2481 reqfile=$(mktemp -t tmp.XXXXXXXXXX.tsq)
2482 resfile=$(mktemp -t tmp.XXXXXXXXXX.tsr)
2483 cafile=chain.txt
2484 if [ ! -f $cafile ] ; then
2485 wget -O $cafile &quot;$caurl&quot;
2486 fi
2487 openssl ts -query -data &quot;$1&quot; -cert | tee &quot;$reqfile&quot; \
2488 | /usr/lib/ssl/misc/tsget -h &quot;$url&quot; -o &quot;$resfile&quot;
2489 openssl ts -reply -in &quot;$resfile&quot; -text 1&gt;&amp;2
2490 openssl ts -verify -data &quot;$1&quot; -in &quot;$resfile&quot; -CAfile &quot;$cafile&quot; 1&gt;&amp;2
2491 base64 &lt; &quot;$resfile&quot;
2492 rm &quot;$reqfile&quot; &quot;$resfile&quot;
2493 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2494
2495 &lt;p&gt;The argument to the script is the file to timestamp, and the output
2496 is a base64 encoded version of the signature to STDOUT and details
2497 about the signature to STDERR. Note that due to
2498 &lt;a href=&quot;http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=742553&quot;&gt;a bug
2499 in the tsget script&lt;/a&gt;, you might need to modify the included script
2500 and remove the last line. Or just write your own HTTP uploader using
2501 curl. :) Now you too can prove and verify that files have not been
2502 changed.&lt;/p&gt;
2503
2504 &lt;p&gt;But the Internet need more public trusted timestamp services.
2505 Perhaps something for &lt;a href=&quot;http://www.uninett.no/&quot;&gt;Uninett&lt;/a&gt; or
2506 my work place the &lt;a href=&quot;http://www.uio.no/&quot;&gt;University of Oslo&lt;/a&gt;
2507 to set up?&lt;/p&gt;
2508 </description>
2509 </item>
2510
2511 <item>
2512 <title>Video DVD reader library / python-dvdvideo - nice free software</title>
2513 <link>http://people.skolelinux.org/pere/blog/Video_DVD_reader_library___python_dvdvideo___nice_free_software.html</link>
2514 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Video_DVD_reader_library___python_dvdvideo___nice_free_software.html</guid>
2515 <pubDate>Fri, 21 Mar 2014 15:25:00 +0100</pubDate>
2516 <description>&lt;p&gt;Keeping your DVD collection safe from scratches and curious
2517 children fingers while still having it available when you want to see a
2518 movie is not straight forward. My preferred method at the moment is
2519 to store a full copy of the ISO on a hard drive, and use VLC, Popcorn
2520 Hour or other useful players to view the resulting file. This way the
2521 subtitles and bonus material are still available and using the ISO is
2522 just like inserting the original DVD record in the DVD player.&lt;/p&gt;
2523
2524 &lt;p&gt;Earlier I used dd for taking security copies, but it do not handle
2525 DVDs giving read errors (which are quite a few of them). I&#39;ve also
2526 tried using
2527 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Ripping_problematic_DVDs_using_dvdbackup_and_genisoimage.html&quot;&gt;dvdbackup
2528 and genisoimage&lt;/a&gt;, but these days I use the marvellous python library
2529 and program
2530 &lt;a href=&quot;http://bblank.thinkmo.de/blog/new-software-python-dvdvideo&quot;&gt;python-dvdvideo&lt;/a&gt;
2531 written by Bastian Blank. It is
2532 &lt;a href=&quot;http://packages.qa.debian.org/p/python-dvdvideo.html&quot;&gt;in Debian
2533 already&lt;/a&gt; and the binary package name is python3-dvdvideo. Instead
2534 of trying to read every block from the DVD, it parses the file
2535 structure and figure out which block on the DVD is actually in used,
2536 and only read those blocks from the DVD. This work surprisingly well,
2537 and I have been able to almost backup my entire DVD collection using
2538 this method.&lt;/p&gt;
2539
2540 &lt;p&gt;So far, python-dvdvideo have failed on between 10 and
2541 20 DVDs, which is a small fraction of my collection. The most common
2542 problem is
2543 &lt;a href=&quot;https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=720831&quot;&gt;DVDs
2544 using UTF-16 instead of UTF-8 characters&lt;/a&gt;, which according to
2545 Bastian is against the DVD specification (and seem to cause some
2546 players to fail too). A rarer problem is what seem to be inconsistent
2547 DVD structures, as the python library
2548 &lt;a href=&quot;https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=723079&quot;&gt;claim
2549 there is a overlap between objects&lt;/a&gt;. An equally rare problem claim
2550 &lt;a href=&quot;https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=741878&quot;&gt;some
2551 value is out of range&lt;/a&gt;. No idea what is going on there. I wish I
2552 knew enough about the DVD format to fix these, to ensure my movie
2553 collection will stay with me in the future.&lt;/p&gt;
2554
2555 &lt;p&gt;So, if you need to keep your DVDs safe, back them up using
2556 python-dvdvideo. :)&lt;/p&gt;
2557 </description>
2558 </item>
2559
2560 <item>
2561 <title>Freedombox on Dreamplug, Raspberry Pi and virtual x86 machine</title>
2562 <link>http://people.skolelinux.org/pere/blog/Freedombox_on_Dreamplug__Raspberry_Pi_and_virtual_x86_machine.html</link>
2563 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Freedombox_on_Dreamplug__Raspberry_Pi_and_virtual_x86_machine.html</guid>
2564 <pubDate>Fri, 14 Mar 2014 11:00:00 +0100</pubDate>
2565 <description>&lt;p&gt;The &lt;a href=&quot;https://wiki.debian.org/FreedomBox&quot;&gt;Freedombox
2566 project&lt;/a&gt; is working on providing the software and hardware for
2567 making it easy for non-technical people to host their data and
2568 communication at home, and being able to communicate with their
2569 friends and family encrypted and away from prying eyes. It has been
2570 going on for a while, and is slowly progressing towards a new test
2571 release (0.2).&lt;/p&gt;
2572
2573 &lt;p&gt;And what day could be better than the Pi day to announce that the
2574 new version will provide &quot;hard drive&quot; / SD card / USB stick images for
2575 Dreamplug, Raspberry Pi and VirtualBox (or any other virtualization
2576 system), and can also be installed using a Debian installer preseed
2577 file. The Debian based Freedombox is now based on Debian Jessie,
2578 where most of the needed packages used are already present. Only one,
2579 the freedombox-setup package, is missing. To try to build your own
2580 boot image to test the current status, fetch the freedom-maker scripts
2581 and build using
2582 &lt;a href=&quot;http://packages.qa.debian.org/vmdebootstrap&quot;&gt;vmdebootstrap&lt;/a&gt;
2583 with a user with sudo access to become root:
2584
2585 &lt;pre&gt;
2586 git clone http://anonscm.debian.org/git/freedombox/freedom-maker.git \
2587 freedom-maker
2588 sudo apt-get install git vmdebootstrap mercurial python-docutils \
2589 mktorrent extlinux virtualbox qemu-user-static binfmt-support \
2590 u-boot-tools
2591 make -C freedom-maker dreamplug-image raspberry-image virtualbox-image
2592 &lt;/pre&gt;
2593
2594 &lt;p&gt;Root access is needed to run debootstrap and mount loopback
2595 devices. See the README for more details on the build. If you do not
2596 want all three images, trim the make line. But note that thanks to &lt;a
2597 href=&quot;https://bugs.debian.org/741407&quot;&gt;a race condition in
2598 vmdebootstrap&lt;/a&gt;, the build might fail without the patch to the
2599 kpartx call.&lt;/p&gt;
2600
2601 &lt;p&gt;If you instead want to install using a Debian CD and the preseed
2602 method, boot a Debian Wheezy ISO and use this boot argument to load
2603 the preseed values:&lt;/p&gt;
2604
2605 &lt;pre&gt;
2606 url=&lt;a href=&quot;http://www.reinholdtsen.name/freedombox/preseed-jessie.dat&quot;&gt;http://www.reinholdtsen.name/freedombox/preseed-jessie.dat&lt;/a&gt;
2607 &lt;/pre&gt;
2608
2609 &lt;p&gt;But note that due to &lt;a href=&quot;https://bugs.debian.org/740673&quot;&gt;a
2610 recently introduced bug in apt in Jessie&lt;/a&gt;, the installer will
2611 currently hang while setting up APT sources. Killing the
2612 &#39;&lt;tt&gt;apt-cdrom ident&lt;/tt&gt;&#39; process when it hang a few times during the
2613 installation will get the installation going. This affect all
2614 installations in Jessie, and I expect it will be fixed soon.&lt;/p&gt;
2615
2616 &lt;p&gt;Give it a go and let us know how it goes on the mailing list, and help
2617 us get the new release published. :) Please join us on
2618 &lt;a href=&quot;irc://irc.debian.org:6667/%23freedombox&quot;&gt;IRC (#freedombox on
2619 irc.debian.org)&lt;/a&gt; and
2620 &lt;a href=&quot;http://lists.alioth.debian.org/mailman/listinfo/freedombox-discuss&quot;&gt;the
2621 mailing list&lt;/a&gt; if you want to help make this vision come true.&lt;/p&gt;
2622 </description>
2623 </item>
2624
2625 <item>
2626 <title>How to add extra storage servers in Debian Edu / Skolelinux</title>
2627 <link>http://people.skolelinux.org/pere/blog/How_to_add_extra_storage_servers_in_Debian_Edu___Skolelinux.html</link>
2628 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/How_to_add_extra_storage_servers_in_Debian_Edu___Skolelinux.html</guid>
2629 <pubDate>Wed, 12 Mar 2014 12:50:00 +0100</pubDate>
2630 <description>&lt;p&gt;On larger sites, it is useful to use a dedicated storage server for
2631 storing user home directories and data. The design for handling this
2632 in &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt;, is
2633 to update the automount rules in LDAP and let the automount daemon on
2634 the clients take care of the rest. I was reminded about the need to
2635 document this better when one of the customers of
2636 &lt;a href=&quot;http://www.slxdrift.no/&quot;&gt;Skolelinux Drift AS&lt;/a&gt;, where I am
2637 on the board of directors, asked about how to do this. The steps to
2638 get this working are the following:&lt;/p&gt;
2639
2640 &lt;p&gt;&lt;ol&gt;
2641
2642 &lt;li&gt;Add new storage server in DNS. I use nas-server.intern as the
2643 example host here.&lt;/li&gt;
2644
2645 &lt;li&gt;Add automoun LDAP information about this server in LDAP, to allow
2646 all clients to automatically mount it on reqeust.&lt;/li&gt;
2647
2648 &lt;li&gt;Add the relevant entries in tjener.intern:/etc/fstab, because
2649 tjener.intern do not use automount to avoid mounting loops.&lt;/li&gt;
2650
2651 &lt;/ol&gt;&lt;/p&gt;
2652
2653 &lt;p&gt;DNS entries are added in GOsa², and not described here. Follow the
2654 &lt;a href=&quot;https://wiki.debian.org/DebianEdu/Documentation/Wheezy/GettingStarted&quot;&gt;instructions
2655 in the manual&lt;/a&gt; (Machine Management with GOsa² in section Getting
2656 started).&lt;/p&gt;
2657
2658 &lt;p&gt;Ensure that the NFS export points on the server are exported to the
2659 relevant subnets or machines:&lt;/p&gt;
2660
2661 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2662 root@tjener:~# showmount -e nas-server
2663 Export list for nas-server:
2664 /storage 10.0.0.0/8
2665 root@tjener:~#
2666 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2667
2668 &lt;p&gt;Here everything on the backbone network is granted access to the
2669 /storage export. With NFSv3 it is slightly better to limit it to
2670 netgroup membership or single IP addresses to have some limits on the
2671 NFS access.&lt;/p&gt;
2672
2673 &lt;p&gt;The next step is to update LDAP. This can not be done using GOsa²,
2674 because it lack a module for automount. Instead, use ldapvi and add
2675 the required LDAP objects using an editor.&lt;/p&gt;
2676
2677 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2678 ldapvi --ldap-conf -ZD &#39;(cn=admin)&#39; -b ou=automount,dc=skole,dc=skolelinux,dc=no
2679 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2680
2681 &lt;p&gt;When the editor show up, add the following LDAP objects at the
2682 bottom of the document. The &quot;/&amp;&quot; part in the last LDAP object is a
2683 wild card matching everything the nas-server exports, removing the
2684 need to list individual mount points in LDAP.&lt;/p&gt;
2685
2686 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2687 add cn=nas-server,ou=auto.skole,ou=automount,dc=skole,dc=skolelinux,dc=no
2688 objectClass: automount
2689 cn: nas-server
2690 automountInformation: -fstype=autofs --timeout=60 ldap:ou=auto.nas-server,ou=automount,dc=skole,dc=skolelinux,dc=no
2691
2692 add ou=auto.nas-server,ou=automount,dc=skole,dc=skolelinux,dc=no
2693 objectClass: top
2694 objectClass: automountMap
2695 ou: auto.nas-server
2696
2697 add cn=/,ou=auto.nas-server,ou=automount,dc=skole,dc=skolelinux,dc=no
2698 objectClass: automount
2699 cn: /
2700 automountInformation: -fstype=nfs,tcp,rsize=32768,wsize=32768,rw,intr,hard,nodev,nosuid,noatime nas-server.intern:/&amp;
2701 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2702
2703 &lt;p&gt;The last step to remember is to mount the relevant mount points in
2704 tjener.intern by adding them to /etc/fstab, creating the mount
2705 directories using mkdir and running &quot;mount -a&quot; to mount them.&lt;/p&gt;
2706
2707 &lt;p&gt;When this is done, your users should be able to access the files on
2708 the storage server directly by just visiting the
2709 /tjener/nas-server/storage/ directory using any application on any
2710 workstation, LTSP client or LTSP server.&lt;/p&gt;
2711 </description>
2712 </item>
2713
2714 <item>
2715 <title>New home and release 1.0 for netgroup and innetgr (aka ng-utils)</title>
2716 <link>http://people.skolelinux.org/pere/blog/New_home_and_release_1_0_for_netgroup_and_innetgr__aka_ng_utils_.html</link>
2717 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/New_home_and_release_1_0_for_netgroup_and_innetgr__aka_ng_utils_.html</guid>
2718 <pubDate>Sat, 22 Feb 2014 21:45:00 +0100</pubDate>
2719 <description>&lt;p&gt;Many years ago, I wrote a GPL licensed version of the netgroup and
2720 innetgr tools, because I needed them in
2721 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Skolelinux&lt;/a&gt;. I called the project
2722 ng-utils, and it has served me well. I placed the project under the
2723 &lt;a href=&quot;http://www.hungry.com/&quot;&gt;Hungry Programmer&lt;/a&gt; umbrella, and it was maintained in our CVS
2724 repository. But many years ago, the CVS repository was dropped (lost,
2725 not migrated to new hardware, not sure), and the project have lacked a
2726 proper home since then.&lt;/p&gt;
2727
2728 &lt;p&gt;Last summer, I had a look at the package and made a new release
2729 fixing a irritating crash bug, but was unable to store the changes in
2730 a proper source control system. I applied for a project on
2731 &lt;a href=&quot;https://alioth.debian.org/&quot;&gt;Alioth&lt;/a&gt;, but did not have time
2732 to follow up on it. Until today. :)&lt;/p&gt;
2733
2734 &lt;p&gt;After many hours of cleaning and migration, the ng-utils project
2735 now have a new home, and a git repository with the highlight of the
2736 history of the project. I published all release tarballs and imported
2737 them into the git repository. As the project is really stable and not
2738 expected to gain new features any time soon, I decided to make a new
2739 release and call it 1.0. Visit the new project home on
2740 &lt;a href=&quot;https://alioth.debian.org/projects/ng-utils/&quot;&gt;https://alioth.debian.org/projects/ng-utils/&lt;/a&gt;
2741 if you want to check it out. The new version is also uploaded into
2742 &lt;a href=&quot;http://packages.qa.debian.org/n/ng-utils.html&quot;&gt;Debian Unstable&lt;/a&gt;.&lt;/p&gt;
2743 </description>
2744 </item>
2745
2746 <item>
2747 <title>Testing sysvinit from experimental in Debian Hurd</title>
2748 <link>http://people.skolelinux.org/pere/blog/Testing_sysvinit_from_experimental_in_Debian_Hurd.html</link>
2749 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Testing_sysvinit_from_experimental_in_Debian_Hurd.html</guid>
2750 <pubDate>Mon, 3 Feb 2014 13:40:00 +0100</pubDate>
2751 <description>&lt;p&gt;A few days ago I decided to try to help the Hurd people to get
2752 their changes into sysvinit, to allow them to use the normal sysvinit
2753 boot system instead of their old one. This follow up on the
2754 &lt;a href=&quot;https://teythoon.cryptobitch.de//categories/gsoc.html&quot;&gt;great
2755 Google Summer of Code work&lt;/a&gt; done last summer by Justus Winter to
2756 get Debian on Hurd working more like Debian on Linux. To get started,
2757 I downloaded a prebuilt hard disk image from
2758 &lt;a href=&quot;http://ftp.debian-ports.org/debian-cd/hurd-i386/current/debian-hurd.img.tar.gz&quot;&gt;http://ftp.debian-ports.org/debian-cd/hurd-i386/current/debian-hurd.img.tar.gz&lt;/a&gt;,
2759 and started it using virt-manager.&lt;/p&gt;
2760
2761 &lt;p&gt;The first think I had to do after logging in (root without any
2762 password) was to get the network operational. I followed
2763 &lt;a href=&quot;https://www.debian.org/ports/hurd/hurd-install&quot;&gt;the
2764 instructions on the Debian GNU/Hurd ports page&lt;/a&gt; and ran these
2765 commands as root to get the machine to accept a IP address from the
2766 kvm internal DHCP server:&lt;/p&gt;
2767
2768 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2769 settrans -fgap /dev/netdde /hurd/netdde
2770 kill $(ps -ef|awk &#39;/[p]finet/ { print $2}&#39;)
2771 kill $(ps -ef|awk &#39;/[d]evnode/ { print $2}&#39;)
2772 dhclient /dev/eth0
2773 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2774
2775 &lt;p&gt;After this, the machine had internet connectivity, and I could
2776 upgrade it and install the sysvinit packages from experimental and
2777 enable it as the default boot system in Hurd.&lt;/p&gt;
2778
2779 &lt;p&gt;But before I did that, I set a password on the root user, as ssh is
2780 running on the machine it for ssh login to work a password need to be
2781 set. Also, note that a bug somewhere in openssh on Hurd block
2782 compression from working. Remember to turn that off on the client
2783 side.&lt;/p&gt;
2784
2785 &lt;p&gt;Run these commands as root to upgrade and test the new sysvinit
2786 stuff:&lt;/p&gt;
2787
2788 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2789 cat &gt; /etc/apt/sources.list.d/experimental.list &amp;lt;&amp;lt;EOF
2790 deb http://http.debian.net/debian/ experimental main
2791 EOF
2792 apt-get update
2793 apt-get dist-upgrade
2794 apt-get install -t experimental initscripts sysv-rc sysvinit \
2795 sysvinit-core sysvinit-utils
2796 update-alternatives --config runsystem
2797 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2798
2799 &lt;p&gt;To reboot after switching boot system, you have to use
2800 &lt;tt&gt;reboot-hurd&lt;/tt&gt; instead of just &lt;tt&gt;reboot&lt;/tt&gt;, as there is not
2801 yet a sysvinit process able to receive the signals from the normal
2802 &#39;reboot&#39; command. After switching to sysvinit as the boot system,
2803 upgrading every package and rebooting, the network come up with DHCP
2804 after boot as it should, and the settrans/pkill hack mentioned at the
2805 start is no longer needed. But for some strange reason, there are no
2806 longer any login prompt in the virtual console, so I logged in using
2807 ssh instead.
2808
2809 &lt;p&gt;Note that there are some race conditions in Hurd making the boot
2810 fail some times. No idea what the cause is, but hope the Hurd porters
2811 figure it out. At least Justus said on IRC (#debian-hurd on
2812 irc.debian.org) that they are aware of the problem. A way to reduce
2813 the impact is to upgrade to the Hurd packages built by Justus by
2814 adding this repository to the machine:&lt;/p&gt;
2815
2816 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2817 cat &gt; /etc/apt/sources.list.d/hurd-ci.list &amp;lt;&amp;lt;EOF
2818 deb http://darnassus.sceen.net/~teythoon/hurd-ci/ sid main
2819 EOF
2820 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2821
2822 &lt;p&gt;At the moment the prebuilt virtual machine get some packages from
2823 http://ftp.debian-ports.org/debian, because some of the packages in
2824 unstable do not yet include the required patches that are lingering in
2825 BTS. This is the completely list of &quot;unofficial&quot; packages installed:&lt;/p&gt;
2826
2827 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
2828 # aptitude search &#39;?narrow(?version(CURRENT),?origin(Debian Ports))&#39;
2829 i emacs - GNU Emacs editor (metapackage)
2830 i gdb - GNU Debugger
2831 i hurd-recommended - Miscellaneous translators
2832 i isc-dhcp-client - ISC DHCP client
2833 i isc-dhcp-common - common files used by all the isc-dhcp* packages
2834 i libc-bin - Embedded GNU C Library: Binaries
2835 i libc-dev-bin - Embedded GNU C Library: Development binaries
2836 i libc0.3 - Embedded GNU C Library: Shared libraries
2837 i A libc0.3-dbg - Embedded GNU C Library: detached debugging symbols
2838 i libc0.3-dev - Embedded GNU C Library: Development Libraries and Hea
2839 i multiarch-support - Transitional package to ensure multiarch compatibilit
2840 i A x11-common - X Window System (X.Org) infrastructure
2841 i xorg - X.Org X Window System
2842 i A xserver-xorg - X.Org X server
2843 i A xserver-xorg-input-all - X.Org X server -- input driver metapackage
2844 #
2845 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
2846
2847 &lt;p&gt;All in all, testing hurd has been an interesting experience. :)
2848 X.org did not work out of the box and I never took the time to follow
2849 the porters instructions to fix it. This time I was interested in the
2850 command line stuff.&lt;p&gt;
2851 </description>
2852 </item>
2853
2854 <item>
2855 <title>A fist full of non-anonymous Bitcoins</title>
2856 <link>http://people.skolelinux.org/pere/blog/A_fist_full_of_non_anonymous_Bitcoins.html</link>
2857 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/A_fist_full_of_non_anonymous_Bitcoins.html</guid>
2858 <pubDate>Wed, 29 Jan 2014 14:10:00 +0100</pubDate>
2859 <description>&lt;p&gt;Bitcoin is a incredible use of peer to peer communication and
2860 encryption, allowing direct and immediate money transfer without any
2861 central control. It is sometimes claimed to be ideal for illegal
2862 activity, which I believe is quite a long way from the truth. At least
2863 I would not conduct illegal money transfers using a system where the
2864 details of every transaction are kept forever. This point is
2865 investigated in
2866 &lt;a href=&quot;https://www.usenix.org/publications/login&quot;&gt;USENIX ;login:&lt;/a&gt;
2867 from December 2013, in the article
2868 &quot;&lt;a href=&quot;https://www.usenix.org/system/files/login/articles/03_meiklejohn-online.pdf&quot;&gt;A
2869 Fistful of Bitcoins - Characterizing Payments Among Men with No
2870 Names&lt;/a&gt;&quot; by Sarah Meiklejohn, Marjori Pomarole,Grant Jordan, Kirill
2871 Levchenko, Damon McCoy, Geoffrey M. Voelker, and Stefan Savage. They
2872 analyse the transaction log in the Bitcoin system, using it to find
2873 addresses belong to individuals and organisations and follow the flow
2874 of money from both Bitcoin theft and trades on Silk Road to where the
2875 money end up. This is how they wrap up their article:&lt;/p&gt;
2876
2877 &lt;p&gt;&lt;blockquote&gt;
2878 &lt;p&gt;&quot;To demonstrate the usefulness of this type of analysis, we turned
2879 our attention to criminal activity. In the Bitcoin economy, criminal
2880 activity can appear in a number of forms, such as dealing drugs on
2881 Silk Road or simply stealing someone else’s bitcoins. We followed the
2882 flow of bitcoins out of Silk Road (in particular, from one notorious
2883 address) and from a number of highly publicized thefts to see whether
2884 we could track the bitcoins to known services. Although some of the
2885 thieves attempted to use sophisticated mixing techniques (or possibly
2886 mix services) to obscure the flow of bitcoins, for the most part
2887 tracking the bitcoins was quite straightforward, and we ultimately saw
2888 large quantities of bitcoins flow to a variety of exchanges directly
2889 from the point of theft (or the withdrawal from Silk Road).&lt;/p&gt;
2890
2891 &lt;p&gt;As acknowledged above, following stolen bitcoins to the point at
2892 which they are deposited into an exchange does not in itself identify
2893 the thief; however, it does enable further de-anonymization in the
2894 case in which certain agencies can determine (through, for example,
2895 subpoena power) the real-world owner of the account into which the
2896 stolen bitcoins were deposited. Because such exchanges seem to serve
2897 as chokepoints into and out of the Bitcoin economy (i.e., there are
2898 few alternative ways to cash out), we conclude that using Bitcoin for
2899 money laundering or other illicit purposes does not (at least at
2900 present) seem to be particularly attractive.&quot;&lt;/p&gt;
2901 &lt;/blockquote&gt;&lt;p&gt;
2902
2903 &lt;p&gt;These researches are not the first to analyse the Bitcoin
2904 transaction log. The 2011 paper
2905 &quot;&lt;a href=&quot;http://arxiv.org/abs/1107.4524&quot;&gt;An Analysis of Anonymity in
2906 the Bitcoin System&lt;/A&gt;&quot; by Fergal Reid and Martin Harrigan is
2907 summarized like this:&lt;/p&gt;
2908
2909 &lt;p&gt;&lt;blockquote&gt;
2910 &quot;Anonymity in Bitcoin, a peer-to-peer electronic currency system, is a
2911 complicated issue. Within the system, users are identified by
2912 public-keys only. An attacker wishing to de-anonymize its users will
2913 attempt to construct the one-to-many mapping between users and
2914 public-keys and associate information external to the system with the
2915 users. Bitcoin tries to prevent this attack by storing the mapping of
2916 a user to his or her public-keys on that user&#39;s node only and by
2917 allowing each user to generate as many public-keys as required. In
2918 this chapter we consider the topological structure of two networks
2919 derived from Bitcoin&#39;s public transaction history. We show that the
2920 two networks have a non-trivial topological structure, provide
2921 complementary views of the Bitcoin system and have implications for
2922 anonymity. We combine these structures with external information and
2923 techniques such as context discovery and flow analysis to investigate
2924 an alleged theft of Bitcoins, which, at the time of the theft, had a
2925 market value of approximately half a million U.S. dollars.&quot;
2926 &lt;/blockquote&gt;&lt;/p&gt;
2927
2928 &lt;p&gt;I hope these references can help kill the urban myth that Bitcoin
2929 is anonymous. It isn&#39;t really a good fit for illegal activites. Use
2930 cash if you need to stay anonymous, at least until regular DNA
2931 sampling of notes and coins become the norm. :)&lt;/p&gt;
2932
2933 &lt;p&gt;As usual, if you use Bitcoin and want to show your support of my
2934 activities, please send Bitcoin donations to my address
2935 &lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&amp;label=PetterReinholdtsenBlog&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
2936 </description>
2937 </item>
2938
2939 <item>
2940 <title>New chrpath release 0.16</title>
2941 <link>http://people.skolelinux.org/pere/blog/New_chrpath_release_0_16.html</link>
2942 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/New_chrpath_release_0_16.html</guid>
2943 <pubDate>Tue, 14 Jan 2014 11:00:00 +0100</pubDate>
2944 <description>&lt;p&gt;&lt;a href=&quot;http://www.coverity.com/&quot;&gt;Coverity&lt;/a&gt; is a nice tool to
2945 find problems in C, C++ and Java code using static source code
2946 analysis. It can detect a lot of different problems, and is very
2947 useful to find memory and locking bugs in the error handling part of
2948 the source. The company behind it provide
2949 &lt;a href=&quot;https://scan.coverity.com/&quot;&gt;check of free software projects as
2950 a community service&lt;/a&gt;, and many hundred free software projects are
2951 already checked. A few days ago I decided to have a closer look at
2952 the Coverity system, and discovered that the
2953 &lt;a href=&quot;http://www.gnu.org/software/gnash/&quot;&gt;gnash&lt;/a&gt; and
2954 &lt;a href=&quot;http://sourceforge.net/projects/ipmitool/&quot;&gt;ipmitool&lt;/a&gt;
2955 projects I am involved with was already registered. But these are
2956 fairly big, and I would also like to have a small and easy project to
2957 check, and decided to &lt;a href=&quot;http://scan.coverity.com/projects/1179&quot;&gt;request
2958 checking of the chrpath project&lt;/a&gt;. It was
2959 added to the checker and discovered seven potential defects. Six of
2960 these were real, mostly resource &quot;leak&quot; when the program detected an
2961 error. Nothing serious, as the resources would be released a fraction
2962 of a second later when the program exited because of the error, but it
2963 is nice to do it right in case the source of the program some time in
2964 the future end up in a library. Having fixed all defects and added
2965 &lt;a href=&quot;https://lists.alioth.debian.org/mailman/listinfo/chrpath-devel&quot;&gt;a
2966 mailing list for the chrpath developers&lt;/a&gt;, I decided it was time to
2967 publish a new release. These are the release notes:&lt;/p&gt;
2968
2969 &lt;p&gt;New in 0.16 released 2014-01-14:&lt;/p&gt;
2970
2971 &lt;ul&gt;
2972
2973 &lt;li&gt;Fixed all minor bugs discovered by Coverity.&lt;/li&gt;
2974 &lt;li&gt;Updated config.sub and config.guess from the GNU project.&lt;/li&gt;
2975 &lt;li&gt;Mention new project mailing list in the documentation.&lt;/li&gt;
2976
2977 &lt;/ul&gt;
2978
2979 &lt;p&gt;You can
2980 &lt;a href=&quot;https://alioth.debian.org/frs/?group_id=31052&quot;&gt;download the
2981 new version 0.16 from alioth&lt;/a&gt;. Please let us know via the Alioth
2982 project if something is wrong with the new release. The test suite
2983 did not discover any old errors, so if you find a new one, please also
2984 include a test suite check.&lt;/p&gt;
2985 </description>
2986 </item>
2987
2988 <item>
2989 <title>Debian Edu interview: Dominik George</title>
2990 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Dominik_George.html</link>
2991 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Dominik_George.html</guid>
2992 <pubDate>Wed, 25 Dec 2013 13:40:00 +0100</pubDate>
2993 <description>&lt;p&gt;The &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux
2994 project&lt;/a&gt; consist of both newcomers and old timers, and this time I
2995 was able to get an interview with a newcomer in the project who showed
2996 up on the IRC channel a few weeks ago to let us know about his
2997 successful installation of Debian Edu Wheezy in his School. Say hello
2998 to &lt;a href=&quot;https://www.ohloh.net/accounts/Natureshadow&quot;&gt;Dominik
2999 George&lt;/a&gt;.&lt;/p&gt;
3000
3001 &lt;!-- http://www.dominik-george.de/images/foto.jpg --&gt;
3002
3003 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
3004
3005 &lt;p&gt;I am a 23 year-old student from Germany who has spent half of his
3006 life with open source. In &quot;real life&quot;, I am, as already mentioned, a
3007 student in the fields of Computer Science, Electrical Engineering,
3008 Information Technologies and Anglistics. Due to my (only partially
3009 voluntary) huge engagement in the open source world, these things are
3010 a bit vacant right now however.&lt;/p&gt;
3011
3012 &lt;p&gt;I also have been working as a project teacher at a Gymasnium
3013 (public school) for various years now. I took up that work some time
3014 around 2005 when still attending that school myself and have continued
3015 it until today. I also had been running the (kind of very advanced)
3016 network of that school together with a team of very interested and
3017 talented students in the age of 11 to 15 years, who took the chance to
3018 learn a lot about open source and networking before I left the school
3019 to help building another school&#39;s informational education concept from
3020 scratch.&lt;/p&gt;
3021
3022 &lt;p&gt;That said, one might see me as a kind of &quot;glue&quot; between school kids
3023 and the elderly of teachers as well as between the open source
3024 ecosystem and the (even more complex) educational ecosystem.&lt;/p&gt;
3025
3026 &lt;p&gt;When I am not busy with open source or education, I like Geocaching
3027 and cycling.&lt;/p&gt;
3028
3029 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux / Debian Edu
3030 project?&lt;/strong&gt;&lt;/p&gt;
3031
3032 &lt;p&gt;I think that happened some time around 2009 when I first attended
3033 &lt;a href=&quot;http://www.froscon.org&quot;&gt;FrOSCon&lt;/a&gt; and visited the project
3034 booth. I think I wasn&#39;t too interested back then because I used to
3035 have an attitude of disliking software that does too much stuff on its
3036 own. Maybe I was too inexperienced to realise the upsides of an
3037 &quot;out-of-the-box&quot; solution ;).&lt;/p&gt;
3038
3039 &lt;p&gt;The first time I actively talked to Skolelinux people was at
3040 &lt;a href=&quot;http://www.openrheinruhr.de&quot;&gt;OpenRheinRuhr&lt;/a&gt; 2011 when the
3041 BiscuIT project, a home-grewn software used by my school for various
3042 really cool things from timetables and class contact lists to lunch
3043 ordering, student ID card printing and project elections first got to
3044 a stage where it could have been published. I asked the Skolelinux
3045 guys running the booth if the project were interested in it and gave a
3046 small demonstration, but there wasn&#39;t any real feedback and the guys
3047 seemed rather uninterested.&lt;/p&gt;
3048
3049 &lt;p&gt;After I left the school where I developed the software, it got
3050 mostly lost, but I am now reimplementing it for my new school. I have
3051 reusability and compatibility in mind, and I hop there will be a new
3052 basis for contributing it to the Skolelinux project ;)!&lt;/p&gt;
3053
3054 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux / Debian
3055 Edu?&lt;/strong&gt;&lt;/p&gt;
3056
3057 &lt;p&gt;The most important advantage seems to be that it &quot;just
3058 works&quot;. After overcoming some minor (but still very annoying) glitches
3059 in the installer, I got a fully functional, working school network,
3060 without the month-long hassle I experienced when setting all that up
3061 from scratch in earlier years. And above that, it rocked - I didn&#39;t
3062 have any real hardware at hand, because the school was just founded
3063 and has no money whatsoever, so I installed a combined server (main
3064 server, terminal services and workstation) in a VM on my personal
3065 notebook, bridging the LTSP network interface to the ethernet port,
3066 and then PXE-booted the Windows notebooks that were lying around from
3067 it. I could use 8 clients without any performance issues, by using a
3068 tiny little VM on a tiny little notebook. I think that&#39;s enough to say
3069 that it rocks!&lt;/p&gt;
3070
3071 &lt;p&gt;Secondly, there are marketing reasons. Life&#39;s bad, and so no
3072 politician will ever permit a setup described as &quot;Debian, an universal
3073 operating system, with some really cool educational tools&quot; while they
3074 will be jsut fine with &quot;Skolelinux, a single-purpose solution for your
3075 school network&quot;, even if both turn out to be the very same thing (yes,
3076 this is unfair towards the Skolelinux project, and must not be taken
3077 too seriously - you get the idea, anyway).&lt;/p&gt;
3078
3079 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux / Debian
3080 Edu?&lt;/strong&gt;&lt;/p&gt;
3081
3082 &lt;p&gt;I have not been involved with Skolelinux long enough to really
3083 answer this question in a fair way. Thus, please allow me to put it in
3084 other words: &quot;What do you expect from Skolelinux to keep liking it?&quot; I
3085 can list a few points about that:&lt;/p&gt;
3086
3087 &lt;ul&gt;
3088
3089 &lt;li&gt;always strive to get all things integrated into Debian upstream
3090 &lt;li&gt;be open to discussion about changes and the like, even with newcomers
3091 &lt;li&gt;be helpful at being helpful ;)
3092
3093 &lt;/ul&gt;
3094
3095 &lt;p&gt;I&#39;m really sorry I cannot say much more about that :(!&lt;/p&gt;
3096
3097 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
3098
3099 &lt;p&gt;First of all, all software I use is free and open. I have abandoned
3100 all non-free software (except for firmware on my darned phone) this
3101 year.&lt;/p&gt;
3102
3103 &lt;p&gt;I run Debian GNU/Linux on all PC systems I use. On that, I mostly
3104 run text tools. I use
3105 &lt;a href=&quot;https://www.mirbsd.org/mksh.htm&quot;&gt;mksh&lt;/a&gt; as shell,
3106 &lt;a href=&quot;https://www.mirbsd.org/jupp.htm&quot;&gt;jupp&lt;/a&gt; as very advanced
3107 text editor (I even got the developer to help me write a script/macro
3108 based full-featured student management software with the two),
3109 &lt;a href=&quot;http://mcabber.com/&quot;&gt;mcabber&lt;/a&gt; for XMPP and
3110 &lt;a href=&quot;http://www.irssi.org/&quot;&gt;irssi&lt;/a&gt; for IRC. For that overly
3111 coloured world called the WWW, I use
3112 &lt;a href=&quot;https://www.mozilla.org/en-US/firefox/new/&quot;&gt;Iceweasel
3113 (Firefox)&lt;/a&gt;. Oh, and &lt;a href=&quot;http://www.mutt.org/&quot;&gt;mutt&lt;/a&gt; for
3114 e-mail.&lt;/p&gt;
3115
3116 &lt;p&gt;However, while I am personally aware of the fact that text tools
3117 are more efficient and powerful than anything else, I also use (or at
3118 least operate) some tools that are suitable to bring open source to
3119 kids. One of these things is &lt;a href=&quot;http://jappix.org/&quot;&gt;Jappix&lt;/a&gt;,
3120 which I already introduced to some kids even before they got aware of
3121 Facebook, making them see for themselves that they do not need
3122 Facebook now ;).&lt;/p&gt;
3123
3124 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
3125 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
3126
3127 &lt;p&gt;Well, that&#39;s a two-sided thing. One side is what I believe, and one
3128 side is what I have experienced.&lt;/p&gt;
3129
3130 &lt;p&gt;I believe that the right strategy is showing them the benefits. But
3131 that won&#39;t work out as long as the acceptance of free alternatives
3132 grows globally. What I mean is that if all the kids are almost forced
3133 to use Windows, Facebook, Skype, you name it at home, they will not
3134 see why they would want to use alternatives at school. I have seen
3135 students take seat in front of a fully-functional, modern Debian
3136 desktop that could do anything their Windows at home could do, and
3137 they jsut refused to use it because &quot;Linux sucks&quot;. It is something
3138 that makes the council of our city spend around 600000 € to buy
3139 software - not including hardware, mind you - for operating school
3140 networks, and for installing a system that, as has been proved, does
3141 not work. For those of you readers who are good at maths, have you
3142 already found out how many lives could have been saved with that money
3143 if we had instead used it to bring education to parts of the world
3144 that need it? I have, and found it to be nothing less dramatic than
3145 plain criminal.&lt;/p&gt;
3146
3147 &lt;p&gt;That said, the only feasible way appears to be the bottom up
3148 method. We have to bring free software to kids and parents. I have
3149 founded an association named
3150 &lt;a href=&quot;https://www.teckids.org&quot;&gt;Teckids&lt;/a&gt; here in Germany that does
3151 just that. We organise several events for kids and adolescents in the
3152 area of free and open source software, for example the
3153 &lt;a href=&quot;http://kids.froscon.org&quot;&gt;FrogLabs&lt;/a&gt;, which share staff with
3154 Teckids and are the youth programme of
3155 &lt;a href=&quot;http://www.froscon.org&quot;&gt;the Free and Open Source Software
3156 Conference (FrOSCon)&lt;/a&gt;. We do a lot more than most other conferences
3157 - this year, we first offered the FrogLabs as a holiday camp for kids
3158 aged 10 to 16. It was a huge success, with approx. 30 kids taking part
3159 and learning with and about free software through a whole weekend. All
3160 of us had a lot of fun, and the results were really exciting.&lt;/p&gt;
3161
3162 &lt;p&gt;Apart from that, we are preparing a campaign that is supposed to bring
3163 the message of free alternatives to stuff kids use every day to them and
3164 their parents, e.g. the use of Jabber / Jappix instead of Facebook and
3165 Skype. To make that possible, we are planning to get together a team of
3166 clever kids who understand very well what their peers need and can bring
3167 it across to them. So we will have a peer-driven network of adolescents
3168 who teach each other and collect feedback from the community of minors.
3169 We then take that feedback and our own experience to work closely with
3170 open source projects, such as Skolelinux or Jappix, at improving their
3171 software in a way that makes it more and more attractive for the target
3172 group. At least I hope that we will have good cooperation with
3173 Skolelinux in the future ;)!&lt;/p&gt;
3174
3175 &lt;p&gt;So in conclusion, what I believe is that, if it weren&#39;t for the world
3176 being so bad, it should be very clear to the political decision makers
3177 that the only way to go nowadays is free software for various reasons,
3178 but I have learnt that the only way that seems to work is bottom up.&lt;/p&gt;
3179
3180 &lt;!--
3181
3182 &gt; * Who should be interviewed with this questions in the future?
3183
3184 That&#39;s probably the hardest question of them all, as I do not know the
3185 community. However, I would be willing to do the following:
3186
3187 &lt;li&gt;Run an interview with a German headteacher who is very open to
3188 free software, and also prefers it, but cannot really use it because
3189 of the decision makers above;
3190 &lt;li&gt;Run interviews with some kids, both with and without previous
3191 knowledge about free software
3192
3193 If that is wanted, just let me know ;).
3194
3195 --&gt;
3196 </description>
3197 </item>
3198
3199 <item>
3200 <title>Debian Edu interview: Klaus Knopper</title>
3201 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Klaus_Knopper.html</link>
3202 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Klaus_Knopper.html</guid>
3203 <pubDate>Fri, 6 Dec 2013 09:50:00 +0100</pubDate>
3204 <description>&lt;p&gt;It has been a while since I managed to publish the last interview,
3205 but the &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu /
3206 Skolelinux&lt;/a&gt; community is still going strong, and yesterday we even
3207 had a new school administrator show up on
3208 &lt;a href=&quot;irc://irc.debian.org/#debian-edu&quot;&gt;#debian-edu&lt;/a&gt; to share
3209 his success story with installing Debian Edu at their school. This
3210 time I have been able to get some helpful comments from the creator of
3211 Knoppix, Klaus Knopper, who was involved in a Skolelinux project in
3212 Germany a few years ago.&lt;/p&gt;
3213
3214 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
3215
3216 &lt;p&gt;I am Klaus Knopper. I have a master degree in electrical
3217 engineering, and is currently professor in information management at
3218 the university of applied sciences Kaiserslautern / Germany and
3219 freelance Open Source software developer and consultant.&lt;/p&gt;
3220
3221 &lt;p&gt;All of this is pretty much of the work I spend my days with. Apart
3222 from teaching, I&#39;m also conducting some more or less experimental
3223 projects like the &lt;a href=&quot;http://www.knoppix.org&quot;&gt;Knoppix GNU/Linux live
3224 system&lt;/a&gt; (Debian-based like Skolelinux),
3225 &lt;a href=&quot;http://www.knopper.net/knoppix-adriane/index-en.html&quot;&gt;ADRIANE&lt;/a&gt;
3226 (a blind-friendly talking desktop system) and
3227 &lt;a href=&quot;http://www.knopper.net/linbo/index-en.html&quot;&gt;LINBO&lt;/a&gt;
3228 (Linux-based network boot console, a fast remote install and repair
3229 system supporting various operating systems).&lt;/p&gt;
3230
3231 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux / Debian Edu
3232 project?&lt;/strong&gt;&lt;/p&gt;
3233
3234 &lt;p&gt;The credit for this have to go to Kurt Gramlich, who is the German
3235 coordinator for Skolelinux. We were looking for an all-in-one open
3236 source community-supported distribution for schools, and Kurt
3237 introduced us to Skolelinux for this purpose.&lt;/p&gt;
3238
3239 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux / Debian
3240 Edu?&lt;/strong&gt;&lt;/p&gt;
3241
3242 &lt;ul&gt;
3243 &lt;li&gt;Quick installation,&lt;/li&gt;
3244 &lt;li&gt;works (almost) out of the box,&lt;/li&gt;
3245 &lt;li&gt;contains many useful software packages for teaching and learning,&lt;/li&gt;
3246 &lt;li&gt;is a purely community-based distro and not controlled by a
3247 single company,&lt;/li&gt;
3248 &lt;li&gt;has a large number of supporters and teachers who share their
3249 experience and problem solutions.&lt;/li&gt;
3250 &lt;/ul&gt;
3251
3252 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux / Debian
3253 Edu?&lt;/strong&gt;&lt;/p&gt;
3254
3255 &lt;ul&gt;
3256 &lt;li&gt;Skolelinux is - as we had to learn - not easily upgradable to
3257 the next version. Opposed to its genuine Debian base, upgrading to
3258 a new version means a full new installation from scratch to get it
3259 working again reliably.
3260
3261 &lt;li&gt;Skolelinux is based on Debian/stable, and therefore always a
3262 little outdated in terms of program versions compared to Edubuntu or
3263 similar educational Linux distros, which rather use Debian/testing
3264 as their base.
3265
3266 &lt;li&gt;Skolelinux has some very self-opinionated and stubborn default
3267 configuration which in my opinion adds unnecessary complexity and is
3268 not always suitable for a schools needs, the preset network
3269 configuration is actually a core definition feature of Skolelinux
3270 and not easy to change, so schools sometimes have to change their
3271 network configuration to make it &quot;Skolelinux-compatible&quot;.
3272
3273 &lt;li&gt;Some proposed extensions, which were made available as
3274 contribution, like secure examination mode and lecture material
3275 distribution and collection, were not accepted into the mainline
3276 Skolelinux development and are now not easy to maintain in the
3277 future because of Skolelinux somewhat undeterministic update
3278 schemes.&lt;/li&gt;
3279
3280 &lt;li&gt;Skolelinux has only a very tiny number of base developers
3281 compared to Debian.&lt;/li&gt;
3282
3283 &lt;/ul&gt;
3284
3285 &lt;p&gt;For these reasons and experience from our project, I would now
3286 rather consider using plain Debian for schools next time, until
3287 Skolelinux is more closely integrated into Debian and becomes
3288 upgradeable without reinstallation.&lt;/p&gt;
3289
3290 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
3291
3292 &lt;p&gt;GNU/Linux with LXDE desktop, bash for interactive dialog and
3293 programming, texlive for documentation and correspondence,
3294 occasionally LibreOffice for document format conversion. Various
3295 programming languages for teaching.&lt;/p&gt;
3296
3297 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
3298 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
3299
3300 &lt;p&gt;Strong arguments are&lt;/p&gt;
3301
3302 &lt;ul&gt;
3303
3304 &lt;li&gt;Knowledge is free, and so should be methods and tools for
3305 teaching and learning.&lt;/li&gt;
3306
3307 &lt;li&gt;Students can learn with and use the same software at school, at
3308 home, and at their working place without running into license or
3309 conversion problems.&lt;/li&gt;
3310
3311 &lt;li&gt;Closed source or proprietary software hides knowledge rather
3312 than exposing it, and proprietary software vendors try to bind
3313 customers to certain products. But teachers need to teach
3314 science, not products.&lt;/li&gt;
3315
3316 &lt;li&gt;If you have everything you for daily work as open source, what
3317 would you need proprietary software for?&lt;/li&gt;
3318
3319 &lt;/ul&gt;
3320 </description>
3321 </item>
3322
3323 <item>
3324 <title>Dugnadsnett for alle, a wireless community network in Oslo, take shape</title>
3325 <link>http://people.skolelinux.org/pere/blog/Dugnadsnett_for_alle__a_wireless_community_network_in_Oslo__take_shape.html</link>
3326 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Dugnadsnett_for_alle__a_wireless_community_network_in_Oslo__take_shape.html</guid>
3327 <pubDate>Sat, 30 Nov 2013 10:10:00 +0100</pubDate>
3328 <description>&lt;p&gt;If you want the ability to electronically communicate directly with
3329 your neighbors and friends using a network controlled by your peers in
3330 stead of centrally controlled by a few corporations, or would like to
3331 experiment with interesting network technology, the
3332 &lt;a href=&quot;http://www.dugnadsnett.no/&quot;&gt;Dugnasnett for alle i Oslo&lt;/a&gt;
3333 might be project for you. 39 mesh nodes are currently being planned,
3334 in the freshly started initiative from NUUG and Hackeriet to create a
3335 wireless community network. The work is inspired by
3336 &lt;a href=&quot;http://freifunk.net/&quot;&gt;Freifunk&lt;/a&gt;,
3337 &lt;a href=&quot;http://www.awmn.net/&quot;&gt;Athens Wireless Metropolitan
3338 Network&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/Roofnet&quot;&gt;Roofnet&lt;/a&gt;
3339 and other successful mesh networks around the globe. Two days ago we
3340 held a workshop to try to get people started on setting up their own
3341 mesh node, and there we decided to create a new mailing list
3342 &lt;a href=&quot;http://lists.nuug.no/mailman/listinfo/dugnadsnett&quot;&gt;dugnadsnett
3343 (at) nuug.no&lt;/a&gt; and IRC channel
3344 &lt;a href=&quot;irc://irc.freenode.net/#dugnadsnett.no&quot;&gt;#dugnadsnett.no&lt;/a&gt; to
3345 coordinate the work. See also the NUUG blog post
3346 &lt;a href=&quot;http://www.nuug.no/news/E_postliste_og_IRC_kanal_for_Dugnadsnett_for_alle_i_Oslo.shtml&quot;&gt;announcing
3347 the mailing list and IRC channel&lt;/a&gt;.&lt;/p&gt;
3348 </description>
3349 </item>
3350
3351 <item>
3352 <title>New chrpath release 0.15</title>
3353 <link>http://people.skolelinux.org/pere/blog/New_chrpath_release_0_15.html</link>
3354 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/New_chrpath_release_0_15.html</guid>
3355 <pubDate>Sun, 24 Nov 2013 09:30:00 +0100</pubDate>
3356 <description>&lt;p&gt;After many years break from the package and a vain hope that
3357 development would be continued by someone else, I finally pulled my
3358 acts together this morning and wrapped up a new release of chrpath,
3359 the command line tool to modify the rpath and runpath of already
3360 compiled ELF programs. The update was triggered by the persistence of
3361 Isha Vishnoi at IBM, which needed a new config.guess file to get
3362 support for the ppc64le architecture (powerpc 64-bit Little Endian) he
3363 is working on. I checked the
3364 &lt;a href=&quot;http://packages.qa.debian.org/chrpath&quot;&gt;Debian&lt;/a&gt;,
3365 &lt;a href=&quot;https://launchpad.net/ubuntu/+source/chrpath&quot;&gt;Ubuntu&lt;/a&gt; and
3366 &lt;a href=&quot;https://admin.fedoraproject.org/pkgdb/acls/name/chrpath&quot;&gt;Fedora&lt;/a&gt;
3367 packages for interesting patches (failed to find the source from
3368 OpenSUSE and Mandriva packages), and found quite a few nice fixes.
3369 These are the release notes:&lt;/p&gt;
3370
3371 &lt;p&gt;New in 0.15 released 2013-11-24:&lt;/p&gt;
3372
3373 &lt;ul&gt;
3374
3375 &lt;li&gt;Updated config.sub and config.guess from the GNU project to work
3376 with newer architectures. Thanks to isha vishnoi for the heads
3377 up.&lt;/li&gt;
3378
3379 &lt;li&gt;Updated README with current URLs.&lt;/li&gt;
3380
3381 &lt;li&gt;Added byteswap fix found in Ubuntu, credited Jeremy Kerr and
3382 Matthias Klose.&lt;/li&gt;
3383
3384 &lt;li&gt;Added missing help for -k|--keepgoing option, using patch by
3385 Petr Machata found in Fedora.&lt;/li&gt;
3386
3387 &lt;li&gt;Rewrite removal of RPATH/RUNPATH to make sure the entry in
3388 .dynamic is a NULL terminated string. Based on patch found in
3389 Fedora credited Axel Thimm and Christian Krause.&lt;/li&gt;
3390
3391 &lt;/ul&gt;
3392
3393 &lt;p&gt;You can
3394 &lt;a href=&quot;https://alioth.debian.org/frs/?group_id=31052&quot;&gt;download the
3395 new version 0.15 from alioth&lt;/a&gt;. Please let us know via the Alioth
3396 project if something is wrong with the new release. The test suite
3397 did not discover any old errors, so if you find a new one, please also
3398 include a testsuite check.&lt;/p&gt;
3399 </description>
3400 </item>
3401
3402 <item>
3403 <title>All drones should be radio marked with what they do and who they belong to</title>
3404 <link>http://people.skolelinux.org/pere/blog/All_drones_should_be_radio_marked_with_what_they_do_and_who_they_belong_to.html</link>
3405 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/All_drones_should_be_radio_marked_with_what_they_do_and_who_they_belong_to.html</guid>
3406 <pubDate>Thu, 21 Nov 2013 15:40:00 +0100</pubDate>
3407 <description>&lt;p&gt;Drones, flying robots, are getting more and more popular. The most
3408 know ones are the killer drones used by some government to murder
3409 people they do not like without giving them the chance of a fair
3410 trial, but the technology have many good uses too, from mapping and
3411 forest maintenance to photography and search and rescue. I am sure it
3412 is just a question of time before &quot;bad drones&quot; are in the hands of
3413 private enterprises and not only state criminals but petty criminals
3414 too. The drone technology is very useful and very dangerous. To have
3415 some control over the use of drones, I agree with Daniel Suarez in his
3416 TED talk
3417 &quot;&lt;a href=&quot;https://archive.org/details/DanielSuarez_2013G&quot;&gt;The kill
3418 decision shouldn&#39;t belong to a robot&lt;/a&gt;&quot;, where he suggested this
3419 little gem to keep the good while limiting the bad use of drones:&lt;/p&gt;
3420
3421 &lt;blockquote&gt;
3422
3423 &lt;p&gt;Each robot and drone should have a cryptographically signed
3424 I.D. burned in at the factory that can be used to track its movement
3425 through public spaces. We have license plates on cars, tail numbers on
3426 aircraft. This is no different. And every citizen should be able to
3427 download an app that shows the population of drones and autonomous
3428 vehicles moving through public spaces around them, both right now and
3429 historically. And civic leaders should deploy sensors and civic drones
3430 to detect rogue drones, and instead of sending killer drones of their
3431 own up to shoot them down, they should notify humans to their
3432 presence. And in certain very high-security areas, perhaps civic
3433 drones would snare them and drag them off to a bomb disposal facility.&lt;/p&gt;
3434
3435 &lt;p&gt;But notice, this is more an immune system than a weapons system. It
3436 would allow us to avail ourselves of the use of autonomous vehicles
3437 and drones while still preserving our open, civil society.&lt;/p&gt;
3438
3439 &lt;/blockquote&gt;
3440
3441 &lt;p&gt;The key is that &lt;em&gt;every citizen&lt;/em&gt; should be able to read the
3442 radio beacons sent from the drones in the area, to be able to check
3443 both the government and others use of drones. For such control to be
3444 effective, everyone must be able to do it. What should such beacon
3445 contain? At least formal owner, purpose, contact information and GPS
3446 location. Probably also the origin and target position of the current
3447 flight. And perhaps some registration number to be able to look up
3448 the drone in a central database tracking their movement. Robots
3449 should not have privacy. It is people who need privacy.&lt;/p&gt;
3450 </description>
3451 </item>
3452
3453 <item>
3454 <title>Lets make a wireless community network in Oslo!</title>
3455 <link>http://people.skolelinux.org/pere/blog/Lets_make_a_wireless_community_network_in_Oslo_.html</link>
3456 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Lets_make_a_wireless_community_network_in_Oslo_.html</guid>
3457 <pubDate>Wed, 13 Nov 2013 21:00:00 +0100</pubDate>
3458 <description>&lt;p&gt;Today NUUG and Hackeriet announced
3459 &lt;a href=&quot;http://www.nuug.no/news/Bli_med___bygge_dugnadsnett_for_alle_i_Oslo.shtml&quot;&gt;our
3460 plans to join forces and create a wireless community network in
3461 Oslo&lt;/a&gt;. The workshop to help people get started will take place
3462 Thursday 2013-11-28, but we already are collecting the geolocation of
3463 people joining forces to make this happen. We have
3464 &lt;a href=&quot;https://github.com/petterreinholdtsen/meshfx-node/blob/master/oslo-nodes.geojson&quot;&gt;9
3465 locations plotted on the map&lt;/a&gt;, but we will need more before we have
3466 a connected mesh spread across Oslo. If this sound interesting to
3467 you, please join us at the workshop. If you are too impatient to wait
3468 15 days, please join us on the IRC channel
3469 &lt;a href=&quot;irc://irc.freenode.net/%23nuug&quot;&gt;#nuug on irc.freenode.net&lt;/a&gt;
3470 right away. :)&lt;/p&gt;
3471 </description>
3472 </item>
3473
3474 <item>
3475 <title>Running TP-Link MR3040 as a batman-adv mesh node using openwrt</title>
3476 <link>http://people.skolelinux.org/pere/blog/Running_TP_Link_MR3040_as_a_batman_adv_mesh_node_using_openwrt.html</link>
3477 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Running_TP_Link_MR3040_as_a_batman_adv_mesh_node_using_openwrt.html</guid>
3478 <pubDate>Sun, 10 Nov 2013 23:00:00 +0100</pubDate>
3479 <description>&lt;p&gt;Continuing my research into mesh networking, I was recommended to
3480 use TP-Link 3040 and 3600 access points as mesh nodes, and the pair I
3481 bought arrived on Friday. Here are my notes on how to set up the
3482 MR3040 as a mesh node using
3483 &lt;a href=&quot;http://www.openwrt.org/&quot;&gt;OpenWrt&lt;/a&gt;.&lt;/p&gt;
3484
3485 &lt;p&gt;I started by following the instructions on the OpenWRT wiki for
3486 &lt;a href=&quot;http://wiki.openwrt.org/toh/tp-link/tl-mr3040&quot;&gt;TL-MR3040&lt;/a&gt;,
3487 and downloaded
3488 &lt;a href=&quot;http://downloads.openwrt.org/snapshots/trunk/ar71xx/openwrt-ar71xx-generic-tl-mr3040-v2-squashfs-factory.bin&quot;&gt;the
3489 recommended firmware image&lt;/a&gt;
3490 (openwrt-ar71xx-generic-tl-mr3040-v2-squashfs-factory.bin) and
3491 uploaded it into the original web interface. The flashing went fine,
3492 and the machine was available via telnet on the ethernet port. After
3493 logging in and setting the root password, ssh was available and I
3494 could start to set it up as a batman-adv mesh node.&lt;/p&gt;
3495
3496 &lt;p&gt;I started off by reading the instructions from
3497 &lt;a href=&quot;http://wirelessafrica.meraka.org.za/wiki/index.php?title=Antoine&#39;s_Research&quot;&gt;Wireless
3498 Africa&lt;/a&gt;, which had quite a lot of useful information, but
3499 eventually I followed the recipe from the Open Mesh wiki for
3500 &lt;a href=&quot;http://www.open-mesh.org/projects/batman-adv/wiki/Batman-adv-openwrt-config&quot;&gt;using
3501 batman-adv on OpenWrt&lt;/a&gt;. A small snag was the fact that the
3502 &lt;tt&gt;opkg install kmod-batman-adv&lt;/tt&gt; command did not work as it
3503 should. The batman-adv kernel module would fail to load because its
3504 dependency crc16 was not already loaded. I
3505 &lt;a href=&quot;https://dev.openwrt.org/ticket/14452&quot;&gt;reported the bug&lt;/a&gt; to
3506 the openwrt project and hope it will be fixed soon. But the problem
3507 only seem to affect initial testing of batman-adv, as configuration
3508 seem to work when booting from scratch.&lt;/p&gt;
3509
3510 &lt;p&gt;The setup is done using files in /etc/config/. I did not bridge
3511 the Ethernet and mesh interfaces this time, to be able to hook up the
3512 box on my local network and log into it for configuration updates.
3513 The following files were changed and look like this after modifying
3514 them:&lt;/p&gt;
3515
3516 &lt;p&gt;&lt;tt&gt;/etc/config/network&lt;/tt&gt;&lt;/p&gt;
3517
3518 &lt;pre&gt;
3519
3520 config interface &#39;loopback&#39;
3521 option ifname &#39;lo&#39;
3522 option proto &#39;static&#39;
3523 option ipaddr &#39;127.0.0.1&#39;
3524 option netmask &#39;255.0.0.0&#39;
3525
3526 config globals &#39;globals&#39;
3527 option ula_prefix &#39;fdbf:4c12:3fed::/48&#39;
3528
3529 config interface &#39;lan&#39;
3530 option ifname &#39;eth0&#39;
3531 option type &#39;bridge&#39;
3532 option proto &#39;dhcp&#39;
3533 option ipaddr &#39;192.168.1.1&#39;
3534 option netmask &#39;255.255.255.0&#39;
3535 option hostname &#39;tl-mr3040&#39;
3536 option ip6assign &#39;60&#39;
3537
3538 config interface &#39;mesh&#39;
3539 option ifname &#39;adhoc0&#39;
3540 option mtu &#39;1528&#39;
3541 option proto &#39;batadv&#39;
3542 option mesh &#39;bat0&#39;
3543 &lt;/pre&gt;
3544
3545 &lt;p&gt;&lt;tt&gt;/etc/config/wireless&lt;/tt&gt;&lt;/p&gt;
3546 &lt;pre&gt;
3547
3548 config wifi-device &#39;radio0&#39;
3549 option type &#39;mac80211&#39;
3550 option channel &#39;11&#39;
3551 option hwmode &#39;11ng&#39;
3552 option path &#39;platform/ar933x_wmac&#39;
3553 option htmode &#39;HT20&#39;
3554 list ht_capab &#39;SHORT-GI-20&#39;
3555 list ht_capab &#39;SHORT-GI-40&#39;
3556 list ht_capab &#39;RX-STBC1&#39;
3557 list ht_capab &#39;DSSS_CCK-40&#39;
3558 option disabled &#39;0&#39;
3559
3560 config wifi-iface &#39;wmesh&#39;
3561 option device &#39;radio0&#39;
3562 option ifname &#39;adhoc0&#39;
3563 option network &#39;mesh&#39;
3564 option encryption &#39;none&#39;
3565 option mode &#39;adhoc&#39;
3566 option bssid &#39;02:BA:00:00:00:01&#39;
3567 option ssid &#39;meshfx@hackeriet&#39;
3568 &lt;/pre&gt;
3569 &lt;p&gt;&lt;tt&gt;/etc/config/batman-adv&lt;/tt&gt;&lt;/p&gt;
3570 &lt;pre&gt;
3571
3572 config &#39;mesh&#39; &#39;bat0&#39;
3573 option interfaces &#39;adhoc0&#39;
3574 option &#39;aggregated_ogms&#39;
3575 option &#39;ap_isolation&#39;
3576 option &#39;bonding&#39;
3577 option &#39;fragmentation&#39;
3578 option &#39;gw_bandwidth&#39;
3579 option &#39;gw_mode&#39;
3580 option &#39;gw_sel_class&#39;
3581 option &#39;log_level&#39;
3582 option &#39;orig_interval&#39;
3583 option &#39;vis_mode&#39;
3584 option &#39;bridge_loop_avoidance&#39;
3585 option &#39;distributed_arp_table&#39;
3586 option &#39;network_coding&#39;
3587 option &#39;hop_penalty&#39;
3588
3589 # yet another batX instance
3590 # config &#39;mesh&#39; &#39;bat5&#39;
3591 # option &#39;interfaces&#39; &#39;second_mesh&#39;
3592 &lt;/pre&gt;
3593
3594 &lt;p&gt;The mesh node is now operational. I have yet to test its range,
3595 but I hope it is good. I have not yet tested the TP-Link 3600 box
3596 still wrapped up in plastic.&lt;/p&gt;
3597 </description>
3598 </item>
3599
3600 <item>
3601 <title>Debian init.d boot script example for rsyslog</title>
3602 <link>http://people.skolelinux.org/pere/blog/Debian_init_d_boot_script_example_for_rsyslog.html</link>
3603 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_init_d_boot_script_example_for_rsyslog.html</guid>
3604 <pubDate>Sat, 2 Nov 2013 22:40:00 +0100</pubDate>
3605 <description>&lt;p&gt;If one of the points of switching to a new init system in Debian is
3606 &lt;a href=&quot;http://thomas.goirand.fr/blog/?p=147&quot;&gt;to get rid of huge
3607 init.d scripts&lt;/a&gt;, I doubt we need to switch away from sysvinit and
3608 init.d scripts at all. Here is an example init.d script, ie a rewrite
3609 of /etc/init.d/rsyslog:&lt;/p&gt;
3610
3611 &lt;p&gt;&lt;pre&gt;
3612 #!/lib/init/init-d-script
3613 ### BEGIN INIT INFO
3614 # Provides: rsyslog
3615 # Required-Start: $remote_fs $time
3616 # Required-Stop: umountnfs $time
3617 # X-Stop-After: sendsigs
3618 # Default-Start: 2 3 4 5
3619 # Default-Stop: 0 1 6
3620 # Short-Description: enhanced syslogd
3621 # Description: Rsyslog is an enhanced multi-threaded syslogd.
3622 # It is quite compatible to stock sysklogd and can be
3623 # used as a drop-in replacement.
3624 ### END INIT INFO
3625 DESC=&quot;enhanced syslogd&quot;
3626 DAEMON=/usr/sbin/rsyslogd
3627 &lt;/pre&gt;&lt;/p&gt;
3628
3629 &lt;p&gt;Pretty minimalistic to me... For the record, the original sysv-rc
3630 script was 137 lines, and the above is just 15 lines, most of it meta
3631 info/comments.&lt;/p&gt;
3632
3633 &lt;p&gt;How to do this, you ask? Well, one create a new script
3634 /lib/init/init-d-script looking something like this:
3635
3636 &lt;p&gt;&lt;pre&gt;
3637 #!/bin/sh
3638
3639 # Define LSB log_* functions.
3640 # Depend on lsb-base (&gt;= 3.2-14) to ensure that this file is present
3641 # and status_of_proc is working.
3642 . /lib/lsb/init-functions
3643
3644 #
3645 # Function that starts the daemon/service
3646
3647 #
3648 do_start()
3649 {
3650 # Return
3651 # 0 if daemon has been started
3652 # 1 if daemon was already running
3653 # 2 if daemon could not be started
3654 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test &gt; /dev/null \
3655 || return 1
3656 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \
3657 $DAEMON_ARGS \
3658 || return 2
3659 # Add code here, if necessary, that waits for the process to be ready
3660 # to handle requests from services started subsequently which depend
3661 # on this one. As a last resort, sleep for some time.
3662 }
3663
3664 #
3665 # Function that stops the daemon/service
3666 #
3667 do_stop()
3668 {
3669 # Return
3670 # 0 if daemon has been stopped
3671 # 1 if daemon was already stopped
3672 # 2 if daemon could not be stopped
3673 # other if a failure occurred
3674 start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
3675 RETVAL=&quot;$?&quot;
3676 [ &quot;$RETVAL&quot; = 2 ] &amp;&amp; return 2
3677 # Wait for children to finish too if this is a daemon that forks
3678 # and if the daemon is only ever run from this initscript.
3679 # If the above conditions are not satisfied then add some other code
3680 # that waits for the process to drop all resources that could be
3681 # needed by services started subsequently. A last resort is to
3682 # sleep for some time.
3683 start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
3684 [ &quot;$?&quot; = 2 ] &amp;&amp; return 2
3685 # Many daemons don&#39;t delete their pidfiles when they exit.
3686 rm -f $PIDFILE
3687 return &quot;$RETVAL&quot;
3688 }
3689
3690 #
3691 # Function that sends a SIGHUP to the daemon/service
3692 #
3693 do_reload() {
3694 #
3695 # If the daemon can reload its configuration without
3696 # restarting (for example, when it is sent a SIGHUP),
3697 # then implement that here.
3698 #
3699 start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
3700 return 0
3701 }
3702
3703 SCRIPTNAME=$1
3704 scriptbasename=&quot;$(basename $1)&quot;
3705 echo &quot;SN: $scriptbasename&quot;
3706 if [ &quot;$scriptbasename&quot; != &quot;init-d-library&quot; ] ; then
3707 script=&quot;$1&quot;
3708 shift
3709 . $script
3710 else
3711 exit 0
3712 fi
3713
3714 NAME=$(basename $DAEMON)
3715 PIDFILE=/var/run/$NAME.pid
3716
3717 # Exit if the package is not installed
3718 #[ -x &quot;$DAEMON&quot; ] || exit 0
3719
3720 # Read configuration variable file if it is present
3721 [ -r /etc/default/$NAME ] &amp;&amp; . /etc/default/$NAME
3722
3723 # Load the VERBOSE setting and other rcS variables
3724 . /lib/init/vars.sh
3725
3726 case &quot;$1&quot; in
3727 start)
3728 [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_daemon_msg &quot;Starting $DESC&quot; &quot;$NAME&quot;
3729 do_start
3730 case &quot;$?&quot; in
3731 0|1) [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_end_msg 0 ;;
3732 2) [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_end_msg 1 ;;
3733 esac
3734 ;;
3735 stop)
3736 [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_daemon_msg &quot;Stopping $DESC&quot; &quot;$NAME&quot;
3737 do_stop
3738 case &quot;$?&quot; in
3739 0|1) [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_end_msg 0 ;;
3740 2) [ &quot;$VERBOSE&quot; != no ] &amp;&amp; log_end_msg 1 ;;
3741 esac
3742 ;;
3743 status)
3744 status_of_proc &quot;$DAEMON&quot; &quot;$NAME&quot; &amp;&amp; exit 0 || exit $?
3745 ;;
3746 #reload|force-reload)
3747 #
3748 # If do_reload() is not implemented then leave this commented out
3749 # and leave &#39;force-reload&#39; as an alias for &#39;restart&#39;.
3750 #
3751 #log_daemon_msg &quot;Reloading $DESC&quot; &quot;$NAME&quot;
3752 #do_reload
3753 #log_end_msg $?
3754 #;;
3755 restart|force-reload)
3756 #
3757 # If the &quot;reload&quot; option is implemented then remove the
3758 # &#39;force-reload&#39; alias
3759 #
3760 log_daemon_msg &quot;Restarting $DESC&quot; &quot;$NAME&quot;
3761 do_stop
3762 case &quot;$?&quot; in
3763 0|1)
3764 do_start
3765 case &quot;$?&quot; in
3766 0) log_end_msg 0 ;;
3767 1) log_end_msg 1 ;; # Old process is still running
3768 *) log_end_msg 1 ;; # Failed to start
3769 esac
3770 ;;
3771 *)
3772 # Failed to stop
3773 log_end_msg 1
3774 ;;
3775 esac
3776 ;;
3777 *)
3778 echo &quot;Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}&quot; &gt;&amp;2
3779 exit 3
3780 ;;
3781 esac
3782
3783 :
3784 &lt;/pre&gt;&lt;/p&gt;
3785
3786 &lt;p&gt;It is based on /etc/init.d/skeleton, and could be improved quite a
3787 lot. I did not really polish the approach, so it might not always
3788 work out of the box, but you get the idea. I did not try very hard to
3789 optimize it nor make it more robust either.&lt;/p&gt;
3790
3791 &lt;p&gt;A better argument for switching init system in Debian than reducing
3792 the size of init scripts (which is a good thing to do anyway), is to
3793 get boot system that is able to handle the kernel events sensibly and
3794 robustly, and do not depend on the boot to run sequentially. The boot
3795 and the kernel have not behaved sequentially in years.&lt;/p&gt;
3796 </description>
3797 </item>
3798
3799 <item>
3800 <title>Browser plugin for SPICE (spice-xpi) uploaded to Debian</title>
3801 <link>http://people.skolelinux.org/pere/blog/Browser_plugin_for_SPICE__spice_xpi__uploaded_to_Debian.html</link>
3802 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Browser_plugin_for_SPICE__spice_xpi__uploaded_to_Debian.html</guid>
3803 <pubDate>Fri, 1 Nov 2013 11:00:00 +0100</pubDate>
3804 <description>&lt;p&gt;&lt;a href=&quot;http://www.spice-space.org/&quot;&gt;The SPICE protocol&lt;/a&gt; for
3805 remote display access is the preferred solution with oVirt and RedHat
3806 Enterprise Virtualization, and I was sad to discover the other day
3807 that the browser plugin needed to use these systems seamlessly was
3808 missing in Debian. The &lt;a href=&quot;http://bugs.debian.org/668284&quot;&gt;request
3809 for a package&lt;/a&gt; was from 2012-04-10 with no progress since
3810 2013-04-01, so I decided to wrap up a package based on the great work
3811 from Cajus Pollmeier and put it in a collab-maint maintained git
3812 repository to get a package I could use. I would very much like
3813 others to help me maintain the package (or just take over, I do not
3814 mind), but as no-one had volunteered so far, I just uploaded it to
3815 NEW. I hope it will be available in Debian in a few days.&lt;/p&gt;
3816
3817 &lt;p&gt;The source is now available from
3818 &lt;a href=&quot;http://anonscm.debian.org/gitweb/?p=collab-maint/spice-xpi.git;a=summary&quot;&gt;http://anonscm.debian.org/gitweb/?p=collab-maint/spice-xpi.git;a=summary&lt;/a&gt;.&lt;/p&gt;
3819 </description>
3820 </item>
3821
3822 <item>
3823 <title>Teaching vmdebootstrap to create Raspberry Pi SD card images</title>
3824 <link>http://people.skolelinux.org/pere/blog/Teaching_vmdebootstrap_to_create_Raspberry_Pi_SD_card_images.html</link>
3825 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Teaching_vmdebootstrap_to_create_Raspberry_Pi_SD_card_images.html</guid>
3826 <pubDate>Sun, 27 Oct 2013 17:00:00 +0100</pubDate>
3827 <description>&lt;p&gt;The
3828 &lt;a href=&quot;http://packages.qa.debian.org/v/vmdebootstrap.html&quot;&gt;vmdebootstrap&lt;/a&gt;
3829 program is a a very nice system to create virtual machine images. It
3830 create a image file, add a partition table, mount it and run
3831 debootstrap in the mounted directory to create a Debian system on a
3832 stick. Yesterday, I decided to try to teach it how to make images for
3833 &lt;a href=&quot;https://wiki.debian.org/RaspberryPi&quot;&gt;Raspberry Pi&lt;/a&gt;, as part
3834 of a plan to simplify the build system for
3835 &lt;a href=&quot;https://wiki.debian.org/FreedomBox&quot;&gt;the FreedomBox
3836 project&lt;/a&gt;. The FreedomBox project already uses vmdebootstrap for
3837 the virtualbox images, but its current build system made multistrap
3838 based system for Dreamplug images, and it is lacking support for
3839 Raspberry Pi.&lt;/p&gt;
3840
3841 &lt;p&gt;Armed with the knowledge on how to build &quot;foreign&quot; (aka non-native
3842 architecture) chroots for Raspberry Pi, I dived into the vmdebootstrap
3843 code and adjusted it to be able to build armel images on my amd64
3844 Debian laptop. I ended up giving vmdebootstrap five new options,
3845 allowing me to replicate the image creation process I use to make
3846 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/A_Raspberry_Pi_based_batman_adv_Mesh_network_node.html&quot;&gt;Debian
3847 Jessie based mesh node images for the Raspberry Pi&lt;/a&gt;. First, the
3848 &lt;tt&gt;--foreign /path/to/binfm_handler&lt;/tt&gt; option tell vmdebootstrap to
3849 call debootstrap with --foreign and to copy the handler into the
3850 generated chroot before running the second stage. This allow
3851 vmdebootstrap to create armel images on an amd64 host. Next I added
3852 two new options &lt;tt&gt;--bootsize size&lt;/tt&gt; and &lt;tt&gt;--boottype
3853 fstype&lt;/tt&gt; to teach it to create a separate /boot/ partition with the
3854 given file system type, allowing me to create an image with a vfat
3855 partition for the /boot/ stuff. I also added a &lt;tt&gt;--variant
3856 variant&lt;/tt&gt; option to allow me to create smaller images without the
3857 Debian base system packages installed. Finally, I added an option
3858 &lt;tt&gt;--no-extlinux&lt;/tt&gt; to tell vmdebootstrap to not install extlinux
3859 as a boot loader. It is not needed on the Raspberry Pi and probably
3860 most other non-x86 architectures. The changes were accepted by the
3861 upstream author of vmdebootstrap yesterday and today, and is now
3862 available from
3863 &lt;a href=&quot;http://git.liw.fi/cgi-bin/cgit/cgit.cgi/vmdebootstrap/&quot;&gt;the
3864 upstream project page&lt;/a&gt;.&lt;/p&gt;
3865
3866 &lt;p&gt;To use it to build a Raspberry Pi image using Debian Jessie, first
3867 create a small script (the customize script) to add the non-free
3868 binary blob needed to boot the Raspberry Pi and the APT source
3869 list:&lt;/p&gt;
3870
3871 &lt;p&gt;&lt;pre&gt;
3872 #!/bin/sh
3873 set -e # Exit on first error
3874 rootdir=&quot;$1&quot;
3875 cd &quot;$rootdir&quot;
3876 cat &amp;lt;&amp;lt;EOF &gt; etc/apt/sources.list
3877 deb http://http.debian.net/debian/ jessie main contrib non-free
3878 EOF
3879 # Install non-free binary blob needed to boot Raspberry Pi. This
3880 # install a kernel somewhere too.
3881 wget https://raw.github.com/Hexxeh/rpi-update/master/rpi-update \
3882 -O $rootdir/usr/bin/rpi-update
3883 chmod a+x $rootdir/usr/bin/rpi-update
3884 mkdir -p $rootdir/lib/modules
3885 touch $rootdir/boot/start.elf
3886 chroot $rootdir rpi-update
3887 &lt;/pre&gt;&lt;/p&gt;
3888
3889 &lt;p&gt;Next, fetch the latest vmdebootstrap script and call it like this
3890 to build the image:&lt;/p&gt;
3891
3892 &lt;pre&gt;
3893 sudo ./vmdebootstrap \
3894 --variant minbase \
3895 --arch armel \
3896 --distribution jessie \
3897 --mirror http://http.debian.net/debian \
3898 --image test.img \
3899 --size 600M \
3900 --bootsize 64M \
3901 --boottype vfat \
3902 --log-level debug \
3903 --verbose \
3904 --no-kernel \
3905 --no-extlinux \
3906 --root-password raspberry \
3907 --hostname raspberrypi \
3908 --foreign /usr/bin/qemu-arm-static \
3909 --customize `pwd`/customize \
3910 --package netbase \
3911 --package git-core \
3912 --package binutils \
3913 --package ca-certificates \
3914 --package wget \
3915 --package kmod
3916 &lt;/pre&gt;&lt;/p&gt;
3917
3918 &lt;p&gt;The list of packages being installed are the ones needed by
3919 rpi-update to make the image bootable on the Raspberry Pi, with the
3920 exception of netbase, which is needed by debootstrap to find
3921 /etc/hosts with the minbase variant. I really wish there was a way to
3922 set up an Raspberry Pi using only packages in the Debian archive, but
3923 that is not possible as far as I know, because it boots from the GPU
3924 using a non-free binary blob.&lt;/p&gt;
3925
3926 &lt;p&gt;The build host need debootstrap, kpartx and qemu-user-static and
3927 probably a few others installed. I have not checked the complete
3928 build dependency list.&lt;/p&gt;
3929
3930 &lt;p&gt;The resulting image will not use the hardware floating point unit
3931 on the Raspberry PI, because the armel architecture in Debian is not
3932 optimized for that use. So the images created will be a bit slower
3933 than &lt;a href=&quot;http://www.raspbian.org/&quot;&gt;Raspbian&lt;/a&gt; based images.&lt;/p&gt;
3934 </description>
3935 </item>
3936
3937 <item>
3938 <title>A Raspberry Pi based batman-adv Mesh network node</title>
3939 <link>http://people.skolelinux.org/pere/blog/A_Raspberry_Pi_based_batman_adv_Mesh_network_node.html</link>
3940 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/A_Raspberry_Pi_based_batman_adv_Mesh_network_node.html</guid>
3941 <pubDate>Mon, 21 Oct 2013 11:40:00 +0200</pubDate>
3942 <description>&lt;p&gt;The last few days I have been experimenting with
3943 &lt;a href=&quot;http://www.open-mesh.org/projects/batman-adv/wiki&quot;&gt;the
3944 batman-adv mesh technology&lt;/a&gt;. I want to gain some experience to see
3945 if it will fit &lt;a href=&quot;https://wiki.debian.org/FreedomBox&quot;&gt;the
3946 Freedombox project&lt;/a&gt;, and together with my neighbors try to build a
3947 mesh network around the park where I live. Batman-adv is a layer 2
3948 mesh system (&quot;ethernet&quot; in other words), where the mesh network appear
3949 as if all the mesh clients are connected to the same switch.&lt;/p&gt;
3950
3951 &lt;p&gt;My hardware of choice was the Linksys WRT54GL routers I had lying
3952 around, but I&#39;ve been unable to get them working with batman-adv. So
3953 instead, I started playing with a
3954 &lt;a href=&quot;http://www.raspberrypi.org/&quot;&gt;Raspberry Pi&lt;/a&gt;, and tried to
3955 get it working as a mesh node. My idea is to use it to create a mesh
3956 node which function as a switch port, where everything connected to
3957 the Raspberry Pi ethernet plug is connected (bridged) to the mesh
3958 network. This allow me to hook a wifi base station like the Linksys
3959 WRT54GL to the mesh by plugging it into a Raspberry Pi, and allow
3960 non-mesh clients to hook up to the mesh. This in turn is useful for
3961 Android phones using &lt;a href=&quot;http://servalproject.org/&quot;&gt;the Serval
3962 Project&lt;/a&gt; voip client, allowing every one around the playground to
3963 phone and message each other for free. The reason is that Android
3964 phones do not see ad-hoc wifi networks (they are filtered away from
3965 the GUI view), and can not join the mesh without being rooted. But if
3966 they are connected using a normal wifi base station, they can talk to
3967 every client on the local network.&lt;/p&gt;
3968
3969 &lt;p&gt;To get this working, I&#39;ve created a debian package
3970 &lt;a href=&quot;https://github.com/petterreinholdtsen/meshfx-node&quot;&gt;meshfx-node&lt;/a&gt;
3971 and a script
3972 &lt;a href=&quot;https://github.com/petterreinholdtsen/meshfx-node/blob/master/build-rpi-mesh-node&quot;&gt;build-rpi-mesh-node&lt;/a&gt;
3973 to create the Raspberry Pi boot image. I&#39;m using Debian Jessie (and
3974 not Raspbian), to get more control over the packages available.
3975 Unfortunately a huge binary blob need to be inserted into the boot
3976 image to get it booting, but I&#39;ll ignore that for now. Also, as
3977 Debian lack support for the CPU features available in the Raspberry
3978 Pi, the system do not use the hardware floating point unit. I hope
3979 the routing performance isn&#39;t affected by the lack of hardware FPU
3980 support.&lt;/p&gt;
3981
3982 &lt;p&gt;To create an image, run the following with a sudo enabled user
3983 after inserting the target SD card into the build machine:&lt;/p&gt;
3984
3985 &lt;p&gt;&lt;pre&gt;
3986 % wget -O build-rpi-mesh-node \
3987 https://raw.github.com/petterreinholdtsen/meshfx-node/master/build-rpi-mesh-node
3988 % sudo bash -x ./build-rpi-mesh-node &gt; build.log 2&gt;&amp;1
3989 % dd if=/root/rpi/rpi_basic_jessie_$(date +%Y%m%d).img of=/dev/mmcblk0 bs=1M
3990 %
3991 &lt;/pre&gt;&lt;/p&gt;
3992
3993 &lt;p&gt;Booting with the resulting SD card on a Raspberry PI with a USB
3994 wifi card inserted should give you a mesh node. At least it does for
3995 me with a the wifi card I am using. The default mesh settings are the
3996 ones used by the Oslo mesh project at Hackeriet, as I mentioned in
3997 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Oslo_community_mesh_network___with_NUUG_and_Hackeriet_at_Hausmania.html&quot;&gt;an
3998 earlier blog post about this mesh testing&lt;/a&gt;.&lt;/p&gt;
3999
4000 &lt;p&gt;The mesh node was not horribly expensive either. I bought
4001 everything over the counter in shops nearby. If I had ordered online
4002 from the lowest bidder, the price should be significantly lower:&lt;/p&gt;
4003
4004 &lt;p&gt;&lt;table&gt;
4005
4006 &lt;tr&gt;&lt;th&gt;Supplier&lt;/th&gt;&lt;th&gt;Model&lt;/th&gt;&lt;th&gt;NOK&lt;/th&gt;&lt;/tr&gt;
4007 &lt;tr&gt;&lt;td&gt;Teknikkmagasinet&lt;/td&gt;&lt;td&gt;Raspberry Pi model B&lt;/td&gt;&lt;td&gt;349.90&lt;/td&gt;&lt;/tr&gt;
4008 &lt;tr&gt;&lt;td&gt;Teknikkmagasinet&lt;/td&gt;&lt;td&gt;Raspberry Pi type B case&lt;/td&gt;&lt;td&gt;99.90&lt;/td&gt;&lt;/tr&gt;
4009 &lt;tr&gt;&lt;td&gt;Lefdal&lt;/td&gt;&lt;td&gt;Jensen Air:Link 25150&lt;/td&gt;&lt;td&gt;295.-&lt;/td&gt;&lt;/tr&gt;
4010 &lt;tr&gt;&lt;td&gt;Clas Ohlson&lt;/td&gt;&lt;td&gt;Kingston 16 GB SD card&lt;/td&gt;&lt;td&gt;199.-&lt;/td&gt;&lt;/tr&gt;
4011 &lt;tr&gt;&lt;td&gt;Total cost&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;943.80&lt;/td&gt;&lt;/tr&gt;
4012
4013 &lt;/table&gt;&lt;/p&gt;
4014
4015 &lt;p&gt;Now my mesh network at home consist of one laptop in the basement
4016 connected to my production network, one Raspberry Pi node on the 1th
4017 floor that can be seen by my neighbor across the park, and one
4018 play-node I use to develop the image building script. And some times
4019 I hook up my work horse laptop to the mesh to test it. I look forward
4020 to figuring out what kind of latency the batman-adv setup will give,
4021 and how much packet loss we will experience around the park. :)&lt;/p&gt;
4022 </description>
4023 </item>
4024
4025 <item>
4026 <title>Perl library to control the Spykee robot moved to github</title>
4027 <link>http://people.skolelinux.org/pere/blog/Perl_library_to_control_the_Spykee_robot_moved_to_github.html</link>
4028 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Perl_library_to_control_the_Spykee_robot_moved_to_github.html</guid>
4029 <pubDate>Sat, 19 Oct 2013 10:20:00 +0200</pubDate>
4030 <description>&lt;p&gt;Back in 2010, I created a Perl library to talk to
4031 &lt;a href=&quot;http://en.wikipedia.org/wiki/Spykee&quot;&gt;the Spykee robot&lt;/a&gt;
4032 (with two belts, wifi, USB and Linux) and made it available from my
4033 web page. Today I concluded that it should move to a site that is
4034 easier to use to cooperate with others, and moved it to github. If
4035 you got a Spykee robot, you might want to check out
4036 &lt;a href=&quot;https://github.com/petterreinholdtsen/libspykee-perl&quot;&gt;the
4037 libspykee-perl github repository&lt;/a&gt;.&lt;/p&gt;
4038 </description>
4039 </item>
4040
4041 <item>
4042 <title>Good causes: Debian Outreach Program for Women, EFF documenting the spying and Open access in Norway</title>
4043 <link>http://people.skolelinux.org/pere/blog/Good_causes__Debian_Outreach_Program_for_Women__EFF_documenting_the_spying_and_Open_access_in_Norway.html</link>
4044 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Good_causes__Debian_Outreach_Program_for_Women__EFF_documenting_the_spying_and_Open_access_in_Norway.html</guid>
4045 <pubDate>Tue, 15 Oct 2013 21:30:00 +0200</pubDate>
4046 <description>&lt;p&gt;The last few days I came across a few good causes that should get
4047 wider attention. I recommend signing and donating to each one of
4048 these. :)&lt;/p&gt;
4049
4050 &lt;p&gt;Via &lt;a href=&quot;http://www.debian.org/News/weekly/2013/18/&quot;&gt;Debian
4051 Project News for 2013-10-14&lt;/a&gt; I came across the Outreach Program for
4052 Women program which is a Google Summer of Code like initiative to get
4053 more women involved in free software. One debian sponsor has offered
4054 to match &lt;a href=&quot;http://debian.ch/opw2013&quot;&gt;any donation done to Debian
4055 earmarked&lt;/a&gt; for this initiative. I donated a few minutes ago, and
4056 hope you will to. :)&lt;/p&gt;
4057
4058 &lt;p&gt;And the Electronic Frontier Foundation just announced plans to
4059 create &lt;a href=&quot;https://supporters.eff.org/donate/nsa-videos&quot;&gt;video
4060 documentaries about the excessive spying&lt;/a&gt; on every Internet user that
4061 take place these days, and their need to fund the work. I&#39;ve already
4062 donated. Are you next?&lt;/p&gt;
4063
4064 &lt;p&gt;For my Norwegian audience, the organisation Studentenes og
4065 Akademikernes Internasjonale Hjelpefond is collecting signatures for a
4066 statement under the heading
4067 &lt;a href=&quot;http://saih.no/Bloggers_United/&quot;&gt;Bloggers United for Open
4068 Access&lt;/a&gt; for those of us asking for more focus on open access in the
4069 Norwegian government. So far 499 signatures. I hope you will sign it
4070 too.&lt;/p&gt;
4071 </description>
4072 </item>
4073
4074 <item>
4075 <title>Oslo community mesh network - with NUUG and Hackeriet at Hausmania</title>
4076 <link>http://people.skolelinux.org/pere/blog/Oslo_community_mesh_network___with_NUUG_and_Hackeriet_at_Hausmania.html</link>
4077 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Oslo_community_mesh_network___with_NUUG_and_Hackeriet_at_Hausmania.html</guid>
4078 <pubDate>Fri, 11 Oct 2013 14:10:00 +0200</pubDate>
4079 <description>&lt;p&gt;Wireless mesh networks are self organising and self healing
4080 networks that can be used to connect computers across small and large
4081 areas, depending on the radio technology used. Normal wifi equipment
4082 can be used to create home made radio networks, and there are several
4083 successful examples like
4084 &lt;a href=&quot;http://www.freifunk.net/&quot;&gt;Freifunk&lt;/a&gt; and
4085 &lt;a href=&quot;http://www.awmn.net/&quot;&gt;Athens Wireless Metropolitan Network&lt;/a&gt;
4086 (see
4087 &lt;a href=&quot;http://en.wikipedia.org/wiki/List_of_wireless_community_networks_by_region#Greece&quot;&gt;wikipedia
4088 for a large list&lt;/a&gt;) around the globe. To give you an idea how it
4089 work, check out the nice overview of the Kiel Freifunk community which
4090 can be seen from their
4091 &lt;a href=&quot;http://freifunk.in-kiel.de/ffmap/nodes.html&quot;&gt;dynamically
4092 updated node graph and map&lt;/a&gt;, where one can see how the mesh nodes
4093 automatically handle routing and recover from nodes disappearing.
4094 There is also a small community mesh network group in Oslo, Norway,
4095 and that is the main topic of this blog post.&lt;/p&gt;
4096
4097 &lt;p&gt;I&#39;ve wanted to check out mesh networks for a while now, and hoped
4098 to do it as part of my involvement with the &lt;a
4099 href=&quot;http://www.nuug.no/&quot;&gt;NUUG member organisation&lt;/a&gt; community, and
4100 my recent involvement in
4101 &lt;a href=&quot;https://wiki.debian.org/FreedomBox&quot;&gt;the Freedombox project&lt;/a&gt;
4102 finally lead me to give mesh networks some priority, as I suspect a
4103 Freedombox should use mesh networks to connect neighbours and family
4104 when possible, given that most communication between people are
4105 between those nearby (as shown for example by research on Facebook
4106 communication patterns). It also allow people to communicate without
4107 any central hub to tap into for those that want to listen in on the
4108 private communication of citizens, which have become more and more
4109 important over the years.&lt;/p&gt;
4110
4111 &lt;p&gt;So far I have only been able to find one group of people in Oslo
4112 working on community mesh networks, over at the hack space
4113 &lt;a href=&quot;http://hackeriet.no/&quot;&gt;Hackeriet&lt;/a&gt; at Husmania. They seem to
4114 have started with some Freifunk based effort using OLSR, called
4115 &lt;a href=&quot;http://oslo.freifunk.net/index.php?title=Main_Page&quot;&gt;the Oslo
4116 Freifunk project&lt;/a&gt;, but that effort is now dead and the people
4117 behind it have moved on to a batman-adv based system called
4118 &lt;a href=&quot;http://meshfx.org/trac&quot;&gt;meshfx&lt;/a&gt;. Unfortunately the wiki
4119 site for the Oslo Freifunk project is no longer possible to update to
4120 reflect this fact, so the old project page can&#39;t be updated to point to
4121 the new project. A while back, the people at Hackeriet invited people
4122 from the Freifunk community to Oslo to talk about mesh networks. I
4123 came across this video where Hans Jørgen Lysglimt interview the
4124 speakers about this talk (from
4125 &lt;a href=&quot;https://www.youtube.com/watch?v=N2Kd7CLkhSY&quot;&gt;youtube&lt;/a&gt;):&lt;/p&gt;
4126
4127 &lt;p&gt;&lt;iframe width=&quot;420&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/N2Kd7CLkhSY&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;&lt;/p&gt;
4128
4129 &lt;p&gt;I mentioned OLSR and batman-adv, which are mesh routing protocols.
4130 There are heaps of different protocols, and I am still struggling to
4131 figure out which one would be &quot;best&quot; for some definitions of best, but
4132 given that the community mesh group in Oslo is so small, I believe it
4133 is best to hook up with the existing one instead of trying to create a
4134 completely different setup, and thus I have decided to focus on
4135 batman-adv for now. It sure help me to know that the very cool
4136 &lt;a href=&quot;http://www.servalproject.org/&quot;&gt;Serval project in Australia&lt;/a&gt;
4137 is using batman-adv as their meshing technology when it create a self
4138 organizing and self healing telephony system for disaster areas and
4139 less industrialized communities. Check out this cool video presenting
4140 that project (from
4141 &lt;a href=&quot;https://www.youtube.com/watch?v=30qNfzJCQOA&quot;&gt;youtube&lt;/a&gt;):&lt;/p&gt;
4142
4143 &lt;p&gt;&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/30qNfzJCQOA&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;&lt;/p&gt;
4144
4145 &lt;p&gt;According to the wikipedia page on
4146 &lt;a href=&quot;http://en.wikipedia.org/wiki/Wireless_mesh_network&quot;&gt;Wireless
4147 mesh network&lt;/a&gt; there are around 70 competing schemes for routing
4148 packets across mesh networks, and OLSR, B.A.T.M.A.N. and
4149 B.A.T.M.A.N. advanced are protocols used by several free software
4150 based community mesh networks.&lt;/p&gt;
4151
4152 &lt;p&gt;The batman-adv protocol is a bit special, as it provide layer 2
4153 (as in ethernet ) routing, allowing ipv4 and ipv6 to work on the same
4154 network. One way to think about it is that it provide a mesh based
4155 vlan you can bridge to or handle like any other vlan connected to your
4156 computer. The required drivers are already in the Linux kernel at
4157 least since Debian Wheezy, and it is fairly easy to set up. A
4158 &lt;a href=&quot;http://www.open-mesh.org/projects/batman-adv/wiki/Quick-start-guide&quot;&gt;good
4159 introduction&lt;/a&gt; is available from the Open Mesh project. These are
4160 the key settings needed to join the Oslo meshfx network:&lt;/p&gt;
4161
4162 &lt;p&gt;&lt;table&gt;
4163 &lt;tr&gt;&lt;th&gt;Setting&lt;/th&gt;&lt;th&gt;Value&lt;/th&gt;&lt;/tr&gt;
4164 &lt;tr&gt;&lt;td&gt;Protocol / kernel module&lt;/td&gt;&lt;td&gt;batman-adv&lt;/td&gt;&lt;/tr&gt;
4165 &lt;tr&gt;&lt;td&gt;ESSID&lt;/td&gt;&lt;td&gt;meshfx@hackeriet&lt;/td&gt;&lt;/tr&gt;
4166 &lt;td&gt;Channel / Frequency&lt;/td&gt;&lt;td&gt;11 / 2462&lt;/td&gt;&lt;/tr&gt;
4167 &lt;td&gt;Cell ID&lt;/td&gt;&lt;td&gt;02:BA:00:00:00:01&lt;/td&gt;
4168 &lt;/table&gt;&lt;/p&gt;
4169
4170 &lt;p&gt;The reason for setting ad-hoc wifi Cell ID is to work around bugs
4171 in firmware used in wifi card and wifi drivers. (See a nice post from
4172 VillageTelco about
4173 &quot;&lt;a href=&quot;http://tiebing.blogspot.no/2009/12/ad-hoc-cell-splitting-re-post-original.html&quot;&gt;Information
4174 about cell-id splitting, stuck beacons, and failed IBSS merges!&lt;/a&gt;
4175 for details.) When these settings are activated and you have some
4176 other mesh node nearby, your computer will be connected to the mesh
4177 network and can communicate with any mesh node that is connected to
4178 any of the nodes in your network of nodes. :)&lt;/p&gt;
4179
4180 &lt;p&gt;My initial plan was to reuse my old Linksys WRT54GL as a mesh node,
4181 but that seem to be very hard, as I have not been able to locate a
4182 firmware supporting batman-adv. If anyone know how to use that old
4183 wifi access point with batman-adv these days, please let me know.&lt;/p&gt;
4184
4185 &lt;p&gt;If you find this project interesting and want to join, please join
4186 us on IRC, either channel
4187 &lt;a href=&quot;irc://irc.freenode.net/#oslohackerspace&quot;&gt;#oslohackerspace&lt;/a&gt;
4188 or &lt;a href=&quot;irc://irc.freenode.net/#nuug&quot;&gt;#nuug&lt;/a&gt; on
4189 irc.freenode.net.&lt;/p&gt;
4190
4191 &lt;p&gt;While investigating mesh networks in Oslo, I came across an old
4192 research paper from the university of Stavanger and Telenor Research
4193 and Innovation called
4194 &lt;a href=&quot;http://folk.uio.no/paalee/publications/netrel-egeland-iswcs-2008.pdf&quot;&gt;The
4195 reliability of wireless backhaul mesh networks&lt;/a&gt; and elsewhere
4196 learned that Telenor have been experimenting with mesh networks at
4197 Grünerløkka in Oslo. So mesh networks are also interesting for
4198 commercial companies, even though Telenor discovered that it was hard
4199 to figure out a good business plan for mesh networking and as far as I
4200 know have closed down the experiment. Perhaps Telenor or others would
4201 be interested in a cooperation?&lt;/p&gt;
4202
4203 &lt;p&gt;&lt;strong&gt;Update 2013-10-12&lt;/strong&gt;: I was just
4204 &lt;a href=&quot;http://lists.alioth.debian.org/pipermail/freedombox-discuss/2013-October/005900.html&quot;&gt;told
4205 by the Serval project developers&lt;/a&gt; that they no longer use
4206 batman-adv (but are compatible with it), but their own crypto based
4207 mesh system.&lt;/p&gt;
4208 </description>
4209 </item>
4210
4211 <item>
4212 <title>Skolelinux / Debian Edu 7.1 install and overview video from Marcelo Salvador</title>
4213 <link>http://people.skolelinux.org/pere/blog/Skolelinux___Debian_Edu_7_1_install_and_overview_video_from_Marcelo_Salvador.html</link>
4214 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Skolelinux___Debian_Edu_7_1_install_and_overview_video_from_Marcelo_Salvador.html</guid>
4215 <pubDate>Tue, 8 Oct 2013 17:10:00 +0200</pubDate>
4216 <description>&lt;p&gt;The other day I was pleased and surprised to discover that Marcelo
4217 Salvador had published a
4218 &lt;a href=&quot;https://www.youtube.com/watch?v=w-GgpdqgLFc&quot;&gt;video on
4219 Youtube&lt;/a&gt; showing how to install the standalone Debian Edu /
4220 Skolelinux profile. This is the profile intended for use at home or
4221 on laptops that should not be integrated into the provided network
4222 services (no central home directory, no Kerberos / LDAP directory etc,
4223 in other word a single user machine). The result is 11 minutes long,
4224 and show some user applications (seem to be rather randomly picked).
4225 Missed a few of my favorites like celestia, planets and chromium
4226 showing the &lt;a href=&quot;http://www.zygotebody.com/&quot;&gt;Zygote Body 3D model
4227 of the human body&lt;/a&gt;, but I guess he did not know about those or find
4228 other programs more interesting. :) And the video do not show the
4229 advantages I believe is one of the most valuable featuers in Debian
4230 Edu, its central school server making it possible to run hundreds of
4231 computers without hard drives by installing one central
4232 &lt;a href=&quot;http://www.ltsp.org/&quot;&gt;LTSP server&lt;/a&gt;.&lt;/p&gt;
4233
4234 &lt;p&gt;Anyway, check out the video, embedded below and linked to above:&lt;/p&gt;
4235
4236 &lt;iframe width=&quot;420&quot; height=&quot;315&quot; src=&quot;http://www.youtube.com/embed/w-GgpdqgLFc&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
4237
4238 &lt;p&gt;Are there other nice videos demonstrating Skolelinux? Please let
4239 me know. :)&lt;/p&gt;
4240 </description>
4241 </item>
4242
4243 <item>
4244 <title>Finally, Debian Edu Wheezy is released today!</title>
4245 <link>http://people.skolelinux.org/pere/blog/Finally__Debian_Edu_Wheezy_is_released_today_.html</link>
4246 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Finally__Debian_Edu_Wheezy_is_released_today_.html</guid>
4247 <pubDate>Sun, 29 Sep 2013 10:20:00 +0200</pubDate>
4248 <description>&lt;p&gt;A few hours ago, the announcement for the first stable release of
4249 Debian Edu Wheezy went out from the Debian publicity team. The
4250 complete announcement text can be found at
4251 &lt;a href=&quot;http://www.debian.org/News/2013/20130928&quot;&gt;the Debian News
4252 section&lt;/a&gt;, translated to several languages. Please check it out.&lt;/p&gt;
4253
4254 &lt;p&gt;There is one minor known problem that we will fix very soon. One
4255 can not install a amd64 Thin Client Server using PXE, as the /var/
4256 partition is too small. A workaround is to extend the partition (use
4257 lvresize + resize2fs in tty 2 while installing).&lt;/p&gt;
4258 </description>
4259 </item>
4260
4261 <item>
4262 <title>Videos about the Freedombox project - for inspiration and learning</title>
4263 <link>http://people.skolelinux.org/pere/blog/Videos_about_the_Freedombox_project___for_inspiration_and_learning.html</link>
4264 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Videos_about_the_Freedombox_project___for_inspiration_and_learning.html</guid>
4265 <pubDate>Fri, 27 Sep 2013 14:10:00 +0200</pubDate>
4266 <description>&lt;p&gt;The &lt;a href=&quot;http://www.freedomboxfoundation.org/&quot;&gt;Freedombox
4267 project&lt;/a&gt; have been going on for a while, and have presented the
4268 vision, ideas and solution several places. Here is a little
4269 collection of videos of talks and presentation of the project.&lt;/p&gt;
4270
4271 &lt;ul&gt;
4272
4273 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=ukvUz5taxvA&quot;&gt;FreedomBox -
4274 2,5 minute marketing film&lt;/a&gt; (Youtube)&lt;/li&gt;
4275
4276 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=SzW25QTVWsE&quot;&gt;Eben Moglen
4277 discusses the Freedombox on CBS news 2011&lt;/a&gt; (Youtube)&lt;/li&gt;
4278
4279 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=Ae8SZbxfE0g&quot;&gt;Eben Moglen -
4280 Freedom in the Cloud - Software Freedom, Privacy and and Security for
4281 Web 2.0 and Cloud computing at ISOC-NY Public Meeting 2010&lt;/a&gt;
4282 (Youtube)&lt;/li&gt;
4283
4284 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=vNaIji_3xBE&quot;&gt;Fosdem 2011
4285 Keynote by Eben Moglen presenting the Freedombox&lt;/a&gt; (Youtube)&lt;/li&gt;
4286
4287 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=9bDDUyJSQ9s&quot;&gt;Presentation of
4288 the Freedombox by James Vasile at Elevate in Gratz 2011&lt;/a&gt; (Youtube)&lt;/li&gt;
4289
4290 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=zQTmnk27g9s&quot;&gt; Freedombox -
4291 Discovery, Identity, and Trust by Nick Daly at Freedombox Hackfest New
4292 York City in 2012&lt;/a&gt; (Youtube)&lt;/li&gt;
4293
4294 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=tkbSB4Ba7Ck&quot;&gt;Introduction
4295 to the Freedombox at Freedombox Hackfest New York City in 2012&lt;/a&gt;
4296 (Youtube)&lt;/li&gt;
4297
4298 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=z-P2Jaeg0aQ&quot;&gt;Freedom, Out
4299 of the Box! by Bdale Garbee at linux.conf.au Ballarat, 2012&lt;/a&gt; (Youtube) &lt;/li&gt;
4300
4301 &lt;li&gt;&lt;a href=&quot;https://archive.fosdem.org/2013/schedule/event/freedombox/&quot;&gt;Freedombox
4302 1.0 by Eben Moglen and Bdale Garbee at Fosdem 2013&lt;/a&gt; (FOSDEM) &lt;/li&gt;
4303
4304 &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=e1LpYX2zVYg&quot;&gt;What is the
4305 FreedomBox today by Bdale Garbee at Debconf13 in Vaumarcus
4306 2013&lt;/a&gt; (Youtube)&lt;/li&gt;
4307
4308 &lt;/ul&gt;
4309
4310 &lt;p&gt;A larger list is available from
4311 &lt;a href=&quot;https://wiki.debian.org/FreedomBox/TalksAndPresentations&quot;&gt;the
4312 Freedombox Wiki&lt;/a&gt;.&lt;/p&gt;
4313
4314 &lt;p&gt;On other news, I am happy to report that Freedombox based on Debian
4315 Jessie is coming along quite well, and soon both Owncloud and using
4316 Tor should be available for testers of the Freedombox solution. :) In
4317 a few weeks I hope everything needed to test it is included in Debian.
4318 The withsqlite package is already in Debian, and the plinth package is
4319 pending in NEW. The third and vital part of that puzzle is the
4320 metapackage/setup framework, which is still pending an upload. Join
4321 us on &lt;a href=&quot;irc://irc.debian.org:6667/%23freedombox&quot;&gt;IRC
4322 (#freedombox on irc.debian.org)&lt;/a&gt; and
4323 &lt;a href=&quot;http://lists.alioth.debian.org/mailman/listinfo/freedombox-discuss&quot;&gt;the
4324 mailing list&lt;/a&gt; if you want to help make this vision come true.&lt;/p&gt;
4325 </description>
4326 </item>
4327
4328 <item>
4329 <title>Third and probably last beta release of Debian Edu Wheezy</title>
4330 <link>http://people.skolelinux.org/pere/blog/Third_and_probably_last_beta_release_of_Debian_Edu_Wheezy.html</link>
4331 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Third_and_probably_last_beta_release_of_Debian_Edu_Wheezy.html</guid>
4332 <pubDate>Mon, 16 Sep 2013 21:30:00 +0200</pubDate>
4333 <description>&lt;p&gt;The third wheezy based beta release of Debian Edu was wrapped up
4334 today. This is the release announcement from Holger Levsen:&lt;/p&gt;
4335
4336 &lt;blockquote&gt;
4337 &lt;p&gt;Hi,&lt;/p&gt;
4338
4339 &lt;p&gt;it is my pleasure to announce the third beta release (beta 2 for
4340 short) of &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu /
4341 Skolelinux&lt;/a&gt; based on Debian Wheezy!&lt;/p&gt;
4342
4343 &lt;p&gt;Please test these images extensivly, if no new problems are found
4344 we plan to do this final Debian Edu Wheezy release this coming
4345 weekend. We are not aware of any major problems or blockers in beta2,
4346 if you find something, please notify us immediately!&lt;/p&gt;
4347
4348 &lt;p&gt;(More about the remaining steps for the Edu Wheezy release in
4349 another mail to the edu list tonight or tomorrow...)&lt;/p&gt;
4350
4351 &lt;p&gt;Noteworthy changes and software updates for Debian Edu 7.1+edu0~b2
4352 compared to beta1:&lt;/p&gt;
4353
4354 &lt;ul&gt;
4355
4356 &lt;li&gt;The KDE proxy setup has been adjusted to use the provided wpad.dat. This
4357 also gets Chromium to use this proxy.&lt;/li&gt;
4358 &lt;li&gt;Install kdepim-groupware with KDE desktops to make sure korganizer
4359 understand ical/dav sources.&lt;/li&gt;
4360 &lt;li&gt;Increased default maximum size of /var/spool/squid and /skole/backup on the
4361 main server.&lt;/li&gt;
4362 &lt;li&gt;A source DVD image containing all source packages is now available as well.&lt;/li&gt;
4363 &lt;li&gt;Updates for chromium (29.0.1547.57-1~deb7u1), imagemagick
4364 (6.7.7.10-5+deb7u2), php5 (5.4.4-14+deb7u4), libmodplug
4365 (0.8.8.4-3+deb7u1+git20130828), tiff (4.0.2-6+deb7u2), linux-image
4366 (3.2.0-4-486_3.2.46-1+deb7u1).&lt;/li&gt;
4367
4368 &lt;/ul&gt;
4369
4370 &lt;p&gt;Where to get it:&lt;/p&gt;
4371
4372 &lt;p&gt;To download the multiarch netinstall CD release you can use&lt;/p&gt;
4373
4374 &lt;ul&gt;
4375 &lt;li&gt;&lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b2-CD.iso&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b2-CD.iso&lt;/a&gt;&lt;/li&gt;
4376 &lt;li&gt;&lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b2-CD.iso&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b2-CD.iso&lt;/a&gt;&lt;/li&gt;
4377 &lt;li&gt;rsync -avzP ftp.skolelinux.org::skolelinux-cd/wheezy/debian-edu-7.1+edu0~b2-CD.iso .&lt;/li&gt;
4378 &lt;/ul&gt;
4379
4380 &lt;p&gt;The SHA1SUM of this image is: 3a1c89f4666df80eebcd46c5bf5fedb866f9472f&lt;/p&gt;
4381
4382 &lt;p&gt;To download the multiarch USB stick ISO release you can use
4383 &lt;ul&gt;
4384 &lt;li&gt;&lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b2-USB.iso&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b2-USB.iso&lt;/a&gt;&lt;/li&gt;
4385 &lt;li&gt;&lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b2-USB.iso&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b2-USB.iso&lt;/a&gt;&lt;/li&gt;
4386 &lt;li&gt;rsync -avzP ftp.skolelinux.org::skolelinux-cd/wheezy/debian-edu-7.1+edu0~b2-USB.iso .&lt;/li&gt;
4387 &lt;/ul&gt;
4388
4389 &lt;p&gt;The SHA1SUM of this image is: 702d1718548f401c74bfa6df9f032cc3ee16597e&lt;/p&gt;
4390
4391 &lt;p&gt;The Source DVD image has the filename
4392 debian-edu-7.1+edu0~b2-source-DVD.iso and the SHA1SUM
4393 089eed8b3f962db47aae1f6a9685e9bb2fa30ca5 and is available the same way
4394 as the other isos.&lt;/p&gt;
4395
4396 &lt;p&gt;How to report bugs&lt;/p&gt;
4397
4398 &lt;p&gt;For information how to report bugs please see
4399 &lt;br&gt;&lt;a href=&quot;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&quot;&gt;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&lt;/a&gt;&lt;/p&gt;
4400
4401
4402 &lt;p&gt;About Debian Edu and Skolelinux&lt;/p&gt;
4403
4404 &lt;p&gt;Debian Edu, also known as Skolelinux, is a Linux distribution based
4405 on Debian providing an out-of-the box environment of a completely
4406 configured school network. Immediately after installation a school
4407 server running all services needed for a school network is set up just
4408 waiting for users and machines being added via GOsa², a comfortable
4409 Web-UI. A netbooting environment is prepared using PXE, so after
4410 initial installation of the main server from CD or USB stick all other
4411 machines can be installed via the network. The provided school server
4412 provides LDAP database and Kerberos authentication service,
4413 centralized home directories, DHCP server, web proxy and many other
4414 services. The desktop contains more than 60 educational software
4415 packages and more are available from the Debian archive, and schools
4416 can choose between KDE, Gnome, LXDE and Xfce desktop environment.&lt;/p&gt;
4417
4418 &lt;p&gt;This is the seventh test release based on Debian Wheezy. Basically
4419 this is an updated and slightly improved version compared to the
4420 Squeeze release.&lt;/p&gt;
4421
4422 &lt;p&gt;Notes for upgrades from Alpha Prereleases&lt;/p&gt;
4423
4424 &lt;p&gt;Alpha based installations should reinstall or downgrade the
4425 versions of gosa and libpam-mklocaluser to the ones used in this beta
4426 release. Both alpha and beta0 based installations should reinstall or
4427 deal with gosa.conf manually; there are two options: (1) Keep
4428 gosa.conf and edit this file as outlined on the mailing list. (2)
4429 Accept the new version of gosa.conf and replace both contained admin
4430 password placeholders with the password hashes found in the old one
4431 (backup copy!). In both cases all users need to change their password
4432 to make sure a password is set for CIFS access to their home
4433 directory.&lt;/p&gt;
4434
4435
4436 &lt;p&gt;cheers,
4437 &lt;br&gt; Holger&lt;/p&gt;
4438 &lt;/blockquote&gt;
4439 </description>
4440 </item>
4441
4442 <item>
4443 <title>Recipe to test the Freedombox project on amd64 or Raspberry Pi</title>
4444 <link>http://people.skolelinux.org/pere/blog/Recipe_to_test_the_Freedombox_project_on_amd64_or_Raspberry_Pi.html</link>
4445 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Recipe_to_test_the_Freedombox_project_on_amd64_or_Raspberry_Pi.html</guid>
4446 <pubDate>Tue, 10 Sep 2013 14:20:00 +0200</pubDate>
4447 <description>&lt;p&gt;I was introduced to the
4448 &lt;a href=&quot;http://www.freedomboxfoundation.org/&quot;&gt;Freedombox project&lt;/a&gt;
4449 in 2010, when Eben Moglen presented his vision about serving the need
4450 of non-technical people to keep their personal information private and
4451 within the legal protection of their own homes. The idea is to give
4452 people back the power over their network and machines, and return
4453 Internet back to its intended peer-to-peer architecture. Instead of
4454 depending on a central service, the Freedombox will give everyone
4455 control over their own basic infrastructure.&lt;/p&gt;
4456
4457 &lt;p&gt;I&#39;ve intended to join the effort since then, but other tasks have
4458 taken priority. But this summers nasty news about the misuse of trust
4459 and privilege exercised by the &quot;western&quot; intelligence gathering
4460 communities increased my eagerness to contribute to a point where I
4461 actually started working on the project a while back.&lt;/p&gt;
4462
4463 &lt;p&gt;The &lt;a href=&quot;https://alioth.debian.org/projects/freedombox/&quot;&gt;initial
4464 Debian initiative&lt;/a&gt; based on the vision from Eben Moglen, is to
4465 create a simple and cheap Debian based appliance that anyone can hook
4466 up in their home and get access to secure and private services and
4467 communication. The initial deployment platform have been the
4468 &lt;a href=&quot;http://www.globalscaletechnologies.com/t-dreamplugdetails.aspx&quot;&gt;Dreamplug&lt;/a&gt;,
4469 which is a piece of hardware I do not own. So to be able to test what
4470 the current Freedombox setup look like, I had to come up with a way to install
4471 it on some hardware I do have access to. I have rewritten the
4472 &lt;a href=&quot;https://github.com/NickDaly/freedom-maker&quot;&gt;freedom-maker&lt;/a&gt;
4473 image build framework to use .deb packages instead of only copying
4474 setup into the boot images, and thanks to this rewrite I am able to
4475 set up any machine supported by Debian Wheezy as a Freedombox, using
4476 the previously mentioned deb (and a few support debs for packages
4477 missing in Debian).&lt;/p&gt;
4478
4479 &lt;p&gt;The current Freedombox setup consist of a set of bootstrapping
4480 scripts
4481 (&lt;a href=&quot;https://github.com/petterreinholdtsen/freedombox-setup&quot;&gt;freedombox-setup&lt;/a&gt;),
4482 and a administrative web interface
4483 (&lt;a href=&quot;https://github.com/NickDaly/Plinth&quot;&gt;plinth&lt;/a&gt; + exmachina +
4484 withsqlite), as well as a privacy enhancing proxy based on
4485 &lt;a href=&quot;http://packages.qa.debian.org/privoxy&quot;&gt;privoxy&lt;/a&gt;
4486 (freedombox-privoxy). There is also a web/javascript based XMPP
4487 client (&lt;a href=&quot;http://packages.qa.debian.org/jwchat&quot;&gt;jwchat&lt;/a&gt;)
4488 trying (unsuccessfully so far) to talk to the XMPP server
4489 (&lt;a href=&quot;http://packages.qa.debian.org/ejabberd&quot;&gt;ejabberd&lt;/a&gt;). The
4490 web interface is pluggable, and the goal is to use it to enable OpenID
4491 services, mesh network connectivity, use of TOR, etc, etc. Not much of
4492 this is really working yet, see
4493 &lt;a href=&quot;https://github.com/NickDaly/freedombox-todos/blob/master/TODO&quot;&gt;the
4494 project TODO&lt;/a&gt; for links to GIT repositories. Most of the code is
4495 on github at the moment. The HTTP proxy is operational out of the
4496 box, and the admin web interface can be used to add/remove plinth
4497 users. I&#39;ve not been able to do anything else with it so far, but
4498 know there are several branches spread around github and other places
4499 with lots of half baked features.&lt;/p&gt;
4500
4501 &lt;p&gt;Anyway, if you want to have a look at the current state, the
4502 following recipes should work to give you a test machine to poke
4503 at.&lt;/p&gt;
4504
4505 &lt;p&gt;&lt;strong&gt;Debian Wheezy amd64&lt;/strong&gt;&lt;/p&gt;
4506
4507 &lt;ol&gt;
4508
4509 &lt;li&gt;Fetch normal Debian Wheezy installation ISO.&lt;/li&gt;
4510 &lt;li&gt;Boot from it, either as CD or USB stick.&lt;/li&gt;
4511 &lt;li&gt;&lt;p&gt;Press [tab] on the boot prompt and add this as a boot argument
4512 to the Debian installer:&lt;p&gt;
4513 &lt;pre&gt;url=&lt;a href=&quot;http://www.reinholdtsen.name/freedombox/preseed-wheezy.dat&quot;&gt;http://www.reinholdtsen.name/freedombox/preseed-wheezy.dat&lt;/a&gt;&lt;/pre&gt;&lt;/li&gt;
4514
4515 &lt;li&gt;Answer the few language/region/password questions and pick disk to
4516 install on.&lt;/li&gt;
4517
4518 &lt;li&gt;When the installation is finished and the machine have rebooted a
4519 few times, your Freedombox is ready for testing.&lt;/li&gt;
4520
4521 &lt;/ol&gt;
4522
4523 &lt;p&gt;&lt;strong&gt;Raspberry Pi Raspbian&lt;/strong&gt;&lt;/p&gt;
4524
4525 &lt;ol&gt;
4526
4527 &lt;li&gt;Fetch a Raspbian SD card image, create SD card.&lt;/li&gt;
4528 &lt;li&gt;Boot from SD card, extend file system to fill the card completely.&lt;/li&gt;
4529 &lt;li&gt;&lt;p&gt;Log in and add this to /etc/sources.list:&lt;/p&gt;
4530 &lt;pre&gt;
4531 deb &lt;a href=&quot;http://www.reinholdtsen.name/freedombox/&quot;&gt;http://www.reinholdtsen.name/freedombox&lt;/a&gt; wheezy main
4532 &lt;/pre&gt;&lt;/li&gt;
4533 &lt;li&gt;&lt;p&gt;Run this as root:&lt;/p&gt;
4534 &lt;pre&gt;
4535 wget -O - http://www.reinholdtsen.name/freedombox/BE1A583D.asc | \
4536 apt-key add -
4537 apt-get update
4538 apt-get install freedombox-setup
4539 /usr/lib/freedombox/setup
4540 &lt;/pre&gt;&lt;/li&gt;
4541 &lt;li&gt;Reboot into your freshly created Freedombox.&lt;/li&gt;
4542
4543 &lt;/ol&gt;
4544
4545 &lt;p&gt;You can test it on other architectures too, but because the
4546 freedombox-privoxy package is binary, it will only work as intended on
4547 the architectures where I have had time to build the binary and put it
4548 in my APT repository. But do not let this stop you. It is only a
4549 short &quot;&lt;tt&gt;apt-get source -b freedombox-privoxy&lt;/tt&gt;&quot; away. :)&lt;/p&gt;
4550
4551 &lt;p&gt;Note that by default Freedombox is a DHCP server on the
4552 192.168.1.0/24 subnet, so if this is your subnet be careful and turn
4553 off the DHCP server by running &quot;&lt;tt&gt;update-rc.d isc-dhcp-server
4554 disable&lt;/tt&gt;&quot; as root.&lt;/p&gt;
4555
4556 &lt;p&gt;Please let me know if this works for you, or if you have any
4557 problems. We gather on the IRC channel
4558 &lt;a href=&quot;irc://irc.debian.org:6667/%23freedombox&quot;&gt;#freedombox&lt;/a&gt; on
4559 irc.debian.org and the
4560 &lt;a href=&quot;http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/freedombox-discuss&quot;&gt;project
4561 mailing list&lt;/a&gt;.&lt;/p&gt;
4562
4563 &lt;p&gt;Once you get your freedombox operational, you can visit
4564 &lt;tt&gt;http://your-host-name:8001/&lt;/tt&gt; to see the state of the plint
4565 welcome screen (dead end - do not be surprised if you are unable to
4566 get past it), and next visit &lt;tt&gt;http://your-host-name:8001/help/&lt;/tt&gt;
4567 to look at the rest of plinth. The default user is &#39;admin&#39; and the
4568 default password is &#39;secret&#39;.&lt;/p&gt;
4569 </description>
4570 </item>
4571
4572 <item>
4573 <title>Second beta release (beta 1) of Debian Edu/Skolelinux based on Debian Wheezy</title>
4574 <link>http://people.skolelinux.org/pere/blog/Second_beta_release__beta_1__of_Debian_Edu_Skolelinux_based_on_Debian_Wheezy.html</link>
4575 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Second_beta_release__beta_1__of_Debian_Edu_Skolelinux_based_on_Debian_Wheezy.html</guid>
4576 <pubDate>Thu, 22 Aug 2013 09:30:00 +0200</pubDate>
4577 <description>&lt;p&gt;The second wheezy based beta release of Debian Edu was wrapped up
4578 today, slightly delayed because of some bugs in the initial Windows
4579 integration fixes . This is the release announcement:&lt;/p&gt;
4580
4581 &lt;p&gt;&lt;strong&gt;New features for Debian Edu 7.1+edu0~b1 released 2013-08-22&lt;/strong&gt;&lt;/p&gt;
4582
4583 &lt;p&gt;These are the release notes for Debian Edu / Skolelinux
4584 7.1+edu0~b1, based on Debian with codename &quot;Wheezy&quot;.&lt;/p&gt;
4585
4586 &lt;p&gt;&lt;strong&gt;About Debian Edu and Skolelinux&lt;/strong&gt;&lt;/p&gt;
4587
4588 &lt;p&gt;&lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu, also known as
4589 Skolelinux&lt;/a&gt;, is a Linux distribution based on Debian providing an
4590 out-of-the box environment of a completely configured school
4591 network. Immediately after installation a school server running all
4592 services needed for a school network is set up just waiting for users
4593 and machines being added via GOsa², a comfortable Web-UI. A netbooting
4594 environment is prepared using PXE, so after initial installation of
4595 the main server from CD or USB stick all other machines can be
4596 installed via the network. The provided school server provides LDAP
4597 database and Kerberos authentication service, centralized home
4598 directories, DHCP server, web proxy and many other services. The
4599 desktop contains
4600 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Educational_applications_included_in_Debian_Edu___Skolelinux__the_screenshot_collection____.html&quot;&gt;more
4601 than 60 educational software packages&lt;/a&gt; and more are available from
4602 the Debian archive, and schools can choose between KDE, Gnome, LXDE
4603 and Xfce desktop environment.&lt;/p&gt;
4604
4605 &lt;p&gt;This is the sixth test release based on Debian Wheezy. Basically this
4606 is an updated and slightly improved version compared to the Squeeze
4607 release.&lt;/p&gt;
4608
4609 &lt;p&gt;ALERT: Alpha based installations should reinstall or downgrade the
4610 versions of gosa and libpam-mklocaluser to the ones used in this beta
4611 release. Both alpha and beta0 based installations should reinstall or
4612 deal with gosa.conf manually; there are two options: (1) Keep
4613 gosa.conf and edit this file as outlined
4614 &lt;a href=&quot;http://lists.debian.org/debian-edu/2013/08/msg00127.html&quot;&gt;on
4615 the mailing list&lt;/a&gt;. (2) Accept the new version of gosa.conf and
4616 replace both contained admin password placeholders with the password
4617 hashes found in the old one (backup copy!). In both cases every user
4618 need to change their their password to make sure a password is set for
4619 CIFS access to their home directory.&lt;/p&gt;
4620
4621 &lt;p&gt;&lt;strong&gt;Software updates&lt;/strong&gt;&lt;/p&gt;
4622
4623 &lt;ul&gt;
4624
4625 &lt;li&gt;Added ssh askpass packages to default installation, to ensure ssh
4626 work also without a attached tty.&lt;/li&gt;
4627 &lt;li&gt;Add the command-not-found package to the default installation to
4628 make it easier to figure out where to find missing command line
4629 tools. Please note, that the command &#39;update-command-not-found&#39;
4630 has to be run as root to actually make it useful (internet access
4631 required).&lt;/li&gt;
4632
4633 &lt;/ul&gt;
4634
4635 &lt;p&gt;&lt;strong&gt;Other changes&lt;/strong&gt;&lt;/p&gt;
4636
4637 &lt;ul&gt;
4638
4639 &lt;li&gt;Adjusted the USB stick ISO image build to include every tool
4640 needed for desktop=xfce installations.&lt;/li&gt;
4641 &lt;li&gt;Adjust thin-client-server task to work when installing from USB
4642 stick ISO image.&lt;/li&gt;
4643 &lt;li&gt;Made new grub artwork (changed png from indexed to RGB format).&lt;/li&gt;
4644 &lt;li&gt;Minor cleanup in the CUPS setup.&lt;/li&gt;
4645 &lt;li&gt;Make sure that bootstrapping of the Samba domain really happens
4646 during installation of the main server and adjust SID handling to
4647 cope with this.&lt;/li&gt;
4648 &lt;li&gt;Make Samba passwords changeable (again) via GOsa².&lt;/li&gt;
4649 &lt;li&gt;Fix generation of LM and NT password hashes via GOsa² to avoid
4650 empty password hashes.&lt;/li&gt;
4651 &lt;li&gt;Adapted Samba machine domain joining to latest change in the
4652 smbldap-tools Perl package, fixing bugs blocking Windows machines
4653 from joining the Samba domain.&lt;/li&gt;
4654
4655 &lt;/ul&gt;
4656
4657 &lt;p&gt;&lt;strong&gt;Known issues&lt;/strong&gt;&lt;/p&gt;
4658
4659 &lt;ul&gt;
4660
4661 &lt;li&gt;KDE fails to understand the wpad.dat file provided, causing it to
4662 not use the http proxy as it should.&lt;/li&gt;
4663 &lt;li&gt;Chromium also fails to use the proxy when using the KDE desktop
4664 (using the KDE configuration).&lt;/li&gt;
4665
4666 &lt;/ul&gt;
4667
4668 &lt;p&gt;&lt;strong&gt;Where to get it&lt;/strong&gt;&lt;/p&gt;
4669
4670 &lt;p&gt;To download the multiarch netinstall CD release you can use&lt;/p&gt;
4671
4672 &lt;ul&gt;
4673
4674 &lt;li&gt;&lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b1-CD.iso&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b1-CD.iso&lt;/a&gt;&lt;/li&gt;
4675
4676 &lt;li&gt;&lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b1-CD.iso&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b1-CD.iso&lt;/a&gt;&lt;/li&gt;
4677
4678 &lt;li&gt;rsync -avzP ftp.skolelinux.org::skolelinux-cd/wheezy/debian-edu-7.1+edu0~b1-CD.iso .&lt;/li&gt;
4679
4680 &lt;/ul&gt;
4681
4682 &lt;p&gt;The MD5SUM of this image is: 1e357f80b55e703523f2254adde6d78b
4683 &lt;br&gt;The SHA1SUM of this image is: 7157f9be5fd27c7694d713c6ecfed61c3edda3b2&lt;/p&gt;
4684
4685 &lt;p&gt;To download the multiarch USB stick ISO release you can use&lt;/p&gt;
4686
4687 &lt;ul&gt;
4688
4689 &lt;li&gt;&lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b1-USB.iso&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b1-USB.iso&lt;/a&gt;&lt;/li&gt;
4690 &lt;li&gt;&lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b1-USB.iso&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b1-USB.iso&lt;/a&gt;&lt;/li&gt;
4691 &lt;li&gt;rsync -avzP ftp.skolelinux.org::skolelinux-cd/wheezy/debian-edu-7.1+edu0~b1-USB.iso .&lt;/li&gt;
4692
4693 &lt;/ul&gt;
4694
4695 &lt;p&gt;The MD5SUM of this image is: 7a8408ead59cf7e3cef25afb6e91590b
4696 &lt;br&gt;The SHA1SUM of this image is: f1817c031f02790d5edb3bfa0dcf8451088ad119&lt;/p&gt;
4697
4698
4699 &lt;p&gt;&lt;strong&gt;How to report bugs&lt;/strong&gt;&lt;/p&gt;
4700
4701 &lt;p&gt;&lt;a href=&quot;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&quot;&gt;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&lt;/a&gt;
4702 </description>
4703 </item>
4704
4705 <item>
4706 <title>Intel 180 SSD disk with Lenovo firmware can not use Intel firmware</title>
4707 <link>http://people.skolelinux.org/pere/blog/Intel_180_SSD_disk_with_Lenovo_firmware_can_not_use_Intel_firmware.html</link>
4708 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Intel_180_SSD_disk_with_Lenovo_firmware_can_not_use_Intel_firmware.html</guid>
4709 <pubDate>Sun, 18 Aug 2013 14:00:00 +0200</pubDate>
4710 <description>&lt;p&gt;Earlier, I reported about
4711 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/How_to_fix_a_Thinkpad_X230_with_a_broken_180_GB_SSD_disk.html&quot;&gt;my
4712 problems using an Intel SSD 520 Series 180 GB disk&lt;/a&gt;. Friday I was
4713 told by IBM that the original disk should be thrown away. And as
4714 there no longer was a problem if I bricked the firmware, I decided
4715 today to try to install Intel firmware to replace the Lenovo firmware
4716 currently on the disk.&lt;/p&gt;
4717
4718 &lt;p&gt;I searched the Intel site for firmware, and found
4719 &lt;a href=&quot;https://downloadcenter.intel.com/Detail_Desc.aspx?agr=Y&amp;ProdId=3472&amp;DwnldID=18363&amp;ProductFamily=Solid-State+Drives+and+Caching&amp;ProductLine=Intel%c2%ae+High+Performance+Solid-State+Drive&amp;ProductProduct=Intel%c2%ae+SSD+520+Series+(180GB%2c+2.5in+SATA+6Gb%2fs%2c+25nm%2c+MLC)&amp;lang=eng&quot;&gt;issdfut_2.0.4.iso&lt;/a&gt;
4720 (aka Intel SATA Solid-State Drive Firmware Update Tool) which
4721 according to the site should contain the latest firmware for SSD
4722 disks. I inserted the broken disk in one of my spare laptops and
4723 booted the ISO from a USB stick. The disk was recognized, but the
4724 program claimed the newest firmware already were installed and refused
4725 to insert any Intel firmware. So no change, and the disk is still
4726 unable to handle write load. :( I guess the only way to get them
4727 working would be if Lenovo releases new firmware. No idea how likely
4728 that is. Anyway, just blogging about this test for completeness. I
4729 got a working Samsung disk, and see no point in spending more time on
4730 the broken disks.&lt;/p&gt;
4731 </description>
4732 </item>
4733
4734 <item>
4735 <title>90 percent done with the Norwegian draft translation of Free Culture</title>
4736 <link>http://people.skolelinux.org/pere/blog/90_percent_done_with_the_Norwegian_draft_translation_of_Free_Culture.html</link>
4737 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/90_percent_done_with_the_Norwegian_draft_translation_of_Free_Culture.html</guid>
4738 <pubDate>Fri, 2 Aug 2013 10:40:00 +0200</pubDate>
4739 <description>&lt;p&gt;It has been a while since my last update. Since last summer, I
4740 have worked on a Norwegian
4741 &lt;a href=&quot;http://www.docbook.org/&quot;&gt;docbook&lt;/a&gt; version of the 2004 book
4742 &lt;a href=&quot;http://free-culture.cc/&quot;&gt;Free Culture&lt;/a&gt; by Lawrence Lessig,
4743 to get a Norwegian text explaining the problems with the copyright
4744 law. Yesterday, I finally broken the 90% mark, when counting the
4745 number of strings to translate. Due to real life constraints, I have
4746 not had time to work on it since March, but when the summer broke out,
4747 I found time to work on it again. Still lots of work left, but the
4748 first draft is nearing completion. I created a graph to show the
4749 progress of the translation:&lt;/p&gt;
4750
4751 &lt;p&gt;&lt;img width=&quot;80%&quot; align=&quot;center&quot; src=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/raw/master/progress.png&quot;&gt;&lt;/p&gt;
4752
4753 &lt;p&gt;When the first draft is done, the translated text need to be
4754 proof read, and the remaining formatting problems with images and SVG
4755 drawings need to be fixed. There are probably also some index entries
4756 missing that need to be added. This can be done by comparing the
4757 index entries listed in the SiSU version of the book, or comparing the
4758 English docbook version with the paper version. Last, the colophon
4759 page with ISBN numbers etc need to be wrapped up before the release is
4760 done. I should also figure out how to get correct Norwegian sorting
4761 of the index pages. All docbook tools I have tried so far (xmlto,
4762 docbook-xsl, dblatex) get the order of symbols and the special
4763 Norwegian letters ÆØÅ wrong.&lt;/p&gt;
4764
4765 &lt;p&gt;There is still need for translators and people with docbook
4766 knowledge, to be able to get a good looking book (I still struggle
4767 with dblatex, xmlto and docbook-xsl) as well as to do the draft
4768 translation and proof reading. And I would like the figures to be
4769 redrawn as SVGs to make it easy to translate them. Any SVG master
4770 around? There are also some legal terms that are unfamiliar to me.
4771 If you want to help, please get in touch with me, and check out the
4772 project files currently available from
4773 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig&quot;&gt;github&lt;/a&gt;.&lt;/p&gt;
4774
4775 &lt;p&gt;If you are curious what the translated book currently look like,
4776 the updated
4777 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/blob/master/archive/freeculture.nb.pdf?raw=true&quot;&gt;PDF&lt;/a&gt;
4778 and
4779 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/blob/master/archive/freeculture.nb.epub?raw=true&quot;&gt;EPUB&lt;/a&gt;
4780 are published on github. The HTML version is published as well, but
4781 github hand it out with MIME type text/plain, confusing browsers, so I
4782 saw no point in linking to that version.&lt;/p&gt;
4783 </description>
4784 </item>
4785
4786 <item>
4787 <title>First beta release of Debian Edu/Skolelinux based on Debian Wheezy</title>
4788 <link>http://people.skolelinux.org/pere/blog/First_beta_release_of_Debian_Edu_Skolelinux_based_on_Debian_Wheezy.html</link>
4789 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/First_beta_release_of_Debian_Edu_Skolelinux_based_on_Debian_Wheezy.html</guid>
4790 <pubDate>Sat, 27 Jul 2013 20:30:00 +0200</pubDate>
4791 <description>&lt;p&gt;The first wheezy based beta release of Debian Edu was wrapped up
4792 today. This is the release announcement:&lt;/p&gt;
4793
4794 &lt;p&gt;&lt;strong&gt;New features for Debian Edu 7.1+edu0~b0 released
4795 2013-07-27&lt;/strong&gt;&lt;/p&gt;
4796
4797 &lt;p&gt;These are the release notes for for Debian Edu / Skolelinux
4798 7.1+edu0~b0, based on Debian with codename &quot;Wheezy&quot;.&lt;/p&gt;
4799
4800 &lt;p&gt;&lt;strong&gt;About Debian Edu and Skolelinux&lt;/strong&gt;&lt;/p&gt;
4801
4802 &lt;p&gt;&lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu, also known as
4803 Skolelinux&lt;/a&gt;, is a Linux distribution based on Debian providing an
4804 out-of-the box environment of a completely configured school
4805 network. Immediately after installation a school server running all
4806 services needed for a school network is set up just waiting for users
4807 and machines being added via GOsa², a comfortable Web-UI. A netbooting
4808 environment is prepared using PXE, so after initial installation of
4809 the main server from CD, DVD or USB stick all other machines can be
4810 installed via the network. The provided school server provides LDAP
4811 database and Kerberos authentication service, centralized home
4812 directories, DHCP server, web proxy and many other services. The
4813 desktop contains
4814 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Educational_applications_included_in_Debian_Edu___Skolelinux__the_screenshot_collection____.html&quot;&gt;more
4815 than 60 educational software packages&lt;/a&gt; and more are available from
4816 the Debian archive, and schools can choose between KDE, Gnome, LXDE
4817 and Xfce desktop environment.&lt;/p&gt;
4818
4819 &lt;p&gt;This is the fifth test release based on Debian Wheezy. Basically
4820 this is an updated and slightly improved version compared to the
4821 Squeeze release.&lt;/p&gt;
4822
4823 &lt;p&gt;ALERT: Alpha based installations should reinstall or downgrade the
4824 versions of gosa and libpam-mklocaluser to the ones used in this beta
4825 release.&lt;/p&gt;
4826
4827 &lt;p&gt;&lt;strong&gt;Software updates&lt;/strong&gt;&lt;/p&gt;
4828
4829 &lt;ul&gt;
4830
4831 &lt;li&gt;Switched roaming workstation profiles from wicd to network-manager
4832 for network configuration, as wicd didn&#39;t work any more.&lt;/li&gt;
4833 &lt;li&gt;Changed version numbers of patched gosa and libpam-mklocaluser
4834 packages to make sure our locally patched versions will be replaced
4835 by the official packages when they are released from Debian. Those
4836 installing alpha version need to reinstall or manually downgrade gosa
4837 and libpam-mklocaluser.&lt;/li&gt;
4838 &lt;li&gt;Added bluetooth tools to the default desktop (bluedevil, blueman).&lt;/li&gt;
4839 &lt;li&gt;Added tools for sharing the desktop on KDE (krdc, krfb).&lt;/li&gt;
4840 &lt;li&gt;Added valgrind to the default installation for easier debugging of
4841 crash bugs.&lt;/li&gt;
4842
4843 &lt;/ul&gt;
4844
4845 &lt;p&gt;&lt;strong&gt;Other changes&lt;/strong&gt;&lt;/p&gt;
4846
4847 &lt;ul&gt;
4848
4849 &lt;li&gt;Fixed artwork package to work with gnome, no longer break
4850 desktop=gnome installations.&lt;/li&gt;
4851 &lt;li&gt;Adjusted installer to now work when forced to use a proxy with the
4852 netinst CD.&lt;/li&gt;
4853 &lt;li&gt;Fixed code detecting and setting/loading hardware specific
4854 setup/firmware to work more robust out of the box.&lt;/li&gt;
4855 &lt;li&gt;Adjusted Kerberos setup to detect realm and server settings at
4856 install time instead of dynamically at run time. This avoid a crash
4857 with krb5-auth-dialog on diskless workstations without a DNS name.&lt;/li&gt;
4858 &lt;li&gt;Worked around misfeature in network-manager not calling the dhclient
4859 exit hooks, causing automatic proxy configuration and automatic host
4860 name setting at run time to work again.&lt;/li&gt;
4861 &lt;li&gt;Fixed feature setting the default Iceweasel start page from URL
4862 fetched from LDAP, to allow schools to set the global default by
4863 updating the dc=skole,dc=skolelinux,dc=no LDAP object.&lt;/li&gt;
4864 &lt;li&gt;Changed default host name on all networked machines to be unique
4865 (generated from MAC or reverse DNS) after boot.&lt;/li&gt;
4866 &lt;li&gt;Adjusted partition sizes to make sure they are big enough.&lt;/li&gt;
4867
4868 &lt;/ul&gt;
4869
4870 &lt;p&gt;&lt;strong&gt;Known issues&lt;/strong&gt;&lt;/p&gt;
4871
4872 &lt;ul&gt;
4873
4874 &lt;li&gt;Grub is missing the new artwork.&lt;/li&gt;
4875 &lt;li&gt;KDE fail to understand the wpad.dat file provided, causing it to
4876 not use the http proxy as it should.&lt;/li&gt;
4877 &lt;li&gt;Chromium also fail to use the proxy.&lt;/li&gt;
4878
4879 &lt;/ul&gt;
4880
4881 &lt;p&gt;&lt;strong&gt;Where to get it&lt;/strong&gt;&lt;/p&gt;
4882
4883 &lt;p&gt;To download the multiarch netinstall CD release you can use&lt;/p&gt;
4884
4885 &lt;ul&gt;
4886
4887 &lt;li&gt;&lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b0-CD.iso&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b0-CD.iso&lt;/a&gt;&lt;/li&gt;
4888
4889 &lt;li&gt;&lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b0-CD.iso&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b0-CD.iso&lt;/a&gt;&lt;/li&gt;
4890
4891 &lt;li&gt;rsync -avzP ftp.skolelinux.org::skolelinux-cd/wheezy/debian-edu-7.1+edu0~b0-CD.iso .&lt;/li&gt;
4892
4893 &lt;/ul&gt;
4894
4895 &lt;p&gt;The MD5SUM of this image is: 55d5de9765b6dccd5d9ec33cf1a07109
4896 &lt;br&gt;The SHA1SUM of this image is: 996a1d9517740e4d627d100de2d12b23dd545a3f&lt;/p&gt;
4897
4898 &lt;p&gt;To download the multiarch USB stick ISO release you can use&lt;/p&gt;
4899
4900 &lt;ul&gt;
4901
4902 &lt;li&gt;&lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b0-USB.iso&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b0-USB.iso&lt;/a&gt;&lt;/li&gt;
4903 &lt;li&gt;&lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b0-USB.iso&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~b0-USB.iso&lt;/a&gt;&lt;/li&gt;
4904 &lt;li&gt;rsync -avzP ftp.skolelinux.org::skolelinux-cd/wheezy/debian-edu-7.1+edu0~b0-USB.iso .&lt;/li&gt;
4905
4906 &lt;/ul&gt;
4907
4908 &lt;p&gt;The MD5SUM of this image is: d8f0818c51a78d357de794066f289f69
4909 &lt;br&gt;The SHA1SUM of this image is: 49185ca354e8d0543240423746924f76a6cee733&lt;/p&gt;
4910
4911
4912 &lt;p&gt;&lt;strong&gt;How to report bugs&lt;/strong&gt;&lt;/p&gt;
4913
4914 &lt;p&gt;&lt;a href=&quot;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&quot;&gt;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&lt;/a&gt;
4915 </description>
4916 </item>
4917
4918 <item>
4919 <title>How to fix a Thinkpad X230 with a broken 180 GB SSD disk</title>
4920 <link>http://people.skolelinux.org/pere/blog/How_to_fix_a_Thinkpad_X230_with_a_broken_180_GB_SSD_disk.html</link>
4921 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/How_to_fix_a_Thinkpad_X230_with_a_broken_180_GB_SSD_disk.html</guid>
4922 <pubDate>Wed, 17 Jul 2013 23:50:00 +0200</pubDate>
4923 <description>&lt;p&gt;Today I switched to
4924 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/The_Thinkpad_is_dead__long_live_the_Thinkpad_X230_.html&quot;&gt;my
4925 new laptop&lt;/a&gt;. I&#39;ve previously written about the problems I had with
4926 my new Thinkpad X230, which was delivered with an
4927 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Intel_SSD_520_Series_180_GB_with_Lenovo_firmware_still_lock_up_from_sustained_writes.html&quot;&gt;180
4928 GB Intel SSD disk with Lenovo firmware&lt;/a&gt; that did not handle
4929 sustained writes. My hardware supplier have been very forthcoming in
4930 trying to find a solution, and after first trying with another
4931 identical 180 GB disks they decided to send me a 256 GB Samsung SSD
4932 disk instead to fix it once and for all. The Samsung disk survived
4933 the installation of Debian with encrypted disks (filling the disk with
4934 random data during installation killed the first two), and I thus
4935 decided to trust it with my data. I have installed it as a Debian Edu
4936 Wheezy roaming workstation hooked up with my Debian Edu Squeeze main
4937 server at home using Kerberos and LDAP, and will use it as my work
4938 station from now on.&lt;/p&gt;
4939
4940 &lt;p&gt;As this is a solid state disk with no moving parts, I believe the
4941 Debian Wheezy default installation need to be tuned a bit to increase
4942 performance and increase life time of the disk. The Linux kernel and
4943 user space applications do not yet adjust automatically to such
4944 environment. To make it easier for my self, I created a draft Debian
4945 package &lt;tt&gt;ssd-setup&lt;/tt&gt; to handle this tuning. The
4946 &lt;a href=&quot;http://anonscm.debian.org/gitweb/?p=collab-maint/ssd-setup.git&quot;&gt;source
4947 for the ssd-setup package&lt;/a&gt; is available from collab-maint, and it
4948 is set up to adjust the setup of the machine by just installing the
4949 package. If there is any non-SSD disk in the machine, the package
4950 will refuse to install, as I did not try to write any logic to sort
4951 file systems in SSD and non-SSD file systems.&lt;/p&gt;
4952
4953 &lt;p&gt;I consider the package a draft, as I am a bit unsure how to best
4954 set up Debian Wheezy with an SSD. It is adjusted to my use case,
4955 where I set up the machine with one large encrypted partition (in
4956 addition to /boot), put LVM on top of this and set up partitions on
4957 top of this again. See the README file in the package source for the
4958 references I used to pick the settings. At the moment these
4959 parameters are tuned:&lt;/p&gt;
4960
4961 &lt;ul&gt;
4962
4963 &lt;li&gt;Set up cryptsetup to pass TRIM commands to the physical disk
4964 (adding discard to /etc/crypttab)&lt;/li&gt;
4965
4966 &lt;li&gt;Set up LVM to pass on TRIM commands to the underlying device (in
4967 this case a cryptsetup partition) by changing issue_discards from
4968 0 to 1 in /etc/lvm/lvm.conf.&lt;/li&gt;
4969
4970 &lt;li&gt;Set relatime as a file system option for ext3 and ext4 file
4971 systems.&lt;/li&gt;
4972
4973 &lt;li&gt;Tell swap to use TRIM commands by adding &#39;discard&#39; to
4974 /etc/fstab.&lt;/li&gt;
4975
4976 &lt;li&gt;Change I/O scheduler from cfq to deadline using a udev rule.&lt;/li&gt;
4977
4978 &lt;li&gt;Run fstrim on every ext3 and ext4 file system every night (from
4979 cron.daily).&lt;/li&gt;
4980
4981 &lt;li&gt;Adjust sysctl values vm.swappiness to 1 and vm.vfs_cache_pressure
4982 to 50 to reduce the kernel eagerness to swap out processes.&lt;/li&gt;
4983
4984 &lt;/ul&gt;
4985
4986 &lt;p&gt;During installation, I cancelled the part where the installer fill
4987 the disk with random data, as this would kill the SSD performance for
4988 little gain. My goal with the encrypted file system is to ensure
4989 those stealing my laptop end up with a brick and not a working
4990 computer. I have no hope in keeping the really resourceful people
4991 from getting the data on the disk (see
4992 &lt;a href=&quot;http://xkcd.com/538/&quot;&gt;XKCD #538&lt;/a&gt; for an explanation why).
4993 Thus I concluded that adding the discard option to crypttab is the
4994 right thing to do.&lt;/p&gt;
4995
4996 &lt;p&gt;I considered using the noop I/O scheduler, as several recommended
4997 it for SSD, but others recommended deadline and a benchmark I found
4998 indicated that deadline might be better for interactive use.&lt;/p&gt;
4999
5000 &lt;p&gt;I also considered using the &#39;discard&#39; file system option for ext3
5001 and ext4, but read that it would give a performance hit ever time a
5002 file is removed, and thought it best to that that slowdown once a day
5003 instead of during my work.&lt;/p&gt;
5004
5005 &lt;p&gt;My package do not set up tmpfs on /var/run, /var/lock and /tmp, as
5006 this is already done by Debian Edu.&lt;/p&gt;
5007
5008 &lt;p&gt;I have not yet started on the user space tuning. I expect
5009 iceweasel need some tuning, and perhaps other applications too, but
5010 have not yet had time to investigate those parts.&lt;/p&gt;
5011
5012 &lt;p&gt;The package should work on Ubuntu too, but I have not yet tested it
5013 there.&lt;/p&gt;
5014
5015 &lt;p&gt;As for the answer to the question in the title of this blog post,
5016 as far as I know, the only solution I know about is to replace the
5017 disk. It might be possible to flash it with Intel firmware instead of
5018 the Lenovo firmware. But I have not tried and did not want to do so
5019 without approval from Lenovo as I wanted to keep the warranty on the
5020 disk until a solution was found and they wanted the broken disks
5021 back.&lt;/p&gt;
5022 </description>
5023 </item>
5024
5025 <item>
5026 <title>Intel SSD 520 Series 180 GB with Lenovo firmware still lock up from sustained writes</title>
5027 <link>http://people.skolelinux.org/pere/blog/Intel_SSD_520_Series_180_GB_with_Lenovo_firmware_still_lock_up_from_sustained_writes.html</link>
5028 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Intel_SSD_520_Series_180_GB_with_Lenovo_firmware_still_lock_up_from_sustained_writes.html</guid>
5029 <pubDate>Wed, 10 Jul 2013 13:30:00 +0200</pubDate>
5030 <description>&lt;p&gt;A few days ago, I wrote about
5031 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/The_Thinkpad_is_dead__long_live_the_Thinkpad_X230_.html&quot;&gt;the
5032 problems I experienced with my new X230 and its SSD disk&lt;/a&gt;, which
5033 was dying during installation because it is unable to cope with
5034 sustained write. My supplier is in contact with
5035 &lt;a href=&quot;http://www.lenovo.com/&quot;&gt;Lenovo&lt;/a&gt;, and they wanted to send a
5036 replacement disk to try to fix the problem. They decided to send an
5037 identical model, so my hopes for a permanent fix was slim.&lt;/p&gt;
5038
5039 &lt;p&gt;Anyway, today I got the replacement disk and tried to install
5040 Debian Edu Wheezy with encrypted disk on it. The new disk have the
5041 same firmware version as the original. This time my hope raised
5042 slightly as the installation progressed, as the original disk used to
5043 die after 4-7% of the disk was written to, while this time it kept
5044 going past 10%, 20%, 40% and even past 50%. But around 60%, the disk
5045 died again and I was back on square one. I still do not have a new
5046 laptop with a disk I can trust. I can not live with a disk that might
5047 lock up when I download a new
5048 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt; ISO or
5049 other large files. I look forward to hearing from my supplier with
5050 the next proposal from Lenovo.&lt;/p&gt;
5051
5052 &lt;p&gt;The original disk is marked Intel SSD 520 Series 180 GB,
5053 11S0C38722Z1ZNME35X1TR, ISN: CVCV321407HB180EGN, SA: G57560302, FW:
5054 LF1i, 29MAY2013, PBA: G39779-300, LBA 351,651,888, LI P/N: 0C38722,
5055 Pb-free 2LI, LC P/N: 16-200366, WWN: 55CD2E40002756C4, Model:
5056 SSDSC2BW180A3L 2.5&quot; 6Gb/s SATA SSD 180G 5V 1A, ASM P/N 0C38732, FRU
5057 P/N 45N8295, P0C38732.&lt;/p&gt;
5058
5059 &lt;p&gt;The replacement disk is marked Intel SSD 520 Series 180 GB,
5060 11S0C38722Z1ZNDE34N0L0, ISN: CVCV315306RK180EGN, SA: G57560-302, FW:
5061 LF1i, 22APR2013, PBA: G39779-300, LBA 351,651,888, LI P/N: 0C38722,
5062 Pb-free 2LI, LC P/N: 16-200366, WWN: 55CD2E40000AB69E, Model:
5063 SSDSC2BW180A3L 2.5&quot; 6Gb/s SATA SSD 180G 5V 1A, ASM P/N 0C38732, FRU
5064 P/N 45N8295, P0C38732.&lt;/p&gt;
5065
5066 &lt;p&gt;The only difference is in the first number (serial number?), ISN,
5067 SA, date and WNPP values. Mentioning all the details here in case
5068 someone is able to use the information to find a way to identify the
5069 failing disk among working ones (if any such working disk actually
5070 exist).&lt;/p&gt;
5071 </description>
5072 </item>
5073
5074 <item>
5075 <title>July 13th: Debian/Ubuntu BSP and Skolelinux/Debian Edu developer gathering in Oslo</title>
5076 <link>http://people.skolelinux.org/pere/blog/July_13th__Debian_Ubuntu_BSP_and_Skolelinux_Debian_Edu_developer_gathering_in_Oslo.html</link>
5077 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/July_13th__Debian_Ubuntu_BSP_and_Skolelinux_Debian_Edu_developer_gathering_in_Oslo.html</guid>
5078 <pubDate>Tue, 9 Jul 2013 10:40:00 +0200</pubDate>
5079 <description>&lt;p&gt;The upcoming Saturday, 2013-07-13, we are organising a combined
5080 Debian Edu developer gathering and Debian and Ubuntu bug squashing
5081 party in Oslo. It is organised by &lt;a href=&quot;http://www.nuug.no/&quot;&gt;the
5082 member assosiation NUUG&lt;/a&gt; and
5083 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;the Debian Edu / Skolelinux
5084 project&lt;/a&gt; together with &lt;a href=&quot;http://bitraf.no/&quot;&gt;the hack space
5085 Bitraf&lt;/a&gt;.&lt;/p&gt;
5086
5087 &lt;p&gt;It starts 10:00 and continue until late evening. Everyone is
5088 welcome, and there is no fee to participate. There is on the other
5089 hand limited space, and only room for 30 people. Please put your name
5090 on &lt;a href=&quot;http://wiki.debian.org/BSP/2013/07/13/no/Oslo&quot;&gt;the event
5091 wiki page&lt;/a&gt; if you plan to join us.&lt;/p&gt;
5092 </description>
5093 </item>
5094
5095 <item>
5096 <title>The Thinkpad is dead, long live the Thinkpad X230?</title>
5097 <link>http://people.skolelinux.org/pere/blog/The_Thinkpad_is_dead__long_live_the_Thinkpad_X230_.html</link>
5098 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/The_Thinkpad_is_dead__long_live_the_Thinkpad_X230_.html</guid>
5099 <pubDate>Fri, 5 Jul 2013 08:30:00 +0200</pubDate>
5100 <description>&lt;p&gt;Half a year ago, I reported that I had to find a
5101 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Thank_you_Thinkpad_X41__for_your_long_and_trustworthy_service.html&quot;&gt;replacement
5102 for my trusty old Thinkpad X41&lt;/a&gt;. Unfortunately I did not have much
5103 time to spend on it, and it took a while to find a model I believe
5104 will do the job, but two days ago the replacement finally arrived. I
5105 ended up picking a
5106 &lt;a href=&quot;http://www.linlap.com/lenovo_thinkpad_x230&quot;&gt;Thinkpad X230&lt;/a&gt;
5107 with SSD disk (NZDAJMN). I first test installed Debian Edu Wheezy as
5108 a roaming workstation, and it seemed to work flawlessly. But my
5109 second installation with encrypted disk was not as successful. More
5110 on that below.&lt;/p&gt;
5111
5112 &lt;p&gt;I had a hard time trying to track down a good laptop, as my most
5113 important requirements (robust and with a good keyboard) are never
5114 listed in the feature list. But I did get good help from the search
5115 feature at &lt;a href=&quot;http://www.prisjakt.no/&quot;&gt;Prisjakt&lt;/a&gt;, which
5116 allowed me to limit the list of interesting laptops based on my other
5117 requirements. A bit surprising that SSD disk are not disks according
5118 to that search interface, so I had to drop specifying the number of
5119 disks from my search parameters. I also asked around among friends to
5120 get their impression on keyboards and robustness.&lt;/p&gt;
5121
5122 &lt;p&gt;So the new laptop arrived, and it is quite a lot wider than the
5123 X41. I am not quite convinced about the keyboard, as it is
5124 significantly wider than my old keyboard, and I have to stretch my
5125 hand a lot more to reach the edges. But the key response is fairly
5126 good and the individual key shape is fairly easy to handle, so I hope
5127 I will get used to it. My old X40 was starting to fail, and I really
5128 needed a new laptop now. :)&lt;/p&gt;
5129
5130 &lt;p&gt;Turning off the touch pad was simple. All it took was a quick
5131 visit to the BIOS during boot it disable it.&lt;/p&gt;
5132
5133 &lt;p&gt;But there is a fatal problem with the laptop. The 180 GB SSD disk
5134 lock up during load. And this happen when installing Debian Wheezy
5135 with encrypted disk, while the disk is being filled with random data.
5136 I also tested to install Ubuntu Raring, and it happen there too if I
5137 reenable the code to fill the disk with random data (it is disabled by
5138 default in Ubuntu). And the bug with is already known. It was
5139 reported to Debian as &lt;a href=&quot;http://bugs.debian.org/691427&quot;&gt;BTS
5140 report #691427 2012-10-25&lt;/a&gt; (journal commit I/O error on brand-new
5141 Thinkpad T430s ext4 on lvm on SSD). It is also reported to the Linux
5142 kernel developers as
5143 &lt;a href=&quot;https://bugzilla.kernel.org/show_bug.cgi?id=51861&quot;&gt;Kernel bugzilla
5144 report #51861 2012-12-20&lt;/a&gt; (Intel SSD 520 stops working under load
5145 (SSDSC2BW180A3L in Lenovo ThinkPad T430s)). It is also reported on the
5146 Lenovo forums, both for
5147 &lt;a href=&quot;http://forums.lenovo.com/t5/T400-T500-and-newer-T-series/T430s-Intel-SSD-520-180GB-issue/m-p/1070549&quot;&gt;T430
5148 2012-11-10&lt;/a&gt; and for
5149 &lt;a href=&quot;http://forums.lenovo.com/t5/X-Series-ThinkPad-Laptops/x230-SATA-errors-with-180GB-Intel-520-SSD-under-heavy-write-load/m-p/1068147&quot;&gt;X230
5150 03-20-2013&lt;/a&gt;. The problem do not only affect installation. The
5151 reports state that the disk lock up during use if many writes are done
5152 on the disk, so it is much no use to work around the installation
5153 problem and end up with a computer that can lock up at any moment.
5154 There is even a
5155 &lt;a href=&quot;https://git.efficios.com/?p=test-ssd.git&quot;&gt;small C program
5156 available&lt;/a&gt; that will lock up the hard drive after running a few
5157 minutes by writing to a file.&lt;/p&gt;
5158
5159 &lt;p&gt;I&#39;ve contacted my supplier and asked how to handle this, and after
5160 contacting PCHELP Norway (request 01D1FDP) which handle support
5161 requests for Lenovo, his first suggestion was to upgrade the disk
5162 firmware. Unfortunately there is no newer firmware available from
5163 Lenovo, as my disk already have the most recent one (version LF1i). I
5164 hope to hear more from him today and hope the problem can be
5165 fixed. :)&lt;/p&gt;
5166 </description>
5167 </item>
5168
5169 <item>
5170 <title>The Thinkpad is dead, long live the Thinkpad X230</title>
5171 <link>http://people.skolelinux.org/pere/blog/The_Thinkpad_is_dead__long_live_the_Thinkpad_X230.html</link>
5172 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/The_Thinkpad_is_dead__long_live_the_Thinkpad_X230.html</guid>
5173 <pubDate>Thu, 4 Jul 2013 09:20:00 +0200</pubDate>
5174 <description>&lt;p&gt;Half a year ago, I reported that I had to find a replacement for my
5175 trusty old Thinkpad X41. Unfortunately I did not have much time to
5176 spend on it, but today the replacement finally arrived. I ended up
5177 picking a &lt;a href=&quot;http://www.linlap.com/lenovo_thinkpad_x230&quot;&gt;Thinkpad
5178 X230&lt;/a&gt; with SSD disk (NZDAJMN). I first test installed Debian Edu
5179 Wheezy as a roaming workstation, and it worked flawlessly. As I write
5180 this, it is installing what I hope will be a more final installation,
5181 with a encrypted hard drive to ensure any dope head stealing it end up
5182 with an expencive door stop.&lt;/p&gt;
5183
5184 &lt;p&gt;I had a hard time trying to track down a good laptop, as my most
5185 important requirements (robust and with a good keyboard) are never
5186 listed in the feature list. But I did get good help from the search
5187 feature at &lt;ahref=&quot;http://www.prisjakt.no/&quot;&gt;Prisjakt&lt;/a&gt;, which
5188 allowed me to limit the list of interesting laptops based on my other
5189 requirements. A bit surprising that SSD disk are not disks, so I had
5190 to drop number of disks from my search parameters.&lt;/p&gt;
5191
5192 &lt;p&gt;I am not quite convinced about the keyboard, as it is significantly
5193 wider than my old keyboard, and I have to stretch my hand a lot more
5194 to reach the edges. But the key response is fairly good and the
5195 individual key shape is fairly easy to handle, so I hope I will get
5196 used to it. My old X40 was starting to fail, and I really needed a
5197 new laptop now. :)&lt;/p&gt;
5198
5199 &lt;p&gt;I look forward to figuring out how to turn off the touch pad.&lt;/p&gt;
5200 </description>
5201 </item>
5202
5203 <item>
5204 <title>Fourth alpha release of Debian Edu/Skolelinux based on Debian Wheezy</title>
5205 <link>http://people.skolelinux.org/pere/blog/Fourth_alpha_release_of_Debian_Edu_Skolelinux_based_on_Debian_Wheezy.html</link>
5206 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Fourth_alpha_release_of_Debian_Edu_Skolelinux_based_on_Debian_Wheezy.html</guid>
5207 <pubDate>Wed, 3 Jul 2013 14:00:00 +0200</pubDate>
5208 <description>&lt;p&gt;The fourth wheezy based alpha release of Debian Edu was wrapped up
5209 today. This is the release announcement:&lt;/p&gt;
5210
5211 &lt;p&gt;&lt;strong&gt;New features for Debian Edu 7.1+edu0~alpha3 released
5212 2013-07-03&lt;/strong&gt;&lt;/p&gt;
5213
5214 &lt;p&gt;These are the release notes for for Debian Edu / Skolelinux
5215 7.1+edu0~alpha3, based on Debian with codename &quot;Wheezy&quot;.&lt;/p&gt;
5216
5217 &lt;p&gt;&lt;strong&gt;About Debian Edu and Skolelinux&lt;/strong&gt;&lt;/p&gt;
5218
5219 &lt;p&gt;&lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu, also known as
5220 Skolelinux&lt;/a&gt;, is a Linux distribution based on Debian providing an
5221 out-of-the box environment of a completely configured school
5222 network. Immediately after installation a school server running all
5223 services needed for a school network is set up just waiting for users
5224 and machines being added via GOsa², a comfortable Web-UI. A netbooting
5225 environment is prepared using PXE, so after initial installation of
5226 the main server from CD, DVD or USB stick all other machines can be
5227 installed via the network. The provided school server provides LDAP
5228 database and Kerberos authentication service, centralized home
5229 directories, DHCP server, web proxy and many other services. The
5230 desktop contains
5231 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Educational_applications_included_in_Debian_Edu___Skolelinux__the_screenshot_collection____.html&quot;&gt;more
5232 than 60 educational software packages&lt;/a&gt; and more are available from
5233 the Debian archive, and schools can choose between KDE, Gnome, LXDE
5234 and Xfce desktop environment.&lt;/p&gt;
5235
5236 &lt;p&gt;This is the fourth test release based on Debian Wheezy. Basically
5237 this is an updated and slightly improved version compared to the
5238 Squeeze release.&lt;/p&gt;
5239
5240 &lt;p&gt;&lt;strong&gt;Software updates&lt;/strong&gt;&lt;/p&gt;
5241 &lt;ul&gt;
5242 &lt;li&gt;Dropped ispell dictionaries from our default installation.&lt;/li&gt;
5243 &lt;li&gt;Dropped menu-xdg from the KDE desktop option, to drop the Debian
5244 submenu. It was not included with Gnome, LXDE or Xfce, so this
5245 brings KDE in line with the others.&lt;/li&gt;
5246 &lt;li&gt;Dropped xdrawchem, xjig and xsok from our default installation as
5247 they don&#39;t have a desktop menu entry and thus won&#39;t show up in the
5248 menu now that menu-xdg was removed.&lt;/li&gt;
5249 &lt;li&gt;Removed the killer system to kill left behind processes on
5250 multi-user machines, as it was no longer able to understand when a
5251 X display was in use and killed the processes of the active users
5252 too.&lt;/li&gt;
5253 &lt;li&gt;Dropped the golearn (from goplay) package as the debtags in wheezy
5254 are too few to make the package useful.&lt;/li&gt;
5255 &lt;/ul&gt;
5256 &lt;p&gt;&lt;strong&gt;Other changes&lt;/strong&gt;&lt;/p&gt;
5257 &lt;ul&gt;
5258 &lt;li&gt;Updated artwork matching http://wiki.debian.org/DebianArt/Themes/Joy
5259 &lt;li&gt;Multi-arch i386/amd64 USB stick ISO available.&lt;/li&gt;
5260 &lt;li&gt;Got rid of ispell/wordlist related debconf questions that showed
5261 up for some language options.&lt;/li&gt;
5262 &lt;li&gt;Switched to using http.debian.net as APT source by default.&lt;/li&gt;
5263 &lt;li&gt;Fixed proxy configuration on Main Server installations.&lt;/li&gt;
5264 &lt;li&gt;Changed LTSP setup to ask dpkg to use force-unsafe-io the same way
5265 d-i is doing it.&lt;/li&gt;
5266 &lt;li&gt;Made sure root and user passwords were not left behind in the
5267 debconf database after installation on Main Server installations.&lt;/li&gt;
5268 &lt;li&gt;Made Roaming Workstation dynamic setup more robust and added draft
5269 script setup-ad-client to hook a Roaming Workstation up to a
5270 Active Directory server instead of a Debian Edu Main Server.&lt;/li&gt;
5271 &lt;li&gt;Update system to install needed firmware packages during
5272 installation, to work properly in Wheezy.&lt;/li&gt;
5273 &lt;li&gt;Update system to handle hardware quirks (debian-edu-hwsetup).&lt;/li&gt;
5274 &lt;li&gt;Corrected PXE installation setup to properly pass selected desktop
5275 and keymap settings to PXE installation clients.&lt;/li&gt;
5276 &lt;li&gt;LTSP diskless workstations use sshfs by default, allowing them to
5277 work without adding them to DNS and NIS netgroups for NFS access.&lt;/li&gt;
5278 &lt;/ul&gt;
5279 &lt;p&gt;&lt;strong&gt;Known issues&lt;/strong&gt;&lt;/p&gt;
5280 &lt;ul&gt;
5281 &lt;li&gt;No mass import of user account data in GOsa (ldif or csv)
5282 available yet (698840).&lt;/li&gt;
5283 &lt;li&gt;Artwork not enabled for all desktops.&lt;/li&gt;
5284 &lt;/ul&gt;
5285 &lt;p&gt;&lt;strong&gt;Where to get it&lt;/strong&gt;&lt;/p&gt;
5286
5287 &lt;p&gt;To download the multiarch netinstall CD release you can use&lt;/p&gt;
5288 &lt;ul&gt;
5289 &lt;li&gt;&lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~a3-CD.iso&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~a3-CD.iso&lt;/a&gt;&lt;/li&gt;
5290 &lt;li&gt;&lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~a3-CD.iso&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~a3-CD.iso&lt;/a&gt;&lt;/li&gt;
5291 &lt;li&gt;rsync -avzP ftp.skolelinux.org::skolelinux-cd/wheezy/debian-edu-7.1+edu0~a3-CD.iso .&lt;/li&gt;
5292 &lt;/ul&gt;
5293
5294 &lt;p&gt;The MD5SUM of this image is: 2b161a99d2a848c376d8d04e3854e30c
5295 &lt;br&gt;The SHA1SUM of this image is: 498922e9c508c0a7ee9dbe1dfe5bf830d779c3c8&lt;/p&gt;
5296
5297 &lt;p&gt;To download the multiarch USB stick ISO release you can use&lt;/p&gt;
5298 &lt;ul&gt;
5299 &lt;li&gt;&lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~a3-USB.iso&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~a3-USB.iso&lt;/a&gt;&lt;/li&gt;
5300 &lt;li&gt;&lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~a3-USB.iso&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.1+edu0~a3-USB.iso&lt;/a&gt;&lt;/li&gt;
5301 &lt;li&gt;rsync -avzP ftp.skolelinux.org::skolelinux-cd/wheezy/debian-edu-7.1+edu0~a3-USB.iso .&lt;/li&gt;
5302 &lt;/ul&gt;
5303
5304 &lt;p&gt;The MD5SUM of this image is: 25e808e403a4c15dbef1d13c37d572ac
5305 &lt;br&gt;The SHA1SUM of this image is: 15ecfc93eb6b4f453b7eb0bc04b6a279262d9721&lt;/p&gt;
5306
5307 &lt;p&gt;&lt;strong&gt;How to report bugs&lt;/strong&gt;&lt;/p&gt;
5308
5309 &lt;p&gt;&lt;a href=&quot;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&quot;&gt;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&lt;/a&gt;&lt;/p&gt;
5310 </description>
5311 </item>
5312
5313 <item>
5314 <title>Automatically locate and install required firmware packages on Debian (Isenkram 0.4)</title>
5315 <link>http://people.skolelinux.org/pere/blog/Automatically_locate_and_install_required_firmware_packages_on_Debian__Isenkram_0_4_.html</link>
5316 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Automatically_locate_and_install_required_firmware_packages_on_Debian__Isenkram_0_4_.html</guid>
5317 <pubDate>Tue, 25 Jun 2013 11:50:00 +0200</pubDate>
5318 <description>&lt;p&gt;It annoys me when the computer fail to do automatically what it is
5319 perfectly capable of, and I have to do it manually to get things
5320 working. One such task is to find out what firmware packages are
5321 needed to get the hardware on my computer working. Most often this
5322 affect the wifi card, but some times it even affect the RAID
5323 controller or the ethernet card. Today I pushed version 0.4 of the
5324 &lt;a href=&quot;http://packages.qa.debian.org/isenkram&quot;&gt;Isenkram package&lt;/a&gt;
5325 including a new script isenkram-autoinstall-firmware handling the
5326 process of asking all the loaded kernel modules what firmware files
5327 they want, find debian packages providing these files and install the
5328 debian packages. Here is a test run on my laptop:&lt;/p&gt;
5329
5330 &lt;p&gt;&lt;pre&gt;
5331 # isenkram-autoinstall-firmware
5332 info: kernel drivers requested extra firmware: ipw2200-bss.fw ipw2200-ibss.fw ipw2200-sniffer.fw
5333 info: fetching http://http.debian.net/debian/dists/squeeze/Contents-i386.gz
5334 info: locating packages with the requested firmware files
5335 info: Updating APT sources after adding non-free APT source
5336 info: trying to install firmware-ipw2x00
5337 firmware-ipw2x00
5338 firmware-ipw2x00
5339 Preconfiguring packages ...
5340 Selecting previously deselected package firmware-ipw2x00.
5341 (Reading database ... 259727 files and directories currently installed.)
5342 Unpacking firmware-ipw2x00 (from .../firmware-ipw2x00_0.28+squeeze1_all.deb) ...
5343 Setting up firmware-ipw2x00 (0.28+squeeze1) ...
5344 #
5345 &lt;/pre&gt;&lt;/p&gt;
5346
5347 &lt;p&gt;When all the requested firmware is present, a simple message is
5348 printed instead:&lt;/p&gt;
5349
5350 &lt;p&gt;&lt;pre&gt;
5351 # isenkram-autoinstall-firmware
5352 info: did not find any firmware files requested by loaded kernel modules. exiting
5353 #
5354 &lt;/pre&gt;&lt;/p&gt;
5355
5356 &lt;p&gt;It could use some polish, but it is already working well and saving
5357 me some time when setting up new machines. :)&lt;/p&gt;
5358
5359 &lt;p&gt;So, how does it work? It look at the set of currently loaded
5360 kernel modules, and look up each one of them using modinfo, to find
5361 the firmware files listed in the module meta-information. Next, it
5362 download the Contents file from a nearby APT mirror, and search for
5363 the firmware files in this file to locate the package with the
5364 requested firmware file. If the package is in the non-free section, a
5365 non-free APT source is added and the package is installed using
5366 &lt;tt&gt;apt-get install&lt;/tt&gt;. The end result is a slightly better working
5367 machine.&lt;/p&gt;
5368
5369 &lt;p&gt;I hope someone find time to implement a more polished version of
5370 this script as part of the hw-detect debian-installer module, to
5371 finally fix &lt;a href=&quot;http://bugs.debian.org/655507&quot;&gt;BTS report
5372 #655507&lt;/a&gt;. There really is no need to insert USB sticks with
5373 firmware during a PXE install when the packages already are available
5374 from the nearby Debian mirror.&lt;/p&gt;
5375 </description>
5376 </item>
5377
5378 <item>
5379 <title>The value of a good distro wide test suite...</title>
5380 <link>http://people.skolelinux.org/pere/blog/The_value_of_a_good_distro_wide_test_suite___.html</link>
5381 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/The_value_of_a_good_distro_wide_test_suite___.html</guid>
5382 <pubDate>Sat, 22 Jun 2013 07:00:00 +0200</pubDate>
5383 <description>&lt;p&gt;In the &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu /
5384 Skolelinux&lt;/a&gt; project, we include a post-installation test suite,
5385 which check that services are running, working, and return the
5386 expected results. It runs automatically just after the first boot on
5387 test installations (using test ISOs), but not on production
5388 installations (using non-test ISOs). It test that the LDAP service is
5389 operating, Kerberos is responding, DNS is replying, file systems are
5390 online resizable, etc, etc. And it check that the PXE service is
5391 configured, which is the topic of this post.&lt;/p&gt;
5392
5393 &lt;p&gt;The last week I&#39;ve fixed the DVD and USB stick ISOs for our Debian
5394 Edu Wheezy release. These ISOs are supposed to be able to install a
5395 complete system without any Internet connection, but for that to
5396 happen all the needed packages need to be on them. Thanks to our test
5397 suite, I discovered that we had forgotten to adjust our PXE setup to
5398 cope with the new names and paths used by the netboot d-i packages.
5399 When Internet connectivity was available, the installer fall back to
5400 using wget to fetch d-i boot images, but when offline it require
5401 working packages to get it working. And the packages changed name
5402 from debian-installer-6.0-netboot-$arch to
5403 debian-installer-7.0-netboot-$arch, we no longer pulled in the
5404 packages during installation. Without our test suite, I suspect we
5405 would never have discovered this before release. Now it is fixed
5406 right after we got the ISOs operational.&lt;/p&gt;
5407
5408 &lt;p&gt;Another by-product of the test suite is that we can ask system
5409 administrators with problems getting Debian Edu to work, to run the
5410 test suite using &lt;tt&gt;/usr/sbin/debian-edu-test-install&lt;/tt&gt; and see if
5411 any errors are detected. This usually pinpoint the subsystem causing
5412 the problem.&lt;/p&gt;
5413
5414 &lt;p&gt;If you want to help us help kids learn how to share and create,
5415 please join us on
5416 &lt;a href=&quot;irc://irc.debian.org/%23debian-edu&quot;&gt;#debian-edu on
5417 irc.debian.org&lt;/a&gt; and the
5418 &lt;a href=&quot;http://lists.debian.org/debian-edu/&quot;&gt;debian-edu@&lt;/a&gt; mailing
5419 list.&lt;/p&gt;
5420 </description>
5421 </item>
5422
5423 <item>
5424 <title>Debian Edu interview: Victor Nițu</title>
5425 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Victor_Ni_u.html</link>
5426 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Victor_Ni_u.html</guid>
5427 <pubDate>Mon, 17 Jun 2013 10:50:00 +0200</pubDate>
5428 <description>&lt;p&gt;The &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu and
5429 Skolelinux&lt;/a&gt; distribution have users and contributors all around the
5430 globe. And a while back, an enterprising young man showed up on
5431 &lt;a href=&quot;irc://irc.debian.org/%23debian-edu&quot;&gt;our IRC channel
5432 #debian-edu&lt;/a&gt; and started asking questions about how Debian Edu
5433 worked. We answered as good as we could, and even convinced him to
5434 help us with translations. And today I managed to get an interview
5435 with him, to learn more about him.&lt;/p&gt;
5436
5437 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
5438
5439 &lt;p&gt;I&#39;m a 25 year old free software enthusiast, living in Romania,
5440 which is also my country of origin. Back in 2009, at a New Year&#39;s Eve
5441 party, I had a very nice &lt;strike&gt;beer&lt;/strike&gt; discussion with a
5442 friend, when we realized we have no organised Debian community in our
5443 country. A few days later, we put together the infrastructure for such
5444 community and even gathered a nice Debian-ish crowd. Since then, I
5445 began my quest as a free software hacker and activist and I am
5446 constantly trying to cover as much ground as possible on that
5447 field.&lt;/p&gt;
5448
5449 &lt;p&gt;A few years ago I founded a small web development company, which
5450 provided me the flexible schedule I needed so much for my
5451 activities. For the last 13 months, I have been the Technical Director
5452 of &lt;a href=&quot;http://ceata.org/&quot;&gt;Fundația Ceata&lt;/a&gt;, which is a free
5453 software activist organisation endorsed by the FSF and the FSFE, and
5454 the only one we have in our country.&lt;/p&gt;
5455
5456 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux / Debian Edu
5457 project?&lt;/strong&gt;&lt;/p&gt;
5458
5459 &lt;p&gt;The idea of participating in the Debian Edu project was a surprise
5460 even to me, since I never used it before I began getting involved in
5461 it. This year I had a great opportunity to deliver a talk on
5462 educational software, and I knew immediately where to look. It was a
5463 love at first sight, since I was previously involved with some of the
5464 technologies the project incorporates, and I rapidly found a lot of
5465 ways to contribute.&lt;/p&gt;
5466
5467 &lt;p&gt;My first contributions consisted in translating the installer and
5468 configuration dialogs, then I found some bugs to squash (I still
5469 haven&#39;t fixed them yet though), and I even got my eyes on some other
5470 areas where I can prove myself helpful. Since the appetite for free
5471 software in my country is pretty low, I&#39;ll be happy to be the first
5472 one around here advocating for the project&#39;s adoption in educational
5473 environments, and maybe even get my hands dirty in creating a flavour
5474 for our own needs. I am not used to make very advanced plannings, so
5475 from now on, time will tell what I&#39;ll be doing next, but I think I
5476 have a pretty consistent starting point.&lt;/p&gt;
5477
5478 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux/Debian
5479 Edu?&lt;/strong&gt;&lt;/p&gt;
5480
5481 &lt;p&gt;Not a long time ago, I was in the position of configuring and
5482 maintaining a LDAP server on some Debian derivative, and I must say it
5483 took me a while. A long time ago, I was maintaining a bigger
5484 Samba-powered infrastructure, and I must say I spent quite a lot of
5485 time on it. I have similar stories about many of the services included
5486 with Skolelinux, and the main advantage I see about it is the
5487 out-of-the box availability of them, making it quite competitive when
5488 it comes to managing a school&#39;s network, for example.&lt;/p&gt;
5489
5490 &lt;p&gt;Of course, there is more to say about Skolelinux than the
5491 availability of the software included, its flexibility in various
5492 scenarios is something I can&#39;t wait to experiment &quot;into the wild&quot; (I
5493 only played with virtual machines so far). And I am sure there is a
5494 lot more I haven&#39;t discovered yet about it, being so new within the
5495 project.&lt;/p&gt;
5496
5497 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux / Debian
5498 Edu?&lt;/strong&gt;&lt;/p&gt;
5499
5500 &lt;p&gt;As usual, when it comes to Debian Blends, I see as the biggest
5501 disadvantage the lack of a numerous team dedicated to the
5502 project. Every day I see the same names in the changelogs, and I have
5503 a constantly fear of the bus factor in this story. I&#39;d like to see
5504 Debian Edu advertised more as an entry point into the Debian
5505 ecosystem, especially amongst newcomers and students. IMHO there are a
5506 lot low-hanging fruits in terms of bug squashing, and enough
5507 opportunities to get the feeling of the Debian Project&#39;s dynamics. Not
5508 to mention it&#39;s a very fun blend to work on!&lt;/p&gt;
5509
5510 &lt;p&gt;Derived from the previous statement, is the delay in catching up
5511 with the main Debian release and documentation. This is common though
5512 to all blends and derivatives, but it&#39;s an issue we can all work
5513 on.&lt;/p&gt;
5514
5515 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
5516
5517 &lt;p&gt;I can hardly imagine myself spending a day without Vim, since my
5518 daily routine covers writing code and hacking configuration files. I
5519 am a fan of the Awesome window manager (but I also like the
5520 Enlightenment project a lot!),
5521 &lt;a href=&quot;http://www.claws-mail.org/‎&quot;&gt;Claws Mail&lt;/a&gt; due to its ease of
5522 use and very configurable behaviour. Recently I fell in love with
5523 &lt;a href=&quot;https://launchpad.net/redshift&quot;&gt;Redshift&lt;/a&gt;, which helps me
5524 get through the night without headaches. Of course, there is much more
5525 stuff in this bag, but I&#39;ll need a blog on my own for doing this!&lt;/p&gt;
5526
5527 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
5528 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
5529
5530 &lt;p&gt;Well, on this field, I cannot do much more than experiment right
5531 now. So, being far from having a recipe for success, I can only assume
5532 that:&lt;/p&gt;
5533
5534 &lt;ul&gt;
5535
5536 &lt;li&gt;schools would like to get rid of proprietary software&lt;/li&gt;
5537
5538 &lt;li&gt;students will love the openness of the system, and will want to
5539 experiment with it - maybe we need to harvest the native curiosity
5540 of teenagers more?&lt;/li&gt;
5541
5542 &lt;li&gt;there is no &quot;right one&quot; when it comes to strategies, but it would
5543 be useful to have some success stories published somewhere, so
5544 other can get some inspiration from them (I know I&#39;d promote
5545 them!)&lt;/li&gt;
5546
5547 &lt;li&gt;more active promotion - talks, conferences, even small school
5548 lectures can do magical things if they encounter at least one
5549 person interested. Who knows who that person might be? ;-)&lt;/li&gt;
5550
5551 &lt;/ul&gt;
5552
5553 &lt;p&gt;I also see some problems in getting Skolelinux into schools; for
5554 example, in our country we have a great deal of corruption issues, so
5555 it might be hard(er) to fight against proprietary solutions. Also,
5556 people who relied on commercial software for all their lives, would be
5557 very hard to convert against their will.&lt;/p&gt;
5558 </description>
5559 </item>
5560
5561 <item>
5562 <title>Debian Edu interview: Jonathan Carter</title>
5563 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Jonathan_Carter.html</link>
5564 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Jonathan_Carter.html</guid>
5565 <pubDate>Wed, 12 Jun 2013 09:50:00 +0200</pubDate>
5566 <description>&lt;p&gt;There is a certain cross-over between the
5567 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux
5568 project&lt;/a&gt; and &lt;a href=&quot;http://www.edubuntu.org/&quot;&gt;the Edubuntu
5569 project&lt;/a&gt;, and for example the LTSP packages in Debian are a joint
5570 effort between the projects. One person with a foot in both camps is
5571 Jonathan Carter, which I am now happy to present to you.&lt;/p&gt;
5572
5573 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
5574
5575 &lt;p&gt;I&#39;m a South-African free software geek who lives in Cape Town. My
5576 days vary quite a bit since I&#39;m involved in too many things. As I&#39;m
5577 getting older I&#39;m learning how to focus a bit more :)&lt;/p&gt;
5578
5579 &lt;p&gt;I&#39;m also an Edubuntu contributor and I love when there are
5580 opportunities for the Edubuntu and Debian Edu projects to benefit from
5581 each other.&lt;/p&gt;
5582
5583 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux / Debian Edu
5584 project?&lt;/strong&gt;&lt;/p&gt;
5585
5586 &lt;p&gt;I&#39;ve been somewhat familiar with the project before, but I think my
5587 first direct exposure to the project was when I met Petter
5588 [Reinholdtsen] and Knut [Yrvin] at the Edubuntu summit in 2005 in
5589 London. They provided great feedback that helped the bootstrapping of
5590 Edubuntu. Back then Edubuntu (and even Ubuntu) was still very new and
5591 it was great getting input from people who have been around longer. I
5592 was also still very excitable and said yes to everything and to this
5593 day I have a big todo list backlog that I&#39;m catching up with. I think
5594 over the years the relationship between Edubuntu and Debian-Edu has
5595 been gradually improving, although I think there&#39;s a lot that we could
5596 still improve on in terms of working together on packages. I&#39;m sure
5597 we&#39;ll get there one day.&lt;/p&gt;
5598
5599 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux / Debian
5600 Edu?&lt;/strong&gt;&lt;/p&gt;
5601
5602 &lt;p&gt;Debian itself already has so many advantages. I could go on about
5603 it for pages, but in essence I love that it&#39;s a very honest project
5604 that puts its users first with no hidden agendas and also produces
5605 very high quality work.&lt;/p&gt;
5606
5607 &lt;p&gt;I think the advantage of Debian Edu is that it makes many common
5608 set-up tasks simpler so that administrators can get up and running
5609 with a lot less effort and frustration. At the same time I think it
5610 helps to standardise installations in schools so that it&#39;s easier for
5611 community members and commercial suppliers to support.&lt;/p&gt;
5612
5613 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux / Debian
5614 Edu?&lt;/strong&gt;&lt;/p&gt;
5615
5616 &lt;p&gt;I had to re-type this one a few times because I&#39;m trying to
5617 separate &quot;disadvantages&quot; from &quot;areas that need improvement&quot; (which is
5618 what I originally rambled on about)&lt;/p&gt;
5619
5620 &lt;p&gt;The biggest disadvantage I can think of is lack of manpower. The
5621 project could do so much more if there were more good contributors. I
5622 think some of the problems are external too. Free software and free
5623 content in education is a no-brainer but it takes some time to catch
5624 on. When you&#39;ve been working with the same proprietary eco-system for
5625 years and have gotten used to it, it can be hard to adjust to some
5626 concepts in the free software world. It would be nice if there were
5627 more Debian Edu consultants across the world. I&#39;d love to be one
5628 myself but I&#39;m already so over-committed that it&#39;s just not possible
5629 currently.&lt;/p&gt;
5630
5631 &lt;p&gt;I think the best short-term solution to that large-scale problem is
5632 for schools to be pro-active and share their experiences and grow
5633 their skills in-house. I&#39;m often saddened to see how much money
5634 educational institutions spend on 3rd party solutions that they don&#39;t
5635 have access to after the service has ended and they could&#39;ve gotten so
5636 much more value otherwise by being more self-sustainable and
5637 autonomous.&lt;/p&gt;
5638
5639 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
5640
5641 &lt;p&gt;My main laptop dual-boots between Debian and Windows 7. I was
5642 Windows free for years but started dual-booting again last year for
5643 some games which help me focus and relax (Starcraft II in
5644 particular). Gaming support on Linux is improving in leaps and bounds
5645 so I suppose I&#39;ll soon be able to regain that disk space :)&lt;/p&gt;
5646
5647 &lt;p&gt;Besides that I rely on Icedove, Chromium, Terminator, Byobu, irssi,
5648 git, Tomboy, KVM, VLC and LibreOffice. Recently I&#39;ve been torn on
5649 which desktop environment I like and I&#39;m taking some refuge in Xfce
5650 while I figure that out. I like tools that keep things simple. I enjoy
5651 Python and shell scripting. I went to an Arduino workshop recently and
5652 it was awesome seeing how easy and simple the IDE software was to get
5653 up and running in Debian compared to the users running Windows and OS
5654 X.&lt;/p&gt;
5655
5656 &lt;p&gt;I also use mc which some people frown upon slightly. I got used to
5657 using Norton Commander in the early 90&#39;s and it stuck (I think the
5658 people who sneer at it is just jealous that they don&#39;t know how to use
5659 it :p)
5660
5661 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
5662 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
5663
5664 &lt;p&gt;I think trying to force it is unproductive. I also think that in
5665 many cases it&#39;s appropriate for schools to use non-free systems and I
5666 don&#39;t think that there&#39;s any particular moral or ethical problem with
5667 that.&lt;/p&gt;
5668
5669 &lt;p&gt;I do think though that free software can already solve so so many
5670 problems in educational institutions and it&#39;s just a shame not taking
5671 advantage of that.&lt;/p&gt;
5672
5673 &lt;p&gt;I also think that some curricula need serious review. For example,
5674 some areas of the world rely heavily on very specific versions of MS
5675 Office, teaching students to parrot menu items instead of learning the
5676 general concepts. I think that&#39;s very unproductive because firstly, MS
5677 Office&#39;s interface changes drastically every few years and on top of
5678 that it also locks in a generation to a product that might not be the
5679 best solution for them.&lt;/p&gt;
5680
5681 &lt;p&gt;To answer your question, I believe that the right strategy is to
5682 educate and inform, giving someone the information they require to
5683 make a decision that would work for them.&lt;/p&gt;
5684 </description>
5685 </item>
5686
5687 <item>
5688 <title>Fixing the Linux black screen of death on machines with Intel HD video</title>
5689 <link>http://people.skolelinux.org/pere/blog/Fixing_the_Linux_black_screen_of_death_on_machines_with_Intel_HD_video.html</link>
5690 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Fixing_the_Linux_black_screen_of_death_on_machines_with_Intel_HD_video.html</guid>
5691 <pubDate>Tue, 11 Jun 2013 11:00:00 +0200</pubDate>
5692 <description>&lt;p&gt;When installing RedHat, Fedora, Debian and Ubuntu on some machines,
5693 the screen just turn black when Linux boot, either during installation
5694 or on first boot from the hard disk. I&#39;ve seen it once in a while the
5695 last few years, but only recently understood the cause. I&#39;ve seen it
5696 on HP laptops, and on my latest acquaintance the Packard Bell laptop.
5697 The reason seem to be in the wiring of some laptops. The system to
5698 control the screen background light is inverted, so when Linux try to
5699 turn the brightness fully on, it end up turning it off instead. I do
5700 not know which Linux drivers are affected, but this post is about the
5701 i915 driver used by the
5702 &lt;a href=&quot;http://www.linlap.com/packard_bell_easynote_lv&quot;&gt;Packard Bell
5703 EasyNote LV&lt;/a&gt;, Thinkpad X40 and many other laptops.&lt;/p&gt;
5704
5705 &lt;p&gt;The problem can be worked around two ways. Either by adding
5706 i915.invert_brightness=1 as a kernel option, or by adding a file in
5707 /etc/modprobe.d/ to tell modprobe to add the invert_brightness=1
5708 option when it load the i915 kernel module. On Debian and Ubuntu, it
5709 can be done by running these commands as root:&lt;/p&gt;
5710
5711 &lt;pre&gt;
5712 echo options i915 invert_brightness=1 | tee /etc/modprobe.d/i915.conf
5713 update-initramfs -u -k all
5714 &lt;/pre&gt;
5715
5716 &lt;p&gt;Since March 2012 there is
5717 &lt;a href=&quot;http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=4dca20efb1a9c2efefc28ad2867e5d6c3f5e1955&quot;&gt;a
5718 mechanism in the Linux kernel&lt;/a&gt; to tell the i915 driver which
5719 hardware have this problem, and get the driver to invert the
5720 brightness setting automatically. To use it, one need to add a row in
5721 &lt;a href=&quot;http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/drivers/gpu/drm/i915/intel_display.c&quot;&gt;the
5722 intel_quirks array&lt;/a&gt; in the driver source
5723 &lt;tt&gt;drivers/gpu/drm/i915/intel_display.c&lt;/tt&gt; (look for &quot;&lt;tt&gt;static
5724 struct intel_quirk intel_quirks&lt;/tt&gt;&quot;), specifying the PCI device
5725 number (vendor number 8086 is assumed) and subdevice vendor and device
5726 number.&lt;/p&gt;
5727
5728 &lt;p&gt;My Packard Bell EasyNote LV got this output from &lt;tt&gt;lspci
5729 -vvnn&lt;/tt&gt; for the video card in question:&lt;/p&gt;
5730
5731 &lt;p&gt;&lt;pre&gt;
5732 00:02.0 VGA compatible controller [0300]: Intel Corporation \
5733 3rd Gen Core processor Graphics Controller [8086:0156] \
5734 (rev 09) (prog-if 00 [VGA controller])
5735 Subsystem: Acer Incorporated [ALI] Device [1025:0688]
5736 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- \
5737 ParErr- Stepping- SE RR- FastB2B- DisINTx+
5738 Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast &gt;TAbort- \
5739 &lt;TAbort- &lt;MAbort-&gt;SERR- &lt;PERR- INTx-
5740 Latency: 0
5741 Interrupt: pin A routed to IRQ 42
5742 Region 0: Memory at c2000000 (64-bit, non-prefetchable) [size=4M]
5743 Region 2: Memory at b0000000 (64-bit, prefetchable) [size=256M]
5744 Region 4: I/O ports at 4000 [size=64]
5745 Expansion ROM at &lt;unassigned&gt; [disabled]
5746 Capabilities: &lt;access denied&gt;
5747 Kernel driver in use: i915
5748 &lt;/pre&gt;&lt;/p&gt;
5749
5750 &lt;p&gt;The resulting intel_quirks entry would then look like this:&lt;/p&gt;
5751
5752 &lt;p&gt;&lt;pre&gt;
5753 struct intel_quirk intel_quirks[] = {
5754 ...
5755 /* Packard Bell EasyNote LV11HC needs invert brightness quirk */
5756 { 0x0156, 0x1025, 0x0688, quirk_invert_brightness },
5757 ...
5758 }
5759 &lt;/pre&gt;&lt;/p&gt;
5760
5761 &lt;p&gt;According to the kernel module instructions (as seen using
5762 &lt;tt&gt;modinfo i915&lt;/tt&gt;), information about hardware needing the
5763 invert_brightness flag should be sent to the
5764 &lt;a href=&quot;http://lists.freedesktop.org/mailman/listinfo/dri-devel&quot;&gt;dri-devel
5765 (at) lists.freedesktop.org&lt;/a&gt; mailing list to reach the kernel
5766 developers. But my email about the laptop sent 2013-06-03 have not
5767 yet shown up in
5768 &lt;a href=&quot;http://lists.freedesktop.org/archives/dri-devel/2013-June/thread.html&quot;&gt;the
5769 web archive for the mailing list&lt;/a&gt;, so I suspect they do not accept
5770 emails from non-subscribers. Because of this, I sent my patch also to
5771 the Debian bug tracking system instead as
5772 &lt;a href=&quot;http://bugs.debian.org/710938&quot;&gt;BTS report #710938&lt;/a&gt;, to make
5773 sure the patch is not lost.&lt;/p&gt;
5774
5775 &lt;p&gt;Unfortunately, it is not enough to fix the kernel to get Laptops
5776 with this problem working properly with Linux. If you use Gnome, your
5777 worries should be over at this point. But if you use KDE, there is
5778 something in KDE ignoring the invert_brightness setting and turning on
5779 the screen during login. I&#39;ve reported it to Debian as
5780 &lt;a href=&quot;http://bugs.debian.org/711237&quot;&gt;BTS report #711237&lt;/a&gt;, and
5781 have no idea yet how to figure out exactly what subsystem is doing
5782 this. Perhaps you can help? Perhaps you know what the Gnome
5783 developers did to handle this, and this can give a clue to the KDE
5784 developers? Or you know where in KDE the screen brightness is changed
5785 during login? If so, please update the BTS report (or get in touch if
5786 you do not know how to update BTS).&lt;/p&gt;
5787
5788 &lt;p&gt;Update 2013-07-19: The correct fix for this machine seem to be
5789 acpi_backlight=vendor, to disable ACPI backlight support completely,
5790 as the ACPI information on the machine is trash and it is better to
5791 leave it to the intel video driver to control the screen
5792 backlight.&lt;/p&gt;
5793 </description>
5794 </item>
5795
5796 <item>
5797 <title>Third alpha release of Debian Edu / Skolelinux based on Debian Wheezy</title>
5798 <link>http://people.skolelinux.org/pere/blog/Third_alpha_release_of_Debian_Edu___Skolelinux_based_on_Debian_Wheezy.html</link>
5799 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Third_alpha_release_of_Debian_Edu___Skolelinux_based_on_Debian_Wheezy.html</guid>
5800 <pubDate>Mon, 10 Jun 2013 22:50:00 +0200</pubDate>
5801 <description>&lt;p&gt;The third wheezy based alpha release of Debian Edu was wrapped up
5802 today. This is the release announcement:&lt;/p&gt;
5803
5804 &lt;p&gt;&lt;strong&gt;New features for Debian Edu 7.0.0 alpha2 released
5805 2013-06-10&lt;/strong&gt;&lt;/p&gt;
5806
5807 &lt;p&gt;This is the release notes for for Debian Edu / Skolelinux 7.0.0 edu
5808 alpha2, based on Debian with codename &quot;Wheezy&quot;.&lt;/p&gt;
5809
5810 &lt;p&gt;&lt;strong&gt;About Debian Edu and Skolelinux&lt;/strong&gt;&lt;/p&gt;
5811
5812 &lt;p&gt;&lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu, also known as
5813 Skolelinux&lt;/a&gt;, is a Linux distribution based on Debian providing an
5814 out-of-the box environment of a completely configured school
5815 network. Immediately after installation a school server running all
5816 services needed for a school network is set up just waiting for users
5817 and machines being added via GOsa², a comfortable Web-UI. A netbooting
5818 environment is prepared using PXE, so after initial installation of
5819 the main server from CD, DVD or USB stick all other machines can be
5820 installed via the network. The provided school server provides LDAP
5821 database and Kerberos authentication service, centralized home
5822 directories, DHCP server, web proxy and many other services. The
5823 desktop contains
5824 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Educational_applications_included_in_Debian_Edu___Skolelinux__the_screenshot_collection____.html&quot;&gt;more
5825 than 60 educational software packages&lt;/a&gt; and more are available from
5826 the Debian archive, and schools can choose between KDE, Gnome, LXDE
5827 and Xfce desktop environment.&lt;/p&gt;
5828
5829 &lt;p&gt;This is the third test release based on Debian Wheezy. Basically
5830 this is an updated and slightly improved version compared to the
5831 Squeeze release.&lt;/p&gt;
5832
5833 &lt;p&gt;&lt;strong&gt;Software updates&lt;/strong&gt;&lt;/p&gt;
5834
5835 &lt;ul&gt;
5836
5837 &lt;li&gt;Iceweasel was updated from 10 to 17. (DSA 2699-1)
5838 &lt;li&gt;Updated libxv (DSA-2674), libxvmc (DSA-2675), libxfixes (DSA-2676), libxrender (DSA-2677), mesa (DSA-2678), xserver-xorg-video-openchrome (DSA-2679), libxt (DSA-2680), libxcursor (DSA-2681), libxext (DSA-2682), libxi (DSA-2683), libxrandr (DSA-2684), libxp (DSA-2685), libxcb (DSA-2686), libfs (DSA-2687), libxres (DSA-2688), libxtst (DSA-2689), libxxf86dga (DSA-2690), libxinerama (DSA-2691), libxxf86vm (DSA-2692), libx11 (DSA-2693), chromium-browser (DSA-2695), gnutls26 (DSA-2697), wireshark (DSA-2700), krb5 (DSA-2701), telepathy-gabble (DSA-2702) and subversion (DSA-2703).
5839 &lt;li&gt;Switched xrdp on thin client servers to use tightvncserver instead of xvnc4.
5840 &lt;li&gt;Now install software oscilloscope xoscope by default.
5841 &lt;li&gt;Now install music tools gtick, lingot and pianobooster by default.
5842
5843 &lt;/ul&gt;
5844
5845 &lt;p&gt;&lt;strong&gt;Other changes&lt;/strong&gt;&lt;/p&gt;
5846
5847 &lt;ul&gt;
5848
5849 &lt;li&gt;The subnet-change script is now able to change all files needing a change on the main-server when changing the IP network used.
5850 &lt;li&gt;Updated translation of the installation.
5851 &lt;li&gt;New Romanian translation.
5852 &lt;li&gt;Fix security problem causing root and first user password to no longer show up in /var/cache/debconf/templates.dat.
5853 &lt;li&gt;Fix roaming workstation setup (Closed in libpam-mklocaluser/0.8, libpam-mklocaluser/0.8~deb7u1: #706753: libpam-mklocaluser: Fail to create local user during first login).
5854 &lt;li&gt;Made roaming workstation setup more robust in non-Debian Edu environments.
5855 &lt;li&gt;New script debian-edu-bless to transform a Debian installation to a Debian Edu profile.
5856 &lt;li&gt;Adjust Iceweasel setup to improve performance when $HOME is on NFS.
5857 &lt;li&gt;More testsuite tests.
5858 &lt;li&gt;Make automatic proxy configuration more robust.
5859 &lt;li&gt;Adjust GOsa² GUI configuration.
5860
5861 &lt;li&gt;Update thin client and diskless workstation setup to work with
5862 LTSP in Wheezy.&lt;/li&gt;
5863
5864 &lt;li&gt;Diskless workstations now run out of the box -- no need to set
5865 them up with GOsa².&lt;/li&gt;
5866
5867 &lt;li&gt;Update IMAP server setup. &lt;/li&gt;
5868
5869 &lt;li&gt;Fix login into Skolelinux Backup Tool (Closed in
5870 slbackup-php/0.4.4-1: #700257: slbackup-php: Fails to submit correctly
5871 entered password). &lt;/li&gt;
5872
5873 &lt;/ul&gt;
5874
5875 &lt;p&gt;&lt;strong&gt;Known issues&lt;/strong&gt;&lt;/p&gt;
5876
5877 &lt;ul&gt;
5878
5879 &lt;li&gt;DVD binary and source images are not yet ready.&lt;/li&gt;
5880
5881 &lt;li&gt;No mass import of user account data in GOsa (ldif or csv)
5882 available yet (Open in gosa/2.7.4-4: #698840: gosa-plugin-ldapmanager:
5883 missing import feature).&lt;/li&gt;
5884
5885 &lt;li&gt;Missing artwork for the KDE desktop (and probably a few others). &lt;/li&gt;
5886
5887 &lt;li&gt;KDE Debian submenu lacks icons (Closed: #502192: menu-xdg: invents
5888 own icon names instead of using existing). This will remain
5889 unfixed.&lt;/li&gt;
5890
5891 &lt;/ul&gt;
5892
5893 &lt;p&gt;&lt;strong&gt;Where to get it&lt;/strong&gt;&lt;/p&gt;
5894
5895 &lt;p&gt;To download the multiarch netinstall CD release you can use&lt;/p&gt;
5896
5897 &lt;ul&gt;
5898
5899 &lt;li&gt;&lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.0+edu0~a2-CD.iso&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.0+edu0~a2-CD.iso&lt;/a&gt;&lt;/li&gt;
5900
5901 &lt;li&gt;&lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.0+edu0~a2-CD.iso&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu-7.0+edu0~a2-CD.iso&lt;/a&gt;&lt;/li&gt;
5902
5903 &lt;li&gt;rsync -avzP ftp.skolelinux.org::skolelinux-cd/wheezy/debian-edu-7.0+edu0~a2-CD.iso .&lt;/li&gt;
5904
5905 &lt;/ul&gt;
5906
5907 &lt;p&gt;The MD5SUM of this image is: 27bbcace407743382f3c42c08dbe8178
5908 &lt;br&gt;The SHA1SUM of this image is: e35f7d7908566cd3075375b3721fa10ee420d419&lt;/p&gt;
5909
5910 &lt;p&gt;&lt;strong&gt;How to report bugs&lt;/strong&gt;&lt;/p&gt;
5911
5912 &lt;p&gt;&lt;a href=&quot;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&quot;&gt;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&lt;/a&gt;
5913 </description>
5914 </item>
5915
5916 <item>
5917 <title>Is there a PHP expert in the building? Debian Edu need help!</title>
5918 <link>http://people.skolelinux.org/pere/blog/Is_there_a_PHP_expert_in_the_building___Debian_Edu_need_help_.html</link>
5919 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Is_there_a_PHP_expert_in_the_building___Debian_Edu_need_help_.html</guid>
5920 <pubDate>Wed, 5 Jun 2013 17:50:00 +0200</pubDate>
5921 <description>&lt;p&gt;Here is a call for help from the Debian Edu / Skolelinux project.
5922 We have two problems blocking the release of the Wheezy version we
5923 hope to get released soon. The two problems require some with PHP
5924 skills, and we seem to lack anyone with both time and PHP skills in
5925 the project:
5926
5927 &lt;ol&gt;
5928
5929 &lt;li&gt;It is impossible to log into the slbackup web interface
5930 (slbackup-php) using the root user and password. This is
5931 &lt;a href=&quot;http://bugs.debian.org/700257&quot;&gt;BTS report #700257&lt;/a&gt;.
5932 This used to work, but stopped working some time since Squeeze.
5933 Perhaps some obsolete PHP feature was used?&lt;/li&gt;
5934
5935 &lt;li&gt;It is not possible to &quot;mass import&quot; user lists in Gosa, neither
5936 using ldif nor using CSV files. The feature was disabled after a
5937 major rewrite of Gosa, and need to be ported to the new system.
5938 This is &lt;a href=&quot;http://bugs.debian.org/698840&quot;&gt;BTS report
5939 #698840&lt;/a&gt;.&lt;/li&gt;
5940
5941 &lt;/ol&gt;
5942
5943 &lt;p&gt;If you can help us, please join us on IRC
5944 (&lt;a href=&quot;irc://irc.debian.org/%23debian-edu&quot;&gt;#debian-edu on
5945 irc.debian.org&lt;/a&gt;) and provide patches via the BTS.&lt;/p&gt;
5946 </description>
5947 </item>
5948
5949 <item>
5950 <title>Debian Edu interview: Cédric Boutillier</title>
5951 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__C_dric_Boutillier.html</link>
5952 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__C_dric_Boutillier.html</guid>
5953 <pubDate>Tue, 4 Jun 2013 10:30:00 +0200</pubDate>
5954 <description>&lt;p&gt;It has been a while since my last English
5955 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu and Skolelinux&lt;/a&gt;
5956 interview last November. But the developers and translators are still
5957 pulling along to get the Wheezy based release out the door, and this
5958 time I managed to get an interview from one of the French translators
5959 in the project, Cédric Boutillier.&lt;/p&gt;
5960
5961 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
5962
5963 &lt;p&gt;I am 34 year old. I live near Paris, France. I am an assistant
5964 professor in probability theory. I spend my daytime teaching
5965 mathematics at the university and doing fundamental research in
5966 probability in connexion with combinatorics and statistical physics.&lt;/p&gt;
5967
5968 &lt;p&gt;I have been involved in the Debian project for a couple of years
5969 and became Debian Developer a few months ago. I am working on Ruby
5970 packaging, publicity and translation.&lt;/p&gt;
5971
5972 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux / Debian Edu
5973 project?&lt;/strong&gt;&lt;/p&gt;
5974
5975 &lt;p&gt;I came to the Debian Edu project after a call for translation of
5976 &lt;a href=&quot;http://wiki.debian.org/DebianEdu/Documentation/Manuals&quot;&gt;the
5977 Debian Edu manual&lt;/a&gt; for the release of Debian Edu Squeeze. Since
5978 then, I have been working on updating the French translation of the
5979 manual.
5980
5981 &lt;p&gt;I had the opportunity to make an installation of Debian Edu in a
5982 virtual machine when I was preparing localised version of some screen
5983 shots for the manual. I was amazed to see it worked out of the box and
5984 how comprehensive the list of software installed by default was.&lt;/p&gt;
5985
5986 &lt;p&gt;What amazed me was the complete network infrastructure directly
5987 ready to use, which can and the nice administration interface provided
5988 by &lt;a href=&quot;https://oss.gonicus.de/labs/gosa/&quot;&gt;GOsa²&lt;/a&gt;. What pleased
5989 me also was the fact that among the software installed by default,
5990 there were many &quot;traditional&quot; educative software to learn languages,
5991 to count, to program... but also software to develop creativity and
5992 artistic skills with music (&lt;a href=&quot;http://ardour.org/&quot;&gt;Ardour&lt;/a&gt;,
5993 &lt;a href=&quot;http://audacity.sourceforge.net/&quot;&gt;Audacity&lt;/a&gt;) and
5994 movies/animation (I was especially thinking of
5995 &lt;a href=&quot;http://linuxstopmotion.sourceforge.net/&quot;&gt;Stopmotion&lt;/a&gt;).&lt;/p&gt;
5996
5997 &lt;p&gt;I am following the development of Debian Edu and am hanging out on
5998 &lt;a href=&quot;irc://irc.debian.org/%23debian-edu&quot;&gt;#debian-edu&lt;/a&gt;.
5999 Unfortunately, I don&#39;t much time to get more involved in this
6000 beautiful project.&lt;/p&gt;
6001
6002 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux / Debian
6003 Edu?&lt;/strong&gt;&lt;/p&gt;
6004
6005 &lt;p&gt;For me, the main advantages of Skolelinux/Debian Edu are its
6006 community of experts and its precise documentation, as well as the
6007 fact that it provides a solution ready to use.&lt;/p&gt;
6008
6009 &lt;p&gt;I would add also the fact that it is based on the rock solid Debian
6010 distribution, which ensures stability and provides a huge collection
6011 of educational free software.&lt;/p&gt;
6012
6013 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux / Debian
6014 Edu?&lt;/strong&gt;&lt;/p&gt;
6015
6016 &lt;p&gt;Maybe the lack of manpower to do lobbying on the
6017 project. Sometimes, people who need to take decisions concerning IT do
6018 not have all the elements to evaluate properly free software
6019 solutions. The fact that support by a company may be difficult to find
6020 is probably a problem if the school does not have IT personnel.&lt;/p&gt;
6021
6022 &lt;p&gt;One can find support from a company by looking at
6023 &lt;a href=&quot;http://wiki.debian.org/DebianEdu/Help/ProfessionalHelp&quot;&gt;the
6024 wiki dokumentation&lt;/a&gt;, where some countries already have a number of
6025 companies providing support for Debian Edu, like Germany or
6026 Norway. This list is easy to find readily from the manual. However,
6027 for other countries, like France, the list is empty. I guess that
6028 consultants proposing support for Debian would be able to provide some
6029 support for Debian Edu as well.&lt;/p&gt;
6030
6031 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
6032
6033 &lt;p&gt;I am using the KDE Plasma Desktop. But the pieces of software I use
6034 most runs in a terminal: Mutt and OfflineIMAP for emails, latex for
6035 scientific documents, mpd for music. VIM is my editor of choice. I am
6036 also using the mathematical software
6037 &lt;a href=&quot;http://www.scilab.org/en/scilab/about‎&quot;&gt;Scilab&lt;/a&gt; and
6038 &lt;a href=&quot;http://www.sagemath.org/index.html‎&quot;&gt;Sage&lt;/a&gt; (built from
6039 source as not completely packaged for Debian, yet).
6040
6041 &lt;p&gt;&lt;strong&gt;Do you have any suggestions for teachers interested in
6042 using the free software in Debian to teach mathematics and
6043 statistics?&lt;/strong&gt;&lt;/p&gt;
6044
6045 &lt;p&gt;I do not have any &quot;nice&quot; recommendations for statistics. At our
6046 university, we use both &lt;a href=&quot;http://www.r-project.org/‎&quot;&gt;R&lt;/a&gt; and
6047 Scilab to teach statistics and probabilistic simulations. For
6048 geometry, there are nice programs:&lt;/p&gt;
6049
6050 &lt;ul&gt;
6051
6052 &lt;li&gt;&lt;a href=&quot;http://www.drgeo.eu/&quot;&gt;drgeo&lt;/a&gt; and
6053 &lt;a href=&quot;http://edu.kde.org/applications/all/kig‎&quot;&gt;kig&lt;/a&gt; to do
6054 constructions in planar geometry
6055
6056 &lt;li&gt;&lt;a href=&quot;http://www.geom.uiuc.edu/software/download/kali.html&quot;&gt;kali&lt;/a&gt;
6057 to discover symmetry groups (the so-called wallpapers and frieze
6058 groups), although the interface looks a bit old.&lt;/li&gt;
6059
6060 &lt;/ul&gt;
6061
6062 &lt;p&gt;I like also
6063 &lt;a href=&quot;http://edu.kde.org/applications/all/cantor&quot;&gt;cantor&lt;/a&gt;, which
6064 provides a uniform interface to SciLab, Sage,
6065 &lt;a href=&quot;http://directory.fsf.org/wiki/Octave‎&quot;&gt;Octave&lt;/a&gt;, etc...&lt;/p&gt;
6066
6067 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
6068 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
6069
6070 &lt;p&gt;My suggestions would be to&lt;/p&gt;
6071
6072 &lt;ul&gt;
6073
6074 &lt;li&gt;advertise the reduction of costs when free software is used.&lt;/li&gt;
6075
6076 &lt;li&gt;communicate about the quality of free software projects, using
6077 well known examples like Firefox, ThunderBird and
6078 OpenOffice.org/LibreOffice.&lt;/li&gt;
6079
6080 &lt;li&gt;advertise the living and strong community around the project.&lt;/li&gt;
6081
6082 &lt;li&gt;show that it is not more difficult to use than any other
6083 system.&lt;/li&gt;
6084
6085 &lt;/ul&gt;
6086 </description>
6087 </item>
6088
6089 <item>
6090 <title>Educational applications included in Debian Edu / Skolelinux (the screenshot collection :-)</title>
6091 <link>http://people.skolelinux.org/pere/blog/Educational_applications_included_in_Debian_Edu___Skolelinux__the_screenshot_collection____.html</link>
6092 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Educational_applications_included_in_Debian_Edu___Skolelinux__the_screenshot_collection____.html</guid>
6093 <pubDate>Sat, 1 Jun 2013 23:50:00 +0200</pubDate>
6094 <description>&lt;p&gt;Included in &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu /
6095 Skolelinux&lt;/a&gt;, there are quite a lot of educational software.
6096 Created to help teachers teach, and pupils learn. We have tried to
6097 tag them all using debtags use::learning and role::program, and using
6098 the debtags I was happy to be able to create a collage of the
6099 educational software packages installed by default, sorted by the
6100 debtag field. Here it is. Click on a image to learn more about the
6101 program.&lt;/p&gt;
6102
6103 &lt;!-- for f in $(debtags tagcat|grep field::|awk &#39;{print $2}&#39;); do echo; echo &quot;&lt;p&gt;&lt;strong&gt;$f&lt;/strong&gt;&lt;/p&gt;&quot;; echo &quot;&lt;p&gt;&quot;; ( for p in $(debtags search --names &quot;use::learning &amp;&amp; interface::x11 &amp;&amp; role::program &amp;&amp; $f&quot;); do img=&quot;&lt;img src=&#39;http://screenshots.debian.net/thumbnail/$p&#39; alt=&#39;$p&#39;&gt;&quot;; if dpkg -s $p &gt; /dev/null 2&gt;&amp;1; then echo &quot;&lt;a href=&#39;http://packages.qa.debian.org/$p&#39;&gt;$img&lt;/a&gt;&quot;; fi; done; ) | LANG=C sort; echo &quot;&lt;/p&gt;&quot;; done --&gt;
6104
6105 &lt;p&gt;&lt;strong&gt;field::arts&lt;/strong&gt;&lt;/p&gt;
6106 &lt;p&gt;
6107 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=audacity&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/audacity.png&#39; alt=&#39;audacity&#39;&gt;&lt;/a&gt;
6108 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=childsplay&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/childsplay.png&#39; alt=&#39;childsplay&#39;&gt;&lt;/a&gt;
6109 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=denemo&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/denemo.png&#39; alt=&#39;denemo&#39;&gt;&lt;/a&gt;
6110 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=freebirth&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/freebirth.png&#39; alt=&#39;freebirth&#39;&gt;&lt;/a&gt;
6111 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gcompris&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gcompris.png&#39; alt=&#39;gcompris&#39;&gt;&lt;/a&gt;
6112 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gimp&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gimp.png&#39; alt=&#39;gimp&#39;&gt;&lt;/a&gt;
6113 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=hydrogen&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/hydrogen.png&#39; alt=&#39;hydrogen&#39;&gt;&lt;/a&gt;
6114 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=lilypond&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/lilypond.png&#39; alt=&#39;lilypond&#39;&gt;&lt;/a&gt;
6115 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=lmms&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/lmms.png&#39; alt=&#39;lmms&#39;&gt;&lt;/a&gt;
6116 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=rosegarden&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/rosegarden.png&#39; alt=&#39;rosegarden&#39;&gt;&lt;/a&gt;
6117 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=scribus&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/scribus.png&#39; alt=&#39;scribus&#39;&gt;&lt;/a&gt;
6118 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=solfege&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/solfege.png&#39; alt=&#39;solfege&#39;&gt;&lt;/a&gt;
6119 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=stopmotion&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/stopmotion.png&#39; alt=&#39;stopmotion&#39;&gt;&lt;/a&gt;
6120 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=tuxpaint&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/tuxpaint.png&#39; alt=&#39;tuxpaint&#39;&gt;&lt;/a&gt;
6121 &lt;/p&gt;
6122
6123 &lt;p&gt;&lt;strong&gt;field::astronomy&lt;/strong&gt;&lt;/p&gt;
6124 &lt;p&gt;
6125 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=celestia-gnome&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/celestia-gnome.png&#39; alt=&#39;celestia-gnome&#39;&gt;&lt;/a&gt;
6126 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gpredict&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gpredict.png&#39; alt=&#39;gpredict&#39;&gt;&lt;/a&gt;
6127 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=kstars&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/kstars.png&#39; alt=&#39;kstars&#39;&gt;&lt;/a&gt;
6128 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=planets&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/planets.png&#39; alt=&#39;planets&#39;&gt;&lt;/a&gt;
6129 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=stellarium&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/stellarium.png&#39; alt=&#39;stellarium&#39;&gt;&lt;/a&gt;
6130 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=xplanet&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/xplanet.png&#39; alt=&#39;xplanet&#39;&gt;&lt;/a&gt;
6131 &lt;/p&gt;
6132
6133 &lt;p&gt;&lt;strong&gt;field::biology:structural&lt;/strong&gt;&lt;/p&gt;
6134 &lt;p&gt;
6135 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=pymol&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/pymol.png&#39; alt=&#39;pymol&#39;&gt;&lt;/a&gt;
6136 &lt;/p&gt;
6137
6138 &lt;p&gt;&lt;strong&gt;field::chemistry&lt;/strong&gt;&lt;/p&gt;
6139 &lt;p&gt;
6140 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=atomix&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/atomix.png&#39; alt=&#39;atomix&#39;&gt;&lt;/a&gt;
6141 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=chemtool&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/chemtool.png&#39; alt=&#39;chemtool&#39;&gt;&lt;/a&gt;
6142 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=easychem&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/easychem.png&#39; alt=&#39;easychem&#39;&gt;&lt;/a&gt;
6143 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gchempaint&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gchempaint.png&#39; alt=&#39;gchempaint&#39;&gt;&lt;/a&gt;
6144 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gdis&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gdis.png&#39; alt=&#39;gdis&#39;&gt;&lt;/a&gt;
6145 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=ghemical&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/ghemical.png&#39; alt=&#39;ghemical&#39;&gt;&lt;/a&gt;
6146 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gperiodic&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gperiodic.png&#39; alt=&#39;gperiodic&#39;&gt;&lt;/a&gt;
6147 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=kalzium&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/kalzium.png&#39; alt=&#39;kalzium&#39;&gt;&lt;/a&gt;
6148 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=pymol&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/pymol.png&#39; alt=&#39;pymol&#39;&gt;&lt;/a&gt;
6149 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=viewmol&#39;&gt;[viewmol]&lt;/a&gt;
6150 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=xdrawchem&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/xdrawchem.png&#39; alt=&#39;xdrawchem&#39;&gt;&lt;/a&gt;
6151 &lt;/p&gt;
6152
6153 &lt;p&gt;&lt;strong&gt;field::electronics&lt;/strong&gt;&lt;/p&gt;
6154 &lt;p&gt;
6155 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gcompris&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gcompris.png&#39; alt=&#39;gcompris&#39;&gt;&lt;/a&gt;
6156 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gpsim&#39;&gt;[gpsim]&lt;/a&gt;
6157 &lt;/p&gt;
6158
6159 &lt;p&gt;&lt;strong&gt;field::geography&lt;/strong&gt;&lt;/p&gt;
6160 &lt;p&gt;
6161 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=kgeography&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/kgeography.png&#39; alt=&#39;kgeography&#39;&gt;&lt;/a&gt;
6162 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=marble&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/marble.png&#39; alt=&#39;marble&#39;&gt;&lt;/a&gt;
6163 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=xplanet&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/xplanet.png&#39; alt=&#39;xplanet&#39;&gt;&lt;/a&gt;
6164 &lt;/p&gt;
6165
6166 &lt;p&gt;&lt;strong&gt;field::linguistics&lt;/strong&gt;&lt;/p&gt;
6167 &lt;p&gt;
6168 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gcompris&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gcompris.png&#39; alt=&#39;gcompris&#39;&gt;&lt;/a&gt;
6169 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=kanagram&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/kanagram.png&#39; alt=&#39;kanagram&#39;&gt;&lt;/a&gt;
6170 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=khangman&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/khangman.png&#39; alt=&#39;khangman&#39;&gt;&lt;/a&gt;
6171 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=klettres&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/klettres.png&#39; alt=&#39;klettres&#39;&gt;&lt;/a&gt;
6172 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=parley&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/parley.png&#39; alt=&#39;parley&#39;&gt;&lt;/a&gt;
6173 &lt;/p&gt;
6174
6175 &lt;p&gt;&lt;strong&gt;field::mathematics&lt;/strong&gt;&lt;/p&gt;
6176 &lt;p&gt;
6177 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=childsplay&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/childsplay.png&#39; alt=&#39;childsplay&#39;&gt;&lt;/a&gt;
6178 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=drgeo&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/drgeo.png&#39; alt=&#39;drgeo&#39;&gt;&lt;/a&gt;
6179 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gcompris&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gcompris.png&#39; alt=&#39;gcompris&#39;&gt;&lt;/a&gt;
6180 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=geogebra&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/geogebra.png&#39; alt=&#39;geogebra&#39;&gt;&lt;/a&gt;
6181 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=geomview&#39;&gt;[geomview]&lt;/a&gt;
6182 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=grace&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/grace.png&#39; alt=&#39;grace&#39;&gt;&lt;/a&gt;
6183 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=graphmonkey&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/graphmonkey.png&#39; alt=&#39;graphmonkey&#39;&gt;&lt;/a&gt;
6184 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=graphthing&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/graphthing.png&#39; alt=&#39;graphthing&#39;&gt;&lt;/a&gt;
6185 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=kalgebra&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/kalgebra.png&#39; alt=&#39;kalgebra&#39;&gt;&lt;/a&gt;
6186 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=kbruch&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/kbruch.png&#39; alt=&#39;kbruch&#39;&gt;&lt;/a&gt;
6187 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=kig&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/kig.png&#39; alt=&#39;kig&#39;&gt;&lt;/a&gt;
6188 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=kmplot&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/kmplot.png&#39; alt=&#39;kmplot&#39;&gt;&lt;/a&gt;
6189 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=mathwar&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/mathwar.png&#39; alt=&#39;mathwar&#39;&gt;&lt;/a&gt;
6190 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=rocs&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/rocs.png&#39; alt=&#39;rocs&#39;&gt;&lt;/a&gt;
6191 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=scratch&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/scratch.png&#39; alt=&#39;scratch&#39;&gt;&lt;/a&gt;
6192 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=tuxmath&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/tuxmath.png&#39; alt=&#39;tuxmath&#39;&gt;&lt;/a&gt;
6193 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=xabacus&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/xabacus.png&#39; alt=&#39;xabacus&#39;&gt;&lt;/a&gt;
6194 &lt;/p&gt;
6195
6196 &lt;p&gt;&lt;strong&gt;field::physics&lt;/strong&gt;&lt;/p&gt;
6197 &lt;p&gt;
6198 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gcompris&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gcompris.png&#39; alt=&#39;gcompris&#39;&gt;&lt;/a&gt;
6199 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=step&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/step.png&#39; alt=&#39;step&#39;&gt;&lt;/a&gt;
6200 &lt;/p&gt;
6201
6202 &lt;p&gt;&lt;strong&gt;field::TODO&lt;/strong&gt;&lt;/p&gt;
6203 &lt;p&gt;
6204 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=blinken&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/blinken.png&#39; alt=&#39;blinken&#39;&gt;&lt;/a&gt;
6205 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=cgoban&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/cgoban.png&#39; alt=&#39;cgoban&#39;&gt;&lt;/a&gt;
6206 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=childsplay&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/childsplay.png&#39; alt=&#39;childsplay&#39;&gt;&lt;/a&gt;
6207 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gcompris&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gcompris.png&#39; alt=&#39;gcompris&#39;&gt;&lt;/a&gt;
6208 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gnuchess&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gnuchess.png&#39; alt=&#39;gnuchess&#39;&gt;&lt;/a&gt;
6209 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gnugo&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gnugo.png&#39; alt=&#39;gnugo&#39;&gt;&lt;/a&gt;
6210 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=gtans&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/gtans.png&#39; alt=&#39;gtans&#39;&gt;&lt;/a&gt;
6211 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=ktouch&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/ktouch.png&#39; alt=&#39;ktouch&#39;&gt;&lt;/a&gt;
6212 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=librecad&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/librecad.png&#39; alt=&#39;librecad&#39;&gt;&lt;/a&gt;
6213 &lt;a href=&#39;http://packages.debian.org/search?searchon=names&amp;exact=1&amp;suite=all&amp;section=all&amp;keywords=scratch&#39;&gt;&lt;img src=&#39;http://people.skolelinux.org/pere/blog/images/2013-06-01-debian-edu-apps/scratch.png&#39; alt=&#39;scratch&#39;&gt;&lt;/a&gt;
6214 &lt;/p&gt;
6215
6216 &lt;p&gt;In total, 61 applications. 3 of them lacked screen shots on
6217 &lt;a href=&quot;http://screenshot.debian.net&quot;&gt;screenshot.debian.net&lt;/a&gt;. If
6218 you know of some packages we should install by default, please let us
6219 know on &lt;a href=&quot;irc://irc.debian.org/%23debian-edu&quot;&gt;IRC, #debian-edu
6220 on irc.debian.org&lt;/a&gt;, or our
6221 &lt;a href=&quot;http://lists.debian.org/debian-edu/&quot;&gt;mailing list
6222 debian-edu@&lt;/a&gt;.&lt;/p&gt;
6223 </description>
6224 </item>
6225
6226 <item>
6227 <title>How to install Linux on a Packard Bell Easynote LV preinstalled with Windows 8</title>
6228 <link>http://people.skolelinux.org/pere/blog/How_to_install_Linux_on_a_Packard_Bell_Easynote_LV_preinstalled_with_Windows_8.html</link>
6229 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/How_to_install_Linux_on_a_Packard_Bell_Easynote_LV_preinstalled_with_Windows_8.html</guid>
6230 <pubDate>Mon, 27 May 2013 15:20:00 +0200</pubDate>
6231 <description>&lt;p&gt;Two days ago, I asked
6232 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/How_can_I_install_Linux_on_a_Packard_Bell_Easynote_LV_preinstalled_with_Windows_8_.html&quot;&gt;how
6233 I could install Linux on a Packard Bell EasyNote LV computer
6234 preinstalled with Windows 8&lt;/a&gt;. I found a solution, but am horrified
6235 with the obstacles put in the way of Linux users on a laptop with UEFI
6236 and Windows 8.&lt;/p&gt;
6237
6238 &lt;p&gt;I never found out if the cause of my problems were the use of UEFI
6239 secure booting or fast boot. I suspect fast boot was the problem,
6240 causing the firmware to boot directly from HD without considering any
6241 key presses and alternative devices, but do not know UEFI settings
6242 enough to tell.&lt;/p&gt;
6243
6244 &lt;p&gt;There is no way to install Linux on the machine in question without
6245 opening the box and disconnecting the hard drive! This is as far as I
6246 can tell, the only way to get access to the firmware setup menu
6247 without accepting the Windows 8 license agreement. I am told (and
6248 found description on how to) that it is possible to configure the
6249 firmware setup once booted into Windows 8. But as I believe the terms
6250 of that agreement are completely unacceptable, accepting the license
6251 was never an alternative. I do not enter agreements I do not intend
6252 to follow.&lt;/p&gt;
6253
6254 &lt;p&gt;I feared I had to return the laptops and ask for a refund, and
6255 waste many hours on this, but luckily there was a way to get it to
6256 work. But I would not recommend it to anyone planning to run Linux on
6257 it, and I have become sceptical to Windows 8 certified laptops. Is
6258 this the way Linux will be forced out of the market place, by making
6259 it close to impossible for &quot;normal&quot; users to install Linux without
6260 accepting the Microsoft Windows license terms? Or at least not
6261 without risking to loose the warranty?&lt;/p&gt;
6262
6263 &lt;p&gt;I&#39;ve updated the
6264 &lt;a href=&quot;http://www.linlap.com/packard_bell_easynote_lv&quot;&gt;Linux Laptop
6265 wiki page for Packard Bell EasyNote LV&lt;/a&gt;, to ensure the next person
6266 do not have to struggle as much as I did to get Linux into the
6267 machine.&lt;/p&gt;
6268
6269 &lt;p&gt;Thanks to Bob Rosbag, Florian Weimer, Philipp Kern, Ben Hutching,
6270 Michael Tokarev and others for feedback and ideas.&lt;/p&gt;
6271 </description>
6272 </item>
6273
6274 <item>
6275 <title>How can I install Linux on a Packard Bell Easynote LV preinstalled with Windows 8?</title>
6276 <link>http://people.skolelinux.org/pere/blog/How_can_I_install_Linux_on_a_Packard_Bell_Easynote_LV_preinstalled_with_Windows_8_.html</link>
6277 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/How_can_I_install_Linux_on_a_Packard_Bell_Easynote_LV_preinstalled_with_Windows_8_.html</guid>
6278 <pubDate>Sat, 25 May 2013 18:20:00 +0200</pubDate>
6279 <description>&lt;p&gt;I&#39;ve run into quite a problem the last few days. I bought three
6280 new laptops for my parents and a few others. I bought Packard Bell
6281 Easynote LV to run Kubuntu on and use as their home computer. But I
6282 am completely unable to figure out how to install Linux on it. The
6283 computer is preinstalled with Windows 8, and I suspect it uses UEFI
6284 instead of a BIOS to boot.&lt;/p&gt;
6285
6286 &lt;p&gt;The problem is that I am unable to get it to PXE boot, and unable
6287 to get it to boot the Linux installer from my USB stick. I have yet
6288 to try the DVD install, and still hope it will work. when I turn on
6289 the computer, there is no information on what buttons to press to get
6290 the normal boot menu. I expect to get some boot menu to select PXE or
6291 USB stick booting. When booting, it first ask for the language to
6292 use, then for some regional settings, and finally if I will accept the
6293 Windows 8 terms of use. As these terms are completely unacceptable to
6294 me, I have no other choice but to turn off the computer and try again
6295 to get it to boot the Linux installer.&lt;/p&gt;
6296
6297 &lt;p&gt;I have gathered my findings so far on a Linlap page about the
6298 &lt;a href=&quot;http://www.linlap.com/packard_bell_easynote_lv&quot;&gt;Packard Bell
6299 EasyNote LV&lt;/a&gt; model. If you have any idea how to get Linux
6300 installed on this machine, please get in touch or update that wiki
6301 page. If I can&#39;t find a way to install Linux, I will have to return
6302 the laptop to the seller and find another machine for my parents.&lt;/p&gt;
6303
6304 &lt;p&gt;I wonder, is this the way Linux will be forced out of the market
6305 using UEFI and &quot;secure boot&quot; by making it impossible to install Linux
6306 on new Laptops?&lt;/p&gt;
6307 </description>
6308 </item>
6309
6310 <item>
6311 <title>How to transform a Debian based system to a Debian Edu installation</title>
6312 <link>http://people.skolelinux.org/pere/blog/How_to_transform_a_Debian_based_system_to_a_Debian_Edu_installation.html</link>
6313 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/How_to_transform_a_Debian_based_system_to_a_Debian_Edu_installation.html</guid>
6314 <pubDate>Fri, 17 May 2013 11:50:00 +0200</pubDate>
6315 <description>&lt;p&gt;&lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt; is
6316 an operating system based on Debian intended for use in schools. It
6317 contain a turn-key solution for the computer network provided to
6318 pupils in the primary schools. It provide both the central server,
6319 network boot servers and desktop environments with heaps of
6320 educational software. The project was founded almost 12 years ago,
6321 2001-07-02. If you want to support the project, which is in need for
6322 cash to fund developer gatherings and other project related activity,
6323 &lt;a href=&quot;http://www.linuxiskolen.no/slxdebianlabs/donations.html&quot;&gt;please
6324 donate some money&lt;/a&gt;.
6325
6326 &lt;p&gt;A topic that come up again and again on the Debian Edu mailing
6327 lists and elsewhere, is the question on how to transform a Debian or
6328 Ubuntu installation into a Debian Edu installation. It isn&#39;t very
6329 hard, and last week I wrote a script to replicate the steps done by
6330 the Debian Edu installer.&lt;/p&gt;
6331
6332 &lt;p&gt;The script,
6333 &lt;a href=&quot;http://anonscm.debian.org/viewvc/debian-edu/branches/wheezy/debian-edu-config/share/debian-edu-config/tools/debian-edu-bless?view=markup&quot;&gt;debian-edu-bless&lt;a/&gt;
6334 in the debian-edu-config package, will go through these six steps and
6335 transform an existing Debian Wheezy or Ubuntu (untested) installation
6336 into a Debian Edu Workstation:&lt;/p&gt;
6337
6338 &lt;ol&gt;
6339
6340 &lt;li&gt;Add skolelinux related APT sources.&lt;/li&gt;
6341 &lt;li&gt;Create /etc/debian-edu/config with the wanted configuration.&lt;/li&gt;
6342 &lt;li&gt;Install debian-edu-install to load preseeding values and pull in
6343 our configuration.&lt;/li&gt;
6344 &lt;li&gt;Preseed debconf database with profile setup in
6345 /etc/debian-edu/config, and run tasksel to install packages
6346 according to the profile specified in the config above,
6347 overriding some of the Debian automation machinery.&lt;/li&gt;
6348 &lt;li&gt;Run debian-edu-cfengine-D installation to configure everything
6349 that could not be done using preseeding.&lt;/li&gt;
6350 &lt;li&gt;Ask for a reboot to enable all the configuration changes.&lt;/li&gt;
6351
6352 &lt;/ol&gt;
6353
6354 &lt;p&gt;There are some steps in the Debian Edu installation that can not be
6355 replicated like this. Disk partitioning and LVM setup, for example.
6356 So this script just assume there is enough disk space to install all
6357 the needed packages.&lt;/p&gt;
6358
6359 &lt;p&gt;The script was created to help a Debian Edu student working on
6360 setting up &lt;a href=&quot;http://www.raspberrypi.org&quot;&gt;Raspberry Pi&lt;/a&gt; as a
6361 Debian Edu client, and using it he can take the existing
6362 &lt;a href=&quot;http://www.raspbian.org/FrontPage‎&quot;&gt;Raspbian&lt;/a&gt; installation and
6363 transform it into a fully functioning Debian Edu Workstation (or
6364 Roaming Workstation, or whatever :).&lt;/p&gt;
6365
6366 &lt;p&gt;The default setting in the script is to create a KDE Workstation.
6367 If a LXDE based Roaming workstation is wanted instead, modify the
6368 PROFILE and DESKTOP values at the top to look like this instead:&lt;/p&gt;
6369
6370 &lt;p&gt;&lt;pre&gt;
6371 PROFILE=&quot;Roaming-Workstation&quot;
6372 DESKTOP=&quot;lxde&quot;
6373 &lt;/pre&gt;&lt;/p&gt;
6374
6375 &lt;p&gt;The script could even become useful to set up Debian Edu servers in
6376 the cloud, by starting with a virtual Debian installation at some
6377 virtual hosting service and setting up all the services on first
6378 boot.&lt;/p&gt;
6379 </description>
6380 </item>
6381
6382 <item>
6383 <title>Second alpha release of Debian Edu / Skolelinux based on Debian Wheezy</title>
6384 <link>http://people.skolelinux.org/pere/blog/Second_alpha_release_of_Debian_Edu___Skolelinux_based_on_Debian_Wheezy.html</link>
6385 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Second_alpha_release_of_Debian_Edu___Skolelinux_based_on_Debian_Wheezy.html</guid>
6386 <pubDate>Tue, 14 May 2013 23:30:00 +0200</pubDate>
6387 <description>&lt;p&gt;The &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux
6388 project&lt;/a&gt; is making great progress and made its second Wheezy based
6389 release today. This is the release announcement:&lt;/p&gt;
6390
6391 &lt;p&gt;&lt;strong&gt;New features for Debian Edu 7.0.0 alpha1 released
6392 2013-05-14&lt;/strong&gt;&lt;/p&gt;
6393
6394 &lt;p&gt;This is the release notes for for Debian Edu / Skolelinux 7.0.0 edu
6395 alpha1, based on &lt;a href=&quot;http://www.debian.org&quot;&gt;Debian&lt;/a&gt; with
6396 codename &quot;Wheezy&quot;.&lt;/p&gt;
6397
6398 &lt;p&gt;&lt;strong&gt;About Debian Edu and Skolelinux&lt;/strong&gt;&lt;/p&gt;
6399
6400 &lt;p&gt;Debian Edu, also known as Skolelinux, is a Linux distribution based
6401 on Debian providing an out-of-the box environment of a completely
6402 configured school network. Immediatly after installation a school
6403 server running all services needed for a school network is set up just
6404 waiting for users and machines being added via GOsa², a comfortable
6405 Web-UI. A netbooting environment is prepared using PXE, so after
6406 initial installation of the main server from CD, DVD or USB stick all
6407 other machines can be installed via the network.&lt;/p&gt;
6408
6409 &lt;p&gt;This is the first test release based on Wheezy (which currently is
6410 not released yet). Basically this is an updated and slightly improved
6411 version compared to the Squeeze release.&lt;/p&gt;
6412
6413 &lt;p&gt;&lt;strong&gt;Software updates&lt;/strong&gt;&lt;/p&gt;
6414 &lt;ul&gt;
6415 &lt;li&gt;Install freemind (0.9.0) by default, and stop installing vym by
6416 default.&lt;/li&gt;
6417 &lt;li&gt;Install chromium (26.0.1410.43) by default.&lt;/li&gt;
6418 &lt;li&gt;Install goplay (0.5-1.1) to make golearn available by default.&lt;/li&gt;
6419 &lt;li&gt;Updated support for Japanese input methods, now based on
6420 ibus-anthy.&lt;/li&gt;
6421 &lt;/ul&gt;
6422
6423 &lt;p&gt;&lt;strong&gt;Other changes&lt;/strong&gt;&lt;/p&gt;
6424 &lt;ul&gt;
6425
6426 &lt;li&gt;Switched default file system from ext3 to ext4 for speed and
6427 reliability improvements.&lt;/li&gt;
6428 &lt;li&gt;Got rid of unwanted winbind daemon and PAM setup activated because
6429 of &lt;a href=&quot;http://bugs.debian.org/706434&quot;&gt;706434&lt;/a&gt;.&lt;/li&gt;
6430 &lt;li&gt;Extended and improved the testsuite tests to detect more possible
6431 problems.&lt;/li&gt;
6432 &lt;li&gt;Corrected proxy handling to not set http_proxy to a bogus
6433 direct:// URL.&lt;/li&gt;
6434 &lt;li&gt;Corrected proxy setup for diskless workstations.&lt;/li&gt;
6435 &lt;li&gt;Corrected PXE setup to use our updated udebs during installation.&lt;/li&gt;
6436 &lt;li&gt;Made installation handling of low entropy level more robust.&lt;/li&gt;
6437 &lt;li&gt;Create larger partitions for Roaming workstations and Thin client
6438 servers, to make room for all the software installed.&lt;/li&gt;
6439 &lt;li&gt;Fix bug in Roaming workstation PAM setup, making it impossible to
6440 log in (&lt;a href=&quot;http://bugs.debian.org/706753&quot;&gt;706753&lt;/a&gt;).&lt;/li&gt;
6441 &lt;/ul&gt;
6442
6443 &lt;p&gt;&lt;strong&gt;Known issues&lt;/strong&gt;&lt;/p&gt;
6444 &lt;ul&gt;
6445
6446 &lt;li&gt;IP resolution for the local hostname give useless IPv6 address
6447 (&lt;a href=&quot;http://bugs.debian.org/705900&quot;&gt;705900&lt;/a&gt;). Only install
6448 libnss-myhostname on roaming workstations until it is fixed.&lt;/li&gt;
6449 &lt;li&gt;DVD images are not yet ready.&lt;/li&gt;
6450 &lt;li&gt;No mass import of user account data in GOsa (ldif or csv)
6451 available yet (&lt;a href=&quot;http://bugs.debian.org/698840&quot;&gt;698840&lt;/a&gt;).&lt;/li&gt;
6452 &lt;li&gt;Missing artwork for the KDE desktop (and probably a few others).&lt;/li&gt;
6453 &lt;li&gt;KDE Debian submenu lacks icons.&lt;/li&gt;
6454 &lt;li&gt;LXDE menu lacks entry for changing GOsa password
6455 (website). Installing gosa-desktop will be an option.&lt;/li&gt;
6456 &lt;li&gt;Backup configuration via web interface is impossible due to
6457 password submission problem
6458 (&lt;a href=&quot;http://bugs.debian.org/700257&quot;&gt;700257&lt;/a&gt;).&lt;/li&gt;
6459
6460 &lt;/ul&gt;
6461
6462 &lt;p&gt;&lt;strong&gt;Where to get it&lt;/strong&gt;&lt;/p&gt;
6463
6464 &lt;p&gt;To download the multiarch netinstall CD release you can use&lt;/p&gt;
6465 &lt;ul&gt;
6466
6467 &lt;li&gt;&lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu~7.0+edu0~a1-CD.iso&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu~7.0+edu0~a1-CD.iso&lt;/a&gt;&lt;/li&gt;
6468 &lt;li&gt;&lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu~7.0+edu0~a1-CD.iso&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/wheezy/debian-edu~7.0+edu0~a1-CD.iso&lt;/a&gt;&lt;/li&gt;
6469 &lt;li&gt;rsync -avzP ftp.skolelinux.org::skolelinux-cd/wheezy/debian-edu~7.0+edu0~a1-CD.iso debian-edu~7.0+edu0~a1-CD.iso&lt;/li&gt;
6470
6471 &lt;/ul&gt;
6472
6473 &lt;p&gt;The MD5SUM of this image is: 685ed76c1aa8e44b12d3fde21faf450b&lt;/p&gt;
6474
6475 &lt;p&gt;The SHA1SUM of this image is: 6c874de157024da13e115bab29c068080a11ec4c&lt;/p&gt;
6476
6477 &lt;p&gt;&lt;strong&gt;How to report bugs&lt;/strong&gt;&lt;/p&gt;
6478
6479 &lt;p&gt;&lt;a href=&quot;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&quot;&gt;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&lt;/a&gt;&lt;/p&gt;
6480 </description>
6481 </item>
6482
6483 <item>
6484 <title>Debian, the Linux distribution of choice for LEGO designers?</title>
6485 <link>http://people.skolelinux.org/pere/blog/Debian__the_Linux_distribution_of_choice_for_LEGO_designers_.html</link>
6486 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian__the_Linux_distribution_of_choice_for_LEGO_designers_.html</guid>
6487 <pubDate>Sat, 11 May 2013 20:30:00 +0200</pubDate>
6488 <description>&lt;P&gt;In January,
6489 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/New_IRC_channel_for_LEGO_designers_using_Debian.html&quot;&gt;I
6490 announced a&lt;/a&gt; new &lt;a href=&quot;irc://irc.debian.org/%23debian-lego&quot;&gt;IRC
6491 channel #debian-lego&lt;/a&gt;, for those of us in the Debian and Linux
6492 community interested in &lt;a href=&quot;http://www.lego.com/&quot;&gt;LEGO&lt;/a&gt;, the
6493 marvellous construction system from Denmark. We also created
6494 &lt;a href=&quot;http://wiki.debian.org/LegoDesigners&quot;&gt;a wiki page&lt;/a&gt; to have
6495 a place to take notes and write down our plans and hopes. And several
6496 people showed up to help. I was very happy to see the effect of my
6497 call. Since the small start, we have a debtags tag
6498 &lt;a href=&quot;http://debtags.debian.net/search/bytag?wl=hardware::hobby:lego&quot;&gt;hardware::hobby:lego&lt;/a&gt;
6499 tag for LEGO related packages, and now count 10 packages related to
6500 LEGO and &lt;a href=&quot;http://mindstorms.lego.com/&quot;&gt;Mindstorms&lt;/a&gt;:&lt;/p&gt;
6501
6502 &lt;p&gt;&lt;table&gt;
6503 &lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://packages.qa.debian.org/brickos&quot;&gt;brickos&lt;/a&gt;&lt;/td&gt;&lt;td&gt;alternative OS for LEGO Mindstorms RCX. Supports development in C/C++&lt;/td&gt;&lt;/tr&gt;
6504 &lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://packages.qa.debian.org/leocad&quot;&gt;leocad&lt;/a&gt;&lt;/td&gt;&lt;td&gt;virtual brick CAD software&lt;/td&gt;&lt;/tr&gt;
6505 &lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://packages.qa.debian.org/libnxt&quot;&gt;libnxt&lt;/a&gt;&lt;/td&gt;&lt;td&gt;utility library for talking to the LEGO Mindstorms NX&lt;/td&gt;&lt;/tr&gt;
6506 &lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://packages.qa.debian.org/lnpd&quot;&gt;lnpd&lt;/a&gt;&lt;/td&gt;&lt;td&gt;daemon for LNP communication with BrickOS&lt;/td&gt;&lt;/tr&gt;
6507 &lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://packages.qa.debian.org/nbc&quot;&gt;nbc&lt;/a&gt;&lt;/td&gt;&lt;td&gt;compiler for LEGO Mindstorms NXT bricks&lt;/td&gt;&lt;/tr&gt;
6508 &lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://packages.qa.debian.org/nqc&quot;&gt;nqc&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Not Quite C compiler for LEGO Mindstorms RCX&lt;/td&gt;&lt;/tr&gt;
6509 &lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://packages.qa.debian.org/python-nxt&quot;&gt;python-nxt&lt;/a&gt;&lt;/td&gt;&lt;td&gt;python driver/interface/wrapper for the Lego Mindstorms NXT robot&lt;/td&gt;&lt;/tr&gt;
6510 &lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://packages.qa.debian.org/python-nxt-filer&quot;&gt;python-nxt-filer&lt;/a&gt;&lt;/td&gt;&lt;td&gt;simple GUI to manage files on a LEGO Mindstorms NXT&lt;/td&gt;&lt;/tr&gt;
6511 &lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://packages.qa.debian.org/scratch&quot;&gt;scratch&lt;/a&gt;&lt;/td&gt;&lt;td&gt;easy to use programming environment for ages 8 and up&lt;/td&gt;&lt;/tr&gt;
6512 &lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://packages.qa.debian.org/t2n&quot;&gt;t2n&lt;/a&gt;&lt;/td&gt;&lt;td&gt;simple command-line tool for Lego NXT&lt;/td&gt;&lt;/tr&gt;
6513 &lt;/table&gt;&lt;/p&gt;
6514
6515 &lt;p&gt;Some of these are available in Wheezy, and all but one are
6516 currently available in Jessie/testing. leocad is so far only
6517 available in experimental.&lt;/p&gt;
6518
6519 &lt;p&gt;If you care about LEGO in Debian, please join us on IRC and help
6520 adding the rest of the great free software tools available on Linux
6521 for LEGO designers.&lt;/p&gt;
6522 </description>
6523 </item>
6524
6525 <item>
6526 <title>Debian Wheezy is out - and Debian Edu / Skolelinux should soon follow! #newinwheezy</title>
6527 <link>http://people.skolelinux.org/pere/blog/Debian_Wheezy_is_out___and_Debian_Edu___Skolelinux_should_soon_follow___newinwheezy.html</link>
6528 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Wheezy_is_out___and_Debian_Edu___Skolelinux_should_soon_follow___newinwheezy.html</guid>
6529 <pubDate>Sun, 5 May 2013 07:40:00 +0200</pubDate>
6530 <description>&lt;p&gt;When I woke up this morning, I was very happy to see that the
6531 &lt;a href=&quot;http://www.debian.org/News/2013/20130504&quot;&gt;release announcement
6532 for Debian Wheezy&lt;/a&gt; was waiting in my mail box. This is a great
6533 Debian release, and I expect to move my machines at home over to it fairly
6534 soon.&lt;/p&gt;
6535
6536 &lt;p&gt;The new debian release contain heaps of new stuff, and one program
6537 in particular make me very happy to see included. The
6538 &lt;a href=&quot;http://scratch.mit.edu/&quot;&gt;Scratch&lt;/a&gt; program, made famous by
6539 the &lt;a href=&quot;http://www.code.org/&quot;&gt;Teach kids code&lt;/a&gt; movement, is
6540 included for the first time. Alongside similar programs like
6541 &lt;a href=&quot;http://edu.kde.org/kturtle/&quot;&gt;kturtle&lt;/a&gt; and
6542 &lt;a href=&quot;http://wiki.sugarlabs.org/go/Activities/Turtle_Art&quot;&gt;turtleart&lt;/a&gt;,
6543 it allow for visual programming where syntax errors can not happen,
6544 and a friendly programming environment for learning to control the
6545 computer. Scratch will also be included in the next release of Debian
6546 Edu.&lt;/a&gt;
6547
6548 &lt;p&gt;And now that Wheezy is wrapped up, we can wrap up the next Debian
6549 Edu/Skolelinux release too. The
6550 &lt;a href=&quot;http://lists.debian.org/debian-edu/2013/04/msg00132.html&quot;&gt;first
6551 alpha release&lt;/a&gt; went out last week, and the next should soon
6552 follow.&lt;p&gt;
6553 </description>
6554 </item>
6555
6556 <item>
6557 <title>First alpha release of Debian Edu / Skolelinux based on Debian Wheezy</title>
6558 <link>http://people.skolelinux.org/pere/blog/First_alpha_release_of_Debian_Edu___Skolelinux_based_on_Debian_Wheezy.html</link>
6559 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/First_alpha_release_of_Debian_Edu___Skolelinux_based_on_Debian_Wheezy.html</guid>
6560 <pubDate>Fri, 26 Apr 2013 08:30:00 +0200</pubDate>
6561 <description>&lt;p&gt;The Debian Edu / Skolelinux project is still going strong and made
6562 its first Wheezy based release today. This is the release
6563 announcement:&lt;/p&gt;
6564
6565 &lt;p&gt;&lt;strong&gt;New features for Debian Edu ~7.0.0 alpha0 released
6566 2013-04-26&lt;/strong&gt;&lt;/p&gt;
6567
6568 &lt;p&gt;This is the release notes for for Debian Edu / Skolelinux ~7.0.0
6569 edu alpha0, based on Debian with codename &quot;Wheezy&quot;.&lt;/p&gt;
6570
6571 &lt;p&gt;&lt;strong&gt;About Debian Edu and Skolelinux&lt;/strong&gt;&lt;/p&gt;
6572
6573 &lt;p&gt;&lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu, also known as
6574 Skolelinux&lt;/a&gt;, is a Linux distribution based on Debian providing an
6575 out-of-the box environment of a completely configured school
6576 network. Immediatly after installation a school server running all
6577 services needed for a school network is set up just waiting for users
6578 and machines being added via GOsa², a comfortable Web-UI. A netbooting
6579 environment is prepared using PXE, so after initial installation of
6580 the main server from CD, DVD or USB stick all other machines can be
6581 installed via the network.&lt;/p&gt;
6582
6583 &lt;p&gt;This is the first test release based on Wheezy (which currently is
6584 not released yet). Basically this is an updated and slightly improved
6585 version compared to the Squeeze release.&lt;/p&gt;
6586
6587 &lt;p&gt;&lt;strong&gt;Software updates&lt;/strong&gt;&lt;/p&gt;
6588
6589 &lt;ul&gt;
6590 &lt;li&gt;Everything which is new in Debian Wheezy, eg:
6591 &lt;ul&gt;
6592 &lt;li&gt;Linux kernel 3.2.x&lt;/li&gt;
6593 &lt;li&gt;Desktop environments KDE &quot;Plasma&quot; 4.8.4, GNOME 3.4, and LXDE 4
6594 (KDE is installed by default; to choose GNOME or LXDE: see
6595 manual.)&lt;/li&gt;
6596 &lt;li&gt;Web browser Iceweasel 10 ESR&lt;/li&gt;
6597 &lt;li&gt;LibreOffice 3.5.4&lt;/li&gt;
6598 &lt;li&gt;LTSP 5.4.2&lt;/li&gt;
6599 &lt;li&gt;GOsa 2.7.4&lt;/li&gt;
6600 &lt;li&gt;CUPS print system 1.5.3&lt;/li&gt;
6601 &lt;li&gt;Educational toolbox GCompris 12.01&lt;/li&gt;
6602 &lt;li&gt;Music creator Rosegarden 12.04&lt;/li&gt;
6603 &lt;li&gt;Image editor Gimp 2.8.2&lt;/li&gt;
6604 &lt;li&gt;Virtual universe Celestia 1.6.1&lt;/li&gt;
6605 &lt;li&gt;Virtual stargazer Stellarium 0.11.3&lt;/li&gt;
6606 &lt;li&gt;Scratch visual programming environment 1.4.0.6&lt;/li&gt;
6607 &lt;li&gt;New version of debian-installer from Debian Wheezy, see
6608 &lt;a href=&quot;http://www.debian.org/releases/wheezy/installmanual&quot;&gt;installation
6609 manual&lt;/a&gt; for more details.&lt;/li&gt;
6610 &lt;li&gt;Debian Wheezy includes about 37000 packages available for
6611 installation.&lt;/li&gt;
6612 &lt;li&gt;More information about Debian Wheezy 7.0 is provided in the
6613 &lt;a href=&quot;http://www.debian.org/releases/wheezy/releasenotes&quot;&gt;release notes&lt;/a&gt; and the &lt;a href=&quot;http://www.debian.org/releases/wheezy/installmanual&quot;&gt;installation manual&lt;/a&gt;.&lt;/li&gt;
6614 &lt;/ul&gt;&lt;/li&gt;
6615 &lt;/ul&gt;
6616
6617 &lt;p&gt;&lt;strong&gt;Documentation&lt;/strong&gt;&lt;/p&gt;
6618 &lt;ul&gt;
6619 &lt;li&gt;The (&lt;a href=&quot;http://wiki.debian.org/DebianEdu/Documentation/Wheezy&quot;&gt;English&lt;/a&gt;) Debian Edu Wheezy Manual is fully translated to
6620 German, French, Italian and Danish. Partly translated versions exist
6621 for Norwegian Bokmal and Spanish.&lt;/li&gt;
6622 &lt;/ul&gt;
6623
6624 &lt;p&gt;&lt;Strong&gt;LDAP related changes&lt;/strong&gt;&lt;/p&gt;
6625 &lt;ul&gt;
6626 &lt;li&gt;Slight changes to some objects and acls to have more types to
6627 choose from when adding systems in GOsa. Now systems can be of type
6628 server, workstation, printer, terminal or netdevice.&lt;/li&gt;
6629 &lt;/ul&gt;
6630
6631 &lt;p&gt;&lt;strong&gt;Other changes&lt;/strong&gt;&lt;/p&gt;
6632 &lt;ul&gt;
6633 &lt;li&gt;LTSP clients start as diskless workstation / thin client can be
6634 configured via command line argument -- or individually adding an
6635 entry in lts.conf or LDAP.&lt;li&gt;
6636 &lt;li&gt;GOsa gui: Now some options that seemed to be available, but are non
6637 functional, are greyed out (or are not clickable). Some tabs are
6638 completely hidden to the end user, others even to the GOsa admin.&lt;/li&gt;
6639 &lt;/ul&gt;
6640
6641 &lt;p&gt;&lt;strong&gt;Regressions&lt;/strong&gt;&lt;/p&gt;
6642 &lt;ul&gt;
6643 &lt;li&gt;No mass import of user account data in GOsa (ldif or csv) available
6644 yet.&lt;/li&gt;
6645 &lt;/ul&gt;
6646
6647 &lt;p&gt;&lt;strong&gt;No updated artwork&lt;/strong&gt;&lt;/p&gt;
6648
6649 &lt;ul&gt;
6650 &lt;li&gt;Updated artwork which is visible during installation, in the login
6651 screen and as desktop wallpaper is still missing or the same as we
6652 had for our Squeeze based release.&lt;/li&gt;
6653 &lt;/ul&gt;
6654
6655 &lt;p&gt;&lt;strong&gt;Where to get it&lt;/strong&gt;&lt;/p&gt;
6656
6657 To download the multiarch netinstall CD release you can use
6658 &lt;ul&gt;
6659 &lt;li&gt;&lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/wheezy/&lt;/a&gt;&lt;/li&gt;
6660 &lt;li&gt;&lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/wheezy/&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/wheezy/&lt;/a&gt;&lt;/li&gt;
6661 &lt;li&gt;rsync -avzP ftp.skolelinux.org::skolelinux-cd/wheezy/&lt;/li&gt;
6662 &lt;/ul&gt;
6663
6664 &lt;p&gt;The MD5SUM of this image is: c5e773ddafdaa4f48c409c682f598b6c&lt;/p&gt;
6665
6666 &lt;p&gt;The SHA1SUM of this image is: 25934fabb9b7d20235499a0a51f08ce6c54215f2&lt;/p&gt;
6667
6668 &lt;p&gt;&lt;strong&gt;How to report bugs&lt;/strong&gt;&lt;/p&gt;
6669
6670 &lt;p&gt;&lt;a href=&quot;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&quot;&gt;http://wiki.debian.org/DebianEdu/HowTo/ReportBugs&lt;/a&gt;&lt;/p&gt;
6671 </description>
6672 </item>
6673
6674 <item>
6675 <title>First Debian Edu / Skolelinux developer gathering in 2013 take place in Trondheim</title>
6676 <link>http://people.skolelinux.org/pere/blog/First_Debian_Edu___Skolelinux_developer_gathering_in_2013_take_place_in_Trondheim.html</link>
6677 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/First_Debian_Edu___Skolelinux_developer_gathering_in_2013_take_place_in_Trondheim.html</guid>
6678 <pubDate>Tue, 16 Apr 2013 15:00:00 +0200</pubDate>
6679 <description>&lt;p&gt;This years first &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Skolelinux /
6680 Debian Edu&lt;/a&gt; developer gathering take place the coming weekend in Trondheim.
6681 Details about the gathering can be found
6682 &lt;a href=&quot;http://www.friprogramvareiskolen.no/Gathering/2013-04-19-21-Trondheim&quot;&gt;on
6683 the FRiSK wiki&lt;/a&gt;. The dates are 19-21th of April 2013, and online
6684 participation for those unable to make it in person is very welcome,
6685 and I plan to participate online myself as I could not leave Oslo this
6686 weekend.&lt;/p&gt;
6687
6688 &lt;p&gt;The focus of the gathering is to work on the web pages and project
6689 infrastructure, and to continue the work on the Wheezy based Debian
6690 Edu release.&lt;/p&gt;
6691
6692 &lt;p&gt;See you on &lt;a href=&quot;irc://irc.debian.org/%23debian-edu&quot;&gt;IRC, #debian-edu on irc.debian.org,&lt;/a&gt; then?&lt;/p&gt;
6693 </description>
6694 </item>
6695
6696 <item>
6697 <title>Isenkram 0.2 finally in the Debian archive</title>
6698 <link>http://people.skolelinux.org/pere/blog/Isenkram_0_2_finally_in_the_Debian_archive.html</link>
6699 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Isenkram_0_2_finally_in_the_Debian_archive.html</guid>
6700 <pubDate>Wed, 3 Apr 2013 23:40:00 +0200</pubDate>
6701 <description>&lt;p&gt;Today the &lt;a href=&quot;http://packages.qa.debian.org/isenkram&quot;&gt;Isenkram
6702 package&lt;/a&gt; finally made it into the archive, after lingering in NEW
6703 for many months. I uploaded it to the Debian experimental suite
6704 2013-01-27, and today it was accepted into the archive.&lt;/p&gt;
6705
6706 &lt;p&gt;Isenkram is a system for suggesting to users what packages to
6707 install to work with a pluggable hardware device. The suggestion pop
6708 up when the device is plugged in. For example if a Lego Mindstorm NXT
6709 is inserted, it will suggest to install the program needed to program
6710 the NXT controller. Give it a go, and report bugs and suggestions to
6711 BTS. :)&lt;/p&gt;
6712 </description>
6713 </item>
6714
6715 <item>
6716 <title>Change the font, save the world (and save some money in the process)</title>
6717 <link>http://people.skolelinux.org/pere/blog/Change_the_font__save_the_world__and_save_some_money_in_the_process_.html</link>
6718 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Change_the_font__save_the_world__and_save_some_money_in_the_process_.html</guid>
6719 <pubDate>Tue, 26 Mar 2013 15:10:00 +0100</pubDate>
6720 <description>&lt;p&gt;Would you like to help the environment and save money at the same
6721 time, without much sacrifice? A small step could be to change the
6722 font you use when printing.&lt;/p&gt;
6723
6724 &lt;p&gt;Three years ago,
6725 &lt;a href=&quot;http://arstechnica.com/business/2010/04/last-year-printer-comparison-website/&quot;&gt;Ars
6726 Technica&lt;/a&gt; reported how the University of Wisconsin-Green Bay
6727 changed their default front from
6728 &lt;a href=&quot;http://en.wikipedia.org/wiki/Arial&quot;&gt;Arial&lt;/a&gt; to
6729 &lt;a href=&quot;http://en.wikipedia.org/wiki/Century_Gothic&quot;&gt;Century
6730 Gothic&lt;/a&gt; to save money. The Century Gothic font uses 30% less toner
6731 than Arial to print the same text. In other word, you could cut your
6732 toner costs by 30% (or actually, increase your toner supply life time
6733 by more than 30%), by simply changing the default font used in your
6734 prints.&lt;/p&gt;
6735
6736 &lt;p&gt;But it is not quite obvious how much one will save by switching.
6737 The University of Wisconsin-Green Bay said it used $100,000 per year
6738 on ink and toner cartridges, according to
6739 &lt;a href=&quot;http://www.twincities.com/ci_14833097&quot;&gt;a report from
6740 TwinCities.com&lt;/a&gt;, and expected to save between $5,000 and $10,000
6741 per year by asking staff and students to use a different font. Not
6742 all PDFs and documents are created internally, and those from external
6743 sources will most likely still use a different font. Also, the
6744 Century Gothic font is slightly wider than Arial, and thus might use
6745 more sheets of paper to print the same text, so the total saving
6746 depend on the documents printed.&lt;/p&gt;
6747
6748 &lt;p&gt;But it is definitely something to consider, if you want to reduce
6749 the amount of trash, decrease the amount of toner used in the world,
6750 and save some money in the process.&lt;/p&gt;
6751
6752 &lt;p&gt;Update 2013-04-10: If you want to know how much ink/toner could be
6753 saved when switching between fonts, Inkfarm got a
6754 &lt;a href=&quot;http://www.inkfarm.com/What-the-Font&quot;&gt;service to calculate the
6755 difference between font pairs&lt;/a&gt;. They also
6756 &lt;a href=&quot;http://www.inkfarm.com/Recommended-Ink-Saving-Fonts---&quot;&gt;recommend
6757 which fonts to use&lt;/a&gt; to save ink. Check it out. :) While updating
6758 this blog post, I also came across a blog post from InkCloners,
6759 &lt;a href=&quot;http://inkcloners.com/blog/ink-cartridges/change-fonts-to-save-ink-costs/&quot;&gt;listing
6760 the fonts they recommend&lt;/a&gt;, with Centory Gothic at the top.&lt;/p&gt;
6761 </description>
6762 </item>
6763
6764 <item>
6765 <title>Typesetting a short story using docbook for PDF, HTML and EPUB</title>
6766 <link>http://people.skolelinux.org/pere/blog/Typesetting_a_short_story_using_docbook_for_PDF__HTML_and_EPUB.html</link>
6767 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Typesetting_a_short_story_using_docbook_for_PDF__HTML_and_EPUB.html</guid>
6768 <pubDate>Sun, 24 Mar 2013 17:30:00 +0100</pubDate>
6769 <description>&lt;p&gt;A few days ago, during a discussion in
6770 &lt;a href=&quot;http://www.efn.no/&quot;&gt;EFN&lt;/a&gt; about interesting books to read
6771 about copyright and the data retention directive, a suggestion to read
6772 the 1968 short story Kodémus by
6773 &lt;a href=&quot;http://web2.gyldendal.no/toraage/&quot;&gt;Tore Åge Bringsværd&lt;/a&gt;
6774 came up. The text was only available in old paper books, and thus not
6775 easily available for current and future generations. Some of the
6776 people participating in the discussion contacted the author, and
6777 reported back 2013-03-19 that the author was OK with releasing the
6778 short story using a &lt;a href=&quot;http://www.creativecommons.org/&quot;&gt;Creative
6779 Commons&lt;/a&gt; license. The text was quickly scanned and OCR-ed, and we
6780 were ready to start on the editing and typesetting.&lt;/p&gt;
6781
6782 &lt;p&gt;As I already had some experience formatting text in my project to
6783 provide a Norwegian version of the Free Culture book by Lawrence
6784 Lessig, I chipped in and set up a
6785 &lt;a href=&quot;http://www.docbook.org/&quot;&gt;DocBook&lt;/a&gt; processing framework to
6786 generate PDF, HTML and EPUB version of the short story. The tools to
6787 transform DocBook to different formats are already in my Linux
6788 distribution of choice, &lt;a href=&quot;http://www.debian.org/&quot;&gt;Debian&lt;/a&gt;, so
6789 all I had to do was to use the
6790 &lt;a href=&quot;http://dblatex.sourceforge.net/&quot;&gt;dblatex&lt;/a&gt;,
6791 &lt;a href=&quot;http://docbook.sourceforge.net/release/xsl/current/epub/README&quot;&gt;dbtoepub&lt;/a&gt;
6792 and &lt;a href=&quot;https://fedorahosted.org/xmlto/&quot;&gt;xmlto&lt;/a&gt; tools to do the
6793 conversion. After a few days, we decided to replace dblatex with
6794 xsltproc/fop (aka
6795 &lt;a href=&quot;http://wiki.docbook.org/DocBookXslStylesheets&quot;&gt;docbook-xsl&lt;/a&gt;),
6796 to get the copyright information to show up in the PDF and to get a
6797 nicer &amp;lt;variablelist&amp;gt; typesetting, but that is just a minor
6798 technical detail.&lt;/p&gt;
6799
6800 &lt;p&gt;There were a few challenges, of course. We want to typeset the
6801 short story to look like the original, and that require fairly good
6802 control over the layout. The original short story have three
6803 parts/scenes separated by a single horizontally centred star (*), and
6804 the paragraphs do not contain only flowing text, but dialogs and text
6805 that started on a new line in the middle of the paragraph.&lt;/p&gt;
6806
6807 &lt;p&gt;I initially solved the first challenge by using a paragraph with a
6808 single star in it, ie &amp;lt;para&amp;gt;*&amp;lt;/para&amp;gt;, but it made sure a
6809 placeholder indicated where the scene shifted. This did not look too
6810 good without the centring. The next approach was to create a new
6811 preprocessor directive &amp;lt;?newscene?&amp;gt;, mapping to &quot;&amp;lt;hr/&amp;gt;&quot;
6812 for HTML and &quot;&amp;lt;fo:block text-align=&quot;center&quot;&amp;gt;&amp;lt;fo:leader
6813 leader-pattern=&quot;rule&quot; rule-thickness=&quot;0.5pt&quot;/&amp;gt;&amp;lt;/fo:block&amp;gt;&quot;
6814 for FO/PDF output (did not try to implement this in dblatex, as we had
6815 switched at this time). The HTML XSL file looked like this:&lt;/p&gt;
6816
6817 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
6818 &amp;lt;?xml version=&#39;1.0&#39;?&amp;gt;
6819 &amp;lt;xsl:stylesheet xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot; version=&#39;1.0&#39;&amp;gt;
6820 &amp;lt;xsl:template match=&quot;processing-instruction(&#39;newscene&#39;)&quot;&amp;gt;
6821 &amp;lt;hr/&amp;gt;
6822 &amp;lt;/xsl:template&amp;gt;
6823 &amp;lt;/xsl:stylesheet&amp;gt;
6824 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
6825
6826 &lt;p&gt;And the FO/PDF XSL file looked like this:&lt;/p&gt;
6827
6828 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
6829 &amp;lt;?xml version=&#39;1.0&#39;?&amp;gt;
6830 &amp;lt;xsl:stylesheet xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot; version=&#39;1.0&#39;&amp;gt;
6831 &amp;lt;xsl:template match=&quot;processing-instruction(&#39;newscene&#39;)&quot;&amp;gt;
6832 &amp;lt;fo:block text-align=&quot;center&quot;&amp;gt;
6833 &amp;lt;fo:leader leader-pattern=&quot;rule&quot; rule-thickness=&quot;0.5pt&quot;/&amp;gt;
6834 &amp;lt;/fo:block&amp;gt;
6835 &amp;lt;/xsl:template&amp;gt;
6836 &amp;lt;/xsl:stylesheet&amp;gt;
6837 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
6838
6839 &lt;p&gt;Finally, I came across the &amp;lt;bridgehead&amp;gt; tag, which seem to be
6840 a good fit for the task at hand, and I replaced &amp;lt;?newscene?&amp;gt;
6841 with &amp;lt;bridgehead&amp;gt;*&amp;lt;/bridgehead&amp;gt;. It isn&#39;t centred, but we
6842 can fix it with some XSL rule if the current visual layout isn&#39;t
6843 enough.&lt;/p&gt;
6844
6845 &lt;p&gt;I did not find a good DocBook compliant way to solve the
6846 linebreak/paragraph challenge, so I ended up creating a new processor
6847 directive &amp;lt;?linebreak?&amp;gt;, mapping to &amp;lt;br/&amp;gt; in HTML, and
6848 &amp;lt;fo:block/&amp;gt; in FO/PDF. I suspect there are better ways to do
6849 this, and welcome ideas and patches on github. The HTML XSL file now
6850 look like this:&lt;/p&gt;
6851
6852 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
6853 &amp;lt;?xml version=&#39;1.0&#39;?&amp;gt;
6854 &amp;lt;xsl:stylesheet xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot; version=&#39;1.0&#39;&amp;gt;
6855 &amp;lt;xsl:template match=&quot;processing-instruction(&#39;linebreak)&quot;&amp;gt;
6856 &amp;lt;br/&amp;gt;
6857 &amp;lt;/xsl:template&amp;gt;
6858 &amp;lt;/xsl:stylesheet&amp;gt;
6859 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
6860
6861 &lt;p&gt;And the FO/PDF XSL file looked like this:&lt;/p&gt;
6862
6863 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
6864 &amp;lt;?xml version=&#39;1.0&#39;?&amp;gt;
6865 &amp;lt;xsl:stylesheet xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot; version=&#39;1.0&#39;
6866 xmlns:fo=&quot;http://www.w3.org/1999/XSL/Format&quot;&amp;gt;
6867 &amp;lt;xsl:template match=&quot;processing-instruction(&#39;linebreak)&quot;&amp;gt;
6868 &amp;lt;fo:block/&amp;gt;
6869 &amp;lt;/xsl:template&amp;gt;
6870 &amp;lt;/xsl:stylesheet&amp;gt;
6871 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
6872
6873 &lt;p&gt;One unsolved challenge is our wish to expose different ISBN numbers
6874 per publication format, while keeping all of them in some conditional
6875 structure in the DocBook source. No idea how to do this, so we ended
6876 up listing all the ISBN numbers next to their format in the colophon
6877 page.&lt;/p&gt;
6878
6879 &lt;p&gt;If you want to check out the finished result, check out the
6880 &lt;a href=&quot;https://github.com/sickel/kodemus&quot;&gt;source repository at
6881 github&lt;/a&gt;
6882 (&lt;a href=&quot;https://github.com/EFN/kodemus&quot;&gt;future/new/official
6883 repository&lt;/a&gt;). We expect it to be ready and announced in a few
6884 days.&lt;/p&gt;
6885 </description>
6886 </item>
6887
6888 <item>
6889 <title>Skolelinux 6 got a video review from Pcwizz</title>
6890 <link>http://people.skolelinux.org/pere/blog/Skolelinux_6_got_a_video_review_from_Pcwizz.html</link>
6891 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Skolelinux_6_got_a_video_review_from_Pcwizz.html</guid>
6892 <pubDate>Sun, 17 Mar 2013 10:30:00 +0100</pubDate>
6893 <description>&lt;p&gt;Via
6894 &lt;a href=&quot;https://twitter.com/pcwizz/status/313044373262716930&quot;&gt;twitter&lt;/a&gt;
6895 I just discovered that &lt;a href=&quot;http://pcwizz.net/&quot;&gt;Pcwizz&lt;/a&gt; have
6896 done a &lt;a href=&quot;http://www.youtube.com/watch?v=wPzTZ61Pcuc&quot;&gt;video
6897 review&lt;/a&gt; on Youtube of &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Skolelinux
6898 / Debian Edu&lt;/a&gt; version 6. He installed the standalone profile and
6899 the video show a walk-through of of the menu content, demonstration of
6900 a few programs and his view of our distribution.&lt;/p&gt;
6901
6902 &lt;p&gt;There is also some really nice quotes (transcribed by me, might
6903 have heard wrong). While looking thought the Graphics menu:&lt;/p&gt;
6904
6905 &lt;blockquote&gt;
6906 &quot;Basically everything you ever need in a school environment.&quot;
6907 &lt;/blockquote&gt;
6908
6909 &lt;p&gt;And as a general evaluation of the entire distribution:&lt;/p&gt;
6910
6911 &lt;blockquote&gt;
6912 &quot;So, yeah, a bit bloated. It kept all the Debian stuff in there, just
6913 to keep it nice and GNU. So, I do not want to go on about it, but
6914 lets give it 7 out of 10. I am not going to use it. That is because
6915 I am not deploying a school network. There may be some mythical
6916 feature to help you deploy Skolelinux on a school network.&quot;
6917 &lt;/blockquote&gt;
6918
6919 &lt;p&gt;To bad he did not test the server profile, and discovered the PXE
6920 installation option. It make it possible to install only the main
6921 server from CD, and the rest of the machines via the net, and might be
6922 considered the mythical feature he talk about. :)&lt;/p&gt;
6923
6924 &lt;p&gt;While looking through the menus, there is also this funny comment
6925 about the part of the K menu generated from the Debian menu subsystem:
6926
6927 &lt;blockquote&gt;
6928 &quot;[The K menu] have a special Debian section for software that no-one
6929 is going to look at, because it contain lots of junky stuff that you
6930 actually don&#39;t need in the education distribution, but have just been
6931 included because it isn&#39;t stripped out for some reason.&quot;
6932 &lt;/blockquote&gt;
6933
6934 &lt;p&gt;I guess it is yet another argument for merging the Debian menu and
6935 Gnome/KDE desktop menu entries into
6936 &lt;a href=&quot;http://wiki.debian.org/Proposals/DebianMenuUsingDesktopEntries&quot;&gt;one
6937 consistent menu system&lt;/a&gt; instead of two incomplete and partly
6938 inconsistent menu systems.&lt;/p&gt;
6939
6940 &lt;p&gt;The entire video is available below for those accepting iframe
6941 embedding:&lt;/p&gt;
6942
6943 &lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;http://www.youtube.com/embed/wPzTZ61Pcuc&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;
6944 </description>
6945 </item>
6946
6947 <item>
6948 <title>First Skolelinux / Debian Edu Squeeze update released</title>
6949 <link>http://people.skolelinux.org/pere/blog/First_Skolelinux___Debian_Edu_Squeeze_update_released.html</link>
6950 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/First_Skolelinux___Debian_Edu_Squeeze_update_released.html</guid>
6951 <pubDate>Fri, 8 Mar 2013 09:30:00 +0100</pubDate>
6952 <description>&lt;p&gt;Last Sunday, 2013-03-03,, Holger Levsen announced the first update
6953 of &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Skolelinux / Debian Edu&lt;/a&gt;
6954 based on Debian Squeeze. This is the first update since
6955 &lt;a href=&quot;http://lists.debian.org/debian-edu-announce/2012/03/msg00001.html&quot;&gt;the
6956 initial release 2012-03-11&lt;/a&gt;. This is the
6957 &lt;a href=&quot;http://lists.debian.org/debian-edu-announce/2013/03/msg00000.html&quot;&gt;release
6958 announcement email from Holger&lt;/a&gt;:&lt;/p&gt;
6959
6960 &lt;blockquote&gt;&lt;p&gt;Hi,&lt;/p&gt;
6961
6962 &lt;p&gt;it&#39;s my pleasure to announce the immediate availability of Debian
6963 Edu 6.0.7+r1 (&quot;Debian Edu Squeeze&quot;).&lt;/p&gt;
6964
6965 &lt;p&gt;Debian Edu 6.0.7+r1 is an incremental update to Debian Edu
6966 6.0.4+r0, containing all the changes between Debian 6.0.4 and 6.0.7 as
6967 well Debian Edu specific bugfixes and enhancements. See below (in this
6968 mail) for the full list of (edu) changes. Please see
6969 &lt;a href=&quot;http://www.debian.org/News/2012/20120311&quot;&gt;http://www.debian.org/News/2012/20120311&lt;/a&gt;
6970 for more information on &quot;Debian Edu Squeeze&quot;.&lt;/p&gt;
6971
6972 &lt;p&gt;Images are available for download at
6973 &lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/&lt;/a&gt;&lt;/p&gt;
6974
6975 &lt;p&gt;md5sums:
6976 &lt;br&gt;1fe79eb4f0f9ae1c58fc318e26cc1e2e debian-edu-6.0.7+r1-CD.iso
6977 &lt;br&gt;a6ddd924a8bd9a1b5ca122e8fe1c34ec debian-edu-6.0.7+r1-DVD.iso
6978 &lt;br&gt;ac6c72cd7925ccec51bfbf58e2a7c69c debian-edu-6.0.7+r1-source-DVD.iso&lt;/p&gt;
6979
6980 &lt;p&gt;sha1sums:
6981 &lt;br&gt;a4b58233b672a99c7df8dc24fb6de3327654a5c3 debian-edu-6.0.7+r1-CD.iso
6982 &lt;br&gt;9b524915e0ff2aa793f13d93123e5bd2bab2dbaa debian-edu-6.0.7+r1-DVD.iso
6983 &lt;br&gt;43997614893fc5e9e59ad6ce066b05d07fd836fa debian-edu-6.0.7+r1-source-DVD.iso&lt;/p&gt;
6984
6985 &lt;p&gt;These images are suitable for amd64+i386.&lt;/p&gt;
6986
6987 &lt;p&gt;Changes for Debian Edu 6.0.7+r1 Codename &quot;Squeeze&quot;, released
6988 2013-03-03:&lt;/p&gt;
6989
6990 &lt;ul&gt;
6991 &lt;li&gt;sitesummary was updated from 0.1.3 to 0.1.8
6992 &lt;ul&gt;
6993 &lt;li&gt;Make Nagios configuration more robust and efficient&lt;/li&gt;
6994 &lt;li&gt;Comply with 3.X kernel&lt;/li&gt;
6995 &lt;/ul&gt;&lt;/li&gt;
6996 &lt;li&gt;debian-edu-doc from 1.4~20120310~6.0.4+r0 to 1.4~20130228~6.0.7+r1
6997 &lt;ul&gt;
6998 &lt;li&gt;Minor updates from the wiki&lt;/li&gt;
6999 &lt;li&gt;Danish translation now complete&lt;/li&gt;
7000 &lt;/ul&gt;&lt;/li&gt;
7001 &lt;li&gt;debian-edu-config from 1.453 to 1.455
7002 &lt;ul&gt;
7003 &lt;li&gt;Fix /etc/hosts for LTSP diskless workstations. Closes: #699880&lt;/li&gt;
7004 &lt;li&gt;Make ltsp_local_mount script work for multiple devices.&lt;/li&gt;
7005 &lt;li&gt;Correct Kerberos user policy: don&#39;t expire password after 2 days.
7006 Closes: #664596&lt;/li&gt;
7007 &lt;li&gt;Handle &#39;#&#39; characters in the root or first users password.
7008 Closes: #664976&lt;/li&gt;
7009 &lt;li&gt;Fixes for gosa-sync:
7010 &lt;ul&gt;
7011 &lt;li&gt;Don&#39;t fail if password contains &quot;&lt;/li&gt;
7012 &lt;li&gt;Don&#39;t disclose new password string in syslog&lt;/li&gt;
7013 &lt;/ul&gt;&lt;/li&gt;
7014 &lt;li&gt;Fixes for gosa-create:
7015 &lt;ul&gt;
7016 &lt;li&gt;Invalidate libnss cache before applying changes&lt;/li&gt;
7017 &lt;li&gt;Multiple failures during mass user import into GOsa²&lt;/li&gt;
7018 &lt;li&gt;gosa-netgroups plugin: don&#39;t erase entries of attribute type
7019 &quot;memberNisNetgroup&quot;. Closes: #687256&lt;/li&gt;
7020 &lt;li&gt;First user now uses the same Kerberos policy as all other users&lt;/li&gt;
7021 &lt;/ul&gt;&lt;/li&gt;
7022 &lt;li&gt;Add Danish web page&lt;/li&gt;
7023 &lt;/ul&gt;
7024 &lt;li&gt;debian-edu-install from 1.528 to 1.530
7025 &lt;ul&gt;
7026 &lt;li&gt;Improve preseeding support and documentation&lt;/li&gt;
7027 &lt;/ul&gt;&lt;/li&gt;
7028 &lt;/ul&gt;
7029
7030 &lt;p&gt;End-user documentation in English is available at
7031 &lt;a href=&quot;http://wiki.debian.org/DebianEdu/Documentation/Squeeze/&quot;&gt;http://wiki.debian.org/DebianEdu/Documentation/Squeeze/&lt;/a&gt;
7032 - translations to French, Italian, Danish and German are available in
7033 the debian-edu-doc package. (Other languages could use your help!)&lt;/p&gt;
7034
7035 &lt;p&gt;If you want to contribute to Debian Edu, please join our
7036 mailinglist
7037 &lt;a href=&quot;http://lists.debian.org/debian-edu/&quot;&gt;debian-edu@lists.debian.org&lt;/a&gt;!
7038 &lt;/p&gt;&lt;/blockquote&gt;
7039
7040 &lt;p&gt;I am very happy to see the fruits of a year of hard work. :)&lt;/p&gt;
7041 </description>
7042 </item>
7043
7044 <item>
7045 <title>Frikanalen - Complete TV station organised using the web</title>
7046 <link>http://people.skolelinux.org/pere/blog/Frikanalen___Complete_TV_station_organised_using_the_web.html</link>
7047 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Frikanalen___Complete_TV_station_organised_using_the_web.html</guid>
7048 <pubDate>Sun, 3 Mar 2013 07:15:00 +0100</pubDate>
7049 <description>&lt;p&gt;Do you want to set up your own TV station, schedule videos and
7050 broadcast them on the air? Using free software? With video on demand
7051 support using
7052 &lt;a href=&quot;http://www.digistan.org/open-standard:definition&quot;&gt;free and
7053 open standards&lt;/a&gt;? Included a web based video stream as well? And
7054 administrate it all in your web browser from anywhere in the world? A
7055 few years now the Norwegian public access TV-channel
7056 &lt;a href=&quot;http://www.frikanalen.no/&quot;&gt;Frikanalen&lt;/a&gt; have been building a
7057 system to do just this. The source code for the solution is licensed
7058 using the GNU LGPL, and
7059 &lt;a href=&quot;http://github.com/Frikanalen&quot;&gt;available from github&lt;/a&gt;.&lt;/p&gt;
7060
7061 &lt;p&gt;The idea is simple. You upload a video file over the web, and
7062 attach meta information to the file. You select a time slot in the
7063 program schedule, and when the time come it is played on the air and
7064 in the web stream. It is also made available in a video on demand
7065 solution for anyone to see it also outside its scheduled time. All
7066 you need to run a TV station - using your web browser.&lt;/p&gt;
7067
7068 &lt;p&gt;There are several parts to this web based solution. I&#39;ll mention
7069 the three most important ones. The first part is the database of
7070 videos and the schedule. This is written in Django and include a REST
7071 API. The current database is SQLite, but the plan is to migrate it to
7072 PostgreSQL. At the moment this system can be tested on
7073 &lt;a href=&quot;http://beta.frikanalen.tv/&quot;&gt;beta.frikanalen.tv&lt;/a&gt;. The
7074 second part is the video playout, taking the schedule information from
7075 the database and providing a video stream to broadcast. This is done
7076 using &lt;a href=&quot;http://www.casparcg.com/&quot;&gt;CasparCG from SVT&lt;/a&gt; and
7077 &lt;a href=&quot;http://www.mltframework.org/&quot;&gt;Media Lovin&#39; Toolkit&lt;/a&gt;. Video
7078 signal distribution is handled using
7079 &lt;a href=&quot;http://www.ob-encoder.com/&quot;&gt;Open Broadcast Encoder&lt;/a&gt;. The
7080 third part is the converter, handling the transformation of uploaded
7081 video files to a format useful for broadcasting, streaming and video
7082 on demand. It is still very much work in progress, so it is not yet
7083 decided what it will end up using. Note that the source of the latter
7084 two parts are not yet pushed to github. The lead author want to clean
7085 them up a bit more first.&lt;/p&gt;
7086
7087 &lt;p&gt;The development is coordinated on the
7088 &lt;a href=&quot;irc://irc.freenode.net/%23frikanalen&quot;&gt;#frikanalen IRC
7089 channel&lt;/a&gt; (irc.freenode.net), and discussed on
7090 &lt;a href=&quot;http://lists.nuug.no/mailman/listinfo/frikanalen&quot;&gt;the
7091 frikanalen mailing list&lt;/a&gt;. The lead developer is Benjamin Bruheim
7092 (phed on IRC). Anyone is welcome to participate in the
7093 development.&lt;/p&gt;
7094 </description>
7095 </item>
7096
7097 <item>
7098 <title>Dr. Richard Stallman, founder of Free Software Foundation, give a talk in Oslo March 1st 2013</title>
7099 <link>http://people.skolelinux.org/pere/blog/Dr__Richard_Stallman__founder_of_Free_Software_Foundation__give_a_talk_in_Oslo_March_1st_2013.html</link>
7100 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Dr__Richard_Stallman__founder_of_Free_Software_Foundation__give_a_talk_in_Oslo_March_1st_2013.html</guid>
7101 <pubDate>Wed, 27 Feb 2013 20:20:00 +0100</pubDate>
7102 <description>&lt;p&gt;Dr. &lt;a href=&quot;http://www.stallman.org/&quot;&gt;Richard Stallman&lt;/a&gt;,
7103 founder of &lt;a href=&quot;http://www.fsf.org/&quot;&gt;Free Software Foundation&lt;/a&gt;,
7104 is giving &lt;a href=&quot;http://www.nuug.no/aktiviteter/20130301-rms/&quot;&gt;a
7105 talk in Oslo March 1st 2013 17:00 to 19:00&lt;/a&gt;. The event is public
7106 and organised by &lt;a href=&quot;&quot;&gt;Norwegian Unix Users Group (NUUG)&lt;/a&gt;
7107 (where I am the chair of the board) and
7108 &lt;a href=&quot;http://www.friprog.no/&quot;&gt;The Norwegian Open Source Competence
7109 Center&lt;/a&gt;. The title of the talk is «The Free Software Movement and
7110 GNU», with this description:
7111
7112 &lt;p&gt;&lt;blockquote&gt;
7113 The Free Software Movement campaigns for computer users&#39; freedom to
7114 cooperate and control their own computing. The Free Software Movement
7115 developed the GNU operating system, typically used together with the
7116 kernel Linux, specifically to make these freedoms possible.
7117 &lt;/blockquote&gt;&lt;/p&gt;
7118
7119 &lt;p&gt;The meeting is open for everyone. Due to space limitations, the
7120 doors opens for NUUG members at 16:15, and everyone else at 16:45. I
7121 am really curious how many will show up. See
7122 &lt;a href=&quot;http://www.nuug.no/aktiviteter/20130301-rms/&quot;&gt;the event
7123 page&lt;/a&gt; for the location details.&lt;/p&gt;
7124 </description>
7125 </item>
7126
7127 <item>
7128 <title>Frikart - Free Garmin maps for European countries based on OpenStreetmap</title>
7129 <link>http://people.skolelinux.org/pere/blog/Frikart___Free_Garmin_maps_for_European_countries_based_on_OpenStreetmap.html</link>
7130 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Frikart___Free_Garmin_maps_for_European_countries_based_on_OpenStreetmap.html</guid>
7131 <pubDate>Fri, 15 Feb 2013 09:30:00 +0100</pubDate>
7132 <description>&lt;p&gt;If you, like me, want an updated a map for your Garmin GPS, there is
7133 now a great source of free maps available from
7134 &lt;a href=&quot;http://www.frikart.no/garmin/index.html&quot;&gt;Frikart&lt;/a&gt;. To
7135 download a map, just click on the country you are interested in, and
7136 download the map type you want. There are 8 different maps available,
7137 using different colours and data selection. Pick one of Roadmap, Topo
7138 Summer, Topo Winter, Roadmap II, Topo Summer II, Topo Winter II,
7139 &quot;Trails - overlay map&quot; and &quot;Cross country - overlay map&quot; (see the web
7140 page for descriptions).&lt;/p&gt;
7141
7142 &lt;p&gt;The maps are updated weekly, so if you find something wrong in the
7143 map you can just edit the
7144 &lt;a href=&quot;http://www.openstreetmap.org/&quot;&gt;OpenStreetmap&lt;/a&gt; map source
7145 (anyone can contribute) and fetch a fixed map a week later. :)&lt;/p&gt;
7146 </description>
7147 </item>
7148
7149 <item>
7150 <title>&quot;Electronic&quot; paper invoices - using vCard in a QR code</title>
7151 <link>http://people.skolelinux.org/pere/blog/_Electronic__paper_invoices___using_vCard_in_a_QR_code.html</link>
7152 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/_Electronic__paper_invoices___using_vCard_in_a_QR_code.html</guid>
7153 <pubDate>Tue, 12 Feb 2013 10:30:00 +0100</pubDate>
7154 <description>&lt;p&gt;Here in Norway, electronic invoices are spreading, and the
7155 &lt;a href=&quot;http://www.anskaffelser.no/e-handel/faktura&quot;&gt;solution promoted
7156 by the Norwegian government&lt;/a&gt; require that invoices are sent through
7157 one of the approved facilitators, and it is not possible to send
7158 electronic invoices without an agreement with one of these
7159 facilitators. This seem like a needless limitation to be able to
7160 transfer invoice information between buyers and sellers. My preferred
7161 solution would be to just transfer the invoice information directly
7162 between seller and buyer, for example using SMTP, or some HTTP based
7163 protocol like REST or SOAP. But this might also be overkill, as the
7164 &quot;electronic&quot; information can be transferred using paper invoices too,
7165 using a simple bar code. My bar code encoding of choice would be QR
7166 codes, as this encoding can be read by any smart phone out there. The
7167 content of the code could be anything, but I would go with
7168 &lt;a href=&quot;http://en.wikipedia.org/wiki/VCard&quot;&gt;the vCard format&lt;/a&gt;, as
7169 it too is supported by a lot of computer equipment these days.&lt;/p&gt;
7170
7171 &lt;p&gt;The vCard format support extentions, and the invoice specific
7172 information can be included using such extentions. For example an
7173 invoice from SLX Debian Labs (picked because we
7174 &lt;a href=&quot;http://www.linuxiskolen.no/slxdebianlabs/donations.html&quot;&gt;ask
7175 for donations to the Debian Edu project&lt;/a&gt; and thus have bank account
7176 information publicly available) for NOK 1000.00 could have these extra
7177 fields:&lt;/p&gt;
7178
7179 &lt;p&gt;&lt;pre&gt;
7180 X-INVOICE-NUMBER:1
7181 X-INVOICE-AMOUNT:NOK1000.00
7182 X-INVOICE-KID:123412341234
7183 X-INVOICE-MSG:Donation to Debian Edu
7184 X-BANK-ACCOUNT-NUMBER:16040884339
7185 X-BANK-IBAN-NUMBER:NO8516040884339
7186 X-BANK-SWIFT-NUMBER:DNBANOKKXXX
7187 &lt;/pre&gt;&lt;/p&gt;
7188
7189 &lt;p&gt;The X-BANK-ACCOUNT-NUMBER field was proposed in a stackoverflow
7190 answer regarding
7191 &lt;a href=&quot;http://stackoverflow.com/questions/10045664/storing-bank-account-in-vcard-file&quot;&gt;how
7192 to put bank account information into a vCard&lt;/a&gt;. For payments in
7193 Norway, either X-INVOICE-KID (payment ID) or X-INVOICE-MSG could be
7194 used to pass on information to the seller when paying the invoice.&lt;/p&gt;
7195
7196 &lt;p&gt;The complete vCard could look like this:&lt;/p&gt;
7197
7198 &lt;p&gt;&lt;pre&gt;
7199 BEGIN:VCARD
7200 VERSION:2.1
7201 ORG:SLX Debian Labs Foundation
7202 ADR;WORK:;;Gunnar Schjelderups vei 29D;OSLO;;0485;Norway
7203 URL;WORK:http://www.linuxiskolen.no/slxdebianlabs/
7204 EMAIL;PREF;INTERNET:sdl-styret@rt.nuug.no
7205 REV:20130212T095000Z
7206 X-INVOICE-NUMBER:1
7207 X-INVOICE-AMOUNT:NOK1000.00
7208 X-INVOICE-MSG:Donation to Debian Edu
7209 X-BANK-ACCOUNT-NUMBER:16040884339
7210 X-BANK-IBAN-NUMBER:NO8516040884339
7211 X-BANK-SWIFT-NUMBER:DNBANOKKXXX
7212 END:VCARD
7213 &lt;/pre&gt;&lt;/p&gt;
7214
7215 &lt;p&gt;The resulting QR code created using
7216 &lt;a href=&quot;http://fukuchi.org/works/qrencode/&quot;&gt;qrencode&lt;/a&gt; would look
7217 like this, and should be readable (and thus checkable) by any smart
7218 phone, or for example the &lt;a href=&quot;http://zbar.sourceforge.net/&quot;&gt;zbar
7219 bar code reader&lt;/a&gt; and feed right into the approval and accounting
7220 system.&lt;/p&gt;
7221
7222 &lt;p&gt;&lt;img src=&quot;http://people.skolelinux.org/pere/blog/images/2013-02-12-qr-invoice.png&quot;&gt;&lt;/p&gt;
7223
7224 &lt;p&gt;The extension fields will most likely not show up in any normal
7225 vCard reader, so those parts would have to go directly into a system
7226 handling invoices. I am a bit unsure how vCards without name parts
7227 are handled, but a simple test indicate that this work just fine.&lt;/p&gt;
7228
7229 &lt;p&gt;&lt;strong&gt;Update 2013-02-12 11:30&lt;/strong&gt;: Added KID to the proposal
7230 based on feedback from Sturle Sunde.&lt;/p&gt;
7231 </description>
7232 </item>
7233
7234 <item>
7235 <title>Sleep until morning - home automation for the kids</title>
7236 <link>http://people.skolelinux.org/pere/blog/Sleep_until_morning___home_automation_for_the_kids.html</link>
7237 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Sleep_until_morning___home_automation_for_the_kids.html</guid>
7238 <pubDate>Sun, 10 Feb 2013 12:50:00 +0100</pubDate>
7239 <description>&lt;p&gt;&lt;img align=&quot;left&quot; style=&quot;margin-right:25px;&quot; src=&quot;http://people.skolelinux.org/pere/blog/images/2013-02-10-morning-light.jpeg&quot;&gt;&lt;/p&gt;
7240
7241 &lt;p&gt;With kids in the house, one challenge is getting them to sleep
7242 during the night and wake up when it is morning. I mean, when I
7243 believe it is morning, and not two hours earlier. In our household we
7244 have decided that 07:00 is the turning point, but getting the kids to
7245 sleep until 07:00 is a small challenge every day. They have adapted
7246 quite well, and rarely wake up at 05:00 any more, but some times wake
7247 up at times like 05:50, 06:15, 06:30 or 06:45, and it is hard to put
7248 the awake one to bed again without disturbing and waking the rest.
7249 And I understand perfectly well that they fail to sleep until 07:00
7250 some times, as there is no way for them to know if it is before or
7251 after the magic moment without coming and asking us parents.&lt;/p&gt;
7252
7253 &lt;p&gt;But yesterday I came up with a method to solve this problem. It
7254 involve home automation. A few years ago I bought a
7255 &lt;a href=&quot;http://www.telldus.se/products/tellstick&quot;&gt;Tellstick&lt;/a&gt; and RF
7256 switches at the local &lt;a href=&quot;http://www.clasohlson.com/&quot;&gt;Clas
7257 Ohlson&lt;/a&gt; shop, allowing me to control lights and other electrical
7258 gadgets using my Linux server. When I moved from the old flat to a
7259 small house, I put away all this equipment as most of the lighting in
7260 the house was not using wall sockets and thus not easy to connect to
7261 the gadgets I had. But recently I bought a
7262 &lt;a href=&quot;http://www.telldus.se/products/tellstick_net&quot;&gt;Tellstick
7263 Net&lt;/a&gt; to be able to read sensor input as well as control power
7264 sockets. I want to control ovens in the basement to avoid the pipes
7265 to freeze, and monitor the humidity to detect flooding. The default
7266 setup for Tellstick Net is to be controlled by the vendor web service,
7267 which to me is a security problem, but it is also possible to build
7268 ones own
7269 &lt;a href=&quot;http://developer.telldus.com/blog/2012/03/02/help-us-develop-local-access-using-tellstick-net-build-your-own-firmware&quot;&gt;firmware
7270 with local access&lt;/A&gt; instead of being controlled by a Swedish
7271 company, thanks to the release of the GPL licensed firmware source
7272 code. I plan to get that running before I let it control anything
7273 important. But while working on this, one idea to make it easier for
7274 the kids came to me yesterday. We can set up a night light controlled
7275 by the computer, and turn it automatically on at 07:00. The kids can
7276 then check the light in the morning to know if they are supposed to
7277 get up or not. They joined me in setting everything up, and I
7278 repeated the concept several times before bed times to make sure they
7279 remembered to check the light before getting up in the morning.&lt;/p&gt;
7280
7281 &lt;p&gt;We tested it this morning, and all the kids stayed in bed until
7282 after 07:00, and every one of them commented on the fact that the
7283 &quot;morning light&quot; was turned on and signalled that the morning had
7284 arrived. So this look like a success, and I am excited to see how
7285 this develops the next few days. :) I really hope this can allow us
7286 all to sleep a bit longer in the morning.&lt;/p&gt;
7287
7288 &lt;p&gt;A nice advantage of this setup is that we can remote control when
7289 to tell the kids to get up. We do not have to wait until 07:00, and
7290 can also delay it if we want to.&lt;/p&gt;
7291 </description>
7292 </item>
7293
7294 <item>
7295 <title>Bitcoin GUI now available from Debian/unstable (and Ubuntu/raring)</title>
7296 <link>http://people.skolelinux.org/pere/blog/Bitcoin_GUI_now_available_from_Debian_unstable__and_Ubuntu_raring_.html</link>
7297 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Bitcoin_GUI_now_available_from_Debian_unstable__and_Ubuntu_raring_.html</guid>
7298 <pubDate>Sat, 2 Feb 2013 09:00:00 +0100</pubDate>
7299 <description>&lt;p&gt;My
7300 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/How_to_backport_bitcoin_qt_version_0_7_2_2_to_Debian_Squeeze.html&quot;&gt;last
7301 bitcoin related blog post&lt;/a&gt; mentioned that the new
7302 &lt;a href=&quot;http://packages.qa.debian.org/bitcoin&quot;&gt;bitcoin package&lt;/a&gt; for
7303 Debian was waiting in NEW. It was accepted by the Debian ftp-masters
7304 2013-01-19, and have been available in unstable since then. It was
7305 automatically copied to Ubuntu, and is available in their Raring
7306 version too.&lt;/p&gt;
7307
7308 &lt;p&gt;But there is a strange problem with the build that block this new
7309 version from being available on the i386 and kfreebsd-i386
7310 architectures. For some strange reason, the autobuilders in Debian
7311 for these architectures fail to run the test suite on these
7312 architectures (&lt;a href=&quot;http://bugs.debian.org/672524&quot;&gt;BTS #672524&lt;/a&gt;).
7313 We are so far unable to reproduce it when building it manually, and
7314 no-one have been able to propose a fix. If you got an idea what is
7315 failing, please let us know via the BTS.&lt;/p&gt;
7316
7317 &lt;p&gt;One feature that is annoying me with of the bitcoin client, because
7318 I often run low on disk space, is the fact that the client will exit
7319 if it run short on space (&lt;a href=&quot;http://bugs.debian.org/696715&quot;&gt;BTS
7320 #696715&lt;/a&gt;). So make sure you have enough disk space when you run
7321 it. :)&lt;/p&gt;
7322
7323 &lt;p&gt;As usual, if you use bitcoin and want to show your support of my
7324 activities, please send Bitcoin donations to my address
7325 &lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&amp;label=PetterReinholdtsenBlog&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
7326 </description>
7327 </item>
7328
7329 <item>
7330 <title>Welcome to the world, Isenkram!</title>
7331 <link>http://people.skolelinux.org/pere/blog/Welcome_to_the_world__Isenkram_.html</link>
7332 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Welcome_to_the_world__Isenkram_.html</guid>
7333 <pubDate>Tue, 22 Jan 2013 22:00:00 +0100</pubDate>
7334 <description>&lt;p&gt;Yesterday, I
7335 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/First_prototype_ready_making_hardware_easier_to_use_in_Debian.html&quot;&gt;asked
7336 for testers&lt;/a&gt; for my prototype for making Debian better at handling
7337 pluggable hardware devices, which I
7338 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Lets_make_hardware_dongles_easier_to_use_in_Debian.html&quot;&gt;set
7339 out to create&lt;/a&gt; earlier this month. Several valuable testers showed
7340 up, and caused me to really want to to open up the development to more
7341 people. But before I did this, I want to come up with a sensible name
7342 for this project. Today I finally decided on a new name, and I have
7343 renamed the project from hw-support-handler to this new name. In the
7344 process, I moved the source to git and made it available as a
7345 &lt;a href=&quot;http://anonscm.debian.org/gitweb/?p=collab-maint/isenkram.git&quot;&gt;collab-maint&lt;/a&gt;
7346 repository in Debian. The new name? It is &lt;strong&gt;Isenkram&lt;/strong&gt;.
7347 To fetch and build the latest version of the source, use&lt;/p&gt;
7348
7349 &lt;pre&gt;
7350 git clone http://anonscm.debian.org/git/collab-maint/isenkram.git
7351 cd isenkram &amp;&amp; git-buildpackage -us -uc
7352 &lt;/pre&gt;
7353
7354 &lt;p&gt;I have not yet adjusted all files to use the new name yet. If you
7355 want to hack on the source or improve the package, please go ahead.
7356 But please talk to me first on IRC or via email before you do major
7357 changes, to make sure we do not step on each others toes. :)&lt;/p&gt;
7358
7359 &lt;p&gt;If you wonder what &#39;isenkram&#39; is, it is a Norwegian word for iron
7360 stuff, typically meaning tools, nails, screws, etc. Typical hardware
7361 stuff, in other words. I&#39;ve been told it is the Norwegian variant of
7362 the German word eisenkram, for those that are familiar with that
7363 word.&lt;/p&gt;
7364
7365 &lt;p&gt;&lt;strong&gt;Update 2013-01-26&lt;/strong&gt;: Added -us -us to build
7366 instructions, to avoid confusing people with an error from the signing
7367 process.&lt;/p&gt;
7368
7369 &lt;p&gt;&lt;strong&gt;Update 2013-01-27&lt;/strong&gt;: Switch to HTTP URL for the git
7370 clone argument to avoid the need for authentication.&lt;/p&gt;
7371 </description>
7372 </item>
7373
7374 <item>
7375 <title>First prototype ready making hardware easier to use in Debian</title>
7376 <link>http://people.skolelinux.org/pere/blog/First_prototype_ready_making_hardware_easier_to_use_in_Debian.html</link>
7377 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/First_prototype_ready_making_hardware_easier_to_use_in_Debian.html</guid>
7378 <pubDate>Mon, 21 Jan 2013 12:00:00 +0100</pubDate>
7379 <description>&lt;p&gt;Early this month I set out to try to
7380 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Lets_make_hardware_dongles_easier_to_use_in_Debian.html&quot;&gt;improve
7381 the Debian support for pluggable hardware devices&lt;/a&gt;. Now my
7382 prototype is working, and it is ready for a larger audience. To test
7383 it, fetch the
7384 &lt;a href=&quot;http://anonscm.debian.org/viewvc/debian-edu/trunk/src/hw-support-handler/&quot;&gt;source
7385 from the Debian Edu subversion repository&lt;/a&gt;, build and install the
7386 package. You might have to log out and in again activate the
7387 autostart script.&lt;/p&gt;
7388
7389 &lt;p&gt;The design is simple:&lt;/p&gt;
7390
7391 &lt;ul&gt;
7392
7393 &lt;li&gt;Add desktop entry in /usr/share/autostart/ causing a program
7394 hw-support-handlerd to start when the user log in.&lt;/li&gt;
7395
7396 &lt;li&gt;This program listen for kernel events about new hardware (directly
7397 from the kernel like udev does), not using HAL dbus events as I
7398 initially did.&lt;/li&gt;
7399
7400 &lt;li&gt;When new hardware is inserted, look up the hardware modalias in
7401 the APT database, a database
7402 &lt;a href=&quot;http://anonscm.debian.org/viewvc/debian-edu/trunk/src/hw-support-handler/modaliases?view=markup&quot;&gt;available
7403 via HTTP&lt;/a&gt; and a database available as part of the package.&lt;/li&gt;
7404
7405 &lt;li&gt;If a package is mapped to the hardware in question, the package
7406 isn&#39;t installed yet and this is the first time the hardware was
7407 plugged in, show a desktop notification suggesting to install the
7408 package or packages.&lt;/li&gt;
7409
7410 &lt;li&gt;If the user click on the &#39;install package now&#39; button, ask
7411 aptdaemon via the PackageKit API to install the requrired package.&lt;/li&gt;
7412
7413 &lt;li&gt;aptdaemon ask for root password or sudo password, and install the
7414 package while showing progress information in a window.&lt;/li&gt;
7415
7416 &lt;/ul&gt;
7417
7418 &lt;p&gt;I still need to come up with a better name for the system. Here
7419 are some screen shots showing the prototype in action. First the
7420 notification, then the password request, and finally the request to
7421 approve all the dependencies. Sorry for the Norwegian Bokmål GUI.&lt;/p&gt;
7422
7423 &lt;p&gt;&lt;img src=&quot;http://people.skolelinux.org/pere/blog/images/2013-01-21-hw-support-1-notification.png&quot;&gt;
7424 &lt;br&gt;&lt;img src=&quot;http://people.skolelinux.org/pere/blog/images/2013-01-21-hw-support-2-password.png&quot;&gt;
7425 &lt;br&gt;&lt;img src=&quot;http://people.skolelinux.org/pere/blog/images/2013-01-21-hw-support-3-dependencies.png&quot;&gt;
7426 &lt;br&gt;&lt;img src=&quot;http://people.skolelinux.org/pere/blog/images/2013-01-21-hw-support-4-installing.png&quot;&gt;
7427 &lt;br&gt;&lt;img src=&quot;http://people.skolelinux.org/pere/blog/images/2013-01-21-hw-support-5-installing-details.png&quot; width=&quot;70%&quot;&gt;&lt;/p&gt;
7428
7429 &lt;p&gt;The prototype still need to be improved with longer timeouts, but
7430 is already useful. The database of hardware to package mappings also
7431 need more work. It is currently compatible with the Ubuntu way of
7432 storing such information in the package control file, but could be
7433 changed to use other formats instead or in addition to the current
7434 method. I&#39;ve dropped the use of discover for this mapping, as the
7435 modalias approach is more flexible and easier to use on Linux as long
7436 as the Linux kernel expose its modalias strings directly.&lt;/p&gt;
7437
7438 &lt;p&gt;&lt;strong&gt;Update 2013-01-21 16:50&lt;/strong&gt;: Due to popular demand,
7439 here is the command required to check out and build the source: Use
7440 &#39;&lt;tt&gt;svn checkout
7441 svn://svn.debian.org/debian-edu/trunk/src/hw-support-handler/; cd
7442 hw-support-handler; debuild&lt;/tt&gt;&#39;. If you lack debuild, install the
7443 devscripts package.&lt;/p&gt;
7444
7445 &lt;p&gt;&lt;strong&gt;Update 2013-01-23 12:00&lt;/strong&gt;: The project is now
7446 renamed to Isenkram and the source moved from the Debian Edu
7447 subversion repository to a Debian collab-maint git repository. See
7448 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Welcome_to_the_world__Isenkram_.html&quot;&gt;build
7449 instructions&lt;/a&gt; for details.&lt;/p&gt;
7450 </description>
7451 </item>
7452
7453 <item>
7454 <title>Thank you Thinkpad X41, for your long and trustworthy service</title>
7455 <link>http://people.skolelinux.org/pere/blog/Thank_you_Thinkpad_X41__for_your_long_and_trustworthy_service.html</link>
7456 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Thank_you_Thinkpad_X41__for_your_long_and_trustworthy_service.html</guid>
7457 <pubDate>Sat, 19 Jan 2013 09:20:00 +0100</pubDate>
7458 <description>&lt;p&gt;This Christmas my trusty old laptop died. It died quietly and
7459 suddenly in bed. With a quiet whimper, it went completely quiet and
7460 black. The power button was no longer able to turn it on. It was a
7461 IBM Thinkpad X41, and the best laptop I ever had. Better than both
7462 Thinkpads X30, X31, X40, X60, X61 and X61S. Far better than the
7463 Compaq I had before that. Now I need to find a replacement. To keep
7464 going during Christmas, I moved the one year old SSD disk to my old
7465 X40 where it fitted (only one I had left that could use it), but it is
7466 not a durable solution.
7467
7468 &lt;p&gt;My laptop needs are fairly modest. This is my wishlist from when I
7469 got a new one more than 10 years ago. It still holds true.:)&lt;/p&gt;
7470
7471 &lt;ul&gt;
7472
7473 &lt;li&gt;Lightweight (around 1 kg) and small volume (preferably smaller
7474 than A4).&lt;/li&gt;
7475 &lt;li&gt;Robust, it will be in my backpack every day.&lt;/li&gt;
7476 &lt;li&gt;Three button mouse and a mouse pin instead of touch pad.&lt;/li&gt;
7477 &lt;li&gt;Long battery life time. Preferable a week.&lt;/li&gt;
7478 &lt;li&gt;Internal WIFI network card.&lt;/li&gt;
7479 &lt;li&gt;Internal Twisted Pair network card.&lt;/li&gt;
7480 &lt;li&gt;Some USB slots (2-3 is plenty)&lt;/li&gt;
7481 &lt;li&gt;Good keyboard - similar to the Thinkpad.&lt;/li&gt;
7482 &lt;li&gt;Video resolution at least 1024x768, with size around 12&quot; (A4 paper
7483 size).&lt;/li&gt;
7484 &lt;li&gt;Hardware supported by Debian Stable, ie the default kernel and
7485 X.org packages.&lt;/li&gt;
7486 &lt;li&gt;Quiet, preferably fan free (or at least not using the fan most of
7487 the time).
7488
7489 &lt;/ul&gt;
7490
7491 &lt;p&gt;You will notice that there are no RAM and CPU requirements in the
7492 list. The reason is simply that the specifications on laptops the
7493 last 10-15 years have been sufficient for my needs, and I have to look
7494 at other features to choose my laptop. But are there still made as
7495 robust laptops as my X41? The Thinkpad X60/X61 proved to be less
7496 robust, and Thinkpads seem to be heading in the wrong direction since
7497 Lenovo took over. But I&#39;ve been told that X220 and X1 Carbon might
7498 still be useful.&lt;/p&gt;
7499
7500 &lt;p&gt;Perhaps I should rethink my needs, and look for a pad with an
7501 external keyboard? I&#39;ll have to check the
7502 &lt;a href=&quot;http://www.linux-laptop.net/&quot;&gt;Linux Laptops site&lt;/a&gt; for
7503 well-supported laptops, or perhaps just buy one preinstalled from one
7504 of the vendors listed on the &lt;a href=&quot;http://linuxpreloaded.com/&quot;&gt;Linux
7505 Pre-loaded site&lt;/a&gt;.&lt;/p&gt;
7506 </description>
7507 </item>
7508
7509 <item>
7510 <title>How to find a browser plugin supporting a given MIME type</title>
7511 <link>http://people.skolelinux.org/pere/blog/How_to_find_a_browser_plugin_supporting_a_given_MIME_type.html</link>
7512 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/How_to_find_a_browser_plugin_supporting_a_given_MIME_type.html</guid>
7513 <pubDate>Fri, 18 Jan 2013 10:40:00 +0100</pubDate>
7514 <description>&lt;p&gt;Some times I try to figure out which Iceweasel browser plugin to
7515 install to get support for a given MIME type. Thanks to
7516 &lt;a href=&quot;https://wiki.ubuntu.com/MozillaTeam/Plugins&quot;&gt;specifications
7517 done by Ubuntu&lt;/a&gt; and Mozilla, it is possible to do this in Debian.
7518 Unfortunately, not very many packages provide the needed meta
7519 information, Anyway, here is a small script to look up all browser
7520 plugin packages announcing ther MIME support using this specification:&lt;/p&gt;
7521
7522 &lt;pre&gt;
7523 #!/usr/bin/python
7524 import sys
7525 import apt
7526 def pkgs_handling_mimetype(mimetype):
7527 cache = apt.Cache()
7528 cache.open(None)
7529 thepkgs = []
7530 for pkg in cache:
7531 version = pkg.candidate
7532 if version is None:
7533 version = pkg.installed
7534 if version is None:
7535 continue
7536 record = version.record
7537 if not record.has_key(&#39;Npp-MimeType&#39;):
7538 continue
7539 mime_types = record[&#39;Npp-MimeType&#39;].split(&#39;,&#39;)
7540 for t in mime_types:
7541 t = t.rstrip().strip()
7542 if t == mimetype:
7543 thepkgs.append(pkg.name)
7544 return thepkgs
7545 mimetype = &quot;audio/ogg&quot;
7546 if 1 &lt; len(sys.argv):
7547 mimetype = sys.argv[1]
7548 print &quot;Browser plugin packages supporting %s:&quot; % mimetype
7549 for pkg in pkgs_handling_mimetype(mimetype):
7550 print &quot; %s&quot; %pkg
7551 &lt;/pre&gt;
7552
7553 &lt;p&gt;It can be used like this to look up a given MIME type:&lt;/p&gt;
7554
7555 &lt;pre&gt;
7556 % ./apt-find-browserplug-for-mimetype
7557 Browser plugin packages supporting audio/ogg:
7558 gecko-mediaplayer
7559 % ./apt-find-browserplug-for-mimetype application/x-shockwave-flash
7560 Browser plugin packages supporting application/x-shockwave-flash:
7561 browser-plugin-gnash
7562 %
7563 &lt;/pre&gt;
7564
7565 &lt;p&gt;In Ubuntu this mechanism is combined with support in the browser
7566 itself to query for plugins and propose to install the needed
7567 packages. It would be great if Debian supported such feature too. Is
7568 anyone working on adding it?&lt;/p&gt;
7569
7570 &lt;p&gt;&lt;strong&gt;Update 2013-01-18 14:20&lt;/strong&gt;: The Debian BTS
7571 request for icweasel support for this feature is
7572 &lt;a href=&quot;http://bugs.debian.org/484010&quot;&gt;#484010&lt;/a&gt; from 2008 (and
7573 &lt;a href=&quot;http://bugs.debian.org/698426&quot;&gt;#698426&lt;/a&gt; from today). Lack
7574 of manpower and wish for a different design is the reason thus feature
7575 is not yet in iceweasel from Debian.&lt;/p&gt;
7576 </description>
7577 </item>
7578
7579 <item>
7580 <title>What is the most supported MIME type in Debian?</title>
7581 <link>http://people.skolelinux.org/pere/blog/What_is_the_most_supported_MIME_type_in_Debian_.html</link>
7582 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/What_is_the_most_supported_MIME_type_in_Debian_.html</guid>
7583 <pubDate>Wed, 16 Jan 2013 10:10:00 +0100</pubDate>
7584 <description>&lt;p&gt;The &lt;a href=&quot;http://wiki.debian.org/AppStreamDebianProposal&quot;&gt;DEP-11
7585 proposal to add AppStream information to the Debian archive&lt;/a&gt;, is a
7586 proposal to make it possible for a Desktop application to propose to
7587 the user some package to install to gain support for a given MIME
7588 type, font, library etc. that is currently missing. With such
7589 mechanism in place, it would be possible for the desktop to
7590 automatically propose and install leocad if some LDraw file is
7591 downloaded by the browser.&lt;/p&gt;
7592
7593 &lt;p&gt;To get some idea about the current content of the archive, I decided
7594 to write a simple program to extract all .desktop files from the
7595 Debian archive and look up the claimed MIME support there. The result
7596 can be found on the
7597 &lt;a href=&quot;http://ftp.skolelinux.org/pub/AppStreamTest&quot;&gt;Skolelinux FTP
7598 site&lt;/a&gt;. Using the collected information, it become possible to
7599 answer the question in the title. Here are the 20 most supported MIME
7600 types in Debian stable (Squeeze), testing (Wheezy) and unstable (Sid).
7601 The complete list is available from the link above.&lt;/p&gt;
7602
7603 &lt;p&gt;&lt;strong&gt;Debian Stable:&lt;/strong&gt;&lt;/p&gt;
7604
7605 &lt;pre&gt;
7606 count MIME type
7607 ----- -----------------------
7608 32 text/plain
7609 30 audio/mpeg
7610 29 image/png
7611 28 image/jpeg
7612 27 application/ogg
7613 26 audio/x-mp3
7614 25 image/tiff
7615 25 image/gif
7616 22 image/bmp
7617 22 audio/x-wav
7618 20 audio/x-flac
7619 19 audio/x-mpegurl
7620 18 video/x-ms-asf
7621 18 audio/x-musepack
7622 18 audio/x-mpeg
7623 18 application/x-ogg
7624 17 video/mpeg
7625 17 audio/x-scpls
7626 17 audio/ogg
7627 16 video/x-ms-wmv
7628 &lt;/pre&gt;
7629
7630 &lt;p&gt;&lt;strong&gt;Debian Testing:&lt;/strong&gt;&lt;/p&gt;
7631
7632 &lt;pre&gt;
7633 count MIME type
7634 ----- -----------------------
7635 33 text/plain
7636 32 image/png
7637 32 image/jpeg
7638 29 audio/mpeg
7639 27 image/gif
7640 26 image/tiff
7641 26 application/ogg
7642 25 audio/x-mp3
7643 22 image/bmp
7644 21 audio/x-wav
7645 19 audio/x-mpegurl
7646 19 audio/x-mpeg
7647 18 video/mpeg
7648 18 audio/x-scpls
7649 18 audio/x-flac
7650 18 application/x-ogg
7651 17 video/x-ms-asf
7652 17 text/html
7653 17 audio/x-musepack
7654 16 image/x-xbitmap
7655 &lt;/pre&gt;
7656
7657 &lt;p&gt;&lt;strong&gt;Debian Unstable:&lt;/strong&gt;&lt;/p&gt;
7658
7659 &lt;pre&gt;
7660 count MIME type
7661 ----- -----------------------
7662 31 text/plain
7663 31 image/png
7664 31 image/jpeg
7665 29 audio/mpeg
7666 28 application/ogg
7667 27 image/gif
7668 26 image/tiff
7669 26 audio/x-mp3
7670 23 audio/x-wav
7671 22 image/bmp
7672 21 audio/x-flac
7673 20 audio/x-mpegurl
7674 19 audio/x-mpeg
7675 18 video/x-ms-asf
7676 18 video/mpeg
7677 18 audio/x-scpls
7678 18 application/x-ogg
7679 17 audio/x-musepack
7680 16 video/x-ms-wmv
7681 16 video/x-msvideo
7682 &lt;/pre&gt;
7683
7684 &lt;p&gt;I am told that PackageKit can provide an API to access the kind of
7685 information mentioned in DEP-11. I have not yet had time to look at
7686 it, but hope the PackageKit people in Debian are on top of these
7687 issues.&lt;/p&gt;
7688
7689 &lt;p&gt;&lt;strong&gt;Update 2013-01-16 13:35&lt;/strong&gt;: Updated numbers after
7690 discovering a typo in my script.&lt;/p&gt;
7691 </description>
7692 </item>
7693
7694 <item>
7695 <title>Using modalias info to find packages handling my hardware</title>
7696 <link>http://people.skolelinux.org/pere/blog/Using_modalias_info_to_find_packages_handling_my_hardware.html</link>
7697 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Using_modalias_info_to_find_packages_handling_my_hardware.html</guid>
7698 <pubDate>Tue, 15 Jan 2013 08:00:00 +0100</pubDate>
7699 <description>&lt;p&gt;Yesterday, I wrote about the
7700 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Modalias_strings___a_practical_way_to_map__stuff__to_hardware.html&quot;&gt;modalias
7701 values provided by the Linux kernel&lt;/a&gt; following my hope for
7702 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Lets_make_hardware_dongles_easier_to_use_in_Debian.html&quot;&gt;better
7703 dongle support in Debian&lt;/a&gt;. Using this knowledge, I have tested how
7704 modalias values attached to package names can be used to map packages
7705 to hardware. This allow the system to look up and suggest relevant
7706 packages when I plug in some new hardware into my machine, and replace
7707 discover and discover-data as the database used to map hardware to
7708 packages.&lt;/p&gt;
7709
7710 &lt;p&gt;I create a modaliases file with entries like the following,
7711 containing package name, kernel module name (if relevant, otherwise
7712 the package name) and globs matching the relevant hardware
7713 modalias.&lt;/p&gt;
7714
7715 &lt;p&gt;&lt;blockquote&gt;
7716 Package: package-name
7717 &lt;br&gt;Modaliases: module(modaliasglob, modaliasglob, modaliasglob)&lt;/p&gt;
7718 &lt;/blockquote&gt;&lt;/p&gt;
7719
7720 &lt;p&gt;It is fairly trivial to write code to find the relevant packages
7721 for a given modalias value using this file.&lt;/p&gt;
7722
7723 &lt;p&gt;An entry like this would suggest the video and picture application
7724 cheese for many USB web cameras (interface bus class 0E01):&lt;/p&gt;
7725
7726 &lt;p&gt;&lt;blockquote&gt;
7727 Package: cheese
7728 &lt;br&gt;Modaliases: cheese(usb:v*p*d*dc*dsc*dp*ic0Eisc01ip*)&lt;/p&gt;
7729 &lt;/blockquote&gt;&lt;/p&gt;
7730
7731 &lt;p&gt;An entry like this would suggest the pcmciautils package when a
7732 CardBus bridge (bus class 0607) PCI device is present:&lt;/p&gt;
7733
7734 &lt;p&gt;&lt;blockquote&gt;
7735 Package: pcmciautils
7736 &lt;br&gt;Modaliases: pcmciautils(pci:v*d*sv*sd*bc06sc07i*)
7737 &lt;/blockquote&gt;&lt;/p&gt;
7738
7739 &lt;p&gt;An entry like this would suggest the package colorhug-client when
7740 plugging in a ColorHug with USB IDs 04D8:F8DA:&lt;/p&gt;
7741
7742 &lt;p&gt;&lt;blockquote&gt;
7743 Package: colorhug-client
7744 &lt;br&gt;Modaliases: colorhug-client(usb:v04D8pF8DAd*)&lt;/p&gt;
7745 &lt;/blockquote&gt;&lt;/p&gt;
7746
7747 &lt;p&gt;I believe the format is compatible with the format of the Packages
7748 file in the Debian archive. Ubuntu already uses their Packages file
7749 to store their mappings from packages to hardware.&lt;/p&gt;
7750
7751 &lt;p&gt;By adding a XB-Modaliases: header in debian/control, any .deb can
7752 announce the hardware it support in a way my prototype understand.
7753 This allow those publishing packages in an APT source outside the
7754 Debian archive as well as those backporting packages to make sure the
7755 hardware mapping are included in the package meta information. I&#39;ve
7756 tested such header in the pymissile package, and its modalias mapping
7757 is working as it should with my prototype. It even made it to Ubuntu
7758 Raring.&lt;/p&gt;
7759
7760 &lt;p&gt;To test if it was possible to look up supported hardware using only
7761 the shell tools available in the Debian installer, I wrote a shell
7762 implementation of the lookup code. The idea is to create files for
7763 each modalias and let the shell do the matching. Please check out and
7764 try the
7765 &lt;a href=&quot;http://anonscm.debian.org/viewvc/debian-edu/trunk/src/hw-support-handler/hw-support-lookup?view=co&quot;&gt;hw-support-lookup&lt;/a&gt;
7766 shell script. It run without any extra dependencies and fetch the
7767 hardware mappings from the Debian archive and the subversion
7768 repository where I currently work on my prototype.&lt;/p&gt;
7769
7770 &lt;p&gt;When I use it on a machine with a yubikey inserted, it suggest to
7771 install yubikey-personalization:&lt;/p&gt;
7772
7773 &lt;p&gt;&lt;blockquote&gt;
7774 % ./hw-support-lookup
7775 &lt;br&gt;yubikey-personalization
7776 &lt;br&gt;%
7777 &lt;/blockquote&gt;&lt;/p&gt;
7778
7779 &lt;p&gt;When I run it on my Thinkpad X40 with a PCMCIA/CardBus slot, it
7780 propose to install the pcmciautils package:&lt;/p&gt;
7781
7782 &lt;p&gt;&lt;blockquote&gt;
7783 % ./hw-support-lookup
7784 &lt;br&gt;pcmciautils
7785 &lt;br&gt;%
7786 &lt;/blockquote&gt;&lt;/p&gt;
7787
7788 &lt;p&gt;If you know of any hardware-package mapping that should be added to
7789 &lt;a href=&quot;http://anonscm.debian.org/viewvc/debian-edu/trunk/src/hw-support-handler/modaliases?view=co&quot;&gt;my
7790 database&lt;/a&gt;, please tell me about it.&lt;/p&gt;
7791
7792 &lt;p&gt;It could be possible to generate several of the mappings between
7793 packages and hardware. One source would be to look at packages with
7794 kernel modules, ie packages with *.ko files in /lib/modules/, and
7795 extract their modalias information. Another would be to look at
7796 packages with udev rules, ie packages with files in
7797 /lib/udev/rules.d/, and extract their vendor/model information to
7798 generate a modalias matching rule. I have not tested any of these to
7799 see if it work.&lt;/p&gt;
7800
7801 &lt;p&gt;If you want to help implementing a system to let us propose what
7802 packages to install when new hardware is plugged into a Debian
7803 machine, please send me an email or talk to me on
7804 &lt;a href=&quot;irc://irc.debian.org/%23debian-devel&quot;&gt;#debian-devel&lt;/a&gt;.&lt;/p&gt;
7805 </description>
7806 </item>
7807
7808 <item>
7809 <title>Modalias strings - a practical way to map &quot;stuff&quot; to hardware</title>
7810 <link>http://people.skolelinux.org/pere/blog/Modalias_strings___a_practical_way_to_map__stuff__to_hardware.html</link>
7811 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Modalias_strings___a_practical_way_to_map__stuff__to_hardware.html</guid>
7812 <pubDate>Mon, 14 Jan 2013 11:20:00 +0100</pubDate>
7813 <description>&lt;p&gt;While looking into how to look up Debian packages based on hardware
7814 information, to find the packages that support a given piece of
7815 hardware, I refreshed my memory regarding modalias values, and decided
7816 to document the details. Here are my findings so far, also available
7817 in
7818 &lt;a href=&quot;http://anonscm.debian.org/viewvc/debian-edu/trunk/src/hw-support-handler/&quot;&gt;the
7819 Debian Edu subversion repository&lt;/a&gt;:
7820
7821 &lt;p&gt;&lt;strong&gt;Modalias decoded&lt;/strong&gt;&lt;/p&gt;
7822
7823 &lt;p&gt;This document try to explain what the different types of modalias
7824 values stands for. It is in part based on information from
7825 &amp;lt;URL: &lt;a href=&quot;https://wiki.archlinux.org/index.php/Modalias&quot;&gt;https://wiki.archlinux.org/index.php/Modalias&lt;/a&gt; &amp;gt;,
7826 &amp;lt;URL: &lt;a href=&quot;http://unix.stackexchange.com/questions/26132/how-to-assign-usb-driver-to-device&quot;&gt;http://unix.stackexchange.com/questions/26132/how-to-assign-usb-driver-to-device&lt;/a&gt; &amp;gt;,
7827 &amp;lt;URL: &lt;a href=&quot;http://code.metager.de/source/history/linux/stable/scripts/mod/file2alias.c&quot;&gt;http://code.metager.de/source/history/linux/stable/scripts/mod/file2alias.c&lt;/a&gt; &amp;gt; and
7828 &amp;lt;URL: &lt;a href=&quot;http://cvs.savannah.gnu.org/viewvc/dmidecode/dmidecode.c?root=dmidecode&amp;view=markup&quot;&gt;http://cvs.savannah.gnu.org/viewvc/dmidecode/dmidecode.c?root=dmidecode&amp;view=markup&lt;/a&gt; &amp;gt;.
7829
7830 &lt;p&gt;The modalias entries for a given Linux machine can be found using
7831 this shell script:&lt;/p&gt;
7832
7833 &lt;pre&gt;
7834 find /sys -name modalias -print0 | xargs -0 cat | sort -u
7835 &lt;/pre&gt;
7836
7837 &lt;p&gt;The supported modalias globs for a given kernel module can be found
7838 using modinfo:&lt;/p&gt;
7839
7840 &lt;pre&gt;
7841 % /sbin/modinfo psmouse | grep alias:
7842 alias: serio:ty05pr*id*ex*
7843 alias: serio:ty01pr*id*ex*
7844 %
7845 &lt;/pre&gt;
7846
7847 &lt;p&gt;&lt;strong&gt;PCI subtype&lt;/strong&gt;&lt;/p&gt;
7848
7849 &lt;p&gt;A typical PCI entry can look like this. This is an Intel Host
7850 Bridge memory controller:&lt;/p&gt;
7851
7852 &lt;p&gt;&lt;blockquote&gt;
7853 pci:v00008086d00002770sv00001028sd000001ADbc06sc00i00
7854 &lt;/blockquote&gt;&lt;/p&gt;
7855
7856 &lt;p&gt;This represent these values:&lt;/p&gt;
7857
7858 &lt;pre&gt;
7859 v 00008086 (vendor)
7860 d 00002770 (device)
7861 sv 00001028 (subvendor)
7862 sd 000001AD (subdevice)
7863 bc 06 (bus class)
7864 sc 00 (bus subclass)
7865 i 00 (interface)
7866 &lt;/pre&gt;
7867
7868 &lt;p&gt;The vendor/device values are the same values outputted from &#39;lspci
7869 -n&#39; as 8086:2770. The bus class/subclass is also shown by lspci as
7870 0600. The 0600 class is a host bridge. Other useful bus values are
7871 0300 (VGA compatible card) and 0200 (Ethernet controller).&lt;/p&gt;
7872
7873 &lt;p&gt;Not sure how to figure out the interface value, nor what it
7874 means.&lt;/p&gt;
7875
7876 &lt;p&gt;&lt;strong&gt;USB subtype&lt;/strong&gt;&lt;/p&gt;
7877
7878 &lt;p&gt;Some typical USB entries can look like this. This is an internal
7879 USB hub in a laptop:&lt;/p&gt;
7880
7881 &lt;p&gt;&lt;blockquote&gt;
7882 usb:v1D6Bp0001d0206dc09dsc00dp00ic09isc00ip00
7883 &lt;/blockquote&gt;&lt;/p&gt;
7884
7885 &lt;p&gt;Here is the values included in this alias:&lt;/p&gt;
7886
7887 &lt;pre&gt;
7888 v 1D6B (device vendor)
7889 p 0001 (device product)
7890 d 0206 (bcddevice)
7891 dc 09 (device class)
7892 dsc 00 (device subclass)
7893 dp 00 (device protocol)
7894 ic 09 (interface class)
7895 isc 00 (interface subclass)
7896 ip 00 (interface protocol)
7897 &lt;/pre&gt;
7898
7899 &lt;p&gt;The 0900 device class/subclass means hub. Some times the relevant
7900 class is in the interface class section. For a simple USB web camera,
7901 these alias entries show up:&lt;/p&gt;
7902
7903 &lt;p&gt;&lt;blockquote&gt;
7904 usb:v0AC8p3420d5000dcEFdsc02dp01ic01isc01ip00
7905 &lt;br&gt;usb:v0AC8p3420d5000dcEFdsc02dp01ic01isc02ip00
7906 &lt;br&gt;usb:v0AC8p3420d5000dcEFdsc02dp01ic0Eisc01ip00
7907 &lt;br&gt;usb:v0AC8p3420d5000dcEFdsc02dp01ic0Eisc02ip00
7908 &lt;/blockquote&gt;&lt;/p&gt;
7909
7910 &lt;p&gt;Interface class 0E01 is video control, 0E02 is video streaming (aka
7911 camera), 0101 is audio control device and 0102 is audio streaming (aka
7912 microphone). Thus this is a camera with microphone included.&lt;/p&gt;
7913
7914 &lt;p&gt;&lt;strong&gt;ACPI subtype&lt;/strong&gt;&lt;/p&gt;
7915
7916 &lt;p&gt;The ACPI type is used for several non-PCI/USB stuff. This is an IR
7917 receiver in a Thinkpad X40:&lt;/p&gt;
7918
7919 &lt;p&gt;&lt;blockquote&gt;
7920 acpi:IBM0071:PNP0511:
7921 &lt;/blockquote&gt;&lt;/p&gt;
7922
7923 &lt;p&gt;The values between the colons are IDs.&lt;/p&gt;
7924
7925 &lt;p&gt;&lt;strong&gt;DMI subtype&lt;/strong&gt;&lt;/p&gt;
7926
7927 &lt;p&gt;The DMI table contain lots of information about the computer case
7928 and model. This is an entry for a IBM Thinkpad X40, fetched from
7929 /sys/devices/virtual/dmi/id/modalias:&lt;/p&gt;
7930
7931 &lt;p&gt;&lt;blockquote&gt;
7932 dmi:bvnIBM:bvr1UETB6WW(1.66):bd06/15/2005:svnIBM:pn2371H4G:pvrThinkPadX40:rvnIBM:rn2371H4G:rvrNotAvailable:cvnIBM:ct10:cvrNotAvailable:
7933 &lt;/blockquote&gt;&lt;/p&gt;
7934
7935 &lt;p&gt;The values present are&lt;/p&gt;
7936
7937 &lt;pre&gt;
7938 bvn IBM (BIOS vendor)
7939 bvr 1UETB6WW(1.66) (BIOS version)
7940 bd 06/15/2005 (BIOS date)
7941 svn IBM (system vendor)
7942 pn 2371H4G (product name)
7943 pvr ThinkPadX40 (product version)
7944 rvn IBM (board vendor)
7945 rn 2371H4G (board name)
7946 rvr NotAvailable (board version)
7947 cvn IBM (chassis vendor)
7948 ct 10 (chassis type)
7949 cvr NotAvailable (chassis version)
7950 &lt;/pre&gt;
7951
7952 &lt;p&gt;The chassis type 10 is Notebook. Other interesting values can be
7953 found in the dmidecode source:&lt;/p&gt;
7954
7955 &lt;pre&gt;
7956 3 Desktop
7957 4 Low Profile Desktop
7958 5 Pizza Box
7959 6 Mini Tower
7960 7 Tower
7961 8 Portable
7962 9 Laptop
7963 10 Notebook
7964 11 Hand Held
7965 12 Docking Station
7966 13 All In One
7967 14 Sub Notebook
7968 15 Space-saving
7969 16 Lunch Box
7970 17 Main Server Chassis
7971 18 Expansion Chassis
7972 19 Sub Chassis
7973 20 Bus Expansion Chassis
7974 21 Peripheral Chassis
7975 22 RAID Chassis
7976 23 Rack Mount Chassis
7977 24 Sealed-case PC
7978 25 Multi-system
7979 26 CompactPCI
7980 27 AdvancedTCA
7981 28 Blade
7982 29 Blade Enclosing
7983 &lt;/pre&gt;
7984
7985 &lt;p&gt;The chassis type values are not always accurately set in the DMI
7986 table. For example my home server is a tower, but the DMI modalias
7987 claim it is a desktop.&lt;/p&gt;
7988
7989 &lt;p&gt;&lt;strong&gt;SerIO subtype&lt;/strong&gt;&lt;/p&gt;
7990
7991 &lt;p&gt;This type is used for PS/2 mouse plugs. One example is from my
7992 test machine:&lt;/p&gt;
7993
7994 &lt;p&gt;&lt;blockquote&gt;
7995 serio:ty01pr00id00ex00
7996 &lt;/blockquote&gt;&lt;/p&gt;
7997
7998 &lt;p&gt;The values present are&lt;/p&gt;
7999
8000 &lt;pre&gt;
8001 ty 01 (type)
8002 pr 00 (prototype)
8003 id 00 (id)
8004 ex 00 (extra)
8005 &lt;/pre&gt;
8006
8007 &lt;p&gt;This type is supported by the psmouse driver. I am not sure what
8008 the valid values are.&lt;/p&gt;
8009
8010 &lt;p&gt;&lt;strong&gt;Other subtypes&lt;/strong&gt;&lt;/p&gt;
8011
8012 &lt;p&gt;There are heaps of other modalias subtypes according to
8013 file2alias.c. There is the rest of the list from that source: amba,
8014 ap, bcma, ccw, css, eisa, hid, i2c, ieee1394, input, ipack, isapnp,
8015 mdio, of, parisc, pcmcia, platform, scsi, sdio, spi, ssb, vio, virtio,
8016 vmbus, x86cpu and zorro. I did not spend time documenting all of
8017 these, as they do not seem relevant for my intended use with mapping
8018 hardware to packages when new stuff is inserted during run time.&lt;/p&gt;
8019
8020 &lt;p&gt;&lt;strong&gt;Looking up kernel modules using modalias values&lt;/strong&gt;&lt;/p&gt;
8021
8022 &lt;p&gt;To check which kernel modules provide support for a given modalias,
8023 one can use the following shell script:&lt;/p&gt;
8024
8025 &lt;pre&gt;
8026 for id in $(find /sys -name modalias -print0 | xargs -0 cat | sort -u); do \
8027 echo &quot;$id&quot; ; \
8028 /sbin/modprobe --show-depends &quot;$id&quot;|sed &#39;s/^/ /&#39; ; \
8029 done
8030 &lt;/pre&gt;
8031
8032 &lt;p&gt;The output can look like this (only the first few entries as the
8033 list is very long on my test machine):&lt;/p&gt;
8034
8035 &lt;pre&gt;
8036 acpi:ACPI0003:
8037 insmod /lib/modules/2.6.32-5-686/kernel/drivers/acpi/ac.ko
8038 acpi:device:
8039 FATAL: Module acpi:device: not found.
8040 acpi:IBM0068:
8041 insmod /lib/modules/2.6.32-5-686/kernel/drivers/char/nvram.ko
8042 insmod /lib/modules/2.6.32-5-686/kernel/drivers/leds/led-class.ko
8043 insmod /lib/modules/2.6.32-5-686/kernel/net/rfkill/rfkill.ko
8044 insmod /lib/modules/2.6.32-5-686/kernel/drivers/platform/x86/thinkpad_acpi.ko
8045 acpi:IBM0071:PNP0511:
8046 insmod /lib/modules/2.6.32-5-686/kernel/lib/crc-ccitt.ko
8047 insmod /lib/modules/2.6.32-5-686/kernel/net/irda/irda.ko
8048 insmod /lib/modules/2.6.32-5-686/kernel/drivers/net/irda/nsc-ircc.ko
8049 [...]
8050 &lt;/pre&gt;
8051
8052 &lt;p&gt;If you want to help implementing a system to let us propose what
8053 packages to install when new hardware is plugged into a Debian
8054 machine, please send me an email or talk to me on
8055 &lt;a href=&quot;irc://irc.debian.org/%23debian-devel&quot;&gt;#debian-devel&lt;/a&gt;.&lt;/p&gt;
8056
8057 &lt;p&gt;&lt;strong&gt;Update 2013-01-15:&lt;/strong&gt; Rewrite &quot;cat $(find ...)&quot; to
8058 &quot;find ... -print0 | xargs -0 cat&quot; to make sure it handle directories
8059 in /sys/ with space in them.&lt;/p&gt;
8060 </description>
8061 </item>
8062
8063 <item>
8064 <title>Moved the pymissile Debian packaging to collab-maint</title>
8065 <link>http://people.skolelinux.org/pere/blog/Moved_the_pymissile_Debian_packaging_to_collab_maint.html</link>
8066 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Moved_the_pymissile_Debian_packaging_to_collab_maint.html</guid>
8067 <pubDate>Thu, 10 Jan 2013 20:40:00 +0100</pubDate>
8068 <description>&lt;p&gt;As part of my investigation on how to improve the support in Debian
8069 for hardware dongles, I dug up my old Mark and Spencer USB Rocket
8070 Launcher and updated the Debian package
8071 &lt;a href=&quot;http://packages.qa.debian.org/pymissile&quot;&gt;pymissile&lt;/a&gt; to make
8072 sure udev will fix the device permissions when it is plugged in. I
8073 also added a &quot;Modaliases&quot; header to test it in the Debian archive and
8074 hopefully make the package be proposed by jockey in Ubuntu when a user
8075 plug in his rocket launcher. In the process I moved the source to a
8076 git repository under collab-maint, to make it easier for any DD to
8077 contribute. &lt;a href=&quot;http://code.google.com/p/pymissile/&quot;&gt;Upstream&lt;/a&gt;
8078 is not very active, but the software still work for me even after five
8079 years of relative silence. The new git repository is not listed in
8080 the uploaded package yet, because I want to test the other changes a
8081 bit more before I upload the new version. If you want to check out
8082 the new version with a .desktop file included, visit the
8083 &lt;a href=&quot;http://anonscm.debian.org/gitweb/?p=collab-maint/pymissile.git&quot;&gt;gitweb
8084 view&lt;/a&gt; or use &quot;&lt;tt&gt;git clone
8085 git://anonscm.debian.org/collab-maint/pymissile.git&lt;/tt&gt;&quot;.&lt;/p&gt;
8086 </description>
8087 </item>
8088
8089 <item>
8090 <title>Lets make hardware dongles easier to use in Debian</title>
8091 <link>http://people.skolelinux.org/pere/blog/Lets_make_hardware_dongles_easier_to_use_in_Debian.html</link>
8092 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Lets_make_hardware_dongles_easier_to_use_in_Debian.html</guid>
8093 <pubDate>Wed, 9 Jan 2013 15:40:00 +0100</pubDate>
8094 <description>&lt;p&gt;One thing that annoys me with Debian and Linux distributions in
8095 general, is that there is a great package management system with the
8096 ability to automatically install software packages by downloading them
8097 from the distribution mirrors, but no way to get it to automatically
8098 install the packages I need to use the hardware I plug into my
8099 machine. Even if the package to use it is easily available from the
8100 Linux distribution. When I plug in a LEGO Mindstorms NXT, it could
8101 suggest to automatically install the python-nxt, nbc and t2n packages
8102 I need to talk to it. When I plug in a Yubikey, it could propose the
8103 yubikey-personalization package. The information required to do this
8104 is available, but no-one have pulled all the pieces together.&lt;/p&gt;
8105
8106 &lt;p&gt;Some years ago, I proposed to
8107 &lt;a href=&quot;http://lists.debian.org/debian-devel/2010/05/msg01206.html&quot;&gt;use
8108 the discover subsystem to implement this&lt;/a&gt;. The idea is fairly
8109 simple:
8110
8111 &lt;ul&gt;
8112
8113 &lt;li&gt;Add a desktop entry in /usr/share/autostart/ pointing to a program
8114 starting when a user log in.&lt;/li&gt;
8115
8116 &lt;li&gt;Set this program up to listen for kernel events emitted when new
8117 hardware is inserted into the computer.&lt;/li&gt;
8118
8119 &lt;li&gt;When new hardware is inserted, look up the hardware ID in a
8120 database mapping to packages, and take note of any non-installed
8121 packages.&lt;/li&gt;
8122
8123 &lt;li&gt;Show a message to the user proposing to install the discovered
8124 package, and make it easy to install it.&lt;/li&gt;
8125
8126 &lt;/ul&gt;
8127
8128 &lt;p&gt;I am not sure what the best way to implement this is, but my
8129 initial idea was to use dbus events to discover new hardware, the
8130 discover database to find packages and
8131 &lt;a href=&quot;http://www.packagekit.org/&quot;&gt;PackageKit&lt;/a&gt; to install
8132 packages.&lt;/p&gt;
8133
8134 &lt;p&gt;Yesterday, I found time to try to implement this idea, and the
8135 draft package is now checked into
8136 &lt;a href=&quot;http://anonscm.debian.org/viewvc/debian-edu/trunk/src/hw-support-handler/&quot;&gt;the
8137 Debian Edu subversion repository&lt;/a&gt;. In the process, I updated the
8138 &lt;a href=&quot;http://packages.qa.debian.org/d/discover-data.html&quot;&gt;discover-data&lt;/a&gt;
8139 package to map the USB ids of LEGO Mindstorms and Yubikey devices to
8140 the relevant packages in Debian, and uploaded a new version
8141 2.2013.01.09 to unstable. I also discovered that the current
8142 &lt;a href=&quot;http://packages.qa.debian.org/d/discover.html&quot;&gt;discover&lt;/a&gt;
8143 package in Debian no longer discovered any USB devices, because
8144 /proc/bus/usb/devices is no longer present. I ported it to use
8145 libusb as a fall back option to get it working. The fixed package
8146 version 2.1.2-6 is now in experimental (didn&#39;t upload it to unstable
8147 because of the freeze).&lt;/p&gt;
8148
8149 &lt;p&gt;With this prototype in place, I can insert my Yubikey, and get this
8150 desktop notification to show up (only once, the first time it is
8151 inserted):&lt;/p&gt;
8152
8153 &lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://people.skolelinux.org/pere/blog/images/2013-01-09-hw-autoinstall.png&quot;&gt;&lt;/p&gt;
8154
8155 &lt;p&gt;For this prototype to be really useful, some way to automatically
8156 install the proposed packages by pressing the &quot;Please install
8157 program(s)&quot; button should to be implemented.&lt;/p&gt;
8158
8159 &lt;p&gt;If this idea seem useful to you, and you want to help make it
8160 happen, please help me update the discover-data database with mappings
8161 from hardware to Debian packages. Check if &#39;discover-pkginstall -l&#39;
8162 list the package you would like to have installed when a given
8163 hardware device is inserted into your computer, and report bugs using
8164 reportbug if it isn&#39;t. Or, if you know of a better way to provide
8165 such mapping, please let me know.&lt;/p&gt;
8166
8167 &lt;p&gt;This prototype need more work, and there are several questions that
8168 should be considered before it is ready for production use. Is dbus
8169 the correct way to detect new hardware? At the moment I look for HAL
8170 dbus events on the system bus, because that is the events I could see
8171 on my Debian Squeeze KDE desktop. Are there better events to use?
8172 How should the user be notified? Is the desktop notification
8173 mechanism the best option, or should the background daemon raise a
8174 popup instead? How should packages be installed? When should they
8175 not be installed?&lt;/p&gt;
8176
8177 &lt;p&gt;If you want to help getting such feature implemented in Debian,
8178 please send me an email. :)&lt;/p&gt;
8179 </description>
8180 </item>
8181
8182 <item>
8183 <title>New IRC channel for LEGO designers using Debian</title>
8184 <link>http://people.skolelinux.org/pere/blog/New_IRC_channel_for_LEGO_designers_using_Debian.html</link>
8185 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/New_IRC_channel_for_LEGO_designers_using_Debian.html</guid>
8186 <pubDate>Wed, 2 Jan 2013 15:40:00 +0100</pubDate>
8187 <description>&lt;p&gt;During Christmas, I have worked a bit on the Debian support for
8188 &lt;a href=&quot;http://mindstorms.lego.com/en-us/Default.aspx&quot;&gt;LEGO Mindstorm
8189 NXT&lt;/a&gt;. My son and I have played a bit with my NXT set, and I
8190 discovered I had to build all the tools myself because none were
8191 already in Debian Squeeze. If Debian support for LEGO is something
8192 you care about, please join me on the IRC channel
8193 &lt;a href=&quot;irc://irc.debian.org/%23debian-lego&quot;&gt;#debian-lego&lt;/a&gt; (server
8194 irc.debian.org). There is a lot that could be done to improve the
8195 Debian support for LEGO designers. For example both CAD software
8196 and Mindstorm compilers are missing. :)&lt;/p&gt;
8197
8198 &lt;p&gt;Update 2012-01-03: A
8199 &lt;a href=&quot;http://wiki.debian.org/LegoDesigners&quot;&gt;project page&lt;/a&gt;
8200 including links to Lego related packages is now available.&lt;/p&gt;
8201 </description>
8202 </item>
8203
8204 <item>
8205 <title>A Christmas present for Skolelinux / Debian Edu</title>
8206 <link>http://people.skolelinux.org/pere/blog/A_Christmas_present_for_Skolelinux___Debian_Edu.html</link>
8207 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/A_Christmas_present_for_Skolelinux___Debian_Edu.html</guid>
8208 <pubDate>Fri, 28 Dec 2012 09:20:00 +0100</pubDate>
8209 <description>&lt;p&gt;I was happy to discover a few days ago that the
8210 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Skolelinux / Debian Edu&lt;/a&gt;
8211 project also this year received a Christmas present from Another
8212 Agency in Trondheim. NOK 1000,- showed up on our donation account
8213 December 24th. I want to express our thanks for this very welcome
8214 present. As the Debian Edu / Skolelinux project is very short on
8215 funding these days, and thus lack the money to do regular developer
8216 gatherings, this donation was most welcome. One developer gathering
8217 cost around NOK 15&amp;nbsp;000,-, so we need quite a lot more to keep the
8218 development pace we want. Thus, I hope their example this year is
8219 followed by many others. :)&lt;/p&gt;
8220
8221 &lt;p&gt;The public list of donors can be found on
8222 &lt;a href=&quot;http://www.linuxiskolen.no/slxdebianlabs/donations.html&quot;&gt;the
8223 donation page&lt;/a&gt; for the project, which also contain instructions if
8224 you want to donate to the project.&lt;/p&gt;
8225 </description>
8226 </item>
8227
8228 <item>
8229 <title>How to backport bitcoin-qt version 0.7.2-2 to Debian Squeeze</title>
8230 <link>http://people.skolelinux.org/pere/blog/How_to_backport_bitcoin_qt_version_0_7_2_2_to_Debian_Squeeze.html</link>
8231 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/How_to_backport_bitcoin_qt_version_0_7_2_2_to_Debian_Squeeze.html</guid>
8232 <pubDate>Tue, 25 Dec 2012 20:50:00 +0100</pubDate>
8233 <description>&lt;p&gt;Let me start by wishing you all marry Christmas and a happy new
8234 year! I hope next year will prove to be a good year.&lt;/p&gt;
8235
8236 &lt;p&gt;&lt;a href=&quot;http://www.bitcoin.org/&quot;&gt;Bitcoin&lt;/a&gt;, the digital
8237 decentralised &quot;currency&quot; that allow people to transfer bitcoins
8238 between each other with minimal overhead, is a very interesting
8239 experiment. And as I wrote a few days ago, the bitcoin situation in
8240 &lt;a href=&quot;http://www.debian.org/&quot;&gt;Debian&lt;/a&gt; is about to improve a bit.
8241 The &lt;a href=&quot;http://packages.qa.debian.org/bitcoin&quot;&gt;new debian source
8242 package&lt;/a&gt; (version 0.7.2-2) was uploaded yesterday, and is waiting
8243 in &lt;a href=&quot;http://ftp-master.debian.org/new.html&quot;&gt;the NEW queue&lt;/A&gt;
8244 for one of the ftpmasters to approve the new bitcoin-qt package
8245 name.&lt;/p&gt;
8246
8247 &lt;p&gt;And thanks to the great work of Jonas and the rest of the bitcoin
8248 team in Debian, you can easily test the package in Debian Squeeze
8249 using the following steps to get a set of working packages:&lt;/p&gt;
8250
8251 &lt;blockquote&gt;&lt;pre&gt;
8252 git clone git://git.debian.org/git/collab-maint/bitcoin
8253 cd bitcoin
8254 DEB_MAINTAINER_MODE=1 DEB_BUILD_OPTIONS=noupnp fakeroot debian/rules clean
8255 DEB_BUILD_OPTIONS=noupnp git-buildpackage --git-ignore-new
8256 &lt;/pre&gt;&lt;/blockquote&gt;
8257
8258 &lt;p&gt;You might have to install some build dependencies as well. The
8259 list of commands should give you two packages, bitcoind and
8260 bitcoin-qt, ready for use in a Squeeze environment. Note that the
8261 client will download the complete set of bitcoin &quot;blocks&quot;, which need
8262 around 5.6 GiB of data on my machine at the moment. Make sure your
8263 ~/.bitcoin/ directory have lots of spare room if you want to download
8264 all the blocks. The client will warn if the disk is getting full, so
8265 there is not really a problem if you got too little room, but you will
8266 not be able to get all the features out of the client.&lt;/p&gt;
8267
8268 &lt;p&gt;As usual, if you use bitcoin and want to show your support of my
8269 activities, please send Bitcoin donations to my address
8270 &lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&amp;label=PetterReinholdtsenBlog&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
8271 </description>
8272 </item>
8273
8274 <item>
8275 <title>A word on bitcoin support in Debian</title>
8276 <link>http://people.skolelinux.org/pere/blog/A_word_on_bitcoin_support_in_Debian.html</link>
8277 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/A_word_on_bitcoin_support_in_Debian.html</guid>
8278 <pubDate>Fri, 21 Dec 2012 23:59:00 +0100</pubDate>
8279 <description>&lt;p&gt;It has been a while since I wrote about
8280 &lt;a href=&quot;http://www.bitcoin.org/&quot;&gt;bitcoin&lt;/a&gt;, the decentralised
8281 peer-to-peer based crypto-currency, and the reason is simply that I
8282 have been busy elsewhere. But two days ago, I started looking at the
8283 state of &lt;a href=&quot;http://packages.qa.debian.org/bitcoin&quot;&gt;bitcoin in
8284 Debian&lt;/a&gt; again to try to recover my old bitcoin wallet. The package
8285 is now maintained by a
8286 &lt;a href=&quot;https://alioth.debian.org/projects/pkg-bitcoin/&quot;&gt;team of
8287 people&lt;/a&gt;, and the grunt work had already been done by this team. We
8288 owe a huge thank you to all these team members. :)
8289 But I was sad to discover that the bitcoin client is missing in
8290 Wheezy. It is only available in Sid (and an outdated client from
8291 backports). The client had several RC bugs registered in BTS blocking
8292 it from entering testing. To try to help the team and improve the
8293 situation, I spent some time providing patches and triaging the bug
8294 reports. I also had a look at the bitcoin package available from Matt
8295 Corallo in a
8296 &lt;a href=&quot;https://launchpad.net/~bitcoin/+archive/bitcoin&quot;&gt;PPA for
8297 Ubuntu&lt;/a&gt;, and moved the useful pieces from that version into the
8298 Debian package.&lt;/p&gt;
8299
8300 &lt;p&gt;After checking with the main package maintainer Jonas Smedegaard on
8301 IRC, I pushed several patches into the collab-maint git repository to
8302 improve the package. It now contains fixes for the RC issues (not from
8303 me, but fixed by Scott Howard), build rules for a Qt GUI client
8304 package, konqueror support for the bitcoin: URI and bash completion
8305 setup. As I work on Debian Squeeze, I also created
8306 &lt;a href=&quot;http://lists.alioth.debian.org/pipermail/pkg-bitcoin-devel/Week-of-Mon-20121217/000041.html&quot;&gt;a
8307 patch to backport&lt;/a&gt; the latest version. Jonas is going to look at
8308 it and try to integrate it into the git repository before uploading a
8309 new version to unstable.
8310
8311 &lt;p&gt;I would very much like bitcoin to succeed, to get rid of the
8312 centralized control currently exercised in the monetary system. I
8313 find it completely unacceptable that the USA government is collecting
8314 transaction data for almost all international money transfers (most are done in USD and transaction logs shipped to the spooks), and
8315 that the major credit card companies can block legal money
8316 transactions to Wikileaks. But for bitcoin to succeed, more people
8317 need to use bitcoins, and more people need to accept bitcoins when
8318 they sell products and services. Improving the bitcoin support in
8319 Debian is a small step in the right direction, but not enough.
8320 Unfortunately the user experience when browsing the web and wanting to
8321 pay with bitcoin is still not very good. The bitcoin: URI is a step
8322 in the right direction, but need to work in most or every browser in
8323 use. Also the bitcoin-qt client is too heavy to fire up to do a
8324 quick transaction. I believe there are other clients available, but
8325 have not tested them.&lt;/p&gt;
8326
8327 &lt;p&gt;My
8328 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Now_accepting_bitcoins___anonymous_and_distributed_p2p_crypto_money.html&quot;&gt;experiment
8329 with bitcoins&lt;/a&gt; showed that at least some of my readers use bitcoin.
8330 I received 20.15 BTC so far on the address I provided in my blog two
8331 years ago, as can be
8332 &lt;a href=&quot;http://blockexplorer.com/address/15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&quot;&gt;seen
8333 on the blockexplorer service&lt;/a&gt;. Thank you everyone for your
8334 donation. The blockexplorer service demonstrates quite well that
8335 bitcoin is not quite anonymous and untracked. :) I wonder if the
8336 number of users have gone up since then. If you use bitcoin and want
8337 to show your support of my activity, please send Bitcoin donations to
8338 the same address as last time,
8339 &lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&amp;label=PetterReinholdtsenBlog&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
8340 </description>
8341 </item>
8342
8343 <item>
8344 <title>Ledger - double-entry accounting using text based storage format</title>
8345 <link>http://people.skolelinux.org/pere/blog/Ledger___double_entry_accounting_using_text_based_storage_format.html</link>
8346 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Ledger___double_entry_accounting_using_text_based_storage_format.html</guid>
8347 <pubDate>Tue, 18 Dec 2012 23:30:00 +0100</pubDate>
8348 <description>&lt;p&gt;A few days ago I came across
8349 &lt;a href=&quot;http://joeyh.name/blog/entry/hledger/&quot;&gt;a blog post from Joey
8350 Hess&lt;/a&gt; describing &lt;a href=&quot;http://ledger-cli.org/&quot;&gt;ledger&lt;/a&gt; and
8351 hledger, a text based system for double-entry accounting. I found it
8352 interesting, as I am involved with several organizations where
8353 accounting is an issue, and I have not really become too friendly with
8354 the different web based systems we use. I find it hard to find what I
8355 look for in the menus and even harder try to get sensible data out of
8356 the systems. Ledger seem different. The accounting data is kept in
8357 text files that can be stored in a version control system, and there
8358
8359 are at least &lt;a href=&quot;https://github.com/ledger/ledger/wiki/Ports&quot;&gt;five
8360 different implementations&lt;/a&gt; able to read the format. An example
8361 entry look like this, and is simple enough that it will be trivial to
8362 generate entries based on CVS files fetched from the bank:&lt;/p&gt;
8363
8364 &lt;blockquote&gt;&lt;pre&gt;
8365 2004-05-27 Book Store
8366 Expenses:Books $20.00
8367 Liabilities:Visa
8368 &lt;/pre&gt;&lt;/blockquote&gt;
8369
8370 &lt;p&gt;The concept seemed interesting enough for me to check it out and
8371 look for others using it. I found blog posts from
8372 &lt;a href=&quot;http://blog.spang.cc/posts/hledger_rocks_my_world/&quot;&gt;Christine
8373 Spang&lt;/a&gt;,
8374 &lt;a href=&quot;http://bugsplat.info/2010-05-23-keeping-finances-with-ledger.html&quot;&gt;Pete
8375 Keen&lt;/a&gt;,
8376 &lt;a href=&quot;http://blog.andrewcantino.com/blog/2010/11/06/command-line-accounting-with-ledger-and-reckon/&quot;&gt;Andrew
8377 Cantino&lt;/a&gt; and
8378 &lt;a href=&quot;http://blog.iphoting.com/blog/2012/11/29/command-line-double-entry-accounting/&quot;&gt;Ronald
8379 Ip&lt;/a&gt; describing how they use it, as well as a post from
8380 &lt;a href=&quot;https://groups.google.com/forum/?fromgroups=#!topic/ledger-cli/r0oWjwbQ9Bo&quot;&gt;Bradley
8381 M. Kuhn&lt;/a&gt; at the Software Freedom Conservancy. All seemed like good
8382 recommendations fitting my need.&lt;/p&gt;
8383
8384 &lt;p&gt;The &lt;a href=&quot;http://packages.qa.debian.org/l/ledger.html&quot;&gt;ledger&lt;/a&gt;
8385 package is available in Debian Squeeze, while the
8386 &lt;a href=&quot;http://packages.qa.debian.org/h/haskell-hledger.html&quot;&gt;hledger&lt;/a&gt;
8387 package only is available in Debian Sid. As I use Squeeze, ledger
8388 seemed the best choice to get started.&lt;/p&gt;
8389
8390 &lt;p&gt;To get some real data to test on, I wrote a
8391 &lt;a href=&quot;http://www.nuug.no/tools/lodo2ledger&quot;&gt;web scraper&lt;/a&gt; for
8392 &lt;a href=&quot;http://www.lodo.no/&quot;&gt;LODO&lt;/a&gt;, the accounting system used by
8393 the &lt;a href=&quot;http://www.nuug.no/&quot;&gt;NUUG&lt;/a&gt; association, and started to
8394 play with the data set. I&#39;m not really deeply into accounting, but I
8395 am able to get a simple balance and accounting status for example
8396 using the &quot;&lt;tt&gt;ledger balance&lt;/tt&gt;&quot; command. But I will have to
8397 gather more experience before I know if the ledger way is a good fit
8398 for the organisations I am involved in.&lt;/p&gt;
8399 </description>
8400 </item>
8401
8402 <item>
8403 <title>Scripting the Cerebrum/bofhd user administration system using XML-RPC</title>
8404 <link>http://people.skolelinux.org/pere/blog/Scripting_the_Cerebrum_bofhd_user_administration_system_using_XML_RPC.html</link>
8405 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Scripting_the_Cerebrum_bofhd_user_administration_system_using_XML_RPC.html</guid>
8406 <pubDate>Thu, 6 Dec 2012 10:30:00 +0100</pubDate>
8407 <description>&lt;p&gt;Where I work at the &lt;a href=&quot;http://www.uio.no/&quot;&gt;University of
8408 Oslo&lt;/a&gt;, we use the
8409 &lt;a href=&quot;http://sourceforge.net/projects/cerebrum/&quot;&gt;Cerebrum user
8410 administration system&lt;/a&gt; to maintain users, groups, DNS, DHCP, etc.
8411 I&#39;ve known since the system was written that the server is providing
8412 an &lt;a href=&quot;http://en.wikipedia.org/wiki/XML-RPC&quot;&gt;XML-RPC&lt;/a&gt; API, but
8413 I have never spent time to try to figure out how to use it, as we
8414 always use the bofh command line client at work. Until today. I want
8415 to script the updating of DNS and DHCP to make it easier to set up
8416 virtual machines. Here are a few notes on how to use it with
8417 Python.&lt;/p&gt;
8418
8419 &lt;p&gt;I started by looking at the source of the Java
8420 &lt;a href=&quot;http://cerebrum.svn.sourceforge.net/viewvc/cerebrum/trunk/cerebrum/clients/jbofh/&quot;&gt;bofh
8421 client&lt;/a&gt;, to figure out how it connected to the API server. I also
8422 googled for python examples on how to use XML-RPC, and found
8423 &lt;a href=&quot;http://tldp.org/HOWTO/XML-RPC-HOWTO/xmlrpc-howto-python.html&quot;&gt;a
8424 simple example in&lt;/a&gt; the XML-RPC howto.&lt;/p&gt;
8425
8426 &lt;p&gt;This simple example code show how to connect, get the list of
8427 commands (as a JSON dump), and how to get the information about the
8428 user currently logged in:&lt;/p&gt;
8429
8430 &lt;blockquote&gt;&lt;pre&gt;
8431 #!/usr/bin/env python
8432 import getpass
8433 import xmlrpclib
8434 server_url = &#39;https://cerebrum-uio.uio.no:8000&#39;;
8435 username = getpass.getuser()
8436 password = getpass.getpass()
8437 server = xmlrpclib.Server(server_url);
8438 #print server.get_commands(sessionid)
8439 sessionid = server.login(username, password)
8440 print server.run_command(sessionid, &quot;user_info&quot;, username)
8441 result = server.logout(sessionid)
8442 print result
8443 &lt;/pre&gt;&lt;/blockquote&gt;
8444
8445 &lt;p&gt;Armed with this knowledge I can now move forward and script the DNS
8446 and DHCP updates I wanted to do.&lt;/p&gt;
8447 </description>
8448 </item>
8449
8450 <item>
8451 <title>Why isn&#39;t the value of copyright taxed?</title>
8452 <link>http://people.skolelinux.org/pere/blog/Why_isn_t_the_value_of_copyright_taxed_.html</link>
8453 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Why_isn_t_the_value_of_copyright_taxed_.html</guid>
8454 <pubDate>Sat, 17 Nov 2012 11:30:00 +0100</pubDate>
8455 <description>&lt;p&gt;While working on a
8456 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig&quot;&gt;Norwegian
8457 translation of the Free Culture by Lawrence Lessig&lt;/a&gt; (76% done),
8458 which cover the problems with todays copyright law and how it stifles
8459 creativity, one idea occurred to me. The idea is to get the tax
8460 office to help make more works enter the public domain and also help
8461 make it easier to clear rights for using copyrighted works.&lt;/p&gt;
8462
8463 &lt;p&gt;I mentioned this idea briefly during Yesterdays
8464 &lt;a href=&quot;http://www.farmann.no/2012/11/14/john-perry-barlow-in-oslo-friday-nov-16
8465 -15-30-19-00/&quot;&gt;presentation
8466 by John Perry Barlow&lt;/a&gt;, and concluded that it was best to put it
8467 in writing for a wider audience. The idea is not really based on the
8468 argument that copyrighted works are &quot;intellectual property&quot;, as the
8469 core requirement is that copyrighted work have value for the copyright
8470 holder and the tax office like to collect their share from any value
8471 controlled by the citizens in a country. I&#39;m sharing the idea here to
8472 let others consider it and perhaps shoot it down with a fresh set of
8473 arguments.&lt;/p&gt;
8474
8475 &lt;p&gt;Most valuables are taxed by the government. At least here in
8476 Norway, the amount of money you have, the value of our land property,
8477 the value of your house, the value of your car, the value of our
8478 stocks and other valuables are all added together. If the tax value
8479 of these values exceed your debt, you have to pay the tax office some
8480 taxes for these values. And copyrighted work have value. It have
8481 value for the rights holder, who can earn money selling access to the
8482 work. But it is not included in the tax calculations? Why not?&lt;/p&gt;
8483
8484 &lt;p&gt;If the government want to tax copyrighted works, it would want to
8485 maintain a database of all the copyrighted works and who are the
8486 rights holders for a given works, to be able to associate the works
8487 value to the right citizen or company for tax purposes. If such
8488 database exist, it will become a lot easier to find out who to talk to
8489 for clearing permissions to use a copyrighted work, which is a very
8490 hard operation with todays copyright law. To ensure that copyright
8491 holders keep the database up-to-date, it would have to become a
8492 requirement to be able to collect money for granting access to
8493 copyrighted works that the work is listed in the database with the
8494 correct right holder.&lt;/p&gt;
8495
8496 &lt;p&gt;If copyright causes copyright holders to have to pay more taxes,
8497 they will have a small incentive to &quot;disown&quot; their copyright, and let
8498 the work enter the public domain. For works with several right holders
8499 one of the right holders could state (and get it registered in the
8500 database) that she do not need to be consulted when clearing rights to
8501 use the work in question and thus will not get any income from that
8502 work. Stating this would have to be impossible to revert and stop the
8503 tax office from adding the value of that work to the given citizens
8504 tax calculation. I assume the copyright law would stay the same,
8505 allowing creators to pick a license of their choosing, and also
8506 allowing them to put their work directly in the public domain. The
8507 existence of such database will make it even easier to clear rights,
8508 and if the right holders listed in the database is taxed, this system
8509 would increase the amount of works that enter the public domain.&lt;/p&gt;
8510
8511 &lt;p&gt;The effect would be that the tax office help to make it easier to
8512 get rights to use the works that have not yet entered the public
8513 domain and help to get more work into the public domain and .&lt;/p&gt;
8514
8515 &lt;p&gt;Why have such taxing not happened yet? I am sure the tax office
8516 would like to tax copyrighted work values if they could.&lt;/p&gt;
8517 </description>
8518 </item>
8519
8520 <item>
8521 <title>Debian Edu interview: Angela Fuß</title>
8522 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Angela_Fu_.html</link>
8523 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Angela_Fu_.html</guid>
8524 <pubDate>Wed, 14 Nov 2012 21:30:00 +0100</pubDate>
8525 <description>&lt;p&gt;Here is another interview with one of the people in the &lt;a
8526 href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu and Skolelinux&lt;/a&gt;
8527 community. I am running short on people willing to be interviewed, so
8528 if you know about someone I should interview, Please send me an email.
8529 After asking for many months, I finally managed to lure another one of
8530 the people behind the German
8531 &quot;&lt;a href=&quot;http://wiki.it-zukunft-schule.de/&quot;&gt;IT-Zukunft Schule&lt;/a&gt;&quot;
8532 project out from maternity leave to conduct an interview. Give a warm
8533 welcome to Angela Fuß. :)&lt;/p&gt;
8534
8535 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
8536
8537 &lt;p&gt;I am a 39-year-old woman living in the very north of Germany near
8538 Denmark. I live in a patchwork family with &quot;my man&quot; Mike Gabriel, my
8539 two daughters, Mikes daughter and Mikes and my rather newborn son.
8540
8541 &lt;p&gt;At the moment - because of our little baby - I am spending most of
8542 the day by being a caring and organising mom for all the kids.
8543 Besides that I am really involved into and occupied with several inner
8544 growth processes: New born souls always bring the whole familiar
8545 system into movement and that needs time and focus ;-). We are also
8546 in the middle of buying a house and moving to it.&lt;/p&gt;
8547
8548 &lt;p&gt;In 2013 I will work again in my job in a German foundation for
8549 nature conservation. I am doing public relation work there. Besides
8550 that - and that is the connection to Skolelinux / Debian Edu - I am
8551 working in our own school project &quot;IT-Zukunft Schule&quot; in North
8552 Germany. I am responsible for the quality assurance, the customer
8553 relationship management and the communication processes in the
8554 project.&lt;/p&gt;
8555
8556 &lt;p&gt;Since 2001 I constantly have been training myself in communication
8557 and leadership. Besides that I am a forester, a landscaping gardener
8558 and a yoga teacher.&lt;/p&gt;
8559
8560 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux / Debian Edu
8561 project?&lt;/strong&gt;&lt;/p&gt;
8562
8563 &lt;p&gt;I fell in love with Mike ;-).&lt;/p&gt;
8564
8565 &lt;p&gt;Very soon after getting to know him I was completely enrolled into
8566 Free Software. At this time Mike did IT-services for one newly
8567 founded school in Kiel. Other schools in Kiel needed concepts for
8568 their IT environment. Often when Mike came home from working at the
8569 newly founded school I found myself listening to his complaints about
8570 several points where the communication with the schools head or the
8571 teachers did not work. So we were clear that he would not work for
8572 one more school if we did not set up a structure for communication
8573 between him, the schools head, the teachers, the students and the
8574 parents.&lt;/p&gt;
8575
8576 &lt;p&gt;Together with our friend and hardware supplier Andreas Buchholz we
8577 started to get an overview of free software solutions suitable for
8578 schools. One day before Christmas 2010 Mike and I had a date with Kurt
8579 Gramlich in Gütersloh. As Kurt and I are really interested in building
8580 networks of people and in being in communication we dived into
8581 Skolelinux and brought it to the first grammar schools in Northern
8582 Germany.&lt;/p&gt;
8583
8584 &lt;p&gt;For information about our school project you can read
8585 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Mike_Gabriel.html&quot;&gt;the
8586 interview with Mike Gabriel&lt;/a&gt;.&lt;/p&gt;
8587
8588 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux / Debian
8589 Edu?&lt;/strong&gt;&lt;/p&gt;
8590
8591 &lt;p&gt;First I have to say: I cannot answer this question technically. My
8592 answer comes rather from a social point of view.&lt;/p&gt;
8593
8594 &lt;p&gt;The biggest advantage of Skolelinux / Debian Edu I see is the large
8595 and strong international community of Debian Developers in the
8596 background which is very alive and connected over mailinglists, blogs
8597 and meetings. My constant feeling for the Debian Community is: If
8598 something does not work they will somehow fix it. All is well
8599 ;-). This is of course a user experience. What I also get as a big
8600 advantage of Skolelinux / Debian Edu is that everybody who uses it and
8601 works with it can also contribute to it - that includes students,
8602 teachers, parents...&lt;/p&gt;
8603
8604 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux / Debian
8605 Edu?&lt;/strong&gt;&lt;/p&gt;
8606
8607 &lt;p&gt;I will answer this question relating to the internal structure of
8608 Skolelinux / Debian Edu.&lt;/p&gt;
8609
8610 &lt;p&gt;What I see as a major disadvantage is that there is a gap between
8611 the group of developers for Debian Edu and the people who make the
8612 marketing, that means the people that bring Skolelinux to the
8613 schools. There is a lack of communication between these two groups and
8614 I think that does not really work for Skolelinux / Debian Edu.&lt;/p&gt;
8615
8616 &lt;p&gt;Further I appreciate that Skolelinux / Debian Edu is known as a
8617 do-ocracy. Nevertheless I keep asking myself if at some points a
8618 democracy or some kind of hierarchical project structure would be good
8619 and helpful. I am also missing some kind of contact between the
8620 Skolelinux / Debian Edu communities in Europe or on an international
8621 level. I think it would be good if there was more sharing between the
8622 different countries using Skolelinux / Debian Edu.&lt;/p&gt;
8623
8624 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
8625
8626 &lt;p&gt;On my laptop I am still using an Ubuntu 10.04 with a Gnome Desktop
8627 on. As applications I use Openoffice.org, Gedit, Firefox, Pidgin,
8628 LaTeX and GnuCash. For mails I am using Horde. And I am really fond of
8629 my N900 running with Maemo.&lt;/p&gt;
8630
8631 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
8632 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
8633
8634 &lt;p&gt;I am really convinced that in our school project &quot;IT-Zukunft
8635 Schule&quot; we have developed (and keep developing) a great way to get
8636 schools to use Free Software. We have written a detailed concept for
8637 that so I cannot explain the whole thing here. But in a nutshell the
8638 strategy has three crucial pillars:&lt;/p&gt;
8639
8640 &lt;ul&gt;
8641
8642 &lt;li&gt;We really take time to get what sort of stories, questions and
8643 concerns the schools head and the teachers have about using different
8644 kinds of IT and we take time to enrol them into Free Software.&lt;/li&gt;
8645
8646 &lt;li&gt;Our solution for schools is never just technical. In the centre
8647 are always the people who are going to use the software. From the very
8648 beginning of the planning for a school, we tell the schools head that
8649 they are paying us not only for a technical solution for their school,
8650 they also pay us for leading all the communication processes
8651 needed. If they do not want that, we are not working with them because
8652 we cannot give a guarantee for the quality of our work then.&lt;/li&gt;
8653
8654 &lt;li&gt;Another focus lies in the training of teachers and students in
8655 co-administrating the IT-System at their school. They start getting in
8656 contact with the Skolelinux / Debian Edu community and they get the
8657 offer to become more and more independent from us.&lt;/li&gt;
8658
8659 &lt;/ul&gt;
8660 </description>
8661 </item>
8662
8663 <item>
8664 <title>The European Central Bank (ECB) take a look at bitcoin</title>
8665 <link>http://people.skolelinux.org/pere/blog/The_European_Central_Bank__ECB__take_a_look_at_bitcoin.html</link>
8666 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/The_European_Central_Bank__ECB__take_a_look_at_bitcoin.html</guid>
8667 <pubDate>Sun, 4 Nov 2012 08:30:00 +0100</pubDate>
8668 <description>&lt;p&gt;Slashdot just ran a story about the European Central Bank (ECB)
8669 &lt;a href=&quot;http://www.ecb.europa.eu/pub/pdf/other/virtualcurrencyschemes201210en.pdf&quot;&gt;releasing
8670 a report (PDF)&lt;/a&gt; about virtual currencies and
8671 &lt;a href=&quot;http://www.bitcoin.org/&quot;&gt;bitcoin&lt;/a&gt;. It is interesting to
8672 see how a member of the bitcoin community
8673 &lt;a href=&quot;http://blog.bitinstant.com/blog/2012/10/30/the-ecb-report-on-bitcoin-and-virtual-currencies.html&quot;&gt;receive
8674 the report&lt;/a&gt;. As for the future, I suspect the central banks and
8675 the governments will outlaw bitcoin if it gain any popularity, to avoid
8676 competition. My thoughts go to the
8677 &lt;a href=&quot;http://en.wikipedia.org/wiki/Wörgl&quot;&gt;Wörgl experiment&lt;/a&gt; with
8678 negative inflation on cash which was such a success that it was
8679 terminated by the Austrian National Bank in 1933. A successful
8680 alternative would be a threat to the current money system and gain
8681 powerful forces to work against it.&lt;/p&gt;
8682
8683 &lt;p&gt;While checking out the current status of bitcoin, I also discovered
8684 that the community already seem to have
8685 &lt;a href=&quot;http://www.theverge.com/2012/8/27/3271637/bitcoin-savings-trust-pyramid-scheme-shuts-down&quot;&gt;experienced
8686 its first pyramid game / Ponzi scheme&lt;/a&gt;. Not very surprising, given
8687 how members of &quot;small&quot; communities tend to trust each other. I guess
8688 enterprising crocks will try again and again, as they do anywhere
8689 wealth is available.&lt;/p&gt;
8690 </description>
8691 </item>
8692
8693 <item>
8694 <title>12 years of outages - summarised by Stuart Kendrick</title>
8695 <link>http://people.skolelinux.org/pere/blog/12_years_of_outages___summarised_by_Stuart_Kendrick.html</link>
8696 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/12_years_of_outages___summarised_by_Stuart_Kendrick.html</guid>
8697 <pubDate>Fri, 26 Oct 2012 14:20:00 +0200</pubDate>
8698 <description>&lt;p&gt;I work at the &lt;a href=&quot;http://www.uio.no/&quot;&gt;University of Oslo&lt;/a&gt;
8699 looking after the computers, mostly on the unix side, but in general
8700 all over the place. I am also a member (and currently leader) of
8701 &lt;a href=&quot;http://www.nuug.no/&quot;&gt;the NUUG association&lt;/a&gt;, which in turn
8702 make me a member of &lt;a href=&quot;http://www.usenix.org/&quot;&gt;USENIX&lt;/a&gt;. NUUG
8703 is an member organisation for us in Norway interested in free
8704 software, open standards and unix like operating systems, and USENIX
8705 is a US based member organisation with similar targets. And thanks to
8706 these memberships, I get all issues of the great USENIX magazine
8707 &lt;a href=&quot;https://www.usenix.org/publications/login&quot;&gt;;login:&lt;/a&gt; in the
8708 mail several times a year. The magazine is great, and I read most of
8709 it every time.&lt;/p&gt;
8710
8711 &lt;p&gt;In the last issue of the USENIX magazine ;login:, there is an
8712 article by &lt;a href=&quot;http://www.skendric.com/&quot;&gt;Stuart Kendrick&lt;/a&gt; from
8713 Fred Hutchinson Cancer Research Center titled
8714 &quot;&lt;a href=&quot;https://www.usenix.org/publications/login/october-2012-volume-37-number-5/what-takes-us-down&quot;&gt;What
8715 Takes Us Down&lt;/a&gt;&quot; (longer version also
8716 &lt;a href=&quot;http://www.skendric.com/problem/incident-analysis/2012-06-30/What-Takes-Us-Down.pdf&quot;&gt;available
8717 from his own site&lt;/a&gt;), where he report what he found when he
8718 processed the outage reports (both planned and unplanned) from the
8719 last twelve years and classified them according to cause, time of day,
8720 etc etc. The article is a good read to get some empirical data on
8721 what kind of problems affect a data centre, but what really inspired
8722 me was the kind of reporting they had put in place since 2000.&lt;p&gt;
8723
8724 &lt;p&gt;The centre set up a mailing list, and started to send fairly
8725 standardised messages to this list when a outage was planned or when
8726 it already occurred, to announce the plan and get feedback on the
8727 assumtions on scope and user impact. Here is the two example from the
8728 article: First the unplanned outage:
8729
8730 &lt;blockquote&gt;&lt;pre&gt;
8731 Subject: Exchange 2003 Cluster Issues
8732 Severity: Critical (Unplanned)
8733 Start: Monday, May 7, 2012, 11:58
8734 End: Monday, May 7, 2012, 12:38
8735 Duration: 40 minutes
8736 Scope: Exchange 2003
8737 Description: The HTTPS service on the Exchange cluster crashed, triggering
8738 a cluster failover.
8739
8740 User Impact: During this period, all Exchange users were unable to
8741 access e-mail. Zimbra users were unaffected.
8742 Technician: [xxx]
8743 &lt;/pre&gt;&lt;/blockquote&gt;
8744
8745 Next the planned outage:
8746
8747 &lt;blockquote&gt;&lt;pre&gt;
8748 Subject: H Building Switch Upgrades
8749 Severity: Major (Planned)
8750 Start: Saturday, June 16, 2012, 06:00
8751 End: Saturday, June 16, 2012, 16:00
8752 Duration: 10 hours
8753 Scope: H2 Transport
8754 Description: Currently, Catalyst 4006s provide 10/100 Ethernet to end-
8755 stations. We will replace these with newer Catalyst
8756 4510s.
8757 User Impact: All users on H2 will be isolated from the network during
8758 this work. Afterward, they will have gigabit
8759 connectivity.
8760 Technician: [xxx]
8761 &lt;/pre&gt;&lt;/blockquote&gt;
8762
8763 &lt;p&gt;He notes in his article that the date formats and other fields have
8764 been a bit too free form to make it easy to automatically process them
8765 into a database for further analysis, and I would have used ISO 8601
8766 dates myself to make it easier to process (in other words I would ask
8767 people to write &#39;2012-06-16 06:00 +0000&#39; instead of the start time
8768 format listed above). There are also other issues with the format
8769 that could be improved, read the article for the details.&lt;/p&gt;
8770
8771 &lt;p&gt;I find the idea of standardising outage messages seem to be such a
8772 good idea that I would like to get it implemented here at the
8773 university too. We do register
8774 &lt;a href=&quot;http://www.uio.no/tjenester/it/aktuelt/planlagte-tjenesteavbrudd/&quot;&gt;planned
8775 changes and outages in a calendar&lt;/a&gt;, and report the to a mailing
8776 list, but we do not do so in a structured format and there is not a
8777 report to the same location for unplanned outages. Perhaps something
8778 for other sites to consider too?&lt;/p&gt;
8779 </description>
8780 </item>
8781
8782 <item>
8783 <title>Amazon steal books from customer and throw out her out without any explanation</title>
8784 <link>http://people.skolelinux.org/pere/blog/Amazon_steal_books_from_customer_and_throw_out_her_out_without_any_explanation.html</link>
8785 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Amazon_steal_books_from_customer_and_throw_out_her_out_without_any_explanation.html</guid>
8786 <pubDate>Mon, 22 Oct 2012 20:30:00 +0200</pubDate>
8787 <description>&lt;p&gt;A blog post from Martin Bekkelund today tell the story of
8788 &lt;a href=&quot;http://www.bekkelund.net/2012/10/22/outlawed-by-amazon-drm/&quot;&gt;how
8789 Amazon erased the books from a customer&#39;s kindle, locked the account
8790 and refuse to tell the customer why&lt;/a&gt;. If a real book store did
8791 this to a customer, it would be called breaking into private property
8792 and theft. The story has spread around the net today. A bit more
8793 background information is available in Norwegian from
8794 &lt;a href=&quot;http://www.digi.no/904658/hun-ble-kastet-ut-av-amazon&quot;&gt;digi.no&lt;/a&gt;.
8795 It is no surprise that digital restriction mechanisms (DRM) are used
8796 this way, as it has been warned about such abuse since DRM was
8797 introduced many years back. And Amazon proved in 2009 that it was
8798 willing to
8799 &lt;a href=&quot;http://boingboing.net/2009/07/20/amazons-orwellian-de.html&quot;&gt;
8800 break into customers equipment and remove the books&lt;/a&gt; people had
8801 bought, when it removed the book 1984 by George Orwell from all the
8802 customers who had bought it. From the official comments, it even
8803 sounded like
8804 &lt;a href=&quot;http://www.nytimes.com/2009/07/18/technology/companies/18amazon.html&quot;&gt;Amazon
8805 would never do that again&lt;/a&gt;. And here we are, three years
8806 later.&lt;/p&gt;
8807
8808 &lt;p&gt;And thought this action is
8809 &lt;a href=&quot;http://www.itavisen.no/904648/forbrukerraadet-helt-haarreisende&quot;&gt;against
8810 Norwegian regulations and law&lt;/a&gt;, it is according to the terms of use
8811 as written by Amazon, and it is hard to hold Amazon accountable to
8812 Norwegian laws. It is just yet another example of unacceptable terms
8813 of use on the web, and how they are used to remove customer
8814 rights.&lt;/p&gt;
8815
8816 &lt;p&gt;Luckily for electronic books, there are alternatives without
8817 unacceptable terms. For example
8818 &lt;a href=&quot;http://www.gutenberg.org/&quot;&gt;Project Gutenberg&lt;/a&gt; (about 40,000
8819 books), &lt;a href=&quot;http://runeberg.org/&quot;&gt;Project Runenberg&lt;/a&gt; (1,652
8820 books) and &lt;a href=&quot;http://www.archive.org/details/texts&quot;&gt;The Internet
8821 Archive&lt;/a&gt; (3,641,797 books) have heaps of books without DRM, which
8822 can read by anyone and shared with anyone.&lt;/p&gt;
8823
8824 &lt;p&gt;Update 2012-10-23: This story broke in the morning on Monday. In
8825 the evening after the story had spread all across the Internet, Amazon
8826 restored the account of the user, as reported by
8827 &lt;a href=&quot;http://www.digi.no/904675/helomvending-fra-amazon&quot;&gt;digi.no&lt;/a&gt;
8828 and &lt;a href=&quot;http://nrk.no/kultur-og-underholdning/1.8368487&quot;&gt;NRK&lt;/a&gt;.
8829 Apparently public pressure work. The story from Martin have seen
8830 several twitter messages per minute the last 24 hours, which is quite
8831 a lot, and is still drawing a lot of attention. But even when the
8832 account is restored, the fundamental problem still exist. I recommend
8833 reading two opinions from
8834 &lt;a href=&quot;http://blogs.computerworlduk.com/simon-says/2012/10/rights-you-have-no-right-to-your-ebooks/index.htm&quot;&gt;Simon
8835 Phipps&lt;/a&gt; and
8836 &lt;a href=&quot;http://blogs.computerworlduk.com/open-enterprise/2012/10/is-amazon-playing-fair/index.htm&quot;&gt;Glen
8837 Moody&lt;/a&gt; if you want to learn more about the fundamentals and more
8838 details about the original story.&lt;/p&gt;
8839 </description>
8840 </item>
8841
8842 <item>
8843 <title>The fight for freedom and privacy</title>
8844 <link>http://people.skolelinux.org/pere/blog/The_fight_for_freedom_and_privacy.html</link>
8845 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/The_fight_for_freedom_and_privacy.html</guid>
8846 <pubDate>Thu, 18 Oct 2012 10:50:00 +0200</pubDate>
8847 <description>&lt;p&gt;Civil liberties and privacy in the western world are going down the
8848 drain, and it is hard to fight against it. I try to do my best, but
8849 time is limited. I hope you do your best too. A few years ago I came
8850 across a marvellous drawing by
8851 &lt;a href=&quot;http://www.claybennett.com/about.html&quot;&gt;Clay Bennett&lt;/a&gt;
8852 visualising some of what is going on.
8853
8854 &lt;p&gt;&lt;a href=&quot;http://www.claybennett.com/pages/security_fence.html&quot;&gt;
8855 &lt;img src=&quot;http://www.claybennett.com/images/archivetoons/security_fence.jpg&quot;&gt;&lt;/a&gt;&lt;/p&gt;
8856
8857 &lt;blockquote&gt;
8858 «They who can give up essential liberty to obtain a little temporary
8859 safety, deserve neither liberty nor safety.» - Benjamin Franklin
8860 &lt;/blockquote&gt;
8861
8862 &lt;p&gt;Do you feel safe at the airport? I do not. Do you feel safe when
8863 you see a surveillance camera? I do not. Do you feel safe when you
8864 leave electronic traces of your behaviour and opinions? I do not. I
8865 just remember &lt;a href=&quot;http://en.wikipedia.org/wiki/Panopticon&quot;&gt;the
8866 Panopticon&lt;/a&gt;, and can not help to think that we are slowly
8867 transforming our society to a huge Panopticon on our own.&lt;/p&gt;
8868 </description>
8869 </item>
8870
8871 <item>
8872 <title>ColonHelp produser sue WordPress to silence critic</title>
8873 <link>http://people.skolelinux.org/pere/blog/ColonHelp_produser_sue_WordPress_to_silence_critic.html</link>
8874 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/ColonHelp_produser_sue_WordPress_to_silence_critic.html</guid>
8875 <pubDate>Fri, 12 Oct 2012 23:50:00 +0200</pubDate>
8876 <description>&lt;p&gt;Thanks to a blog post by
8877 &lt;a href=&quot;http://ramblingfoo.blogspot.no/2012/10/a-shitstorm-is-comming.html&quot;&gt;Eddy
8878 Petrișor&lt;/a&gt;, I became aware of yet another &quot;alternative medicine&quot;
8879 company using legal intimidation tactics to scare off critics.
8880 According to the originating blog post about the detox &quot;cure&quot;
8881 &lt;a href=&quot;http://insulaindoielii.wordpress.com/2012/10/11/colon-help-sues-wordpress/&quot;&gt;ColonHelp
8882 and its producers Zenyth Pharmaceuticals actions&lt;/a&gt;, the producer
8883 sues Wordpress to get rid of the critical information. To check if
8884 the story was for real, I contacted Automattic, the company behind
8885 wordpress.com, and they reply was &quot;We can confirm that Zenyth is
8886 seeking a court order against WordPress / Automattic. However, we
8887 don&#39;t believe the Terms of Service have been violated in this
8888 matter&quot;.&lt;/p&gt;
8889
8890 &lt;p&gt;The story seem to be simply that a blogger checked the scientific
8891 foundation for a popular health product in Rumania, ColonHelp, and
8892 reported that there was no reason at all to believe it improved the
8893 health of its users. This caused the company behind the product,
8894 Zenyth Pharmaceuticals, to use legal intimidation to try to silence
8895 the critic, instead of presenting its views and scientific foundation
8896 to argue its side.&lt;/p&gt;
8897
8898 &lt;p&gt;This is the usual story, and the Zenyth Pharmaceuticals company
8899 deserve everyone to know how it failed to act properly. Lets hope the
8900 &lt;a href=&quot;http://en.wikipedia.org/wiki/Streisand_effect&quot;&gt;Streisand
8901 effect&lt;/a&gt; can make it rethink its strategy.&lt;/p&gt;
8902
8903 &lt;p&gt;What is the harm, you might think. I suggest you take a look at
8904 &lt;a href=&quot;http://www.whatstheharm.net/detoxification.html&quot;&gt;a list of
8905 victims of detoxification&lt;/a&gt;.&lt;/p&gt;
8906 </description>
8907 </item>
8908
8909 <item>
8910 <title>Why is your local library collecting the &quot;wrong&quot; computer books?</title>
8911 <link>http://people.skolelinux.org/pere/blog/Why_is_your_local_library_collecting_the__wrong__computer_books_.html</link>
8912 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Why_is_your_local_library_collecting_the__wrong__computer_books_.html</guid>
8913 <pubDate>Wed, 3 Oct 2012 10:00:00 +0200</pubDate>
8914 <description>&lt;p&gt;I just read the blog post from Tim Retout
8915 &lt;a href=&quot;http://retout.co.uk/blog/2012/10/02/the-library-challenge&quot;&gt;about
8916 the computer science book collection available in his local
8917 library&lt;/a&gt;, and just wanted to share my comment on his theory about
8918 computer books becoming obsolete so soon. That is part of the reason
8919 why the selection is so sad in almost any local library (it is in mine
8920 too), but I believe the major contributing factor is that the people
8921 buying books to the library have no way to know a good and future
8922 computer classic from trash. And they need to know which one will
8923 become a classic in the future, as they would normally buy one of the
8924 recently published books.&lt;/p&gt;
8925
8926 &lt;p&gt;During my university years, I worked for a while at the university
8927 library, and even there the person in charge of buying computer
8928 related books (and in fact any natural science related book), did not
8929 know enough about computers to make a good educated guess. Once, just
8930 before Christmas, they had some leftover money on the book budget and
8931 I was asked if I could pick out a lot of computer books in the
8932 university book store, for the library to buy for their collection. I
8933 had a great time picking all the books I dreamt of buying and reading,
8934 and the books I knew were classics (like most of the
8935 &lt;a href=&quot;http://en.wikipedia.org/wiki/W._Richard_Stevens&quot;&gt;Stevens
8936 collection&lt;/a&gt;). I picked several of the generic O&#39;Reilly books (ie
8937 documenting protocols, formats and systems, not specific versions of
8938 products) and stayed away from the &#39;teach yourself X in N days&#39; class.
8939 I had a great time, and probably picked out more than a hundred books
8940 for the library that evening.&lt;/p&gt;
8941
8942 &lt;p&gt;The sad fact is that there is no way a overworked librarian is
8943 going to know that for example
8944 &lt;a href=&quot;http://en.wikipedia.org/wiki/The_Practice_of_Programming&quot;&gt;The
8945 Practice of Programming&lt;/a&gt; is a must-have in any computer library,
8946 and they will most of the time end up picking the wrong books to buy.
8947 Perhaps you can help your local library make better choices by giving
8948 the suggestions for books to get? I know they would love to hear from
8949 you, even if their budget might block them from getting your favourite
8950 book right away.&lt;/p&gt;
8951 </description>
8952 </item>
8953
8954 <item>
8955 <title>Seventy percent done with Norwegian docbook version of Free Culture</title>
8956 <link>http://people.skolelinux.org/pere/blog/Seventy_percent_done_with_Norwegian_docbook_version_of_Free_Culture.html</link>
8957 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Seventy_percent_done_with_Norwegian_docbook_version_of_Free_Culture.html</guid>
8958 <pubDate>Sun, 23 Sep 2012 09:30:00 +0200</pubDate>
8959 <description>&lt;p&gt;Since this summer, I have worked in my spare time on a Norwegian &lt;a
8960 href=&quot;http://www.docbook.org/&quot;&gt;docbook&lt;/a&gt; version of the 2004 book &lt;a
8961 href=&quot;http://free-culture.cc/&quot;&gt;Free Culture&lt;/a&gt; by Lawrence Lessig.
8962 The reason is that this book is a great primer on what problems exist
8963 in the current copyright laws, and I want it to be available also for
8964 those that are reluctant do read an English book.
8965
8966 When I started, I
8967 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Dugnad_for___sende_norsk_versjon_av_Free_Culture_til_stortingets_representanter_.html&quot;&gt;called
8968 for volunteers&lt;/a&gt; to help me, but too few have volunteered so far,
8969 and progress is a bit slow. Anyway, today I broken the 70 percent
8970 mark for the first rough translation. At the moment, less than 700
8971 strings (paragraphs, index terms, titles) are left to translate. With
8972 my current progress of 10-20 strings per day, it will take a while to
8973 complete the translation. This graph show the updated progress:&lt;/p&gt;
8974
8975 &lt;img width=&quot;80%&quot; align=&quot;center&quot; src=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/raw/master/progress.png&quot;&gt;
8976
8977 &lt;p&gt;Progress have slowed down lately due to family and work
8978 commitments. If you want to help, please get in touch, and check out
8979 the project files currently available from
8980 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig&quot;&gt;github&lt;/a&gt;.&lt;/p&gt;
8981
8982 &lt;p&gt;If you are curious what the translated book currently look like,
8983 the updated
8984 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/blob/master/archive/freeculture.nb.pdf?raw=true&quot;&gt;PDF&lt;/a&gt;
8985 and
8986 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/blob/master/archive/freeculture.nb.epub?raw=true&quot;&gt;EPUB&lt;/a&gt;
8987 are published on github. The HTML version is published as well, but
8988 github hand it out with MIME type text/plain, confusing browsers, so I
8989 saw no point in linking to that version.&lt;/p&gt;
8990 </description>
8991 </item>
8992
8993 <item>
8994 <title>Debian Edu interview: Giorgio Pioda</title>
8995 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Giorgio_Pioda.html</link>
8996 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Giorgio_Pioda.html</guid>
8997 <pubDate>Mon, 17 Sep 2012 14:10:00 +0200</pubDate>
8998 <description>&lt;p&gt;After a long break in my row of interviews with people in the
8999 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu and Skolelinux&lt;/a&gt;
9000 community, I finally found time to wrap up another. This time it is
9001 Giorgio Pioda, which showed up on the mailing list at the start of
9002 this year, asking questions and inspiring us to improve the first time
9003 administrators experience with Skolelinux. :) The interview was
9004 conduced in May, but I only found time to publish it now.&lt;/p&gt;
9005
9006 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
9007
9008 &lt;p&gt;I have a PhD in chemistry but since several years I work as teacher
9009 in secondary (15-18 year old students) and tertiary (a kind of &quot;light&quot;
9010 university) schools. Five years ago I started to manage a Learning
9011 Management Service server and slowly I got more and more involved with
9012 IT. 3 years ago the graduating schools moved completely to Linux and I
9013 got the head of the IT for this. The experience collected in chemistry
9014 labs computers (for example NMR analysis of protein folding) and in
9015 the IT-courses during university where sufficient to start. Self
9016 training is anyway very important&lt;/p&gt;
9017
9018 &lt;p&gt;I live in the Italian speaking part of Switzerland, and the
9019 &lt;a href=&quot;http://www.spse.ch/&quot;&gt;SPSE school&lt;/a&gt; (secondary) is a very
9020 special sport school for young people who try to became sport pro (for
9021 all sports, we have dozens of disciplines represented) and we are
9022 recognised by the Olympic Swiss Organisation.
9023
9024 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux/Debian Edu
9025 project?&lt;/strong&gt;&lt;/p&gt;
9026
9027 &lt;p&gt;Looking for Linux / Primary Domain Controller (PDC) I found it
9028 already several years ago. But since the system was still not
9029 Kerberized and since our schools relies strongly on laptops I didn&#39;t
9030 use it. I plan to introduce it in the next future, probably for the
9031 next school year, since the squeeze release solved this security
9032 hole.&lt;/p&gt;
9033
9034 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux/Debian
9035 Edu?&lt;/strong&gt;&lt;/p&gt;
9036
9037 &lt;p&gt;Many. First of all there is a strong and living community that is
9038 very generous for help and hints. Chat help is crucial, together with
9039 the mailing list. Second. With Skolelinux you get an already well
9040 engineered platform and you don&#39;t have to start to build up your PDC
9041 and your clients from GNU/scratch; I&#39;ve already done this once and I
9042 can tell it, it is hard. Third, since Skolelinux is a standard
9043 platform, it is way easier to educate other IT people and even if the
9044 head IT is sick another one could pick up the task without too much
9045 hassle.&lt;/p&gt;
9046
9047 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux/Debian
9048 Edu?&lt;/strong&gt;&lt;/p&gt;
9049
9050 &lt;p&gt;The only real problem I see is that it is a little too less
9051 flexible at client level. Debian stable is rocky and desirable, but
9052 there are many reasons that force for another choice. For example the
9053 need of new drivers for new PC, or the need for a specific OS for some
9054 devices that have specific software packages for another specific
9055 distribution (I have such a case for whiteboards that have only
9056 Ubuntu packages). Thus, I prepared compatibility packages educlient
9057 and eduroaming, hoping not to use them ;-)&lt;/p&gt;
9058
9059 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
9060
9061 &lt;p&gt;I have a Debian Stable PDC at school (Kerberos, NIS, NFS) with
9062 mixed Debian and Ubuntu clients. If you think that this triad
9063 combination is exotic... well I discovered right yesterday that
9064 &lt;a href=&quot;http://moo.nac.uci.edu/~hjm/Perceus-Report.html&quot;&gt;Perceus&lt;/a&gt;
9065 has the same...&lt;/p&gt;
9066
9067 &lt;p&gt;For myself I run Debian wheezy/sid, but this combination is good
9068 only I you have enough competence to fix stuff for yourself, if
9069 something breaks. Daily I use texmacs, gnumeric, a little bit of R
9070 statistics, kmplot, and less frequently OpenOffice.org.&lt;/p&gt;
9071
9072 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
9073 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
9074
9075 &lt;P&gt;I think that the only real argument that school managers &quot;hear&quot; is
9076 cost reduction. They don&#39;t give too much weight on quality, stability,
9077 just because they are normally not open to change.&lt;/p&gt;
9078
9079 &lt;p&gt;Students adapts very quickly to GNU/Linux (and for them being able
9080 to switch between different OS is a plus value); teachers and managers
9081 don&#39;t.&lt;/p&gt;
9082
9083 &lt;p&gt;We decided to move to Linux because students at our school have own
9084 laptop and we have the responsibility to keep the laptop ready to use;
9085 we were really unsatisfied with Microsoft since every Monday we had 20
9086 machine to fix for viral infections... With Linux this has been
9087 reduced to zero, since people installs almost only from official
9088 repositories. I think that our special needs brought us to Linux.
9089 Those who don&#39;t have such needs will hardly move to Linux.&lt;/p&gt;
9090 </description>
9091 </item>
9092
9093 <item>
9094 <title>IETF activity to standardise video codec</title>
9095 <link>http://people.skolelinux.org/pere/blog/IETF_activity_to_standardise_video_codec.html</link>
9096 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/IETF_activity_to_standardise_video_codec.html</guid>
9097 <pubDate>Sat, 15 Sep 2012 20:00:00 +0200</pubDate>
9098 <description>&lt;p&gt;After the
9099 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/IETF_standardize_its_first_multimedia_codec__Opus.html&quot;&gt;Opus
9100 codec made&lt;/a&gt; it into &lt;a href=&quot;http://www.ietf.org/&quot;&gt;IETF&lt;/a&gt; as
9101 &lt;a href=&quot;http://tools.ietf.org/html/rfc6716&quot;&gt;RFC 6716&lt;/a&gt;, I had a look
9102 to see if there is any activity in IETF to standardise a video codec
9103 too, and I was happy to discover that there is some activity in this
9104 area. A non-&quot;working group&quot; mailing list
9105 &lt;a href=&quot;https://www.ietf.org/mailman/listinfo/video-codec&quot;&gt;video-codec&lt;/a&gt;
9106 was
9107 &lt;a href=&quot;http://ietf.10.n7.nabble.com/New-Non-WG-Mailing-List-video-codec-Video-codec-BoF-discussion-list-td119548.html&quot;&gt;created 2012-08-20&lt;/a&gt;. It is intended to discuss the topic and if a
9108 formal working group should be formed.&lt;/p&gt;
9109
9110 &lt;p&gt;I look forward to see how this plays out. There is already
9111 &lt;a href=&quot;http://www.ietf.org/mail-archive/web/video-codec/current/msg00003.html&quot;&gt;an
9112 email from someone&lt;/a&gt; in the MPEG group at ISO asking people to
9113 participate in the ISO group. Given how ISO failed with OOXML and given
9114 that it so far (as far as I can remember) only have produced
9115 multimedia formats requiring royalty payments, I suspect
9116 joining the ISO group would be a complete waste of time, but I am not
9117 involved in any codec work and my opinion will not matter much.&lt;/p&gt;
9118
9119 &lt;p&gt;If one of my readers is involved with codec work, I hope she will
9120 join this work to standardise a royalty free video codec within
9121 IETF.&lt;/p&gt;
9122 </description>
9123 </item>
9124
9125 <item>
9126 <title>IETF standardize its first multimedia codec: Opus</title>
9127 <link>http://people.skolelinux.org/pere/blog/IETF_standardize_its_first_multimedia_codec__Opus.html</link>
9128 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/IETF_standardize_its_first_multimedia_codec__Opus.html</guid>
9129 <pubDate>Wed, 12 Sep 2012 13:50:00 +0200</pubDate>
9130 <description>&lt;p&gt;Yesterday, &lt;a href=&quot;http://www.ietf.org/&quot;&gt;IETF&lt;/a&gt; announced the
9131 publication of of
9132 &lt;a href=&quot;http://tools.ietf.org/html/rfc6716&quot;&gt;RFC 6716, the Definition
9133 of the Opus Audio Codec&lt;/a&gt;, a low latency, variable bandwidth, codec
9134 intended for both VoIP, film and music. This is the first time, as
9135 far as I know, that IETF have standardized a multimedia codec. In
9136 &lt;a href=&quot;http://tools.ietf.org/html/rfc3533&quot;&gt;RFC 3533&lt;/a&gt;, IETF
9137 standardized the OGG container format, and it has proven to be a great
9138 royalty free container for audio, video and movies. I hope IETF will
9139 continue to standardize more royalty free codeces, after ISO and MPEG
9140 have proven incapable of securing everyone equal rights to publish
9141 multimedia content on the Internet.&lt;/p&gt;
9142
9143 &lt;p&gt;IETF require two interoperating independent implementations to
9144 ratify a standard, and have so far ensured to only standardize royalty
9145 free specifications. Both are key factors to allow everyone (rich and
9146 poor), to compete on equal terms on the Internet.&lt;/p&gt;
9147
9148 &lt;p&gt;Visit the &lt;a href=&quot;http://opus-codec.org/&quot;&gt;Opus project page&lt;/a&gt; if
9149 you want to learn more about the solution.&lt;/p&gt;
9150 </description>
9151 </item>
9152
9153 <item>
9154 <title>Git repository for song book for Computer Scientists</title>
9155 <link>http://people.skolelinux.org/pere/blog/Git_repository_for_song_book_for_Computer_Scientists.html</link>
9156 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Git_repository_for_song_book_for_Computer_Scientists.html</guid>
9157 <pubDate>Fri, 7 Sep 2012 13:50:00 +0200</pubDate>
9158 <description>&lt;p&gt;As I
9159 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Song_book_for_Computer_Scientists.html&quot;&gt;mentioned
9160 this summer&lt;/a&gt;, I have created a Computer Science song book a few
9161 years ago, and today I finally found time to create a public
9162 &lt;a href=&quot;https://gitorious.org/pere-cs-songbook/pere-cs-songbook&quot;&gt;Gitorious
9163 repository for the project&lt;/a&gt;.&lt;/p&gt;
9164
9165 &lt;p&gt;If you want to help out, please clone the source and submit patches
9166 to the HTML version. To generate the PDF and PostScript version,
9167 please use prince XML, or let me know about a useful free software
9168 processor capable of creating a good looking PDF from the HTML.&lt;/p&gt;
9169
9170 &lt;p&gt;Want to sing? You can still find the song book in HTML, PDF and
9171 PostScript formats at
9172 &lt;a href=&quot;http://www.hungry.com/~pere/cs-songbook/&quot;&gt;Petter&#39;s Computer
9173 Science Songbook&lt;/a&gt;.&lt;/p&gt;
9174 </description>
9175 </item>
9176
9177 <item>
9178 <title>Free software forced Microsoft to open Office (and don&#39;t forget Officeshots)</title>
9179 <link>http://people.skolelinux.org/pere/blog/Free_software_forced_Microsoft_to_open_Office__and_don_t_forget_Officeshots_.html</link>
9180 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Free_software_forced_Microsoft_to_open_Office__and_don_t_forget_Officeshots_.html</guid>
9181 <pubDate>Thu, 23 Aug 2012 14:20:00 +0200</pubDate>
9182 <description>&lt;p&gt;I came across a great comment from Simon Phipps today, about how
9183 &lt;a href=&quot;http://www.infoworld.com/d/open-source-software/how-microsoft-was-forced-open-office-200233&quot;&gt;Microsoft
9184 have been forced to open Office&lt;/a&gt;, and it made me remember and
9185 revisit the great site
9186 &lt;a href=&quot;http://www.officeshots.org/&quot;&gt;officeshots&lt;/a&gt; which allow you
9187 to check out how different programs present the ODF file format. I
9188 recommend both to those of my readers interested in ODF. :)&lt;/p&gt;
9189 </description>
9190 </item>
9191
9192 <item>
9193 <title>Half way there with translated docbook version of Free Culture</title>
9194 <link>http://people.skolelinux.org/pere/blog/Half_way_there_with_translated_docbook_version_of_Free_Culture.html</link>
9195 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Half_way_there_with_translated_docbook_version_of_Free_Culture.html</guid>
9196 <pubDate>Fri, 17 Aug 2012 21:50:00 +0200</pubDate>
9197 <description>&lt;p&gt;In my spare time, I currently work on a Norwegian
9198 &lt;a href=&quot;http://www.docbook.org/&quot;&gt;docbook&lt;/a&gt; version of the 2004 book
9199 &lt;a href=&quot;http://free-culture.cc/&quot;&gt;Free Culture&lt;/a&gt; by Lawrence Lessig,
9200 to get a Norwegian text explaining the problems with the copyright law
9201 I can give to my parents and others that are reluctant to read an
9202 English book. It is a marvellous set of examples on how the ever
9203 expanding copyright regulations hurt culture and society. When the
9204 translation is done, I hope to find funding to print and ship a copy
9205 to all the members of the Norwegian parliament, before they sit down
9206 to debate the latest revisions to the Norwegian copyright law. This
9207 summer I
9208 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Dugnad_for___sende_norsk_versjon_av_Free_Culture_til_stortingets_representanter_.html&quot;&gt;called
9209 for volunteers&lt;/a&gt; to help me, and I have been able to secure the
9210 valuable contribution from at least one other Norwegian.&lt;/p&gt;
9211
9212 &lt;p&gt;Two days ago, we finally broke the 50% mark. Then more than 50% of
9213 the number of strings to translate (normally paragraphs, but also
9214 titles and index entries are also counted). All parts from the
9215 beginning up to and including chapter four is translated. So is
9216 chapters six, seven and the conclusion. I created a graph to show the
9217 progress:&lt;/p&gt;
9218
9219 &lt;img width=&quot;80%&quot; align=&quot;center&quot; src=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/raw/master/progress.png&quot;&gt;
9220
9221 &lt;p&gt;The number of strings to translate increase as I insert the index
9222 entries into the docbook. They were missing with the docbook version
9223 I initially started with. There are still quite a few index entries
9224 missing, but everyone starting with A, B, O, Z and Y are done. I
9225 currently focus on completing the index entries, to get a complete
9226 english version of the docbook source.&lt;/p&gt;
9227
9228 &lt;p&gt;There is still need for translators and people with docbook
9229 knowledge, to be able to get a good looking book (I still struggle
9230 with dblatex, xmlto and docbook-xsl) as well as to do the draft
9231 translation and proof reading. And I would like the figures to be
9232 redrawn as SVGs to make it easy to translate them. Any SVG master
9233 around? I am sure there are some legal terms that are unfamiliar to
9234 me. If you want to help, please get in touch, and check out the
9235 project files currently available from &lt;a
9236 href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig&quot;&gt;github&lt;/a&gt;.&lt;/p&gt;
9237
9238 &lt;p&gt;If you are curious what the translated book currently look like,
9239 the updated
9240 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/blob/master/archive/freeculture.nb.pdf?raw=true&quot;&gt;PDF&lt;/a&gt;
9241 and
9242 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig/blob/master/archive/freeculture.nb.epub?raw=true&quot;&gt;EPUB&lt;/a&gt;
9243 are published on github. The HTML version is published as well, but
9244 github hand it out with MIME type text/plain, confusing browsers, so I
9245 saw no point in linking to that version.&lt;/p&gt;
9246 </description>
9247 </item>
9248
9249 <item>
9250 <title>Notes on language codes for Norwegian docbook processing...</title>
9251 <link>http://people.skolelinux.org/pere/blog/Notes_on_language_codes_for_Norwegian_docbook_processing___.html</link>
9252 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Notes_on_language_codes_for_Norwegian_docbook_processing___.html</guid>
9253 <pubDate>Fri, 10 Aug 2012 21:00:00 +0200</pubDate>
9254 <description>&lt;p&gt;In &lt;a href=&quot;http://www.docbook.org/&quot;&gt;docbook&lt;/a&gt; one can specify
9255 the language used at the top, and the processing pipeline will use
9256 this information to pick the correct translations for &#39;chapter&#39;, &#39;see
9257 also&#39;, &#39;index&#39; etc. And for most languages used with docbook, I guess
9258 this work just fine. For example a German user can start the document
9259 with &amp;lt;book lang=&quot;de&quot;&amp;gt;, and the document will show up with the
9260 correct content with any of the docbook processors. This is not the
9261 case for the language
9262 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Free_Culture_in_Norwegian___5_chapters_done__74_percent_left_to_do.html&quot;&gt;I
9263 am working with at the moment&lt;/a&gt;, Norwegian Bokmål.&lt;/p&gt;
9264
9265 &lt;p&gt;For a while, I was confused about which language code to use,
9266 because I was unable to find any language code that would work across
9267 all tools. I am currently testing dblatex, xmlto, docbook-xsl, and
9268 dbtoepub, and they do not handle Norwegian Bokmål the same way. Some
9269 of them do not handle it at all.&lt;/p&gt;
9270
9271 &lt;p&gt;A bit of background information is probably needed to understand
9272 this mess. Norwegian is not one, but two written variants. The
9273 variants are Norwegian Nynorsk and Norwegian Bokmål. There are three
9274 two letter language codes associated with these languages, Norwegian
9275 is &#39;no&#39;, Norwegian Nynorsk is &#39;nn&#39; and Norwegian Bokmål is &#39;nb&#39;.
9276 Historically the &#39;no&#39; language code was used for Norwegian Bokmål, but
9277 many years ago this was found to be å bad idea, and the recommendation
9278 is to use the most specific language code instead, to avoid confusion.
9279 In the transition period it is a good idea to make sure &#39;no&#39; was an
9280 alias for &#39;nb&#39;.&lt;/p&gt;
9281
9282 &lt;p&gt;Back to docbook processing tools in Debian. The dblatex tool only
9283 understand &#39;nn&#39;. There are translations for &#39;no&#39;, but not &#39;nb&#39; (BTS
9284 &lt;a href=&quot;http://bugs.debian.org/684391&quot;&gt;#684391&lt;/a&gt;), but due to a bug
9285 (BTS &lt;a href=&quot;http://bugs.debian.org/682936&quot;&gt;#682936&lt;/a&gt;) the &#39;no&#39;
9286 language code is not recognised. The docbook-xsl tool chain only
9287 recognise &#39;nn&#39; and &#39;nb&#39;, but not &#39;no&#39;. The xmlto tool only recognise
9288 &#39;nn&#39; and &#39;nb&#39;, but not &#39;no&#39;. The end result that there is no language
9289 code I can use to get the docbook file working with all of these tools
9290 at the same time. :(&lt;/p&gt;
9291
9292 &lt;p&gt;The correct solution is to use &amp;lt;book lang=&quot;nb&quot;&amp;gt;, but it will
9293 take time before that will work with all the free software docbook
9294 processors. :(&lt;/p&gt;
9295
9296 &lt;p&gt;Oh, the joy of well integrated tools. :/&lt;/p&gt;
9297 </description>
9298 </item>
9299
9300 <item>
9301 <title>Best way to create a docbook book?</title>
9302 <link>http://people.skolelinux.org/pere/blog/Best_way_to_create_a_docbook_book_.html</link>
9303 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Best_way_to_create_a_docbook_book_.html</guid>
9304 <pubDate>Tue, 31 Jul 2012 22:00:00 +0200</pubDate>
9305 <description>&lt;p&gt;I tried to send this text to the
9306 &lt;a href=&quot;https://lists.oasis-open.org/archives/docbook-apps/&quot;&gt;docbook-apps
9307 mailing list at lists.oasis-open.org&lt;/a&gt;, but it only accept messages
9308 from subscribers and rejected my post, and I completely lack the
9309 bandwidth required to subscribe to another mailing list, so instead I
9310 try to post my message here and hope my blog readers can help me
9311 out.&lt;/p&gt;
9312
9313 &lt;p&gt;I am quite new to docbook processing, and am climbing a steep
9314 learning curve at the moment.&lt;/p&gt;
9315
9316 &lt;p&gt;To give you some background, I am working on a Norwegian
9317 translation of the book Free Culture by Lawrence Lessig, and I use
9318 docbook to handle the process. The files to build the book are
9319 available from
9320 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig&quot;&gt;github&lt;/a&gt;.
9321 The book got around 400 pages with parts, images, footnotes, tables,
9322 index entries etc, which has proven to be a challenge for the free
9323 software docbook processors. My build platform is Debian GNU/Linux
9324 Squeeze.&lt;/p&gt;
9325
9326 &lt;p&gt;I want to build PDF, EPUB and HTML version of the book, and have
9327 tried different tool chains to do the conversion from docbook to these
9328 formats. I am currently focusing on the PDF version, and have a few
9329 problems.&lt;/p&gt;
9330
9331 &lt;ul&gt;
9332
9333 &lt;li&gt;Using dblatex, the &amp;lt;part&amp;gt; handling is not the way I want to,
9334 as &amp;lt;/part&amp;gt; do not really end the &amp;lt;part&amp;gt;. (See
9335 &lt;a href=&quot;http://bugs.debian.org/683166&quot;&gt;BTS report #683166&lt;/a&gt;), the
9336 xetex backend (needed to process UTF-8) give incorrect hyphens in
9337 index references spanning several pages (See
9338 &lt;a href=&quot;http://bugs.debian.org/682901&quot;&gt;BTS report #682901&lt;/a&gt;), and
9339 I am unable to get the norwegian template texts (See
9340 &lt;a href=&quot;http://bugs.debian.org/682936&quot;&gt;BTS report #682936&lt;/a&gt;).&lt;/li&gt;
9341
9342 &lt;li&gt;Using straight xmlto fail with some latex error (See
9343 &lt;a href=&quot;http://bugs.debian.org/683163&quot;&gt;BTS report
9344 #683163&lt;/a&gt;).&lt;/li&gt;
9345
9346 &lt;li&gt;Using xmlto with the fop backend fail to handle images (do not
9347 show up in the PDF), fail to handle a long footnote (overlap
9348 footnote and text body, see
9349 &lt;a href=&quot;http://bugs.debian.org/683197&quot;&gt;BTS report #683197&lt;/a&gt;), and
9350 fail to create a correct index (some lack page ref, and the page
9351 refs listed are not right).&lt;/li&gt;
9352
9353 &lt;li&gt;Using xmlto with the dblatex backend behave like dblatex.&lt;/li&gt;
9354
9355 &lt;li&gt;Using docbook-xls with xsltproc + fop have the same footnote and
9356 index problems the xmlto + fop processing.&lt;/li&gt;
9357
9358 &lt;/ul&gt;
9359
9360 &lt;p&gt;So I wonder, what would be the best way to create the PDF version
9361 of this book? Are some of the bugs found above solved in new or
9362 experimental versions of some docbook tool chain?&lt;/p&gt;
9363
9364 &lt;p&gt;What about HTML and EPUB versions?&lt;/p&gt;
9365 </description>
9366 </item>
9367
9368 <item>
9369 <title>Free Culture in Norwegian - 5 chapters done, 74 percent left to do</title>
9370 <link>http://people.skolelinux.org/pere/blog/Free_Culture_in_Norwegian___5_chapters_done__74_percent_left_to_do.html</link>
9371 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Free_Culture_in_Norwegian___5_chapters_done__74_percent_left_to_do.html</guid>
9372 <pubDate>Sat, 21 Jul 2012 20:00:00 +0200</pubDate>
9373 <description>&lt;p&gt;I reported earlier that I am working on
9374 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Dugnad_for___sende_norsk_versjon_av_Free_Culture_til_stortingets_representanter_.html&quot;&gt;a
9375 norwegian version&lt;/a&gt; of the book
9376 &lt;a href=&quot;http://free-culture.cc/&quot;&gt;Free Culture&lt;/a&gt; by Lawrence Lessig.
9377 Progress is good, and yesterday I got a major contribution from Anders
9378 Hagen Jarmund completing chapter six. The source files as well as a
9379 PDF and EPUB version of this book are available from
9380 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig&quot;&gt;github&lt;/a&gt;.&lt;/p&gt;
9381
9382 &lt;p&gt;I am happy to report that the draft for the first two chapters
9383 (preface, introduction) is complete, and three other chapters are also
9384 completely translated. This completes 26 percent of the number of
9385 strings (equivalent to paragraphs) in the book, and there is thus 74
9386 percent left to translate. A graph of the progress is present at the
9387 bottom of the github project page. There is still room for more
9388 contributors. Get in touch or send github pull requests with fixes if
9389 you got time and are willing to help make this book make it to
9390 print. :)&lt;/p&gt;
9391
9392 &lt;p&gt;The book translation framework could also be a good basis for other
9393 translations, if you want the book to be available in your
9394 language.&lt;/p&gt;
9395 </description>
9396 </item>
9397
9398 <item>
9399 <title>Call for help from docbook expert to tag Free Culture by Lawrence Lessig</title>
9400 <link>http://people.skolelinux.org/pere/blog/Call_for_help_from_docbook_expert_to_tag_Free_Culture_by_Lawrence_Lessig.html</link>
9401 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Call_for_help_from_docbook_expert_to_tag_Free_Culture_by_Lawrence_Lessig.html</guid>
9402 <pubDate>Mon, 16 Jul 2012 22:50:00 +0200</pubDate>
9403 <description>&lt;p&gt;I am currently working on a
9404 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Dugnad_for___sende_norsk_versjon_av_Free_Culture_til_stortingets_representanter_.html&quot;&gt;project
9405 to translate&lt;/a&gt; the book
9406 &lt;a href=&quot;http://free-culture.cc/&quot;&gt;Free Culture&lt;/a&gt; by Lawrence Lessig
9407 to Norwegian. And the source we base our translation on is the
9408 &lt;a href=&quot;http://en.wikipedia.org/wiki/DocBook&quot;&gt;docbook&lt;/a&gt; version, to
9409 allow us to use po4a and .po files to handle the translation, and for
9410 this to work well the docbook source document need to be properly
9411 tagged. The source files of this project is available from
9412 &lt;a href=&quot;https://github.com/petterreinholdtsen/free-culture-lessig&quot;&gt;github&lt;/a&gt;.&lt;/p&gt;
9413
9414 &lt;p&gt;The problem is that the docbook source have flaws, and we have
9415 no-one involved in the project that is a docbook expert. Is there a
9416 docbook expert somewhere that is interested in helping us create a
9417 well tagged docbook version of the book, and adjust our build process
9418 for the PDF, EPUB and HTML version of the book? This will provide a
9419 well tagged English version (our source document), and make it a lot
9420 easier for us to create a good Norwegian version. If you can and want
9421 to help, please get in touch with me or fork the github project and
9422 send pull requests with fixes. :)&lt;/p&gt;
9423 </description>
9424 </item>
9425
9426 <item>
9427 <title>Debian Edu interview: George Bredberg</title>
9428 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__George_Bredberg.html</link>
9429 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__George_Bredberg.html</guid>
9430 <pubDate>Mon, 9 Jul 2012 00:30:00 +0200</pubDate>
9431 <description>&lt;p&gt;The &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu /
9432 Skolelinux&lt;/a&gt; project have users all over the globe, but until
9433 recently we have not known about any users in Norway&#39;s neighbour
9434 country Sweden. This changed when George Bredberg showed up in March
9435 this year on the mailing list, asking interesting questions about how
9436 to adjust and scale the just released
9437 &lt;a href=&quot;http://www.debian.org/News/2012/20120311.html&quot;&gt;Debian Edu
9438 Wheezy&lt;/a&gt; setup to his liking. He granted me an interview, and I am
9439 happy to share his answers with you here.&lt;/p&gt;
9440
9441 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
9442
9443 &lt;p&gt;I&#39;m a 44 year old country guy that have been working 12 years at
9444 the same school as 50% IT-manager and 50% Teacher. My educational
9445 background is fil.kand in history and religious beliefs, an exam as a
9446 &quot;folkhighschool&quot; teacher, that is, for teaching grownups. In
9447 Norwegian I believe it&#39;s called &quot;Vuxenupplaring&quot;. I also have a master
9448 in &quot;Technology and social change&quot;. So I&#39;m not really a tech guy, I
9449 just like to study how humans and technology interact and that is my
9450 perspective when working with IT.&lt;/p&gt;
9451
9452 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux/Debian Edu
9453 project?&lt;/strong&gt;&lt;/p&gt;
9454
9455 I have followed the Skolelinux project for quite some time by
9456 now. Earlier I tested out the K12-LTSP project, which we used for some
9457 time, but I really like the idea of having a distribution aimed to be
9458 a complete solution for schools with necessary tools integrated. When
9459 K12-LTSP abandoned that idea some years ago, I started to look more
9460 seriously into Skolelinux instead.
9461
9462 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux/Debian
9463 Edu?&lt;/strong&gt;&lt;/p&gt;
9464
9465 The big point of Skolelinux to me is that it is a complete
9466 distribution, ready to install. It has LDAP-support, MS Windows
9467 integration tools and so forth already configured, saving an
9468 administrator a lot of time and headache. We were using another Linux
9469 based thin-client system called Thinlinc, that has served us very
9470 well. But that Skolelinux is based on VNC and LTSP, to me, is better
9471 when it comes to the kind of multimedia used in schools. That is
9472 showing videos from Youtube or educational TV. It is also easier to
9473 mix thin clients with workstations, since the user settings will be the
9474 same. In our VNC-based solution you had to &quot;beat around the bush&quot; by
9475 setting up a second, hidden, home-directory for user settings for the
9476 workstations, because they will be different from the ones used on the
9477 thin clients. Skolelinux support for diskless workstations are very
9478 convenient since a school today often need to use a class room
9479 projector showing videos in full screen. That is easily done with a
9480 small integrated media computer running as a diskless workstation. You
9481 have only two installs to update and configure. One for the thin
9482 clients and one for the workstations. Also saving a lot of time. Our
9483 old system was also based on Redhat and CentOS. They are both very
9484 nice distributions, but they are sometimes painfully slow when it
9485 comes to updating multimedia support and multimedia programs (even
9486 such as Gimp), leaving us with a bit &quot;oldish&quot; applications. Debian is
9487 quicker to update.
9488
9489 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux/Debian
9490 Edu?&lt;/strong&gt;&lt;/p&gt;
9491
9492 &lt;p&gt;Debian is a bit too quick when it comes to updating. As an example
9493 we use old HP terminals as thinclients, and two times already this
9494 year (2012) the updates you get from the repositories has stopped
9495 sound from working with them. It&#39;s a kernel/ALSA issue. So you have
9496 to be more careful properly testing the updates before you run them in
9497 a production environment. This has never happened with CentOS.&lt;/p&gt;
9498
9499 &lt;p&gt;I also would like to be able to set my own domain-settings at
9500 install time. In Skolelinux they are kind of hard coded into the
9501 distribution, when it comes to LDAP and at least samba integration.
9502 That is more a cosmetic/translation issue, and not a real problem.
9503 Running MS Windows applications within the Skolelinux environment needs
9504 to be better supported. That is, running them seamlessly via RDP, and
9505 support for single-sign on. That will make the transition to free
9506 software easier, because you can keep the applications you really
9507 need. No support will make it impossible if you work in a school where
9508 some applications can&#39;t be open source. As for us we really need to
9509 run Adobe InDesign in our journalist classes. We run a journalist
9510 education, and is one of the very few non university ones that is ok:d
9511 by Svenska journalistförbundet (Swedish journalist association). Our
9512 education gives the pupils the right of membership there, once they
9513 are done. This is important if you want to get a job.&lt;/p&gt;
9514
9515 &lt;p&gt;Adobe InDesign is the program most commonly used in newspapers and
9516 magazines. We used Quark Express before, but they seem to loose there
9517 market to Adobe. The only &quot;equivalent&quot; to InDesign in the opensource
9518 world is Scribus, and its not advanced enough. At least not according
9519 to the teacher. I think it would be possible to use it, because they
9520 are not supposed to learn a program, they are supposed to learn how to
9521 edit and compile a newspaper. But politically at our school we are not
9522 there yet. And Scribus lacks a lot of things you find i InDesign.&lt;/p&gt;
9523
9524 &lt;p&gt;We used even a windows program for sound editing when it comes to
9525 the radio-journalist part. The year to come we are going to try
9526 Audacity. That software has the same kind of limitations compared to
9527 Adobe Audition, but that teacher is a bit more open minded. We have
9528 tried Ardour also, but that instead is more like a music studio
9529 program, not intended for the kind of editing taking place in a radio
9530 studio. Its way to complex and the GUI is to scattered when you only
9531 want to cut, make pass-overs, add extra channels and normalise. Those
9532 things you can do in Audacity, but its not as easy as in Audition. You
9533 have to do more things manually with envelopes, and that is a bit old
9534 fashion and timewasting. Its also harder to cut and move sound from
9535 one channel to another, which is a thing that you do frequently
9536 because you often find yourself needing to rearrange parts of the
9537 sound file.&lt;/p&gt;
9538
9539 &lt;p&gt;So, I am not sure we will succeed in replacing even Audition, but we
9540 will try. The problem is the students have certain expectations when
9541 they start an education towards a profession. So the programs has to
9542 look and feel professional. Good thing with radio, there are many
9543 programs out there, that radio studios use, so its not as standardised
9544 as Newspaper editing. That means, it does not really matter what
9545 program they learn, because once they start working they still have to
9546 learn the program the studio uses, so instead focus has to be to learn
9547 the editing part without to much focus on a specific software.&lt;/p&gt;
9548
9549 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
9550
9551 &lt;p&gt;Myself I&#39;m running Linux Mint, or Ubuntu these days. I use almost
9552 only open source software, and preferably Linux based. When it comes
9553 to most used applications its OpenOffice, and Firefox (of course ;)
9554 )&lt;/p&gt;
9555
9556 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
9557 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
9558
9559 &lt;p&gt;To get schools to use free software there has to be good open
9560 source software that are windows based, to ease the transition. But
9561 it&#39;s also very important that the multimedia support is working
9562 flawlessly. The problems with Youtube, Twitter, Facebook and whatever
9563 will create problems when it comes to both teachers and
9564 students. Economy are also important for schools, so using thin
9565 clients, as long as they have good multimedia support, is a very good
9566 idea. It&#39;s also important that the open source software works even for
9567 the administration. It&#39;s hard to convince the teachers to stick with
9568 open source, if the principal has to run Windows. It also creates a
9569 problem if some classes has to use Windows for there tasks, since that
9570 will create a difference in &quot;status&quot; between classes, so a good
9571 support for running windows applications via the thin client (Linux)
9572 desktop is essential. At least at our school, where we have mixed
9573 level of educations, from high-school to journalist-school.&lt;/p&gt;
9574
9575 &lt;p&gt;Update 2012-07-09 08:30: Paul Wise tipped me on IRC about three
9576 useful sources related to Free Software for radio stations: the LWN
9577 article &lt;a href=&quot;https://lwn.net/Articles/481607/&quot;&gt;Radio station
9578 management with Airtime&lt;/a&gt;,
9579 &lt;a href=&quot;http://www.sourcefabric.org/en/airtime/&quot;&gt;Airtime&lt;/a&gt; which
9580 claim to be a Free open source radio automation software and
9581 &lt;a href=&quot;http://www.rivendellaudio.org/&quot;&gt;Rivendell&lt;/a&gt; which claim to
9582 be complete radio broadcast automation solution. All of them seem
9583 useful to the aspiring radio producer.&lt;/p&gt;
9584 </description>
9585 </item>
9586
9587 <item>
9588 <title>Why do schools waste money on IT?</title>
9589 <link>http://people.skolelinux.org/pere/blog/Why_do_schools_waste_money_on_IT_.html</link>
9590 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Why_do_schools_waste_money_on_IT_.html</guid>
9591 <pubDate>Sun, 8 Jul 2012 09:40:00 +0200</pubDate>
9592 <description>&lt;p&gt;In the Debian Edu / Skolelinux project, we have realised that one
9593 of the major blockers for the project success is the purchasing skills
9594 in schools and municipalities. We provide what the happy users of
9595 Debian Edu / Skolelinux say they need and to a lower cost than the
9596 alternatives, and yet so few schools decide to use our solution. I
9597 was pleased to discover the same observation done by mySociety and Tom
9598 Steinberg in his blog post
9599 &quot;&lt;a href=&quot;http://www.mysociety.org/2012/06/19/can-you-recognize-the-million-pound-chair/&quot;&gt;Can
9600 you recognize the million pound chair?&lt;/a&gt;&quot;. Read it and weep for the
9601 spending of your tax money.&lt;/p&gt;
9602
9603 &lt;p&gt;Of course there are other factors involved as well, like our
9604 projects bad marketing skills and the Linux community fragmentation
9605 causing worry with the people on the outside, so we as a project need
9606 to keep working hard to gain users, but it is a up-hill battle when
9607 public decision makers are unable to understand computer system
9608 purchases.&lt;/p&gt;
9609 </description>
9610 </item>
9611
9612 <item>
9613 <title>Free Timetabling Software - nice free software</title>
9614 <link>http://people.skolelinux.org/pere/blog/Free_Timetabling_Software___nice_free_software.html</link>
9615 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Free_Timetabling_Software___nice_free_software.html</guid>
9616 <pubDate>Sat, 7 Jul 2012 09:50:00 +0200</pubDate>
9617 <description>&lt;p&gt;Included in &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu /
9618 Skolelinux&lt;/a&gt; is a large collection of end user and school specific
9619 software. It is one of the packages not installed by default but
9620 provided in the Debian archive for schools to install if they want to,
9621 is a system to automatically plan the school time table using
9622 information about available teachers, classes and rooms, combined with
9623 the list of required courses and how many hours each topic should
9624 receive. The software is
9625
9626 &lt;a href=&quot;http://lalescu.ro/liviu/fet/&quot;&gt;named FET&lt;/a&gt;, and it provide a
9627 graphical user interface to input the required information, save the
9628 result in a fairly simple XML format, and generate time tables for
9629 both teachers and students. It is available both for
9630 &lt;a href=&quot;http://lalescu.ro/liviu/fet/download.html&quot;&gt;Linux, MacOSX and
9631 Windows&lt;/a&gt;.&lt;/p&gt;
9632
9633 &lt;p&gt;This is &lt;a href=&quot;http://lalescu.ro/liviu/fet/features.html&quot;&gt;the
9634 feature list&lt;/a&gt;, liftet from the project web site:&lt;/p&gt;
9635
9636 &lt;p&gt;&lt;ul&gt;
9637
9638 &lt;li&gt;FET is free software, licensed under the GNU GPL v2 or later.
9639 You can freely use, copy, modify and redistribute it &lt;/li&gt;
9640
9641 &lt;li&gt;Localized to en_US (US English, default), ar (Arabic), ca
9642 (Catalan), da (Danish), de (German), el (Greek), es (Spanish), fa
9643 (Persian), fr (French), gl (Galician), he (Hebrew), hu
9644 (Hungarian), id (Indonesian), it (Italian), lt (Lithuanian), mk
9645 (Macedonian), ms (Malay), nl (Dutch), pl (Polish), pt_BR
9646 (Brazilian Portuguese), ro (Romanian), ru (Russian), si (Sinhala),
9647 sk (Slovak), sr (Serbian), tr (Turkish), uk (Ukrainian), uz
9648 (Uzbek) and vi (Vietnamese) (incompletely for some languages)
9649 &lt;/li&gt;
9650
9651 &lt;li&gt;Fully automatic generation algorithm, allowing also
9652 semi-automatic or manual allocation&lt;/li&gt;
9653
9654 &lt;li&gt;Platform independent implementation, allowing running on
9655 GNU/Linux, Windows, Mac and any system that Qt supports &lt;/li&gt;
9656
9657 &lt;li&gt;Flexible modular XML format for the input file, allowing editing
9658 with an XML editor or by hand (besides FET interface)&lt;/li&gt;
9659
9660 &lt;li&gt;Import/export from CSV format&lt;/li&gt;
9661
9662 &lt;li&gt;The resulted timetables are exported into HTML, XML and CSV
9663 formats &lt;/li&gt;
9664
9665 &lt;li&gt;Flexible students structure, organized into sets: years, groups
9666 and subgroups. FET allows overlapping years and groups and
9667 non-overlapping subgroups. You can even define individual students
9668 (as separate sets)&lt;/li&gt;
9669
9670 &lt;li&gt;Each constraint has a weight percentage, from 0.0% to 100.0%
9671 (but some special constraints are allowed to have only 100% weight
9672 percentage)&lt;/li&gt;
9673
9674 &lt;li&gt;Limits for the algorithm (all these limits can be increased on
9675 demand, as a custom version, because this would require a bit more
9676 memory):
9677 &lt;ul&gt;
9678 &lt;li&gt;Maximum total number of hours (periods) per day: 60&lt;/li&gt;
9679 &lt;li&gt;Maximum number of working days per week: 35&lt;/li&gt;
9680 &lt;li&gt;Maximum total number of teachers: 6000&lt;/li&gt;
9681 &lt;li&gt;Maximum total number of sets of students: 30000&lt;/li&gt;
9682 &lt;li&gt;Maximum total number of subjects: 6000&lt;/li&gt;
9683 &lt;li&gt;Virtually unlimited number of activity tags&lt;/li&gt;
9684 &lt;li&gt;Maximum number of activities: 30000&lt;/li&gt;
9685 &lt;li&gt;Maximum number of rooms: 6000&lt;/li&gt;
9686 &lt;li&gt;Maximum number of buildings: 6000&lt;/li&gt;
9687 &lt;li&gt;Possibility of adding multiple teachers and
9688 students sets for each activity. (it is possible
9689 also to have no teachers or no students sets for an
9690 activity)&lt;/li&gt;
9691 &lt;li&gt;Virtually unlimited number of time constraints&lt;/li&gt;
9692 &lt;li&gt;Virtually unlimited number of space constraints&lt;/li&gt;
9693 &lt;/ul&gt;&lt;/li&gt;
9694
9695 &lt;li&gt;A large and flexible palette of time constraints:
9696 &lt;ul&gt;
9697 &lt;li&gt;Break periods&lt;/li&gt;
9698 &lt;li&gt;For teacher(s):
9699 &lt;ul&gt;
9700 &lt;li&gt;Not available periods&lt;/li&gt;
9701 &lt;li&gt;Max/min days per week&lt;/li&gt;
9702 &lt;li&gt;Max gaps per day/week&lt;/li&gt;
9703 &lt;li&gt;Max hours daily/continuously&lt;/li&gt;
9704 &lt;li&gt;Min hours daily&lt;/li&gt;
9705 &lt;li&gt;Max hours daily/continuously with an activity tag&lt;/li&gt;
9706
9707 &lt;li&gt;Respect working in an hourly interval a max number of
9708 days per week&lt;/li&gt;
9709 &lt;/ul&gt;&lt;/li&gt;
9710 &lt;li&gt;For students (sets):
9711 &lt;ul&gt;
9712 &lt;li&gt;Not available periods&lt;/li&gt;
9713 &lt;li&gt;Begins early (specify max allowed beginnings at second hour)&lt;/li&gt;
9714 &lt;li&gt;Max gaps per day/week&lt;/li&gt;
9715 &lt;li&gt;Max hours daily/continuously&lt;/li&gt;
9716 &lt;li&gt;Min hours daily&lt;/li&gt;
9717 &lt;li&gt;Max hours daily/continuously with an activity tag&lt;/li&gt;
9718
9719 &lt;li&gt;Respect working in an hourly interval a max number of
9720 days per week&lt;/li&gt;
9721 &lt;/ul&gt;&lt;/li&gt;
9722 &lt;li&gt;For an activity or a set of activities/subactivities:
9723 &lt;ul&gt;
9724 &lt;li&gt;A single preferred starting time&lt;/li&gt;
9725 &lt;li&gt;A set of preferred starting times&lt;/li&gt;
9726 &lt;li&gt;A set of preferred time slots&lt;/li&gt;
9727 &lt;li&gt;Min/max days between them&lt;/li&gt;
9728 &lt;li&gt;End(s) students day&lt;/li&gt;
9729 &lt;li&gt;Same starting time/day/hour&lt;/li&gt;
9730 &lt;li&gt;Occupy max time slots from selection (a complex and
9731 flexible constraint, useful in many situations)&lt;/li&gt;
9732 &lt;li&gt;Consecutive, ordered, grouped (for 2 or 3 (sub)activities)&lt;/li&gt;
9733 &lt;li&gt;Not overlapping&lt;/li&gt;
9734 &lt;li&gt;Max simultaneous in selected time slots&lt;/li&gt;
9735 &lt;li&gt;Min gaps between a set of (sub)activities&lt;/li&gt;
9736 &lt;/ul&gt;&lt;/li&gt;
9737 &lt;/ul&gt;&lt;/li&gt;
9738
9739 &lt;li&gt;A large and flexible palette of space constraints:
9740 &lt;ul&gt;
9741 &lt;li&gt;Room not available periods&lt;/li&gt;
9742 &lt;li&gt;For teacher(s):
9743 &lt;ul&gt;
9744 &lt;li&gt;Home room(s)&lt;/li&gt;
9745 &lt;li&gt;Max building changes per day/week&lt;/li&gt;
9746 &lt;li&gt;Min gaps between building changes&lt;/li&gt;
9747 &lt;/ul&gt;
9748 &lt;/li&gt;
9749
9750 &lt;li&gt;For students (sets):
9751 &lt;ul&gt;
9752 &lt;li&gt;Home room(s)&lt;/li&gt;
9753 &lt;li&gt;Max building changes per day/week&lt;/li&gt;
9754 &lt;li&gt;Min gaps between building changes&lt;/li&gt;
9755 &lt;/ul&gt;
9756 &lt;/li&gt;
9757 &lt;li&gt;Preferred room(s):
9758 &lt;ul&gt;
9759 &lt;li&gt;For a subject&lt;/li&gt;
9760 &lt;li&gt;For an activity tag&lt;/li&gt;
9761 &lt;li&gt;For a subject and an activity tag&lt;/li&gt;
9762 &lt;li&gt;Individually for a (sub)activity&lt;/li&gt;
9763 &lt;/ul&gt;
9764 &lt;/li&gt;
9765
9766 &lt;li&gt;For a set of activities:
9767 &lt;ul&gt;
9768 &lt;li&gt;Occupy a maximum number of different rooms&lt;/li&gt;
9769 &lt;/ul&gt;
9770 &lt;/li&gt;
9771 &lt;/ul&gt;
9772 &lt;/li&gt;
9773 &lt;/ul&gt;&lt;/p&gt;
9774
9775 &lt;p&gt;I have not used it myself, as I am not involved in time table
9776 planning at a school, but it seem to work fine when I test it. If you
9777 need to set up your schools time table, and is tired of doing it
9778 manually, check it out.
9779
9780 A quick summary on how to use it can be found in
9781 &lt;a href=&quot;http://marvelsoft.co.in/wp/2012/03/generate-timetable-for-state-cbse-icse-igcse-schools-free/&quot;&gt;a
9782 blog post from MarvelSoft&lt;/a&gt;. If you find FET useful, please provide
9783 a recipe for the Debian Edu project in the
9784 &lt;a href=&quot;http://wiki.debian.org/DebianEdu#Howtos&quot;&gt;Debian Edu HowTo
9785 section&lt;/a&gt;.&lt;/p&gt;
9786 </description>
9787 </item>
9788
9789 <item>
9790 <title>Can Zimbra be told to send autoreplies to the From: address?</title>
9791 <link>http://people.skolelinux.org/pere/blog/Can_Zimbra_be_told_to_send_autoreplies_to_the_From__address_.html</link>
9792 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Can_Zimbra_be_told_to_send_autoreplies_to_the_From__address_.html</guid>
9793 <pubDate>Tue, 3 Jul 2012 23:30:00 +0200</pubDate>
9794 <description>&lt;p&gt;In the NUUG &lt;a href=&quot;http://www.fiksgatami.no/&quot;&gt;FiksGataMi&lt;/a&gt;
9795 project (Norwegian version of
9796 &lt;a href=&quot;http://www.fixmystreet.com/&quot;&gt;FixMyStreet&lt;/a&gt; from
9797 &lt;a href=&quot;http://www.mysociety.org/&quot;&gt;mySociety&lt;/a&gt;), we have discovered
9798 a problem with the municipalities using
9799 &lt;a href=&quot;http://www.zimbra.com/&quot;&gt;Zimbra&lt;/a&gt;. When FiksGataMi send a
9800 problem report to the government, the email From: address is set to
9801 the address of the person reporting the problem, while envelope sender
9802 is set to the FiksGataMi contact address. The intention is to make
9803 sure the municipality send any replies to the person reporting the
9804 problem, while any email delivery problems are sent to us in NUUG.
9805 This work well in most cases, but not for Karmøy municipality using
9806 Zimbra. Karmøy is using the vacation message function in Zimbra to
9807 send an automatic reply to report that the message has been received,
9808 and this message is sent to the envelope sender and not the address in
9809 the From: header.&lt;/p&gt;
9810
9811 &lt;p&gt;This causes the automatic message from Karmøy to go to NUUGs
9812 request-tracker instance instead of to the person reporting the
9813 problem. We can not really change the envelope sender address, as
9814 this would make it impossible for us to discover when there are
9815 problems with the MTAs receiving problem reports. We have been in
9816 contact with the people at Karmøy municipality, and they are willing
9817 to adjust Zimbra if something can be changed there to get a better
9818 behaviour.&lt;/p&gt;
9819
9820 &lt;p&gt;The default behaviour of Zimbra is as far as I can tell according
9821 to the specification in RFC 3834, which recommend that vacation
9822 messages are sent to the envelope sender and not to the From: address.
9823 But I wonder if it is possible to adjust or configure Zimbra to behave
9824 differently. Anyone know? Please let us know at
9825 &lt;a href=&quot;http://lists.nuug.no/mailman/listinfo/fiksgatami&quot;&gt;fiksgatami
9826 (at) nuug.no&lt;/a&gt;.&lt;/p&gt;
9827 </description>
9828 </item>
9829
9830 <item>
9831 <title>Debian Edu interview: José Luis Redrejo Rodríguez</title>
9832 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Jos__Luis_Redrejo_Rodr_guez.html</link>
9833 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Jos__Luis_Redrejo_Rodr_guez.html</guid>
9834 <pubDate>Tue, 26 Jun 2012 08:30:00 +0200</pubDate>
9835 <description>&lt;p&gt;I&#39;ve been too busy at home, but finally I found time to wrap up
9836 another interview with the people behind
9837 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu and Skolelinux&lt;/a&gt;.
9838 This time we get to know José Luis Redrejo Rodríguez, one of our great
9839 helpers from Spain. His effort was the reason we added support for
9840 several desktop types (KDE, Gnome and most recently LXDE) in Debian
9841 Edu, and have all of these available in the recently published
9842 &lt;a href=&quot;http://www.debian.org/News/2012/20120311.html&quot;&gt;Debian Edu
9843 Squeeze&lt;/a&gt; version.&lt;/p&gt;
9844
9845 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
9846
9847 &lt;p&gt;I&#39;m a father, teacher and engineer who is working for the Education
9848 ministry of the Region of Extremadura (Spain) in the implementation of
9849 ICT in schools&lt;/p&gt;
9850
9851 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux/Debian Edu
9852 project?&lt;/strong&gt;&lt;/p&gt;
9853
9854 &lt;p&gt;At 2006, I verified that both, we in Extremadura and Skolelinux
9855 project, had been working in parallel for some years, doing very
9856 similar things, using very similar tools and with similar targets, so
9857 I decided it was time to join forces as much as possible.&lt;/p&gt;
9858
9859 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux/Debian
9860 Edu?&lt;/strong&gt;&lt;/p&gt;
9861
9862 &lt;p&gt;A community of highly skilled experts working together, with a
9863 really open schema of collaboration and work. I really love the
9864 concepts of Do-ocracy and Merit-ocracy and the way these concepts are
9865 been used everyday inside Debian Edu.&lt;/p&gt;
9866
9867 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux/Debian
9868 Edu?&lt;/strong&gt;&lt;/p&gt;
9869
9870 &lt;p&gt;Sometimes the differences in the implementations, laws or
9871 economical and technical resources in the different countries don&#39;t
9872 allow us to agree in the same solution for all of us, and several
9873 approaches are needed, what is a waste of effort. Also, there is a
9874 lack of more man power to be able to follow the fast evolution of the
9875 technologies in school.&lt;/p&gt;
9876
9877 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
9878
9879 &lt;p&gt;Debian, of course, and due to my kind of job I am most of my time
9880 between Iceweasel, &lt;a href=&quot;http://www.geany.org/&quot;&gt;Geany&lt;/a&gt; and
9881 &lt;a href=&quot;http://www.ohloh.net/p/gnome-terminator&quot;&gt;Terminator&lt;/a&gt;.&lt;/p&gt;
9882
9883 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
9884 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
9885
9886 &lt;p&gt;I think there is not a single strategy because there are very
9887 different scenarios: schools with mixed proprietary and free
9888 environments, schools using only workstations, other schools using
9889 laptops, netbooks, tablets, interactive white-boards, etc.&lt;/p&gt;
9890
9891 &lt;p&gt;Also the range of ages of the students is very broad and you can
9892 not use the same solutions for primary schools and secondary or even
9893 universities. So different strategies are needed.&lt;/p&gt;
9894
9895 &lt;p&gt;But, looking at these differences, and looking back to the things
9896 we&#39;ve done and implemented, and the places were we have spent most of
9897 our forces, I think we should focus as much as possible in free
9898 multi-platform environments, using only standards tools, and moving
9899 more and more to Internet or network solutions that could be deployed
9900 using wireless. I think we&#39;ll see more and more personal devices in
9901 the schools, devices the students and teachers will take home with
9902 them, so the solutions must be able to be taken at home and continue
9903 working there.&lt;/p&gt;
9904 </description>
9905 </item>
9906
9907 <item>
9908 <title>Song book for Computer Scientists</title>
9909 <link>http://people.skolelinux.org/pere/blog/Song_book_for_Computer_Scientists.html</link>
9910 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Song_book_for_Computer_Scientists.html</guid>
9911 <pubDate>Sun, 24 Jun 2012 13:30:00 +0200</pubDate>
9912 <description>&lt;p&gt;Many years ago, while studying Computer Science at the
9913 &lt;a href=&quot;http://www.uit.no/&quot;&gt;University of Tromsø&lt;/a&gt;, I started
9914 collecting computer related songs for use at parties. The original
9915 version was written in LaTeX, but a few years ago I got help from
9916 Håkon W. Lie, one of the inventors of W3C CSS, to convert it to HTML
9917 while keeping the ability to create a nice book in PDF format. I have
9918 not had time to maintain the book for a while now, and guess I should
9919 put it up on some public version control repository where others can
9920 help me extend and update the book. If anyone is volunteering to help
9921 me with this, send me an email. Also let me know if there are songs
9922 missing in my book.&lt;/p&gt;
9923
9924 &lt;p&gt;I have not mentioned the book on my blog so far, and it occured to
9925 me today that I really should let all my readers share the joys of
9926 singing out load about programming, computers and computer networks.
9927 Especially now that &lt;a href=&quot;http://debconf12.debconf.org/&quot;&gt;Debconf
9928 12&lt;/a&gt; is about to start (and I am not going). Want to sing? Check
9929 out &lt;a href=&quot;http://www.hungry.com/~pere/cs-songbook/&quot;&gt;Petter&#39;s
9930 Computer Science Songbook&lt;/a&gt;.
9931 </description>
9932 </item>
9933
9934 <item>
9935 <title>Debian Edu - some ideas for the future versions</title>
9936 <link>http://people.skolelinux.org/pere/blog/Debian_Edu___some_ideas_for_the_future_versions.html</link>
9937 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu___some_ideas_for_the_future_versions.html</guid>
9938 <pubDate>Mon, 11 Jun 2012 14:30:00 +0200</pubDate>
9939 <description>&lt;p&gt;During my work on
9940 &lt;a href=&quot;http://www.debian.org/News/2012/20120311.nb.html&quot;&gt;Debian Edu
9941 based on Squeeze&lt;/a&gt;, I came across some issues that should be
9942 addressed in the Wheezy release. I finally found time to wrap up my
9943 notes and provide quick summary of what I found, with a bit
9944 explanation.&lt;/p&gt;
9945
9946 &lt;p&gt;&lt;ul&gt;
9947
9948 &lt;li&gt;We need to rewrite our package installation framework, as tasksel
9949 changed from using tasksel tasks to using meta packages (aka packages
9950 with dependencies like our education-* packages), and our installation
9951 system depend on tasksel tasks in
9952 /usr/share/tasksel/debian-edu-tasks.desc for package
9953 installation.&lt;/li&gt;
9954
9955 &lt;li&gt;Enable Kerberos login for more services. Now with the Kerberos
9956 foundation in place, we should use it to get single sign on with more
9957 services, and avoiding unneeded password / login questions. We should
9958 at least try to enable it for these services:
9959 &lt;ul&gt;
9960
9961 &lt;li&gt;CUPS for admins to add/configure printers and users when using
9962 quotas.&lt;/li&gt;
9963 &lt;li&gt;Nagios for admins checking the system status.&lt;/li&gt;
9964 &lt;li&gt;GOsa for admins updating LDAP and users changing their passwords.&lt;/li&gt;
9965 &lt;li&gt;LDAP for admins updating LDAP.&lt;/li&gt;
9966 &lt;li&gt;Squid for users when exam mode / filtering is active.&lt;/li&gt;
9967 &lt;li&gt;ssh for admins and users to save a password prompt.&lt;/li&gt;
9968
9969 &lt;/ul&gt;&lt;/li&gt;
9970
9971 &lt;li&gt;When we move GOsa to use Kerberos instead of LDAP bind to
9972 authenticate users, we should try to block or at least limit access to
9973 use LDAP bind for authentication, to ensure Kerberos is used when it
9974 is intended, and nothing fall back to using the less safe LDAP bind&lt;/li&gt;
9975
9976 &lt;li&gt;Merge debian-edu-config and debian-edu-install. The split made
9977 sense when d-e-install did a lot more, but these days it is just an
9978 inconvenience when we update the debconf preseeding values.&lt;/li&gt;
9979
9980 &lt;li&gt;Fix partman-auto to allow us to abort the installation before
9981 touching the disk if the disk is too small. This is
9982 &lt;a href=&quot;http://bugs.debian.org/653305&quot;&gt;BTS report #653305&lt;/a&gt; and the
9983 d-i developers are fine with the patch and someone just need to apply
9984 it and upload. After this is done we need to adjust
9985 debian-edu-install to use this new hook.&lt;/li&gt;
9986
9987 &lt;li&gt;Adjust to new LTSP framework (boot time config instead of install
9988 time config). LTSP changed its design, and our hooks to install
9989 packages and update the configuration is most likely not going to work
9990 in Wheezy.
9991
9992 &lt;li&gt;Consider switching to NBD instead of NFS for LTSP root, to allow
9993 the Kernel to cache files in its normal file cache, possibly speeding
9994 up KDE login on slow networks.&lt;/li&gt;
9995
9996 &lt;li&gt;Make it possible to create expired user passwords that need to
9997 change on first login. This is useful when handing out password on
9998 paper, to make sure only the user know the password. This require
9999 fixes to the PAM handling of kdm and gdm.&lt;/li&gt;
10000
10001 &lt;li&gt;Make GUI for adding new machines automatically from sitesummary.
10002 The current command line script is not very friendly to people most
10003 familiar with GUIs. This should probably be integrated into GOsa to
10004 have it available where the admin will be looking for it..&lt;/li&gt;
10005
10006 &lt;li&gt;We should find way for Nagios to check that the DHCP service
10007 actually is working (as in handling out IP addresses). None of the
10008 Nagios checks I have found so far have been working for me.&lt;/li&gt;
10009
10010 &lt;li&gt;We should switch from libpam-nss-ldapd to sssd for all profiles
10011 using LDAP, and not only on for roaming workstations, to have less
10012 packages to configure and consistent setup across all profiles.&lt;/li&gt;
10013
10014 &lt;li&gt;We should configure Kerberos to update LDAP and Samba password
10015 when changing password using the Kerberos protocol. The hook was
10016 requested in &lt;a href=&quot;http://bugs.debian.org/588968&quot;&gt;BTS report
10017 #588968&lt;/a&gt; and is now available in Wheezy. We might need to write a
10018 MIT Kerberos plugin in C to get this.&lt;/li&gt;
10019
10020 &lt;li&gt;We should clean up the set of applications installed by default.
10021 &lt;ul&gt;
10022
10023 &lt;li&gt;reduce the number of chemistry visualisers&lt;/li&gt;
10024 &lt;li&gt;consider dropping xpaint&lt;/li&gt;
10025 &lt;li&gt;and probably more?&lt;/li&gt;
10026 &lt;/ul&gt;&lt;/li&gt;
10027
10028 &lt;li&gt;Some hardware need external firmware to work properly. This is
10029 mostly the case for WiFi network cards, but there are some other
10030 examples too. For popular laptops to work out of the box, such
10031 firmware need to be installed from non-free, and we should provide
10032 some GUI to do this. Ubuntu already have this implemented, and we
10033 could consider using their packages. At the moment we have some
10034 command line script to do this (one for the running system, another
10035 for the LTSP chroot).&lt;/li&gt;
10036
10037
10038 &lt;li&gt;In Squeeze, we provide KDE, Gnome and LXDE as desktop options. We
10039 should extend the list to Xfce and Sugar, and preferably find a way to
10040 install several and allow the admin or the user to select which one to
10041 use.&lt;/li&gt;
10042
10043 &lt;li&gt;The golearn tool from the goplay package make it easy to check out
10044 interesting educational packages. We should work on the package
10045 tagging in Debian to ensure it represent all the useful educational
10046 packages, and extend the tool to allow it to use packagekit to install
10047 new applications with a simple mouse click.&lt;/li&gt;
10048
10049 &lt;li&gt;The Squeeze version got half a exam solution already in place,
10050 with the introduction of iptable based network blocking, but for it to
10051 be a complete exam solution the Squid proxy need to enable
10052 filtering/blocking as well when the exam mode is enabled. We should
10053 implement a way to easily enable this for the schools that want it,
10054 instead of the &quot;it is documented&quot; method of today.&lt;/li&gt;
10055
10056 &lt;li&gt;A feature used in several schools is the ability for a teacher to
10057 &quot;take over&quot; the desktop of individual or all computers in the room.
10058 There are at least three implementations,
10059 &lt;a href=&quot;italc.sourceforge.net/&quot;&gt;italc&lt;/a&gt;,
10060 &lt;a href=&quot;http://www.itais.net/help/en/&quot;&gt;controlaula&lt;/a&gt; og
10061 &lt;a href=&quot;http://www.epoptes.org/&quot;&gt;epoptes&lt;/a&gt; and we should pick one of
10062 them and make it trivial to set it up in a school. The challenges is
10063 how to distribute crypto keys and how to group computers in one room
10064 and how to set up which machine/user can control the machines in a
10065 given room.&lt;/li&gt;
10066
10067 &lt;li&gt;Tablets and surf boards are getting more and more popular, and we
10068 should look into providing a good solution for integrating these into
10069 the Debian Edu network. Not quite sure how. Perhaps we should
10070 provide a installation profile with better touch screen support for
10071 them, or add some sync services to allow them to exchange
10072 configuration and data with the central server. This should be
10073 investigated.&lt;/li&gt;
10074
10075 &lt;/ul&gt;&lt;/p&gt;
10076
10077 &lt;p&gt;I guess we will discover more as we continue to work on the Wheezy
10078 version.&lt;/p&gt;
10079 </description>
10080 </item>
10081
10082 <item>
10083 <title>TV with face recognition, for improved viewer experience</title>
10084 <link>http://people.skolelinux.org/pere/blog/TV_with_face_recognition__for_improved_viewer_experience.html</link>
10085 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/TV_with_face_recognition__for_improved_viewer_experience.html</guid>
10086 <pubDate>Sat, 9 Jun 2012 22:00:00 +0200</pubDate>
10087 <description>&lt;p&gt;Slashdot got a story about Intel planning a
10088 &lt;a href=&quot;http://entertainment.slashdot.org/story/12/06/09/0012247/intel-to-launch-tv-service-with-facial-recognition-by-end-of-the-year&quot;&gt;TV
10089 with face recognition&lt;/a&gt; to recognise the viewer, and it occurred to
10090 me that it would be more interesting to turn it around, and do face
10091 recognition on the TV image itself. It could let the viewer know who
10092 is present on the screen, and perhaps look up their credibility,
10093 company affiliation, previous appearances etc for the viewer to better
10094 evaluate what is being said and done. That would be a feature I would
10095 be willing to pay for.&lt;/p&gt;
10096
10097 &lt;p&gt;I would not be willing to pay for a TV that point a camera on my
10098 household, like the big brother feature apparently proposed by Intel.
10099 It is the telescreen idea fetched straight out of the book
10100 &lt;a href=&quot;http://gutenberg.net.au/ebooks01/0100021.txt&quot;&gt;1984 by George
10101 Orwell&lt;/a&gt;.&lt;/p&gt;
10102 </description>
10103 </item>
10104
10105 <item>
10106 <title>Web service to look up HP and Dell computer hardware support status</title>
10107 <link>http://people.skolelinux.org/pere/blog/Web_service_to_look_up_HP_and_Dell_computer_hardware_support_status.html</link>
10108 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Web_service_to_look_up_HP_and_Dell_computer_hardware_support_status.html</guid>
10109 <pubDate>Wed, 6 Jun 2012 23:15:00 +0200</pubDate>
10110 <description>&lt;p&gt;A few days ago
10111 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/SOAP_based_webservice_from_Dell_to_check_server_support_status.html&quot;&gt;I
10112 reported how to get&lt;/a&gt; the support status out of Dell using an
10113 unofficial and undocumented SOAP API, which I since have found out was
10114 &lt;a href=&quot;http://lists.us.dell.com/pipermail/linux-poweredge/2012-February/045959.html&quot;&gt;discovered
10115 by Daniel De Marco in february&lt;/a&gt;. Combined with my web scraping
10116 code for HP, Dell and IBM
10117 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Checking_server_hardware_support_status_for_Dell__HP_and_IBM_servers.html&quot;&gt;from
10118 2009&lt;/a&gt;, I got inspired and wrote
10119 &lt;a href=&quot;https://views.scraperwiki.com/run/computer-hardware-support-status/&quot;&gt;a
10120 web service&lt;/a&gt; based on Scraperwiki to make it easy to look up the
10121 support status and get a machine readable result back.&lt;/p&gt;
10122
10123 &lt;p&gt;This is what it look like at the moment when asking for the JSON
10124 output:
10125
10126 &lt;blockquote&gt;&lt;pre&gt;
10127 % GET &lt;a href=&quot;https://views.scraperwiki.com/run/computer-hardware-support-status/?format=json&amp;vendor=Dell&amp;servicetag=2v1xwn1&quot;&gt;https://views.scraperwiki.com/run/computer-hardware-support-status/?format=json&amp;vendor=Dell&amp;servicetag=2v1xwn1&lt;/a&gt;
10128 supportstatus({&quot;servicetag&quot;: &quot;2v1xwn1&quot;, &quot;warrantyend&quot;: &quot;2013-11-24&quot;, &quot;shipped&quot;: &quot;2010-11-24&quot;, &quot;scrapestamputc&quot;: &quot;2012-06-06T20:26:56.965847&quot;, &quot;scrapedurl&quot;: &quot;http://143.166.84.118/services/assetservice.asmx?WSDL&quot;, &quot;vendor&quot;: &quot;Dell&quot;, &quot;productid&quot;: &quot;&quot;})
10129 %
10130 &lt;/pre&gt;&lt;/blockquote&gt;
10131
10132 &lt;p&gt;It currently support Dell and HP, and I am hoping for help to add
10133 support for other vendors. The python source is available on
10134 Scraperwiki and I welcome help with adding more features.&lt;/p&gt;
10135 </description>
10136 </item>
10137
10138 <item>
10139 <title>Debian Edu interview: Mike Gabriel</title>
10140 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Mike_Gabriel.html</link>
10141 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Mike_Gabriel.html</guid>
10142 <pubDate>Sat, 2 Jun 2012 15:00:00 +0200</pubDate>
10143 <description>&lt;p&gt;Back in 2010, Mike Gabriel showed up on the
10144 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu and Skolelinux&lt;/a&gt;
10145 mailing list. He quickly proved to be a valuable developer, and
10146 thanks to his tireless effort we now have Kerberos integrated into the
10147 &lt;a href=&quot;http://www.debian.org/News/2012/20120311.html&quot;&gt;Debian Edu
10148 Squeeze&lt;/a&gt; version.&lt;/p&gt;
10149
10150 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
10151
10152 &lt;p&gt;My name is Mike Gabriel, I am 38 years old and live near Kiel,
10153 Schleswig-Holstein, Germany. I live together with a wonderful partner
10154 (Angela Fuß) and two own children and two bonus children (contributed
10155 by Angela).&lt;/p&gt;
10156
10157 &lt;p&gt;During the day I am part-time employed as a system administrator
10158 and part-time working as an IT consultant. The consultancy work
10159 touches free software topics wherever and whenever possible. During
10160 the nights I am a free software developer. In the gaps I also train in
10161 becoming an osteopath.&lt;/p&gt;
10162
10163 &lt;p&gt;Starting in 2010 we (Andreas Buchholz, Angela Fuß, Mike Gabriel)
10164 have set up a free software project in the area of Kiel that aims at
10165 introducing free software into schools. The project&#39;s name is
10166 &quot;IT-Zukunft Schule&quot; (IT future for schools). The project links IT
10167 skills with communication skills.&lt;/p&gt;
10168
10169 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux/Debian Edu
10170 project?&lt;/strong&gt;&lt;/p&gt;
10171
10172 &lt;p&gt;While preparing our own customised Linux distribution for
10173 &quot;IT-Zukunft Schule&quot; we were repeatedly asked if we really wanted to
10174 reinvent the wheel. What schools really need is already available,
10175 people said. From this impulse we started evaluating other Linux
10176 distributions that target being used for school networks.&lt;/p&gt;
10177
10178 &lt;p&gt;At the end we short-listed two approaches and compared them: a
10179 commercial Linux distribution developed by a company in Bremen,
10180 Germany, and Skolelinux / Debian Edu. Between 12/2010 and 03/2011 we
10181 went to several events and met people being responsible for marketing
10182 and development of either of the distributions. Skolelinux / Debian
10183 Edu was by far much more convincing compared to the other product that
10184 got short-listed beforehand--across the full spectrum. What was most
10185 attractive for me personally: the perspective of collaboration within
10186 the developmental branch of the Debian Edu project itself.&lt;/p&gt;
10187
10188 &lt;p&gt;In parallel with this, we talked to many local and not-so-local
10189 people. People teaching at schools, headmasters, politicians, data
10190 protection experts, other IT professionals.&lt;/p&gt;
10191
10192 &lt;p&gt;We came to two conclusions:&lt;/p&gt;
10193
10194 &lt;p&gt;First, a technical conclusion: What schools need is available in
10195 bits and pieces here and there, and none of the solutions really fit
10196 by 100%. Any school we have seen has a very individual IT setup
10197 whereas most of each school&#39;s requirements could mapped by a standard
10198 IT solution. The requirement to this IT solution is flexibility and
10199 customisability, so that individual adaptations here and there are
10200 possible. In terms of re-distributing and rolling out such a
10201 standardised IT system for schools (a system that is still to some
10202 degree customisable) there is still a lot of work to do here
10203 locally. Debian Edu / Skolelinux has been our choice as the starting
10204 point.&lt;/p&gt;
10205
10206 &lt;p&gt;Second, a holistic conclusion: What schools need does not exist at
10207 all (or we missed it so far). There are several technical solutions
10208 for handling IT at schools that tend to make a good impression. What
10209 has been missing completely here in Germany, though, is the enrolment
10210 of people into using IT and teaching with IT. &quot;IT-Zukunft Schule&quot;
10211 tries to provide an approach for this.&lt;/p&gt;
10212
10213 &lt;p&gt;Only some schools have some sort of a media concept which explains,
10214 defines and gives guidance on how to use IT in class. Most schools in
10215 Northern Germany do not have an IT service provider, the school&#39;s IT
10216 equipment is managed by one or (if the school is lucky) two (admin)
10217 teachers, most of the workload these admin teachers get done in there
10218 spare time.&lt;/p&gt;
10219
10220 &lt;p&gt;We were surprised that only a very few admin teachers were
10221 networked with colleagues from other schools. Basically, every school
10222 here around has its individual approach of providing IT equipment to
10223 teachers and students and the exchange of ideas has been quasi
10224 non-existent until 2010/2011.&lt;/p&gt;
10225
10226 &lt;p&gt;Quite some (non-admin) teachers try to avoid using IT technology in
10227 class as a learning medium completely. Several reasons for this
10228 avoidance do exist.&lt;/p&gt;
10229
10230 &lt;p&gt;We discovered that no-one has ever taken a closer look at this
10231 social part of IT management in schools, so far. On our quest journey
10232 for a technical IT solution for schools, we discussed this issue with
10233 several teachers, headmasters, politicians, other IT professionals and
10234 they all confirmed: a holistic approach of considering IT management
10235 at schools, an approach that includes the people in place, will be new
10236 and probably a gain for all.&lt;/p&gt;
10237
10238 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux/Debian
10239 Edu?&lt;/strong&gt;&lt;/p&gt;
10240
10241 &lt;p&gt;There is a list of advantages: international context, openness to
10242 any kind of contributions, do-ocracy policy, the closeness to Debian,
10243 the different installation scenarios possible (from stand-alone
10244 workstation to complex multi-server sites), the transparency within
10245 project communication, honest communication within the group of
10246 developers, etc.&lt;/p&gt;
10247
10248 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux/Debian
10249 Edu?&lt;/strong&gt;&lt;/p&gt;
10250
10251 &lt;p&gt;Every coin has two sides:&lt;/p&gt;
10252
10253 &lt;p&gt;Technically: &lt;a href=&quot;http://bugs.debian.org/311188&quot;&gt;BTS issue
10254 #311188&lt;/a&gt;, tricky upgradability of a Debian Edu main server, network
10255 client installations on top of a plain vanilla Debian installation
10256 should become possible sometime in the near future, one could think
10257 about splitting the very complex package debian-edu-config into
10258 several portions (to make it easier for new developers to
10259 contribute).&lt;/p&gt;
10260
10261 &lt;p&gt;Another issue I see is that we (as Debian Edu developers) should
10262 find out more about the network of people who do the marketing for
10263 Debian Edu / Skolelinux. There is a very active group in Germany
10264 promoting Skolelinux on the bigger Linux Days within Germany. Are
10265 there other groups like that in other countries? How can we bring
10266 these marketing people together (marketing group A with group B and
10267 all of them with the group of Debian Edu developers)? During the last
10268 meeting of the German Skolelinux group, I got the impression of people
10269 there being rather disconnected from the development department of
10270 Debian Edu / Skolelinux.&lt;/p&gt;
10271
10272 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
10273
10274 &lt;p&gt;For my daily business, I do not use commercial software at all.&lt;/p&gt;
10275
10276 &lt;p&gt;For normal stuff I use Iceweasel/Firefox, Libreoffice.org. For
10277 serious text writing I prefer LaTeX. I use gimp, inkscape, scribus for
10278 more artistic tasks. I run virtual machines in KVM and Virtualbox.&lt;/p&gt;
10279
10280 &lt;p&gt;I am one of the upstream developers of X2Go. In 2010 I started the
10281 development of a Python based X2Go Client, called PyHoca-GUI.
10282 PyHoca-GUI has brought forth a Python X2Go Client API that currently
10283 is being integrated in Ubuntu&#39;s software center.&lt;/p&gt;
10284
10285 &lt;p&gt;For communications I have my own Kolab server running using Horde
10286 as web-based groupware client. For IRC I love to use irssi, for Jabber
10287 I have several clients that I use, mostly pidgin, though. I am also
10288 the Debian maintainer of Coccinella, a Jabber-based interactive
10289 whiteboard.&lt;/p&gt;
10290
10291 &lt;p&gt;My favourite terminal emulator is KDE&#39;s Yakuake.&lt;/p&gt;
10292
10293 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
10294 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
10295
10296 &lt;p&gt;Communicate, communicate, communicate. Enrol people, enrol people,
10297 enrol people.&lt;/p&gt;
10298 </description>
10299 </item>
10300
10301 <item>
10302 <title>SOAP based webservice from Dell to check server support status</title>
10303 <link>http://people.skolelinux.org/pere/blog/SOAP_based_webservice_from_Dell_to_check_server_support_status.html</link>
10304 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/SOAP_based_webservice_from_Dell_to_check_server_support_status.html</guid>
10305 <pubDate>Fri, 1 Jun 2012 15:20:00 +0200</pubDate>
10306 <description>&lt;p&gt;A few years ago I wrote
10307 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Checking_server_hardware_support_status_for_Dell__HP_and_IBM_servers.html&quot;&gt;how
10308 to extract support status&lt;/a&gt; for your Dell and HP servers. Recently
10309 I have learned from colleges here at the
10310 &lt;a href=&quot;http://www.uio.no/&quot;&gt;University of Oslo&lt;/a&gt; that Dell have
10311 made this even easier, by providing a SOAP based web service. Given
10312 the service tag, one can now query the Dell servers and get machine
10313 readable information about the support status. This perl code
10314 demonstrate how to do it:&lt;/p&gt;
10315
10316 &lt;p&gt;&lt;pre&gt;
10317 use strict;
10318 use warnings;
10319 use SOAP::Lite;
10320 use Data::Dumper;
10321 my $GUID = &#39;11111111-1111-1111-1111-111111111111&#39;;
10322 my $App = &#39;test&#39;;
10323 my $servicetag = $ARGV[0] or die &quot;Please supply a servicetag. $!\n&quot;;
10324 my ($deal, $latest, @dates);
10325 my $s = SOAP::Lite
10326 -&gt; uri(&#39;http://support.dell.com/WebServices/&#39;)
10327 -&gt; on_action( sub { join &#39;&#39;, @_ } )
10328 -&gt; proxy(&#39;http://xserv.dell.com/services/assetservice.asmx&#39;)
10329 ;
10330 my $a = $s-&gt;GetAssetInformation(
10331 SOAP::Data-&gt;name(&#39;guid&#39;)-&gt;value($GUID)-&gt;type(&#39;&#39;),
10332 SOAP::Data-&gt;name(&#39;applicationName&#39;)-&gt;value($App)-&gt;type(&#39;&#39;),
10333 SOAP::Data-&gt;name(&#39;serviceTags&#39;)-&gt;value($servicetag)-&gt;type(&#39;&#39;),
10334 );
10335 print Dumper($a -&gt; result) ;
10336 &lt;/pre&gt;&lt;/p&gt;
10337
10338 &lt;p&gt;The output can look like this:&lt;/p&gt;
10339
10340 &lt;p&gt;&lt;pre&gt;
10341 $VAR1 = {
10342 &#39;Asset&#39; =&gt; {
10343 &#39;Entitlements&#39; =&gt; {
10344 &#39;EntitlementData&#39; =&gt; [
10345 {
10346 &#39;EntitlementType&#39; =&gt; &#39;Expired&#39;,
10347 &#39;EndDate&#39; =&gt; &#39;2009-07-29T00:00:00&#39;,
10348 &#39;Provider&#39; =&gt; &#39;&#39;,
10349 &#39;StartDate&#39; =&gt; &#39;2006-07-29T00:00:00&#39;,
10350 &#39;DaysLeft&#39; =&gt; &#39;0&#39;
10351 },
10352 {
10353 &#39;EntitlementType&#39; =&gt; &#39;Expired&#39;,
10354 &#39;EndDate&#39; =&gt; &#39;2009-07-29T00:00:00&#39;,
10355 &#39;Provider&#39; =&gt; &#39;&#39;,
10356 &#39;StartDate&#39; =&gt; &#39;2006-07-29T00:00:00&#39;,
10357 &#39;DaysLeft&#39; =&gt; &#39;0&#39;
10358 },
10359 {
10360 &#39;EntitlementType&#39; =&gt; &#39;Expired&#39;,
10361 &#39;EndDate&#39; =&gt; &#39;2007-07-29T00:00:00&#39;,
10362 &#39;Provider&#39; =&gt; &#39;&#39;,
10363 &#39;StartDate&#39; =&gt; &#39;2006-07-29T00:00:00&#39;,
10364 &#39;DaysLeft&#39; =&gt; &#39;0&#39;
10365 }
10366 ]
10367 },
10368 &#39;AssetHeaderData&#39; =&gt; {
10369 &#39;SystemModel&#39; =&gt; &#39;GX620&#39;,
10370 &#39;ServiceTag&#39; =&gt; &#39;8DSGD2J&#39;,
10371 &#39;SystemShipDate&#39; =&gt; &#39;2006-07-29T19:00:00-05:00&#39;,
10372 &#39;Buid&#39; =&gt; &#39;2323&#39;,
10373 &#39;Region&#39; =&gt; &#39;Europe&#39;,
10374 &#39;SystemID&#39; =&gt; &#39;PLX_GX620&#39;,
10375 &#39;SystemType&#39; =&gt; &#39;OptiPlex&#39;
10376 }
10377 }
10378 };
10379 &lt;/pre&gt;&lt;/p&gt;
10380
10381 &lt;p&gt;I have not been able to find any documentation from Dell about this
10382 service outside the
10383 &lt;a href=&quot;http://xserv.dell.com/services/assetservice.asmx?op=GetAssetInformation&quot;&gt;inline
10384 documentation&lt;/a&gt;, and according to
10385 &lt;a href=&quot;http://iboyd.net/index.php/2012/02/14/updated-dell-warranty-information-script/&quot;&gt;one
10386 comment&lt;/a&gt; it can have stability issues, but it is a lot better than
10387 scraping HTML pages. :)&lt;/p&gt;
10388
10389 &lt;p&gt;Wonder if HP and other server vendors have a similar service. If
10390 you know of one, drop me an email. :)&lt;/p&gt;
10391 </description>
10392 </item>
10393
10394 <item>
10395 <title>First monitor calibration using ColorHug</title>
10396 <link>http://people.skolelinux.org/pere/blog/First_monitor_calibration_using_ColorHug.html</link>
10397 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/First_monitor_calibration_using_ColorHug.html</guid>
10398 <pubDate>Thu, 31 May 2012 22:10:00 +0200</pubDate>
10399 <description>&lt;p&gt;A few days ago my color calibration gadget
10400 &lt;a href=&quot;http://www.hughski.com/index.html&quot;&gt;ColorHug&lt;/a&gt; arrived in the
10401 mail, and I&#39;ve had a few days to test it. As all my machines are
10402 running Debian Squeeze, where
10403 &lt;a href=&quot;http://packages.qa.debian.org/c/colorhug-client.html&quot;&gt;the
10404 calibration software&lt;/a&gt; is missing (it is present in Wheezy and Sid),
10405 I ran the calibration using the Fedora based live CD. This worked
10406 just fine. So far I have only done the quick calibration. It was
10407 slow enough for me, so I will leave the more extensive calibration for
10408 another day.&lt;/p&gt;
10409
10410 &lt;p&gt;After calibration, I get a
10411 &lt;a href=&quot;http://en.wikipedia.org/wiki/ICC_profile&quot;&gt;ICC color
10412 profile&lt;/a&gt; file that can be passed to programs understanding such
10413 tools. KDE do not seem to understand it out of the box, so I searched
10414 for command line tools to use to load the color profile into X.
10415 xcalib was the first one I found, and it seem to work fine for single
10416 monitor setups. But for my video player, a laptop with a flat screen
10417 attached, it was unable to load the color profile for the correct
10418 monitor. After searching a bit, I
10419 &lt;a href=&quot;http://ubuntuforums.org/showthread.php?t=1347896&quot;&gt;discovered&lt;/a&gt;
10420 that the dispwin tool from the argyll package would do what I wanted,
10421 and a simple&lt;/p&gt;
10422
10423 &lt;p&gt;&lt;pre&gt;
10424 dispwin -d 1 profile.icc
10425 &lt;/pre&gt;&lt;/p&gt;
10426
10427 &lt;p&gt;later I had the color profile loaded for the correct monitor. The
10428 result was a bit more pink than I expected. I guess I picked the
10429 wrong monitor type for the &quot;led&quot; monitor I got, but the result is good
10430 enough for now.&lt;/p&gt;
10431 </description>
10432 </item>
10433
10434 <item>
10435 <title>Debian Edu interview: Ralf Gesellensetter</title>
10436 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Ralf_Gesellensetter.html</link>
10437 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Ralf_Gesellensetter.html</guid>
10438 <pubDate>Sun, 27 May 2012 17:15:00 +0200</pubDate>
10439 <description>&lt;p&gt;In 2003, a German teacher showed up on the
10440 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu and Skolelinux&lt;/a&gt;
10441 mailing list with interesting problems and reports proving he setting
10442 up Linux for a (for us at the time) lot of pupils. His name was Ralf
10443 Gesellensetter, and he has been an important tester and contributor
10444 since then, helping to make sure the
10445 &lt;a href=&quot;http://www.debian.org/News/2012/20120311.html&quot;&gt;Debian Edu
10446 Squeeze&lt;/a&gt; release became as good as it is..&lt;/p&gt;
10447
10448 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
10449
10450 &lt;p&gt;I am a teacher from Germany, and my subjects are Geography,
10451 Mathematics, and Computer Science (&quot;Informatik&quot;). During the past 12
10452 years (since 2000), I have been working for a comprehensive (and soon,
10453 also inclusive) school leading to all kind of general levels, such as
10454 O- or A-level (&quot;Abitur&quot;). For quite as long, I&#39;ve been taking care of
10455 our computer network.&lt;/p&gt;
10456
10457 &lt;p&gt;Now, in my early 40s, I enjoy the privilege of spending a lot of my
10458 spare time together with my wife, our son (3 years) and our daughter
10459 (4 months).&lt;/p&gt;
10460
10461 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux/Debian Edu
10462 project?&lt;/strong&gt;&lt;/p&gt;
10463
10464 &lt;p&gt;We had tried different Linux based school servers, when members of
10465 my local Linux User Group (LUG OWL) detected Skolelinux. I remember
10466 very well, being part of a party celebrating the Linux New Media Award
10467 (&quot;Best Newcomer Distribution&quot;, also nominated: Ubuntu) that was given
10468 to Skolelinux at Linux World Exposition in Frankfurt, 2005 (IIRC). Few
10469 months later, I had the chance to join a developer meeting in Ulsrud
10470 (Oslo) and to hand out the award to Knut Yrvin and others. For more
10471 than 7 years, Skolelinux is part of our schools infrastructure, namely
10472 our main server (tjener), one LTSP (today without thin clients), and
10473 approximately 50 work stations. Most of these have the option to boot a
10474 locally installed Skolelinux image. As a consequence, I joined quite
10475 a few events dealing with free software or Linux, and met many Debian
10476 (Edu) developers. All of them seemed quite nice and competent to me,
10477 one more reason to stick to Skolelinux.&lt;/p&gt;
10478
10479 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux/Debian
10480 Edu?&lt;/strong&gt;&lt;/p&gt;
10481
10482 &lt;p&gt;Debian driven, you are given all the advantages of a community
10483 project including well maintained updates. Once, you are familiar with
10484 the network layout, you can easily roll out an entire educational
10485 computer infrastructure, from just one installation media. As only
10486 free software (FOSS) is used, that supports even elderly hardware,
10487 up-sizing your IT equipment is only limited by space (i.e. available
10488 labs). Especially if you run a LTSP thin client server, your
10489 administration costs tend towards zero.&lt;/p&gt;
10490
10491 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux/Debian
10492 Edu?&lt;/strong&gt;&lt;/p&gt;
10493
10494 &lt;p&gt;While Debian&#39;s stability has loads of advantages for servers, this
10495 might be different in some cases for clients: Schools with unlimited
10496 budget might buy new hardware with components that are not yet
10497 supported by Debian stable, or wish to use more recent versions of
10498 office packages or desktop environments. These schools have the
10499 option to run Debian testing or other distributions - if they have the
10500 capacity to do so. Another issue is that Debian release cycles
10501 include a wide range of changes; therefor a high percentage of human
10502 power seems to be absorbed by just keeping the features of Skolelinux
10503 within the new setting of the version to come. During this process,
10504 the cogs of Debian Edu are getting more and more professional,
10505 i.e. harder to understand for novices.&lt;/p&gt;
10506
10507 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
10508
10509 &lt;p&gt;LibreOffice, Wikipedia, Openstreetmap, Iceweasel (Mozilla Firefox),
10510 KMail, Gimp, Inkscape - and of course the Linux Kernel (not only on
10511 PC, Laptop, Mobile, but also our SAT receiver)&lt;/p&gt;
10512
10513 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
10514 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
10515
10516 &lt;p&gt;&lt;ol&gt;
10517
10518 &lt;li&gt;Support computer science as regular subject in schools to make
10519 people really &quot;own&quot; their hardware, to make them understand the
10520 difference between proprietary software products, and free software
10521 developing.&lt;/li&gt;
10522
10523 &lt;li&gt;Make budget baskets corresponding: In Germany&#39;s public schools
10524 there are more or less fixed budgets for IT equipment (including
10525 licenses), so schools won&#39;t benefit from any savings here. This
10526 privilege is left to private schools which have consequently a large
10527 share among German Skolelinux schools.&lt;/li&gt;
10528
10529 &lt;li&gt;Get free software in the seminars where would-be teachers are
10530 trained. In many cases, teachers&#39; software customs are respected by
10531 decision makers rather than the expertise of any IT experts.&lt;/li&gt;
10532
10533 &lt;li&gt;Don&#39;t limit ourself to free software run natively. Everybody uses
10534 free software or free licenses (for instance Wikipedia), and this
10535 general concept should get expanded to free educational content to be
10536 shared world wide (school books e.g.).&lt;/li&gt;
10537
10538 &lt;li&gt;Make clear where ever you can that the market share of free (libre)
10539 office suites is much above 20 p.c. today, and that you pupils don&#39;t
10540 need to know the &quot;ribbon menu&quot; in order to get employed.&lt;/li&gt;
10541
10542 &lt;li&gt;Talk about the difference between freeware and free software.&lt;/li&gt;
10543
10544 &lt;li&gt;Spread free software, or even collections of portable free apps
10545 for USB pen drives. Endorse students to get a legal copy of
10546 Libreoffice rather than accepting them to use illegal serials. And
10547 keep sending documents in ODF formats.&lt;/li&gt;
10548
10549 &lt;/ol&gt;&lt;/p&gt;
10550 </description>
10551 </item>
10552
10553 <item>
10554 <title>The cost of ODF and OOXML</title>
10555 <link>http://people.skolelinux.org/pere/blog/The_cost_of_ODF_and_OOXML.html</link>
10556 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/The_cost_of_ODF_and_OOXML.html</guid>
10557 <pubDate>Sat, 26 May 2012 18:00:00 +0200</pubDate>
10558 <description>&lt;p&gt;I just come across a blog post from Glyn Moody reporting the
10559 claimed cost from Microsoft on requiring ODF to be used by the UK
10560 government. I just sent him an email to let him know that his
10561 assumption are most likely wrong. Sharing it here in case some of my
10562 blog readers have seem the same numbers float around in the UK.&lt;/p&gt;
10563
10564 &lt;p&gt;&lt;blockquote&gt; &lt;p&gt;Hi. I just noted your
10565 &lt;a href=&quot;http://blogs.computerworlduk.com/open-enterprise/2012/04/does-microsoft-office-lock-in-cost-the-uk-government-500-million/index.htm&quot;&gt;http://blogs.computerworlduk.com/open-enterprise/2012/04/does-microsoft-office-lock-in-cost-the-uk-government-500-million/index.htm&lt;/a&gt;
10566 comment:&lt;/p&gt;
10567
10568 &lt;p&gt;&lt;blockquote&gt;&quot;They&#39;re all in Danish, not unreasonably, but even
10569 with the help of Google Translate I can&#39;t find any figures about the
10570 savings of &quot;moving to a flexible two standard&quot; as claimed by the
10571 Microsoft email. But I assume it is backed up somewhere, so let&#39;s take
10572 it, and the £500 million figure for the UK, on trust.&quot;
10573 &lt;/blockquote&gt;&lt;/p&gt;
10574
10575 &lt;p&gt;I can tell you that the Danish reports are inflated. I believe it is
10576 the same reports that were used in the Norwegian debate around 2007,
10577 and Gisle Hannemyr (a well known IT commentator in Norway) had a look
10578 at the content. In short, the reason it is claimed that using ODF
10579 will be so costly, is based on the assumption that this mean every
10580 existing document need to be converted from one of the MS Office
10581 formats to ODF, transferred to the receiver, and converted back from
10582 ODF to one of the MS Office formats, and that the conversion will cost
10583 10 minutes of work time for both the sender and the receiver. In
10584 reality the sender would have a tool capable of saving to ODF, and the
10585 receiver would have a tool capable of reading it, and the time spent
10586 would at most be a few seconds for saving and loading, not 20 minutes
10587 of wasted effort.&lt;/p&gt;
10588
10589 &lt;p&gt;Microsoft claimed all these costs were saved by allowing people to
10590 transfer the original files from MS Office instead of spending 10
10591 minutes converting to ODF. :)&lt;/p&gt;
10592
10593 &lt;p&gt;See
10594 &lt;a href=&quot;http://hannemyr.com/no/ms12_vl02.php&quot;&gt;http://hannemyr.com/no/ms12_vl02.php&lt;/a&gt;
10595 and
10596 &lt;a href=&quot;http://hannemyr.com/no/ms12.php&quot;&gt;http://hannemyr.com/no/ms12.php&lt;/a&gt;
10597 for background information. Norwegian only, sorry. :)&lt;/p&gt;
10598 &lt;/blockquote&gt;&lt;/p&gt;
10599 </description>
10600 </item>
10601
10602 <item>
10603 <title>ColorHug - USB and free software based screen color calibration</title>
10604 <link>http://people.skolelinux.org/pere/blog/ColorHug___USB_and_free_software_based_screen_color_calibration.html</link>
10605 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/ColorHug___USB_and_free_software_based_screen_color_calibration.html</guid>
10606 <pubDate>Fri, 18 May 2012 10:00:00 +0200</pubDate>
10607 <description>&lt;p&gt;In january, I
10608 &lt;a href=&quot;http://blog.cihar.com/archives/2012/01/17/colorhug-has-arrived/&quot;&gt;discovered
10609 the ColorHug&lt;/a&gt;, a USB dongle from
10610 &lt;a href=&quot;http://www.hughski.com/index.html&quot;&gt;Hughski&lt;/a&gt; to calibrate
10611 the color on a computer screen. The software required is
10612 &lt;a href=&quot;http://packages.qa.debian.org/c/colorhug-client.html&quot;&gt;included
10613 in Debian&lt;/a&gt;, and I decided back then to preorder from the next
10614 batch. Yesterday I finally heard back from them, and got the
10615 opportunity to order. Today I ordered mine, and eagerly await the
10616 delivery. I hope it arrive next week, as I got a confirmation that it
10617 should go in the mail on monday. :)&lt;/p&gt;
10618
10619 &lt;p&gt;If you want to ensure the colors on the screen match the intended
10620 colors, I suggest you check out this cheap tool with free software
10621 drivers. :)&lt;/p&gt;
10622 </description>
10623 </item>
10624
10625 <item>
10626 <title>Debian Edu interview: Jürgen Leibner</title>
10627 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__J_rgen_Leibner.html</link>
10628 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__J_rgen_Leibner.html</guid>
10629 <pubDate>Sun, 13 May 2012 20:30:00 +0200</pubDate>
10630 <description>&lt;p&gt;It has been a few busy weeks for me, but I am finally back to
10631 publish another interview with the people behind
10632 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu and Skolelinux&lt;/a&gt;.
10633 This time it is one of our German developers, who have helped out over the
10634 years to make sure both a lot of major but also a lot of the minor
10635 details get right before release.
10636
10637 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
10638
10639 &lt;p&gt;My name is Jürgen Leibner, I&#39;m 49 years old and living in
10640 Bielefeld, a town in northern Germany. I worked nearly 20 years as
10641 certified engineer in the department for plant design and layout of an
10642 international company for machinery and equipment. Since 2011 I&#39;m a
10643 certified technical writer (tekom e.V.) and doing technical
10644 documentations for a steam turbine manufacturer. From April this year
10645 I will manage the department of technical documentation at a
10646 manufacturer of automation and assembly line engineering.&lt;/p&gt;
10647
10648 &lt;p&gt;My first contact with linux was around 1993. Since that time I used
10649 it at work and at home repeatedly but not exclusively as I do now at
10650 home since 2006.&lt;/p&gt;
10651
10652 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux/Debian Edu
10653 project?&lt;/strong&gt;&lt;/p&gt;
10654
10655 &lt;p&gt;Once a day in the early year of 2001 when I wanted to fetch my
10656 daughter from primary school, there was a teacher sitting in the
10657 middle of 20 old computers trying to boot them and he failed. I helped
10658 him to get them booting. That was seen by the school director and she
10659 asked me if I would like to manage that the school gets all that old
10660 computers in use. I answered: &quot;Yes&quot;.&lt;/p&gt;
10661
10662 &lt;p&gt;Some weeks later every of the 10 classrooms had one computer
10663 running Windows98. I began to collect old computers and equipment as
10664 gifts and installed the first computer room with a peer-to-peer
10665 network. I did my work at school without being payed in my spare time
10666 and with a lot of fun. About one year later the school was connected
10667 to Internet and a local area network was installed in the school
10668 building. That was the time to have a server and I knew it must be a
10669 Linux server to be able to fulfil all the wishes of the teachers and
10670 being able to do this in a transparent and economic way, without extra
10671 costs for things like licence and software. So I searched for a
10672 school server system running under Linux and I found a couple of
10673 people nearby who founded &#39;skolelinux.de&#39;. It was the Skolelinux
10674 prerelease 32 I first tried out for being used at the school. I
10675 managed the IT of that school until the municipal authority took over
10676 the IT management and centralised the services for all schools in
10677 Bielefeld in December of 2006.&lt;/p&gt;
10678
10679 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux/Debian
10680 Edu?&lt;/strong&gt;&lt;/p&gt;
10681
10682 &lt;p&gt;When I&#39;m looking back to the beginning, there were other advantages
10683 for me as today.&lt;/p&gt;
10684
10685 &lt;p&gt;In the past there were advantages like:&lt;/p&gt;
10686
10687 &lt;p&gt;&lt;ul&gt;
10688
10689 &lt;li&gt;I don&#39;t need to buy it so it generates no costs to the school as
10690 they had little money to spent for computers and software.&lt;/li&gt;
10691
10692 &lt;li&gt;It has a licence which grands all rights to use it without
10693 cost.&lt;/li&gt;
10694
10695 &lt;li&gt;It was more able to fit all requirements of a server system for
10696 schools than a Microsoft server system, even if there are only Windows
10697 clients because of it&#39;s preconfigured overall concept of being a
10698 infrastructure solution and community for schools, not only a
10699 server&lt;/li&gt;
10700
10701 &lt;li&gt;I was able to configure the server to the needs of the
10702 school.&lt;/li&gt;
10703
10704 &lt;/ul&gt;&lt;/p&gt;
10705
10706 &lt;p&gt;Today some of the advantages has been lost, changed or new ones
10707 came up in this way:&lt;/p&gt;
10708
10709 &lt;p&gt;&lt;ul&gt;
10710
10711 &lt;li&gt;Most schools here do have money to buy hardware and software
10712 now.&lt;/li&gt;
10713
10714 &lt;li&gt;They are today mostly managed from central IT departments which
10715 have own concepts which often do not fit to Debian Edu concepts
10716 because they are to close to Microsoft ideology.&lt;/li&gt;
10717
10718 &lt;li&gt;With the Squeeze version of Debian Edu which now uses GOsa² for
10719 management I feel more able to manage the daily tasks than with the
10720 interfaces used in the past.&lt;/li&gt;
10721
10722 &lt;li&gt;It is more modular than in the past and fits even better to the
10723 different needs.&lt;/li&gt;
10724
10725 &lt;li&gt;The documentation is usable and gets better every day.&lt;/li&gt;
10726
10727 &lt;li&gt;More people than ever before are using Debian Edu all over the
10728 world and so the community, which is an very important part I think,
10729 is sharing knowledge and minds.&lt;/li&gt;
10730
10731 &lt;li&gt;Most, maybe all, of the technical requirements for schools are
10732 solved today by Debian Edu. &lt;/li&gt;
10733
10734 &lt;/ul&gt;&lt;/p&gt;
10735
10736 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux/Debian
10737 Edu?&lt;/strong&gt;&lt;/p&gt;
10738
10739 &lt;p&gt;&lt;ul&gt;
10740
10741 &lt;li&gt;There are too few IT companies able to integrate Debian Edu into
10742 their product portfolio for serving schools with concepts or even
10743 whole municipality areas.&lt;/li&gt;
10744
10745 &lt;li&gt;Debian Edu has beside other free and open software projects not
10746 enough lobbyists which promote free and open software to
10747 politicians.&lt;/li&gt;
10748
10749 &lt;li&gt;Technically there are no disadvantages I&#39;m aware of.&lt;/li&gt;
10750
10751 &lt;/ul&gt;&lt;/p&gt;
10752
10753 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
10754
10755 &lt;p&gt;I use Debian stable on my home server and on my little desktop
10756 computer. On my laptop I use Debian testing/sid. The applications I
10757 use on my laptop and my desktop are Open/Libre-office, Iceweasel,
10758 KMail, DigiKam, Amarok, Dolphin, okular and all the other programs I
10759 need from the KDE environment. On console I use newsbeuter, mutt,
10760 screen, irssi and all the other famous and useful tools.&lt;/p&gt;
10761
10762 &lt;p&gt;My home server provides mail services with exim, dovecot, roundcube
10763 and mutt over ssh on the console, file services with samba, NFS,
10764 rsync, web services with apache, moinmoin-wiki, multimedia services
10765 with gallery2 and mediatomb and database services with MySQL for me
10766 and the whole family. I probably forgot something.&lt;/p&gt;
10767
10768 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
10769 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
10770
10771 &lt;p&gt;I believe, we should provide concepts for IT companies to integrate
10772 Debian Edu into their product portfolio with use cases for different
10773 countries and areas all over the world.&lt;/p&gt;
10774 </description>
10775 </item>
10776
10777 <item>
10778 <title>Cutting it short - and picking the right tool for the job</title>
10779 <link>http://people.skolelinux.org/pere/blog/Cutting_it_short___and_picking_the_right_tool_for_the_job.html</link>
10780 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Cutting_it_short___and_picking_the_right_tool_for_the_job.html</guid>
10781 <pubDate>Mon, 30 Apr 2012 23:30:00 +0200</pubDate>
10782 <description>&lt;p&gt;&lt;!-- IMG_5869.JPG --&gt;
10783 &lt;img src=&quot;http://people.skolelinux.org/pere/blog/images/panasonic-er-1611.jpeg&quot;&gt;&lt;/p&gt;
10784
10785 &lt;p&gt;I normally cut my hair short, and my tool of choice has been a
10786 common hair/beard cutter, bought in a electrical shop here in Norway.
10787 But the last ones have not really been up to the task. My last
10788 cutter, some model from Braun, could only cut a few of my hairs at the
10789 time, and cutting my head took forever. And the one before that did
10790 not work very well either. We have looked for something better for a
10791 while, but it was not until I ended up visiting a hairdresser that we
10792 discovered that there are indeed better tools available. But these
10793 are not marketed and sold to &quot;regular consumers&quot;. The hair saloons
10794 can get them through their suppliers, but their suppliers only sell
10795 companies. The models they sell, are very different from the ones
10796 available from Elkjøp and Lefdal. The main difference is their
10797 efficiency. It would cut my hair in 5 minutes, instead of the 30-40
10798 minutes required by my impotent Braun. The hairdresser I visited had
10799 a Panasonic ER160, which unfortunately is no longer available from the
10800 producer. But I found it had a successor, the Panasonic ER1611.&lt;/p&gt;
10801
10802 &lt;p&gt;The next step was to find somewhere to buy it. This was not
10803 straight forward. The list of suppliers I got from the hairdresser
10804 did not want to sell anything to me. But searching for the model on
10805 the web we found a supplier in Norway willing to sell it to us for
10806 around NOK 4000,-. This was a bit much. We kept searching and
10807 finally found a Danish supplier
10808 &lt;a href=&quot;http://nicehair.dk/panasonic-er-1611-professionel-hartrimmer.html&quot;&gt;selling
10809 it for around NOK 1800,-&lt;/a&gt;. We ordered one, and it arrived a few
10810 days ago.&lt;/p&gt;
10811
10812 &lt;p&gt;The instructions said it had to charge for 8 hours when we started
10813 to use it, so we left it charging over night. Normally it will only
10814 need one hour to charge. The following evening we successfully tested
10815 it, and I can warmly recommend it to anyone looking for a real hair
10816 cutter. The ones we have used until now have been hair cutter
10817 toys.&lt;/p&gt;
10818 </description>
10819 </item>
10820
10821 <item>
10822 <title>HTC One X - Your video? What do you mean?</title>
10823 <link>http://people.skolelinux.org/pere/blog/HTC_One_X___Your_video___What_do_you_mean_.html</link>
10824 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/HTC_One_X___Your_video___What_do_you_mean_.html</guid>
10825 <pubDate>Thu, 26 Apr 2012 13:20:00 +0200</pubDate>
10826 <description>&lt;p&gt;In &lt;a href=&quot;http://www.idg.no/computerworld/article243690.ece&quot;&gt;an
10827 article today&lt;/a&gt; published by Computerworld Norway, the photographer
10828 &lt;a href=&quot;http://www.urke.com/eirik/&quot;&gt;Eirik Helland Urke&lt;/a&gt; reports
10829 that the video editor application included with
10830 &lt;a href=&quot;http://www.htc.com/www/smartphones/htc-one-x/#specs&quot;&gt;HTC One
10831 X&lt;/a&gt; have some quite surprising terms of use. The article is mostly
10832 based on the twitter message from mister Urke, stating:
10833
10834 &lt;p&gt;&lt;blockquote&gt;
10835 &quot;&lt;a href=&quot;http://twitter.com/urke/status/194062269724897280&quot;&gt;Drøy
10836 brukeravtale: HTC kan bruke MINE redigerte videoer kommersielt. Selv
10837 kan jeg KUN bruke dem privat.&lt;/a&gt;&quot;
10838 &lt;/blockquote&gt;&lt;/p&gt;
10839
10840 &lt;p&gt;I quickly translated it to this English message:&lt;/p&gt;
10841
10842 &lt;p&gt;&lt;blockquote&gt;
10843 &quot;Arrogant user agreement: HTC can use MY edited videos
10844 commercially. Although I can ONLY use them privately.&quot;
10845 &lt;/blockquote&gt;&lt;/p&gt;
10846
10847 &lt;p&gt;I&#39;ve been unable to find the text of the license term myself, but
10848 suspect it is a variation of the MPEG-LA terms I
10849 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Terms_of_use_for_video_produced_by_a_Canon_IXUS_130_digital_camera.html&quot;&gt;discovered
10850 with my Canon IXUS 130&lt;/a&gt;. The HTC One X specification specifies that
10851 the recording format of the phone is .amr for audio and .mp3 for
10852 video. AMR is
10853 &lt;a href=&quot;http://en.wikipedia.org/wiki/Adaptive_Multi-Rate_audio_codec#Licensing_and_patent_issues&quot;&gt;Adaptive
10854 Multi-Rate audio codec&lt;/a&gt; with patents which according to the
10855 Wikipedia article require an license agreement with
10856 &lt;a href=&quot;http://www.voiceage.com/&quot;&gt;VoiceAge&lt;/a&gt;. MP4 is
10857 &lt;a href=&quot;http://en.wikipedia.org/wiki/H.264/MPEG-4_AVC#Patent_licensing&quot;&gt;MPEG4 with
10858 H.264&lt;/a&gt;, which according to Wikipedia require a licence agreement
10859 with &lt;a href=&quot;http://www.mpegla.com/&quot;&gt;MPEG-LA&lt;/a&gt;.&lt;/p&gt;
10860
10861 &lt;p&gt;I know why I prefer
10862 &lt;a href=&quot;http://www.digistan.org/open-standard:definition&quot;&gt;free and open
10863 standards&lt;/a&gt; also for video.&lt;/p&gt;
10864 </description>
10865 </item>
10866
10867 <item>
10868 <title>RAND terms - non-reasonable and discriminatory</title>
10869 <link>http://people.skolelinux.org/pere/blog/RAND_terms___non_reasonable_and_discriminatory.html</link>
10870 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/RAND_terms___non_reasonable_and_discriminatory.html</guid>
10871 <pubDate>Thu, 19 Apr 2012 22:20:00 +0200</pubDate>
10872 <description>&lt;p&gt;Here in Norway, the
10873 &lt;a href=&quot;http://www.regjeringen.no/nb/dep/fad.html?id=339&quot;&gt; Ministry of
10874 Government Administration, Reform and Church Affairs&lt;/a&gt; is behind
10875 a &lt;a href=&quot;http://standard.difi.no/forvaltningsstandarder&quot;&gt;directory of
10876 standards&lt;/a&gt; that are recommended or mandatory for use by the
10877 government. When the directory was created, the people behind it made
10878 an effort to ensure that everyone would be able to implement the
10879 standards and compete on equal terms to supply software and solutions
10880 to the government. Free software and non-free software could compete
10881 on the same level.&lt;/p&gt;
10882
10883 &lt;p&gt;But recently, some standards with RAND
10884 (&lt;a href=&quot;http://en.wikipedia.org/wiki/Reasonable_and_non-discriminatory_licensing&quot;&gt;Reasonable
10885 And Non-Discriminatory&lt;/a&gt;) terms have made their way into the
10886 directory. And while this might not sound too bad, the fact is that
10887 standard specifications with RAND terms often block free software from
10888 implementing them. The reasonable part of RAND mean that the cost per
10889 user/unit is low,and the non-discriminatory part mean that everyone
10890 willing to pay will get a license. Both sound great in theory. In
10891 practice, to get such license one need to be able to count users, and
10892 be able to pay a small amount of money per unit or user. By
10893 definition, users of free software do not need to register their use.
10894 So counting users or units is not possible for free software projects.
10895 And given that people will use the software without handing any money
10896 to the author, it is not really economically possible for a free
10897 software author to pay a small amount of money to license the rights
10898 to implement a standard when the income available is zero. The result
10899 in these situations is that free software are locked out from
10900 implementing standards with RAND terms.&lt;/p&gt;
10901
10902 &lt;p&gt;Because of this, when I see someone claiming the terms of a
10903 standard is reasonable and non-discriminatory, all I can think of is
10904 how this really is non-reasonable and discriminatory. Because free
10905 software developers are working in a global market, it does not really
10906 help to know that software patents are not supposed to be enforceable
10907 in Norway. The patent regimes in other countries affect us even here.
10908 I really hope the people behind the standard directory will pay more
10909 attention to these issues in the future.&lt;/p&gt;
10910
10911 &lt;p&gt;You can find more on the issues with RAND, FRAND and RAND-Z terms
10912 from Simon Phipps
10913 (&lt;a href=&quot;http://blogs.computerworlduk.com/simon-says/2010/11/rand-not-so-reasonable/&quot;&gt;RAND:
10914 Not So Reasonable?&lt;/a&gt;).&lt;/p&gt;
10915
10916 &lt;p&gt;Update 2012-04-21: Just came across a
10917 &lt;a href=&quot;http://blogs.computerworlduk.com/open-enterprise/2012/04/of-microsoft-netscape-patents-and-open-standards/index.htm&quot;&gt;blog
10918 post from Glyn Moody&lt;/a&gt; over at Computer World UK warning about the
10919 same issue, and urging people to speak out to the UK government. I
10920 can only urge Norwegian users to do the same for
10921 &lt;a href=&quot;http://www.standard.difi.no/hoyring/hoyring-om-nye-anbefalte-it-standarder&quot;&gt;the
10922 hearing taking place at the moment&lt;/a&gt; (respond before 2012-04-27).
10923 It proposes to require video conferencing standards including
10924 specifications with RAND terms.&lt;/p&gt;
10925 </description>
10926 </item>
10927
10928 <item>
10929 <title>Debian Edu interview: Andreas Mundt</title>
10930 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Andreas_Mundt.html</link>
10931 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Andreas_Mundt.html</guid>
10932 <pubDate>Sun, 15 Apr 2012 12:10:00 +0200</pubDate>
10933 <description>&lt;p&gt;Behind &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu and
10934 Skolelinux&lt;/a&gt; there are a lot of people doing the hard work of
10935 setting together all the pieces. This time I present to you Andreas
10936 Mundt, who have been part of the technical development team several
10937 years. He was also a key contributor in getting GOsa and Kerberos set
10938 up in the recently released
10939 &lt;a href=&quot;http://wiki.debian.org/DebianEdu/Documentation/Squeeze&quot;&gt;Debian
10940 Edu Squeeze&lt;/a&gt; version.&lt;/p&gt;
10941
10942 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
10943
10944 &lt;p&gt;My name is Andreas Mundt, I grew up in south Germany. After
10945 studying Physics I spent several years at university doing research in
10946 Quantum Optics. After that I worked some years in an optics company.
10947 Finally I decided to turn over a new leaf in my life and started
10948 teaching 10 to 19 years old kids at school. I teach math, physics,
10949 information technology and science/technology.&lt;/p&gt;
10950
10951 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux/Debian Edu
10952 project?&lt;/strong&gt;&lt;/p&gt;
10953
10954 &lt;p&gt;Already before I switched to teaching, I followed the Debian Edu
10955 project because of my interest in education and Debian. Within the
10956 qualification/training period for the teaching, I started
10957 contributing.&lt;/p&gt;
10958
10959 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux/Debian
10960 Edu?&lt;/strong&gt;&lt;/p&gt;
10961
10962 &lt;p&gt;The advantages of Debian Edu are the well known name, the
10963 out-of-the-box philosophy and of course the great free software of the
10964 Debian Project!&lt;/p&gt;
10965
10966 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux/Debian
10967 Edu?&lt;/strong&gt;&lt;/p&gt;
10968
10969 &lt;p&gt;As every coin has two sides, the out-of-the-box philosophy has its
10970 downside, too. In my opinion, it is hard to modify and tweak the
10971 setup, if you need or want that. Further more, it is not easily
10972 possible to upgrade the system to a new release. It takes much too
10973 long after a Debian release to prepare the -Edu release, perhaps
10974 because the number of developers working on the core of the code is
10975 rather small and often busy elsewhere.&lt;/p&gt;
10976
10977 &lt;p&gt;The &lt;a href=&quot;http://wiki.debian.org/DebianLAN&quot;&gt;Debian LAN&lt;/a&gt;
10978 project might fill the use case of a more flexible system.&lt;/p&gt;
10979
10980 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
10981
10982 &lt;p&gt;I am only using non-free software if I am forced to and run Debian
10983 on all my machines. For documents I prefer LaTeX and PGF/TikZ, then
10984 mutt and iceweasel for email respectively web browsing. At school I
10985 have Arduino and Fritzing in use for a micro controller project.&lt;/p&gt;
10986
10987 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
10988 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
10989
10990 &lt;p&gt;One of the major problems is the vendor lock-in from top to bottom:
10991 Especially in combination with ignorant government employees and
10992 politicians, this works out great for the &quot;market-leader&quot;. The school
10993 administration here in Baden-Wuerttemberg is occupied by that vendor.
10994 Documents have to be prepared in non-free, proprietary formats. Even
10995 free browsers do not work for the school administration. Publishers
10996 of school books provide software only for proprietary platforms.&lt;/p&gt;
10997
10998 &lt;p&gt;To change this, political work is very important. Parts of the
10999 political spectrum have become aware of the problem in the last years.
11000 However it takes quite some time and courageous politicians to &#39;free&#39;
11001 the system. There is currently some discussion about &quot;Open Data&quot; and
11002 &quot;Free/Open Standards&quot;. I am not sure if all the involved parties have
11003 a clue about the potential of these ideas, and probably only a
11004 fraction takes them seriously. However it might slowly make free
11005 software and the philosophy behind it more known and popular.&lt;/p&gt;
11006 </description>
11007 </item>
11008
11009 <item>
11010 <title>Debian Edu interview: Justin B. Rye</title>
11011 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Justin_B__Rye.html</link>
11012 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Justin_B__Rye.html</guid>
11013 <pubDate>Sun, 8 Apr 2012 10:50:00 +0200</pubDate>
11014 <description>&lt;p&gt;It take all kind of contributions to create a Linux distribution
11015 like &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt;,
11016 and this time I lend the ear to Justin B. Rye, who is listed as a big
11017 contributor to the
11018 &lt;a href=&quot;http://wiki.debian.org/DebianEdu/Documentation/Squeeze&quot;&gt;Debian
11019 Edu Squeeze release manual&lt;/a&gt;.
11020
11021 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
11022
11023 &lt;p&gt;I&#39;m a 44-year-old linguistics graduate living in Edinburgh who has
11024 occasionally been employed as a sysadmin.&lt;/p&gt;
11025
11026 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux/Debian Edu
11027 project?&lt;/strong&gt;&lt;/p&gt;
11028
11029 &lt;p&gt;I&#39;m neither a developer nor a Skolelinux/Debian Edu user! The only
11030 reason my name&#39;s in the credits for the documentation is that I hang
11031 around on debian-l10n-english waiting for people to mention things
11032 they&#39;d like a native English speaker to proofread... So I did a sweep
11033 through the wiki for typos and Norglish and inconsistent spellings of
11034 &quot;localisation&quot;.&lt;/p&gt;
11035
11036 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux/Debian
11037 Edu?&lt;/strong&gt;&lt;/p&gt;
11038
11039 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux/Debian
11040 Edu?&lt;/strong&gt;&lt;/p&gt;
11041
11042 &lt;p&gt;These questions are too hard for me - I don&#39;t use it! In fact I
11043 had hardly any contact with I.T. until long after I&#39;d got out of the
11044 education system.&lt;/p&gt;
11045
11046 &lt;p&gt;I can tell you the advantages of Debian for me though: it soaks up
11047 as much of my free time as I want and no more, and lets me do
11048 everything I want a computer for without ever forcing me to spend
11049 money on the latest hardware.&lt;/p&gt;
11050
11051 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
11052
11053 &lt;p&gt;I&#39;ve been using Debian since Rex; popularity-contest says the
11054 software that I use most is xinit, xterm, and xulrunner (in other
11055 words, I use a distinctly retro sort of desktop).&lt;/p&gt;
11056
11057 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
11058 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
11059
11060 &lt;p&gt;Well, I don&#39;t know. I suppose I&#39;d be inclined to try reasoning
11061 with the people who make the decisions, but obviously if that worked
11062 you would hardly need a strategy.&lt;/p&gt;
11063 </description>
11064 </item>
11065
11066 <item>
11067 <title>Why the KDE menu is slow when /usr/ is NFS mounted - and a workaround</title>
11068 <link>http://people.skolelinux.org/pere/blog/Why_the_KDE_menu_is_slow_when__usr__is_NFS_mounted___and_a_workaround.html</link>
11069 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Why_the_KDE_menu_is_slow_when__usr__is_NFS_mounted___and_a_workaround.html</guid>
11070 <pubDate>Fri, 6 Apr 2012 22:40:00 +0200</pubDate>
11071 <description>&lt;p&gt;Recently I have spent time with
11072 &lt;a href=&quot;http://www.slxdrift.no/&quot;&gt;Skolelinux Drift AS&lt;/a&gt; on speeding
11073 up a &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt;
11074 Lenny installation using LTSP diskless workstations, and in the
11075 process I discovered something very surprising. The reason the KDE
11076 menu was responding slow when using it for the first time, was mostly
11077 due to the way KDE find application icons. I discovered that showing
11078 the Multimedia menu would cause more than 20 000 IP packages to be
11079 passed between the LTSP client and the NFS server. Most of these were
11080
11081 NFS LOOKUP calls, resulting in a NFS3ERR_NOENT response. Because the
11082 ping times between the client and the server were in the range 2-20
11083 ms, the menus would be very slow. Looking at the strace of kicker in
11084 Lenny (or plasma-desktop i Squeeze - same problem there), I see that
11085 the source of these NFS calls are access(2) system calls for
11086 non-existing files. KDE can do hundreds of access(2) calls to find
11087 one icon file. In my example, just finding the mplayer icon required
11088 around 230 access(2) calls.&lt;/p&gt;
11089
11090 &lt;p&gt;The KDE code seem to search for icons using a list of icon
11091 directories, and the list of possible directories is large. In
11092 (almost) each directory, it look for files ending in .png, .svgz, .svg
11093 and .xpm. The result is a very slow KDE menu when /usr/ is NFS
11094 mounted. Showing a single sub menu may result in thousands of NFS
11095 requests. I am not the first one to discover this. I found a
11096 &lt;a href=&quot;https://bugs.kde.org/show_bug.cgi?id=211416&quot;&gt;KDE bug report
11097 from 2009&lt;/a&gt; about this problem, and it is still unsolved.&lt;/p&gt;
11098
11099 &lt;p&gt;My solution to speed up the KDE menu was to create a package
11100 kde-icon-cache that upon installation will look at all .desktop files
11101 used to generate the KDE menu, find their icons, search the icon paths
11102 for the file that KDE will end up finding at run time, and copying the
11103 icon file to /var/lib/kde-icon-cache/. Finally, I add symlinks to
11104 these icon files in one of the first directories where KDE will look
11105 for them. This cut down the number of file accesses required to find
11106 one icon from several hundred to less than 5, and make the KDE menu
11107 almost instantaneous. I&#39;m not quite sure where to make the package
11108 publicly available, so for now it is only available on request.&lt;/p&gt;
11109
11110 &lt;p&gt;The bug report mention that this do not only affect the KDE menu
11111 and icon handling, but also the login process. Not quite sure how to
11112 speed up that part without replacing NFS with for example NBD, and
11113 that is not really an option at the moment.&lt;/p&gt;
11114
11115 &lt;p&gt;If you got feedback on this issue, please let us know on debian-edu
11116 (at) lists.debian.org.&lt;/p&gt;
11117 </description>
11118 </item>
11119
11120 <item>
11121 <title>Debian Edu in the Linux Weekly News</title>
11122 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_in_the_Linux_Weekly_News.html</link>
11123 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_in_the_Linux_Weekly_News.html</guid>
11124 <pubDate>Thu, 5 Apr 2012 08:00:00 +0200</pubDate>
11125 <description>&lt;p&gt;About two weeks ago, I was interviewed via email about
11126 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu and Skolelinux&lt;/a&gt; by
11127 Bruce Byfield in Linux Weekly News. The result was made public for
11128 non-subscribers today. I am pleased to see liked our Linux solution
11129 for schools. Check out his article
11130 &lt;a href=&quot;https://lwn.net/Articles/488805/&quot;&gt;Debian Edu/Skolelinux: A
11131 distribution for education&lt;/a&gt; if you want to learn more.&lt;/p&gt;
11132 </description>
11133 </item>
11134
11135 <item>
11136 <title>Debian Edu interview: Wolfgang Schweer</title>
11137 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Wolfgang_Schweer.html</link>
11138 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Wolfgang_Schweer.html</guid>
11139 <pubDate>Sun, 1 Apr 2012 23:00:00 +0200</pubDate>
11140 <description>&lt;p&gt;Germany is a core area for the
11141 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu and Skolelinux&lt;/a&gt;
11142 user community, and this time I managed to get hold of Wolfgang
11143 Schweer, a valuable contributor to the project from Germany.
11144
11145 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
11146
11147 &lt;p&gt;I&#39;ve studied Mathematics at the university &#39;Ruhr-Universität&#39; in
11148 Bochum, Germany. Since 1981 I&#39;m working as a teacher at the school
11149 &quot;&lt;a href=&quot;http://www.westfalenkolleg-dortmund.de/&quot;&gt;Westfalen-Kolleg
11150 Dortmund&lt;/a&gt;&quot;, a second chance school. Here, young adults is given
11151 the opportunity to get further education in order to do the school
11152 examination &#39;Abitur&#39;, which will allow to study at a university. This
11153 second chance is of value for those who want a better job perspective
11154 or failed to get a higher school examination being teens.&lt;/p&gt;
11155
11156 &lt;p&gt;Besides teaching I was involved in developing online courses for a
11157 blended learning project called &#39;abitur-online.nrw&#39; and in some other
11158 information technology related projects. For about ten years I&#39;ve been
11159 teacher and coordinator for the &#39;abitur-online&#39; project at my
11160 school. Being now in my early sixties, I&#39;ve decided to leave school at
11161 the end of April this year.&lt;/p&gt;
11162
11163 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux/Debian Edu
11164 project?&lt;/strong&gt;&lt;/p&gt;
11165
11166 &lt;p&gt;The first information about Skolelinux must have come to my
11167 attention years ago and somehow related to LTSP (Linux Terminal Server
11168 Project). At school, we had set up a network at the beginning of 1997
11169 using Suse Linux on the desktop, replacing a Novell network. Since
11170 2002, we used old machines from the city council of Dortmund as thin
11171 clients (LTSP, later Ubuntu/Lessdisks) cause new hardware was out of
11172 reach. At home I&#39;m using Debian since years and - subscribed to the
11173 Debian news letter - heard from time to time about Skolelinux. About
11174 two years ago I proposed to replace the (somehow undocumented and only
11175 known to me) system at school by a well known Debian based system:
11176 Skolelinux.&lt;/p&gt;
11177
11178 &lt;p&gt;Students and teachers appreciated the new system because of a
11179 better look and feel and an enhanced access to local media on thin
11180 clients. The possibility to alter and/or reset passwords using a GUI
11181 was welcomed, too. Being able to do administrative tasks using a GUI
11182 and to easily set up workstations using PXE was of very high value for
11183 the admin teachers.&lt;/p&gt;
11184
11185 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux/Debian
11186 Edu?&lt;/strong&gt;&lt;/p&gt;
11187
11188 &lt;p&gt;It&#39;s open source, easy to set up, stable and flexible due to it&#39;s
11189 Debian base. It integrates LTSP out-of-the-box. And it is documented!
11190 So it was a perfect choice.&lt;/p&gt;
11191
11192 &lt;p&gt;Being open source, there are no license problems and so it&#39;s
11193 possible to point teachers and students to programs like
11194 OpenOffice.org, ViewYourMind (mind mapping) and The Gimp. It&#39;s of
11195 high value to be able to adapt parts of the system to special needs of
11196 a school and to choose where to get support for this.&lt;/p&gt;
11197
11198 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux/Debian
11199 Edu?&lt;/strong&gt;&lt;/p&gt;
11200
11201 &lt;p&gt;Nothing yet.&lt;/p&gt;
11202
11203 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
11204
11205 &lt;p&gt;At home (Debian Sid with Gnome Desktop): Iceweasel, LibreOffice,
11206 Mutt, Gedit, Document Viewer, Midnight Commander, flpsed (PDF
11207 Annotator). At school (Skolelinux Lenny): Iceweasel, Gedit,
11208 LibreOffice.&lt;/p&gt;
11209
11210 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
11211 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
11212
11213 &lt;p&gt;Some time ago I thought it was enough to tell people about it. But
11214 that doesn&#39;t seem to work quite well. Now I concentrate on those more
11215 interested and hope to get multiplicators that way.&lt;/p&gt;
11216 </description>
11217 </item>
11218
11219 <item>
11220 <title>Debian Edu screencast: Checking email with kmail using Kerberos authentication</title>
11221 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_screencast__Checking_email_with_kmail_using_Kerberos_authentication.html</link>
11222 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_screencast__Checking_email_with_kmail_using_Kerberos_authentication.html</guid>
11223 <pubDate>Sun, 25 Mar 2012 10:00:00 +0200</pubDate>
11224 <description>&lt;!-- Video HTML based on http://www.diveintohtml5.net/video.html --&gt;
11225
11226 &lt;p&gt;The same Debian Edu developer that did the last screen cast I
11227 published, Wolfgang Schweer, has created a new screen cast showing how
11228 to set up Kmail in Debian Edu Squeze to authenticate using Kerberos,
11229 allowing users to check their local email account without providing
11230 any password. The video is embedded here in quarter size,
11231 and also available from &lt;a href=&quot;https://vimeo.com/38601767&quot;&gt;vimeo&lt;/a&gt;
11232 and download as a
11233 &lt;a href=&quot;http://ftp.skolelinux.org/skolelinux/press/screencasts/2012-03-14-Debian-Edu_Configure_Kmail_for_internal_usage.ogv&quot;&gt;Ogg
11234 Theora&lt;/a&gt; file. Check it out below.&lt;/p&gt;
11235
11236 &lt;p&gt;&lt;video id=&quot;kmail-kerberos-movie&quot; width=&quot;256&quot; height=&quot;184&quot; preload controls&gt;
11237 &lt;source src=&quot;http://ftp.skolelinux.org/skolelinux/press/screencasts/2012-03-14-Debian-Edu_Configure_Kmail_for_internal_usage.ogv&quot; type=&#39;video/ogg; codecs=&quot;theora, vorbis&quot;&#39; /&gt;
11238 &lt;p&gt;Download video as
11239 &lt;a href=&quot;http://ftp.skolelinux.org/skolelinux/press/screencasts/2012-03-14-Debian-Edu_Configure_Kmail_for_internal_usage.ogv&quot;&gt;Ogg&lt;/a&gt;.&lt;/p&gt;
11240 &lt;/video&gt;&lt;/p&gt;
11241 </description>
11242 </item>
11243
11244 <item>
11245 <title>Debian Edu interview: John Ingleby</title>
11246 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__John_Ingleby.html</link>
11247 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__John_Ingleby.html</guid>
11248 <pubDate>Mon, 19 Mar 2012 21:15:00 +0100</pubDate>
11249 <description>&lt;p&gt;&lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt;
11250 users are spread all across the globe. The second inteview after
11251 &lt;a href=&quot;http://lists.debian.org/debian-edu-announce/2012/03/msg00001.html&quot;&gt;the
11252 Squeeze release&lt;/a&gt; was publised is with John Ingleby, a teacher and
11253 long time Linux user in United Kingdom.&lt;/p&gt;
11254
11255 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
11256
11257 &lt;p&gt;I teach ICT part time at the Rudolf Steiner School in Kings
11258 Langley, near London, UK. Previously I worked as a technical
11259 author/trainer while my children attended the school, and I also
11260 contributed to the Schoolforge UK community with the aim of
11261 encouraging UK schools to adopt free/open source software. Five or six
11262 years ago we had about 50 schools interested in some way, but we
11263 weren&#39;t able to convert many of them into sustainable
11264 installations.&lt;/p&gt;
11265
11266 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux/Debian Edu
11267 project?&lt;/strong&gt;&lt;/p&gt;
11268
11269 &lt;p&gt;Skolelinux had two representatives at an early Edubuntu meeting in
11270 London which I attended. However at that time our school network had
11271 just been installed using CentOS, LTSP 4 and GNOME. When LTSP 5 came
11272 along we switched to Edubuntu thin client servers so now we have a
11273 mixed environment which includes Windows PCs and student laptops, as
11274 well as their MacBooks and iPads. However, the proprietary systems
11275 have always been rather problematic, and we never built a GUI for the
11276 LDAP server, so when I discovered Skolelinux is configured for all
11277 these things we decided to try it.&lt;/p&gt;
11278
11279 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux/Debian
11280 Edu?&lt;/strong&gt;&lt;/p&gt;
11281
11282 &lt;p&gt;By far the biggest advantage is the Debian Edu community. Apart
11283 from that I have always believed in the same &quot;sustainable computing&quot;
11284 goals that Skolelinux is built on: installing Linux on computers which
11285 would otherwise be thrown away, to provide a reliable, secure and
11286 low-cost IT environment for schools. From my own experience I know
11287 that a part-time person can teach and manage a network of about 25
11288 Linux computers, but it would take much more of my time if we had
11289 proprietary software everywhere.&lt;/p&gt;
11290
11291 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux/Debian
11292 Edu?&lt;/strong&gt;&lt;/p&gt;
11293
11294 &lt;p&gt;As a newcomer I&#39;m just finding out who&#39;s who in the community and
11295 how you&#39;re organised, and what your procedures are for dealing with
11296 various things such as editing manual pages and so-on. The only
11297 English language mailing list seems to be for developers as well as
11298 users, so my inbox needs heavy pruning each day!&lt;/p&gt;
11299
11300 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
11301
11302 &lt;p&gt;Besides the software already mentioned at school we use Samba,
11303 OpenLDAP, CUPS, Nagios and Dansguardian for the network, and on the
11304 desktops we have LibreOffice, Firefox, GIMP and Inkscape. At home I
11305 use Ubuntu and an Android 4 eePad Transformer (but I&#39;m not sure if
11306 that counts...)&lt;/p&gt;
11307
11308 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
11309 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
11310
11311 &lt;p&gt;That&#39;s a tough question! For very many years UK schools installed
11312 and taught only proprietary software, so that at the highest levels
11313 the notion of &quot;computer&quot; means simply &quot;proprietary office
11314 applications&quot;. However, schools today are experiencing budget
11315 constraints, and many are having to think hard about upgrading Windows
11316 XP. At the same time, we have students showing teachers how to use
11317 iPads, MacBooks and Android, so the choice of operating system is no
11318 longer quite so automatic. What is more, our government at last
11319 realised that we need people with programming skills, so they&#39;re
11320 putting coding back in the curriculum! And it&#39;s encouraging that the
11321 first 10,000 Raspberry Pi units sold out in 2 hours.&lt;/p&gt;
11322
11323 &lt;p&gt;I don&#39;t really know what strategy is going to get UK schools to use
11324 free software, but building an active community of Skolelinux/Debian
11325 Edu users in this country has to be part of it.&lt;/p&gt;
11326 </description>
11327 </item>
11328
11329 <item>
11330 <title>Writing and translating documentation in Debian Edu</title>
11331 <link>http://people.skolelinux.org/pere/blog/Writing_and_translating_documentation_in_Debian_Edu.html</link>
11332 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Writing_and_translating_documentation_in_Debian_Edu.html</guid>
11333 <pubDate>Fri, 16 Mar 2012 09:55:00 +0100</pubDate>
11334 <description>&lt;p&gt;Documentation in Debian Edu is provided in several languages, and
11335 it is important to make it both easy to contribute and to keep the
11336 translated versions in sync. To do this we have come up with what we
11337 believe is a very efficient work flow.&lt;/p&gt;
11338
11339 &lt;ol&gt;
11340
11341 &lt;li&gt;The documentation is written in a
11342 &lt;a href=&quot;http://moinmo.in&quot;&gt;moinmoin wiki&lt;/a&gt; (see for example
11343 &lt;a href=&quot;http://wiki.debian.org/DebianEdu/Documentation/Squeeze&quot;&gt;the
11344 Squeeze release manual&lt;/a&gt;) with support for exporting the content as
11345 docbook XML.&lt;/li&gt;
11346
11347 &lt;li&gt;This docbook document is given to po4a to extract a gettext style
11348 .pot file with the content, which in turn is used to create .po files
11349 with the translated text.&lt;/li&gt;
11350
11351 &lt;li&gt;The .po files are given to translators, and they can always tell
11352 which part of the original wiki document is new or changed. They can
11353 use their normal translation tools like lokalize or poedit to write
11354 the translation. There is even a system in place to handle translated
11355 images.&lt;/li&gt;
11356
11357 &lt;li&gt;The translated .po files are combined with the original docbook
11358 XML document using po4a to create a translated docbook document.&lt;/li&gt;
11359
11360 &lt;li&gt;The final step is to use all the generated docbook files and
11361 create PDF and HTML version of the original and translated documents.&lt;/li&gt;
11362
11363 &lt;/ol&gt;
11364
11365 &lt;p&gt;This setup work very well, but have a few issues. The biggest
11366 issue is that &lt;a href=&quot;http://moinmo.in/DocBook&quot;&gt;the docbook support
11367 we use in moinmoin&lt;/a&gt; is not actively maintained. The docbook
11368 support is also buggy, and our build system contain workarounds to
11369 make sure the generated docbook is usable despite these bugs.&lt;/p&gt;
11370
11371 &lt;p&gt;If you want to have a look at our setup, it is all there in the
11372 &lt;a href=&quot;http://packages.qa.debian.org/debian-edu-doc&quot;&gt;debian-edu-doc
11373 package&lt;/a&gt;.&lt;/p&gt;
11374 </description>
11375 </item>
11376
11377 <item>
11378 <title>Skolelinux / Debian Edu Squeeze is out!</title>
11379 <link>http://people.skolelinux.org/pere/blog/Skolelinux___Debian_Edu_Squeeze_is_out_.html</link>
11380 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Skolelinux___Debian_Edu_Squeeze_is_out_.html</guid>
11381 <pubDate>Sun, 11 Mar 2012 23:00:00 +0100</pubDate>
11382 <description>&lt;p&gt;This weekend we finally published the first stable release of
11383 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Skolelinux / Debian Edu&lt;/a&gt; based
11384 on Debian/Squeeze. The full announcement is
11385 &lt;a href=&quot;http://lists.debian.org/debian-edu-announce/2012/03/msg00001.html&quot;&gt;available&lt;/a&gt;
11386 from the project announcement list. Now is a good time to test if it
11387 you have not done so already.&lt;/p&gt;
11388
11389 &lt;p&gt;I plan to present the new version at
11390 &lt;a href=&quot;http://www.nuug.no/aktiviteter/20120313-skolelinux/&quot;&gt;a NUUG
11391 meeting&lt;/a&gt; on tuesday. I look forward to seeing you there if you are
11392 in Oslo, Norway.&lt;/p&gt;
11393 </description>
11394 </item>
11395
11396 <item>
11397 <title>Debian Edu interview: Nigel Barker</title>
11398 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Nigel_Barker.html</link>
11399 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Nigel_Barker.html</guid>
11400 <pubDate>Fri, 9 Mar 2012 11:30:00 +0100</pubDate>
11401 <description>&lt;p&gt;Inspired by &lt;a href=&quot;http://raphaelhertzog.com/tag/interview/&quot;&gt;the
11402 interview series&lt;/a&gt; conducted by Raphael, I started a Norwegian
11403 interview series with people involved in the Debian Edu / Skolelinux
11404 community. This was so popular that I believe it is time to move to a
11405 more international audience.&lt;/p&gt;
11406
11407 &lt;p&gt;While &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu and
11408 Skolelinux&lt;/a&gt; originated in France and Norway, and have most users in
11409 Europe, there are users all around the globe. One of those far away
11410 from me is Nigel Barker, a long time Debian Edu system administrator
11411 and contributor. It is thanks to him that Debian Edu is adjusted to
11412 work out of the box in Japan. I got him to answer a few questions,
11413 and am happy to share the response with you. :)
11414
11415
11416 &lt;p&gt;&lt;strong&gt;Who are you, and how do you spend your days?&lt;/strong&gt;&lt;/p&gt;
11417
11418 &lt;p&gt;My name is Nigel Barker, and I am British. I am married to Yumiko,
11419 and we have three lovely children, aged 15, 14 and 4(!) I am the IT
11420 Coordinator at Hiroshima International School, Japan. I am also a
11421 teacher, and in fact I spend most of my day teaching Mathematics,
11422 Science, IT, and Chemistry. I was originally a Chemistry teacher, but
11423 I have always had an interest in computers. Another teacher teaches
11424 primary school IT, but apart from that I am the only computer person,
11425 so that means I am the network manager, technician and webmaster,
11426 also, and I help people with their computer problems. I teach python
11427 to beginners in an after-school club. I am way too busy, so I really
11428 appreciate the simplicity of Skolelinux.&lt;/p&gt;
11429
11430 &lt;p&gt;&lt;strong&gt;How did you get in contact with the Skolelinux/Debian Edu
11431 project?&lt;/strong&gt;&lt;/p&gt;
11432
11433 &lt;p&gt;In around 2004 or 5 I discovered the ltsp project, and set up a
11434 server in the IT lab. I wanted some way to connect it to our central
11435 samba server, which I was also quite poor at configuring. I discovered
11436 Edubuntu when it came out, but it didn&#39;t really improve my setup. I
11437 did various desperate searches for things like &quot;school Linux server&quot;
11438 and ended up in a document called &quot;Drift&quot; something or other. Reading
11439 there it became clear that Skolelinux was going to solve all my
11440 problems in one go. I was very excited, but apprehensive, because my
11441 previous attempts to install Debian had ended in failure (I used
11442 Mandrake for everything - ltsp, samba, apache, mail, ns...). I
11443 downloaded a beta version, had some problems, so subscribed to the
11444 Debian Edu list for help. I have remained subscribed ever since, and
11445 my school has run a Skolelinux network since Sarge.&lt;/p&gt;
11446
11447 &lt;p&gt;&lt;strong&gt;What do you see as the advantages of Skolelinux/Debian
11448 Edu?&lt;/strong&gt;&lt;/p&gt;
11449
11450 &lt;p&gt;For me the integrated setup. This is not just the server, or the
11451 workstation, or the ltsp. Its all of them, and its all configured
11452 ready to go. I read somewhere in the early documentation that it is
11453 designed to be setup and managed by the Maths or Science teacher, who
11454 doesn&#39;t necessarily know much about computers, in a small Norwegian
11455 school. That describes me perfectly if you replace Norway with
11456 Japan.&lt;/p&gt;
11457
11458 &lt;p&gt;&lt;strong&gt;What do you see as the disadvantages of Skolelinux/Debian
11459 Edu?&lt;/strong&gt;&lt;/p&gt;
11460
11461 &lt;p&gt;The desktop is fairly plain. If you compare it with Edubuntu, who
11462 have fun themes for children, or with distributions such as Mint, who
11463 make the desktop beautiful. They create a good impression on people
11464 who don&#39;t need to understand how to use any of it, but who might be
11465 important to the school. School administrators or directors, for
11466 instance, or parents. Even kids. Debian itself usually has ugly
11467 default theme settings. It was my dream a few years back that some
11468 kind of integration would allow Edubuntu to do the desktop stuff and
11469 Debian Edu the servers, but now I realise how impossible that is. A
11470 second disadvantage is that if something goes wrong, or you need to
11471 customise something, then suddenly the level of expertise required
11472 multiplies. For example, backup wasn&#39;t working properly in Lenny. It
11473 took me ages to learn how to set up my own server to do rsync backups.
11474 I am afraid of anything to do with ldap, but perhaps Gosa will
11475 help.&lt;/p&gt;
11476
11477 &lt;p&gt;&lt;strong&gt;Which free software do you use daily?&lt;/strong&gt;&lt;/p&gt;
11478
11479 &lt;p&gt;Nowadays I only use Debian on my personal computers. I have one for
11480 studio work (I play guitar and write songs), running AV Linux
11481 (customised Debian) a netbook running Squeeze, and a bigger laptop
11482 still running Skolelinux Lenny workstation. I have a Tjener in my
11483 house, that&#39;s very useful for the family photos and music. At school
11484 the students only use Skolelinux. (Some teachers and the office still
11485 have windows). So that means we only use free software all day every
11486 day. Open office, The GIMP, Firefox/Iceweasel, VLC and Audacity are
11487 installed on every computer in school, irrespective of OS. We also
11488 have Koha on Debian for the library, and Apache, Moodle, b2evolution
11489 and Etomite on Debian for the www. The firewall is Untangle.&lt;/p&gt;
11490
11491 &lt;p&gt;&lt;strong&gt;Which strategy do you believe is the right one to use to
11492 get schools to use free software?&lt;/strong&gt;&lt;/p&gt;
11493
11494 &lt;p&gt;Current trends are in our favour. Open source is big in industry,
11495 and ordinary people have heard of it. The spread of Android and the
11496 popularity of Apple have helped to weaken the impression that you have
11497 to have Microsoft on everything. People complain to me much less about
11498 file formats and Word than they did 5 years ago. The Edu aspect is
11499 also a selling point. This is all customised for schools. Where is the
11500 Windows-edu, or the Mac-edu? But of course the main attraction is
11501 budget.The trick is to convince people that the quality is not
11502 compromised when you stop paying and use free software instead. That
11503 is one reason why I say the desktop experience is a weakness. People
11504 are not impressed when their USB drive doesn&#39;t work, or their browser
11505 doesn&#39;t play flash, for example.&lt;/p&gt;
11506 </description>
11507 </item>
11508
11509 <item>
11510 <title>Debian Edu screencast: Mass creation of user accounts in Squeeze</title>
11511 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_screencast__Mass_creation_of_user_accounts_in_Squeeze.html</link>
11512 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_screencast__Mass_creation_of_user_accounts_in_Squeeze.html</guid>
11513 <pubDate>Wed, 7 Mar 2012 13:40:00 +0100</pubDate>
11514 <description>&lt;!-- Video HTML based on http://www.diveintohtml5.net/video.html --&gt;
11515
11516 &lt;p&gt;One of the Debian Edu developers, Wolfgang Schweer, just created a
11517 screen cast documenting how to create a lot of new users in LDAP on
11518 Debian Edu Squeeze. The video is embedded here in quarter size, and
11519 also available from &lt;a href=&quot;http://vimeo.com/37675399&quot;&gt;vimeo&lt;/a&gt; and
11520 download as a
11521 &lt;a href=&quot;http://ftp.skolelinux.org/skolelinux/press/screencasts/2012-02-29-debian_edu_mass_create_user_accounts.ogv&quot;&gt;Ogg
11522 Theora&lt;/a&gt; file. Check it out below.&lt;/p&gt;
11523
11524 &lt;p&gt;&lt;video id=&quot;gosa-mass-user-create-movie&quot; width=&quot;256&quot; height=&quot;184&quot; preload controls&gt;
11525 &lt;source src=&quot;http://ftp.skolelinux.org/skolelinux/press/screencasts/2012-02-29-debian_edu_mass_create_user_accounts.ogv&quot; type=&#39;video/ogg; codecs=&quot;theora, vorbis&quot;&#39; /&gt;
11526 &lt;p&gt;Download video as
11527 &lt;a href=&quot;http://ftp.skolelinux.org/skolelinux/press/screencasts/2012-02-29-debian_edu_mass_create_user_accounts.ogv&quot;&gt;Ogg&lt;/a&gt;.&lt;/p&gt;
11528 &lt;/video&gt;&lt;/p&gt;
11529 </description>
11530 </item>
11531
11532 <item>
11533 <title>Third release candidate of Debian Edu / Skolelinux based on Squeeze</title>
11534 <link>http://people.skolelinux.org/pere/blog/Third_release_candidate_of_Debian_Edu___Skolelinux_based_on_Squeeze.html</link>
11535 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Third_release_candidate_of_Debian_Edu___Skolelinux_based_on_Squeeze.html</guid>
11536 <pubDate>Sun, 4 Mar 2012 18:20:00 +0100</pubDate>
11537 <description>&lt;p&gt;This weekend we wrapped up and published the third release
11538 candidate for &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu /
11539 Skolelinux&lt;/a&gt; based on Squeeze. The full announcement is
11540 &lt;a href=&quot;http://lists.debian.org/debian-edu-announce/2012/03/msg00000.html&quot;&gt;available&lt;/a&gt;
11541 from the project announcement list. Check it out if you
11542 need a software solution for your school.&lt;/p&gt;
11543 </description>
11544 </item>
11545
11546 <item>
11547 <title>Stopmotion for making stop motion animations on Linux - reloaded</title>
11548 <link>http://people.skolelinux.org/pere/blog/Stopmotion_for_making_stop_motion_animations_on_Linux___reloaded.html</link>
11549 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Stopmotion_for_making_stop_motion_animations_on_Linux___reloaded.html</guid>
11550 <pubDate>Sat, 3 Mar 2012 12:50:00 +0100</pubDate>
11551 <description>&lt;p&gt;Many years ago, the &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Skolelinux
11552 / Debian Edu project&lt;/a&gt; initiated a student project to create a tool
11553 for making stop motion movies. The proposal came from a teacher
11554 needing such tool on Skolelinux. The project, called &quot;stopmotion&quot;,
11555 was manned by two extraordinary students and won a school award and a
11556 national aware with this great project. The project was initiated and
11557 mentored by Herman Robak, and manned by the students Bjørn Erik Nilsen
11558 and Fredrik Berg Kjølstad. They got in touch with people at Aardman
11559 Animation studio and received feedback on how professionals would like
11560 such stopmotion tool to work, and the end result was and is used by
11561 animators around the globe. But as is usual after studying, both got
11562 jobs and went elsewhere, and did not have time to properly tend to the
11563 project, and it has been lingering for a few years now. Until last
11564 year...&lt;/p&gt;
11565
11566 &lt;p&gt;Last year some of the users got together with Herman, and moved the
11567 project to Sourceforge and in effect restarted the project under a new
11568 name,
11569 &lt;a href=&quot;http://sourceforge.net/projects/linuxstopmotion/&quot;&gt;linuxstopmotion&lt;/a&gt;.
11570 The name change was done to make it possible to find the project using
11571 Internet search engines (try to search for &#39;stopmotion&#39; to see what I
11572 mean). I&#39;ve been following
11573 &lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/linuxstopmotion-community&quot;&gt;the
11574 mailing list&lt;/a&gt; and the improvement already in place and planned for
11575 the future is encouraging. If you want to make stop motion movies.
11576 Check it out. :)&lt;/p&gt;
11577 </description>
11578 </item>
11579
11580 <item>
11581 <title>Second release candidate of Debian Edu / Skolelinux based on Squeeze</title>
11582 <link>http://people.skolelinux.org/pere/blog/Second_release_candidate_of_Debian_Edu___Skolelinux_based_on_Squeeze.html</link>
11583 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Second_release_candidate_of_Debian_Edu___Skolelinux_based_on_Squeeze.html</guid>
11584 <pubDate>Mon, 27 Feb 2012 14:00:00 +0100</pubDate>
11585 <description>&lt;p&gt;This weekend we wrapped up and published the second release
11586 candidate for &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu /
11587 Skolelinux&lt;/a&gt; based on Squeeze. The full announcement did for some
11588 reason not make it the project announcement list, but is
11589 &lt;a href=&quot;http://lists.debian.org/debian-devel-announce/2012/02/msg00015.html&quot;&gt;available&lt;/a&gt;
11590 from the Debian development announcement list. Check it out if you
11591 need a software solution for your school.&lt;/p&gt;
11592 </description>
11593 </item>
11594
11595 <item>
11596 <title>First release candidate of Debian Edu / Skolelinux based on Squeeze</title>
11597 <link>http://people.skolelinux.org/pere/blog/First_release_candidate_of_Debian_Edu___Skolelinux_based_on_Squeeze.html</link>
11598 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/First_release_candidate_of_Debian_Edu___Skolelinux_based_on_Squeeze.html</guid>
11599 <pubDate>Sun, 19 Feb 2012 23:10:00 +0100</pubDate>
11600 <description>&lt;p&gt;One week delayed due to DVD build problems, we managed today to
11601 wrap up and publish the first release candidate for
11602 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt; based
11603 on Squeeze. The full announcement is
11604 &lt;a href=&quot;http://lists.debian.org/debian-edu-announce/2012/02/msg00001.html&quot;&gt;available&lt;/a&gt;
11605 on the project announcement list. Check it out if you need a software
11606 solution for your school.&lt;/p&gt;
11607 </description>
11608 </item>
11609
11610 <item>
11611 <title>How to figure out which RAID disk to replace when it fail</title>
11612 <link>http://people.skolelinux.org/pere/blog/How_to_figure_out_which_RAID_disk_to_replace_when_it_fail.html</link>
11613 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/How_to_figure_out_which_RAID_disk_to_replace_when_it_fail.html</guid>
11614 <pubDate>Tue, 14 Feb 2012 21:25:00 +0100</pubDate>
11615 <description>&lt;p&gt;Once in a while my home server have disk problems. Thanks to Linux
11616 Software RAID, I have not lost data yet (but
11617 &lt;a href=&quot;http://comments.gmane.org/gmane.linux.raid/34532&quot;&gt;I was
11618 close&lt;/a&gt; this summer :). But once a disk is starting to behave
11619 funny, a practical problem present itself. How to get from the Linux
11620 device name (like /dev/sdd) to something that can be used to identify
11621 the disk when the computer is turned off? In my case I have SATA
11622 disks with a unique ID printed on the label. All I need is a way to
11623 figure out how to query the disk to get the ID out.&lt;/p&gt;
11624
11625 &lt;p&gt;After fumbling a bit, I
11626 &lt;a href=&quot;http://www.cyberciti.biz/faq/linux-getting-scsi-ide-harddisk-information/&quot;&gt;found
11627 that hdparm -I&lt;/a&gt; will report the disk serial number, which is
11628 printed on the disk label. The following (almost) one-liner can be
11629 used to look up the ID of all the failed disks:&lt;/p&gt;
11630
11631 &lt;blockquote&gt;&lt;pre&gt;
11632 for d in $(cat /proc/mdstat |grep &#39;(F)&#39;|tr &#39; &#39; &quot;\n&quot;|grep &#39;(F)&#39;|cut -d\[ -f1|sort -u);
11633 do
11634 printf &quot;Failed disk $d: &quot;
11635 hdparm -I /dev/$d |grep &#39;Serial Num&#39;
11636 done
11637 &lt;/blockquote&gt;&lt;/pre&gt;
11638
11639 &lt;p&gt;Putting it here to make sure I do not have to search for it the
11640 next time, and in case other find it useful.&lt;/p&gt;
11641
11642 &lt;p&gt;At the moment I have two failing disk. :(&lt;/p&gt;
11643
11644 &lt;blockquote&gt;&lt;pre&gt;
11645 Failed disk sdd1: Serial Number: WD-WCASJ1860823
11646 Failed disk sdd2: Serial Number: WD-WCASJ1860823
11647 Failed disk sde2: Serial Number: WD-WCASJ1840589
11648 &lt;/blockquote&gt;&lt;/pre&gt;
11649
11650 &lt;p&gt;The last time I had failing disks, I added the serial number on
11651 labels I printed and stuck on the short sides of each disk, to be able
11652 to figure out which disk to take out of the box without having to
11653 remove each disk to look at the physical vendor label. The vendor
11654 label is at the top of the disk, which is hidden when the disks are
11655 mounted inside my box.&lt;/p&gt;
11656
11657 &lt;p&gt;I really wish the check_linux_raid Nagios plugin for checking Linux
11658 Software RAID in the
11659 &lt;a href=&quot;http://packages.qa.debian.org/n/nagios-plugins.html&quot;&gt;nagios-plugins-standard&lt;/a&gt;
11660 debian package would look up this value automatically, as it would
11661 make the plugin a lot more useful when my disks fail. At the moment
11662 it only report a failure when there are no more spares left (it really
11663 should warn as soon as a disk is failing), and it do not tell me which
11664 disk(s) is failing when the RAID is running short on disks.&lt;/p&gt;
11665 </description>
11666 </item>
11667
11668 <item>
11669 <title>Automatic proxy configuration with Debian Edu / Skolelinux</title>
11670 <link>http://people.skolelinux.org/pere/blog/Automatic_proxy_configuration_with_Debian_Edu___Skolelinux.html</link>
11671 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Automatic_proxy_configuration_with_Debian_Edu___Skolelinux.html</guid>
11672 <pubDate>Mon, 13 Feb 2012 23:40:00 +0100</pubDate>
11673 <description>&lt;p&gt;New in the Squeeze version of
11674 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt; is the
11675 ability for clients to automatically configure their proxy settings
11676 based on their environment. We want all systems on the client to use
11677 the WPAD based proxy definition fetched from &lt;tt&gt;http://wpad/wpad.dat&lt;/tt&gt;, to
11678 allow sites to control the proxy setting from a central place and make
11679 sure clients do not have hard coded proxy settings. The schools can
11680 change the global proxy setting by editing
11681 &lt;tt&gt;tjener:/etc/debian-edu/www/wpad.dat&lt;/tt&gt; and the change propagate
11682 to all Debian Edu clients in the network.&lt;/p&gt;
11683
11684 &lt;p&gt;The problem is that some systems do not understand the WPAD system.
11685 In other words, how do one get from a WPAD file like this (this is a
11686 simple one, they can run arbitrary code):&lt;/p&gt;
11687
11688 &lt;blockquote&gt;&lt;pre&gt;
11689 function FindProxyForURL(url, host)
11690 {
11691 if (!isResolvable(host) ||
11692 isPlainHostName(host) ||
11693 dnsDomainIs(host, &quot;.intern&quot;))
11694 return &quot;DIRECT&quot;;
11695 else
11696 return &quot;PROXY webcache:3128; DIRECT&quot;;
11697 }
11698 &lt;/pre&gt;&lt;/blockquote&gt;
11699
11700 &lt;p&gt;to a proxy setting in the process environment looking like this:&lt;/p&gt;
11701
11702 &lt;blockquote&gt;&lt;pre&gt;
11703 http_proxy=http://webcache:3128/
11704 ftp_proxy=http://webcache:3128/
11705 &lt;/pre&gt;&lt;/blockquote&gt;
11706
11707 &lt;p&gt;To do this conversion I developed a perl script that will execute
11708 the javascript fragment in the WPAD file and return the proxy that
11709 would be used for
11710 &lt;tt&gt;&lt;a href=&quot;http://www.debian.org/&quot;&gt;http://www.debian.org/&lt;/a&gt;&lt;/tt&gt;,
11711 and insert this extracted proxy URL in &lt;tt&gt;/etc/environment&lt;/tt&gt; and
11712 &lt;tt&gt;/etc/apt/apt.conf&lt;/tt&gt;. The perl script wpad-extract work just
11713 fine in Squeeze, but in Wheezy the library it need to run the
11714 javascript code is &lt;a href=&quot;http://bugs.debian.org/631045&quot;&gt;no longer
11715 able to build&lt;/a&gt; because the C library it depended on is now a C++
11716 library. I hope someone find a solution to that problem before Wheezy
11717 is frozen. An alternative would be for us to rewrite wpad-extract to
11718 use some other javascript library currently working in Wheezy, but no
11719 known alternative is known at the moment.&lt;/p&gt;
11720
11721 &lt;p&gt;This automatic proxy system allow the roaming workstation (aka
11722 laptop) setup in Debian Edu/Squeeze to use the proxy when the laptop
11723 is connected to the backbone network in a Debian Edu setup, and to
11724 automatically use any proxy present and announced using the WPAD
11725 feature when it is connected to other networks. And if no proxy is
11726 announced, direct connections will be used instead.&lt;/p&gt;
11727
11728 &lt;p&gt;Silently using a proxy announced on the network might be a privacy
11729 or security problem. But those controlling DHCP and DNS on a network
11730 could just as easily set up a transparent proxy, and force all HTTP
11731 and FTP connections to use a proxy anyway, so I consider that
11732 distinction to be academic. If you are afraid of using the wrong
11733 proxy, you should avoid connecting to the network in question in the
11734 first place. In Debian Edu, the proxy setup is updated using dhcp and
11735 ifupdown hooks, to make sure the configuration is updated every time
11736 the network setup changes.&lt;/p&gt;
11737
11738 &lt;p&gt;The WPAD system is documented in a
11739 &lt;a href=&quot;http://tools.ietf.org/html/draft-ietf-wrec-wpad-01&quot;&gt;IETF
11740 draft&lt;/a&gt; and a
11741 &lt;a href=&quot;http://en.wikipedia.org/wiki/Web_Proxy_Autodiscovery_Protocol&quot;&gt;Wikipedia
11742 page&lt;/a&gt; for those that want to learn more.&lt;/p&gt;
11743 </description>
11744 </item>
11745
11746 <item>
11747 <title>Saving power with Debian Edu / Skolelinux using shutdown-at-night</title>
11748 <link>http://people.skolelinux.org/pere/blog/Saving_power_with_Debian_Edu___Skolelinux_using_shutdown_at_night.html</link>
11749 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Saving_power_with_Debian_Edu___Skolelinux_using_shutdown_at_night.html</guid>
11750 <pubDate>Sun, 5 Feb 2012 09:45:00 +0100</pubDate>
11751 <description>&lt;p&gt;Since the Lenny version of
11752 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt;, a
11753 feature to save power have been included. It is as simple as it is
11754 practical: Shut down unused clients at night, and turn them on again
11755 in the morning. This is done using the
11756 &lt;a href=&quot;http://packages.qa.debian.org/s/shutdown-at-night.html&quot;&gt;shutdown-at-night&lt;/a&gt; Debian package.&lt;/p&gt;
11757
11758 &lt;p&gt;To enable this feature on a client, the machine need to be added to
11759 the netgroup shutdown-at-night-hosts. For Debian Edu, this is done in
11760 LDAP, and once this is in place, the machine in question will check
11761 every hour from 16:00 until 06:00 to see if the machine is unused, and
11762 shut it down if it is. If the hardware in question is supported by
11763 the
11764 &lt;a href=&quot;http://packages.qa.debian.org/n/nvram-wakeup.html&quot;&gt;nvram-wakeup&lt;/a&gt;
11765 package, the BIOS is told to turn the machine back on around 07:00 +-
11766 10 minutes. If this isn&#39;t working, one can configure wake-on-lan to
11767 try to turn on the client. The wake-on-lan option is only documented
11768 and not enabled by default in Debian Edu.&lt;/p&gt;
11769
11770 &lt;p&gt;It is important to not turn all machines on at once, as this can
11771 blow a fuse if several computers are connected to the same fuse like
11772 the common setup for a classroom. The nvram-wakeup method only work
11773 for machines with a functioning hardware/BIOS clock. I&#39;ve seen old
11774 machines where the BIOS battery were dead and the hardware clock were
11775 starting from 0 (or was it 1990?) every boot. If you have one of
11776 those, you have to turn on the computer manually.&lt;/p&gt;
11777
11778 &lt;p&gt;The shutdown-at-night package is completely self contained, and can
11779 also be used outside the Debian Edu environment. For those without a
11780 central LDAP server with netgroups, one can instead touch the file
11781 &lt;tt&gt;/etc/shutdown-at-night/shutdown-at-night&lt;/tt&gt; to enable it.
11782 Perhaps you too can use it to save some power?&lt;/p&gt;
11783 </description>
11784 </item>
11785
11786 <item>
11787 <title>Third beta version of Debian Edu / Skolelinux based on Squeeze</title>
11788 <link>http://people.skolelinux.org/pere/blog/Third_beta_version_of_Debian_Edu___Skolelinux_based_on_Squeeze.html</link>
11789 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Third_beta_version_of_Debian_Edu___Skolelinux_based_on_Squeeze.html</guid>
11790 <pubDate>Sat, 4 Feb 2012 13:25:00 +0100</pubDate>
11791 <description>&lt;p&gt;I am happy to announce that finally we managed today to wrap up and
11792 publish the third beta version of
11793 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt; based
11794 on Squeeze. If you want to test a LDAP backed Kerberos server with
11795 out of the box PXE configuration for running diskless machines and
11796 installing new machines, check it out. If you need a software
11797 solution for your school, check it out too. The full announcement is
11798 &lt;a href=&quot;http://lists.debian.org/debian-edu-announce/2012/02/msg00000.html&quot;&gt;available&lt;/a&gt;
11799 on the project announcement list.&lt;/p&gt;
11800
11801 &lt;p&gt;I am very happy to report these changes and improvements since
11802 beta2 (there are more, see announcement for full list):&lt;/p&gt;
11803
11804 &lt;ul&gt;
11805
11806 &lt;li&gt;It is now possible to change the pre-configured IP subnet from
11807 10.0.0.0/8 to something else by using the subnet-change tool after
11808 the installation.&lt;/li&gt;
11809
11810 &lt;li&gt;Too full partitions are now automatically extended on the Main
11811 Server, based on the rules specified in /etc/fsautoresizetab.&lt;/li&gt;
11812
11813 &lt;li&gt;The CUPS queues are now automatically flushed every night, and all
11814 disabled queues are restarted every hour. This should cut down on
11815 the amount of manual administration needed for printers.&lt;/li&gt;
11816
11817 &lt;li&gt;The set of initial users have been changed. Now a personal user
11818 for the local system administrator is created during installation
11819 instead of the previously created localadmin and super-admin users,
11820 and this user is granted administrative privileges using group
11821 membership. This reduces the number of passwords one need to keep
11822 up to date on the system.&lt;/li&gt;
11823
11824 &lt;/ul&gt;
11825
11826 &lt;p&gt;The new main server seem to work so well that I am testing it as my
11827 private DNS/LDAP/Kerberos/PXE/LTSP server at home. I will use it look
11828 for issues we could fix to polish Debian Edu even further before the
11829 final Squeeze release is published.&lt;/p&gt;
11830
11831 &lt;p&gt;Next weekend the project organise a
11832 &lt;a href=&quot;http://lists.debian.org/debian-edu-announce/2012/01/msg00001.html&quot;&gt;developer
11833 gathering&lt;/a&gt; in Oslo. We will continue the work on the Squeeze
11834 version, and start initial planning for the Wheezy version. Perhaps I
11835 will see you there?&lt;/p&gt;
11836 </description>
11837 </item>
11838
11839 <item>
11840 <title>Handling non-free firmware in Debian Edu/Squeeze</title>
11841 <link>http://people.skolelinux.org/pere/blog/Handling_non_free_firmware_in_Debian_Edu_Squeeze.html</link>
11842 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Handling_non_free_firmware_in_Debian_Edu_Squeeze.html</guid>
11843 <pubDate>Fri, 27 Jan 2012 23:30:00 +0100</pubDate>
11844 <description>&lt;p&gt;With some computer hardware, one need non-free firmware blobs.
11845 This is the sad fact of todays computers. In the next version of
11846 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt; based
11847 on Squeeze, we provide several scripts and modifications to make
11848 firmware blobs easier to handle. The common use case I run into is a
11849 laptop with a wireless network card requiring non-free firmware to
11850 work, but there are other use cases as well.&lt;/p&gt;
11851
11852 &lt;p&gt;First and foremost, Debian Edu provide ISO images for DVD and CD
11853 with all firmware packages in the Debian sections main and non-free
11854 included, to ensure debian-installer find and can install all of them
11855 during installation. This take care firmware for network devices used
11856 by the installer when installing from from local media. But for
11857 example multimedia devices are not activated in the installer and are
11858 not taken care of by this.&lt;/p&gt;
11859
11860 &lt;p&gt;For non-network devices, we provide the script
11861 &lt;tt&gt;/usr/share/debian-edu-config/tools/auto-addfirmware&lt;/tt&gt; which
11862 search through the &lt;tt&gt;dmesg&lt;/tt&gt; output for drivers requesting extra
11863 firmware. The firmware file name is looked up in the Contents-ARCH.gz
11864 file available in the package repository, and the packages providing
11865 the requested firmware file(s) is installed. I have proposed to do
11866 something similar in debian-installer (BTS report
11867 &lt;a href=&quot;http://bugs.debian.org/655507&quot;&gt;#655507&lt;/a&gt;), to allow PXE
11868 installs of Debian to handle firmware installation better. Run the
11869 script as root from the command line to fetch and install the needed
11870 firmware packages.&lt;/p&gt;
11871
11872 &lt;p&gt;Debian Edu provide PXE installation of Debian out of the box, and
11873 because some machines need firmware to get their network cards
11874 working, the installation initrd some times need extra firmware
11875 included to be able to install at all. To fill the PXE installation
11876 initrd with extra firmware, the
11877 &lt;tt&gt;/usr/share/debian-edu-config/tools/pxe-addfirmware&lt;/tt&gt; script is
11878 provided. Again, just run it as root on the command line to fill the
11879 PXE initrd with firmware packages.&lt;/p&gt;
11880
11881 &lt;p&gt;Last, some LTSP clients might also need firmware to get their
11882 network cards working. For this,
11883 &lt;tt&gt;/usr/share/debian-edu-config/tools/ltsp-addfirmware&lt;/tt&gt; is
11884 provided to update the LTSP initrd with firmware blobs. It is used
11885 the same way as the other firmware related tools.&lt;/p&gt;
11886
11887 &lt;p&gt;At the moment, we do not run any of these during installation. We
11888 do not know if this is acceptable for the local administrator to use
11889 non-free software, and it is their choice.&lt;/p&gt;
11890
11891 &lt;p&gt;We plan to release beta3 this weekend. You might want to give it a
11892 try.&lt;/p&gt;
11893 </description>
11894 </item>
11895
11896 <item>
11897 <title>Setting up a new school with Debian Edu/Squeeze</title>
11898 <link>http://people.skolelinux.org/pere/blog/Setting_up_a_new_school_with_Debian_Edu_Squeeze.html</link>
11899 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Setting_up_a_new_school_with_Debian_Edu_Squeeze.html</guid>
11900 <pubDate>Wed, 25 Jan 2012 21:00:00 +0100</pubDate>
11901 <description>&lt;p&gt;The next version of &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu
11902 / Skolelinux&lt;/a&gt; will include a new tool
11903 &lt;tt&gt;sitesummary2ldapdhcp&lt;/tt&gt;, which can be used to quickly set up all
11904 the computers in a school without much manual labour. Here is a short
11905 summary on how to use it to set up a new school.&lt;/p&gt;
11906
11907 &lt;p&gt;First, install a combined Main Server and Thin Client Server as the
11908 central server in the network. Next, PXE boot all the client machines
11909 as thin clients and wait 5 minutes after the last client booted to
11910 allow the clients to report their existence to the central server. When
11911 this is done, log on to the central server and run
11912 &lt;tt&gt;sitesummary2ldapdhcp -a&lt;/tt&gt; in the &lt;tt&gt;konsole&lt;/tt&gt; to use the
11913 collected information to generate system objects in LDAP. The output
11914 will look similar to this:&lt;/p&gt;
11915
11916 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
11917 % sitesummary2ldapdhcp -a
11918 info: Updating machine tjener.intern [10.0.2.2] id ether-00:01:02:03:04:05.
11919 info: Create GOsa machine for auto-mac-00-01-02-03-04-06 [10.0.16.20] id ether-00:01:02:03:04:06.
11920
11921 Enter password if you want to activate these changes, and ^c to abort.
11922
11923 Connecting to LDAP as cn=admin,ou=ldap-access,dc=skole,dc=skolelinux,dc=no
11924 enter password: *******
11925 %
11926 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
11927
11928 &lt;p&gt;After providing the LDAP administrative password (the same as the
11929 root password set during installation), the LDAP database will be
11930 populated with system objects for each PXE booted machine with
11931 automatically generated names. The final step to set up the school is
11932 then to log into &lt;a href=&quot;https://oss.gonicus.de/labs/gosa/&quot;&gt;GOsa&lt;/a&gt;,
11933 the web based user, group and system administration system to change
11934 system names, add systems to the correct host groups and finally
11935 enable DHCP and DNS for the systems. All clients that should be used
11936 as diskless workstations should be added to the workstation-hosts
11937 group. After this is done, all computers can be booted again via PXE
11938 and get their assigned names and group based configuration
11939 automatically.&lt;/p&gt;
11940
11941 &lt;p&gt;We plan to release beta3 with the updated version of this feature
11942 enabled this weekend. You might want to give it a try.&lt;/p&gt;
11943
11944 &lt;p&gt;Update 2012-01-28: When calling sitesummary2ldapdhcp to add new
11945 hosts, one need to add the option -a. I forgot to mention this in my
11946 original text, and have added it to the text now.&lt;/p&gt;
11947 </description>
11948 </item>
11949
11950 <item>
11951 <title>Changing the default Iceweasel start page in Debian Edu/Squeeze</title>
11952 <link>http://people.skolelinux.org/pere/blog/Changing_the_default_Iceweasel_start_page_in_Debian_Edu_Squeeze.html</link>
11953 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Changing_the_default_Iceweasel_start_page_in_Debian_Edu_Squeeze.html</guid>
11954 <pubDate>Tue, 10 Jan 2012 15:30:00 +0100</pubDate>
11955 <description>&lt;p&gt;In the Squeeze version of
11956 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt; soon
11957 to be released, users of the system will get their default browser
11958 start page set from LDAP, allowing the system administrator to point
11959 all users to the school web page by updating one setting in LDAP. In
11960 addition to setting the default start page when a machine boots, users
11961 are shown the same page as a welcome page when they log in for the
11962 first time.&lt;/p&gt;
11963
11964 &lt;p&gt;The LDAP object dc=skole,dc=skolelinux,dc=no have an attribute
11965 labeledURI with &quot;http://www/ LDAP for Debian Edu/Skolelinux&quot; as the
11966 default content. By changing this value to another URL, all users get
11967 to see the page behind this new URL.&lt;/p&gt;
11968
11969 &lt;p&gt;An easy way to update it is by using the ldapvi tool. It can be
11970 called as &quot;&lt;tt&gt;ldapvi -ZD &#39;(cn=admin)&#39;&lt;/tt&gt;&#39; to update LDAP with the
11971 new setting.&lt;/p&gt;
11972
11973 &lt;p&gt;We have written the code to adjust the default start page and show
11974 the welcome page, and I wonder if there is an easier way to do this
11975 from within Iceweasel instead.&lt;/p&gt;
11976 </description>
11977 </item>
11978
11979 <item>
11980 <title>Second beta version of Debian Edu / Skolelinux based on Squeeze</title>
11981 <link>http://people.skolelinux.org/pere/blog/Second_beta_version_of_Debian_Edu___Skolelinux_based_on_Squeeze.html</link>
11982 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Second_beta_version_of_Debian_Edu___Skolelinux_based_on_Squeeze.html</guid>
11983 <pubDate>Sat, 7 Jan 2012 22:50:00 +0100</pubDate>
11984 <description>&lt;p&gt;I am happy to announce that today we managed to wrap up and publish
11985 the second beta version of
11986 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt;. If
11987 you want to test a LDAP backed Kerberos server with out of the box PXE
11988 configuration for running diskless machines and installing new
11989 machines, check it out. If you need a software solution for your
11990 school, check it out too. The full announcement is
11991 &lt;a href=&quot;http://lists.debian.org/debian-edu-announce/2012/01/msg00000.html&quot;&gt;available&lt;/a&gt;
11992 on the project announcement list.&lt;/p&gt;
11993 </description>
11994 </item>
11995
11996 <item>
11997 <title>Fixing an hanging debian installer for Debian Edu</title>
11998 <link>http://people.skolelinux.org/pere/blog/Fixing_an_hanging_debian_installer_for_Debian_Edu.html</link>
11999 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Fixing_an_hanging_debian_installer_for_Debian_Edu.html</guid>
12000 <pubDate>Tue, 3 Jan 2012 11:25:00 +0100</pubDate>
12001 <description>&lt;p&gt;During christmas, I have been working getting the next version of
12002 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux&lt;/a&gt; ready
12003 for release. The initial problem I looked at was particularly
12004 interesting.&lt;/p&gt;
12005
12006 &lt;P&gt;The installer would hang at the end when it was doing it
12007 post-installation configuration, and whatevery I did to try to find
12008 the cause and fix it always worked while I tested it, but never when I
12009 integrated it into the installer and ran the installation from
12010 scratch. I would try to restart processes, close file descriptors,
12011 remove or create files, and the installer would always unblock and
12012 wrap up its tasks.&lt;/p&gt;
12013
12014 &lt;p&gt;Eventually the cause was found. The kernel was simply running out
12015 of entropy, causing the Kerberos setup to hang waiting for more.
12016 Pressing keys was adding entropy to the kernel, and thus all my tries
12017 to fix the problem worked not because what I was typing to fix it, but
12018 because I was typing.&lt;/P&gt;
12019
12020 &lt;p&gt;The fix I implemented was to add a background process looking at
12021 the level of entropy in the kernel (by checking
12022 /proc/sys/kernel/random/entropy_avail), and if it was too small, the
12023 installer will flush the kernel file buffers and do &#39;find /&#39; to
12024 generate some disk IO. Disk IO generate entropy in the kernel, and is
12025 one of the few things that can be initated from within the system to
12026 generate entropy.&lt;/p&gt;
12027
12028 &lt;p&gt;The fix is in
12029 &lt;a href=&quot;http://wiki.debian.org/DebianEdu/Documentation/Squeeze/Installation&quot;&gt;beta1
12030 of the Debian Edu/Squeeze&lt;/a&gt; version, and we
12031 &lt;a href=&quot;http://wiki.debian.org/DebianEdu&quot;&gt;welcome more testers and
12032 developers&lt;/a&gt;. We plan to release beta2 this weekend.&lt;/p&gt;
12033 </description>
12034 </item>
12035
12036 <item>
12037 <title>Automatically upgrading server firmware on Dell PowerEdge</title>
12038 <link>http://people.skolelinux.org/pere/blog/Automatically_upgrading_server_firmware_on_Dell_PowerEdge.html</link>
12039 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Automatically_upgrading_server_firmware_on_Dell_PowerEdge.html</guid>
12040 <pubDate>Mon, 21 Nov 2011 12:00:00 +0100</pubDate>
12041 <description>&lt;p&gt;At work we have heaps of servers. I believe the total count is
12042 around 1000 at the moment. To be able to get help from the vendors
12043 when something go wrong, we want to keep the firmware on the servers
12044 up to date. If the firmware isn&#39;t the latest and greatest, the
12045 vendors typically refuse to start debugging any problems until the
12046 firmware is upgraded. So before every reboot, we want to upgrade the
12047 firmware, and we would really like everyone handling servers at the
12048 university to do this themselves when they plan to reboot a machine.
12049 For that to happen we at the unix server admin group need to provide
12050 the tools to do so.&lt;/p&gt;
12051
12052 &lt;p&gt;To make firmware upgrading easier, I am working on a script to
12053 fetch and install the latest firmware for the servers we got. Most of
12054 our hardware are from Dell and HP, so I have focused on these servers
12055 so far. This blog post is about the Dell part.&lt;/P&gt;
12056
12057 &lt;p&gt;On the Dell FTP site I was lucky enough to find
12058 &lt;a href=&quot;ftp://ftp.us.dell.com/catalog/Catalog.xml.gz&quot;&gt;an XML file&lt;/a&gt;
12059 with firmware information for all 11th generation servers, listing
12060 which firmware should be used on a given model and where on the FTP
12061 site I can find it. Using a simple perl XML parser I can then
12062 download the shell scripts Dell provides to do firmware upgrades from
12063 within Linux and reboot when all the firmware is primed and ready to
12064 be activated on the first reboot.&lt;/p&gt;
12065
12066 &lt;p&gt;This is the Dell related fragment of the perl code I am working on.
12067 Are there anyone working on similar tools for firmware upgrading all
12068 servers at a site? Please get in touch and lets share resources.&lt;/p&gt;
12069
12070 &lt;p&gt;&lt;pre&gt;
12071 #!/usr/bin/perl
12072 use strict;
12073 use warnings;
12074 use File::Temp qw(tempdir);
12075 BEGIN {
12076 # Install needed RHEL packages if missing
12077 my %rhelmodules = (
12078 &#39;XML::Simple&#39; =&gt; &#39;perl-XML-Simple&#39;,
12079 );
12080 for my $module (keys %rhelmodules) {
12081 eval &quot;use $module;&quot;;
12082 if ($@) {
12083 my $pkg = $rhelmodules{$module};
12084 system(&quot;yum install -y $pkg&quot;);
12085 eval &quot;use $module;&quot;;
12086 }
12087 }
12088 }
12089 my $errorsto = &#39;pere@hungry.com&#39;;
12090
12091 upgrade_dell();
12092
12093 exit 0;
12094
12095 sub run_firmware_script {
12096 my ($opts, $script) = @_;
12097 unless ($script) {
12098 print STDERR &quot;fail: missing script name\n&quot;;
12099 exit 1
12100 }
12101 print STDERR &quot;Running $script\n\n&quot;;
12102
12103 if (0 == system(&quot;sh $script $opts&quot;)) { # FIXME correct exit code handling
12104 print STDERR &quot;success: firmware script ran succcessfully\n&quot;;
12105 } else {
12106 print STDERR &quot;fail: firmware script returned error\n&quot;;
12107 }
12108 }
12109
12110 sub run_firmware_scripts {
12111 my ($opts, @dirs) = @_;
12112 # Run firmware packages
12113 for my $dir (@dirs) {
12114 print STDERR &quot;info: Running scripts in $dir\n&quot;;
12115 opendir(my $dh, $dir) or die &quot;Unable to open directory $dir: $!&quot;;
12116 while (my $s = readdir $dh) {
12117 next if $s =~ m/^\.\.?/;
12118 run_firmware_script($opts, &quot;$dir/$s&quot;);
12119 }
12120 closedir $dh;
12121 }
12122 }
12123
12124 sub download {
12125 my $url = shift;
12126 print STDERR &quot;info: Downloading $url\n&quot;;
12127 system(&quot;wget --quiet \&quot;$url\&quot;&quot;);
12128 }
12129
12130 sub upgrade_dell {
12131 my @dirs;
12132 my $product = `dmidecode -s system-product-name`;
12133 chomp $product;
12134
12135 if ($product =~ m/PowerEdge/) {
12136
12137 # on RHEL, these pacakges are needed by the firwmare upgrade scripts
12138 system(&#39;yum install -y compat-libstdc++-33.i686 libstdc++.i686 libxml2.i686 procmail&#39;);
12139
12140 my $tmpdir = tempdir(
12141 CLEANUP =&gt; 1
12142 );
12143 chdir($tmpdir);
12144 fetch_dell_fw(&#39;catalog/Catalog.xml.gz&#39;);
12145 system(&#39;gunzip Catalog.xml.gz&#39;);
12146 my @paths = fetch_dell_fw_list(&#39;Catalog.xml&#39;);
12147 # -q is quiet, disabling interactivity and reducing console output
12148 my $fwopts = &quot;-q&quot;;
12149 if (@paths) {
12150 for my $url (@paths) {
12151 fetch_dell_fw($url);
12152 }
12153 run_firmware_scripts($fwopts, $tmpdir);
12154 } else {
12155 print STDERR &quot;error: Unsupported Dell model &#39;$product&#39;.\n&quot;;
12156 print STDERR &quot;error: Please report to $errorsto.\n&quot;;
12157 }
12158 chdir(&#39;/&#39;);
12159 } else {
12160 print STDERR &quot;error: Unsupported Dell model &#39;$product&#39;.\n&quot;;
12161 print STDERR &quot;error: Please report to $errorsto.\n&quot;;
12162 }
12163 }
12164
12165 sub fetch_dell_fw {
12166 my $path = shift;
12167 my $url = &quot;ftp://ftp.us.dell.com/$path&quot;;
12168 download($url);
12169 }
12170
12171 # Using ftp://ftp.us.dell.com/catalog/Catalog.xml.gz, figure out which
12172 # firmware packages to download from Dell. Only work for Linux
12173 # machines and 11th generation Dell servers.
12174 sub fetch_dell_fw_list {
12175 my $filename = shift;
12176
12177 my $product = `dmidecode -s system-product-name`;
12178 chomp $product;
12179 my ($mybrand, $mymodel) = split(/\s+/, $product);
12180
12181 print STDERR &quot;Finding firmware bundles for $mybrand $mymodel\n&quot;;
12182
12183 my $xml = XMLin($filename);
12184 my @paths;
12185 for my $bundle (@{$xml-&gt;{SoftwareBundle}}) {
12186 my $brand = $bundle-&gt;{TargetSystems}-&gt;{Brand}-&gt;{Display}-&gt;{content};
12187 my $model = $bundle-&gt;{TargetSystems}-&gt;{Brand}-&gt;{Model}-&gt;{Display}-&gt;{content};
12188 my $oscode;
12189 if (&quot;ARRAY&quot; eq ref $bundle-&gt;{TargetOSes}-&gt;{OperatingSystem}) {
12190 $oscode = $bundle-&gt;{TargetOSes}-&gt;{OperatingSystem}[0]-&gt;{osCode};
12191 } else {
12192 $oscode = $bundle-&gt;{TargetOSes}-&gt;{OperatingSystem}-&gt;{osCode};
12193 }
12194 if ($mybrand eq $brand &amp;&amp; $mymodel eq $model &amp;&amp; &quot;LIN&quot; eq $oscode)
12195 {
12196 @paths = map { $_-&gt;{path} } @{$bundle-&gt;{Contents}-&gt;{Package}};
12197 }
12198 }
12199 for my $component (@{$xml-&gt;{SoftwareComponent}}) {
12200 my $componenttype = $component-&gt;{ComponentType}-&gt;{value};
12201
12202 # Drop application packages, only firmware and BIOS
12203 next if &#39;APAC&#39; eq $componenttype;
12204
12205 my $cpath = $component-&gt;{path};
12206 for my $path (@paths) {
12207 if ($cpath =~ m%/$path$%) {
12208 push(@paths, $cpath);
12209 }
12210 }
12211 }
12212 return @paths;
12213 }
12214 &lt;/pre&gt;
12215
12216 &lt;p&gt;The code is only tested on RedHat Enterprise Linux, but I suspect
12217 it could work on other platforms with some tweaking. Anyone know a
12218 index like Catalog.xml is available from HP for HP servers? At the
12219 moment I maintain a similar list manually and it is quickly getting
12220 outdated.&lt;/p&gt;
12221 </description>
12222 </item>
12223
12224 <item>
12225 <title>Free e-book kiosk for the public libraries?</title>
12226 <link>http://people.skolelinux.org/pere/blog/Free_e_book_kiosk_for_the_public_libraries_.html</link>
12227 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Free_e_book_kiosk_for_the_public_libraries_.html</guid>
12228 <pubDate>Fri, 7 Oct 2011 19:20:00 +0200</pubDate>
12229 <description>&lt;p&gt;Here in Norway the public libraries are debating with the
12230 publishing houses how to handle electronic books. Surprisingly, the
12231 libraries seem to be willing to accept digital restriction mechanisms
12232 (DRM) on books and renting e-books with artificial scarcity from the
12233 publishing houses. Time limited renting (2-3 years) is one proposed
12234 model, and only allowing X borrowers for each book is another.
12235 Personally I find it amazing that libraries are even considering such
12236 models.&lt;/p&gt;
12237
12238 &lt;p&gt;Anyway, while reading &lt;a href=&quot;http://boklaben.no/?p=220&quot;&gt;part of
12239 this debate&lt;/a&gt;, it occurred to me that someone should present a more
12240 sensible approach to the libraries, to allow its borrowers to get used
12241 to a better model. The idea is simple:&lt;/p&gt;
12242
12243 &lt;p&gt;Create a computer system for the libraries, either in the form of a
12244 Live DVD or a installable distribution, that provide a simple kiosk
12245 solution to hand out free e-books. As a start, the books distributed
12246 by &lt;a href=&quot;http://www.gutenberg.org/&quot;&gt;Project Gutenberg&lt;/a&gt; (about
12247 36,000 books), &lt;a href=&quot;http://runeberg.org/&quot;&gt;Project Runenberg&lt;/a&gt;
12248 (1149 books) and &lt;a href=&quot;http://www.archive.org/details/texts&quot;&gt;The
12249 Internet Archive&lt;/a&gt; (3,033,748 books) could be included, but any book
12250 where the copyright has expired or with a free licence could be
12251 distributed.&lt;/p&gt;
12252
12253 &lt;p&gt;The computer system would make it easy to:&lt;/p&gt;
12254
12255 &lt;ul&gt;
12256
12257 &lt;li&gt;Copy e-books into a USB stick, reading tablets, cell phones and
12258 other relevant equipment.&lt;/li&gt;
12259
12260 &lt;li&gt;Show the books for reading on the the screen in the library.&lt;/li&gt;
12261
12262 &lt;/ul&gt;
12263
12264 &lt;p&gt;In addition to such kiosk solution, there should probably be a web
12265 site as well to allow people easy access to these books without
12266 visiting the library. The site would be the distribution point for
12267 the kiosk systems, which would connect regularly to fetch any new
12268 books available.&lt;/p&gt;
12269
12270 &lt;p&gt;Are there anyone working on a system like this? I guess it would
12271 fit any library in the world, and not just the Norwegian public
12272 libraries. :)&lt;/p&gt;
12273 </description>
12274 </item>
12275
12276 <item>
12277 <title>Ripping problematic DVDs using dvdbackup and genisoimage</title>
12278 <link>http://people.skolelinux.org/pere/blog/Ripping_problematic_DVDs_using_dvdbackup_and_genisoimage.html</link>
12279 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Ripping_problematic_DVDs_using_dvdbackup_and_genisoimage.html</guid>
12280 <pubDate>Sat, 17 Sep 2011 20:20:00 +0200</pubDate>
12281 <description>&lt;p&gt;For convenience, I want to store copies of all my DVDs on my file
12282 server. It allow me to save shelf space flat while still having my
12283 movie collection easily available. It also make it possible to let
12284 the kids see their favourite DVDs without wearing the physical copies
12285 down. I prefer to store the DVDs as ISOs to keep the DVD menu and
12286 subtitle options intact. It also ensure that the entire film is one
12287 file on the disk. As this is for personal use, the ripping is
12288 perfectly legal here in Norway.&lt;/p&gt;
12289
12290 &lt;p&gt;Normally I rip the DVDs using dd like this:&lt;/p&gt;
12291
12292 &lt;blockquote&gt;&lt;pre&gt;
12293 #!/bin/sh
12294 # apt-get install lsdvd
12295 title=$(lsdvd 2&gt;/dev/null|awk &#39;/Disc Title: / {print $3}&#39;)
12296 dd if=/dev/dvd of=/storage/dvds/$title.iso bs=1M
12297 &lt;/pre&gt;&lt;/blockquote&gt;
12298
12299 &lt;p&gt;But some DVDs give a input/output error when I read it, and I have
12300 been looking for a better alternative. I have no idea why this I/O
12301 error occur, but suspect my DVD drive, the Linux kernel driver or
12302 something fishy with the DVDs in question. Or perhaps all three.&lt;/p&gt;
12303
12304 &lt;p&gt;Anyway, I believe I found a solution today using dvdbackup and
12305 genisoimage. This script gave me a working ISO for a problematic
12306 movie by first extracting the DVD file system and then re-packing it
12307 back as an ISO.
12308
12309 &lt;blockquote&gt;&lt;pre&gt;
12310 #!/bin/sh
12311 # apt-get install lsdvd dvdbackup genisoimage
12312 set -e
12313 tmpdir=/storage/dvds/
12314 title=$(lsdvd 2&gt;/dev/null|awk &#39;/Disc Title: / {print $3}&#39;)
12315 dvdbackup -i /dev/dvd -M -o $tmpdir -n$title
12316 genisoimage -dvd-video -o $tmpdir/$title.iso $tmpdir/$title
12317 rm -rf $tmpdir/$title
12318 &lt;/pre&gt;&lt;/blockquote&gt;
12319
12320 &lt;p&gt;Anyone know of a better way available in Debian/Squeeze?&lt;/p&gt;
12321
12322 &lt;p&gt;Update 2011-09-18: I got a tip from Konstantin Khomoutov about the
12323 readom program from the wodim package. It is specially written to
12324 read optical media, and is called like this: &lt;tt&gt;readom dev=/dev/dvd
12325 f=image.iso&lt;/tt&gt;. It got 6 GB along with the problematic Cars DVD
12326 before it failed, and failed right away with a Timmy Time DVD.&lt;/p&gt;
12327
12328 &lt;p&gt;Next, I got a tip from Bastian Blank about
12329 &lt;a href=&quot;http://bblank.thinkmo.de/blog/new-software-python-dvdvideo&quot;&gt;his
12330 program python-dvdvideo&lt;/a&gt;, which seem to be just what I am looking
12331 for. Tested it with my problematic Timmy Time DVD, and it succeeded
12332 creating a ISO image. The git source built and installed just fine in
12333 Squeeze, so I guess this will be my tool of choice in the future.&lt;/p&gt;
12334 </description>
12335 </item>
12336
12337 <item>
12338 <title>How is booting into runlevel 1 different from single user boots?</title>
12339 <link>http://people.skolelinux.org/pere/blog/How_is_booting_into_runlevel_1_different_from_single_user_boots_.html</link>
12340 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/How_is_booting_into_runlevel_1_different_from_single_user_boots_.html</guid>
12341 <pubDate>Thu, 4 Aug 2011 12:40:00 +0200</pubDate>
12342 <description>&lt;p&gt;Wouter Verhelst have some
12343 &lt;a href=&quot;http://grep.be/blog/en/retorts/pere_kubuntu_boot&quot;&gt;interesting
12344 comments and opinions&lt;/a&gt; on my blog post on
12345 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/What_should_start_from__etc_rcS_d__in_Debian____almost_nothing.html&quot;&gt;the
12346 need to clean up /etc/rcS.d/ in Debian&lt;/a&gt; and my blog post about
12347 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/What_is_missing_in_the_Debian_desktop__or_why_my_parents_use_Kubuntu.html&quot;&gt;the
12348 default KDE desktop in Debian&lt;/a&gt;. I only have time to address one
12349 small piece of his comment now, and though it best to address the
12350 misunderstanding he bring forward:&lt;/p&gt;
12351
12352 &lt;p&gt;&lt;blockquote&gt;
12353 Currently, a system admin has four options: [...] boot to a
12354 single-user system (by adding &#39;single&#39; to the kernel command line;
12355 this runs rcS and rc1 scripts)
12356 &lt;/blockquote&gt;&lt;/p&gt;
12357
12358 &lt;p&gt;This make me believe Wouter believe booting into single user mode
12359 and booting into runlevel 1 is the same. I am not surprised he
12360 believe this, because it would make sense and is a quite sensible
12361 thing to believe. But because the boot in Debian is slightly broken,
12362 runlevel 1 do not work properly and it isn&#39;t the same as single user
12363 mode. I&#39;ll try to explain what is actually happing, but it is a bit
12364 hard to explain.&lt;/p&gt;
12365
12366 &lt;p&gt;Single user mode is defined like this in /etc/inittab:
12367 &quot;&lt;tt&gt;~~:S:wait:/sbin/sulogin&lt;/tt&gt;&quot;. This means the only thing that is
12368 executed in single user mode is sulogin. Single user mode is a boot
12369 state &quot;between&quot; the runlevels, and when booting into single user mode,
12370 only the scripts in /etc/rcS.d/ are executed before the init process
12371 enters the single user state. When switching to runlevel 1, the state
12372 is in fact not ending in runlevel 1, but it passes through runlevel 1
12373 and end up in the single user mode (see /etc/rc1.d/S03single, which
12374 runs &quot;init -t1 S&quot; to switch to single user mode at the end of runlevel
12375 1. It is confusing that the &#39;S&#39; (single user) init mode is not the
12376 mode enabled by /etc/rcS.d/ (which is more like the initial boot
12377 mode).&lt;/p&gt;
12378
12379 &lt;p&gt;This summary might make it clearer. When booting for the first
12380 time into single user mode, the following commands are executed:
12381 &quot;&lt;tt&gt;/etc/init.d/rc S; /sbin/sulogin&lt;/tt&gt;&quot;. When booting into
12382 runlevel 1, the following commands are executed: &quot;&lt;tt&gt;/etc/init.d/rc
12383 S; /etc/init.d/rc 1; /sbin/sulogin&lt;/tt&gt;&quot;. A problem show up when
12384 trying to continue after visiting single user mode. Not all services
12385 are started again as they should, causing the machine to end up in an
12386 unpredicatble state. This is why Debian admins recommend rebooting
12387 after visiting single user mode.&lt;/p&gt;
12388
12389 &lt;p&gt;A similar problem with runlevel 1 is caused by the amount of
12390 scripts executed from /etc/rcS.d/. When switching from say runlevel 2
12391 to runlevel 1, the services started from /etc/rcS.d/ are not properly
12392 stopped when passing through the scripts in /etc/rc1.d/, and not
12393 started again when switching away from runlevel 1 to the runlevels
12394 2-5. I believe the problem is best fixed by moving all the scripts
12395 out of /etc/rcS.d/ that are not &lt;strong&gt;required&lt;/strong&gt; to get a
12396 functioning single user mode during boot.&lt;/p&gt;
12397
12398 &lt;p&gt;I have spent several years investigating the Debian boot system,
12399 and discovered this problem a few years ago. I suspect it originates
12400 from when sysvinit was introduced into Debian, a long time ago.&lt;/p&gt;
12401 </description>
12402 </item>
12403
12404 <item>
12405 <title>What should start from /etc/rcS.d/ in Debian? - almost nothing</title>
12406 <link>http://people.skolelinux.org/pere/blog/What_should_start_from__etc_rcS_d__in_Debian____almost_nothing.html</link>
12407 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/What_should_start_from__etc_rcS_d__in_Debian____almost_nothing.html</guid>
12408 <pubDate>Sat, 30 Jul 2011 14:00:00 +0200</pubDate>
12409 <description>&lt;p&gt;In the Debian boot system, several packages include scripts that
12410 are started from /etc/rcS.d/. In fact, there is a bite more of them
12411 than make sense, and this causes a few problems. What kind of
12412 problems, you might ask. There are at least two problems. The first
12413 is that it is not possible to recover a machine after switching to
12414 runlevel 1. One need to actually reboot to get the machine back to
12415 the expected state. The other is that single user boot will sometimes
12416 run into problems because some of the subsystems are activated before
12417 the root login is presented, causing problems when trying to recover a
12418 machine from a problem in that subsystem. A minor additional point is
12419 that moving more scripts out of rcS.d/ and into the other rc#.d/
12420 directories will increase the amount of scripts that can run in
12421 parallel during boot, and thus decrease the boot time.&lt;/p&gt;
12422
12423 &lt;p&gt;So, which scripts should start from rcS.d/. In short, only the
12424 scripts that _have_ to execute before the root login prompt is
12425 presented during a single user boot should go there. Everything else
12426 should go into the numeric runlevels. This means things like
12427 lm-sensors, fuse and x11-common should not run from rcS.d, but from
12428 the numeric runlevels. Today in Debian, there are around 115 init.d
12429 scripts that are started from rcS.d/, and most of them should be moved
12430 out. Do your package have one of them? Please help us make single
12431 user and runlevel 1 better by moving it.&lt;/p&gt;
12432
12433 &lt;p&gt;Scripts setting up the screen, keyboard, system partitions
12434 etc. should still be started from rcS.d/, but there is for example no
12435 need to have the network enabled before the single user login prompt
12436 is presented.&lt;/p&gt;
12437
12438 &lt;p&gt;As always, things are not so easy to fix as they sound. To keep
12439 Debian systems working while scripts migrate and during upgrades, the
12440 scripts need to be moved from rcS.d/ to rc2.d/ in reverse dependency
12441 order, ie the scripts that nothing in rcS.d/ depend on can be moved,
12442 and the next ones can only be moved when their dependencies have been
12443 moved first. This migration must be done sequentially while we ensure
12444 that the package system upgrade packages in the right order to keep
12445 the system state correct. This will require some coordination when it
12446 comes to network related packages, but most of the packages with
12447 scripts that should migrate do not have anything in rcS.d/ depending
12448 on them. Some packages have already been updated, like the sudo
12449 package, while others are still left to do. I wish I had time to work
12450 on this myself, but real live constrains make it unlikely that I will
12451 find time to push this forward.&lt;/p&gt;
12452 </description>
12453 </item>
12454
12455 <item>
12456 <title>What is missing in the Debian desktop, or why my parents use Kubuntu</title>
12457 <link>http://people.skolelinux.org/pere/blog/What_is_missing_in_the_Debian_desktop__or_why_my_parents_use_Kubuntu.html</link>
12458 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/What_is_missing_in_the_Debian_desktop__or_why_my_parents_use_Kubuntu.html</guid>
12459 <pubDate>Fri, 29 Jul 2011 08:10:00 +0200</pubDate>
12460 <description>&lt;p&gt;While at Debconf11, I have several times during discussions
12461 mentioned the issues I believe should be improved in Debian for its
12462 desktop to be useful for more people. The use case for this is my
12463 parents, which are currently running Kubuntu which solve the
12464 issues.&lt;/p&gt;
12465
12466 &lt;p&gt;I suspect these four missing features are not very hard to
12467 implement. After all, they are present in Ubuntu, so if we wanted to
12468 do this in Debian we would have a source.&lt;/p&gt;
12469
12470 &lt;ol&gt;
12471
12472 &lt;li&gt;&lt;strong&gt;Simple GUI based upgrade of packages.&lt;/strong&gt; When there
12473 are new packages available for upgrades, a icon in the KDE status bar
12474 indicate this, and clicking on it will activate the simple upgrade
12475 tool to handle it. I have no problem guiding both of my parents
12476 through the process over the phone. If a kernel reboot is required,
12477 this too is indicated by the status bars and the upgrade tool. Last
12478 time I checked, nothing with the same features was working in KDE in
12479 Debian.&lt;/li&gt;
12480
12481 &lt;li&gt;&lt;strong&gt;Simple handling of missing Firefox browser
12482 plugins.&lt;/strong&gt; When the browser encounter a MIME type it do not
12483 currently have a handler for, it will ask the user if the system
12484 should search for a package that would add support for this MIME type,
12485 and if the user say yes, the APT sources will be searched for packages
12486 advertising the MIME type in their control file (visible in the
12487 Packages file in the APT archive). If one or more packages are found,
12488 it is a simple click of the mouse to add support for the missing mime
12489 type. If the package require the user to accept some non-free
12490 license, this is explained to the user. The entire process make it
12491 more clear to the user why something do not work in the browser, and
12492 make the chances higher for the user to blame the web page authors and
12493 not the browser for any missing features.&lt;/li&gt;
12494
12495 &lt;li&gt;&lt;strong&gt;Simple handling of missing multimedia codec/format
12496 handlers.&lt;/strong&gt; When the media players encounter a format or codec
12497 it is not supporting, a dialog pop up asking the user if the system
12498 should search for a package that would add support for it. This
12499 happen with things like MP3, Windows Media or H.264. The selection
12500 and installation procedure is very similar to the Firefox browser
12501 plugin handling. This is as far as I know implemented using a
12502 gstreamer hook. The end result is that the user easily get access to
12503 the codecs that are present from the APT archives available, while
12504 explaining more on why a given format is unsupported by Ubuntu.&lt;/li&gt;
12505
12506 &lt;li&gt;&lt;strong&gt;Better browser handling of some MIME types.&lt;/strong&gt; When
12507 displaying a text/plain file in my Debian browser, it will propose to
12508 start emacs to show it. If I remember correctly, when doing the same
12509 in Kunbutu it show the file as a text file in the browser. At least I
12510 know Opera will show text files within the browser. I much prefer the
12511 latter behaviour.&lt;/li&gt;
12512
12513 &lt;/ol&gt;
12514
12515 &lt;p&gt;There are other nice features as well, like the simplified suite
12516 upgrader, but given that I am the one mostly doing the dist-upgrade,
12517 it do not matter much.&lt;/p&gt;
12518
12519 &lt;p&gt;I really hope we could get these features in place for the next
12520 Debian release. It would require the coordinated effort of several
12521 maintainers, but would make the end user experience a lot better.&lt;/p&gt;
12522 </description>
12523 </item>
12524
12525 <item>
12526 <title>Perl modules used by FixMyStreet which are missing in Debian/Squeeze</title>
12527 <link>http://people.skolelinux.org/pere/blog/Perl_modules_used_by_FixMyStreet_which_are_missing_in_Debian_Squeeze.html</link>
12528 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Perl_modules_used_by_FixMyStreet_which_are_missing_in_Debian_Squeeze.html</guid>
12529 <pubDate>Tue, 26 Jul 2011 12:25:00 +0200</pubDate>
12530 <description>&lt;p&gt;The Norwegian &lt;a href=&quot;http://www.fiksgatami.no/&quot;&gt;FiksGataMi&lt;/A&gt;
12531 site is build on Debian/Squeeze, and this platform was chosen because
12532 I am most familiar with Debian (being a Debian Developer for around 10
12533 years) because it is the latest stable Debian release which should get
12534 security support for a few years.&lt;/p&gt;
12535
12536 &lt;p&gt;The web service is written in Perl, and depend on some perl modules
12537 that are missing in Debian at the moment. It would be great if these
12538 modules were added to the Debian archive, allowing anyone to set up
12539 their own &lt;a href=&quot;http://www.fixmystreet.com&quot;&gt;FixMyStreet&lt;/a&gt; clone
12540 in their own country using only Debian packages. The list of modules
12541 missing in Debian/Squeeze isn&#39;t very long, and I hope the perl group
12542 will find time to package the 12 modules Catalyst::Plugin::SmartURI,
12543 Catalyst::Plugin::Unicode::Encoding, Catalyst::View::TT, Devel::Hide,
12544 Sort::Key, Statistics::Distributions, Template::Plugin::Comma,
12545 Template::Plugin::DateTime::Format, Term::Size::Any, Term::Size::Perl,
12546 URI::SmartURI and Web::Scraper to make the maintenance of FixMyStreet
12547 easier in the future.&lt;/p&gt;
12548
12549 &lt;p&gt;Thanks to the great tools in Debian, getting the missing modules
12550 installed on my server was a simple call to &#39;cpan2deb Module::Name&#39;
12551 and &#39;dpkg -i&#39; to install the resulting package. But this leave me
12552 with the responsibility of tracking security problems, which I really
12553 do not have time for.&lt;/p&gt;
12554 </description>
12555 </item>
12556
12557 <item>
12558 <title>Free Software vs. proprietary softare...</title>
12559 <link>http://people.skolelinux.org/pere/blog/Free_Software_vs__proprietary_softare___.html</link>
12560 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Free_Software_vs__proprietary_softare___.html</guid>
12561 <pubDate>Mon, 20 Jun 2011 12:50:00 +0200</pubDate>
12562 <description>&lt;p&gt;Reading
12563 &lt;a href=&quot;http://blog.thingiverse.com/2011/06/20/open-source-vs-closed-source-eulas/&quot;&gt;the
12564 thingiverse blog&lt;/a&gt;, I came across two highlights of interesting
12565 parts of the
12566 &lt;a href=&quot;http://wiki.blender.org/index.php/Autodesk_EULA&quot;&gt;Autodesk&lt;/a&gt;
12567 and
12568 &lt;a href=&quot;http://blog.makezine.com/archive/2011/06/things-you-cant-do-with-the-microsoft-kinect-sdk.html&quot;&gt;Microsoft
12569 Kinect&lt;/a&gt; End User License Agreements (EULAs), which illustrates
12570 quite well why I stay away from software with EULAs. Whenever I take
12571 the time to read their content, the terms are simply unacceptable.&lt;/p&gt;
12572 </description>
12573 </item>
12574
12575 <item>
12576 <title>Experimental Open311 API for the mySociety fixmystreet system</title>
12577 <link>http://people.skolelinux.org/pere/blog/Experimental_Open311_API_for_the_mySociety_fixmystreet_system.html</link>
12578 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Experimental_Open311_API_for_the_mySociety_fixmystreet_system.html</guid>
12579 <pubDate>Sat, 30 Apr 2011 17:20:00 +0200</pubDate>
12580 <description>&lt;p&gt;Today, the first draft implementation of an
12581 &lt;a href=&quot;http://www.open311.org/&quot;&gt;Open311 API&lt;/a&gt; for the Norwegian
12582 service &lt;a href=&quot;http://www.fiksgatami.no/&quot;&gt;FiksGataMi&lt;/a&gt; started to
12583 work. It is only available on the developer server for now, and I
12584 have not tested it using any existing Open311 client (I lack the
12585 platforms needed to run the clients I have found so far), but it is
12586 able to query the database and extract a list of open and closed
12587 requests within a given category and reported to a given municipality.
12588 I believe that is a good start to create a useful service for those
12589 that want to do data mining on the requests submitted so far.&lt;/p&gt;
12590
12591 &lt;p&gt;Where is it? Visit
12592 &lt;a href=&quot;http://fiksgatami-dev.nuug.no/open311.cgi/v2/&quot;&gt;http://fiksgatami-dev.nuug.no/open311.cgi/v2/&lt;/a&gt;
12593 to have a look. Please send feedback to the
12594 &lt;a href=&quot;http://lists.nuug.no/mailman/listinfo/fiksgatami&quot;&gt;fiksgatami
12595 (at) nuug.no&lt;/a&gt; mailing list.&lt;/p&gt;
12596 </description>
12597 </item>
12598
12599 <item>
12600 <title>Initial notes on adding Open311 server API on FixMyStreet</title>
12601 <link>http://people.skolelinux.org/pere/blog/Initial_notes_on_adding_Open311_server_API_on_FixMyStreet.html</link>
12602 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Initial_notes_on_adding_Open311_server_API_on_FixMyStreet.html</guid>
12603 <pubDate>Fri, 29 Apr 2011 10:00:00 +0200</pubDate>
12604 <description>&lt;p&gt;The last few days I have spent some time trying to add support for
12605 the &lt;a href=&quot;http://www.open311.org/&quot;&gt;Open311 API&lt;/a&gt; in the
12606 &lt;a href=&quot;http://www.fiksgatami.no/&quot;&gt;Norwegian FixMyStreet service&lt;/a&gt;.
12607 Earlier I believed Open311 would be a useful API to use to submit
12608 reports to the municipalities, but when I noticed that the
12609 &lt;a href=&quot;http://fixmystreet.org.nz/&quot;&gt;New Zealand version&lt;/a&gt; of
12610 FixMyStreet had implemented Open311 on the server side, it occurred to
12611 me that this was a nice way to allow the public, press and
12612 municipalities to do data mining directly in the FixMyStreet service.
12613 Thus I went to work implementing the Open311 specification for
12614 FixMyStreet. The implementation is not yet ready, but I am starting
12615 to get a draft limping along. In the process, I have discovered a few
12616 issues with the Open311 specification.&lt;/p&gt;
12617
12618 &lt;p&gt;One obvious missing feature is the lack of natural language
12619 handling in the specification. The specification seem to assume all
12620 reports will be written in English, and do not provide a way for the
12621 receiving end to specify which languages are understood there. To be
12622 able to use the same client and submit to several Open311 receivers,
12623 it would be useful to know which language to use when writing reports.
12624 I believe the specification should be extended to allow the receivers
12625 of problem reports to specify which language they accept, and the
12626 submitter to specify which language the report is written in.
12627 Language of a text can also be automatically guessed using statistical
12628 methods, but for multi-lingual persons like myself, it is useful to
12629 know which language to use when writing a problem report. I suspect
12630 some lang=nb,nn kind of attribute would solve it.&lt;/p&gt;
12631
12632 &lt;p&gt;A key part of the Open311 API is the list of services provided,
12633 which is similar to the categories used by FixMyStreet. One issue I
12634 run into is the need to specify both name and unique identifier for
12635 each category. The specification do not state that the identifier
12636 should be numeric, but all example implementations have used numbers
12637 here. In FixMyStreet, there is no number associated with each
12638 category. As the specification do not forbid it, I will use the name
12639 as the unique identifier for now and see how open311 clients handle
12640 it.&lt;/p&gt;
12641
12642 &lt;p&gt;The report format in open311 and the report format in FixMyStreet
12643 differ in a key part. FixMyStreet have a title and a description,
12644 while Open311 only have a description and lack the title. I&#39;m not
12645 quite sure how to best handle this yet. When asking for a FixMyStreet
12646 report in Open311 format, I just merge title an description into the
12647 open311 description, but this is not going to work if the open311 API
12648 should be used for submitting new reports to FixMyStreet.&lt;/p&gt;
12649
12650 &lt;p&gt;The search feature in Open311 is missing a way to ask for problems
12651 near a geographic location. I believe this is important if one is to
12652 use Open311 as the query language for mobile units. The specification
12653 should be extended to handle this, probably using some new lat=, lon=
12654 and range= options.&lt;/p&gt;
12655
12656 &lt;p&gt;The final challenge I see is that the FixMyStreet code handle
12657 several administrations in one interface, while the Open311 API seem
12658 to assume only one administration. For FixMyStreet, this mean a
12659 report can be sent to several administrations, and the categories
12660 available depend on the location of the problem. Not quite sure how
12661 to best handle this. I&#39;ve noticed
12662 &lt;a href=&quot;http://seeclickfix.com/open311/&quot;&gt;SeeClickFix&lt;/a&gt; added
12663 latitude and longitude options to the services request, but it do not
12664 solve the problem of what to return when no location is specified.
12665 Will have to investigate this a bit more.&lt;/p&gt;
12666
12667 &lt;p&gt;My distaste for web forums have kept me from bringing these issues
12668 up with the open311 developer group. I really wish they had a email
12669 list available via &lt;a href=&quot;http://www.gmane.org/&quot;&gt;Gmane&lt;/a&gt; to use for
12670 discussions instead of only
12671 &lt;a href=&quot;http://lists.open311.org/groups/discuss&quot;&gt;a forum&lt;a/&gt;. Oh,
12672 well. That will probably resolve itself, one way or another. I&#39;ve
12673 also tried visiting the IRC channel #open311 on FreeNode, but no-one
12674 seem to reply to my questions there. This make me wonder if I just
12675 fail to understand how the open311 community work. It sure do not
12676 work like the free software project communities I am used to.&lt;/p&gt;
12677 </description>
12678 </item>
12679
12680 <item>
12681 <title>Gnash enteres Google Summer of Code 2011</title>
12682 <link>http://people.skolelinux.org/pere/blog/Gnash_enteres_Google_Summer_of_Code_2011.html</link>
12683 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Gnash_enteres_Google_Summer_of_Code_2011.html</guid>
12684 <pubDate>Wed, 6 Apr 2011 09:00:00 +0200</pubDate>
12685 <description>&lt;p&gt;&lt;a href=&quot;http://www.getgnash.org/&quot;&gt;The Gnash project&lt;/a&gt; is still
12686 the most promising solution for a Free Software Flash implementation.
12687 A few days ago the project
12688 &lt;a href=&quot;http://lists.gnu.org/archive/html/gnash-dev/2011-04/msg00011.html&quot;&gt;announced&lt;/a&gt;
12689 that it will participate in Google Summer of Code. I hope many
12690 students apply, and that some of them succeed in getting AVM2 support
12691 into Gnash.&lt;/p&gt;
12692 </description>
12693 </item>
12694
12695 <item>
12696 <title>A Norwegian FixMyStreet have kept me busy the last few weeks</title>
12697 <link>http://people.skolelinux.org/pere/blog/A_Norwegian_FixMyStreet_have_kept_me_busy_the_last_few_weeks.html</link>
12698 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/A_Norwegian_FixMyStreet_have_kept_me_busy_the_last_few_weeks.html</guid>
12699 <pubDate>Sun, 3 Apr 2011 22:50:00 +0200</pubDate>
12700 <description>&lt;p&gt;Here is a small update for my English readers. Most of my blog
12701 posts have been in Norwegian the last few weeks, so here is a short
12702 update in English.&lt;/p&gt;
12703
12704 &lt;p&gt;The kids still keep me too busy to get much free software work
12705 done, but I did manage to organise a project to get a Norwegian port
12706 of the British service
12707 &lt;a href=&quot;http://www.fixmystreet.com/&quot;&gt;FixMyStreet&lt;/a&gt; up and running,
12708 and it has been running for a month now. The entire project has been
12709 organised by me and two others. Around Christmas we gathered sponsors
12710 to fund the development work. In January I drafted a contract with
12711 &lt;a href=&quot;http://www.mysociety.org/&quot;&gt;mySociety&lt;/a&gt; on what to develop,
12712 and in February the development took place. Most of it involved
12713 converting the source to use GPS coordinates instead of British
12714 easting/northing, and the resulting code should be a lot easier to get
12715 running in any country by now. The Norwegian
12716 &lt;a href=&quot;http://www.fiksgatami.no/&quot;&gt;FiksGataMi&lt;/a&gt; is using
12717 &lt;a href=&quot;http://www.openstreetmap.org/&quot;&gt;OpenStreetmap&lt;/a&gt; as the map
12718 source and the source for administrative borders in Norway, and
12719 support for this had to be added/fixed.&lt;/p&gt;
12720
12721 &lt;p&gt;The Norwegian version went live March 3th, and we spent the weekend
12722 polishing the system before we announced it March 7th. The system is
12723 running on a KVM instance of Debian/Squeeze, and has seen almost 3000
12724 problem reports in a few weeks. Soon we hope to announce the Android
12725 and iPhone versions making it even easier to report problems with the
12726 public infrastructure.&lt;/p&gt;
12727
12728 &lt;p&gt;Perhaps something to consider for those of you in countries without
12729 such service?&lt;/p&gt;
12730 </description>
12731 </item>
12732
12733 <item>
12734 <title>Using NVD and CPE to track CVEs in locally maintained software</title>
12735 <link>http://people.skolelinux.org/pere/blog/Using_NVD_and_CPE_to_track_CVEs_in_locally_maintained_software.html</link>
12736 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Using_NVD_and_CPE_to_track_CVEs_in_locally_maintained_software.html</guid>
12737 <pubDate>Fri, 28 Jan 2011 15:40:00 +0100</pubDate>
12738 <description>&lt;p&gt;The last few days I have looked at ways to track open security
12739 issues here at my work with the University of Oslo. My idea is that
12740 it should be possible to use the information about security issues
12741 available on the Internet, and check our locally
12742 maintained/distributed software against this information. It should
12743 allow us to verify that no known security issues are forgotten. The
12744 CVE database listing vulnerabilities seem like a great central point,
12745 and by using the package lists from Debian mapped to CVEs provided by
12746 the testing security team, I believed it should be possible to figure
12747 out which security holes were present in our free software
12748 collection.&lt;/p&gt;
12749
12750 &lt;p&gt;After reading up on the topic, it became obvious that the first
12751 building block is to be able to name software packages in a unique and
12752 consistent way across data sources. I considered several ways to do
12753 this, for example coming up with my own naming scheme like using URLs
12754 to project home pages or URLs to the Freshmeat entries, or using some
12755 existing naming scheme. And it seem like I am not the first one to
12756 come across this problem, as MITRE already proposed and implemented a
12757 solution. Enter the &lt;a href=&quot;http://cpe.mitre.org/index.html&quot;&gt;Common
12758 Platform Enumeration&lt;/a&gt; dictionary, a vocabulary for referring to
12759 software, hardware and other platform components. The CPE ids are
12760 mapped to CVEs in the &lt;a href=&quot;http://web.nvd.nist.gov/&quot;&gt;National
12761 Vulnerability Database&lt;/a&gt;, allowing me to look up know security
12762 issues for any CPE name. With this in place, all I need to do is to
12763 locate the CPE id for the software packages we use at the university.
12764 This is fairly trivial (I google for &#39;cve cpe $package&#39; and check the
12765 NVD entry if a CVE for the package exist).&lt;/p&gt;
12766
12767 &lt;p&gt;To give you an example. The GNU gzip source package have the CPE
12768 name cpe:/a:gnu:gzip. If the old version 1.3.3 was the package to
12769 check out, one could look up
12770 &lt;a href=&quot;http://web.nvd.nist.gov/view/vuln/search?cpe=cpe%3A%2Fa%3Agnu%3Agzip:1.3.3&quot;&gt;cpe:/a:gnu:gzip:1.3.3
12771 in NVD&lt;/a&gt; and get a list of 6 security holes with public CVE entries.
12772 The most recent one is
12773 &lt;a href=&quot;http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2010-0001&quot;&gt;CVE-2010-0001&lt;/a&gt;,
12774 and at the bottom of the NVD page for this vulnerability the complete
12775 list of affected versions is provided.&lt;/p&gt;
12776
12777 &lt;p&gt;The NVD database of CVEs is also available as a XML dump, allowing
12778 for offline processing of issues. Using this dump, I&#39;ve written a
12779 small script taking a list of CPEs as input and list all CVEs
12780 affecting the packages represented by these CPEs. One give it CPEs
12781 with version numbers as specified above and get a list of open
12782 security issues out.&lt;/p&gt;
12783
12784 &lt;p&gt;Of course for this approach to be useful, the quality of the NVD
12785 information need to be high. For that to happen, I believe as many as
12786 possible need to use and contribute to the NVD database. I notice
12787 RHEL is providing
12788 &lt;a href=&quot;https://www.redhat.com/security/data/metrics/rhsamapcpe.txt&quot;&gt;a
12789 map from CVE to CPE&lt;/a&gt;, indicating that they are using the CPE
12790 information. I&#39;m not aware of Debian and Ubuntu doing the same.&lt;/p&gt;
12791
12792 &lt;p&gt;To get an idea about the quality for free software, I spent some
12793 time making it possible to compare the CVE database from Debian with
12794 the CVE database in NVD. The result look fairly good, but there are
12795 some inconsistencies in NVD (same software package having several
12796 CPEs), and some inaccuracies (NVD not mentioning buggy packages that
12797 Debian believe are affected by a CVE). Hope to find time to improve
12798 the quality of NVD, but that require being able to get in touch with
12799 someone maintaining it. So far my three emails with questions and
12800 corrections have not seen any reply, but I hope contact can be
12801 established soon.&lt;/p&gt;
12802
12803 &lt;p&gt;An interesting application for CPEs is cross platform package
12804 mapping. It would be useful to know which packages in for example
12805 RHEL, OpenSuSe and Mandriva are missing from Debian and Ubuntu, and
12806 this would be trivial if all linux distributions provided CPE entries
12807 for their packages.&lt;/p&gt;
12808 </description>
12809 </item>
12810
12811 <item>
12812 <title>Which module is loaded for a given PCI and USB device?</title>
12813 <link>http://people.skolelinux.org/pere/blog/Which_module_is_loaded_for_a_given_PCI_and_USB_device_.html</link>
12814 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Which_module_is_loaded_for_a_given_PCI_and_USB_device_.html</guid>
12815 <pubDate>Sun, 23 Jan 2011 00:20:00 +0100</pubDate>
12816 <description>&lt;p&gt;In the
12817 &lt;a href=&quot;http://packages.qa.debian.org/discover-data&quot;&gt;discover-data&lt;/a&gt;
12818 package in Debian, there is a script to report useful information
12819 about the running hardware for use when people report missing
12820 information. One part of this script that I find very useful when
12821 debugging hardware problems, is the part mapping loaded kernel module
12822 to the PCI device it claims. It allow me to quickly see if the kernel
12823 module I expect is driving the hardware I am struggling with. To see
12824 the output, make sure discover-data is installed and run
12825 &lt;tt&gt;/usr/share/bug/discover-data 3&gt;&amp;1&lt;/tt&gt;. The relevant output on
12826 one of my machines like this:&lt;/p&gt;
12827
12828 &lt;pre&gt;
12829 loaded modules:
12830 10de:03eb i2c_nforce2
12831 10de:03f1 ohci_hcd
12832 10de:03f2 ehci_hcd
12833 10de:03f0 snd_hda_intel
12834 10de:03ec pata_amd
12835 10de:03f6 sata_nv
12836 1022:1103 k8temp
12837 109e:036e bttv
12838 109e:0878 snd_bt87x
12839 11ab:4364 sky2
12840 &lt;/pre&gt;
12841
12842 &lt;p&gt;The code in question look like this, slightly modified for
12843 readability and to drop the output to file descriptor 3:&lt;/p&gt;
12844
12845 &lt;pre&gt;
12846 if [ -d /sys/bus/pci/devices/ ] ; then
12847 echo loaded pci modules:
12848 (
12849 cd /sys/bus/pci/devices/
12850 for address in * ; do
12851 if [ -d &quot;$address/driver/module&quot; ] ; then
12852 module=`cd $address/driver/module ; pwd -P | xargs basename`
12853 if grep -q &quot;^$module &quot; /proc/modules ; then
12854 address=$(echo $address |sed s/0000://)
12855 id=`lspci -n -s $address | tail -n 1 | awk &#39;{print $3}&#39;`
12856 echo &quot;$id $module&quot;
12857 fi
12858 fi
12859 done
12860 )
12861 echo
12862 fi
12863 &lt;/pre&gt;
12864
12865 &lt;p&gt;Similar code could be used to extract USB device module
12866 mappings:&lt;/p&gt;
12867
12868 &lt;pre&gt;
12869 if [ -d /sys/bus/usb/devices/ ] ; then
12870 echo loaded usb modules:
12871 (
12872 cd /sys/bus/usb/devices/
12873 for address in * ; do
12874 if [ -d &quot;$address/driver/module&quot; ] ; then
12875 module=`cd $address/driver/module ; pwd -P | xargs basename`
12876 if grep -q &quot;^$module &quot; /proc/modules ; then
12877 address=$(echo $address |sed s/0000://)
12878 id=$(lsusb -s $address | tail -n 1 | awk &#39;{print $6}&#39;)
12879 if [ &quot;$id&quot; ] ; then
12880 echo &quot;$id $module&quot;
12881 fi
12882 fi
12883 fi
12884 done
12885 )
12886 echo
12887 fi
12888 &lt;/pre&gt;
12889
12890 &lt;p&gt;This might perhaps be something to include in other tools as
12891 well.&lt;/p&gt;
12892 </description>
12893 </item>
12894
12895 <item>
12896 <title>The video format most supported in web browsers?</title>
12897 <link>http://people.skolelinux.org/pere/blog/The_video_format_most_supported_in_web_browsers_.html</link>
12898 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/The_video_format_most_supported_in_web_browsers_.html</guid>
12899 <pubDate>Sun, 16 Jan 2011 00:20:00 +0100</pubDate>
12900 <description>&lt;p&gt;The video format struggle on the web continues, and the three
12901 contenders seem to be Ogg Theora, H.264 and WebM. Most video sites
12902 seem to use H.264, while others use Ogg Theora. Interestingly enough,
12903 the comments I see give me the feeling that a lot of people believe
12904 H.264 is the most supported video format in browsers, but according to
12905 the Wikipedia article on
12906 &lt;a href=&quot;http://en.wikipedia.org/wiki/HTML5_video&quot;&gt;HTML5 video&lt;/a&gt;,
12907 this is not true. Check out the nice table of supprted formats in
12908 different browsers there. The format supported by most browsers is
12909 Ogg Theora, supported by released versions of Mozilla Firefox, Google
12910 Chrome, Chromium, Opera, Konqueror, Epiphany, Origyn Web Browser and
12911 BOLT browser, while not supported by Internet Explorer nor Safari.
12912 The runner up is WebM supported by released versions of Google Chrome
12913 Chromium Opera and Origyn Web Browser, and test versions of Mozilla
12914 Firefox. H.264 is supported by released versions of Safari, Origyn
12915 Web Browser and BOLT browser, and the test version of Internet
12916 Explorer. Those wanting Ogg Theora support in Internet Explorer and
12917 Safari can install plugins to get it.&lt;/p&gt;
12918
12919 &lt;p&gt;To me, the simple conclusion from this is that to reach most users
12920 without any extra software installed, one uses Ogg Theora with the
12921 HTML5 video tag. Of course to reach all those without a browser
12922 handling HTML5, one need fallback mechanisms. In
12923 &lt;a href=&quot;http://www.nuug.no/&quot;&gt;NUUG&lt;/a&gt;, we provide first fallback to a
12924 plugin capable of playing MPEG1 video, and those without such support
12925 we have a second fallback to the Cortado java applet playing Ogg
12926 Theora. This seem to work quite well, as can be seen in an &lt;a
12927 href=&quot;http://www.nuug.no/aktiviteter/20110111-semantic-web/&quot;&gt;example
12928 from last week&lt;/a&gt;.&lt;/p&gt;
12929
12930 &lt;p&gt;The reason Ogg Theora is the most supported format, and H.264 is
12931 the least supported is simple. Implementing and using H.264
12932 require royalty payment to MPEG-LA, and the terms of use from MPEG-LA
12933 are incompatible with free software licensing. If you believed H.264
12934 was without royalties and license terms, check out
12935 &quot;&lt;a href=&quot;http://webmink.com/essays/h-264/&quot;&gt;H.264 – Not The Kind Of
12936 Free That Matters&lt;/a&gt;&quot; by Simon Phipps.&lt;/p&gt;
12937
12938 &lt;p&gt;A incomplete list of sites providing video in Ogg Theora is
12939 available from
12940 &lt;a href=&quot;http://wiki.xiph.org/index.php/List_of_Theora_videos&quot;&gt;the
12941 Xiph.org wiki&lt;/a&gt;, if you want to have a look. I&#39;m not aware of a
12942 similar list for WebM nor H.264.&lt;/p&gt;
12943
12944 &lt;p&gt;Update 2011-01-16 09:40: A question from Tollef on IRC made me
12945 realise that I failed to make it clear enough this text is about the
12946 &amp;lt;video&amp;gt; tag support in browsers and not the video support
12947 provided by external plugins like the Flash plugins.&lt;/p&gt;
12948 </description>
12949 </item>
12950
12951 <item>
12952 <title>Chrome plan to drop H.264 support for HTML5 &amp;lt;video&amp;gt;</title>
12953 <link>http://people.skolelinux.org/pere/blog/Chrome_plan_to_drop_H_264_support_for_HTML5__lt_video_gt_.html</link>
12954 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Chrome_plan_to_drop_H_264_support_for_HTML5__lt_video_gt_.html</guid>
12955 <pubDate>Wed, 12 Jan 2011 22:10:00 +0100</pubDate>
12956 <description>&lt;p&gt;Today I discovered
12957 &lt;a href=&quot;http://www.digi.no/860070/google-dropper-h264-stotten-i-chrome&quot;&gt;via
12958 digi.no&lt;/a&gt; that the Chrome developers, in a surprising announcement,
12959 &lt;a href=&quot;http://blog.chromium.org/2011/01/html-video-codec-support-in-chrome.html&quot;&gt;yesterday
12960 announced&lt;/a&gt; plans to drop H.264 support for HTML5 &amp;lt;video&amp;gt; in
12961 the browser. The argument used is that H.264 is not a &quot;completely
12962 open&quot; codec technology. If you believe H.264 was free for everyone
12963 to use, I recommend having a look at the essay
12964 &quot;&lt;a href=&quot;http://webmink.com/essays/h-264/&quot;&gt;H.264 – Not The Kind Of
12965 Free That Matters&lt;/a&gt;&quot;. It is not free of cost for creators of video
12966 tools, nor those of us that want to publish on the Internet, and the
12967 terms provided by MPEG-LA excludes free software projects from
12968 licensing the patents needed for H.264. Some background information
12969 on the Google announcement is available from
12970 &lt;a href=&quot;http://www.osnews.com/story/24243/Google_To_Drop_H264_Support_from_Chrome&quot;&gt;OSnews&lt;/a&gt;.
12971 A good read. :)&lt;/p&gt;
12972
12973 &lt;p&gt;Personally, I believe it is great that Google is taking a stand to
12974 promote equal terms for everyone when it comes to video publishing on
12975 the Internet. This can only be done by publishing using free and open
12976 standards, which is only possible if the web browsers provide support
12977 for these free and open standards. At the moment there seem to be two
12978 camps in the web browser world when it come to video support. Some
12979 browsers support H.264, and others support
12980 &lt;a href=&quot;http://www.theora.org/&quot;&gt;Ogg Theora&lt;/a&gt; and
12981 &lt;a href=&quot;http://www.webmproject.org/&quot;&gt;WebM&lt;/a&gt;
12982 (&lt;a href=&quot;http://www.diracvideo.org/&quot;&gt;Dirac&lt;/a&gt; is not really an option
12983 yet), forcing those of us that want to publish video on the Internet
12984 and which can not accept the terms of use presented by MPEG-LA for
12985 H.264 to not reach all potential viewers.
12986 Wikipedia keep &lt;a href=&quot;http://en.wikipedia.org/wiki/HTML5_video&quot;&gt;an
12987 updated summary&lt;/a&gt; of the current browser support.&lt;/p&gt;
12988
12989 &lt;p&gt;Not surprising, several people would prefer Google to keep
12990 promoting H.264, and John Gruber
12991 &lt;a href=&quot;http://daringfireball.net/2011/01/simple_questions&quot;&gt;presents
12992 the mind set&lt;/a&gt; of these people quite well. His rhetorical questions
12993 provoked a reply from Thom Holwerda with another set of questions
12994 &lt;a href=&quot;http://www.osnews.com/story/24245/10_Questions_for_John_Gruber_Regarding_H_264_WebM&quot;&gt;presenting
12995 the issues with H.264&lt;/a&gt;. Both are worth a read.&lt;/p&gt;
12996
12997 &lt;p&gt;Some argue that if Google is dropping H.264 because it isn&#39;t free,
12998 they should also drop support for the Adobe Flash plugin. This
12999 argument was covered by Simon Phipps in
13000 &lt;a href=&quot;http://blogs.computerworlduk.com/simon-says/2011/01/google-and-h264---far-from-hypocritical/index.htm&quot;&gt;todays
13001 blog post&lt;/a&gt;, which I find to put the issue in context. To me it
13002 make perfect sense to drop native H.264 support for HTML5 in the
13003 browser while still allowing plugins.&lt;/p&gt;
13004
13005 &lt;p&gt;I suspect the reason this announcement make so many people protest,
13006 is that all the users and promoters of H.264 suddenly get an uneasy
13007 feeling that they might be backing the wrong horse. A lot of TV
13008 broadcasters have been moving to H.264 the last few years, and a lot
13009 of money has been invested in hardware based on the belief that they
13010 could use the same video format for both broadcasting and web
13011 publishing. Suddenly this belief is shaken.&lt;/p&gt;
13012
13013 &lt;p&gt;An interesting question is why Google is doing this. While the
13014 presented argument might be true enough, I believe Google would only
13015 present the argument if the change make sense from a business
13016 perspective. One reason might be that they are currently negotiating
13017 with MPEG-LA over royalties or usage terms, and giving MPEG-LA the
13018 feeling that dropping H.264 completely from Chroome, Youtube and
13019 Google Video would improve the negotiation position of Google.
13020 Another reason might be that Google want to save money by not having
13021 to pay the video tax to MPEG-LA at all, and thus want to move to a
13022 video format not requiring royalties at all. A third reason might be
13023 that the Chrome development team simply want to avoid the
13024 Chrome/Chromium split to get more help with the development of Chrome.
13025 I guess time will tell.&lt;/p&gt;
13026
13027 &lt;p&gt;Update 2011-01-15: The Google Chrome team provided
13028 &lt;a href=&quot;http://blog.chromium.org/2011/01/more-about-chrome-html-video-codec.html&quot;&gt;more
13029 background and information on the move&lt;/a&gt; it a blog post yesterday.&lt;/p&gt;
13030 </description>
13031 </item>
13032
13033 <item>
13034 <title>What standards are Free and Open as defined by Digistan?</title>
13035 <link>http://people.skolelinux.org/pere/blog/What_standards_are_Free_and_Open_as_defined_by_Digistan_.html</link>
13036 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/What_standards_are_Free_and_Open_as_defined_by_Digistan_.html</guid>
13037 <pubDate>Thu, 30 Dec 2010 23:15:00 +0100</pubDate>
13038 <description>&lt;p&gt;After trying to
13039 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Is_Ogg_Theora_a_free_and_open_standard_.html&quot;&gt;compare
13040 Ogg Theora&lt;/a&gt; to
13041 &lt;a href=&quot;http://www.digistan.org/open-standard:definition&quot;&gt;the Digistan
13042 definition&lt;/a&gt; of a free and open standard, I concluded that this need
13043 to be done for more standards and started on a framework for doing
13044 this. As a start, I want to get the status for all the standards in
13045 the Norwegian reference directory, which include UTF-8, HTML, PDF, ODF,
13046 JPEG, PNG, SVG and others. But to be able to complete this in a
13047 reasonable time frame, I will need help.&lt;/p&gt;
13048
13049 &lt;p&gt;If you want to help out with this work, please visit
13050 &lt;a href=&quot;http://wiki.nuug.no/grupper/standard/digistan-analyse&quot;&gt;the
13051 wiki pages I have set up for this&lt;/a&gt;, and let me know that you want
13052 to help out. The IRC channel #nuug on irc.freenode.net is a good
13053 place to coordinate this for now, as it is the IRC channel for the
13054 NUUG association where I have created the framework (I am the leader
13055 of the Norwegian Unix User Group).&lt;/p&gt;
13056
13057 &lt;p&gt;The framework is still forming, and a lot is left to do. Do not be
13058 scared by the sketchy form of the current pages. :)&lt;/p&gt;
13059 </description>
13060 </item>
13061
13062 <item>
13063 <title>The many definitions of a open standard</title>
13064 <link>http://people.skolelinux.org/pere/blog/The_many_definitions_of_a_open_standard.html</link>
13065 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/The_many_definitions_of_a_open_standard.html</guid>
13066 <pubDate>Mon, 27 Dec 2010 14:45:00 +0100</pubDate>
13067 <description>&lt;p&gt;One of the reasons I like the Digistan definition of
13068 &quot;&lt;a href=&quot;http://www.digistan.org/open-standard:definition&quot;&gt;Free and
13069 Open Standard&lt;/a&gt;&quot; is that this is a new term, and thus the meaning of
13070 the term has been decided by Digistan. The term &quot;Open Standard&quot; has
13071 become so misunderstood that it is no longer very useful when talking
13072 about standards. One end up discussing which definition is the best
13073 one and with such frame the only one gaining are the proponents of
13074 de-facto standards and proprietary solutions.&lt;/p&gt;
13075
13076 &lt;p&gt;But to give us an idea about the diversity of definitions of open
13077 standards, here are a few that I know about. This list is not
13078 complete, but can be a starting point for those that want to do a
13079 complete survey. More definitions are available on the
13080 &lt;a href=&quot;http://en.wikipedia.org/wiki/Open_standard&quot;&gt;wikipedia
13081 page&lt;/a&gt;.&lt;/p&gt;
13082
13083 &lt;p&gt;First off is my favourite, the definition from the European
13084 Interoperability Framework version 1.0. Really sad to notice that BSA
13085 and others has succeeded in getting it removed from version 2.0 of the
13086 framework by stacking the committee drafting the new version with
13087 their own people. Anyway, the definition is still available and it
13088 include the key properties needed to make sure everyone can use a
13089 specification on equal terms.&lt;/p&gt;
13090
13091 &lt;blockquote&gt;
13092
13093 &lt;p&gt;The following are the minimal characteristics that a specification
13094 and its attendant documents must have in order to be considered an
13095 open standard:&lt;/p&gt;
13096
13097 &lt;ul&gt;
13098
13099 &lt;li&gt;The standard is adopted and will be maintained by a not-for-profit
13100 organisation, and its ongoing development occurs on the basis of an
13101 open decision-making procedure available to all interested parties
13102 (consensus or majority decision etc.).&lt;/li&gt;
13103
13104 &lt;li&gt;The standard has been published and the standard specification
13105 document is available either freely or at a nominal charge. It must be
13106 permissible to all to copy, distribute and use it for no fee or at a
13107 nominal fee.&lt;/li&gt;
13108
13109 &lt;li&gt;The intellectual property - i.e. patents possibly present - of
13110 (parts of) the standard is made irrevocably available on a royalty-
13111 free basis.&lt;/li&gt;
13112
13113 &lt;li&gt;There are no constraints on the re-use of the standard.&lt;/li&gt;
13114
13115 &lt;/ul&gt;
13116 &lt;/blockquote&gt;
13117
13118 &lt;p&gt;Another one originates from my friends over at
13119 &lt;a href=&quot;http://www.dkuug.dk/&quot;&gt;DKUUG&lt;/a&gt;, who coined and gathered
13120 support for &lt;a href=&quot;http://www.aaben-standard.dk/&quot;&gt;this
13121 definition&lt;/a&gt; in 2004. It even made it into the Danish parlament as
13122 &lt;a href=&quot;http://www.ft.dk/dokumenter/tingdok.aspx?/samling/20051/beslutningsforslag/B103/som_fremsat.htm&quot;&gt;their
13123 definition of a open standard&lt;/a&gt;. Another from a different part of
13124 the Danish government is available from the wikipedia page.&lt;/p&gt;
13125
13126 &lt;blockquote&gt;
13127
13128 &lt;p&gt;En åben standard opfylder følgende krav:&lt;/p&gt;
13129
13130 &lt;ol&gt;
13131
13132 &lt;li&gt;Veldokumenteret med den fuldstændige specifikation offentligt
13133 tilgængelig.&lt;/li&gt;
13134
13135 &lt;li&gt;Frit implementerbar uden økonomiske, politiske eller juridiske
13136 begrænsninger på implementation og anvendelse.&lt;/li&gt;
13137
13138 &lt;li&gt;Standardiseret og vedligeholdt i et åbent forum (en såkaldt
13139 &quot;standardiseringsorganisation&quot;) via en åben proces.&lt;/li&gt;
13140
13141 &lt;/ol&gt;
13142
13143 &lt;/blockquote&gt;
13144
13145 &lt;p&gt;Then there is &lt;a href=&quot;http://www.fsfe.org/projects/os/def.html&quot;&gt;the
13146 definition&lt;/a&gt; from Free Software Foundation Europe.&lt;/p&gt;
13147
13148 &lt;blockquote&gt;
13149
13150 &lt;p&gt;An Open Standard refers to a format or protocol that is&lt;/p&gt;
13151
13152 &lt;ol&gt;
13153
13154 &lt;li&gt;subject to full public assessment and use without constraints in a
13155 manner equally available to all parties;&lt;/li&gt;
13156
13157 &lt;li&gt;without any components or extensions that have dependencies on
13158 formats or protocols that do not meet the definition of an Open
13159 Standard themselves;&lt;/li&gt;
13160
13161 &lt;li&gt;free from legal or technical clauses that limit its utilisation by
13162 any party or in any business model;&lt;/li&gt;
13163
13164 &lt;li&gt;managed and further developed independently of any single vendor
13165 in a process open to the equal participation of competitors and third
13166 parties;&lt;/li&gt;
13167
13168 &lt;li&gt;available in multiple complete implementations by competing
13169 vendors, or as a complete implementation equally available to all
13170 parties.&lt;/li&gt;
13171
13172 &lt;/ol&gt;
13173
13174 &lt;/blockquote&gt;
13175
13176 &lt;p&gt;A long time ago, SUN Microsystems, now bought by Oracle, created
13177 its
13178 &lt;a href=&quot;http://blogs.sun.com/dennisding/resource/Open%20Standard%20Definition.pdf&quot;&gt;Open
13179 Standards Checklist&lt;/a&gt; with a fairly detailed description.&lt;/p&gt;
13180
13181 &lt;blockquote&gt;
13182 &lt;p&gt;Creation and Management of an Open Standard
13183
13184 &lt;ul&gt;
13185
13186 &lt;li&gt;Its development and management process must be collaborative and
13187 democratic:
13188
13189 &lt;ul&gt;
13190
13191 &lt;li&gt;Participation must be accessible to all those who wish to
13192 participate and can meet fair and reasonable criteria
13193 imposed by the organization under which it is developed
13194 and managed.&lt;/li&gt;
13195
13196 &lt;li&gt;The processes must be documented and, through a known
13197 method, can be changed through input from all
13198 participants.&lt;/li&gt;
13199
13200 &lt;li&gt;The process must be based on formal and binding commitments for
13201 the disclosure and licensing of intellectual property rights.&lt;/li&gt;
13202
13203 &lt;li&gt;Development and management should strive for consensus,
13204 and an appeals process must be clearly outlined.&lt;/li&gt;
13205
13206 &lt;li&gt;The standard specification must be open to extensive
13207 public review at least once in its life-cycle, with
13208 comments duly discussed and acted upon, if required.&lt;/li&gt;
13209
13210 &lt;/ul&gt;
13211
13212 &lt;/li&gt;
13213
13214 &lt;/ul&gt;
13215
13216 &lt;p&gt;Use and Licensing of an Open Standard&lt;/p&gt;
13217 &lt;ul&gt;
13218
13219 &lt;li&gt;The standard must describe an interface, not an implementation,
13220 and the industry must be capable of creating multiple, competing
13221 implementations to the interface described in the standard without
13222 undue or restrictive constraints. Interfaces include APIs,
13223 protocols, schemas, data formats and their encoding.&lt;/li&gt;
13224
13225 &lt;li&gt; The standard must not contain any proprietary &quot;hooks&quot; that create
13226 a technical or economic barriers&lt;/li&gt;
13227
13228 &lt;li&gt;Faithful implementations of the standard must
13229 interoperate. Interoperability means the ability of a computer
13230 program to communicate and exchange information with other computer
13231 programs and mutually to use the information which has been
13232 exchanged. This includes the ability to use, convert, or exchange
13233 file formats, protocols, schemas, interface information or
13234 conventions, so as to permit the computer program to work with other
13235 computer programs and users in all the ways in which they are
13236 intended to function.&lt;/li&gt;
13237
13238 &lt;li&gt;It must be permissible for anyone to copy, distribute and read the
13239 standard for a nominal fee, or even no fee. If there is a fee, it
13240 must be low enough to not preclude widespread use.&lt;/li&gt;
13241
13242 &lt;li&gt;It must be possible for anyone to obtain free (no royalties or
13243 fees; also known as &quot;royalty free&quot;), worldwide, non-exclusive and
13244 perpetual licenses to all essential patent claims to make, use and
13245 sell products based on the standard. The only exceptions are
13246 terminations per the reciprocity and defensive suspension terms
13247 outlined below. Essential patent claims include pending, unpublished
13248 patents, published patents, and patent applications. The license is
13249 only for the exact scope of the standard in question.
13250
13251 &lt;ul&gt;
13252
13253 &lt;li&gt; May be conditioned only on reciprocal licenses to any of
13254 licensees&#39; patent claims essential to practice that standard
13255 (also known as a reciprocity clause)&lt;/li&gt;
13256
13257 &lt;li&gt; May be terminated as to any licensee who sues the licensor
13258 or any other licensee for infringement of patent claims
13259 essential to practice that standard (also known as a
13260 &quot;defensive suspension&quot; clause)&lt;/li&gt;
13261
13262 &lt;li&gt; The same licensing terms are available to every potential
13263 licensor&lt;/li&gt;
13264
13265 &lt;/ul&gt;
13266 &lt;/li&gt;
13267
13268 &lt;li&gt;The licensing terms of an open standards must not preclude
13269 implementations of that standard under open source licensing terms
13270 or restricted licensing terms&lt;/li&gt;
13271
13272 &lt;/ul&gt;
13273
13274 &lt;/blockquote&gt;
13275
13276 &lt;p&gt;It is said that one of the nice things about standards is that
13277 there are so many of them. As you can see, the same holds true for
13278 open standard definitions. Most of the definitions have a lot in
13279 common, and it is not really controversial what properties a open
13280 standard should have, but the diversity of definitions have made it
13281 possible for those that want to avoid a level marked field and real
13282 competition to downplay the significance of open standards. I hope we
13283 can turn this tide by focusing on the advantages of Free and Open
13284 Standards.&lt;/p&gt;
13285 </description>
13286 </item>
13287
13288 <item>
13289 <title>Is Ogg Theora a free and open standard?</title>
13290 <link>http://people.skolelinux.org/pere/blog/Is_Ogg_Theora_a_free_and_open_standard_.html</link>
13291 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Is_Ogg_Theora_a_free_and_open_standard_.html</guid>
13292 <pubDate>Sat, 25 Dec 2010 20:25:00 +0100</pubDate>
13293 <description>&lt;p&gt;&lt;a href=&quot;http://www.digistan.org/open-standard:definition&quot;&gt;The
13294 Digistan definition&lt;/a&gt; of a free and open standard reads like this:&lt;/p&gt;
13295
13296 &lt;blockquote&gt;
13297
13298 &lt;p&gt;The Digital Standards Organization defines free and open standard
13299 as follows:&lt;/p&gt;
13300
13301 &lt;ol&gt;
13302
13303 &lt;li&gt;A free and open standard is immune to vendor capture at all stages
13304 in its life-cycle. Immunity from vendor capture makes it possible to
13305 freely use, improve upon, trust, and extend a standard over time.&lt;/li&gt;
13306
13307 &lt;li&gt;The standard is adopted and will be maintained by a not-for-profit
13308 organisation, and its ongoing development occurs on the basis of an
13309 open decision-making procedure available to all interested
13310 parties.&lt;/li&gt;
13311
13312 &lt;li&gt;The standard has been published and the standard specification
13313 document is available freely. It must be permissible to all to copy,
13314 distribute, and use it freely.&lt;/li&gt;
13315
13316 &lt;li&gt;The patents possibly present on (parts of) the standard are made
13317 irrevocably available on a royalty-free basis.&lt;/li&gt;
13318
13319 &lt;li&gt;There are no constraints on the re-use of the standard.&lt;/li&gt;
13320
13321 &lt;/ol&gt;
13322
13323 &lt;p&gt;The economic outcome of a free and open standard, which can be
13324 measured, is that it enables perfect competition between suppliers of
13325 products based on the standard.&lt;/p&gt;
13326 &lt;/blockquote&gt;
13327
13328 &lt;p&gt;For a while now I have tried to figure out of Ogg Theora is a free
13329 and open standard according to this definition. Here is a short
13330 writeup of what I have been able to gather so far. I brought up the
13331 topic on the Xiph advocacy mailing list
13332 &lt;a href=&quot;http://lists.xiph.org/pipermail/advocacy/2009-July/001632.html&quot;&gt;in
13333 July 2009&lt;/a&gt;, for those that want to see some background information.
13334 According to Ivo Emanuel Gonçalves and Monty Montgomery on that list
13335 the Ogg Theora specification fulfils the Digistan definition.&lt;/p&gt;
13336
13337 &lt;p&gt;&lt;strong&gt;Free from vendor capture?&lt;/strong&gt;&lt;/p&gt;
13338
13339 &lt;p&gt;As far as I can see, there is no single vendor that can control the
13340 Ogg Theora specification. It can be argued that the
13341 &lt;a href=&quot;http://www.xiph.org/&quot;&gt;Xiph foundation&lt;/A&gt; is such vendor, but
13342 given that it is a non-profit foundation with the expressed goal
13343 making free and open protocols and standards available, it is not
13344 obvious that this is a real risk. One issue with the Xiph
13345 foundation is that its inner working (as in board member list, or who
13346 control the foundation) are not easily available on the web. I&#39;ve
13347 been unable to find out who is in the foundation board, and have not
13348 seen any accounting information documenting how money is handled nor
13349 where is is spent in the foundation. It is thus not obvious for an
13350 external observer who control The Xiph foundation, and for all I know
13351 it is possible for a single vendor to take control over the
13352 specification. But it seem unlikely.&lt;/p&gt;
13353
13354 &lt;p&gt;&lt;strong&gt;Maintained by open not-for-profit organisation?&lt;/strong&gt;&lt;/p&gt;
13355
13356 &lt;p&gt;Assuming that the Xiph foundation is the organisation its web pages
13357 claim it to be, this point is fulfilled. If Xiph foundation is
13358 controlled by a single vendor, it isn&#39;t, but I have not found any
13359 documentation indicating this.&lt;/p&gt;
13360
13361 &lt;p&gt;According to
13362 &lt;a href=&quot;http://media.hiof.no/diverse/fad/rapport_4.pdf&quot;&gt;a report&lt;/a&gt;
13363 prepared by Audun Vaaler og Børre Ludvigsen for the Norwegian
13364 government, the Xiph foundation is a non-commercial organisation and
13365 the development process is open, transparent and non-Discrimatory.
13366 Until proven otherwise, I believe it make most sense to believe the
13367 report is correct.&lt;/p&gt;
13368
13369 &lt;p&gt;&lt;strong&gt;Specification freely available?&lt;/strong&gt;&lt;/p&gt;
13370
13371 &lt;p&gt;The specification for the &lt;a href=&quot;http://www.xiph.org/ogg/doc/&quot;&gt;Ogg
13372 container format&lt;/a&gt; and both the
13373 &lt;a href=&quot;http://www.xiph.org/vorbis/doc/&quot;&gt;Vorbis&lt;/a&gt; and
13374 &lt;a href=&quot;http://theora.org/doc/&quot;&gt;Theora&lt;/a&gt; codeces are available on
13375 the web. This are the terms in the Vorbis and Theora specification:
13376
13377 &lt;blockquote&gt;
13378
13379 Anyone may freely use and distribute the Ogg and [Vorbis/Theora]
13380 specifications, whether in private, public, or corporate
13381 capacity. However, the Xiph.Org Foundation and the Ogg project reserve
13382 the right to set the Ogg [Vorbis/Theora] specification and certify
13383 specification compliance.
13384
13385 &lt;/blockquote&gt;
13386
13387 &lt;p&gt;The Ogg container format is specified in IETF
13388 &lt;a href=&quot;http://www.xiph.org/ogg/doc/rfc3533.txt&quot;&gt;RFC 3533&lt;/a&gt;, and
13389 this is the term:&lt;p&gt;
13390
13391 &lt;blockquote&gt;
13392
13393 &lt;p&gt;This document and translations of it may be copied and furnished to
13394 others, and derivative works that comment on or otherwise explain it
13395 or assist in its implementation may be prepared, copied, published and
13396 distributed, in whole or in part, without restriction of any kind,
13397 provided that the above copyright notice and this paragraph are
13398 included on all such copies and derivative works. However, this
13399 document itself may not be modified in any way, such as by removing
13400 the copyright notice or references to the Internet Society or other
13401 Internet organizations, except as needed for the purpose of developing
13402 Internet standards in which case the procedures for copyrights defined
13403 in the Internet Standards process must be followed, or as required to
13404 translate it into languages other than English.&lt;/p&gt;
13405
13406 &lt;p&gt;The limited permissions granted above are perpetual and will not be
13407 revoked by the Internet Society or its successors or assigns.&lt;/p&gt;
13408 &lt;/blockquote&gt;
13409
13410 &lt;p&gt;All these terms seem to allow unlimited distribution and use, an
13411 this term seem to be fulfilled. There might be a problem with the
13412 missing permission to distribute modified versions of the text, and
13413 thus reuse it in other specifications. Not quite sure if that is a
13414 requirement for the Digistan definition.&lt;/p&gt;
13415
13416 &lt;p&gt;&lt;strong&gt;Royalty-free?&lt;/strong&gt;&lt;/p&gt;
13417
13418 &lt;p&gt;There are no known patent claims requiring royalties for the Ogg
13419 Theora format.
13420 &lt;a href=&quot;http://www.streamingmedia.com/Articles/ReadArticle.aspx?ArticleID=65782&quot;&gt;MPEG-LA&lt;/a&gt;
13421 and
13422 &lt;a href=&quot;http://yro.slashdot.org/story/10/04/30/237238/Steve-Jobs-Hints-At-Theora-Lawsuit&quot;&gt;Steve
13423 Jobs&lt;/a&gt; in Apple claim to know about some patent claims (submarine
13424 patents) against the Theora format, but no-one else seem to believe
13425 them. Both Opera Software and the Mozilla Foundation have looked into
13426 this and decided to implement Ogg Theora support in their browsers
13427 without paying any royalties. For now the claims from MPEG-LA and
13428 Steve Jobs seem more like FUD to scare people to use the H.264 codec
13429 than any real problem with Ogg Theora.&lt;/p&gt;
13430
13431 &lt;p&gt;&lt;strong&gt;No constraints on re-use?&lt;/strong&gt;&lt;/p&gt;
13432
13433 &lt;p&gt;I am not aware of any constraints on re-use.&lt;/p&gt;
13434
13435 &lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;
13436
13437 &lt;p&gt;3 of 5 requirements seem obviously fulfilled, and the remaining 2
13438 depend on the governing structure of the Xiph foundation. Given the
13439 background report used by the Norwegian government, I believe it is
13440 safe to assume the last two requirements are fulfilled too, but it
13441 would be nice if the Xiph foundation web site made it easier to verify
13442 this.&lt;/p&gt;
13443
13444 &lt;p&gt;It would be nice to see other analysis of other specifications to
13445 see if they are free and open standards.&lt;/p&gt;
13446 </description>
13447 </item>
13448
13449 <item>
13450 <title>The reply from Edgar Villanueva to Microsoft in Peru</title>
13451 <link>http://people.skolelinux.org/pere/blog/The_reply_from_Edgar_Villanueva_to_Microsoft_in_Peru.html</link>
13452 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/The_reply_from_Edgar_Villanueva_to_Microsoft_in_Peru.html</guid>
13453 <pubDate>Sat, 25 Dec 2010 10:50:00 +0100</pubDate>
13454 <description>&lt;p&gt;A few days ago
13455 &lt;a href=&quot;http://www.idg.no/computerworld/article189879.ece&quot;&gt;an
13456 article&lt;/a&gt; in the Norwegian Computerworld magazine about how version
13457 2.0 of
13458 &lt;a href=&quot;http://en.wikipedia.org/wiki/European_Interoperability_Framework&quot;&gt;European
13459 Interoperability Framework&lt;/a&gt; has been successfully lobbied by the
13460 proprietary software industry to remove the focus on free software.
13461 Nothing very surprising there, given
13462 &lt;a href=&quot;http://news.slashdot.org/story/10/03/29/2115235/Open-Source-Open-Standards-Under-Attack-In-Europe&quot;&gt;earlier
13463 reports&lt;/a&gt; on how Microsoft and others have stacked the committees in
13464 this work. But I find this very sad. The definition of
13465 &lt;a href=&quot;http://www.nuug.no/dokumenter/standard-presse-def-200506.txt&quot;&gt;an
13466 open standard from version 1&lt;/a&gt; was very good, and something I
13467 believe should be used also in the future, alongside
13468 &lt;a href=&quot;http://www.digistan.org/open-standard:definition&quot;&gt;the
13469 definition from Digistan&lt;/A&gt;. Version 2 have removed the open
13470 standard definition from its content.&lt;/p&gt;
13471
13472 &lt;p&gt;Anyway, the news reminded me of the great reply sent by Dr. Edgar
13473 Villanueva, congressman in Peru at the time, to Microsoft as a reply
13474 to Microsofts attack on his proposal regarding the use of free software
13475 in the public sector in Peru. As the text was not available from a
13476 few of the URLs where it used to be available, I copy it here from
13477 &lt;a href=&quot;http://gnuwin.epfl.ch/articles/en/reponseperou/villanueva_to_ms.html&quot;&gt;my
13478 source&lt;/a&gt; to ensure it is available also in the future. Some
13479 background information about that story is available in
13480 &lt;a href=&quot;http://www.linuxjournal.com/article/6099&quot;&gt;an article&lt;/a&gt; from
13481 Linux Journal in 2002.&lt;/p&gt;
13482
13483 &lt;blockquote&gt;
13484 &lt;p&gt;Lima, 8th of April, 2002&lt;br&gt;
13485 To: Señor JUAN ALBERTO GONZÁLEZ&lt;br&gt;
13486 General Manager of Microsoft Perú&lt;/p&gt;
13487
13488 &lt;p&gt;Dear Sir:&lt;/p&gt;
13489
13490 &lt;p&gt;First of all, I thank you for your letter of March 25, 2002 in which you state the official position of Microsoft relative to Bill Number 1609, Free Software in Public Administration, which is indubitably inspired by the desire for Peru to find a suitable place in the global technological context. In the same spirit, and convinced that we will find the best solutions through an exchange of clear and open ideas, I will take this opportunity to reply to the commentaries included in your letter.&lt;/p&gt;
13491
13492 &lt;p&gt;While acknowledging that opinions such as yours constitute a significant contribution, it would have been even more worthwhile for me if, rather than formulating objections of a general nature (which we will analyze in detail later) you had gathered solid arguments for the advantages that proprietary software could bring to the Peruvian State, and to its citizens in general, since this would have allowed a more enlightening exchange in respect of each of our positions.&lt;/p&gt;
13493
13494 &lt;p&gt;With the aim of creating an orderly debate, we will assume that what you call &quot;open source software&quot; is what the Bill defines as &quot;free software&quot;, since there exists software for which the source code is distributed together with the program, but which does not fall within the definition established by the Bill; and that what you call &quot;commercial software&quot; is what the Bill defines as &quot;proprietary&quot; or &quot;unfree&quot;, given that there exists free software which is sold in the market for a price like any other good or service.&lt;/p&gt;
13495
13496 &lt;p&gt;It is also necessary to make it clear that the aim of the Bill we are discussing is not directly related to the amount of direct savings that can by made by using free software in state institutions. That is in any case a marginal aggregate value, but in no way is it the chief focus of the Bill. The basic principles which inspire the Bill are linked to the basic guarantees of a state of law, such as:&lt;/p&gt;
13497
13498 &lt;p&gt;
13499 &lt;ul&gt;
13500 &lt;li&gt;Free access to public information by the citizen. &lt;/li&gt;
13501 &lt;li&gt;Permanence of public data. &lt;/li&gt;
13502 &lt;li&gt;Security of the State and citizens.&lt;/li&gt;
13503 &lt;/ul&gt;
13504 &lt;/p&gt;
13505
13506 &lt;p&gt;To guarantee the free access of citizens to public information, it is indispensable that the encoding of data is not tied to a single provider. The use of standard and open formats gives a guarantee of this free access, if necessary through the creation of compatible free software.&lt;/p&gt;
13507
13508 &lt;p&gt;To guarantee the permanence of public data, it is necessary that the usability and maintenance of the software does not depend on the goodwill of the suppliers, or on the monopoly conditions imposed by them. For this reason the State needs systems the development of which can be guaranteed due to the availability of the source code.&lt;/p&gt;
13509
13510 &lt;p&gt;To guarantee national security or the security of the State, it is indispensable to be able to rely on systems without elements which allow control from a distance or the undesired transmission of information to third parties. Systems with source code freely accessible to the public are required to allow their inspection by the State itself, by the citizens, and by a large number of independent experts throughout the world. Our proposal brings further security, since the knowledge of the source code will eliminate the growing number of programs with *spy code*. &lt;/p&gt;
13511
13512 &lt;p&gt;In the same way, our proposal strengthens the security of the citizens, both in their role as legitimate owners of information managed by the state, and in their role as consumers. In this second case, by allowing the growth of a widespread availability of free software not containing *spy code* able to put at risk privacy and individual freedoms.&lt;/p&gt;
13513
13514 &lt;p&gt;In this sense, the Bill is limited to establishing the conditions under which the state bodies will obtain software in the future, that is, in a way compatible with these basic principles.&lt;/p&gt;
13515
13516
13517 &lt;p&gt;From reading the Bill it will be clear that once passed:&lt;br&gt;
13518 &lt;li&gt;the law does not forbid the production of proprietary software&lt;/li&gt;
13519 &lt;li&gt;the law does not forbid the sale of proprietary software&lt;/li&gt;
13520 &lt;li&gt;the law does not specify which concrete software to use&lt;/li&gt;
13521 &lt;li&gt;the law does not dictate the supplier from whom software will be bought&lt;/li&gt;
13522 &lt;li&gt;the law does not limit the terms under which a software product can be licensed.&lt;/li&gt;
13523
13524 &lt;/p&gt;
13525
13526 &lt;p&gt;What the Bill does express clearly, is that, for software to be acceptable for the state it is not enough that it is technically capable of fulfilling a task, but that further the contractual conditions must satisfy a series of requirements regarding the license, without which the State cannot guarantee the citizen adequate processing of his data, watching over its integrity, confidentiality, and accessibility throughout time, as these are very critical aspects for its normal functioning.&lt;/p&gt;
13527
13528 &lt;p&gt;We agree, Mr. Gonzalez, that information and communication technology have a significant impact on the quality of life of the citizens (whether it be positive or negative). We surely also agree that the basic values I have pointed out above are fundamental in a democratic state like Peru. So we are very interested to know of any other way of guaranteeing these principles, other than through the use of free software in the terms defined by the Bill.&lt;/p&gt;
13529
13530 &lt;p&gt;As for the observations you have made, we will now go on to analyze them in detail:&lt;/p&gt;
13531
13532 &lt;p&gt;Firstly, you point out that: &quot;1. The bill makes it compulsory for all public bodies to use only free software, that is to say open source software, which breaches the principles of equality before the law, that of non-discrimination and the right of free private enterprise, freedom of industry and of contract, protected by the constitution.&quot;&lt;/p&gt;
13533
13534 &lt;p&gt;This understanding is in error. The Bill in no way affects the rights you list; it limits itself entirely to establishing conditions for the use of software on the part of state institutions, without in any way meddling in private sector transactions. It is a well established principle that the State does not enjoy the wide spectrum of contractual freedom of the private sector, as it is limited in its actions precisely by the requirement for transparency of public acts; and in this sense, the preservation of the greater common interest must prevail when legislating on the matter.&lt;/p&gt;
13535
13536 &lt;p&gt;The Bill protects equality under the law, since no natural or legal person is excluded from the right of offering these goods to the State under the conditions defined in the Bill and without more limitations than those established by the Law of State Contracts and Purchasing (T.U.O. by Supreme Decree No. 012-2001-PCM).&lt;/p&gt;
13537
13538 &lt;p&gt;The Bill does not introduce any discrimination whatever, since it only establishes *how* the goods have to be provided (which is a state power) and not *who* has to provide them (which would effectively be discriminatory, if restrictions based on national origin, race religion, ideology, sexual preference etc. were imposed). On the contrary, the Bill is decidedly antidiscriminatory. This is so because by defining with no room for doubt the conditions for the provision of software, it prevents state bodies from using software which has a license including discriminatory conditions.&lt;/p&gt;
13539
13540 &lt;p&gt;It should be obvious from the preceding two paragraphs that the Bill does not harm free private enterprise, since the latter can always choose under what conditions it will produce software; some of these will be acceptable to the State, and others will not be since they contradict the guarantee of the basic principles listed above. This free initiative is of course compatible with the freedom of industry and freedom of contract (in the limited form in which the State can exercise the latter). Any private subject can produce software under the conditions which the State requires, or can refrain from doing so. Nobody is forced to adopt a model of production, but if they wish to provide software to the State, they must provide the mechanisms which guarantee the basic principles, and which are those described in the Bill.&lt;/p&gt;
13541
13542 &lt;p&gt;By way of an example: nothing in the text of the Bill would prevent your company offering the State bodies an office &quot;suite&quot;, under the conditions defined in the Bill and setting the price that you consider satisfactory. If you did not, it would not be due to restrictions imposed by the law, but to business decisions relative to the method of commercializing your products, decisions with which the State is not involved.&lt;/p&gt;
13543
13544 &lt;p&gt;To continue; you note that:&quot; 2. The bill, by making the use of open source software compulsory, would establish discriminatory and non competitive practices in the contracting and purchasing by public bodies...&quot;&lt;/p&gt;
13545
13546 &lt;p&gt;This statement is just a reiteration of the previous one, and so the response can be found above. However, let us concern ourselves for a moment with your comment regarding &quot;non-competitive ... practices.&quot;&lt;/p&gt;
13547
13548 &lt;p&gt;Of course, in defining any kind of purchase, the buyer sets conditions which relate to the proposed use of the good or service. From the start, this excludes certain manufacturers from the possibility of competing, but does not exclude them &quot;a priori&quot;, but rather based on a series of principles determined by the autonomous will of the purchaser, and so the process takes place in conformance with the law. And in the Bill it is established that *no one* is excluded from competing as far as he guarantees the fulfillment of the basic principles.&lt;/p&gt;
13549
13550 &lt;p&gt;Furthermore, the Bill *stimulates* competition, since it tends to generate a supply of software with better conditions of usability, and to better existing work, in a model of continuous improvement.&lt;/p&gt;
13551
13552 &lt;p&gt;On the other hand, the central aspect of competivity is the chance to provide better choices to the consumer. Now, it is impossible to ignore the fact that marketing does not play a neutral role when the product is offered on the market (since accepting the opposite would lead one to suppose that firms&#39; expenses in marketing lack any sense), and that therefore a significant expense under this heading can influence the decisions of the purchaser. This influence of marketing is in large measure reduced by the bill that we are backing, since the choice within the framework proposed is based on the *technical merits* of the product and not on the effort put into commercialization by the producer; in this sense, competitiveness is increased, since the smallest software producer can compete on equal terms with the most powerful corporations.&lt;/p&gt;
13553
13554 &lt;p&gt;It is necessary to stress that there is no position more anti-competitive than that of the big software producers, which frequently abuse their dominant position, since in innumerable cases they propose as a solution to problems raised by users: &quot;update your software to the new version&quot; (at the user&#39;s expense, naturally); furthermore, it is common to find arbitrary cessation of technical help for products, which, in the provider&#39;s judgment alone, are &quot;old&quot;; and so, to receive any kind of technical assistance, the user finds himself forced to migrate to new versions (with non-trivial costs, especially as changes in hardware platform are often involved). And as the whole infrastructure is based on proprietary data formats, the user stays &quot;trapped&quot; in the need to continue using products from the same supplier, or to make the huge effort to change to another environment (probably also proprietary).&lt;/p&gt;
13555
13556 &lt;p&gt;You add: &quot;3. So, by compelling the State to favor a business model based entirely on open source, the bill would only discourage the local and international manufacturing companies, which are the ones which really undertake important expenditures, create a significant number of direct and indirect jobs, as well as contributing to the GNP, as opposed to a model of open source software which tends to have an ever weaker economic impact, since it mainly creates jobs in the service sector.&quot;&lt;/p&gt;
13557
13558 &lt;p&gt;I do not agree with your statement. Partly because of what you yourself point out in paragraph 6 of your letter, regarding the relative weight of services in the context of software use. This contradiction alone would invalidate your position. The service model, adopted by a large number of companies in the software industry, is much larger in economic terms, and with a tendency to increase, than the licensing of programs.&lt;/p&gt;
13559
13560 &lt;p&gt;On the other hand, the private sector of the economy has the widest possible freedom to choose the economic model which best suits its interests, even if this freedom of choice is often obscured subliminally by the disproportionate expenditure on marketing by the producers of proprietary software.&lt;/p&gt;
13561
13562 &lt;p&gt;In addition, a reading of your opinion would lead to the conclusion that the State market is crucial and essential for the proprietary software industry, to such a point that the choice made by the State in this bill would completely eliminate the market for these firms. If that is true, we can deduce that the State must be subsidizing the proprietary software industry. In the unlikely event that this were true, the State would have the right to apply the subsidies in the area it considered of greatest social value; it is undeniable, in this improbable hypothesis, that if the State decided to subsidize software, it would have to do so choosing the free over the proprietary, considering its social effect and the rational use of taxpayers money.&lt;/p&gt;
13563
13564 &lt;p&gt;In respect of the jobs generated by proprietary software in countries like ours, these mainly concern technical tasks of little aggregate value; at the local level, the technicians who provide support for proprietary software produced by transnational companies do not have the possibility of fixing bugs, not necessarily for lack of technical capability or of talent, but because they do not have access to the source code to fix it. With free software one creates more technically qualified employment and a framework of free competence where success is only tied to the ability to offer good technical support and quality of service, one stimulates the market, and one increases the shared fund of knowledge, opening up alternatives to generate services of greater total value and a higher quality level, to the benefit of all involved: producers, service organizations, and consumers.&lt;/p&gt;
13565
13566 &lt;p&gt;It is a common phenomenon in developing countries that local software industries obtain the majority of their takings in the service sector, or in the creation of &quot;ad hoc&quot; software. Therefore, any negative impact that the application of the Bill might have in this sector will be more than compensated by a growth in demand for services (as long as these are carried out to high quality standards). If the transnational software companies decide not to compete under these new rules of the game, it is likely that they will undergo some decrease in takings in terms of payment for licenses; however, considering that these firms continue to allege that much of the software used by the State has been illegally copied, one can see that the impact will not be very serious. Certainly, in any case their fortune will be determined by market laws, changes in which cannot be avoided; many firms traditionally associated with proprietary software have already set out on the road (supported by copious expense) of providing services associated with free software, which shows that the models are not mutually exclusive.&lt;/p&gt;
13567
13568 &lt;p&gt;With this bill the State is deciding that it needs to preserve certain fundamental values. And it is deciding this based on its sovereign power, without affecting any of the constitutional guarantees. If these values could be guaranteed without having to choose a particular economic model, the effects of the law would be even more beneficial. In any case, it should be clear that the State does not choose an economic model; if it happens that there only exists one economic model capable of providing software which provides the basic guarantee of these principles, this is because of historical circumstances, not because of an arbitrary choice of a given model.&lt;/p&gt;
13569
13570 &lt;p&gt;Your letter continues: &quot;4. The bill imposes the use of open source software without considering the dangers that this can bring from the point of view of security, guarantee, and possible violation of the intellectual property rights of third parties.&quot;&lt;/p&gt;
13571
13572 &lt;p&gt;Alluding in an abstract way to &quot;the dangers this can bring&quot;, without specifically mentioning a single one of these supposed dangers, shows at the least some lack of knowledge of the topic. So, allow me to enlighten you on these points.&lt;/p&gt;
13573
13574 &lt;p&gt;On security:&lt;/p&gt;
13575
13576 &lt;p&gt;National security has already been mentioned in general terms in the initial discussion of the basic principles of the bill. In more specific terms, relative to the security of the software itself, it is well known that all software (whether proprietary or free) contains errors or &quot;bugs&quot; (in programmers&#39; slang). But it is also well known that the bugs in free software are fewer, and are fixed much more quickly, than in proprietary software. It is not in vain that numerous public bodies responsible for the IT security of state systems in developed countries require the use of free software for the same conditions of security and efficiency.&lt;/p&gt;
13577
13578 &lt;p&gt;What is impossible to prove is that proprietary software is more secure than free, without the public and open inspection of the scientific community and users in general. This demonstration is impossible because the model of proprietary software itself prevents this analysis, so that any guarantee of security is based only on promises of good intentions (biased, by any reckoning) made by the producer itself, or its contractors.&lt;/p&gt;
13579
13580 &lt;p&gt;It should be remembered that in many cases, the licensing conditions include Non-Disclosure clauses which prevent the user from publicly revealing security flaws found in the licensed proprietary product.&lt;/p&gt;
13581
13582 &lt;p&gt;In respect of the guarantee:&lt;/p&gt;
13583
13584 &lt;p&gt;As you know perfectly well, or could find out by reading the &quot;End User License Agreement&quot; of the products you license, in the great majority of cases the guarantees are limited to replacement of the storage medium in case of defects, but in no case is compensation given for direct or indirect damages, loss of profits, etc... If as a result of a security bug in one of your products, not fixed in time by yourselves, an attacker managed to compromise crucial State systems, what guarantees, reparations and compensation would your company make in accordance with your licensing conditions? The guarantees of proprietary software, inasmuch as programs are delivered ``AS IS&#39;&#39;, that is, in the state in which they are, with no additional responsibility of the provider in respect of function, in no way differ from those normal with free software.&lt;/p&gt;
13585
13586 &lt;p&gt;On Intellectual Property:&lt;/p&gt;
13587
13588 &lt;p&gt;Questions of intellectual property fall outside the scope of this bill, since they are covered by specific other laws. The model of free software in no way implies ignorance of these laws, and in fact the great majority of free software is covered by copyright. In reality, the inclusion of this question in your observations shows your confusion in respect of the legal framework in which free software is developed. The inclusion of the intellectual property of others in works claimed as one&#39;s own is not a practice that has been noted in the free software community; whereas, unfortunately, it has been in the area of proprietary software. As an example, the condemnation by the Commercial Court of Nanterre, France, on 27th September 2001 of Microsoft Corp. to a penalty of 3 million francs in damages and interest, for violation of intellectual property (piracy, to use the unfortunate term that your firm commonly uses in its publicity).&lt;/p&gt;
13589
13590 &lt;p&gt;You go on to say that: &quot;The bill uses the concept of open source software incorrectly, since it does not necessarily imply that the software is free or of zero cost, and so arrives at mistaken conclusions regarding State savings, with no cost-benefit analysis to validate its position.&quot;&lt;/p&gt;
13591
13592 &lt;p&gt;This observation is wrong; in principle, freedom and lack of cost are orthogonal concepts: there is software which is proprietary and charged for (for example, MS Office), software which is proprietary and free of charge (MS Internet Explorer), software which is free and charged for (Red Hat, SuSE etc GNU/Linux distributions), software which is free and not charged for (Apache, Open Office, Mozilla), and even software which can be licensed in a range of combinations (MySQL).&lt;/p&gt;
13593
13594 &lt;p&gt;Certainly free software is not necessarily free of charge. And the text of the bill does not state that it has to be so, as you will have noted after reading it. The definitions included in the Bill state clearly *what* should be considered free software, at no point referring to freedom from charges. Although the possibility of savings in payments for proprietary software licenses are mentioned, the foundations of the bill clearly refer to the fundamental guarantees to be preserved and to the stimulus to local technological development. Given that a democratic State must support these principles, it has no other choice than to use software with publicly available source code, and to exchange information only in standard formats.&lt;/p&gt;
13595
13596 &lt;p&gt;If the State does not use software with these characteristics, it will be weakening basic republican principles. Luckily, free software also implies lower total costs; however, even given the hypothesis (easily disproved) that it was more expensive than proprietary software, the simple existence of an effective free software tool for a particular IT function would oblige the State to use it; not by command of this Bill, but because of the basic principles we enumerated at the start, and which arise from the very essence of the lawful democratic State.&lt;/p&gt;
13597
13598 &lt;p&gt;You continue: &quot;6. It is wrong to think that Open Source Software is free of charge. Research by the Gartner Group (an important investigator of the technological market recognized at world level) has shown that the cost of purchase of software (operating system and applications) is only 8% of the total cost which firms and institutions take on for a rational and truly beneficial use of the technology. The other 92% consists of: installation costs, enabling, support, maintenance, administration, and down-time.&quot;&lt;/p&gt;
13599
13600 &lt;p&gt;This argument repeats that already given in paragraph 5 and partly contradicts paragraph 3. For the sake of brevity we refer to the comments on those paragraphs. However, allow me to point out that your conclusion is logically false: even if according to Gartner Group the cost of software is on average only 8% of the total cost of use, this does not in any way deny the existence of software which is free of charge, that is, with a licensing cost of zero.&lt;/p&gt;
13601
13602 &lt;p&gt;In addition, in this paragraph you correctly point out that the service components and losses due to down-time make up the largest part of the total cost of software use, which, as you will note, contradicts your statement regarding the small value of services suggested in paragraph 3. Now the use of free software contributes significantly to reduce the remaining life-cycle costs. This reduction in the costs of installation, support etc. can be noted in several areas: in the first place, the competitive service model of free software, support and maintenance for which can be freely contracted out to a range of suppliers competing on the grounds of quality and low cost. This is true for installation, enabling, and support, and in large part for maintenance. In the second place, due to the reproductive characteristics of the model, maintenance carried out for an application is easily replicable, without incurring large costs (that is, without paying more than once for the same thing) since modifications, if one wishes, can be incorporated in the common fund of knowledge. Thirdly, the huge costs caused by non-functioning software (&quot;blue screens of death&quot;, malicious code such as virus, worms, and trojans, exceptions, general protection faults and other well-known problems) are reduced considerably by using more stable software; and it is well known that one of the most notable virtues of free software is its stability.&lt;/p&gt;
13603
13604 &lt;p&gt;You further state that: &quot;7. One of the arguments behind the bill is the supposed freedom from costs of open-source software, compared with the costs of commercial software, without taking into account the fact that there exist types of volume licensing which can be highly advantageous for the State, as has happened in other countries.&quot;&lt;/p&gt;
13605
13606 &lt;p&gt;I have already pointed out that what is in question is not the cost of the software but the principles of freedom of information, accessibility, and security. These arguments have been covered extensively in the preceding paragraphs to which I would refer you.&lt;/p&gt;
13607
13608 &lt;p&gt;On the other hand, there certainly exist types of volume licensing (although unfortunately proprietary software does not satisfy the basic principles). But as you correctly pointed out in the immediately preceding paragraph of your letter, they only manage to reduce the impact of a component which makes up no more than 8% of the total.&lt;/p&gt;
13609
13610 &lt;p&gt;You continue: &quot;8. In addition, the alternative adopted by the bill (I) is clearly more expensive, due to the high costs of software migration, and (II) puts at risk compatibility and interoperability of the IT platforms within the State, and between the State and the private sector, given the hundreds of versions of open source software on the market.&quot;&lt;/p&gt;
13611
13612 &lt;p&gt;Let us analyze your statement in two parts. Your first argument, that migration implies high costs, is in reality an argument in favor of the Bill. Because the more time goes by, the more difficult migration to another technology will become; and at the same time, the security risks associated with proprietary software will continue to increase. In this way, the use of proprietary systems and formats will make the State ever more dependent on specific suppliers. Once a policy of using free software has been established (which certainly, does imply some cost) then on the contrary migration from one system to another becomes very simple, since all data is stored in open formats. On the other hand, migration to an open software context implies no more costs than migration between two different proprietary software contexts, which invalidates your argument completely.&lt;/p&gt;
13613
13614 &lt;p&gt;The second argument refers to &quot;problems in interoperability of the IT platforms within the State, and between the State and the private sector&quot; This statement implies a certain lack of knowledge of the way in which free software is built, which does not maximize the dependence of the user on a particular platform, as normally happens in the realm of proprietary software. Even when there are multiple free software distributions, and numerous programs which can be used for the same function, interoperability is guaranteed as much by the use of standard formats, as required by the bill, as by the possibility of creating interoperable software given the availability of the source code.&lt;/p&gt;
13615
13616 &lt;p&gt;You then say that: &quot;9. The majority of open source code does not offer adequate levels of service nor the guarantee from recognized manufacturers of high productivity on the part of the users, which has led various public organizations to retract their decision to go with an open source software solution and to use commercial software in its place.&quot;&lt;/p&gt;
13617
13618 &lt;p&gt;This observation is without foundation. In respect of the guarantee, your argument was rebutted in the response to paragraph 4. In respect of support services, it is possible to use free software without them (just as also happens with proprietary software), but anyone who does need them can obtain support separately, whether from local firms or from international corporations, again just as in the case of proprietary software.&lt;/p&gt;
13619
13620 &lt;p&gt;On the other hand, it would contribute greatly to our analysis if you could inform us about free software projects *established* in public bodies which have already been abandoned in favor of proprietary software. We know of a good number of cases where the opposite has taken place, but not know of any where what you describe has taken place.&lt;/p&gt;
13621
13622 &lt;p&gt;You continue by observing that: &quot;10. The bill discourages the creativity of the Peruvian software industry, which invoices 40 million US$/year, exports 4 million US$ (10th in ranking among non-traditional exports, more than handicrafts) and is a source of highly qualified employment. With a law that encourages the use of open source, software programmers lose their intellectual property rights and their main source of payment.&quot;&lt;/p&gt;
13623
13624 &lt;p&gt;It is clear enough that nobody is forced to commercialize their code as free software. The only thing to take into account is that if it is not free software, it cannot be sold to the public sector. This is not in any case the main market for the national software industry. We covered some questions referring to the influence of the Bill on the generation of employment which would be both highly technically qualified and in better conditions for competition above, so it seems unnecessary to insist on this point.&lt;/p&gt;
13625
13626 &lt;p&gt;What follows in your statement is incorrect. On the one hand, no author of free software loses his intellectual property rights, unless he expressly wishes to place his work in the public domain. The free software movement has always been very respectful of intellectual property, and has generated widespread public recognition of its authors. Names like those of Richard Stallman, Linus Torvalds, Guido van Rossum, Larry Wall, Miguel de Icaza, Andrew Tridgell, Theo de Raadt, Andrea Arcangeli, Bruce Perens, Darren Reed, Alan Cox, Eric Raymond, and many others, are recognized world-wide for their contributions to the development of software that is used today by millions of people throughout the world. On the other hand, to say that the rewards for authors rights make up the main source of payment of Peruvian programmers is in any case a guess, in particular since there is no proof to this effect, nor a demonstration of how the use of free software by the State would influence these payments.&lt;/p&gt;
13627
13628 &lt;p&gt;You go on to say that: &quot;11. Open source software, since it can be distributed without charge, does not allow the generation of income for its developers through exports. In this way, the multiplier effect of the sale of software to other countries is weakened, and so in turn is the growth of the industry, while Government rules ought on the contrary to stimulate local industry.&quot;&lt;/p&gt;
13629
13630 &lt;p&gt;This statement shows once again complete ignorance of the mechanisms of and market for free software. It tries to claim that the market of sale of non- exclusive rights for use (sale of licenses) is the only possible one for the software industry, when you yourself pointed out several paragraphs above that it is not even the most important one. The incentives that the bill offers for the growth of a supply of better qualified professionals, together with the increase in experience that working on a large scale with free software within the State will bring for Peruvian technicians, will place them in a highly competitive position to offer their services abroad.&lt;/p&gt;
13631
13632 &lt;p&gt;You then state that: &quot;12. In the Forum, the use of open source software in education was discussed, without mentioning the complete collapse of this initiative in a country like Mexico, where precisely the State employees who founded the project now state that open source software did not make it possible to offer a learning experience to pupils in the schools, did not take into account the capability at a national level to give adequate support to the platform, and that the software did not and does not allow for the levels of platform integration that now exist in schools.&quot;&lt;/p&gt;
13633
13634 &lt;p&gt;In fact Mexico has gone into reverse with the Red Escolar (Schools Network) project. This is due precisely to the fact that the driving forces behind the Mexican project used license costs as their main argument, instead of the other reasons specified in our project, which are far more essential. Because of this conceptual mistake, and as a result of the lack of effective support from the SEP (Secretary of State for Public Education), the assumption was made that to implant free software in schools it would be enough to drop their software budget and send them a CD ROM with Gnu/Linux instead. Of course this failed, and it couldn&#39;t have been otherwise, just as school laboratories fail when they use proprietary software and have no budget for implementation and maintenance. That&#39;s exactly why our bill is not limited to making the use of free software mandatory, but recognizes the need to create a viable migration plan, in which the State undertakes the technical transition in an orderly way in order to then enjoy the advantages of free software.&lt;/p&gt;
13635
13636 &lt;p&gt;You end with a rhetorical question: &quot;13. If open source software satisfies all the requirements of State bodies, why do you need a law to adopt it? Shouldn&#39;t it be the market which decides freely which products give most benefits or value?&quot;&lt;/p&gt;
13637
13638 &lt;p&gt;We agree that in the private sector of the economy, it must be the market that decides which products to use, and no state interference is permissible there. However, in the case of the public sector, the reasoning is not the same: as we have already established, the state archives, handles, and transmits information which does not belong to it, but which is entrusted to it by citizens, who have no alternative under the rule of law. As a counterpart to this legal requirement, the State must take extreme measures to safeguard the integrity, confidentiality, and accessibility of this information. The use of proprietary software raises serious doubts as to whether these requirements can be fulfilled, lacks conclusive evidence in this respect, and so is not suitable for use in the public sector.&lt;/p&gt;
13639
13640 &lt;p&gt;The need for a law is based, firstly, on the realization of the fundamental principles listed above in the specific area of software; secondly, on the fact that the State is not an ideal homogeneous entity, but made up of multiple bodies with varying degrees of autonomy in decision making. Given that it is inappropriate to use proprietary software, the fact of establishing these rules in law will prevent the personal discretion of any state employee from putting at risk the information which belongs to citizens. And above all, because it constitutes an up-to-date reaffirmation in relation to the means of management and communication of information used today, it is based on the republican principle of openness to the public.&lt;/p&gt;
13641
13642 &lt;p&gt;In conformance with this universally accepted principle, the citizen has the right to know all information held by the State and not covered by well- founded declarations of secrecy based on law. Now, software deals with information and is itself information. Information in a special form, capable of being interpreted by a machine in order to execute actions, but crucial information all the same because the citizen has a legitimate right to know, for example, how his vote is computed or his taxes calculated. And for that he must have free access to the source code and be able to prove to his satisfaction the programs used for electoral computations or calculation of his taxes.&lt;/p&gt;
13643
13644 &lt;p&gt;I wish you the greatest respect, and would like to repeat that my office will always be open for you to expound your point of view to whatever level of detail you consider suitable.&lt;/p&gt;
13645
13646 &lt;p&gt;Cordially,&lt;br&gt;
13647 DR. EDGAR DAVID VILLANUEVA NUÑEZ&lt;br&gt;
13648 Congressman of the Republic of Perú.&lt;/p&gt;
13649 &lt;/blockquote&gt;
13650 </description>
13651 </item>
13652
13653 <item>
13654 <title>Officeshots still going strong</title>
13655 <link>http://people.skolelinux.org/pere/blog/Officeshots_still_going_strong.html</link>
13656 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Officeshots_still_going_strong.html</guid>
13657 <pubDate>Sat, 25 Dec 2010 09:40:00 +0100</pubDate>
13658 <description>&lt;p&gt;Half a year ago I
13659 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Officeshots_taking_shape.html&quot;&gt;wrote
13660 a bit&lt;/a&gt; about &lt;a href=&quot;http://www.officeshots.org/&quot;&gt;OfficeShots&lt;/a&gt;,
13661 a web service to allow anyone to test how ODF documents are handled by
13662 the different programs reading and writing the ODF format.&lt;/p&gt;
13663
13664 &lt;p&gt;I just had a look at the service, and it seem to be going strong.
13665 Very interesting to see the results reported in the gallery, how
13666 different Office implementations handle different ODF features. Sad
13667 to see that KOffice was not doing it very well, and happy to see that
13668 LibreOffice has been tested already (but sadly not listed as a option
13669 for OfficeShots users yet). I am glad to see that the ODF community
13670 got such a great test tool available.&lt;/p&gt;
13671 </description>
13672 </item>
13673
13674 <item>
13675 <title>How to test if a laptop is working with Linux</title>
13676 <link>http://people.skolelinux.org/pere/blog/How_to_test_if_a_laptop_is_working_with_Linux.html</link>
13677 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/How_to_test_if_a_laptop_is_working_with_Linux.html</guid>
13678 <pubDate>Wed, 22 Dec 2010 14:55:00 +0100</pubDate>
13679 <description>&lt;p&gt;The last few days I have spent at work here at the &lt;a
13680 href=&quot;http://www.uio.no/&quot;&gt;University of Oslo&lt;/a&gt; testing if the new
13681 batch of computers will work with Linux. Every year for the last few
13682 years the university have organised shared bid of a few thousand
13683 computers, and this year HP won the bid. Two different desktops and
13684 five different laptops are on the list this year. We in the UNIX
13685 group want to know which one of these computers work well with RHEL
13686 and Ubuntu, the two Linux distributions we currently handle at the
13687 university.&lt;/p&gt;
13688
13689 &lt;p&gt;My test method is simple, and I share it here to get feedback and
13690 perhaps inspire others to test hardware as well. To test, I PXE
13691 install the OS version of choice, and log in as my normal user and run
13692 a few applications and plug in selected pieces of hardware. When
13693 something fail, I make a note about this in the test matrix and move
13694 on. If I have some spare time I try to report the bug to the OS
13695 vendor, but as I only have the machines for a short time, I rarely
13696 have the time to do this for all the problems I find.&lt;/p&gt;
13697
13698 &lt;p&gt;Anyway, to get to the point of this post. Here is the simple tests
13699 I perform on a new model.&lt;/p&gt;
13700
13701 &lt;ul&gt;
13702
13703 &lt;li&gt;Is PXE installation working? I&#39;m testing with RHEL6, Ubuntu Lucid
13704 and Ubuntu Maverik at the moment. If I feel like it, I also test with
13705 RHEL5 and Debian Edu/Squeeze.&lt;/li&gt;
13706
13707 &lt;li&gt;Is X.org working? If the graphical login screen show up after
13708 installation, X.org is working.&lt;/li&gt;
13709
13710 &lt;li&gt;Is hardware accelerated OpenGL working? Running glxgears (in
13711 package mesa-utils on Ubuntu) and writing down the frames per second
13712 reported by the program.&lt;/li&gt;
13713
13714 &lt;li&gt;Is sound working? With Gnome and KDE, a sound is played when
13715 logging in, and if I can hear this the test is successful. If there
13716 are several audio exits on the machine, I try them all and check if
13717 the Gnome/KDE audio mixer can control where to send the sound. I
13718 normally test this by playing
13719 &lt;a href=&quot;http://www.nuug.no/aktiviteter/20101012-chef/ &quot;&gt;a HTML5
13720 video&lt;/a&gt; in Firefox/Iceweasel.&lt;/li&gt;
13721
13722 &lt;li&gt;Is the USB subsystem working? I test this by plugging in a USB
13723 memory stick and see if Gnome/KDE notices this.&lt;/li&gt;
13724
13725 &lt;li&gt;Is the CD/DVD player working? I test this by inserting any CD/DVD
13726 I have lying around, and see if Gnome/KDE notices this.&lt;/li&gt;
13727
13728 &lt;li&gt;Is any built in camera working? Test using cheese, and see if a
13729 picture from the v4l device show up.&lt;/li&gt;
13730
13731 &lt;li&gt;Is bluetooth working? Use the Gnome/KDE browsing tool to see if
13732 any bluetooth devices are discovered. In my office, I normally see a
13733 few.&lt;/li&gt;
13734
13735 &lt;li&gt;For laptops, is the SD or Compaq Flash reader working. I have
13736 memory modules lying around, and stick them in and see if Gnome/KDE
13737 notice this.&lt;/li&gt;
13738
13739 &lt;li&gt;For laptops, is suspend/hibernate working? I&#39;m testing if the
13740 special button work, and if the laptop continue to work after
13741 resume.&lt;/li&gt;
13742
13743 &lt;li&gt;For laptops, is the extra buttons working, like audio level,
13744 adjusting background light, switching on/off external video output,
13745 switching on/off wifi, bluetooth, etc? The set of buttons differ from
13746 laptop to laptop, so I just write down which are working and which are
13747 not.&lt;/li&gt;
13748
13749 &lt;li&gt;Some laptops have smart card readers, finger print readers,
13750 acceleration sensors etc. I rarely test these, as I do not know how
13751 to quickly test if they are working or not, so I only document their
13752 existence.&lt;/li&gt;
13753
13754 &lt;/ul&gt;
13755
13756 &lt;p&gt;By now I suspect you are really curious what the test results are
13757 for the HP machines I am testing. I&#39;m not done yet, so I will report
13758 the test results later. For now I can report that HP 8100 Elite work
13759 fine, and hibernation fail with HP EliteBook 8440p on Ubuntu Lucid,
13760 and audio fail on RHEL6. Ubuntu Maverik worked with 8440p. As you
13761 can see, I have most machines left to test. One interesting
13762 observation is that Ubuntu Lucid has almost twice the frame rate than
13763 RHEL6 with glxgears. No idea why.&lt;/p&gt;
13764 </description>
13765 </item>
13766
13767 <item>
13768 <title>Some thoughts on BitCoins</title>
13769 <link>http://people.skolelinux.org/pere/blog/Some_thoughts_on_BitCoins.html</link>
13770 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Some_thoughts_on_BitCoins.html</guid>
13771 <pubDate>Sat, 11 Dec 2010 15:10:00 +0100</pubDate>
13772 <description>&lt;p&gt;As I continue to explore
13773 &lt;a href=&quot;http://www.bitcoin.org/&quot;&gt;BitCoin&lt;/a&gt;, I&#39;ve starting to wonder
13774 what properties the system have, and how it will be affected by laws
13775 and regulations here in Norway. Here are some random notes.&lt;/p&gt;
13776
13777 &lt;p&gt;One interesting thing to note is that since the transactions are
13778 verified using a peer to peer network, all details about a transaction
13779 is known to everyone. This means that if a BitCoin address has been
13780 published like I did with mine in my initial post about BitCoin, it is
13781 possible for everyone to see how many BitCoins have been transfered to
13782 that address. There is even a web service to look at the details for
13783 all transactions. There I can see that my address
13784 &lt;a href=&quot;http://blockexplorer.com/address/15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;
13785 have received 16.06 Bitcoin, the
13786 &lt;a href=&quot;http://blockexplorer.com/address/1LfdGnGuWkpSJgbQySxxCWhv8MHqvwst3&quot;&gt;1LfdGnGuWkpSJgbQySxxCWhv8MHqvwst3&lt;/a&gt;
13787 address of Simon Phipps have received 181.97 BitCoin and the address
13788 &lt;a href=&quot;http://blockexplorer.com/address/1MCwBbhNGp5hRm5rC1Aims2YFRe2SXPYKt&quot;&gt;1MCwBbhNGp5hRm5rC1Aims2YFRe2SXPYKt&lt;/A&gt;
13789 of EFF have received 2447.38 BitCoins so far. Thank you to each and
13790 every one of you that donated bitcoins to support my activity. The
13791 fact that anyone can see how much money was transfered to a given
13792 address make it more obvious why the BitCoin community recommend to
13793 generate and hand out a new address for each transaction. I&#39;m told
13794 there is no way to track which addresses belong to a given person or
13795 organisation without the person or organisation revealing it
13796 themselves, as Simon, EFF and I have done.&lt;/p&gt;
13797
13798 &lt;p&gt;In Norway, and in most other countries, there are laws and
13799 regulations limiting how much money one can transfer across the border
13800 without declaring it. There are money laundering, tax and accounting
13801 laws and regulations I would expect to apply to the use of BitCoin.
13802 If the Skolelinux foundation
13803 (&lt;a href=&quot;http://linuxiskolen.no/slxdebianlabs/donations.html&quot;&gt;SLX
13804 Debian Labs&lt;/a&gt;) were to accept donations in BitCoin in addition to
13805 normal bank transfers like EFF is doing, how should this be accounted?
13806 Given that it is impossible to know if money can cross the border or
13807 not, should everything or nothing be declared? What exchange rate
13808 should be used when calculating taxes? Would receivers have to pay
13809 income tax if the foundation were to pay Skolelinux contributors in
13810 BitCoin? I have no idea, but it would be interesting to know.&lt;/p&gt;
13811
13812 &lt;p&gt;For a currency to be useful and successful, it must be trusted and
13813 accepted by a lot of users. It must be possible to get easy access to
13814 the currency (as a wage or using currency exchanges), and it must be
13815 easy to spend it. At the moment BitCoin seem fairly easy to get
13816 access to, but there are very few places to spend it. I am not really
13817 a regular user of any of the vendor types currently accepting BitCoin,
13818 so I wonder when my kind of shop would start accepting BitCoins. I
13819 would like to buy electronics, travels and subway tickets, not herbs
13820 and books. :) The currency is young, and this will improve over time
13821 if it become popular, but I suspect regular banks will start to lobby
13822 to get BitCoin declared illegal if it become popular. I&#39;m sure they
13823 will claim it is helping fund terrorism and money laundering (which
13824 probably would be true, as is any currency in existence), but I
13825 believe the problems should be solved elsewhere and not by blaming
13826 currencies.&lt;/p&gt;
13827
13828 &lt;p&gt;The process of creating new BitCoins is called mining, and it is
13829 CPU intensive process that depend on a bit of luck as well (as one is
13830 competing against all the other miners currently spending CPU cycles
13831 to see which one get the next lump of cash). The &quot;winner&quot; get 50
13832 BitCoin when this happen. Yesterday I came across the obvious way to
13833 join forces to increase ones changes of getting at least some coins,
13834 by coordinating the work on mining BitCoins across several machines
13835 and people, and sharing the result if one is lucky and get the 50
13836 BitCoins. Check out
13837 &lt;a href=&quot;http://www.bluishcoder.co.nz/bitcoin-pool/&quot;&gt;BitCoin Pool&lt;/a&gt;
13838 if this sounds interesting. I have not had time to try to set up a
13839 machine to participate there yet, but have seen that running on ones
13840 own for a few days have not yield any BitCoins througth mining
13841 yet.&lt;/p&gt;
13842
13843 &lt;p&gt;Update 2010-12-15: Found an &lt;a
13844 href=&quot;http://inertia.posterous.com/reply-to-the-underground-economist-why-bitcoi&quot;&gt;interesting
13845 criticism&lt;/a&gt; of bitcoin. Not quite sure how valid it is, but thought
13846 it was interesting to read. The arguments presented seem to be
13847 equally valid for gold, which was used as a currency for many years.&lt;/p&gt;
13848 </description>
13849 </item>
13850
13851 <item>
13852 <title>Now accepting bitcoins - anonymous and distributed p2p crypto-money</title>
13853 <link>http://people.skolelinux.org/pere/blog/Now_accepting_bitcoins___anonymous_and_distributed_p2p_crypto_money.html</link>
13854 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Now_accepting_bitcoins___anonymous_and_distributed_p2p_crypto_money.html</guid>
13855 <pubDate>Fri, 10 Dec 2010 08:20:00 +0100</pubDate>
13856 <description>&lt;p&gt;With this weeks lawless
13857 &lt;a href=&quot;http://www.salon.com/news/opinion/glenn_greenwald/2010/12/06/wikileaks/index.html&quot;&gt;governmental
13858 attacks&lt;/a&gt; on Wikileak and
13859 &lt;a href=&quot;http://www.salon.com/technology/dan_gillmor/2010/12/06/war_on_speech&quot;&gt;free
13860 speech&lt;/a&gt;, it has become obvious that PayPal, visa and mastercard can
13861 not be trusted to handle money transactions.
13862 A blog post from
13863 &lt;a href=&quot;http://webmink.com/2010/12/06/now-accepting-bitcoin/&quot;&gt;Simon
13864 Phipps on bitcoin&lt;/a&gt; reminded me about a project that a friend of
13865 mine mentioned earlier. I decided to follow Simon&#39;s example, and get
13866 involved with &lt;a href=&quot;http://www.bitcoin.org/&quot;&gt;BitCoin&lt;/a&gt;. I got
13867 some help from my friend to get it all running, and he even handed me
13868 some bitcoins to get started. I even donated a few bitcoins to Simon
13869 for helping me remember BitCoin.&lt;/p&gt;
13870
13871 &lt;p&gt;So, what is bitcoins, you probably wonder? It is a digital
13872 crypto-currency, decentralised and handled using peer-to-peer
13873 networks. It allows anonymous transactions and prohibits central
13874 control over the transactions, making it impossible for governments
13875 and companies alike to block donations and other transactions. The
13876 source is free software, and while the key dependency wxWidgets 2.9
13877 for the graphical user interface is missing in Debian, the command
13878 line client builds just fine. Hopefully Jonas
13879 &lt;a href=&quot;http://bugs.debian.org/578157&quot;&gt;will get the package into
13880 Debian&lt;/a&gt; soon.&lt;/p&gt;
13881
13882 &lt;p&gt;Bitcoins can be converted to other currencies, like USD and EUR.
13883 There are &lt;a href=&quot;http://www.bitcoin.org/trade&quot;&gt;companies accepting
13884 bitcoins&lt;/a&gt; when selling services and goods, and there are even
13885 currency &quot;stock&quot; markets where the exchange rate is decided. There
13886 are not many users so far, but the concept seems promising. If you
13887 want to get started and lack a friend with any bitcoins to spare,
13888 you can even get
13889 &lt;a href=&quot;https://freebitcoins.appspot.com/&quot;&gt;some for free&lt;/a&gt; (0.05
13890 bitcoin at the time of writing). Use
13891 &lt;a href=&quot;http://www.bitcoinwatch.com/&quot;&gt;BitcoinWatch&lt;/a&gt; to keep an eye
13892 on the current exchange rates.&lt;/p&gt;
13893
13894 &lt;p&gt;As an experiment, I have decided to set up bitcoind on one of my
13895 machines. If you want to support my activity, please send Bitcoin
13896 donations to the address
13897 &lt;b&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/b&gt;. Thank you!&lt;/p&gt;
13898 </description>
13899 </item>
13900
13901 <item>
13902 <title>Student group continue the work on my Reprap 3D printer</title>
13903 <link>http://people.skolelinux.org/pere/blog/Student_group_continue_the_work_on_my_Reprap_3D_printer.html</link>
13904 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Student_group_continue_the_work_on_my_Reprap_3D_printer.html</guid>
13905 <pubDate>Thu, 9 Dec 2010 19:30:00 +0100</pubDate>
13906 <description>&lt;p&gt;A few days ago, I was introduces to some students in the robot
13907 student assosiation &lt;a href=&quot;http://www.robotica.no/&quot;&gt;Robotica
13908 Osloensis&lt;/a&gt; at the University of Oslo where I work, who planned to
13909 get their own 3D printer. They wanted to learn from me based on my
13910 work in the area. After having a short lunch meeting with them, I
13911 offered them to borrow my reprap kit, as I never had time to complete
13912 the build and this seem unlike to change any time soon. I look
13913 forward to see how this goes. This monday their volunteer driver
13914 picked up my kit and drove it to their lab, and tomorrow I am told the
13915 last exam is over so they can start work on getting the 3D printer
13916 operational.&lt;/p&gt;
13917
13918 &lt;p&gt;The robotic group have already build several robots on their own,
13919 and seem capable of getting the reprap operational. I really look
13920 forward to being able to print all the cool 3D designs published on
13921 &lt;a href=&quot;http://www.thingiverse.com/&quot;&gt;Thingiverse&lt;/a&gt;. I even got
13922 some 3D scans I got made during Dagen@IFI when one of the groups at
13923 the computer science department at the university demonstrated their
13924 very cool 3D scanner.&lt;/p&gt;
13925 </description>
13926 </item>
13927
13928 <item>
13929 <title>Debian Edu development gathering and General Assembly for FRiSK</title>
13930 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_development_gathering_and_General_Assembly_for_FRiSK.html</link>
13931 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_development_gathering_and_General_Assembly_for_FRiSK.html</guid>
13932 <pubDate>Mon, 29 Nov 2010 18:40:00 +0100</pubDate>
13933 <description>&lt;p&gt;On friday, the first Debian Edu / Skolelinux
13934 &lt;a href=&quot;http://www.friprogramvareiskolen.no/Gathering/2010-12-03-05-Oslo&quot;&gt;development
13935 gathering&lt;/a&gt; in a long time take place here in Oslo, Norway. I
13936 really look forward to seeing all the good people working on the
13937 Squeeze release. The gathering is open for everyone interested in
13938 learning more about Debian Edu / Skolelinux.&lt;/p&gt;
13939
13940 &lt;p&gt;On Saturday, the Norwegian member organization taking care of
13941 organizing these development gatherings, Fri Programvare i Skolen,
13942 will hold its
13943 &lt;a href=&quot;http://friprogramvareiskolen.no/Genfors/2010&quot;&gt;General Assembly
13944 for 2010&lt;/a&gt;. Membership is open for all, and currently there are 388
13945 people registered as members. Last year 32 members cast their vote in
13946 the memberdb based election system. I hope more people find time to
13947 vote this year.&lt;/p&gt;
13948 </description>
13949 </item>
13950
13951 <item>
13952 <title>Why isn&#39;t Debian Edu using VLC?</title>
13953 <link>http://people.skolelinux.org/pere/blog/Why_isn_t_Debian_Edu_using_VLC_.html</link>
13954 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Why_isn_t_Debian_Edu_using_VLC_.html</guid>
13955 <pubDate>Sat, 27 Nov 2010 11:30:00 +0100</pubDate>
13956 <description>&lt;p&gt;In the latest issue of Linux Journal, the readers choices were
13957 presented, and the winner among the multimedia player were VLC.
13958 Personally, I like VLC, and it is my player of choice when I first try
13959 to play a video file or stream. Only if VLC fail will I drag out
13960 gmplayer to see if it can do better. The reason is mostly the failure
13961 model and trust. When VLC fail, it normally pop up a error message
13962 reporting the problem. When mplayer fail, it normally segfault or
13963 just hangs. The latter failure mode drain my trust in the program.&lt;p&gt;
13964
13965 &lt;p&gt;But even if VLC is my player of choice, we have choosen to use
13966 mplayer in &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian
13967 Edu/Skolelinux&lt;/a&gt;. The reason is simple. We need a good browser
13968 plugin to play web videos seamlessly, and the VLC browser plugin is
13969 not very good. For example, it lack in-line control buttons, so there
13970 is no way for the user to pause the video. Also, when I
13971 &lt;a href=&quot;http://wiki.debian.org/DebianEdu/BrowserMultimedia&quot;&gt;last
13972 tested the browser plugins&lt;/a&gt; available in Debian, the VLC plugin
13973 failed on several video pages where mplayer based plugins worked. If
13974 the browser plugin for VLC was as good as the gecko-mediaplayer
13975 package (which uses mplayer), we would switch.&lt;/P&gt;
13976
13977 &lt;p&gt;While VLC is a good player, its user interface is slightly
13978 annoying. The most annoying feature is its inconsistent use of
13979 keyboard shortcuts. When the player is in full screen mode, its
13980 shortcuts are different from when it is playing the video in a window.
13981 For example, space only work as pause when in full screen mode. I
13982 wish it had consisten shortcuts and that space also would work when in
13983 window mode. Another nice shortcut in gmplayer is [enter] to restart
13984 the current video. It is very nice when playing short videos from the
13985 web and want to restart it when new people arrive to have a look at
13986 what is going on.&lt;/p&gt;
13987 </description>
13988 </item>
13989
13990 <item>
13991 <title>Lenny-&gt;Squeeze upgrades of the Gnome and KDE desktop, now with apt-get autoremove</title>
13992 <link>http://people.skolelinux.org/pere/blog/Lenny__Squeeze_upgrades_of_the_Gnome_and_KDE_desktop__now_with_apt_get_autoremove.html</link>
13993 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Lenny__Squeeze_upgrades_of_the_Gnome_and_KDE_desktop__now_with_apt_get_autoremove.html</guid>
13994 <pubDate>Mon, 22 Nov 2010 14:15:00 +0100</pubDate>
13995 <description>&lt;p&gt;Michael Biebl suggested to me on IRC, that I changed my automated
13996 upgrade testing of the
13997 &lt;a href=&quot;http://people.skolelinux.org/~pere/debian-upgrade-testing/&quot;&gt;Lenny
13998 Gnome and KDE Desktop&lt;/a&gt; to do &lt;tt&gt;apt-get autoremove&lt;/tt&gt; when using apt-get.
13999 This seem like a very good idea, so I adjusted by test scripts and
14000 can now present the updated result from today:&lt;/p&gt;
14001
14002 &lt;p&gt;This is for Gnome:&lt;/p&gt;
14003
14004 &lt;p&gt;Installed using apt-get, missing with aptitude&lt;/p&gt;
14005
14006 &lt;blockquote&gt;&lt;p&gt;
14007 apache2.2-bin
14008 aptdaemon
14009 baobab
14010 binfmt-support
14011 browser-plugin-gnash
14012 cheese-common
14013 cli-common
14014 cups-pk-helper
14015 dmz-cursor-theme
14016 empathy
14017 empathy-common
14018 freedesktop-sound-theme
14019 freeglut3
14020 gconf-defaults-service
14021 gdm-themes
14022 gedit-plugins
14023 geoclue
14024 geoclue-hostip
14025 geoclue-localnet
14026 geoclue-manual
14027 geoclue-yahoo
14028 gnash
14029 gnash-common
14030 gnome
14031 gnome-backgrounds
14032 gnome-cards-data
14033 gnome-codec-install
14034 gnome-core
14035 gnome-desktop-environment
14036 gnome-disk-utility
14037 gnome-screenshot
14038 gnome-search-tool
14039 gnome-session-canberra
14040 gnome-system-log
14041 gnome-themes-extras
14042 gnome-themes-more
14043 gnome-user-share
14044 gstreamer0.10-fluendo-mp3
14045 gstreamer0.10-tools
14046 gtk2-engines
14047 gtk2-engines-pixbuf
14048 gtk2-engines-smooth
14049 hamster-applet
14050 libapache2-mod-dnssd
14051 libapr1
14052 libaprutil1
14053 libaprutil1-dbd-sqlite3
14054 libaprutil1-ldap
14055 libart2.0-cil
14056 libboost-date-time1.42.0
14057 libboost-python1.42.0
14058 libboost-thread1.42.0
14059 libchamplain-0.4-0
14060 libchamplain-gtk-0.4-0
14061 libcheese-gtk18
14062 libclutter-gtk-0.10-0
14063 libcryptui0
14064 libdiscid0
14065 libelf1
14066 libepc-1.0-2
14067 libepc-common
14068 libepc-ui-1.0-2
14069 libfreerdp-plugins-standard
14070 libfreerdp0
14071 libgconf2.0-cil
14072 libgdata-common
14073 libgdata7
14074 libgdu-gtk0
14075 libgee2
14076 libgeoclue0
14077 libgexiv2-0
14078 libgif4
14079 libglade2.0-cil
14080 libglib2.0-cil
14081 libgmime2.4-cil
14082 libgnome-vfs2.0-cil
14083 libgnome2.24-cil
14084 libgnomepanel2.24-cil
14085 libgpod-common
14086 libgpod4
14087 libgtk2.0-cil
14088 libgtkglext1
14089 libgtksourceview2.0-common
14090 libmono-addins-gui0.2-cil
14091 libmono-addins0.2-cil
14092 libmono-cairo2.0-cil
14093 libmono-corlib2.0-cil
14094 libmono-i18n-west2.0-cil
14095 libmono-posix2.0-cil
14096 libmono-security2.0-cil
14097 libmono-sharpzip2.84-cil
14098 libmono-system2.0-cil
14099 libmtp8
14100 libmusicbrainz3-6
14101 libndesk-dbus-glib1.0-cil
14102 libndesk-dbus1.0-cil
14103 libopal3.6.8
14104 libpolkit-gtk-1-0
14105 libpt2.6.7
14106 libpython2.6
14107 librpm1
14108 librpmio1
14109 libsdl1.2debian
14110 libsrtp0
14111 libssh-4
14112 libtelepathy-farsight0
14113 libtelepathy-glib0
14114 libtidy-0.99-0
14115 media-player-info
14116 mesa-utils
14117 mono-2.0-gac
14118 mono-gac
14119 mono-runtime
14120 nautilus-sendto
14121 nautilus-sendto-empathy
14122 p7zip-full
14123 pkg-config
14124 python-aptdaemon
14125 python-aptdaemon-gtk
14126 python-axiom
14127 python-beautifulsoup
14128 python-bugbuddy
14129 python-clientform
14130 python-coherence
14131 python-configobj
14132 python-crypto
14133 python-cupshelpers
14134 python-elementtree
14135 python-epsilon
14136 python-evolution
14137 python-feedparser
14138 python-gdata
14139 python-gdbm
14140 python-gst0.10
14141 python-gtkglext1
14142 python-gtksourceview2
14143 python-httplib2
14144 python-louie
14145 python-mako
14146 python-markupsafe
14147 python-mechanize
14148 python-nevow
14149 python-notify
14150 python-opengl
14151 python-openssl
14152 python-pam
14153 python-pkg-resources
14154 python-pyasn1
14155 python-pysqlite2
14156 python-rdflib
14157 python-serial
14158 python-tagpy
14159 python-twisted-bin
14160 python-twisted-conch
14161 python-twisted-core
14162 python-twisted-web
14163 python-utidylib
14164 python-webkit
14165 python-xdg
14166 python-zope.interface
14167 remmina
14168 remmina-plugin-data
14169 remmina-plugin-rdp
14170 remmina-plugin-vnc
14171 rhythmbox-plugin-cdrecorder
14172 rhythmbox-plugins
14173 rpm-common
14174 rpm2cpio
14175 seahorse-plugins
14176 shotwell
14177 software-center
14178 system-config-printer-udev
14179 telepathy-gabble
14180 telepathy-mission-control-5
14181 telepathy-salut
14182 tomboy
14183 totem
14184 totem-coherence
14185 totem-mozilla
14186 totem-plugins
14187 transmission-common
14188 xdg-user-dirs
14189 xdg-user-dirs-gtk
14190 xserver-xephyr
14191 &lt;/p&gt;&lt;/blockquote&gt;
14192
14193 &lt;p&gt;Installed using apt-get, removed with aptitude&lt;/p&gt;
14194
14195 &lt;blockquote&gt;&lt;p&gt;
14196 cheese
14197 ekiga
14198 eog
14199 epiphany-extensions
14200 evolution-exchange
14201 fast-user-switch-applet
14202 file-roller
14203 gcalctool
14204 gconf-editor
14205 gdm
14206 gedit
14207 gedit-common
14208 gnome-games
14209 gnome-games-data
14210 gnome-nettool
14211 gnome-system-tools
14212 gnome-themes
14213 gnuchess
14214 gucharmap
14215 guile-1.8-libs
14216 libavahi-ui0
14217 libdmx1
14218 libgalago3
14219 libgtk-vnc-1.0-0
14220 libgtksourceview2.0-0
14221 liblircclient0
14222 libsdl1.2debian-alsa
14223 libspeexdsp1
14224 libsvga1
14225 rhythmbox
14226 seahorse
14227 sound-juicer
14228 system-config-printer
14229 totem-common
14230 transmission-gtk
14231 vinagre
14232 vino
14233 &lt;/p&gt;&lt;/blockquote&gt;
14234
14235 &lt;p&gt;Installed using aptitude, missing with apt-get&lt;/p&gt;
14236
14237 &lt;blockquote&gt;&lt;p&gt;
14238 gstreamer0.10-gnomevfs
14239 &lt;/p&gt;&lt;/blockquote&gt;
14240
14241 &lt;p&gt;Installed using aptitude, removed with apt-get&lt;/p&gt;
14242
14243 &lt;blockquote&gt;&lt;p&gt;
14244 [nothing]
14245 &lt;/p&gt;&lt;/blockquote&gt;
14246
14247 &lt;p&gt;This is for KDE:&lt;/p&gt;
14248
14249 &lt;p&gt;Installed using apt-get, missing with aptitude&lt;/p&gt;
14250
14251 &lt;blockquote&gt;&lt;p&gt;
14252 ksmserver
14253 &lt;/p&gt;&lt;/blockquote&gt;
14254
14255 &lt;p&gt;Installed using apt-get, removed with aptitude&lt;/p&gt;
14256
14257 &lt;blockquote&gt;&lt;p&gt;
14258 kwin
14259 network-manager-kde
14260 &lt;/p&gt;&lt;/blockquote&gt;
14261
14262 &lt;p&gt;Installed using aptitude, missing with apt-get&lt;/p&gt;
14263
14264 &lt;blockquote&gt;&lt;p&gt;
14265 arts
14266 dolphin
14267 freespacenotifier
14268 google-gadgets-gst
14269 google-gadgets-xul
14270 kappfinder
14271 kcalc
14272 kcharselect
14273 kde-core
14274 kde-plasma-desktop
14275 kde-standard
14276 kde-window-manager
14277 kdeartwork
14278 kdeartwork-emoticons
14279 kdeartwork-style
14280 kdeartwork-theme-icon
14281 kdebase
14282 kdebase-apps
14283 kdebase-workspace
14284 kdebase-workspace-bin
14285 kdebase-workspace-data
14286 kdeeject
14287 kdelibs
14288 kdeplasma-addons
14289 kdeutils
14290 kdewallpapers
14291 kdf
14292 kfloppy
14293 kgpg
14294 khelpcenter4
14295 kinfocenter
14296 konq-plugins-l10n
14297 konqueror-nsplugins
14298 kscreensaver
14299 kscreensaver-xsavers
14300 ktimer
14301 kwrite
14302 libgle3
14303 libkde4-ruby1.8
14304 libkonq5
14305 libkonq5-templates
14306 libnetpbm10
14307 libplasma-ruby
14308 libplasma-ruby1.8
14309 libqt4-ruby1.8
14310 marble-data
14311 marble-plugins
14312 netpbm
14313 nuvola-icon-theme
14314 plasma-dataengines-workspace
14315 plasma-desktop
14316 plasma-desktopthemes-artwork
14317 plasma-runners-addons
14318 plasma-scriptengine-googlegadgets
14319 plasma-scriptengine-python
14320 plasma-scriptengine-qedje
14321 plasma-scriptengine-ruby
14322 plasma-scriptengine-webkit
14323 plasma-scriptengines
14324 plasma-wallpapers-addons
14325 plasma-widget-folderview
14326 plasma-widget-networkmanagement
14327 ruby
14328 sweeper
14329 update-notifier-kde
14330 xscreensaver-data-extra
14331 xscreensaver-gl
14332 xscreensaver-gl-extra
14333 xscreensaver-screensaver-bsod
14334 &lt;/p&gt;&lt;/blockquote&gt;
14335
14336 &lt;p&gt;Installed using aptitude, removed with apt-get&lt;/p&gt;
14337
14338 &lt;blockquote&gt;&lt;p&gt;
14339 ark
14340 google-gadgets-common
14341 google-gadgets-qt
14342 htdig
14343 kate
14344 kdebase-bin
14345 kdebase-data
14346 kdepasswd
14347 kfind
14348 klipper
14349 konq-plugins
14350 konqueror
14351 ksysguard
14352 ksysguardd
14353 libarchive1
14354 libcln6
14355 libeet1
14356 libeina-svn-06
14357 libggadget-1.0-0b
14358 libggadget-qt-1.0-0b
14359 libgps19
14360 libkdecorations4
14361 libkephal4
14362 libkonq4
14363 libkonqsidebarplugin4a
14364 libkscreensaver5
14365 libksgrd4
14366 libksignalplotter4
14367 libkunitconversion4
14368 libkwineffects1a
14369 libmarblewidget4
14370 libntrack-qt4-1
14371 libntrack0
14372 libplasma-geolocation-interface4
14373 libplasmaclock4a
14374 libplasmagenericshell4
14375 libprocesscore4a
14376 libprocessui4a
14377 libqalculate5
14378 libqedje0a
14379 libqtruby4shared2
14380 libqzion0a
14381 libruby1.8
14382 libscim8c2a
14383 libsmokekdecore4-3
14384 libsmokekdeui4-3
14385 libsmokekfile3
14386 libsmokekhtml3
14387 libsmokekio3
14388 libsmokeknewstuff2-3
14389 libsmokeknewstuff3-3
14390 libsmokekparts3
14391 libsmokektexteditor3
14392 libsmokekutils3
14393 libsmokenepomuk3
14394 libsmokephonon3
14395 libsmokeplasma3
14396 libsmokeqtcore4-3
14397 libsmokeqtdbus4-3
14398 libsmokeqtgui4-3
14399 libsmokeqtnetwork4-3
14400 libsmokeqtopengl4-3
14401 libsmokeqtscript4-3
14402 libsmokeqtsql4-3
14403 libsmokeqtsvg4-3
14404 libsmokeqttest4-3
14405 libsmokeqtuitools4-3
14406 libsmokeqtwebkit4-3
14407 libsmokeqtxml4-3
14408 libsmokesolid3
14409 libsmokesoprano3
14410 libtaskmanager4a
14411 libtidy-0.99-0
14412 libweather-ion4a
14413 libxklavier16
14414 libxxf86misc1
14415 okteta
14416 oxygencursors
14417 plasma-dataengines-addons
14418 plasma-scriptengine-superkaramba
14419 plasma-widget-lancelot
14420 plasma-widgets-addons
14421 plasma-widgets-workspace
14422 polkit-kde-1
14423 ruby1.8
14424 systemsettings
14425 update-notifier-common
14426 &lt;/p&gt;&lt;/blockquote&gt;
14427
14428 &lt;p&gt;Running apt-get autoremove made the results using apt-get and
14429 aptitude a bit more similar, but there are still quite a lott of
14430 differences. I have no idea what packages should be installed after
14431 the upgrade, but hope those that do can have a look.&lt;/p&gt;
14432 </description>
14433 </item>
14434
14435 <item>
14436 <title>Migrating Xen virtual machines using LVM to KVM using disk images</title>
14437 <link>http://people.skolelinux.org/pere/blog/Migrating_Xen_virtual_machines_using_LVM_to_KVM_using_disk_images.html</link>
14438 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Migrating_Xen_virtual_machines_using_LVM_to_KVM_using_disk_images.html</guid>
14439 <pubDate>Mon, 22 Nov 2010 11:20:00 +0100</pubDate>
14440 <description>&lt;p&gt;Most of the computers in use by the
14441 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu/Skolelinux project&lt;/a&gt;
14442 are virtual machines. And they have been Xen machines running on a
14443 fairly old IBM eserver xseries 345 machine, and we wanted to migrate
14444 them to KVM on a newer Dell PowerEdge 2950 host machine. This was a
14445 bit harder that it could have been, because we set up the Xen virtual
14446 machines to get the virtual partitions from LVM, which as far as I
14447 know is not supported by KVM. So to migrate, we had to convert
14448 several LVM logical volumes to partitions on a virtual disk file.&lt;/p&gt;
14449
14450 &lt;p&gt;I found
14451 &lt;a href=&quot;http://searchnetworking.techtarget.com.au/articles/35011-Six-steps-for-migrating-Xen-virtual-machines-to-KVM&quot;&gt;a
14452 nice recipe&lt;/a&gt; to do this, and wrote the following script to do the
14453 migration. It uses qemu-img from the qemu package to make the disk
14454 image, parted to partition it, losetup and kpartx to present the disk
14455 image partions as devices, and dd to copy the data. I NFS mounted the
14456 new servers storage area on the old server to do the migration.&lt;/p&gt;
14457
14458 &lt;pre&gt;
14459 #!/bin/sh
14460
14461 # Based on
14462 # http://searchnetworking.techtarget.com.au/articles/35011-Six-steps-for-migrating-Xen-virtual-machines-to-KVM
14463
14464 set -e
14465 set -x
14466
14467 if [ -z &quot;$1&quot; ] ; then
14468 echo &quot;Usage: $0 &amp;lt;hostname&amp;gt;&quot;
14469 exit 1
14470 else
14471 host=&quot;$1&quot;
14472 fi
14473
14474 if [ ! -e /dev/vg_data/$host-disk ] ; then
14475 echo &quot;error: unable to find LVM volume for $host&quot;
14476 exit 1
14477 fi
14478
14479 # Partitions need to be a bit bigger than the LVM LVs. not sure why.
14480 disksize=$( lvs --units m | grep $host-disk | awk &#39;{sum = sum + $4} END { print int(sum * 1.05) }&#39;)
14481 swapsize=$( lvs --units m | grep $host-swap | awk &#39;{sum = sum + $4} END { print int(sum * 1.05) }&#39;)
14482 totalsize=$(( ( $disksize + $swapsize ) ))
14483
14484 img=$host.img
14485 #dd if=/dev/zero of=$img bs=1M count=$(( $disksize + $swapsize ))
14486 qemu-img create $img ${totalsize}MMaking room on the Debian Edu/Sqeeze DVD
14487
14488 parted $img mklabel msdos
14489 parted $img mkpart primary linux-swap 0 $disksize
14490 parted $img mkpart primary ext2 $disksize $totalsize
14491 parted $img set 1 boot on
14492
14493 modprobe dm-mod
14494 losetup /dev/loop0 $img
14495 kpartx -a /dev/loop0
14496
14497 dd if=/dev/vg_data/$host-disk of=/dev/mapper/loop0p1 bs=1M
14498 fsck.ext3 -f /dev/mapper/loop0p1 || true
14499 mkswap /dev/mapper/loop0p2
14500
14501 kpartx -d /dev/loop0
14502 losetup -d /dev/loop0
14503 &lt;/pre&gt;
14504
14505 &lt;p&gt;The script is perhaps so simple that it is not copyrightable, but
14506 if it is, it is licenced using GPL v2 or later at your discretion.&lt;/p&gt;
14507
14508 &lt;p&gt;After doing this, I booted a Debian CD in rescue mode in KVM with
14509 the new disk image attached, installed grub-pc and linux-image-686 and
14510 set up grub to boot from the disk image. After this, the KVM machines
14511 seem to work just fine.&lt;/p&gt;
14512 </description>
14513 </item>
14514
14515 <item>
14516 <title>Lenny-&gt;Squeeze upgrades, apt vs aptitude with the Gnome and KDE desktop</title>
14517 <link>http://people.skolelinux.org/pere/blog/Lenny__Squeeze_upgrades__apt_vs_aptitude_with_the_Gnome_and_KDE_desktop.html</link>
14518 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Lenny__Squeeze_upgrades__apt_vs_aptitude_with_the_Gnome_and_KDE_desktop.html</guid>
14519 <pubDate>Sat, 20 Nov 2010 22:50:00 +0100</pubDate>
14520 <description>&lt;p&gt;I&#39;m still running upgrade testing of the
14521 &lt;a href=&quot;http://people.skolelinux.org/~pere/debian-upgrade-testing/&quot;&gt;Lenny
14522 Gnome and KDE Desktop&lt;/a&gt;, but have not had time to spend on reporting the
14523 status. Here is a short update based on a test I ran 20101118.&lt;/p&gt;
14524
14525 &lt;p&gt;I still do not know what a correct migration should look like, so I
14526 report any differences between apt and aptitude and hope someone else
14527 can see if anything should be changed.&lt;/p&gt;
14528
14529 &lt;p&gt;This is for Gnome:&lt;/p&gt;
14530
14531 &lt;p&gt;Installed using apt-get, missing with aptitude&lt;/p&gt;
14532
14533 &lt;blockquote&gt;&lt;p&gt;
14534 apache2.2-bin aptdaemon at-spi baobab binfmt-support
14535 browser-plugin-gnash cheese-common cli-common cpp-4.3 cups-pk-helper
14536 dmz-cursor-theme empathy empathy-common finger
14537 freedesktop-sound-theme freeglut3 gconf-defaults-service gdm-themes
14538 gedit-plugins geoclue geoclue-hostip geoclue-localnet geoclue-manual
14539 geoclue-yahoo gnash gnash-common gnome gnome-backgrounds
14540 gnome-cards-data gnome-codec-install gnome-core
14541 gnome-desktop-environment gnome-disk-utility gnome-screenshot
14542 gnome-search-tool gnome-session-canberra gnome-spell
14543 gnome-system-log gnome-themes-extras gnome-themes-more
14544 gnome-user-share gs-common gstreamer0.10-fluendo-mp3
14545 gstreamer0.10-tools gtk2-engines gtk2-engines-pixbuf
14546 gtk2-engines-smooth hal-info hamster-applet libapache2-mod-dnssd
14547 libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap
14548 libart2.0-cil libatspi1.0-0 libboost-date-time1.42.0
14549 libboost-python1.42.0 libboost-thread1.42.0 libchamplain-0.4-0
14550 libchamplain-gtk-0.4-0 libcheese-gtk18 libclutter-gtk-0.10-0
14551 libcryptui0 libcupsys2 libdiscid0 libeel2-data libelf1 libepc-1.0-2
14552 libepc-common libepc-ui-1.0-2 libfreerdp-plugins-standard
14553 libfreerdp0 libgail-common libgconf2.0-cil libgdata-common libgdata7
14554 libgdl-1-common libgdu-gtk0 libgee2 libgeoclue0 libgexiv2-0 libgif4
14555 libglade2.0-cil libglib2.0-cil libgmime2.4-cil libgnome-vfs2.0-cil
14556 libgnome2.24-cil libgnomepanel2.24-cil libgnomeprint2.2-data
14557 libgnomeprintui2.2-common libgnomevfs2-bin libgpod-common libgpod4
14558 libgtk2.0-cil libgtkglext1 libgtksourceview-common
14559 libgtksourceview2.0-common libmono-addins-gui0.2-cil
14560 libmono-addins0.2-cil libmono-cairo2.0-cil libmono-corlib2.0-cil
14561 libmono-i18n-west2.0-cil libmono-posix2.0-cil
14562 libmono-security2.0-cil libmono-sharpzip2.84-cil
14563 libmono-system2.0-cil libmtp8 libmusicbrainz3-6
14564 libndesk-dbus-glib1.0-cil libndesk-dbus1.0-cil libopal3.6.8
14565 libpolkit-gtk-1-0 libpt-1.10.10-plugins-alsa
14566 libpt-1.10.10-plugins-v4l libpt2.6.7 libpython2.6 librpm1 librpmio1
14567 libsdl1.2debian libservlet2.4-java libsrtp0 libssh-4
14568 libtelepathy-farsight0 libtelepathy-glib0 libtidy-0.99-0
14569 libxalan2-java libxerces2-java media-player-info mesa-utils
14570 mono-2.0-gac mono-gac mono-runtime nautilus-sendto
14571 nautilus-sendto-empathy openoffice.org-writer2latex
14572 openssl-blacklist p7zip p7zip-full pkg-config python-4suite-xml
14573 python-aptdaemon python-aptdaemon-gtk python-axiom
14574 python-beautifulsoup python-bugbuddy python-clientform
14575 python-coherence python-configobj python-crypto python-cupshelpers
14576 python-cupsutils python-eggtrayicon python-elementtree
14577 python-epsilon python-evolution python-feedparser python-gdata
14578 python-gdbm python-gst0.10 python-gtkglext1 python-gtkmozembed
14579 python-gtksourceview2 python-httplib2 python-louie python-mako
14580 python-markupsafe python-mechanize python-nevow python-notify
14581 python-opengl python-openssl python-pam python-pkg-resources
14582 python-pyasn1 python-pysqlite2 python-rdflib python-serial
14583 python-tagpy python-twisted-bin python-twisted-conch
14584 python-twisted-core python-twisted-web python-utidylib python-webkit
14585 python-xdg python-zope.interface remmina remmina-plugin-data
14586 remmina-plugin-rdp remmina-plugin-vnc rhythmbox-plugin-cdrecorder
14587 rhythmbox-plugins rpm-common rpm2cpio seahorse-plugins shotwell
14588 software-center svgalibg1 system-config-printer-udev
14589 telepathy-gabble telepathy-mission-control-5 telepathy-salut tomboy
14590 totem totem-coherence totem-mozilla totem-plugins
14591 transmission-common xdg-user-dirs xdg-user-dirs-gtk xserver-xephyr
14592 zip
14593 &lt;/p&gt;&lt;/blockquote&gt;
14594
14595 Installed using apt-get, removed with aptitude
14596
14597 &lt;blockquote&gt;&lt;p&gt;
14598 arj bluez-utils cheese dhcdbd djvulibre-desktop ekiga eog
14599 epiphany-extensions epiphany-gecko evolution-exchange
14600 fast-user-switch-applet file-roller gcalctool gconf-editor gdm gedit
14601 gedit-common gnome-app-install gnome-games gnome-games-data
14602 gnome-nettool gnome-system-tools gnome-themes gnome-utils
14603 gnome-vfs-obexftp gnome-volume-manager gnuchess gucharmap
14604 guile-1.8-libs hal libavahi-compat-libdnssd1 libavahi-core5
14605 libavahi-ui0 libbind9-50 libbluetooth2 libcamel1.2-11 libcdio7
14606 libcucul0 libcurl3 libdirectfb-1.0-0 libdmx1 libdvdread3
14607 libedata-cal1.2-6 libedataserver1.2-9 libeel2-2.20 libepc-1.0-1
14608 libepc-ui-1.0-1 libexchange-storage1.2-3 libfaad0 libgadu3
14609 libgalago3 libgd2-noxpm libgda3-3 libgda3-common libggz2 libggzcore9
14610 libggzmod4 libgksu1.2-0 libgksuui1.0-1 libgmyth0 libgnome-desktop-2
14611 libgnome-pilot2 libgnomecups1.0-1 libgnomeprint2.2-0
14612 libgnomeprintui2.2-0 libgpod3 libgraphviz4 libgtk-vnc-1.0-0
14613 libgtkhtml2-0 libgtksourceview1.0-0 libgtksourceview2.0-0
14614 libgucharmap6 libhesiod0 libicu38 libisccc50 libisccfg50 libiw29
14615 libjaxp1.3-java-gcj libkpathsea4 liblircclient0 libltdl3 liblwres50
14616 libmagick++10 libmagick10 libmalaga7 libmozjs1d libmpfr1ldbl libmtp7
14617 libmysqlclient15off libnautilus-burn4 libneon27 libnm-glib0
14618 libnm-util0 libopal-2.2 libosp5 libparted1.8-10 libpisock9
14619 libpisync1 libpoppler-glib3 libpoppler3 libpt-1.10.10 libraw1394-8
14620 libsdl1.2debian-alsa libsensors3 libsexy2 libsmbios2 libsoup2.2-8
14621 libspeexdsp1 libssh2-1 libsuitesparse-3.1.0 libsvga1
14622 libswfdec-0.6-90 libtalloc1 libtotem-plparser10 libtrackerclient0
14623 libvoikko1 libxalan2-java-gcj libxerces2-java-gcj libxklavier12
14624 libxtrap6 libxxf86misc1 libzephyr3 mysql-common rhythmbox seahorse
14625 sound-juicer swfdec-gnome system-config-printer totem-common
14626 totem-gstreamer transmission-gtk vinagre vino w3c-dtd-xhtml wodim
14627 &lt;/p&gt;&lt;/blockquote&gt;
14628
14629 &lt;p&gt;Installed using aptitude, missing with apt-get&lt;/p&gt;
14630
14631 &lt;blockquote&gt;&lt;p&gt;
14632 gstreamer0.10-gnomevfs
14633 &lt;/p&gt;&lt;/blockquote&gt;
14634
14635 &lt;p&gt;Installed using aptitude, removed with apt-get&lt;/p&gt;
14636
14637 &lt;blockquote&gt;&lt;p&gt;
14638 [nothing]
14639 &lt;/p&gt;&lt;/blockquote&gt;
14640
14641 &lt;p&gt;This is for KDE:&lt;/p&gt;
14642
14643 &lt;p&gt;Installed using apt-get, missing with aptitude&lt;/p&gt;
14644
14645 &lt;blockquote&gt;&lt;p&gt;
14646 autopoint bomber bovo cantor cantor-backend-kalgebra cpp-4.3 dcoprss
14647 edict espeak espeak-data eyesapplet fifteenapplet finger gettext
14648 ghostscript-x git gnome-audio gnugo granatier gs-common
14649 gstreamer0.10-pulseaudio indi kaddressbook-plugins kalgebra
14650 kalzium-data kanjidic kapman kate-plugins kblocks kbreakout kbstate
14651 kde-icons-mono kdeaccessibility kdeaddons-kfile-plugins
14652 kdeadmin-kfile-plugins kdeartwork-misc kdeartwork-theme-window
14653 kdeedu kdeedu-data kdeedu-kvtml-data kdegames kdegames-card-data
14654 kdegames-mahjongg-data kdegraphics-kfile-plugins kdelirc
14655 kdemultimedia-kfile-plugins kdenetwork-kfile-plugins
14656 kdepim-kfile-plugins kdepim-kio-plugins kdessh kdetoys kdewebdev
14657 kdiamond kdnssd kfilereplace kfourinline kgeography-data kigo
14658 killbots kiriki klettres-data kmoon kmrml knewsticker-scripts
14659 kollision kpf krosspython ksirk ksmserver ksquares kstars-data
14660 ksudoku kubrick kweather libasound2-plugins libboost-python1.42.0
14661 libcfitsio3 libconvert-binhex-perl libcrypt-ssleay-perl libdb4.6++
14662 libdjvulibre-text libdotconf1.0 liberror-perl libespeak1
14663 libfinance-quote-perl libgail-common libgsl0ldbl libhtml-parser-perl
14664 libhtml-tableextract-perl libhtml-tagset-perl libhtml-tree-perl
14665 libio-stringy-perl libkdeedu4 libkdegames5 libkiten4 libkpathsea5
14666 libkrossui4 libmailtools-perl libmime-tools-perl
14667 libnews-nntpclient-perl libopenbabel3 libportaudio2 libpulse-browse0
14668 libservlet2.4-java libspeechd2 libtiff-tools libtimedate-perl
14669 libunistring0 liburi-perl libwww-perl libxalan2-java libxerces2-java
14670 lirc luatex marble networkstatus noatun-plugins
14671 openoffice.org-writer2latex palapeli palapeli-data parley
14672 parley-data poster psutils pulseaudio pulseaudio-esound-compat
14673 pulseaudio-module-x11 pulseaudio-utils quanta-data rocs rsync
14674 speech-dispatcher step svgalibg1 texlive-binaries texlive-luatex
14675 ttf-sazanami-gothic
14676 &lt;/p&gt;&lt;/blockquote&gt;
14677
14678 &lt;p&gt;Installed using apt-get, removed with aptitude&lt;/p&gt;
14679
14680 &lt;blockquote&gt;&lt;p&gt;
14681 amor artsbuilder atlantik atlantikdesigner blinken bluez-utils cvs
14682 dhcdbd djvulibre-desktop imlib-base imlib11 kalzium kanagram kandy
14683 kasteroids katomic kbackgammon kbattleship kblackbox kbounce kbruch
14684 kcron kdat kdemultimedia-kappfinder-data kdeprint kdict kdvi kedit
14685 keduca kenolaba kfax kfaxview kfouleggs kgeography kghostview
14686 kgoldrunner khangman khexedit kiconedit kig kimagemapeditor
14687 kitchensync kiten kjumpingcube klatin klettres klickety klines
14688 klinkstatus kmag kmahjongg kmailcvt kmenuedit kmid kmilo kmines
14689 kmousetool kmouth kmplot knetwalk kodo kolf kommander konquest kooka
14690 kpager kpat kpdf kpercentage kpilot kpoker kpovmodeler krec
14691 kregexpeditor kreversi ksame ksayit kshisen ksig ksim ksirc ksirtet
14692 ksmiletris ksnake ksokoban kspaceduel kstars ksvg ksysv kteatime
14693 ktip ktnef ktouch ktron kttsd ktuberling kturtle ktux kuickshow
14694 kverbos kview kviewshell kvoctrain kwifimanager kwin kwin4 kwordquiz
14695 kworldclock kxsldbg libakode2 libarts1-akode libarts1-audiofile
14696 libarts1-mpeglib libarts1-xine libavahi-compat-libdnssd1
14697 libavahi-core5 libavc1394-0 libbind9-50 libbluetooth2
14698 libboost-python1.34.1 libcucul0 libcurl3 libcvsservice0
14699 libdirectfb-1.0-0 libdjvulibre21 libdvdread3 libfaad0 libfreebob0
14700 libgd2-noxpm libgraphviz4 libgsmme1c2a libgtkhtml2-0 libicu38
14701 libiec61883-0 libindex0 libisccc50 libisccfg50 libiw29
14702 libjaxp1.3-java-gcj libk3b3 libkcal2b libkcddb1 libkdeedu3
14703 libkdegames1 libkdepim1a libkgantt0 libkleopatra1 libkmime2
14704 libkpathsea4 libkpimexchange1 libkpimidentities1 libkscan1
14705 libksieve0 libktnef1 liblockdev1 libltdl3 liblwres50 libmagick10
14706 libmimelib1c2a libmodplug0c2 libmozjs1d libmpcdec3 libmpfr1ldbl
14707 libneon27 libnm-util0 libopensync0 libpisock9 libpoppler-glib3
14708 libpoppler-qt2 libpoppler3 libraw1394-8 librss1 libsensors3
14709 libsmbios2 libssh2-1 libsuitesparse-3.1.0 libswfdec-0.6-90
14710 libtalloc1 libxalan2-java-gcj libxerces2-java-gcj libxtrap6 lskat
14711 mpeglib network-manager-kde noatun pmount tex-common texlive-base
14712 texlive-common texlive-doc-base texlive-fonts-recommended tidy
14713 ttf-dustin ttf-kochi-gothic ttf-sjfonts
14714 &lt;/p&gt;&lt;/blockquote&gt;
14715
14716 &lt;p&gt;Installed using aptitude, missing with apt-get&lt;/p&gt;
14717
14718 &lt;blockquote&gt;&lt;p&gt;
14719 dolphin kde-core kde-plasma-desktop kde-standard kde-window-manager
14720 kdeartwork kdebase kdebase-apps kdebase-workspace
14721 kdebase-workspace-bin kdebase-workspace-data kdeutils kscreensaver
14722 kscreensaver-xsavers libgle3 libkonq5 libkonq5-templates libnetpbm10
14723 netpbm plasma-widget-folderview plasma-widget-networkmanagement
14724 xscreensaver-data-extra xscreensaver-gl xscreensaver-gl-extra
14725 xscreensaver-screensaver-bsod
14726 &lt;/p&gt;&lt;/blockquote&gt;
14727
14728 &lt;p&gt;Installed using aptitude, removed with apt-get&lt;/p&gt;
14729
14730 &lt;blockquote&gt;&lt;p&gt;
14731 kdebase-bin konq-plugins konqueror
14732 &lt;/p&gt;&lt;/blockquote&gt;
14733 </description>
14734 </item>
14735
14736 <item>
14737 <title>Gnash buildbot slave and Debian kfreebsd</title>
14738 <link>http://people.skolelinux.org/pere/blog/Gnash_buildbot_slave_and_Debian_kfreebsd.html</link>
14739 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Gnash_buildbot_slave_and_Debian_kfreebsd.html</guid>
14740 <pubDate>Sat, 20 Nov 2010 07:20:00 +0100</pubDate>
14741 <description>&lt;p&gt;Answering
14742 &lt;a href=&quot;http://www.listware.net/201011/gnash-dev/67431-gnash-dev-buildbot-looking-for-slaves.html&quot;&gt;the
14743 call from the Gnash project&lt;/a&gt; for
14744 &lt;a href=&quot;http://www.gnashdev.org:8010&quot;&gt;buildbot&lt;/a&gt; slaves to test the
14745 current source, I have set up a virtual KVM machine on the Debian
14746 Edu/Skolelinux virtualization host to test the git source on
14747 Debian/Squeeze. I hope this can help the developers in getting new
14748 releases out more often.&lt;/p&gt;
14749
14750 &lt;p&gt;As the developers want less main-stream build platforms tested to,
14751 I have considered setting up a &lt;a
14752 href=&quot;http://www.debian.org/ports/kfreebsd-gnu/&quot;&gt;Debian/kfreebsd&lt;/a&gt;
14753 machine as well. I have also considered using the kfreebsd
14754 architecture in Debian as a file server in NUUG to get access to the 5
14755 TB zfs volume we currently use to store DV video. Because of this, I
14756 finally got around to do a test installation of Debian/Squeeze with
14757 kfreebsd. Installation went fairly smooth, thought I noticed some
14758 visual glitches in the cdebconf dialogs (black cursor left on the
14759 screen at random locations). Have not gotten very far with the
14760 testing. Noticed cfdisk did not work, but fdisk did so it was not a
14761 fatal problem. Have to spend some more time on it to see if it is
14762 useful as a file server for NUUG. Will try to find time to set up a
14763 gnash buildbot slave on the Debian Edu/Skolelinux this weekend.&lt;/p&gt;
14764 </description>
14765 </item>
14766
14767 <item>
14768 <title>Debian in 3D</title>
14769 <link>http://people.skolelinux.org/pere/blog/Debian_in_3D.html</link>
14770 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_in_3D.html</guid>
14771 <pubDate>Tue, 9 Nov 2010 16:10:00 +0100</pubDate>
14772 <description>&lt;p&gt;&lt;img src=&quot;http://thingiverse-production.s3.amazonaws.com/renders/23/e0/c4/f9/2b/debswagtdose_preview_medium.jpg&quot;&gt;&lt;/p&gt;
14773
14774 &lt;p&gt;3D printing is just great. I just came across this Debian logo in
14775 3D linked in from
14776 &lt;a href=&quot;http://blog.thingiverse.com/2010/11/09/participatory-branding/&quot;&gt;the
14777 thingiverse blog&lt;/a&gt;.&lt;/p&gt;
14778 </description>
14779 </item>
14780
14781 <item>
14782 <title>Making room on the Debian Edu/Sqeeze DVD</title>
14783 <link>http://people.skolelinux.org/pere/blog/Making_room_on_the_Debian_Edu_Sqeeze_DVD.html</link>
14784 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Making_room_on_the_Debian_Edu_Sqeeze_DVD.html</guid>
14785 <pubDate>Sun, 7 Nov 2010 11:45:00 +0100</pubDate>
14786 <description>&lt;p&gt;Prioritising packages for the Debian Edu /
14787 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Skolelinux&lt;/a&gt; DVD, which is
14788 supposed provide a school with all the services and user applications
14789 needed on the pupils computer network has always been hard. Even
14790 schools without Internet connections should be able to get Debian Edu
14791 working using this DVD.&lt;/p&gt;
14792
14793 &lt;p&gt;The job became a lot harder when apt and aptitude started
14794 installing recommended packages by default. We want the same set of
14795 packages to be installed when using the DVD and the netinst CD, and
14796 that means all recommended packages need to be on the DVD. I created
14797 a patch for debian-cd in &lt;a href=&quot;http://bugs.debian.org/601203&quot;&gt;BTS
14798 report #601203&lt;/a&gt; to do this, and since this change was applied to
14799 the Debian Edu DVD build, we have been seriously short on space.&lt;/p&gt;
14800
14801 &lt;p&gt;A few days ago we decided to drop blender, wxmaxima and kicad from
14802 the default installation to save space on the DVD, believing that
14803 those needing these applications are few and can get them from the
14804 Debian archive.&lt;/p&gt;
14805
14806 &lt;p&gt;Yesterday, I had a look what source packages to see which packages
14807 were using most space. A few large packages are well know;
14808 openoffice.org, openclipart and fluid-soundfont. But I also
14809 discovered that lilypond used 106 MiB and fglrx-driver used 53 MiB.
14810 The lilypond package is pulled in as a dependency for rosegarden, and
14811 when looking a bit closer I discovered that 99 MiB of the 106 MiB were
14812 the documentation package, which is recommended by the binary package.
14813 I decided to drop this documentation package from our DVD, as most of
14814 our users will use the GUI front-ends and do not need the lilypond
14815 documentation. Similarly, I dropped the non-free fglrx-driver package
14816 which might be installed by d-i when its hardware is detected, as the
14817 free X driver should work.&lt;/p&gt;
14818
14819 &lt;p&gt;With this change, we finally got space for the LXDE and Gnome
14820 desktop packages as well as the language specific packages making the
14821 DVD more useful again.&lt;/p&gt;
14822 </description>
14823 </item>
14824
14825 <item>
14826 <title>Software updates 2010-10-24</title>
14827 <link>http://people.skolelinux.org/pere/blog/Software_updates_2010_10_24.html</link>
14828 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Software_updates_2010_10_24.html</guid>
14829 <pubDate>Sun, 24 Oct 2010 22:45:00 +0200</pubDate>
14830 <description>&lt;p&gt;Some updates.&lt;/p&gt;
14831
14832 &lt;p&gt;My &lt;a href=&quot;http://pledgebank.com/gnash-avm2&quot;&gt;gnash pledge&lt;/a&gt; to
14833 raise money for the project is going well. The lower limit of 10
14834 signers was reached in 24 hours, and so far 13 people have signed it.
14835 More signers and more funding is most welcome, and I am really curious
14836 how far we can get before the time limit of December 24 is reached.
14837 :)&lt;/p&gt;
14838
14839 &lt;p&gt;On the #gnash IRC channel on irc.freenode.net, I was just tipped
14840 about what appear to be a great code coverage tool capable of
14841 generating code coverage stats without any changes to the source code.
14842 It is called
14843 &lt;a href=&quot;http://simonkagstrom.github.com/kcov/index.html&quot;&gt;kcov&lt;/a&gt;,
14844 and can be used using &lt;tt&gt;kcov &amp;lt;directory&amp;gt; &amp;lt;binary&amp;gt;&lt;/tt&gt;.
14845 It is missing in Debian, but the git source built just fine in Squeeze
14846 after I installed libelf-dev, libdwarf-dev, pkg-config and
14847 libglib2.0-dev. Failed to build in Lenny, but suspect that is
14848 solvable. I hope kcov make it into Debian soon.&lt;/p&gt;
14849
14850 &lt;p&gt;Finally found time to wrap up the release notes for &lt;a
14851 href=&quot;http://lists.debian.org/debian-edu-announce/2010/10/msg00002.html&quot;&gt;a
14852 new alpha release of Debian Edu&lt;/a&gt;, and just published the second
14853 alpha test release of the Squeeze based Debian Edu /
14854 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Skolelinux&lt;/a&gt;
14855 release. Give it a try if you need a complete linux solution for your
14856 school, including central infrastructure server, workstations, thin
14857 client servers and diskless workstations. A nice touch added
14858 yesterday is RDP support on the thin client servers, for windows
14859 clients to get a Linux desktop on request.&lt;/p&gt;
14860 </description>
14861 </item>
14862
14863 <item>
14864 <title>Pledge for funding to the Gnash project to get AVM2 support</title>
14865 <link>http://people.skolelinux.org/pere/blog/Pledge_for_funding_to_the_Gnash_project_to_get_AVM2_support.html</link>
14866 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Pledge_for_funding_to_the_Gnash_project_to_get_AVM2_support.html</guid>
14867 <pubDate>Tue, 19 Oct 2010 14:45:00 +0200</pubDate>
14868 <description>&lt;p&gt;&lt;a href=&quot;http://www.getgnash.org/&quot;&gt;The Gnash project&lt;/a&gt; is the
14869 most promising solution for a Free Software Flash implementation. It
14870 has done great so far, but there is still far to go, and recently its
14871 funding has dried up. I believe AVM2 support in Gnash is vital to the
14872 continued progress of the project, as more and more sites show up with
14873 AVM2 flash files.&lt;/p&gt;
14874
14875 &lt;p&gt;To try to get funding for developing such support, I have started
14876 &lt;a href=&quot;http://www.pledgebank.com/gnash-avm2&quot;&gt;a pledge&lt;/a&gt; with the
14877 following text:&lt;/P&gt;
14878
14879 &lt;p&gt;&lt;blockquote&gt;
14880
14881 &lt;p&gt;&quot;I will pay 100$ to the Gnash project to develop AVM2 support but
14882 only if 10 other people will do the same.&quot;&lt;/p&gt;
14883
14884 &lt;p&gt;- Petter Reinholdtsen, free software developer&lt;/p&gt;
14885
14886 &lt;p&gt;Deadline to sign up by: 24th December 2010&lt;/p&gt;
14887
14888 &lt;p&gt;The Gnash project need to get support for the new Flash file
14889 format AVM2 to work with a lot of sites using Flash on the
14890 web. Gnash already work with a lot of Flash sites using the old AVM1
14891 format, but more and more sites are using the AVM2 format these
14892 days. The project web page is available from
14893 http://www.getgnash.org/ . Gnash is a free software implementation
14894 of Adobe Flash, allowing those of us that do not accept the terms of
14895 the Adobe Flash license to get access to Flash sites.&lt;/p&gt;
14896
14897 &lt;p&gt;The project need funding to get developers to put aside enough
14898 time to develop the AVM2 support, and this pledge is my way to try
14899 to get this to happen.&lt;/p&gt;
14900
14901 &lt;p&gt;The project accept donations via the OpenMediaNow foundation,
14902 &lt;a href=&quot;http://www.openmedianow.org/?q=node/32&quot;&gt;http://www.openmedianow.org/?q=node/32&lt;/a&gt; .&lt;/p&gt;
14903
14904 &lt;/blockquote&gt;&lt;/p&gt;
14905
14906 &lt;p&gt;I hope you will support this effort too. I hope more than 10
14907 people will participate to make this happen. The more money the
14908 project gets, the more features it can develop using these funds.
14909 :)&lt;/p&gt;
14910 </description>
14911 </item>
14912
14913 <item>
14914 <title>First version of a Perl library to control the Spykee robot</title>
14915 <link>http://people.skolelinux.org/pere/blog/First_version_of_a_Perl_library_to_control_the_Spykee_robot.html</link>
14916 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/First_version_of_a_Perl_library_to_control_the_Spykee_robot.html</guid>
14917 <pubDate>Sat, 9 Oct 2010 14:00:00 +0200</pubDate>
14918 <description>&lt;p&gt;This summer I got the chance to buy cheap Spykee robots, and since
14919 then I have worked on getting Linux software in place to control them.
14920 The firmware for the robot is available from the producer, and using
14921 that source it was trivial to figure out the protocol specification.
14922 I&#39;ve started on a perl library to control it, and made some demo
14923 programs using this perl library to allow one to control the
14924 robots.&lt;/p&gt;
14925
14926 &lt;p&gt;The library is quite functional already, and capable of controlling
14927 the driving, fetching video, uploading MP3s and play them. There are
14928 a few less important features too.&lt;/p&gt;
14929
14930 &lt;p&gt;Since a few weeks ago, I ran out of time to spend on this project,
14931 but I never got around to releasing the current source. I decided
14932 today that it was time to do something about it, and uploaded the
14933 source to my Debian package store at people.skolelinux.org.&lt;/p&gt;
14934
14935 &lt;p&gt;Because it was simpler for me, I made a Debian package and
14936 published the source and deb. If you got a spykee robot, grab the
14937 source or binary package:&lt;/p&gt;
14938
14939 &lt;p&gt;&lt;ul&gt;
14940 &lt;li&gt;&lt;a href=&quot;http://people.skolelinux.org/~pere/debian/packages/lenny/libspykee-perl_0.0.20101009-1.tar.gz&quot;&gt;libspykee-perl_0.0.20101009-1.tar.gz&lt;/a&gt;&lt;/li&gt;
14941 &lt;li&gt;&lt;a href=&quot;http://people.skolelinux.org/~pere/debian/packages/lenny/libspykee-perl_0.0.20101009-1.dsc&quot;&gt;libspykee-perl_0.0.20101009-1.dsc&lt;/a&gt;&lt;/li&gt;
14942 &lt;li&gt;&lt;a href=&quot;http://people.skolelinux.org/~pere/debian/packages/lenny/libspykee-perl_0.0.20101009-1_all.deb&quot;&gt;libspykee-perl_0.0.20101009-1_all.deb&lt;/a&gt;&lt;/li&gt;
14943 &lt;/ul&gt;&lt;/p&gt;
14944
14945 &lt;p&gt;If you are interested in helping out with developing this library,
14946 please let me know.&lt;/p&gt;
14947 </description>
14948 </item>
14949
14950 <item>
14951 <title>Links for 2010-10-03</title>
14952 <link>http://people.skolelinux.org/pere/blog/Links_for_2010_10_03.html</link>
14953 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Links_for_2010_10_03.html</guid>
14954 <pubDate>Sun, 3 Oct 2010 22:30:00 +0200</pubDate>
14955 <description>&lt;p&gt;&lt;ul&gt;
14956
14957 &lt;li&gt;&lt;a href=&quot;http://arstechnica.com/business/news/2010/09/there-is-no-plan-b-why-the-ipv4-to-ipv6-transition-will-be-ugly.ars&quot;&gt;There
14958 is no Plan B: why the IPv4-to-IPv6 transition will be ugly&lt;/a&gt;&lt;/li&gt;
14959
14960 &lt;li&gt;Scanner looking under clothes
14961 &lt;a href=&quot;http://www.dagbladet.no/2010/10/03/nyheter/utenriks/reise/overvakingskamera/flyplasser/13667192/&quot;&gt;has
14962 already been misused at Heathrow&lt;/a&gt;.&lt;/li&gt;
14963
14964 &lt;li&gt;&lt;a href=&quot;http://wiki.softwarelivre.org/Landell&quot;&gt;Landell
14965 Webcasting&lt;/a&gt; - interesting alternative for
14966 &lt;ahref=&quot;http://dvswitch.alioth.debian.org/wiki/&quot;&gt;DVSwitch&lt;/a&gt; with
14967 simple setup.
14968
14969 &lt;/ul&gt;&lt;/p&gt;
14970 </description>
14971 </item>
14972
14973 <item>
14974 <title>Terms of use for video produced by a Canon IXUS 130 digital camera</title>
14975 <link>http://people.skolelinux.org/pere/blog/Terms_of_use_for_video_produced_by_a_Canon_IXUS_130_digital_camera.html</link>
14976 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Terms_of_use_for_video_produced_by_a_Canon_IXUS_130_digital_camera.html</guid>
14977 <pubDate>Thu, 9 Sep 2010 23:55:00 +0200</pubDate>
14978 <description>&lt;p&gt;A few days ago I had the mixed pleasure of bying a new digital
14979 camera, a Canon IXUS 130. It was instructive and very disturbing to
14980 be able to verify that also this camera producer have the nerve to
14981 specify how I can or can not use the videos produced with the camera.
14982 Even thought I was aware of the issue, the options with new cameras
14983 are limited and I ended up bying the camera anyway. What is the
14984 problem, you might ask? It is software patents, MPEG-4, H.264 and the
14985 MPEG-LA that is the problem, and our right to record our experiences
14986 without asking for permissions that is at risk.
14987
14988 &lt;p&gt;On page 27 of the Danish instruction manual, this section is
14989 written:&lt;/p&gt;
14990
14991 &lt;blockquote&gt;
14992 &lt;p&gt;This product is licensed under AT&amp;T patents for the MPEG-4 standard
14993 and may be used for encoding MPEG-4 compliant video and/or decoding
14994 MPEG-4 compliant video that was encoded only (1) for a personal and
14995 non-commercial purpose or (2) by a video provider licensed under the
14996 AT&amp;T patents to provide MPEG-4 compliant video.&lt;/p&gt;
14997
14998 &lt;p&gt;No license is granted or implied for any other use for MPEG-4
14999 standard.&lt;/p&gt;
15000 &lt;/blockquote&gt;
15001
15002 &lt;p&gt;In short, the camera producer have chosen to use technology
15003 (MPEG-4/H.264) that is only provided if I used it for personal and
15004 non-commercial purposes, or ask for permission from the organisations
15005 holding the knowledge monopoly (patent) for technology used.&lt;/p&gt;
15006
15007 &lt;p&gt;This issue has been brewing for a while, and I recommend you to
15008 read
15009 &quot;&lt;a href=&quot;http://www.osnews.com/story/23236/Why_Our_Civilization_s_Video_Art_and_Culture_is_Threatened_by_the_MPEG-LA&quot;&gt;Why
15010 Our Civilization&#39;s Video Art and Culture is Threatened by the
15011 MPEG-LA&lt;/a&gt;&quot; by Eugenia Loli-Queru and
15012 &quot;&lt;a href=&quot;http://webmink.com/2010/09/03/h-264-and-foss/&quot;&gt;H.264 Is Not
15013 The Sort Of Free That Matters&lt;/a&gt;&quot; by Simon Phipps to learn more about
15014 the issue. The solution is to support the
15015 &lt;a href=&quot;http://www.digistan.org/open-standard:definition&quot;&gt;free and
15016 open standards&lt;/a&gt; for video, like &lt;a href=&quot;http://www.theora.org/&quot;&gt;Ogg
15017 Theora&lt;/a&gt;, and avoid MPEG-4 and H.264 if you can.&lt;/p&gt;
15018 </description>
15019 </item>
15020
15021 <item>
15022 <title>Some notes on Flash in Debian and Debian Edu</title>
15023 <link>http://people.skolelinux.org/pere/blog/Some_notes_on_Flash_in_Debian_and_Debian_Edu.html</link>
15024 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Some_notes_on_Flash_in_Debian_and_Debian_Edu.html</guid>
15025 <pubDate>Sat, 4 Sep 2010 10:10:00 +0200</pubDate>
15026 <description>&lt;p&gt;In the &lt;a href=&quot;http://popcon.debian.org/unknown/by_vote&quot;&gt;Debian
15027 popularity-contest numbers&lt;/a&gt;, the adobe-flashplugin package the
15028 second most popular used package that is missing in Debian. The sixth
15029 most popular is flashplayer-mozilla. This is a clear indication that
15030 working flash is important for Debian users. Around 10 percent of the
15031 users submitting data to popcon.debian.org have this package
15032 installed.&lt;/p&gt;
15033
15034 &lt;p&gt;In the report written by Lars Risan in August 2008
15035&lt;a href=&quot;http://wiki.skolelinux.no/Dokumentasjon/Rapporter?action=AttachFile&amp;do=view&amp;target=Skolelinux_i_bruk_rapport_1.0.pdf&quot;&gt;Skolelinux
15036 i bruk – Rapport for Hurum kommune, Universitetet i Agder og
15037 stiftelsen SLX Debian Labs&lt;/a&gt;»), one of the most important problems
15038 schools experienced with &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian
15039 Edu/Skolelinux&lt;/a&gt; was the lack of working Flash. A lot of educational
15040 web sites require Flash to work, and lacking working Flash support in
15041 the web browser and the problems with installing it was perceived as a
15042 good reason to stay with Windows.&lt;/p&gt;
15043
15044 &lt;p&gt;I once saw a funny and sad comment in a web forum, where Linux was
15045 said to be the retarded cousin that did not really understand
15046 everything you told him but could work fairly well. This was a
15047 comment regarding the problems Linux have with proprietary formats and
15048 non-standard web pages, and is sad because it exposes a fairly common
15049 understanding of whose fault it is if web pages that only work in for
15050 example Internet Explorer 6 fail to work on Firefox, and funny because
15051 it explain very well how annoying it is for users when Linux
15052 distributions do not work with the documents they receive or the web
15053 pages they want to visit.&lt;/p&gt;
15054
15055 &lt;p&gt;This is part of the reason why I believe it is important for Debian
15056 and Debian Edu to have a well working Flash implementation in the
15057 distribution, to get at least popular sites as Youtube and Google
15058 Video to working out of the box. For Squeeze, Debian have the chance
15059 to include the latest version of Gnash that will make this happen, as
15060 the new release 0.8.8 was published a few weeks ago and is resting in
15061 unstable. The new version work with more sites that version 0.8.7.
15062 The Gnash maintainers have asked for a freeze exception, but the
15063 release team have not had time to reply to it yet. I hope they agree
15064 with me that Flash is important for the Debian desktop users, and thus
15065 accept the new package into Squeeze.&lt;/p&gt;
15066 </description>
15067 </item>
15068
15069 <item>
15070 <title>My first perl GUI application - controlling a Spykee robot</title>
15071 <link>http://people.skolelinux.org/pere/blog/My_first_perl_GUI_application___controlling_a_Spykee_robot.html</link>
15072 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/My_first_perl_GUI_application___controlling_a_Spykee_robot.html</guid>
15073 <pubDate>Wed, 1 Sep 2010 21:00:00 +0200</pubDate>
15074 <description>&lt;p&gt;This evening I made my first Perl GUI application. The last few
15075 days I have worked on a Perl module for controlling my recently
15076 aquired Spykee robots, and the module is now getting complete enought
15077 that it is possible to use it to control the robot driving at least.
15078 It was now time to figure out how to use it to create some GUI to
15079 allow me to drive the robot around. I picked PerlQt as I have had
15080 positive experiences with the Qt API before, and spent a few minutes
15081 browsing the web for examples. Using Qt Designer seemed like a short
15082 cut, so I ended up writing the perl GUI using Qt Designer and
15083 compiling it into a perl program using the puic program from
15084 libqt-perl. Nothing fancy yet, but it got buttons to connect and
15085 drive around.&lt;/p&gt;
15086
15087 &lt;p&gt;The perl module I have written provide a object oriented API for
15088 controlling the robot. Here is an small example on how to use it:&lt;/p&gt;
15089
15090 &lt;p&gt;&lt;pre&gt;
15091 use Spykee;
15092 Spykee::discover(sub {$robot{$_[0]} = $_[1]});
15093 my $host = (keys %robot)[0];
15094 my $spykee = Spykee-&gt;new();
15095 $spykee-&gt;contact($host, &quot;admin&quot;, &quot;admin&quot;);
15096 $spykee-&gt;left();
15097 sleep 2;
15098 $spykee-&gt;right();
15099 sleep 2;
15100 $spykee-&gt;forward();
15101 sleep 2;
15102 $spykee-&gt;back();
15103 sleep 2;
15104 $spykee-&gt;stop();
15105 &lt;/pre&gt;&lt;/p&gt;
15106
15107 &lt;p&gt;Thanks to the release of the source of the robot firmware, I could
15108 peek into the implementation at the other end to figure out how to
15109 implement the protocol used by the robot. I&#39;ve implemented several of
15110 the commands the robot understand, but is still missing the camera
15111 support to make it possible to control the robot from remote. First I
15112 want to implement support for uploading new firmware and configuring
15113 the wireless network, to make it possible to bootstrap a Spykee robot
15114 without the producers Windows and MacOSX software (I only have Linux,
15115 so I had to ask a friend to come over to get the robot testing
15116 going. :).&lt;/p&gt;
15117
15118 &lt;p&gt;Will release the source to the public soon, but need to figure out
15119 where to make it available first. I will add a link to
15120 &lt;a href=&quot;http://wiki.nuug.no/grupper/robot/&quot;&gt;the NUUG wiki&lt;/a&gt; for
15121 those that want to check back later to find it.&lt;/p&gt;
15122 </description>
15123 </item>
15124
15125 <item>
15126 <title>Broken hard link handling with sshfs</title>
15127 <link>http://people.skolelinux.org/pere/blog/Broken_hard_link_handling_with_sshfs.html</link>
15128 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Broken_hard_link_handling_with_sshfs.html</guid>
15129 <pubDate>Mon, 30 Aug 2010 19:30:00 +0200</pubDate>
15130 <description>&lt;p&gt;Just got an email from Tobias Gruetzmacher as a followup on my
15131 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Broken_umask_handling_with_sshfs.html&quot;&gt;previous
15132 post about sshfs&lt;/a&gt;. He reported another problem with sshfs. It
15133 fail to handle hard links properly. A simple way to spot this is to
15134 look at the . and .. entries in the directory tree. These should have
15135 a link count &gt;1, but on sshfs the count is 1. I just tested to see
15136 what happen when trying to hardlink, and this fail as well:&lt;/p&gt;
15137
15138 &lt;pre&gt;
15139 % ln foo bar
15140 ln: creating hard link `bar&#39; =&gt; `foo&#39;: Function not implemented
15141 %
15142 &lt;/pre&gt;
15143
15144 &lt;p&gt;I have not yet found time to implement a test for this in my file
15145 system test code, but believe having working hard links is useful to
15146 avoid surprised unix programs. Not as useful as working file locking
15147 and symlinks, which are required to get a working desktop, but useful
15148 nevertheless. :)&lt;/p&gt;
15149
15150 &lt;p&gt;The latest version of the file system test code is available via
15151 git from
15152 &lt;a href=&quot;http://github.com/gebi/fs-test&quot;&gt;http://github.com/gebi/fs-test&lt;/a&gt;&lt;/p&gt;
15153 </description>
15154 </item>
15155
15156 <item>
15157 <title>Broken umask handling with sshfs</title>
15158 <link>http://people.skolelinux.org/pere/blog/Broken_umask_handling_with_sshfs.html</link>
15159 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Broken_umask_handling_with_sshfs.html</guid>
15160 <pubDate>Thu, 26 Aug 2010 13:30:00 +0200</pubDate>
15161 <description>&lt;p&gt;My file system sematics program
15162 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Testing_if_a_file_system_can_be_used_for_home_directories___.html&quot;&gt;presented
15163 a few days ago&lt;/a&gt; is very useful to verify that a file system can
15164 work as a unix home directory,and today I had to extend it a bit. I&#39;m
15165 looking into alternatives for home directory access here at the
15166 University of Oslo, and one of the options is sshfs. My friend
15167 Finn-Arne mentioned a while back that they had used sshfs with Debian
15168 Edu, but stopped because of problems. I asked today what the problems
15169 where, and he mentioned that sshfs failed to handle umask properly.
15170 Trying to detect the problem I wrote this addition to my fs testing
15171 script:&lt;/p&gt;
15172
15173 &lt;pre&gt;
15174 mode_t touch_get_mode(const char *name, mode_t mode) {
15175 mode_t retval = 0;
15176 int fd = open(name, O_RDWR|O_CREAT|O_LARGEFILE, mode);
15177 if (-1 != fd) {
15178 unlink(name);
15179 struct stat statbuf;
15180 if (-1 != fstat(fd, &amp;statbuf)) {
15181 retval = statbuf.st_mode &amp; 0x1ff;
15182 }
15183 close(fd);
15184 }
15185 return retval;
15186 }
15187
15188 /* Try to detect problem discovered using sshfs */
15189 int test_umask(void) {
15190 printf(&quot;info: testing umask effect on file creation\n&quot;);
15191
15192 mode_t orig_umask = umask(000);
15193 mode_t newmode;
15194 if (0666 != (newmode = touch_get_mode(&quot;foobar&quot;, 0666))) {
15195 printf(&quot; error: Wrong file mode %o when creating using mode 666 and umask 000\n&quot;,
15196 newmode);
15197 }
15198 umask(007);
15199 if (0660 != (newmode = touch_get_mode(&quot;foobar&quot;, 0666))) {
15200 printf(&quot; error: Wrong file mode %o when creating using mode 666 and umask 007\n&quot;,
15201 newmode);
15202 }
15203
15204 umask (orig_umask);
15205 return 0;
15206 }
15207
15208 int main(int argc, char **argv) {
15209 [...]
15210 test_umask();
15211 return 0;
15212 }
15213 &lt;/pre&gt;
15214
15215 &lt;p&gt;Sure enough. On NFS to a netapp, I get this result:&lt;/p&gt;
15216
15217 &lt;pre&gt;
15218 Testing POSIX/Unix sematics on file system
15219 info: testing symlink creation
15220 info: testing subdirectory creation
15221 info: testing fcntl locking
15222 Read-locking 1 byte from 1073741824
15223 Read-locking 510 byte from 1073741826
15224 Unlocking 1 byte from 1073741824
15225 Write-locking 1 byte from 1073741824
15226 Write-locking 510 byte from 1073741826
15227 Unlocking 2 byte from 1073741824
15228 info: testing umask effect on file creation
15229 &lt;/pre&gt;
15230
15231 &lt;p&gt;When mounting the same directory using sshfs, I get this
15232 result:&lt;/p&gt;
15233
15234 &lt;pre&gt;
15235 Testing POSIX/Unix sematics on file system
15236 info: testing symlink creation
15237 info: testing subdirectory creation
15238 info: testing fcntl locking
15239 Read-locking 1 byte from 1073741824
15240 Read-locking 510 byte from 1073741826
15241 Unlocking 1 byte from 1073741824
15242 Write-locking 1 byte from 1073741824
15243 Write-locking 510 byte from 1073741826
15244 Unlocking 2 byte from 1073741824
15245 info: testing umask effect on file creation
15246 error: Wrong file mode 644 when creating using mode 666 and umask 000
15247 error: Wrong file mode 640 when creating using mode 666 and umask 007
15248 &lt;/pre&gt;
15249
15250 &lt;p&gt;So, I can conclude that sshfs is better than smb to a Netapp or a
15251 Windows server, but not good enough to be used as a home
15252 directory.&lt;/p&gt;
15253
15254 &lt;p&gt;Update 2010-08-26: Reported the issue in
15255 &lt;a href=&quot;http://bugs.debian.org/594498&quot;&gt;BTS report #594498&lt;/a&gt;&lt;/p&gt;
15256
15257 &lt;p&gt;Update 2010-08-27: Michael Gebetsroither report that he found the
15258 script so useful that he created a GIT repository and stored it in
15259 &lt;a href=&quot;http://github.com/gebi/fs-test&quot;&gt;http://github.com/gebi/fs-test&lt;/a&gt;.&lt;/p&gt;
15260 </description>
15261 </item>
15262
15263 <item>
15264 <title>Rob Weir: How to Crush Dissent</title>
15265 <link>http://people.skolelinux.org/pere/blog/Rob_Weir__How_to_Crush_Dissent.html</link>
15266 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Rob_Weir__How_to_Crush_Dissent.html</guid>
15267 <pubDate>Sun, 15 Aug 2010 22:20:00 +0200</pubDate>
15268 <description>&lt;p&gt;I found the notes from Rob Weir on
15269 &lt;a href=&quot;http://feedproxy.google.com/~r/robweir/antic-atom/~3/VGb23-kta8c/how-to-crush-dissent.html&quot;&gt;how
15270 to crush dissent&lt;/a&gt; matching my own thoughts on the matter quite
15271 well. Highly recommended for those wondering which road our society
15272 should go down. In my view we have been heading the wrong way for a
15273 long time.&lt;/p&gt;
15274 </description>
15275 </item>
15276
15277 <item>
15278 <title>No hardcoded config on Debian Edu clients</title>
15279 <link>http://people.skolelinux.org/pere/blog/No_hardcoded_config_on_Debian_Edu_clients.html</link>
15280 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/No_hardcoded_config_on_Debian_Edu_clients.html</guid>
15281 <pubDate>Mon, 9 Aug 2010 20:15:00 +0200</pubDate>
15282 <description>&lt;p&gt;As reported earlier, the last few days I have looked at how Debian
15283 Edu clients are configured, and tried to get rid of all hardcoded
15284 configuration settings on the clients. I believe the work to be
15285 mostly done, and the clients seem to work just fine with dynamically
15286 generated configuration.&lt;/p&gt;
15287
15288 &lt;p&gt;What is the point, you might ask? The point is to allow a Debian
15289 Edu desktop to integrate into an existing network infrastructure
15290 without any manual configuration.&lt;/p&gt;
15291
15292 &lt;p&gt;This is what happens when installing a Debian Edu client here at
15293 the University of Oslo using PXE. With the PXE installation, I am
15294 asked for language (Norwegian Bokmål), locality (Norway) and keyboard
15295 layout (no-latin1), Debian Edu profile (Roaming Workstation), if I
15296 accept to reformat the hard drive (yes), if I want to submit info to
15297 popcon.debian.org (no) and root password (secret). After answering
15298 these questions, the installer goes ahead and does its thing, and
15299 after around 50 minutes it is done. I press enter to finish the
15300 installation, and the machine reboots into KDE. When the machine is
15301 ready and kdm asks for login information, I enter my university
15302 username and password, am told by kdm that a local home directory has
15303 been created and that I must log in again, and finally log in with the
15304 same username and password to the KDE 4.4 desktop. At no point during
15305 this process did it ask for university specific settings, and all the
15306 required configuration was dynamically detected using information
15307 fetched via DHCP and DNS. The roaming workstation is now ready for
15308 use.&lt;/p&gt;
15309
15310 &lt;p&gt;How was this done, you might wonder? First of all, here is the
15311 list of things that need to be configured on the client to get it
15312 working properly out of the box:&lt;/p&gt;
15313
15314 &lt;ul&gt;
15315 &lt;li&gt;IP address/netmask and DNS server.&lt;/li&gt;
15316 &lt;li&gt;Web proxy URL.&lt;/li&gt;
15317 &lt;li&gt;LDAP server for NSS directory information (user, group, etc).&lt;/li&gt;
15318 &lt;li&gt;Kerberos server for PAM password checking.&lt;/li&gt;
15319 &lt;li&gt;SMB mount point to access the network home directory. (*)&lt;/li&gt;
15320 &lt;li&gt;Central syslog server to send syslog messages to. (*)&lt;/li&gt;
15321 &lt;li&gt;Sitesummary collector URL to submit info to central server. (*)&lt;/li&gt;
15322 &lt;/ul&gt;
15323
15324 &lt;p&gt;(Hm, did I forget anything? Let me knew if I did.)&lt;/p&gt;
15325
15326 &lt;p&gt;The points marked (*) are not required to be able to use the
15327 machine, but needed to provide central storage and allowing system
15328 administrators to track their machines. Since yesterday, everything
15329 but the sitesummary collector URL is dynamically discovered at boot
15330 and installation time in the svn version of Debian Edu.&lt;/p&gt;
15331
15332 &lt;p&gt;The IP and DNS setup is fetched during boot using DHCP as usual.
15333 When a DHCP update arrives, the proxy setup is updated by looking for
15334 http://wpat/wpad.dat and using the content of this WPAD file to
15335 configure the http and ftp proxy in /etc/environment and
15336 /etc/apt/apt.conf. I decided to update the proxy setup using a DHCP
15337 hook to ensure that the client stops using the Debian Edu proxy when
15338 it is moved outside the Debian Edu network, and instead uses any local
15339 proxy present on the new network when it moves around.&lt;/p&gt;
15340
15341 &lt;p&gt;The DNS names of the LDAP, Kerberos and syslog server and related
15342 configuration are generated using DNS information at boot. First the
15343 installer looks for a host named ldap in the current DNS domain. If
15344 not found, it looks for _ldap._tcp SRV records in DNS instead. If an
15345 LDAP server is found, its root DSE entry is requested and the
15346 attributes namingContexts and defaultNamingContext are used to
15347 determine which LDAP base to use for NSS. If there are several
15348 namingContexts attibutes and the defaultNamingContext is present, that
15349 LDAP subtree is used as the base. If defaultNamingContext is missing,
15350 the subtrees listed as namingContexts are searched in sequence for any
15351 object with class posixAccount or posixGroup, and the first one with
15352 such an object is used as the LDAP base. For Kerberos, a similar
15353 search is done by first looking for a host named kerberos, and then
15354 for the _kerberos._tcp SRV record. I&#39;ve been unable to find a way to
15355 look up the Kerberos realm, so for this the upper case string of the
15356 current DNS domain is used.&lt;/p&gt;
15357
15358 &lt;p&gt;For the syslog server, the hosts syslog and loghost are searched
15359 for, and the _syslog._udp SRV record is consulted if no such host is
15360 found. This algorithm works for both Debian Edu and the University of
15361 Oslo. A similar strategy would work for locating the sitesummary
15362 server, but have not been implemented yet. I decided to fetch and
15363 save these settings during installation, to make sure moving to a
15364 different network does not change the set of users being allowed to
15365 log in nor the passwords required to log in. Usernames and passwords
15366 will be cached by sssd when the user logs in on the Debian Edu
15367 network, and will not change as the laptop move around. For a
15368 non-roaming machine, there is no caching, but given that it is
15369 supposed to stay in place it should not matter much. Perhaps we
15370 should switch those to use sssd too?&lt;/p&gt;
15371
15372 &lt;p&gt;The user&#39;s SMB mount point for the network home directory is
15373 located when the user logs in for the first time. The LDAP server is
15374 consulted to look for the user&#39;s LDAP object and the sambaHomePath
15375 attribute is used if found. If it isn&#39;t found, the home directory
15376 path fetched from NSS is used instead. Assuming the path is of the
15377 form /site/server/directory/username, the second part is looked up in
15378 DNS and used to generate a SMB URL of the form
15379 smb://server.domain/username. This algorithm works for both Debian
15380 edu and the University of Oslo. Perhaps there are better attributes
15381 to use or a better algorithm that works for more sites, but this will
15382 do for now. :)&lt;/p&gt;
15383
15384 &lt;p&gt;This work should make it easier to integrate the Debian Edu clients
15385 into any LDAP/Kerberos infrastructure, and make the current setup even
15386 more flexible than before. I suspect it will also work for thin
15387 client servers, allowing one to easily set up LTSP and hook it into a
15388 existing network infrastructure, but I have not had time to test this
15389 yet.&lt;/p&gt;
15390
15391 &lt;p&gt;If you want to help out with implementing these things for Debian
15392 Edu, please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
15393
15394 &lt;p&gt;Update 2010-08-09: Simon Farnsworth gave me a heads-up on how to
15395 detect Kerberos realm from DNS, by looking for _kerberos TXT entries
15396 before falling back to the upper case DNS domain name. Will have to
15397 implement it for Debian Edu. :)&lt;/p&gt;
15398 </description>
15399 </item>
15400
15401 <item>
15402 <title>Testing if a file system can be used for home directories...</title>
15403 <link>http://people.skolelinux.org/pere/blog/Testing_if_a_file_system_can_be_used_for_home_directories___.html</link>
15404 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Testing_if_a_file_system_can_be_used_for_home_directories___.html</guid>
15405 <pubDate>Sun, 8 Aug 2010 21:20:00 +0200</pubDate>
15406 <description>&lt;p&gt;A few years ago, I was involved in a project planning to use
15407 Windows file servers as home directory servers for Debian
15408 Edu/Skolelinux machines. This was thought to be no problem, as the
15409 access would be through the SMB network file system protocol, and we
15410 knew other sites used SMB with unix and samba as the file server to
15411 mount home directories without any problems. But, after months of
15412 struggling, we had to conclude that our goal was impossible.&lt;/p&gt;
15413
15414 &lt;p&gt;The reason is simply that while SMB can be used for home
15415 directories when the file server is Samba running on Unix, this only
15416 work because of Samba have some extensions and the fact that the
15417 underlying file system is a unix file system. When using a Windows
15418 file server, the underlying file system do not have POSIX semantics,
15419 and several programs will fail if the users home directory where they
15420 want to store their configuration lack POSIX semantics.&lt;/p&gt;
15421
15422 &lt;p&gt;As part of this work, I wrote a small C program I want to share
15423 with you all, to replicate a few of the problematic applications (like
15424 OpenOffice.org and GCompris) and see if the file system was working as
15425 it should. If you find yourself in spooky file system land, it might
15426 help you find your way out again. This is the fs-test.c source:&lt;/p&gt;
15427
15428 &lt;pre&gt;
15429 /*
15430 * Some tests to check the file system sematics. Used to verify that
15431 * CIFS from a windows server do not work properly as a linux home
15432 * directory.
15433 * License: GPL v2 or later
15434 *
15435 * needs libsqlite3-dev and build-essential installed
15436 * compile with: gcc -Wall -lsqlite3 -DTEST_SQLITE fs-test.c -o fs-test
15437 */
15438
15439 #define _FILE_OFFSET_BITS 64
15440 #define _LARGEFILE_SOURCE 1
15441 #define _LARGEFILE64_SOURCE 1
15442
15443 #define _GNU_SOURCE /* for asprintf() */
15444
15445 #include &amp;lt;errno.h&gt;
15446 #include &amp;lt;fcntl.h&gt;
15447 #include &amp;lt;stdio.h&gt;
15448 #include &amp;lt;string.h&gt;
15449 #include &amp;lt;stdlib.h&gt;
15450 #include &amp;lt;sys/file.h&gt;
15451 #include &amp;lt;sys/stat.h&gt;
15452 #include &amp;lt;sys/types.h&gt;
15453 #include &amp;lt;unistd.h&gt;
15454
15455 #ifdef TEST_SQLITE
15456 /*
15457 * Test sqlite open, as done by gcompris require the libsqlite3-dev
15458 * package and linking with -lsqlite3. A more low level test is
15459 * below.
15460 * See also &amp;lt;URL: http://www.sqlite.org./faq.html#q5 &gt;.
15461 */
15462 #include &amp;lt;sqlite3.h&gt;
15463 #define CREATE_TABLE_USERS \
15464 &quot;CREATE TABLE users (user_id INT UNIQUE, login TEXT, lastname TEXT, firstname TEXT, birthdate TEXT, class_id INT ); &quot;
15465 int test_sqlite_open(void) {
15466 char *zErrMsg;
15467 char *name = &quot;testsqlite.db&quot;;
15468 sqlite3 *db=NULL;
15469 unlink(name);
15470 int rc = sqlite3_open(name, &amp;db);
15471 if( rc ){
15472 printf(&quot;error: sqlite open of %s failed: %s\n&quot;, name, sqlite3_errmsg(db));
15473 sqlite3_close(db);
15474 return -1;
15475 }
15476
15477 /* create tables */
15478 rc = sqlite3_exec(db,CREATE_TABLE_USERS, NULL, 0, &amp;zErrMsg);
15479 if( rc != SQLITE_OK ){
15480 printf(&quot;error: sqlite table create failed: %s\n&quot;, zErrMsg);
15481 sqlite3_close(db);
15482 return -1;
15483 }
15484 printf(&quot;info: sqlite worked\n&quot;);
15485 sqlite3_close(db);
15486 return 0;
15487 }
15488 #endif /* TEST_SQLITE */
15489
15490 /*
15491 * Demonstrate locking issue found in gcompris using sqlite3. This
15492 * work with ext3, but not with cifs server on Windows 2003. This is
15493 * done in the sqlite3 library.
15494 * See also
15495 * &amp;lt;URL:http://www.cygwin.com/ml/cygwin/2001-08/msg00854.html&gt; and the
15496 * POSIX specification
15497 * &amp;lt;URL:http://www.opengroup.org/onlinepubs/009695399/functions/fcntl.html&gt;.
15498 */
15499 int test_gcompris_locking(void) {
15500 struct flock fl;
15501 char *name = &quot;testsqlite.db&quot;;
15502 unlink(name);
15503 int fd = open(name, O_RDWR|O_CREAT|O_LARGEFILE, 0644);
15504 printf(&quot;info: testing fcntl locking\n&quot;);
15505
15506 fl.l_whence = SEEK_SET;
15507 fl.l_pid = getpid();
15508 printf(&quot; Read-locking 1 byte from 1073741824&quot;);
15509 fl.l_start = 1073741824;
15510 fl.l_len = 1;
15511 fl.l_type = F_RDLCK;
15512 if (0 != fcntl(fd, F_SETLK, &amp;fl) ) printf(&quot; - error!\n&quot;); else printf(&quot;\n&quot;);
15513
15514 printf(&quot; Read-locking 510 byte from 1073741826&quot;);
15515 fl.l_start = 1073741826;
15516 fl.l_len = 510;
15517 fl.l_type = F_RDLCK;
15518 if (0 != fcntl(fd, F_SETLK, &amp;fl) ) printf(&quot; - error!\n&quot;); else printf(&quot;\n&quot;);
15519
15520 printf(&quot; Unlocking 1 byte from 1073741824&quot;);
15521 fl.l_start = 1073741824;
15522 fl.l_len = 1;
15523 fl.l_type = F_UNLCK;
15524 if (0 != fcntl(fd, F_SETLK, &amp;fl) ) printf(&quot; - error!\n&quot;); else printf(&quot;\n&quot;);
15525
15526 printf(&quot; Write-locking 1 byte from 1073741824&quot;);
15527 fl.l_start = 1073741824;
15528 fl.l_len = 1;
15529 fl.l_type = F_WRLCK;
15530 if (0 != fcntl(fd, F_SETLK, &amp;fl) ) printf(&quot; - error!\n&quot;); else printf(&quot;\n&quot;);
15531
15532 printf(&quot; Write-locking 510 byte from 1073741826&quot;);
15533 fl.l_start = 1073741826;
15534 fl.l_len = 510;
15535 if (0 != fcntl(fd, F_SETLK, &amp;fl) ) printf(&quot; - error!\n&quot;); else printf(&quot;\n&quot;);
15536
15537 printf(&quot; Unlocking 2 byte from 1073741824&quot;);
15538 fl.l_start = 1073741824;
15539 fl.l_len = 2;
15540 fl.l_type = F_UNLCK;
15541 if (0 != fcntl(fd, F_SETLK, &amp;fl) ) printf(&quot; - error!\n&quot;); else printf(&quot;\n&quot;);
15542
15543 close(fd);
15544 return 0;
15545 }
15546
15547 /*
15548 * Test if permissions of freshly created directories allow entries
15549 * below them. This was a problem with OpenOffice.org and gcompris.
15550 * Mounting with option &#39;sync&#39; seem to solve this problem while
15551 * slowing down file operations.
15552 */
15553 int test_subdirectory_creation(void) {
15554 #define LEVELS 5
15555 char *path = strdup(&quot;test&quot;);
15556 char *dirs[LEVELS];
15557 int level;
15558 printf(&quot;info: testing subdirectory creation\n&quot;);
15559 for (level = 0; level &amp;lt; LEVELS; level++) {
15560 char *newpath = NULL;
15561 if (-1 == mkdir(path, 0777)) {
15562 printf(&quot; error: Unable to create directory &#39;%s&#39;: %s\n&quot;,
15563 path, strerror(errno));
15564 break;
15565 }
15566 asprintf(&amp;newpath, &quot;%s/%s&quot;, path, &quot;test&quot;);
15567 free(path);
15568 path = newpath;
15569 }
15570 return 0;
15571 }
15572
15573 /*
15574 * Test if symlinks can be created. This was a problem detected with
15575 * KDE.
15576 */
15577 int test_symlinks(void) {
15578 printf(&quot;info: testing symlink creation\n&quot;);
15579 unlink(&quot;symlink&quot;);
15580 if (-1 == symlink(&quot;file&quot;, &quot;symlink&quot;))
15581 printf(&quot; error: Unable to create symlink\n&quot;);
15582 return 0;
15583 }
15584
15585 int main(int argc, char **argv) {
15586 printf(&quot;Testing POSIX/Unix sematics on file system\n&quot;);
15587 test_symlinks();
15588 test_subdirectory_creation();
15589 #ifdef TEST_SQLITE
15590 test_sqlite_open();
15591 #endif /* TEST_SQLITE */
15592 test_gcompris_locking();
15593 return 0;
15594 }
15595 &lt;/pre&gt;
15596
15597 &lt;p&gt;When everything is working, it should print something like
15598 this:&lt;/p&gt;
15599
15600 &lt;pre&gt;
15601 Testing POSIX/Unix sematics on file system
15602 info: testing symlink creation
15603 info: testing subdirectory creation
15604 info: sqlite worked
15605 info: testing fcntl locking
15606 Read-locking 1 byte from 1073741824
15607 Read-locking 510 byte from 1073741826
15608 Unlocking 1 byte from 1073741824
15609 Write-locking 1 byte from 1073741824
15610 Write-locking 510 byte from 1073741826
15611 Unlocking 2 byte from 1073741824
15612 &lt;/pre&gt;
15613
15614 &lt;p&gt;I do not remember the exact details of the problems we saw, but one
15615 of them was with locking, where if I remember correctly, POSIX allow a
15616 read-only lock to be upgraded to a read-write lock without unlocking
15617 the read-only lock (while Windows do not). Another was a bug in the
15618 CIFS/SMB client implementation in the Linux kernel where directory
15619 meta information would be wrong for a fraction of a second, making
15620 OpenOffice.org fail to create its deep directory tree because it was
15621 not allowed to create files in its freshly created directory.&lt;/p&gt;
15622
15623 &lt;p&gt;Anyway, here is a nice tool for your tool box, might you never need
15624 it. :)&lt;/p&gt;
15625
15626 &lt;p&gt;Update 2010-08-27: Michael Gebetsroither report that he found the
15627 script so useful that he created a GIT repository and stored it in
15628 &lt;a href=&quot;http://github.com/gebi/fs-test&quot;&gt;http://github.com/gebi/fs-test&lt;/a&gt;.&lt;/p&gt;
15629 </description>
15630 </item>
15631
15632 <item>
15633 <title>Autodetecting Client setup for roaming workstations in Debian Edu</title>
15634 <link>http://people.skolelinux.org/pere/blog/Autodetecting_Client_setup_for_roaming_workstations_in_Debian_Edu.html</link>
15635 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Autodetecting_Client_setup_for_roaming_workstations_in_Debian_Edu.html</guid>
15636 <pubDate>Sat, 7 Aug 2010 14:45:00 +0200</pubDate>
15637 <description>&lt;p&gt;A few days ago, I
15638 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Debian_Edu_roaming_workstation___at_the_university_of_Oslo.html&quot;&gt;tried
15639 to install&lt;/a&gt; a Roaming workation profile from Debian Edu/Squeeze
15640 while on the university network here at the University of Oslo, and
15641 noticed how much had to change to get it operational using the
15642 university infrastructure. It was fairly easy, but it occured to me
15643 that Debian Edu would improve a lot if I could get the client to
15644 connect without any changes at all, and thus let the client configure
15645 itself during installation and first boot to use the infrastructure
15646 around it. Now I am a huge step further along that road.&lt;/p&gt;
15647
15648 &lt;p&gt;With our current squeeze-test packages, I can select the roaming
15649 workstation profile and get a working laptop connecting to the
15650 university LDAP server for user and group and our active directory
15651 servers for Kerberos authentication. All this without any
15652 configuration at all during installation. My users home directory got
15653 a bookmark in the KDE menu to mount it via SMB, with the correct URL.
15654 In short, openldap and sssd is correctly configured. In addition to
15655 this, the client look for http://wpad/wpad.dat to configure a web
15656 proxy, and when it fail to find it no proxy settings are stored in
15657 /etc/environment and /etc/apt/apt.conf. Iceweasel and KDE is
15658 configured to look for the same wpad configuration and also do not use
15659 a proxy when at the university network. If the machine is moved to a
15660 network with such wpad setup, it would automatically use it when DHCP
15661 gave it a IP address.&lt;/p&gt;
15662
15663 &lt;p&gt;The LDAP server is located using DNS, by first looking for the DNS
15664 entry ldap.$domain. If this do not exist, it look for the
15665 _ldap._tcp.$domain SRV records and use the first one as the LDAP
15666 server. Next, it connects to the LDAP server and search all
15667 namingContexts entries for posixAccount or posixGroup objects, and
15668 pick the first one as the LDAP base. For Kerberos, a similar
15669 algorithm is used to locate the LDAP server, and the realm is the
15670 uppercase version of $domain.&lt;/p&gt;
15671
15672 &lt;p&gt;So, what is not working, you might ask. SMB mounting my home
15673 directory do not work. No idea why, but suspected the incorrect
15674 Kerberos settings in /etc/krb5.conf and /etc/samba/smb.conf might be
15675 the cause. These are not properly configured during installation, and
15676 had to be hand-edited to get the correct Kerberos realm and server,
15677 but SMB mounting still do not work. :(&lt;/p&gt;
15678
15679 &lt;p&gt;With this automatic configuration in place, I expect a Debian Edu
15680 roaming profile installation would be able to automatically detect and
15681 connect to any site using LDAP and Kerberos for NSS directory and PAM
15682 authentication. It should also work out of the box in a Active
15683 Directory environment providing posixAccount and posixGroup objects
15684 with UID and GID values.&lt;/p&gt;
15685
15686 &lt;p&gt;If you want to help out with implementing these things for Debian
15687 Edu, please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
15688 </description>
15689 </item>
15690
15691 <item>
15692 <title>Debian Edu roaming workstation - at the university of Oslo</title>
15693 <link>http://people.skolelinux.org/pere/blog/Debian_Edu_roaming_workstation___at_the_university_of_Oslo.html</link>
15694 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu_roaming_workstation___at_the_university_of_Oslo.html</guid>
15695 <pubDate>Tue, 3 Aug 2010 23:30:00 +0200</pubDate>
15696 <description>&lt;p&gt;The new roaming workstation profile in Debian Edu/Squeeze is fairly
15697 similar to the laptop setup am I working on using Ubuntu for the
15698 University of Oslo, and just for the heck of it, I tested today how
15699 hard it would be to integrate that profile into the university
15700 infrastructure. In this case, it is the university LDAP server,
15701 Active Directory Kerberos server and SMB mounting from the Netapp file
15702 servers.&lt;/p&gt;
15703
15704 &lt;p&gt;I was pleasantly surprised that the only three files needed to be
15705 changed (/etc/sssd/sssd.conf, /etc/ldap.conf and
15706 /etc/mklocaluser.d/20-debian-edu-config) and one file had to be added
15707 (/usr/share/perl5/Debian/Edu_Local.pm), to get the client working.
15708 Most of the changes were to get the client to use the university LDAP
15709 for NSS and Kerberos server for PAM, but one was to change a hard
15710 coded DNS domain name in the mklocaluser hook from .intern to
15711 .uio.no.&lt;/p&gt;
15712
15713 &lt;p&gt;This testing was so encouraging, that I went ahead and adjusted the
15714 Debian Edu scripts and setup in subversion to centralise the roaming
15715 workstation setup a bit more and avoid the hardcoded DNS domain name,
15716 so that when I test this tomorrow, I expect to get away with modifying
15717 only /etc/sssd/sssd.conf and /etc/ldap.conf to get it to use the
15718 university servers.&lt;/p&gt;
15719
15720 &lt;p&gt;My goal is to get the clients to have no hardcoded settings and
15721 fetch all their initial setup during installation and first boot, to
15722 allow them to be inserted also into environments where the default
15723 setup in Debian Edu has been changed or as with the university, where
15724 the environment is different but provides the protocols Debian Edu
15725 uses.&lt;/p&gt;
15726 </description>
15727 </item>
15728
15729 <item>
15730 <title>Circular package dependencies harms apt recovery</title>
15731 <link>http://people.skolelinux.org/pere/blog/Circular_package_dependencies_harms_apt_recovery.html</link>
15732 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Circular_package_dependencies_harms_apt_recovery.html</guid>
15733 <pubDate>Tue, 27 Jul 2010 23:50:00 +0200</pubDate>
15734 <description>&lt;p&gt;I discovered this while doing
15735 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Automatic_upgrade_testing_from_Lenny_to_Squeeze.html&quot;&gt;automated
15736 testing of upgrades from Debian Lenny to Squeeze&lt;/a&gt;. A few packages
15737 in Debian still got circular dependencies, and it is often claimed
15738 that apt and aptitude should be able to handle this just fine, but
15739 some times these dependency loops causes apt to fail.&lt;/p&gt;
15740
15741 &lt;p&gt;An example is from todays
15742 &lt;a href=&quot;http://people.skolelinux.org/~pere/debian-upgrade-testing//test-20100727-lenny-squeeze-kde-aptitude.txt&quot;&gt;upgrade
15743 of KDE using aptitude&lt;/a&gt;. In it, a bug in kdebase-workspace-data
15744 causes perl-modules to fail to upgrade. The cause is simple. If a
15745 package fail to unpack, then only part of packages with the circular
15746 dependency might end up being unpacked when unpacking aborts, and the
15747 ones already unpacked will fail to configure in the recovery phase
15748 because its dependencies are unavailable.&lt;/p&gt;
15749
15750 &lt;p&gt;In this log, the problem manifest itself with this error:&lt;/p&gt;
15751
15752 &lt;blockquote&gt;&lt;pre&gt;
15753 dpkg: dependency problems prevent configuration of perl-modules:
15754 perl-modules depends on perl (&gt;= 5.10.1-1); however:
15755 Version of perl on system is 5.10.0-19lenny2.
15756 dpkg: error processing perl-modules (--configure):
15757 dependency problems - leaving unconfigured
15758 &lt;/pre&gt;&lt;/blockquote&gt;
15759
15760 &lt;p&gt;The perl/perl-modules circular dependency is already
15761 &lt;a href=&quot;http://bugs.debian.org/527917&quot;&gt;reported as a bug&lt;/a&gt;, and will
15762 hopefully be solved as soon as possible, but it is not the only one,
15763 and each one of these loops in the dependency tree can cause similar
15764 failures. Of course, they only occur when there are bugs in other
15765 packages causing the unpacking to fail, but it is rather nasty when
15766 the failure of one package causes the problem to become worse because
15767 of dependency loops.&lt;/p&gt;
15768
15769 &lt;p&gt;Thanks to
15770 &lt;a href=&quot;http://lists.debian.org/debian-devel/2010/06/msg00116.html&quot;&gt;the
15771 tireless effort by Bill Allombert&lt;/a&gt;, the number of circular
15772 dependencies
15773 &lt;a href=&quot;http://debian.semistable.com/debgraph.out.html&quot;&gt;left in Debian
15774 is dropping&lt;/a&gt;, and perhaps it will reach zero one day. :)&lt;/p&gt;
15775
15776 &lt;p&gt;Todays testing also exposed a bug in
15777 &lt;a href=&quot;http://bugs.debian.org/590605&quot;&gt;update-notifier&lt;/a&gt; and
15778 &lt;a href=&quot;http://bugs.debian.org/590604&quot;&gt;different behaviour&lt;/a&gt; between
15779 apt-get and aptitude, the latter possibly caused by some circular
15780 dependency. Reported both to BTS to try to get someone to look at
15781 it.&lt;/p&gt;
15782 </description>
15783 </item>
15784
15785 <item>
15786 <title>First Debian Edu test release (alpha0) based on Squeeze is released</title>
15787 <link>http://people.skolelinux.org/pere/blog/First_Debian_Edu_test_release__alpha0__based_on_Squeeze_is_released.html</link>
15788 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/First_Debian_Edu_test_release__alpha0__based_on_Squeeze_is_released.html</guid>
15789 <pubDate>Tue, 27 Jul 2010 17:45:00 +0200</pubDate>
15790 <description>&lt;p&gt;I just posted this announcement culminating several months of work
15791 with the next Debian Edu release. Not nearly done, but one major step
15792 completed.&lt;/p&gt;
15793
15794 &lt;blockquote&gt;
15795 &lt;p&gt;This is the first test release based on Squeeze. The focus of this
15796 release is to test the user application selection. To have a look,
15797 install the standalone profile and let the developers know if the set
15798 of installed packages i.e. applications should be modified. If some
15799 user application is missing, or if there are some applications that no
15800 longer make sense to be included in Debian Edu, please let us know.
15801 Also, if a useful application is missing the translation for your
15802 language of choice, please let us know too.&lt;/p&gt;
15803
15804 &lt;p&gt;In addition, feedback and help to polish the desktop (menus,
15805 artwork, starters, etc.) is appreciated. We would like to ship a nice
15806 and handy KDE4 desktop targeted for schools out of the box.&lt;/p&gt;
15807
15808 &lt;p&gt;The other profiles should be installable, but there is a lot more
15809 work left to be done before they are ready, so do not expect to
15810 much.&lt;/p&gt;
15811
15812 &lt;p&gt;Changes compared to the lenny based version&lt;/p&gt;
15813
15814 &lt;ul&gt;
15815 &lt;li&gt;Everything from Debian Squeeze
15816 &lt;ul&gt;
15817 &lt;li&gt;Desktop environment KDE 4.4 =&gt; the new KDE desktop in
15818 combination with some new artwork
15819 &lt;li&gt;Web browser Iceweasel 3.5
15820 &lt;li&gt;OpenOffice.org 3.2
15821 &lt;li&gt;Educational toolbox GCompris 9.3
15822 &lt;li&gt;Music creator Rosegarden 10.04.2
15823 &lt;li&gt;Image editor Gimp 2.6.10
15824 &lt;li&gt;Virtual universe Celestia 1.6.0
15825 &lt;li&gt;Virtual stargazer Stellarium 0.10.4
15826 &lt;li&gt;3D modeler Blender 2.49.2 (new application)
15827 &lt;li&gt;Video editor Kdenlive 0.7.7 (new application)
15828 &lt;/ul&gt;&lt;/li&gt;
15829 &lt;li&gt;Now using Kerberos for password checking (migration not finished).
15830 Enabled for:
15831 &lt;ul&gt;
15832 &lt;li&gt;PAM
15833 &lt;li&gt;LDAP
15834 &lt;li&gt;IMAP
15835 &lt;li&gt;SMTP (sender verification)
15836 &lt;/ul&gt;
15837 &lt;/li&gt;
15838 &lt;li&gt;New experimental roaming workstation profile for laptops.&lt;/li&gt;
15839 &lt;li&gt;Show welcome page to users when they first log in. The URL is
15840 fetched from LDAP.&lt;/li&gt;
15841 &lt;li&gt;New LXDE desktop option, in addition to KDE (default) and Gnome.&lt;/li&gt;
15842 &lt;li&gt;General cleanup (not finished)&lt;/li&gt;
15843 &lt;/ul&gt;
15844 &lt;p&gt;The following features are not working as they should&lt;/p&gt;
15845
15846 &lt;ul&gt;
15847 &lt;li&gt;No web based administration tool for creating users and groups. The
15848 scripts ldap-createuser-krb and ldap-add-user-to-group can be used
15849 for testing.&lt;/li&gt;
15850 &lt;li&gt;DVD installs are missing debian-installer images for the PXE boot,
15851 and do not set up the PXE menu on eth0 because of this. LTSP
15852 clients should still boot from eth1 on thin client servers.&lt;/li&gt;
15853 &lt;li&gt;The restructured KDE menu is not implemented.&lt;/li&gt;
15854 &lt;li&gt;The LDAP server setup need to be reviewed for security.&lt;/li&gt;
15855 &lt;li&gt;The LDAP directory structure need to be reworked.&lt;/li&gt;
15856 &lt;li&gt;Different sets of packages are installed when using the DVD and the
15857 netinst CD. More packages are installed using the netinst CD.&lt;/li&gt;
15858 &lt;li&gt;The jackd package fail to install. This is believed to be caused by
15859 some ongoing transition, and hopefully should be solved soon. The
15860 jackd1 package can be installed manually for those that need it.&lt;/li&gt;
15861 &lt;li&gt;Some packages lack translations. See
15862 http://wiki.debian.org/DebianEdu/Status/Squeeze for updated status,
15863 and help out with translations.&lt;/li&gt;
15864 &lt;/ul&gt;
15865
15866 &lt;p&gt;To download this multiarch netinstall release you can use&lt;/p&gt;
15867
15868 &lt;ul&gt;
15869 &lt;li&gt;&lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/squeeze-alpha/debian-edu-6.0.0+edua0-CD.iso&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/squeeze-alpha/debian-edu-6.0.0+edua0-CD.iso&lt;/a&gt;&lt;/li&gt;
15870 &lt;li&gt;&lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/squeeze-alpha/debian-edu-6.0.0+edua0-CD.iso&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/squeeze-alpha/debian-edu-6.0.0+edua0-CD.iso&lt;/a&gt;&lt;/li&gt;
15871 &lt;li&gt;rsync -avzP ftp.skolelinux.org::skolelinux-cd/squeeze-alpha/debian-edu-6.0.0+edua0-CD.iso&lt;/li&gt;
15872 &lt;/ul&gt;
15873 &lt;p&gt;To download this multiarch dvd release you can use&lt;/p&gt;
15874
15875 &lt;ul&gt;
15876 &lt;li&gt;&lt;a href=&quot;ftp://ftp.skolelinux.org/skolelinux-cd/squeeze-alpha/debian-edu-6.0.0+edua0-DVD.iso&quot;&gt;ftp://ftp.skolelinux.org/skolelinux-cd/squeeze-alpha/debian-edu-6.0.0+edua0-DVD.iso&lt;/a&gt;&lt;/li&gt;
15877 &lt;li&gt;&lt;a href=&quot;http://ftp.skolelinux.org/skolelinux-cd/squeeze-alpha/debian-edu-6.0.0+edua0-DVD.iso&quot;&gt;http://ftp.skolelinux.org/skolelinux-cd/squeeze-alpha/debian-edu-6.0.0+edua0-DVD.iso&lt;/a&gt;&lt;/li&gt;
15878 &lt;li&gt;rsync -avzP ftp.skolelinux.org::skolelinux-cd/squeeze-alpha/debian-edu-6.0.0+edua0-DVD.iso&lt;/li&gt;
15879 &lt;/ul&gt;
15880
15881 &lt;p&gt;There is no source DVD available yet. It will be prepared when we
15882 get closer to the final release.&lt;/p&gt;
15883
15884 &lt;p&gt;The MD5SUM of these images are&lt;/p&gt;
15885
15886 &lt;ul&gt;
15887 &lt;li&gt;3dbf45d59f42a53518b6e3c9ec3b5eb6 debian-edu-6.0.0+edua0-CD.iso&lt;/li&gt;
15888 &lt;li&gt;22f2cbfce281d1c6e478be452638675d debian-edu-6.0.0+edua0-DVD.iso&lt;/li&gt;
15889 &lt;/ul&gt;
15890
15891 &lt;p&gt;The SHA1SUM of these images are&lt;/p&gt;
15892 &lt;ul&gt;
15893 &lt;li&gt;c53d1b69b40cf37cd27aefaf33f6f6a3821bedf0 debian-edu-6.0.0+edua0-CD.iso&lt;/li&gt;
15894 &lt;li&gt;2ec29d7db676d59d32197b05c277ffe16348376c debian-edu-6.0.0+edua0-DVD.iso&lt;/li&gt;
15895 &lt;/ul&gt;
15896 &lt;p&gt;How to report bugs:
15897 http://wiki.debian.org/DebianEdu/HowTo/ReportBugsInBugzilla&lt;/p&gt;
15898
15899 &lt;p&gt;Please direct replies to debian-edu@lists.debian.org&lt;/p&gt;
15900 &lt;/blockquote&gt;
15901 </description>
15902 </item>
15903
15904 <item>
15905 <title>One step closer to single signon in Debian Edu</title>
15906 <link>http://people.skolelinux.org/pere/blog/One_step_closer_to_single_signon_in_Debian_Edu.html</link>
15907 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/One_step_closer_to_single_signon_in_Debian_Edu.html</guid>
15908 <pubDate>Sun, 25 Jul 2010 10:00:00 +0200</pubDate>
15909 <description>&lt;p&gt;The last few months me and the other Debian Edu developers have
15910 been working hard to get the Debian/Squeeze based version of Debian
15911 Edu/Skolelinux into shape. This future version will use Kerberos for
15912 authentication, and services are slowly migrated to single signon,
15913 getting rid of password questions one at the time.&lt;/p&gt;
15914
15915 &lt;p&gt;It will also feature a roaming workstation profile with local home
15916 directory, for laptops that are only some times on the Skolelinux
15917 network, and for this profile a shortcut is created in Gnome and KDE
15918 to gain access to the users home directory on the file server. This
15919 shortcut uses SMB at the moment, and yesterday I had time to test if
15920 SMB mounting had started working in KDE after we added the cifs-utils
15921 package. I was pleasantly surprised how well it worked.&lt;/p&gt;
15922
15923 &lt;p&gt;Thanks to the recent changes to our samba configuration to get it
15924 to use Kerberos for authentication, there were no question about user
15925 password when mounting the SMB volume. A simple click on the shortcut
15926 in the KDE menu, and a window with the home directory popped
15927 up. :)&lt;/p&gt;
15928
15929 &lt;p&gt;One step closer to a single signon solution out of the box in
15930 Debian Edu. We already had PAM, LDAP, IMAP and SMTP in place, and now
15931 also Samba. Next step is Cups and hopefully also NFS.&lt;/p&gt;
15932
15933 &lt;p&gt;We had planned a alpha0 release of Debian Edu for today, but thanks
15934 to the autobuilder administrators for some architectures being slow to
15935 sign packages, we are still missing the fixed LTSP package we need for
15936 the release. It was uploaded three days ago with urgency=high, and if
15937 it had entered testing yesterday we would have been able to test it in
15938 time for a alpha0 release today. As the binaries for ia64 and powerpc
15939 still not uploaded to the Debian archive, we need to delay the alpha
15940 release another day.&lt;/p&gt;
15941
15942 &lt;p&gt;If you want to help out with implementing Kerberos for Debian Edu,
15943 please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
15944 </description>
15945 </item>
15946
15947 <item>
15948 <title>OpenStreetmap one step closer to having routing on its front page</title>
15949 <link>http://people.skolelinux.org/pere/blog/OpenStreetmap_one_step_closer_to_having_routing_on_its_front_page.html</link>
15950 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/OpenStreetmap_one_step_closer_to_having_routing_on_its_front_page.html</guid>
15951 <pubDate>Sun, 18 Jul 2010 16:45:00 +0200</pubDate>
15952 <description>&lt;p&gt;Thanks to
15953 &lt;a href=&quot;http://feedproxy.google.com/~r/Opengeodata/~3/wUTCzDZk3lc/project-of-the-week-which-way-home&quot;&gt;todays
15954 opengeodata blog entry&lt;/a&gt;, I just discovered that the
15955 OpenStreetmap.org site have gotten
15956 &lt;a href=&quot;http://nroets.dev.openstreetmap.org/demo/index.html?layers=B000FTFTT&quot;&gt;support
15957 for calculating routes&lt;/a&gt;. The support is still experimental and
15958 only available from the development server, until more experience is
15959 gathered on the user interface and any scalability issues.&lt;/p&gt;
15960
15961 &lt;p&gt;Earlier, the routing I knew about using the OpenStreetmap.org data
15962 was provided by &lt;a href=&quot;http://maps.cloudmade.com/&quot;&gt;Cloudmade&lt;/a&gt;,
15963 but having it on the main page is required to make everyone aware of
15964 the issue. I&#39;ve had people reject Openstreetmap.org as a viable
15965 alternative for them because the front page lacked routing support,
15966 and I hope their needs will be catered for when routing show up on the
15967 www.openstreetmap.org front page.&lt;/p&gt;
15968 </description>
15969 </item>
15970
15971 <item>
15972 <title>What are they searching for - PowerDNS and ISC DHCP in LDAP</title>
15973 <link>http://people.skolelinux.org/pere/blog/What_are_they_searching_for___PowerDNS_and_ISC_DHCP_in_LDAP.html</link>
15974 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/What_are_they_searching_for___PowerDNS_and_ISC_DHCP_in_LDAP.html</guid>
15975 <pubDate>Sat, 17 Jul 2010 21:00:00 +0200</pubDate>
15976 <description>&lt;p&gt;This is a
15977 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Time_for_new__LDAP_schemas_replacing_RFC_2307_.html&quot;&gt;followup&lt;/a&gt;
15978 on my
15979 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Idea_for_a_change_to_LDAP_schemas_allowing_DNS_and_DHCP_info_to_be_combined_into_one_object.html&quot;&gt;previous
15980 work&lt;/a&gt; on
15981 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Combining_PowerDNS_and_ISC_DHCP_LDAP_objects.html&quot;&gt;merging
15982 all&lt;/a&gt; the computer related LDAP objects in Debian Edu.&lt;/p&gt;
15983
15984 &lt;p&gt;As a step to try to see if it possible to merge the DNS and DHCP
15985 LDAP objects, I have had a look at how the packages pdns-backend-ldap
15986 and dhcp3-server-ldap in Debian use the LDAP server. The two
15987 implementations are quite different in how they use LDAP.&lt;/p&gt;
15988
15989 To get this information, I started slapd with debugging enabled and
15990 dumped the debug output to a file to get the LDAP searches performed
15991 on a Debian Edu main-server. Here is a summary.
15992
15993 &lt;p&gt;&lt;strong&gt;powerdns&lt;/strong&gt;&lt;/p&gt;
15994
15995 &lt;a href=&quot;http://www.linuxnetworks.de/doc/index.php/PowerDNS_LDAP_Backend&quot;&gt;Clues
15996 on how to&lt;/a&gt; set up PowerDNS to use a LDAP backend is available on
15997 the web.
15998
15999 &lt;p&gt;PowerDNS have two modes of operation using LDAP as its backend.
16000 One &quot;strict&quot; mode where the forward and reverse DNS lookups are done
16001 using the same LDAP objects, and a &quot;tree&quot; mode where the forward and
16002 reverse entries are in two different subtrees in LDAP with a structure
16003 based on the DNS names, as in tjener.intern and
16004 2.2.0.10.in-addr.arpa.&lt;/p&gt;
16005
16006 &lt;p&gt;In tree mode, the server is set up to use a LDAP subtree as its
16007 base, and uses a &quot;base&quot; scoped search for the DNS name by adding
16008 &quot;dc=tjener,dc=intern,&quot; to the base with a filter for
16009 &quot;(associateddomain=tjener.intern)&quot; for the forward entry and
16010 &quot;dc=2,dc=2,dc=0,dc=10,dc=in-addr,dc=arpa,&quot; with a filter for
16011 &quot;(associateddomain=2.2.0.10.in-addr.arpa)&quot; for the reverse entry. For
16012 forward entries, it is looking for attributes named dnsttl, arecord,
16013 nsrecord, cnamerecord, soarecord, ptrrecord, hinforecord, mxrecord,
16014 txtrecord, rprecord, afsdbrecord, keyrecord, aaaarecord, locrecord,
16015 srvrecord, naptrrecord, kxrecord, certrecord, dsrecord, sshfprecord,
16016 ipseckeyrecord, rrsigrecord, nsecrecord, dnskeyrecord, dhcidrecord,
16017 spfrecord and modifytimestamp. For reverse entries it is looking for
16018 the attributes dnsttl, arecord, nsrecord, cnamerecord, soarecord,
16019 ptrrecord, hinforecord, mxrecord, txtrecord, rprecord, aaaarecord,
16020 locrecord, srvrecord, naptrrecord and modifytimestamp. The equivalent
16021 ldapsearch commands could look like this:&lt;/p&gt;
16022
16023 &lt;blockquote&gt;&lt;pre&gt;
16024 ldapsearch -h ldap \
16025 -b dc=tjener,dc=intern,ou=hosts,dc=skole,dc=skolelinux,dc=no \
16026 -s base -x &#39;(associateddomain=tjener.intern)&#39; dNSTTL aRecord nSRecord \
16027 cNAMERecord sOARecord pTRRecord hInfoRecord mXRecord tXTRecord \
16028 rPRecord aFSDBRecord KeyRecord aAAARecord lOCRecord sRVRecord \
16029 nAPTRRecord kXRecord certRecord dSRecord sSHFPRecord iPSecKeyRecord \
16030 rRSIGRecord nSECRecord dNSKeyRecord dHCIDRecord sPFRecord modifyTimestamp
16031
16032 ldapsearch -h ldap \
16033 -b dc=2,dc=2,dc=0,dc=10,dc=in-addr,dc=arpa,ou=hosts,dc=skole,dc=skolelinux,dc=no \
16034 -s base -x &#39;(associateddomain=2.2.0.10.in-addr.arpa)&#39;
16035 dnsttl, arecord, nsrecord, cnamerecord soarecord ptrrecord \
16036 hinforecord mxrecord txtrecord rprecord aaaarecord locrecord \
16037 srvrecord naptrrecord modifytimestamp
16038 &lt;/pre&gt;&lt;/blockquote&gt;
16039
16040 &lt;p&gt;In Debian Edu/Lenny, the PowerDNS tree mode is used with
16041 ou=hosts,dc=skole,dc=skolelinux,dc=no as the base, and these are two
16042 example LDAP objects used there. In addition to these objects, the
16043 parent objects all th way up to ou=hosts,dc=skole,dc=skolelinux,dc=no
16044 also exist.&lt;/p&gt;
16045
16046 &lt;blockquote&gt;&lt;pre&gt;
16047 dn: dc=tjener,dc=intern,ou=hosts,dc=skole,dc=skolelinux,dc=no
16048 objectclass: top
16049 objectclass: dnsdomain
16050 objectclass: domainrelatedobject
16051 dc: tjener
16052 arecord: 10.0.2.2
16053 associateddomain: tjener.intern
16054
16055 dn: dc=2,dc=2,dc=0,dc=10,dc=in-addr,dc=arpa,ou=hosts,dc=skole,dc=skolelinux,dc=no
16056 objectclass: top
16057 objectclass: dnsdomain2
16058 objectclass: domainrelatedobject
16059 dc: 2
16060 ptrrecord: tjener.intern
16061 associateddomain: 2.2.0.10.in-addr.arpa
16062 &lt;/pre&gt;&lt;/blockquote&gt;
16063
16064 &lt;p&gt;In strict mode, the server behaves differently. When looking for
16065 forward DNS entries, it is doing a &quot;subtree&quot; scoped search with the
16066 same base as in the tree mode for a object with filter
16067 &quot;(associateddomain=tjener.intern)&quot; and requests the attributes dnsttl,
16068 arecord, nsrecord, cnamerecord, soarecord, ptrrecord, hinforecord,
16069 mxrecord, txtrecord, rprecord, aaaarecord, locrecord, srvrecord,
16070 naptrrecord and modifytimestamp. For reverse entires it also do a
16071 subtree scoped search but this time the filter is &quot;(arecord=10.0.2.2)&quot;
16072 and the requested attributes are associateddomain, dnsttl and
16073 modifytimestamp. In short, in strict mode the objects with ptrrecord
16074 go away, and the arecord attribute in the forward object is used
16075 instead.&lt;/p&gt;
16076
16077 &lt;p&gt;The forward and reverse searches can be simulated using ldapsearch
16078 like this:&lt;/p&gt;
16079
16080 &lt;blockquote&gt;&lt;pre&gt;
16081 ldapsearch -h ldap -b ou=hosts,dc=skole,dc=skolelinux,dc=no -s sub -x \
16082 &#39;(associateddomain=tjener.intern)&#39; dNSTTL aRecord nSRecord \
16083 cNAMERecord sOARecord pTRRecord hInfoRecord mXRecord tXTRecord \
16084 rPRecord aFSDBRecord KeyRecord aAAARecord lOCRecord sRVRecord \
16085 nAPTRRecord kXRecord certRecord dSRecord sSHFPRecord iPSecKeyRecord \
16086 rRSIGRecord nSECRecord dNSKeyRecord dHCIDRecord sPFRecord modifyTimestamp
16087
16088 ldapsearch -h ldap -b ou=hosts,dc=skole,dc=skolelinux,dc=no -s sub -x \
16089 &#39;(arecord=10.0.2.2)&#39; associateddomain dnsttl modifytimestamp
16090 &lt;/pre&gt;&lt;/blockquote&gt;
16091
16092 &lt;p&gt;In addition to the forward and reverse searches , there is also a
16093 search for SOA records, which behave similar to the forward and
16094 reverse lookups.&lt;/p&gt;
16095
16096 &lt;p&gt;A thing to note with the PowerDNS behaviour is that it do not
16097 specify any objectclass names, and instead look for the attributes it
16098 need to generate a DNS reply. This make it able to work with any
16099 objectclass that provide the needed attributes.&lt;/p&gt;
16100
16101 &lt;p&gt;The attributes are normally provided in the cosine (RFC 1274) and
16102 dnsdomain2 schemas. The latter is used for reverse entries like
16103 ptrrecord and recent DNS additions like aaaarecord and srvrecord.&lt;/p&gt;
16104
16105 &lt;p&gt;In Debian Edu, we have created DNS objects using the object classes
16106 dcobject (for dc), dnsdomain or dnsdomain2 (structural, for the DNS
16107 attributes) and domainrelatedobject (for associatedDomain). The use
16108 of structural object classes make it impossible to combine these
16109 classes with the object classes used by DHCP.&lt;/p&gt;
16110
16111 &lt;p&gt;There are other schemas that could be used too, for example the
16112 dnszone structural object class used by Gosa and bind-sdb for the DNS
16113 attributes combined with the domainrelatedobject object class, but in
16114 this case some unused attributes would have to be included as well
16115 (zonename and relativedomainname).&lt;/p&gt;
16116
16117 &lt;p&gt;My proposal for Debian Edu would be to switch PowerDNS to strict
16118 mode and not use any of the existing objectclasses (dnsdomain,
16119 dnsdomain2 and dnszone) when one want to combine the DNS information
16120 with DHCP information, and instead create a auxiliary object class
16121 defined something like this (using the attributes defined for
16122 dnsdomain and dnsdomain2 or dnszone):&lt;/p&gt;
16123
16124 &lt;blockquote&gt;&lt;pre&gt;
16125 objectclass ( some-oid NAME &#39;dnsDomainAux&#39;
16126 SUP top
16127 AUXILIARY
16128 MAY ( ARecord $ MDRecord $ MXRecord $ NSRecord $ SOARecord $ CNAMERecord $
16129 DNSTTL $ DNSClass $ PTRRecord $ HINFORecord $ MINFORecord $
16130 TXTRecord $ SIGRecord $ KEYRecord $ AAAARecord $ LOCRecord $
16131 NXTRecord $ SRVRecord $ NAPTRRecord $ KXRecord $ CERTRecord $
16132 A6Record $ DNAMERecord
16133 ))
16134 &lt;/pre&gt;&lt;/blockquote&gt;
16135
16136 &lt;p&gt;This will allow any object to become a DNS entry when combined with
16137 the domainrelatedobject object class, and allow any entity to include
16138 all the attributes PowerDNS wants. I&#39;ve sent an email to the PowerDNS
16139 developers asking for their view on this schema and if they are
16140 interested in providing such schema with PowerDNS, and I hope my
16141 message will be accepted into their mailing list soon.&lt;/p&gt;
16142
16143 &lt;p&gt;&lt;strong&gt;ISC dhcp&lt;/strong&gt;&lt;/p&gt;
16144
16145 &lt;p&gt;The DHCP server searches for specific objectclass and requests all
16146 the object attributes, and then uses the attributes it want. This
16147 make it harder to figure out exactly what attributes are used, but
16148 thanks to the working example in Debian Edu I can at least get an idea
16149 what is needed without having to read the source code.&lt;/p&gt;
16150
16151 &lt;p&gt;In the DHCP server configuration, the LDAP base to use and the
16152 search filter to use to locate the correct dhcpServer entity is
16153 stored. These are the relevant entries from
16154 /etc/dhcp3/dhcpd.conf:&lt;/p&gt;
16155
16156 &lt;blockquote&gt;&lt;pre&gt;
16157 ldap-base-dn &quot;dc=skole,dc=skolelinux,dc=no&quot;;
16158 ldap-dhcp-server-cn &quot;dhcp&quot;;
16159 &lt;/pre&gt;&lt;/blockquote&gt;
16160
16161 &lt;p&gt;The DHCP server uses this information to nest all the DHCP
16162 configuration it need. The cn &quot;dhcp&quot; is located using the given LDAP
16163 base and the filter &quot;(&amp;(objectClass=dhcpServer)(cn=dhcp))&quot;. The
16164 search result is this entry:&lt;/p&gt;
16165
16166 &lt;blockquote&gt;&lt;pre&gt;
16167 dn: cn=dhcp,dc=skole,dc=skolelinux,dc=no
16168 cn: dhcp
16169 objectClass: top
16170 objectClass: dhcpServer
16171 dhcpServiceDN: cn=DHCP Config,dc=skole,dc=skolelinux,dc=no
16172 &lt;/pre&gt;&lt;/blockquote&gt;
16173
16174 &lt;p&gt;The content of the dhcpServiceDN attribute is next used to locate the
16175 subtree with DHCP configuration. The DHCP configuration subtree base
16176 is located using a base scope search with base &quot;cn=DHCP
16177 Config,dc=skole,dc=skolelinux,dc=no&quot; and filter
16178 &quot;(&amp;(objectClass=dhcpService)(|(dhcpPrimaryDN=cn=dhcp,dc=skole,dc=skolelinux,dc=no)(dhcpSecondaryDN=cn=dhcp,dc=skole,dc=skolelinux,dc=no)))&quot;.
16179 The search result is this entry:&lt;/p&gt;
16180
16181 &lt;blockquote&gt;&lt;pre&gt;
16182 dn: cn=DHCP Config,dc=skole,dc=skolelinux,dc=no
16183 cn: DHCP Config
16184 objectClass: top
16185 objectClass: dhcpService
16186 objectClass: dhcpOptions
16187 dhcpPrimaryDN: cn=dhcp, dc=skole,dc=skolelinux,dc=no
16188 dhcpStatements: ddns-update-style none
16189 dhcpStatements: authoritative
16190 dhcpOption: smtp-server code 69 = array of ip-address
16191 dhcpOption: www-server code 72 = array of ip-address
16192 dhcpOption: wpad-url code 252 = text
16193 &lt;/pre&gt;&lt;/blockquote&gt;
16194
16195 &lt;p&gt;Next, the entire subtree is processed, one level at the time. When
16196 all the DHCP configuration is loaded, it is ready to receive requests.
16197 The subtree in Debian Edu contain objects with object classes
16198 top/dhcpService/dhcpOptions, top/dhcpSharedNetwork/dhcpOptions,
16199 top/dhcpSubnet, top/dhcpGroup and top/dhcpHost. These provide options
16200 and information about netmasks, dynamic range etc. Leaving out the
16201 details here because it is not relevant for the focus of my
16202 investigation, which is to see if it is possible to merge dns and dhcp
16203 related computer objects.&lt;/p&gt;
16204
16205 &lt;p&gt;When a DHCP request come in, LDAP is searched for the MAC address
16206 of the client (00:00:00:00:00:00 in this example), using a subtree
16207 scoped search with &quot;cn=DHCP Config,dc=skole,dc=skolelinux,dc=no&quot; as
16208 the base and &quot;(&amp;(objectClass=dhcpHost)(dhcpHWAddress=ethernet
16209 00:00:00:00:00:00))&quot; as the filter. This is what a host object look
16210 like:&lt;/p&gt;
16211
16212 &lt;blockquote&gt;&lt;pre&gt;
16213 dn: cn=hostname,cn=group1,cn=THINCLIENTS,cn=DHCP Config,dc=skole,dc=skolelinux,dc=no
16214 cn: hostname
16215 objectClass: top
16216 objectClass: dhcpHost
16217 dhcpHWAddress: ethernet 00:00:00:00:00:00
16218 dhcpStatements: fixed-address hostname
16219 &lt;/pre&gt;&lt;/blockquote&gt;
16220
16221 &lt;p&gt;There is less flexiblity in the way LDAP searches are done here.
16222 The object classes need to have fixed names, and the configuration
16223 need to be stored in a fairly specific LDAP structure. On the
16224 positive side, the invidiual dhcpHost entires can be anywhere without
16225 the DN pointed to by the dhcpServer entries. The latter should make
16226 it possible to group all host entries in a subtree next to the
16227 configuration entries, and this subtree can also be shared with the
16228 DNS server if the schema proposed above is combined with the dhcpHost
16229 structural object class.
16230
16231 &lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;
16232
16233 &lt;p&gt;The PowerDNS implementation seem to be very flexible when it come
16234 to which LDAP schemas to use. While its &quot;tree&quot; mode is rigid when it
16235 come to the the LDAP structure, the &quot;strict&quot; mode is very flexible,
16236 allowing DNS objects to be stored anywhere under the base cn specified
16237 in the configuration.&lt;/p&gt;
16238
16239 &lt;p&gt;The DHCP implementation on the other hand is very inflexible, both
16240 regarding which LDAP schemas to use and which LDAP structure to use.
16241 I guess one could implement ones own schema, as long as the
16242 objectclasses and attributes have the names used, but this do not
16243 really help when the DHCP subtree need to have a fairly fixed
16244 structure.&lt;/p&gt;
16245
16246 &lt;p&gt;Based on the observed behaviour, I suspect a LDAP structure like
16247 this might work for Debian Edu:&lt;/p&gt;
16248
16249 &lt;blockquote&gt;&lt;pre&gt;
16250 ou=services
16251 cn=machine-info (dhcpService) - dhcpServiceDN points here
16252 cn=dhcp (dhcpServer)
16253 cn=dhcp-internal (dhcpSharedNetwork/dhcpOptions)
16254 cn=10.0.2.0 (dhcpSubnet)
16255 cn=group1 (dhcpGroup/dhcpOptions)
16256 cn=dhcp-thinclients (dhcpSharedNetwork/dhcpOptions)
16257 cn=192.168.0.0 (dhcpSubnet)
16258 cn=group1 (dhcpGroup/dhcpOptions)
16259 ou=machines - PowerDNS base points here
16260 cn=hostname (dhcpHost/domainrelatedobject/dnsDomainAux)
16261 &lt;/pre&gt;&lt;/blockquote&gt;
16262
16263 &lt;P&gt;This is not tested yet. If the DHCP server require the dhcpHost
16264 entries to be in the dhcpGroup subtrees, the entries can be stored
16265 there instead of a common machines subtree, and the PowerDNS base
16266 would have to be moved one level up to the machine-info subtree.&lt;/p&gt;
16267
16268 &lt;p&gt;The combined object under the machines subtree would look something
16269 like this:&lt;/p&gt;
16270
16271 &lt;blockquote&gt;&lt;pre&gt;
16272 dn: dc=hostname,ou=machines,cn=machine-info,dc=skole,dc=skolelinux,dc=no
16273 dc: hostname
16274 objectClass: top
16275 objectClass: dhcpHost
16276 objectclass: domainrelatedobject
16277 objectclass: dnsDomainAux
16278 associateddomain: hostname.intern
16279 arecord: 10.11.12.13
16280 dhcpHWAddress: ethernet 00:00:00:00:00:00
16281 dhcpStatements: fixed-address hostname.intern
16282 &lt;/pre&gt;&lt;/blockquote&gt;
16283
16284 &lt;/p&gt;One could even add the LTSP configuration associated with a given
16285 machine, as long as the required attributes are available in a
16286 auxiliary object class.&lt;/p&gt;
16287 </description>
16288 </item>
16289
16290 <item>
16291 <title>Combining PowerDNS and ISC DHCP LDAP objects</title>
16292 <link>http://people.skolelinux.org/pere/blog/Combining_PowerDNS_and_ISC_DHCP_LDAP_objects.html</link>
16293 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Combining_PowerDNS_and_ISC_DHCP_LDAP_objects.html</guid>
16294 <pubDate>Wed, 14 Jul 2010 23:45:00 +0200</pubDate>
16295 <description>&lt;p&gt;For a while now, I have wanted to find a way to change the DNS and
16296 DHCP services in Debian Edu to use the same LDAP objects for a given
16297 computer, to avoid the possibility of having a inconsistent state for
16298 a computer in LDAP (as in DHCP but no DNS entry or the other way
16299 around) and make it easier to add computers to LDAP.&lt;/p&gt;
16300
16301 &lt;p&gt;I&#39;ve looked at how powerdns and dhcpd is using LDAP, and using this
16302 information finally found a solution that seem to work.&lt;/p&gt;
16303
16304 &lt;p&gt;The old setup required three LDAP objects for a given computer.
16305 One forward DNS entry, one reverse DNS entry and one DHCP entry. If
16306 we switch powerdns to use its strict LDAP method (ldap-method=strict
16307 in pdns-debian-edu.conf), the forward and reverse DNS entries are
16308 merged into one while making it impossible to transfer the reverse map
16309 to a slave DNS server.&lt;/p&gt;
16310
16311 &lt;p&gt;If we also replace the object class used to get the DNS related
16312 attributes to one allowing these attributes to be combined with the
16313 dhcphost object class, we can merge the DNS and DHCP entries into one.
16314 I&#39;ve written such object class in the dnsdomainaux.schema file (need
16315 proper OIDs, but that is a minor issue), and tested the setup. It
16316 seem to work.&lt;/p&gt;
16317
16318 &lt;p&gt;With this test setup in place, we can get away with one LDAP object
16319 for both DNS and DHCP, and even the LTSP configuration I suggested in
16320 an earlier email. The combined LDAP object will look something like
16321 this:&lt;/p&gt;
16322
16323 &lt;blockquote&gt;&lt;pre&gt;
16324 dn: cn=hostname,cn=group1,cn=THINCLIENTS,cn=DHCP Config,dc=skole,dc=skolelinux,dc=no
16325 cn: hostname
16326 objectClass: dhcphost
16327 objectclass: domainrelatedobject
16328 objectclass: dnsdomainaux
16329 associateddomain: hostname.intern
16330 arecord: 10.11.12.13
16331 dhcphwaddress: ethernet 00:00:00:00:00:00
16332 dhcpstatements: fixed-address hostname
16333 ldapconfigsound: Y
16334 &lt;/pre&gt;&lt;/blockquote&gt;
16335
16336 &lt;p&gt;The DNS server uses the associateddomain and arecord entries, while
16337 the DHCP server uses the dhcphwaddress and dhcpstatements entries
16338 before asking DNS to resolve the fixed-adddress. LTSP will use
16339 dhcphwaddress or associateddomain and the ldapconfig* attributes.&lt;/p&gt;
16340
16341 &lt;p&gt;I am not yet sure if I can get the DHCP server to look for its
16342 dhcphost in a different location, to allow us to put the objects
16343 outside the &quot;DHCP Config&quot; subtree, but hope to figure out a way to do
16344 that. If I can&#39;t figure out a way to do that, we can still get rid of
16345 the hosts subtree and move all its content into the DHCP Config tree
16346 (which probably should be renamed to be more related to the new
16347 content. I suspect cn=dnsdhcp,ou=services or something like that
16348 might be a good place to put it.&lt;/p&gt;
16349
16350 &lt;p&gt;If you want to help out with implementing this for Debian Edu,
16351 please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
16352 </description>
16353 </item>
16354
16355 <item>
16356 <title>Idea for storing LTSP configuration in LDAP</title>
16357 <link>http://people.skolelinux.org/pere/blog/Idea_for_storing_LTSP_configuration_in_LDAP.html</link>
16358 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Idea_for_storing_LTSP_configuration_in_LDAP.html</guid>
16359 <pubDate>Sun, 11 Jul 2010 22:00:00 +0200</pubDate>
16360 <description>&lt;p&gt;Vagrant mentioned on IRC today that ltsp_config now support
16361 sourcing files from /usr/share/ltsp/ltsp_config.d/ on the thin
16362 clients, and that this can be used to fetch configuration from LDAP if
16363 Debian Edu choose to store configuration there.&lt;/p&gt;
16364
16365 &lt;p&gt;Armed with this information, I got inspired and wrote a test module
16366 to get configuration from LDAP. The idea is to look up the MAC
16367 address of the client in LDAP, and look for attributes on the form
16368 ltspconfigsetting=value, and use this to export SETTING=value to the
16369 LTSP clients.&lt;/p&gt;
16370
16371 &lt;p&gt;The goal is to be able to store the LTSP configuration attributes
16372 in a &quot;computer&quot; LDAP object used by both DNS and DHCP, and thus
16373 allowing us to store all information about a computer in one place.&lt;/p&gt;
16374
16375 &lt;p&gt;This is a untested draft implementation, and I welcome feedback on
16376 this approach. A real LDAP schema for the ltspClientAux objectclass
16377 need to be written. Comments, suggestions, etc?&lt;/p&gt;
16378
16379 &lt;blockquote&gt;&lt;pre&gt;
16380 # Store in /opt/ltsp/$arch/usr/share/ltsp/ltsp_config.d/ldap-config
16381 #
16382 # Fetch LTSP client settings from LDAP based on MAC address
16383 #
16384 # Uses ethernet address as stored in the dhcpHost objectclass using
16385 # the dhcpHWAddress attribute or ethernet address stored in the
16386 # ieee802Device objectclass with the macAddress attribute.
16387 #
16388 # This module is written to be schema agnostic, and only depend on the
16389 # existence of attribute names.
16390 #
16391 # The LTSP configuration variables are saved directly using a
16392 # ltspConfig prefix and uppercasing the rest of the attribute name.
16393 # To set the SERVER variable, set the ltspConfigServer attribute.
16394 #
16395 # Some LDAP schema should be created with all the relevant
16396 # configuration settings. Something like this should work:
16397 #
16398 # objectclass ( 1.1.2.2 NAME &#39;ltspClientAux&#39;
16399 # SUP top
16400 # AUXILIARY
16401 # MAY ( ltspConfigServer $ ltsConfigSound $ ... )
16402
16403 LDAPSERVER=$(debian-edu-ldapserver)
16404 if [ &quot;$LDAPSERVER&quot; ] ; then
16405 LDAPBASE=$(debian-edu-ldapserver -b)
16406 for MAC in $(LANG=C ifconfig |grep -i hwaddr| awk &#39;{print $5}&#39;|sort -u) ; do
16407 filter=&quot;(|(dhcpHWAddress=ethernet $MAC)(macAddress=$MAC))&quot;
16408 ldapsearch -h &quot;$LDAPSERVER&quot; -b &quot;$LDAPBASE&quot; -v -x &quot;$filter&quot; | \
16409 grep &#39;^ltspConfig&#39; | while read attr value ; do
16410 # Remove prefix and convert to upper case
16411 attr=$(echo $attr | sed &#39;s/^ltspConfig//i&#39; | tr a-z A-Z)
16412 # bass value on to clients
16413 eval &quot;$attr=$value; export $attr&quot;
16414 done
16415 done
16416 fi
16417 &lt;/pre&gt;&lt;/blockquote&gt;
16418
16419 &lt;p&gt;I&#39;m not sure this shell construction will work, because I suspect
16420 the while block might end up in a subshell causing the variables set
16421 there to not show up in ltsp-config, but if that is the case I am sure
16422 the code can be restructured to make sure the variables are passed on.
16423 I expect that can be solved with some testing. :)&lt;/p&gt;
16424
16425 &lt;p&gt;If you want to help out with implementing this for Debian Edu,
16426 please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
16427
16428 &lt;p&gt;Update 2010-07-17: I am aware of another effort to store LTSP
16429 configuration in LDAP that was created around year 2000 by
16430 &lt;a href=&quot;http://www.pcxperience.com/thinclient/documentation/ldap.html&quot;&gt;PC
16431 Xperience, Inc., 2000&lt;/a&gt;. I found its
16432 &lt;a href=&quot;http://people.redhat.com/alikins/ltsp/ldap/&quot;&gt;files&lt;/a&gt; on a
16433 personal home page over at redhat.com.&lt;/p&gt;
16434 </description>
16435 </item>
16436
16437 <item>
16438 <title>jXplorer, a very nice LDAP GUI</title>
16439 <link>http://people.skolelinux.org/pere/blog/jXplorer__a_very_nice_LDAP_GUI.html</link>
16440 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/jXplorer__a_very_nice_LDAP_GUI.html</guid>
16441 <pubDate>Fri, 9 Jul 2010 12:55:00 +0200</pubDate>
16442 <description>&lt;p&gt;Since
16443 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/LUMA__a_very_nice_LDAP_GUI.html&quot;&gt;my
16444 last post&lt;/a&gt; about available LDAP tools in Debian, I was told about a
16445 LDAP GUI that is even better than luma. The java application
16446 &lt;a href=&quot;http://jxplorer.org/&quot;&gt;jXplorer&lt;/a&gt; is claimed to be capable of
16447 moving LDAP objects and subtrees using drag-and-drop, and can
16448 authenticate using Kerberos. I have only tested the Kerberos
16449 authentication, but do not have a LDAP setup allowing me to rewrite
16450 LDAP with my test user yet. It is
16451 &lt;a href=&quot;http://packages.qa.debian.org/j/jxplorer.html&quot;&gt;available in
16452 Debian&lt;/a&gt; testing and unstable at the moment. The only problem I
16453 have with it is how it handle errors. If something go wrong, its
16454 non-intuitive behaviour require me to go through some query work list
16455 and remove the failing query. Nothing big, but very annoying.&lt;/p&gt;
16456 </description>
16457 </item>
16458
16459 <item>
16460 <title>Lenny-&gt;Squeeze upgrades, apt vs aptitude with the Gnome desktop</title>
16461 <link>http://people.skolelinux.org/pere/blog/Lenny__Squeeze_upgrades__apt_vs_aptitude_with_the_Gnome_desktop.html</link>
16462 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Lenny__Squeeze_upgrades__apt_vs_aptitude_with_the_Gnome_desktop.html</guid>
16463 <pubDate>Sat, 3 Jul 2010 23:55:00 +0200</pubDate>
16464 <description>&lt;p&gt;Here is a short update on my &lt;a
16465 href=&quot;http://people.skolelinux.org/~pere/debian-upgrade-testing/&quot;&gt;my
16466 Debian Lenny-&gt;Squeeze upgrade testing&lt;/a&gt;. Here is a summary of the
16467 difference for Gnome when it is upgraded by apt-get and aptitude. I&#39;m
16468 not reporting the status for KDE, because the upgrade crashes when
16469 aptitude try because of missing conflicts
16470 (&lt;a href=&quot;http://bugs.debian.org/584861&quot;&gt;#584861&lt;/a&gt; and
16471 &lt;a href=&quot;http://bugs.debian.org/585716&quot;&gt;#585716&lt;/a&gt;).&lt;/p&gt;
16472
16473 &lt;p&gt;At the end of the upgrade test script, dpkg -l is executed to get a
16474 complete list of the installed packages. Based on this I see these
16475 differences when I did a test run today. As usual, I do not really
16476 know what the correct set of packages would be, but thought it best to
16477 publish the difference.&lt;/p&gt;
16478
16479 &lt;p&gt;Installed using apt-get, missing with aptitude&lt;/p&gt;
16480
16481 &lt;blockquote&gt;&lt;p&gt;
16482 at-spi cpp-4.3 finger gnome-spell gstreamer0.10-gnomevfs
16483 libatspi1.0-0 libcupsys2 libeel2-data libgail-common libgdl-1-common
16484 libgnomeprint2.2-data libgnomeprintui2.2-common libgnomevfs2-bin
16485 libgtksourceview-common libpt-1.10.10-plugins-alsa
16486 libpt-1.10.10-plugins-v4l libservlet2.4-java libxalan2-java
16487 libxerces2-java openoffice.org-writer2latex openssl-blacklist p7zip
16488 python-4suite-xml python-eggtrayicon python-gtkhtml2
16489 python-gtkmozembed svgalibg1 xserver-xephyr zip
16490 &lt;/p&gt;&lt;/blockquote&gt;
16491
16492 &lt;p&gt;Installed using apt-get, removed with aptitude&lt;/p&gt;
16493
16494 &lt;blockquote&gt;&lt;p&gt;
16495 bluez-utils dhcdbd djvulibre-desktop epiphany-gecko
16496 gnome-app-install gnome-mount gnome-vfs-obexftp gnome-volume-manager
16497 libao2 libavahi-compat-libdnssd1 libavahi-core5 libbind9-50
16498 libbluetooth2 libcamel1.2-11 libcdio7 libcucul0 libcurl3
16499 libdirectfb-1.0-0 libdvdread3 libedata-cal1.2-6 libedataserver1.2-9
16500 libeel2-2.20 libepc-1.0-1 libepc-ui-1.0-1 libexchange-storage1.2-3
16501 libfaad0 libgd2-noxpm libgda3-3 libgda3-common libggz2 libggzcore9
16502 libggzmod4 libgksu1.2-0 libgksuui1.0-1 libgmyth0 libgnome-desktop-2
16503 libgnome-pilot2 libgnomecups1.0-1 libgnomeprint2.2-0
16504 libgnomeprintui2.2-0 libgpod3 libgraphviz4 libgtkhtml2-0
16505 libgtksourceview1.0-0 libgucharmap6 libhesiod0 libicu38 libisccc50
16506 libisccfg50 libiw29 libkpathsea4 libltdl3 liblwres50 libmagick++10
16507 libmagick10 libmalaga7 libmtp7 libmysqlclient15off libnautilus-burn4
16508 libneon27 libnm-glib0 libnm-util0 libopal-2.2 libosp5
16509 libparted1.8-10 libpisock9 libpisync1 libpoppler-glib3 libpoppler3
16510 libpt-1.10.10 libraw1394-8 libsensors3 libsmbios2 libsoup2.2-8
16511 libssh2-1 libsuitesparse-3.1.0 libswfdec-0.6-90 libtalloc1
16512 libtotem-plparser10 libtrackerclient0 libvoikko1 libxalan2-java-gcj
16513 libxerces2-java-gcj libxklavier12 libxtrap6 libxxf86misc1 libzephyr3
16514 mysql-common swfdec-gnome totem-gstreamer wodim
16515 &lt;/p&gt;&lt;/blockquote&gt;
16516
16517 &lt;p&gt;Installed using aptitude, missing with apt-get&lt;/p&gt;
16518
16519 &lt;blockquote&gt;&lt;p&gt;
16520 gnome gnome-desktop-environment hamster-applet python-gnomeapplet
16521 python-gnomekeyring python-wnck rhythmbox-plugins xorg
16522 xserver-xorg-input-all xserver-xorg-input-evdev
16523 xserver-xorg-input-kbd xserver-xorg-input-mouse
16524 xserver-xorg-input-synaptics xserver-xorg-video-all
16525 xserver-xorg-video-apm xserver-xorg-video-ark xserver-xorg-video-ati
16526 xserver-xorg-video-chips xserver-xorg-video-cirrus
16527 xserver-xorg-video-dummy xserver-xorg-video-fbdev
16528 xserver-xorg-video-glint xserver-xorg-video-i128
16529 xserver-xorg-video-i740 xserver-xorg-video-mach64
16530 xserver-xorg-video-mga xserver-xorg-video-neomagic
16531 xserver-xorg-video-nouveau xserver-xorg-video-nv
16532 xserver-xorg-video-r128 xserver-xorg-video-radeon
16533 xserver-xorg-video-radeonhd xserver-xorg-video-rendition
16534 xserver-xorg-video-s3 xserver-xorg-video-s3virge
16535 xserver-xorg-video-savage xserver-xorg-video-siliconmotion
16536 xserver-xorg-video-sis xserver-xorg-video-sisusb
16537 xserver-xorg-video-tdfx xserver-xorg-video-tga
16538 xserver-xorg-video-trident xserver-xorg-video-tseng
16539 xserver-xorg-video-vesa xserver-xorg-video-vmware
16540 xserver-xorg-video-voodoo
16541 &lt;/p&gt;&lt;/blockquote&gt;
16542
16543 &lt;p&gt;Installed using aptitude, removed with apt-get&lt;/p&gt;
16544
16545 &lt;blockquote&gt;&lt;p&gt;
16546 deskbar-applet xserver-xorg xserver-xorg-core
16547 xserver-xorg-input-wacom xserver-xorg-video-intel
16548 xserver-xorg-video-openchrome
16549 &lt;/p&gt;&lt;/blockquote&gt;
16550
16551 &lt;p&gt;I was told on IRC that the xorg-xserver package was
16552 &lt;a href=&quot;http://git.debian.org/?p=pkg-xorg/xserver/xorg-server.git;a=commit;h=9c8080d06c457932d3bfec021c69ac000aa60120&quot;&gt;changed
16553 in git&lt;/a&gt; today to try to get apt-get to not remove xorg completely.
16554 No idea when it hits Squeeze, but when it does I hope it will reduce
16555 the difference somewhat.
16556 </description>
16557 </item>
16558
16559 <item>
16560 <title>Caching password, user and group on a roaming Debian laptop</title>
16561 <link>http://people.skolelinux.org/pere/blog/Caching_password__user_and_group_on_a_roaming_Debian_laptop.html</link>
16562 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Caching_password__user_and_group_on_a_roaming_Debian_laptop.html</guid>
16563 <pubDate>Thu, 1 Jul 2010 11:40:00 +0200</pubDate>
16564 <description>&lt;p&gt;For a laptop, centralized user directories and password checking is
16565 a bit troubling. Laptops are typically used also when not connected
16566 to the network, and it is vital for a user to be able to log in or
16567 unlock the screen saver also when a central server is unavailable.
16568 This is possible by caching passwords and directory information (user
16569 and group attributes) locally, and the packages to do so are available
16570 in Debian. Here follow two recipes to set this up in Debian/Squeeze.
16571 It is also possible to set up in Debian/Lenny, but require more manual
16572 setup there because pam-auth-update is missing in Lenny.&lt;/p&gt;
16573
16574 &lt;h2&gt;LDAP/Kerberos + nscd + libpam-ccreds + libpam-mklocaluser/pam_mkhomedir&lt;/h2&gt;
16575
16576 This is the traditional method with a twist. The password caching is
16577 provided by libpam-ccreds (version 10-4 or later is needed on
16578 Squeeze), and the directory caching is done by nscd. The directory
16579 lookup and password checking is done using LDAP. If one want to use
16580 Kerberos for password checking the libpam-ldapd package can be
16581 replaced with libpam-krb5 or libpam-heimdal. If one is happy having a
16582 local home directory with the path listed in LDAP, one can use the
16583 pam_mkhomedir module from pam-modules to make this happen instead of
16584 using libpam-mklocaluser. A setup for pam-auth-update to enable
16585 pam_mkhomedir will have to be written until a fix for
16586 &lt;a href=&quot;http://bugs.debian.org/568577&quot;&gt;bug #568577&lt;/a&gt; is in the
16587 archive. Because I believe it is a bad idea to have local home
16588 directories using misleading paths like /site/server/partition/, I
16589 prefer to create a local user with the home directory in /home/. This
16590 is done using the libpam-mklocaluser package.&lt;/p&gt;
16591
16592 &lt;p&gt;These packages need to be installed and configured&lt;/p&gt;
16593
16594 &lt;blockquote&gt;&lt;pre&gt;
16595 libnss-ldapd libpam-ldapd nscd libpam-ccreds libpam-mklocaluser
16596 &lt;/pre&gt;&lt;/blockquote&gt;
16597
16598 &lt;p&gt;The ldapd packages will ask for LDAP connection information, and
16599 one have to fill in the values that fits ones own site. Make sure the
16600 PAM part uses encrypted connections, to make sure the password is not
16601 sent in clear text to the LDAP server. I&#39;ve been unable to get TLS
16602 certificate checking for a self signed certificate working, which make
16603 LDAP authentication unsafe for Debian Edu (nslcd is not checking if it
16604 is talking to the correct LDAP server), and very much welcome feedback
16605 on how to get this working.&lt;/p&gt;
16606
16607 &lt;p&gt;Because nscd do not have a default configuration fit for offline
16608 caching until &lt;a href=&quot;http://bugs.debian.org/485282&quot;&gt;bug #485282&lt;/a&gt;
16609 is fixed, this configuration should be used instead of the one
16610 currently in /etc/nscd.conf. The changes are in the fields
16611 reload-count and positive-time-to-live, and is based on the
16612 instructions I found in the
16613 &lt;a href=&quot;http://www.flyn.org/laptopldap/&quot;&gt;LDAP for Mobile Laptops&lt;/a&gt;
16614 instructions by Flyn Computing.&lt;/p&gt;
16615
16616 &lt;blockquote&gt;&lt;pre&gt;
16617 debug-level 0
16618 reload-count unlimited
16619 paranoia no
16620
16621 enable-cache passwd yes
16622 positive-time-to-live passwd 2592000
16623 negative-time-to-live passwd 20
16624 suggested-size passwd 211
16625 check-files passwd yes
16626 persistent passwd yes
16627 shared passwd yes
16628 max-db-size passwd 33554432
16629 auto-propagate passwd yes
16630
16631 enable-cache group yes
16632 positive-time-to-live group 2592000
16633 negative-time-to-live group 20
16634 suggested-size group 211
16635 check-files group yes
16636 persistent group yes
16637 shared group yes
16638 max-db-size group 33554432
16639 auto-propagate group yes
16640
16641 enable-cache hosts no
16642 positive-time-to-live hosts 2592000
16643 negative-time-to-live hosts 20
16644 suggested-size hosts 211
16645 check-files hosts yes
16646 persistent hosts yes
16647 shared hosts yes
16648 max-db-size hosts 33554432
16649
16650 enable-cache services yes
16651 positive-time-to-live services 2592000
16652 negative-time-to-live services 20
16653 suggested-size services 211
16654 check-files services yes
16655 persistent services yes
16656 shared services yes
16657 max-db-size services 33554432
16658 &lt;/pre&gt;&lt;/blockquote&gt;
16659
16660 &lt;p&gt;While we wait for a mechanism to update /etc/nsswitch.conf
16661 automatically like the one provided in
16662 &lt;a href=&quot;http://bugs.debian.org/496915&quot;&gt;bug #496915&lt;/a&gt;, the file
16663 content need to be manually replaced to ensure LDAP is used as the
16664 directory service on the machine. /etc/nsswitch.conf should normally
16665 look like this:&lt;/p&gt;
16666
16667 &lt;blockquote&gt;&lt;pre&gt;
16668 passwd: files ldap
16669 group: files ldap
16670 shadow: files ldap
16671 hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
16672 networks: files
16673 protocols: files
16674 services: files
16675 ethers: files
16676 rpc: files
16677 netgroup: files ldap
16678 &lt;/pre&gt;&lt;/blockquote&gt;
16679
16680 &lt;p&gt;The important parts are that ldap is listed last for passwd, group,
16681 shadow and netgroup.&lt;/p&gt;
16682
16683 &lt;p&gt;With these changes in place, any user in LDAP will be able to log
16684 in locally on the machine using for example kdm, get a local home
16685 directory created and have the password as well as user and group
16686 attributes cached.
16687
16688 &lt;h2&gt;LDAP/Kerberos + nss-updatedb + libpam-ccreds +
16689 libpam-mklocaluser/pam_mkhomedir&lt;/h2&gt;
16690
16691 &lt;p&gt;Because nscd have had its share of problems, and seem to have
16692 problems doing proper caching, I&#39;ve seen suggestions and recipes to
16693 use nss-updatedb to copy parts of the LDAP database locally when the
16694 LDAP database is available. I have not tested such setup, because I
16695 discovered sssd.&lt;/p&gt;
16696
16697 &lt;h2&gt;LDAP/Kerberos + sssd + libpam-mklocaluser&lt;/h2&gt;
16698
16699 &lt;p&gt;A more flexible and robust setup than the nscd combination
16700 mentioned earlier that has shown up recently, is the
16701 &lt;a href=&quot;https://fedorahosted.org/sssd/&quot;&gt;sssd&lt;/a&gt; package from Redhat.
16702 It is part of the &lt;a href=&quot;http://www.freeipa.org/&quot;&gt;FreeIPA&lt;/A&gt; project
16703 to provide a Active Directory like directory service for Linux
16704 machines. The sssd system combines the caching of passwords and user
16705 information into one package, and remove the need for nscd and
16706 libpam-ccreds. It support LDAP and Kerberos, but not NIS. Version
16707 1.2 do not support netgroups, but it is said that it will support this
16708 in version 1.5 expected to show up later in 2010. Because the
16709 &lt;a href=&quot;http://packages.qa.debian.org/s/sssd.html&quot;&gt;sssd package&lt;/a&gt;
16710 was missing in Debian, I ended up co-maintaining it with Werner, and
16711 version 1.2 is now in testing.
16712
16713 &lt;p&gt;These packages need to be installed and configured to get the
16714 roaming setup I want&lt;/p&gt;
16715
16716 &lt;blockquote&gt;&lt;pre&gt;
16717 libpam-sss libnss-sss libpam-mklocaluser
16718 &lt;/pre&gt;&lt;/blockquote&gt;
16719
16720 The complete setup of sssd is done by editing/creating
16721 &lt;tt&gt;/etc/sssd/sssd.conf&lt;/tt&gt;.
16722
16723 &lt;blockquote&gt;&lt;pre&gt;
16724 [sssd]
16725 config_file_version = 2
16726 reconnection_retries = 3
16727 sbus_timeout = 30
16728 services = nss, pam
16729 domains = INTERN
16730
16731 [nss]
16732 filter_groups = root
16733 filter_users = root
16734 reconnection_retries = 3
16735
16736 [pam]
16737 reconnection_retries = 3
16738
16739 [domain/INTERN]
16740 enumerate = false
16741 cache_credentials = true
16742
16743 id_provider = ldap
16744 auth_provider = ldap
16745 chpass_provider = ldap
16746
16747 ldap_uri = ldap://ldap
16748 ldap_search_base = dc=skole,dc=skolelinux,dc=no
16749 ldap_tls_reqcert = never
16750 ldap_tls_cacert = /etc/ssl/certs/ca-certificates.crt
16751 &lt;/pre&gt;&lt;/blockquote&gt;
16752
16753 &lt;p&gt;I got the same problem here with certificate checking. Had to set
16754 &quot;ldap_tls_reqcert = never&quot; to get it working.&lt;/p&gt;
16755
16756 &lt;p&gt;With the libnss-sss package in testing at the moment, the
16757 nsswitch.conf file is update automatically, so there is no need to
16758 modify it manually.&lt;/p&gt;
16759
16760 &lt;p&gt;If you want to help out with implementing this for Debian Edu,
16761 please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
16762 </description>
16763 </item>
16764
16765 <item>
16766 <title>LUMA, a very nice LDAP GUI</title>
16767 <link>http://people.skolelinux.org/pere/blog/LUMA__a_very_nice_LDAP_GUI.html</link>
16768 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/LUMA__a_very_nice_LDAP_GUI.html</guid>
16769 <pubDate>Mon, 28 Jun 2010 00:30:00 +0200</pubDate>
16770 <description>&lt;p&gt;The last few days I have been looking into the status of the LDAP
16771 directory in Debian Edu, and in the process I started to miss a GUI
16772 tool to browse the LDAP tree. The only one I was able to find in
16773 Debian/Squeeze and Lenny is
16774 &lt;a href=&quot;http://luma.sourceforge.net/&quot;&gt;LUMA&lt;/a&gt;, which has proved to
16775 be a great tool to get a overview of the current LDAP directory
16776 populated by default in Skolelinux. Thanks to it, I have been able to
16777 find empty and obsolete subtrees, misplaced objects and duplicate
16778 objects. It will be installed by default in Debian/Squeeze. If you
16779 are working with LDAP, give it a go. :)&lt;/p&gt;
16780
16781 &lt;p&gt;I did notice one problem with it I have not had time to report to
16782 the BTS yet. There is no .desktop file in the package, so the tool do
16783 not show up in the Gnome and KDE menus, but only deep down in in the
16784 Debian submenu in KDE. I hope that can be fixed before Squeeze is
16785 released.&lt;/p&gt;
16786
16787 &lt;p&gt;I have not yet been able to get it to modify the tree yet. I would
16788 like to move objects and remove subtrees directly in the GUI, but have
16789 not found a way to do that with LUMA yet. So in the mean time, I use
16790 &lt;a href=&quot;http://www.lichteblau.com/ldapvi/&quot;&gt;ldapvi&lt;/a&gt; for that.&lt;/p&gt;
16791
16792 &lt;p&gt;If you have tips on other GUI tools for LDAP that might be useful
16793 in Debian Edu, please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
16794
16795 &lt;p&gt;Update 2010-06-29: Ross Reedstrom tipped us about the
16796 &lt;a href=&quot;http://packages.qa.debian.org/g/gq.html&quot;&gt;gq&lt;/a&gt; package as a
16797 useful GUI alternative. It seem like a good tool, but is unmaintained
16798 in Debian and got a RC bug keeping it out of Squeeze. Unless that
16799 changes, it will not be an option for Debian Edu based on Squeeze.&lt;/p&gt;
16800 </description>
16801 </item>
16802
16803 <item>
16804 <title>Idea for a change to LDAP schemas allowing DNS and DHCP info to be combined into one object</title>
16805 <link>http://people.skolelinux.org/pere/blog/Idea_for_a_change_to_LDAP_schemas_allowing_DNS_and_DHCP_info_to_be_combined_into_one_object.html</link>
16806 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Idea_for_a_change_to_LDAP_schemas_allowing_DNS_and_DHCP_info_to_be_combined_into_one_object.html</guid>
16807 <pubDate>Thu, 24 Jun 2010 00:35:00 +0200</pubDate>
16808 <description>&lt;p&gt;A while back, I
16809 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Time_for_new__LDAP_schemas_replacing_RFC_2307_.html&quot;&gt;complained
16810 about the fact&lt;/a&gt; that it is not possible with the provided schemas
16811 for storing DNS and DHCP information in LDAP to combine the two sets
16812 of information into one LDAP object representing a computer.&lt;/p&gt;
16813
16814 &lt;p&gt;In the mean time, I discovered that a simple fix would be to make
16815 the dhcpHost object class auxiliary, to allow it to be combined with
16816 the dNSDomain object class, and thus forming one object for one
16817 computer when storing both DHCP and DNS information in LDAP.&lt;/p&gt;
16818
16819 &lt;p&gt;If I understand this correctly, it is not safe to do this change
16820 without also changing the assigned number for the object class, and I
16821 do not know enough about LDAP schema design to do that properly for
16822 Debian Edu.&lt;/p&gt;
16823
16824 &lt;p&gt;Anyway, for future reference, this is how I believe we could change
16825 the
16826 &lt;a href=&quot;http://tools.ietf.org/html/draft-ietf-dhc-ldap-schema-00&quot;&gt;DHCP
16827 schema&lt;/a&gt; to solve at least part of the problem with the LDAP schemas
16828 available today from IETF.&lt;/p&gt;
16829
16830 &lt;pre&gt;
16831 --- dhcp.schema (revision 65192)
16832 +++ dhcp.schema (working copy)
16833 @@ -376,7 +376,7 @@
16834 objectclass ( 2.16.840.1.113719.1.203.6.6
16835 NAME &#39;dhcpHost&#39;
16836 DESC &#39;This represents information about a particular client&#39;
16837 - SUP top
16838 + SUP top AUXILIARY
16839 MUST cn
16840 MAY (dhcpLeaseDN $ dhcpHWAddress $ dhcpOptionsDN $ dhcpStatements $ dhcpComments $ dhcpOption)
16841 X-NDS_CONTAINMENT (&#39;dhcpService&#39; &#39;dhcpSubnet&#39; &#39;dhcpGroup&#39;) )
16842 &lt;/pre&gt;
16843
16844 &lt;p&gt;I very much welcome clues on how to do this properly for Debian
16845 Edu/Squeeze. We provide the DHCP schema in our debian-edu-config
16846 package, and should thus be free to rewrite it as we see fit.&lt;/p&gt;
16847
16848 &lt;p&gt;If you want to help out with implementing this for Debian Edu,
16849 please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
16850 </description>
16851 </item>
16852
16853 <item>
16854 <title>Calling tasksel like the installer, while still getting useful output</title>
16855 <link>http://people.skolelinux.org/pere/blog/Calling_tasksel_like_the_installer__while_still_getting_useful_output.html</link>
16856 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Calling_tasksel_like_the_installer__while_still_getting_useful_output.html</guid>
16857 <pubDate>Wed, 16 Jun 2010 14:55:00 +0200</pubDate>
16858 <description>&lt;p&gt;A few times I have had the need to simulate the way tasksel
16859 installs packages during the normal debian-installer run. Until now,
16860 I have ended up letting tasksel do the work, with the annoying problem
16861 of not getting any feedback at all when something fails (like a
16862 conffile question from dpkg or a download that fails), using code like
16863 this:
16864
16865 &lt;blockquote&gt;&lt;pre&gt;
16866 export DEBIAN_FRONTEND=noninteractive
16867 tasksel --new-install
16868 &lt;/pre&gt;&lt;/blockquote&gt;
16869
16870 This would invoke tasksel, let its automatic task selection pick the
16871 tasks to install, and continue to install the requested tasks without
16872 any output what so ever.
16873
16874 Recently I revisited this problem while working on the automatic
16875 package upgrade testing, because tasksel would some times hang without
16876 any useful feedback, and I want to see what is going on when it
16877 happen. Then it occured to me, I can parse the output from tasksel
16878 when asked to run in test mode, and use that aptitude command line
16879 printed by tasksel then to simulate the tasksel run. I ended up using
16880 code like this:
16881
16882 &lt;blockquote&gt;&lt;pre&gt;
16883 export DEBIAN_FRONTEND=noninteractive
16884 cmd=&quot;$(in_target tasksel -t --new-install | sed &#39;s/debconf-apt-progress -- //&#39;)&quot;
16885 $cmd
16886 &lt;/pre&gt;&lt;/blockquote&gt;
16887
16888 &lt;p&gt;The content of $cmd is typically something like &quot;&lt;tt&gt;aptitude -q
16889 --without-recommends -o APT::Install-Recommends=no -y install
16890 ~t^desktop$ ~t^gnome-desktop$ ~t^laptop$ ~pstandard ~prequired
16891 ~pimportant&lt;/tt&gt;&quot;, which will install the gnome desktop task, the
16892 laptop task and all packages with priority standard , required and
16893 important, just like tasksel would have done it during
16894 installation.&lt;/p&gt;
16895
16896 &lt;p&gt;A better approach is probably to extend tasksel to be able to
16897 install packages without using debconf-apt-progress, for use cases
16898 like this.&lt;/p&gt;
16899 </description>
16900 </item>
16901
16902 <item>
16903 <title>Officeshots taking shape</title>
16904 <link>http://people.skolelinux.org/pere/blog/Officeshots_taking_shape.html</link>
16905 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Officeshots_taking_shape.html</guid>
16906 <pubDate>Sun, 13 Jun 2010 11:40:00 +0200</pubDate>
16907 <description>&lt;p&gt;For those of us caring about document exchange and
16908 interoperability, &lt;a href=&quot;http://www.officeshots.org/&quot;&gt;OfficeShots&lt;/a&gt;
16909 is a great service. It is to ODF documents what
16910 &lt;a href=&quot;http://browsershots.org/&quot;&gt;BrowserShots&lt;/a&gt; is for web
16911 pages.&lt;/p&gt;
16912
16913 &lt;p&gt;A while back, I was contacted by Knut Yrvin at the part of Nokia
16914 that used to be Trolltech, who wanted to help the OfficeShots project
16915 and wondered if the University of Oslo where I work would be
16916 interested in supporting the project. I helped him to navigate his
16917 request to the right people at work, and his request was answered with
16918 a spot in the machine room with power and network connected, and Knut
16919 arranged funding for a machine to fill the spot. The machine is
16920 administrated by the OfficeShots people, so I do not have daily
16921 contact with its progress, and thus from time to time check back to
16922 see how the project is doing.&lt;/p&gt;
16923
16924 &lt;p&gt;Today I had a look, and was happy to see that the Dell box in our
16925 machine room now is the host for several virtual machines running as
16926 OfficeShots factories, and the project is able to render ODF documents
16927 in 17 different document processing implementation on Linux and
16928 Windows. This is great.&lt;/p&gt;
16929 </description>
16930 </item>
16931
16932 <item>
16933 <title>Lenny-&gt;Squeeze upgrades, removals by apt and aptitude</title>
16934 <link>http://people.skolelinux.org/pere/blog/Lenny__Squeeze_upgrades__removals_by_apt_and_aptitude.html</link>
16935 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Lenny__Squeeze_upgrades__removals_by_apt_and_aptitude.html</guid>
16936 <pubDate>Sun, 13 Jun 2010 09:05:00 +0200</pubDate>
16937 <description>&lt;p&gt;My
16938 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Automatic_upgrade_testing_from_Lenny_to_Squeeze.html&quot;&gt;testing
16939 of Debian upgrades&lt;/a&gt; from Lenny to Squeeze continues, and I&#39;ve
16940 finally made the upgrade logs available from
16941 &lt;a href=&quot;http://people.skolelinux.org/pere/debian-upgrade-testing/&quot;&gt;http://people.skolelinux.org/pere/debian-upgrade-testing/&lt;/a&gt;.
16942 I am now testing dist-upgrade of Gnome and KDE in a chroot using both
16943 apt and aptitude, and found their differences interesting. This time
16944 I will only focus on their removal plans.&lt;/p&gt;
16945
16946 &lt;p&gt;After installing a Gnome desktop and the laptop task, apt-get wants
16947 to remove 72 packages when dist-upgrading from Lenny to Squeeze. The
16948 surprising part is that it want to remove xorg and all
16949 xserver-xorg-video* drivers. Clearly not a good choice, but I am not
16950 sure why. When asking aptitude to do the same, it want to remove 129
16951 packages, but most of them are library packages I suspect are no
16952 longer needed. Both of them want to remove bluetooth packages, which
16953 I do not know. Perhaps these bluetooth packages are obsolete?&lt;/p&gt;
16954
16955 &lt;p&gt;For KDE, apt-get want to remove 82 packages, among them kdebase
16956 which seem like a bad idea and xorg the same way as with Gnome. Asking
16957 aptitude for the same, it wants to remove 192 packages, none which are
16958 too surprising.&lt;/p&gt;
16959
16960 &lt;p&gt;I guess the removal of xorg during upgrades should be investigated
16961 and avoided, and perhaps others as well. Here are the complete list
16962 of planned removals. The complete logs is available from the URL
16963 above. Note if you want to repeat these tests, that the upgrade test
16964 for kde+apt-get hung in the tasksel setup because of dpkg asking
16965 conffile questions. No idea why. I worked around it by using
16966 &#39;&lt;tt&gt;echo &gt;&gt; /proc/&lt;em&gt;pidofdpkg&lt;/em&gt;/fd/0&lt;/tt&gt;&#39; to tell dpkg to
16967 continue.&lt;/p&gt;
16968
16969 &lt;p&gt;&lt;b&gt;apt-get gnome 72&lt;/b&gt;
16970 &lt;br&gt;bluez-gnome cupsddk-drivers deskbar-applet gnome
16971 gnome-desktop-environment gnome-network-admin gtkhtml3.14
16972 iceweasel-gnome-support libavcodec51 libdatrie0 libgdl-1-0
16973 libgnomekbd2 libgnomekbdui2 libmetacity0 libslab0 libxcb-xlib0
16974 nautilus-cd-burner python-gnome2-desktop python-gnome2-extras
16975 serpentine swfdec-mozilla update-manager xorg xserver-xorg
16976 xserver-xorg-core xserver-xorg-input-all xserver-xorg-input-evdev
16977 xserver-xorg-input-kbd xserver-xorg-input-mouse
16978 xserver-xorg-input-synaptics xserver-xorg-input-wacom
16979 xserver-xorg-video-all xserver-xorg-video-apm xserver-xorg-video-ark
16980 xserver-xorg-video-ati xserver-xorg-video-chips
16981 xserver-xorg-video-cirrus xserver-xorg-video-cyrix
16982 xserver-xorg-video-dummy xserver-xorg-video-fbdev
16983 xserver-xorg-video-glint xserver-xorg-video-i128
16984 xserver-xorg-video-i740 xserver-xorg-video-imstt
16985 xserver-xorg-video-intel xserver-xorg-video-mach64
16986 xserver-xorg-video-mga xserver-xorg-video-neomagic
16987 xserver-xorg-video-nsc xserver-xorg-video-nv
16988 xserver-xorg-video-openchrome xserver-xorg-video-r128
16989 xserver-xorg-video-radeon xserver-xorg-video-radeonhd
16990 xserver-xorg-video-rendition xserver-xorg-video-s3
16991 xserver-xorg-video-s3virge xserver-xorg-video-savage
16992 xserver-xorg-video-siliconmotion xserver-xorg-video-sis
16993 xserver-xorg-video-sisusb xserver-xorg-video-tdfx
16994 xserver-xorg-video-tga xserver-xorg-video-trident
16995 xserver-xorg-video-tseng xserver-xorg-video-v4l
16996 xserver-xorg-video-vesa xserver-xorg-video-vga
16997 xserver-xorg-video-vmware xserver-xorg-video-voodoo xulrunner-1.9
16998 xulrunner-1.9-gnome-support&lt;/p&gt;
16999
17000 &lt;p&gt;&lt;b&gt;aptitude gnome 129&lt;/b&gt;
17001
17002 &lt;br&gt;bluez-gnome bluez-utils cpp-4.3 cupsddk-drivers dhcdbd
17003 djvulibre-desktop finger gnome-app-install gnome-mount
17004 gnome-network-admin gnome-spell gnome-vfs-obexftp
17005 gnome-volume-manager gstreamer0.10-gnomevfs gtkhtml3.14 libao2
17006 libavahi-compat-libdnssd1 libavahi-core5 libavcodec51 libbluetooth2
17007 libcamel1.2-11 libcdio7 libcucul0 libcupsys2 libcurl3 libdatrie0
17008 libdirectfb-1.0-0 libdvdread3 libedataserver1.2-9 libeel2-2.20
17009 libeel2-data libepc-1.0-1 libepc-ui-1.0-1 libfaad0 libgail-common
17010 libgd2-noxpm libgda3-3 libgda3-common libgdl-1-0 libgdl-1-common
17011 libggz2 libggzcore9 libggzmod4 libgksu1.2-0 libgksuui1.0-1 libgmyth0
17012 libgnomecups1.0-1 libgnomekbd2 libgnomekbdui2 libgnomeprint2.2-0
17013 libgnomeprint2.2-data libgnomeprintui2.2-0 libgnomeprintui2.2-common
17014 libgnomevfs2-bin libgpod3 libgraphviz4 libgtkhtml2-0
17015 libgtksourceview-common libgtksourceview1.0-0 libgucharmap6
17016 libhesiod0 libicu38 libiw29 libkpathsea4 libltdl3 libmagick++10
17017 libmagick10 libmalaga7 libmetacity0 libmtp7 libmysqlclient15off
17018 libnautilus-burn4 libneon27 libnm-glib0 libnm-util0 libopal-2.2
17019 libosp5 libparted1.8-10 libpoppler-glib3 libpoppler3 libpt-1.10.10
17020 libpt-1.10.10-plugins-alsa libpt-1.10.10-plugins-v4l libraw1394-8
17021 libsensors3 libslab0 libsmbios2 libsoup2.2-8 libssh2-1
17022 libsuitesparse-3.1.0 libswfdec-0.6-90 libtalloc1 libtotem-plparser10
17023 libtrackerclient0 libxalan2-java libxalan2-java-gcj libxcb-xlib0
17024 libxerces2-java libxerces2-java-gcj libxklavier12 libxtrap6
17025 libxxf86misc1 libzephyr3 mysql-common nautilus-cd-burner
17026 openoffice.org-writer2latex openssl-blacklist p7zip
17027 python-4suite-xml python-eggtrayicon python-gnome2-desktop
17028 python-gnome2-extras python-gtkhtml2 python-gtkmozembed
17029 python-numeric python-sexy serpentine svgalibg1 swfdec-gnome
17030 swfdec-mozilla totem-gstreamer update-manager wodim
17031 xserver-xorg-video-cyrix xserver-xorg-video-imstt
17032 xserver-xorg-video-nsc xserver-xorg-video-v4l xserver-xorg-video-vga
17033 zip&lt;/p&gt;
17034
17035 &lt;p&gt;&lt;b&gt;apt-get kde 82&lt;/b&gt;
17036
17037 &lt;br&gt;cupsddk-drivers karm kaudiocreator kcoloredit kcontrol kde kde-core
17038 kdeaddons kdeartwork kdebase kdebase-bin kdebase-bin-kde3
17039 kdebase-kio-plugins kdesktop kdeutils khelpcenter kicker
17040 kicker-applets knewsticker kolourpaint konq-plugins konqueror korn
17041 kpersonalizer kscreensaver ksplash libavcodec51 libdatrie0 libkiten1
17042 libxcb-xlib0 quanta superkaramba texlive-base-bin xorg xserver-xorg
17043 xserver-xorg-core xserver-xorg-input-all xserver-xorg-input-evdev
17044 xserver-xorg-input-kbd xserver-xorg-input-mouse
17045 xserver-xorg-input-synaptics xserver-xorg-input-wacom
17046 xserver-xorg-video-all xserver-xorg-video-apm xserver-xorg-video-ark
17047 xserver-xorg-video-ati xserver-xorg-video-chips
17048 xserver-xorg-video-cirrus xserver-xorg-video-cyrix
17049 xserver-xorg-video-dummy xserver-xorg-video-fbdev
17050 xserver-xorg-video-glint xserver-xorg-video-i128
17051 xserver-xorg-video-i740 xserver-xorg-video-imstt
17052 xserver-xorg-video-intel xserver-xorg-video-mach64
17053 xserver-xorg-video-mga xserver-xorg-video-neomagic
17054 xserver-xorg-video-nsc xserver-xorg-video-nv
17055 xserver-xorg-video-openchrome xserver-xorg-video-r128
17056 xserver-xorg-video-radeon xserver-xorg-video-radeonhd
17057 xserver-xorg-video-rendition xserver-xorg-video-s3
17058 xserver-xorg-video-s3virge xserver-xorg-video-savage
17059 xserver-xorg-video-siliconmotion xserver-xorg-video-sis
17060 xserver-xorg-video-sisusb xserver-xorg-video-tdfx
17061 xserver-xorg-video-tga xserver-xorg-video-trident
17062 xserver-xorg-video-tseng xserver-xorg-video-v4l
17063 xserver-xorg-video-vesa xserver-xorg-video-vga
17064 xserver-xorg-video-vmware xserver-xorg-video-voodoo xulrunner-1.9&lt;/p&gt;
17065
17066 &lt;p&gt;&lt;b&gt;aptitude kde 192&lt;/b&gt;
17067 &lt;br&gt;bluez-utils cpp-4.3 cupsddk-drivers cvs dcoprss dhcdbd
17068 djvulibre-desktop dosfstools eyesapplet fifteenapplet finger gettext
17069 ghostscript-x imlib-base imlib11 indi kandy karm kasteroids
17070 kaudiocreator kbackgammon kbstate kcoloredit kcontrol kcron kdat
17071 kdeadmin-kfile-plugins kdeartwork-misc kdeartwork-theme-window
17072 kdebase-bin-kde3 kdebase-kio-plugins kdeedu-data
17073 kdegraphics-kfile-plugins kdelirc kdemultimedia-kappfinder-data
17074 kdemultimedia-kfile-plugins kdenetwork-kfile-plugins
17075 kdepim-kfile-plugins kdepim-kio-plugins kdeprint kdesktop kdessh
17076 kdict kdnssd kdvi kedit keduca kenolaba kfax kfaxview kfouleggs
17077 kghostview khelpcenter khexedit kiconedit kitchensync klatin
17078 klickety kmailcvt kmenuedit kmid kmilo kmoon kmrml kodo kolourpaint
17079 kooka korn kpager kpdf kpercentage kpf kpilot kpoker kpovmodeler
17080 krec kregexpeditor ksayit ksim ksirc ksirtet ksmiletris ksmserver
17081 ksnake ksokoban ksplash ksvg ksysv ktip ktnef kuickshow kverbos
17082 kview kviewshell kvoctrain kwifimanager kwin kwin4 kworldclock
17083 kxsldbg libakode2 libao2 libarts1-akode libarts1-audiofile
17084 libarts1-mpeglib libarts1-xine libavahi-compat-libdnssd1
17085 libavahi-core5 libavc1394-0 libavcodec51 libbluetooth2
17086 libboost-python1.34.1 libcucul0 libcurl3 libcvsservice0 libdatrie0
17087 libdirectfb-1.0-0 libdjvulibre21 libdvdread3 libfaad0 libfreebob0
17088 libgail-common libgd2-noxpm libgraphviz4 libgsmme1c2a libgtkhtml2-0
17089 libicu38 libiec61883-0 libindex0 libiw29 libk3b3 libkcal2b libkcddb1
17090 libkdeedu3 libkdepim1a libkgantt0 libkiten1 libkleopatra1 libkmime2
17091 libkpathsea4 libkpimexchange1 libkpimidentities1 libkscan1
17092 libksieve0 libktnef1 liblockdev1 libltdl3 libmagick10 libmimelib1c2a
17093 libmozjs1d libmpcdec3 libneon27 libnm-util0 libopensync0 libpisock9
17094 libpoppler-glib3 libpoppler-qt2 libpoppler3 libraw1394-8 libsmbios2
17095 libssh2-1 libsuitesparse-3.1.0 libtalloc1 libtiff-tools
17096 libxalan2-java libxalan2-java-gcj libxcb-xlib0 libxerces2-java
17097 libxerces2-java-gcj libxtrap6 mpeglib networkstatus
17098 openoffice.org-writer2latex pmount poster psutils quanta quanta-data
17099 superkaramba svgalibg1 tex-common texlive-base texlive-base-bin
17100 texlive-common texlive-doc-base texlive-fonts-recommended
17101 xserver-xorg-video-cyrix xserver-xorg-video-imstt
17102 xserver-xorg-video-nsc xserver-xorg-video-v4l xserver-xorg-video-vga
17103 xulrunner-1.9&lt;/p&gt;
17104
17105 </description>
17106 </item>
17107
17108 <item>
17109 <title>Automatic upgrade testing from Lenny to Squeeze</title>
17110 <link>http://people.skolelinux.org/pere/blog/Automatic_upgrade_testing_from_Lenny_to_Squeeze.html</link>
17111 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Automatic_upgrade_testing_from_Lenny_to_Squeeze.html</guid>
17112 <pubDate>Fri, 11 Jun 2010 22:50:00 +0200</pubDate>
17113 <description>&lt;p&gt;The last few days I have done some upgrade testing in Debian, to
17114 see if the upgrade from Lenny to Squeeze will go smoothly. A few bugs
17115 have been discovered and reported in the process
17116 (&lt;a href=&quot;http://bugs.debian.org/585410&quot;&gt;#585410&lt;/a&gt; in nagios3-cgi,
17117 &lt;a href=&quot;http://bugs.debian.org/584879&quot;&gt;#584879&lt;/a&gt; already fixed in
17118 enscript and &lt;a href=&quot;http://bugs.debian.org/584861&quot;&gt;#584861&lt;/a&gt; in
17119 kdebase-workspace-data), and to get a more regular testing going on, I
17120 am working on a script to automate the test.&lt;/p&gt;
17121
17122 &lt;p&gt;The idea is to create a Lenny chroot and use tasksel to install a
17123 Gnome or KDE desktop installation inside the chroot before upgrading
17124 it. To ensure no services are started in the chroot, a policy-rc.d
17125 script is inserted. To make sure tasksel believe it is to install a
17126 desktop on a laptop, the tasksel tests are replaced in the chroot
17127 (only acceptable because this is a throw-away chroot).&lt;/p&gt;
17128
17129 &lt;p&gt;A naive upgrade from Lenny to Squeeze using aptitude dist-upgrade
17130 currently always fail because udev refuses to upgrade with the kernel
17131 in Lenny, so to avoid that problem the file /etc/udev/kernel-upgrade
17132 is created. The bug report
17133 &lt;a href=&quot;http://bugs.debian.org/566000&quot;&gt;#566000&lt;/a&gt; make me suspect
17134 this problem do not trigger in a chroot, but I touch the file anyway
17135 to make sure the upgrade go well. Testing on virtual and real
17136 hardware have failed me because of udev so far, and creating this file
17137 do the trick in such settings anyway. This is a
17138 &lt;a href=&quot;http://www.linuxquestions.org/questions/debian-26/failed-dist-upgrade-due-to-udev-config_sysfs_deprecated-nonsense-804130/&quot;&gt;known
17139 issue&lt;/a&gt; and the current udev behaviour is intended by the udev
17140 maintainer because he lack the resources to rewrite udev to keep
17141 working with old kernels or something like that. I really wish the
17142 udev upstream would keep udev backwards compatible, to avoid such
17143 upgrade problem, but given that they fail to do so, I guess
17144 documenting the way out of this mess is the best option we got for
17145 Debian Squeeze.&lt;/p&gt;
17146
17147 &lt;p&gt;Anyway, back to the task at hand, testing upgrades. This test
17148 script, which I call &lt;tt&gt;upgrade-test&lt;/tt&gt; for now, is doing the
17149 trick:&lt;/p&gt;
17150
17151 &lt;blockquote&gt;&lt;pre&gt;
17152 #!/bin/sh
17153 set -ex
17154
17155 if [ &quot;$1&quot; ] ; then
17156 desktop=$1
17157 else
17158 desktop=gnome
17159 fi
17160
17161 from=lenny
17162 to=squeeze
17163
17164 exec &amp;lt; /dev/null
17165 unset LANG
17166 mirror=http://ftp.skolelinux.org/debian
17167 tmpdir=chroot-$from-upgrade-$to-$desktop
17168 fuser -mv .
17169 debootstrap $from $tmpdir $mirror
17170 chroot $tmpdir aptitude update
17171 cat &gt; $tmpdir/usr/sbin/policy-rc.d &amp;lt;&amp;lt;EOF
17172 #!/bin/sh
17173 exit 101
17174 EOF
17175 chmod a+rx $tmpdir/usr/sbin/policy-rc.d
17176 exit_cleanup() {
17177 umount $tmpdir/proc
17178 }
17179 mount -t proc proc $tmpdir/proc
17180 # Make sure proc is unmounted also on failure
17181 trap exit_cleanup EXIT INT
17182
17183 chroot $tmpdir aptitude -y install debconf-utils
17184
17185 # Make sure tasksel autoselection trigger. It need the test scripts
17186 # to return the correct answers.
17187 echo tasksel tasksel/desktop multiselect $desktop | \
17188 chroot $tmpdir debconf-set-selections
17189
17190 # Include the desktop and laptop task
17191 for test in desktop laptop ; do
17192 echo &gt; $tmpdir/usr/lib/tasksel/tests/$test &amp;lt;&amp;lt;EOF
17193 #!/bin/sh
17194 exit 2
17195 EOF
17196 chmod a+rx $tmpdir/usr/lib/tasksel/tests/$test
17197 done
17198
17199 DEBIAN_FRONTEND=noninteractive
17200 DEBIAN_PRIORITY=critical
17201 export DEBIAN_FRONTEND DEBIAN_PRIORITY
17202 chroot $tmpdir tasksel --new-install
17203
17204 echo deb $mirror $to main &gt; $tmpdir/etc/apt/sources.list
17205 chroot $tmpdir aptitude update
17206 touch $tmpdir/etc/udev/kernel-upgrade
17207 chroot $tmpdir aptitude -y dist-upgrade
17208 fuser -mv
17209 &lt;/pre&gt;&lt;/blockquote&gt;
17210
17211 &lt;p&gt;I suspect it would be useful to test upgrades with both apt-get and
17212 with aptitude, but I have not had time to look at how they behave
17213 differently so far. I hope to get a cron job running to do the test
17214 regularly and post the result on the web. The Gnome upgrade currently
17215 work, while the KDE upgrade fail because of the bug in
17216 kdebase-workspace-data&lt;/p&gt;
17217
17218 &lt;p&gt;I am not quite sure what kind of extract from the huge upgrade logs
17219 (KDE 167 KiB, Gnome 516 KiB) it make sense to include in this blog
17220 post, so I will refrain from trying. I can report that for Gnome,
17221 aptitude report 760 packages upgraded, 448 newly installed, 129 to
17222 remove and 1 not upgraded and 1024MB need to be downloaded while for
17223 KDE the same numbers are 702 packages upgraded, 507 newly installed,
17224 193 to remove and 0 not upgraded and 1117MB need to be downloaded&lt;/p&gt;
17225
17226 &lt;p&gt;I am very happy to notice that the Gnome desktop + laptop upgrade
17227 is able to migrate to dependency based boot sequencing and parallel
17228 booting without a hitch. Was unsure if there were still bugs with
17229 packages failing to clean up their obsolete init.d script during
17230 upgrades, and no such problem seem to affect the Gnome desktop+laptop
17231 packages.&lt;/p&gt;
17232 </description>
17233 </item>
17234
17235 <item>
17236 <title>Upstart or sysvinit - as init.d scripts see it</title>
17237 <link>http://people.skolelinux.org/pere/blog/Upstart_or_sysvinit___as_init_d_scripts_see_it.html</link>
17238 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Upstart_or_sysvinit___as_init_d_scripts_see_it.html</guid>
17239 <pubDate>Sun, 6 Jun 2010 23:55:00 +0200</pubDate>
17240 <description>&lt;p&gt;If Debian is to migrate to upstart on Linux, I expect some init.d
17241 scripts to migrate (some of) their operations to upstart job while
17242 keeping the init.d for hurd and kfreebsd. The packages with such
17243 needs will need a way to get their init.d scripts to behave
17244 differently when used with sysvinit and with upstart. Because of
17245 this, I had a look at the environment variables set when a init.d
17246 script is running under upstart, and when it is not.&lt;/p&gt;
17247
17248 &lt;p&gt;With upstart, I notice these environment variables are set when a
17249 script is started from rcS.d/ (ignoring some irrelevant ones like
17250 COLUMNS):&lt;/p&gt;
17251
17252 &lt;blockquote&gt;&lt;pre&gt;
17253 DEFAULT_RUNLEVEL=2
17254 previous=N
17255 PREVLEVEL=
17256 RUNLEVEL=
17257 runlevel=S
17258 UPSTART_EVENTS=startup
17259 UPSTART_INSTANCE=
17260 UPSTART_JOB=rc-sysinit
17261 &lt;/pre&gt;&lt;/blockquote&gt;
17262
17263 &lt;p&gt;With sysvinit, these environment variables are set for the same
17264 script.&lt;/p&gt;
17265
17266 &lt;blockquote&gt;&lt;pre&gt;
17267 INIT_VERSION=sysvinit-2.88
17268 previous=N
17269 PREVLEVEL=N
17270 RUNLEVEL=S
17271 runlevel=S
17272 &lt;/pre&gt;&lt;/blockquote&gt;
17273
17274 &lt;p&gt;The RUNLEVEL and PREVLEVEL environment variables passed on from
17275 sysvinit are not set by upstart. Not sure if it is intentional or not
17276 to not be compatible with sysvinit in this regard.&lt;/p&gt;
17277
17278 &lt;p&gt;For scripts needing to behave differently when upstart is used,
17279 looking for the UPSTART_JOB environment variable seem to be a good
17280 choice.&lt;/p&gt;
17281 </description>
17282 </item>
17283
17284 <item>
17285 <title>A manual for standards wars...</title>
17286 <link>http://people.skolelinux.org/pere/blog/A_manual_for_standards_wars___.html</link>
17287 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/A_manual_for_standards_wars___.html</guid>
17288 <pubDate>Sun, 6 Jun 2010 14:15:00 +0200</pubDate>
17289 <description>&lt;p&gt;Via the
17290 &lt;a href=&quot;http://feedproxy.google.com/~r/robweir/antic-atom/~3/QzU4RgoAGMg/weekly-links-10.html&quot;&gt;blog
17291 of Rob Weir&lt;/a&gt; I came across the very interesting essay named
17292 &lt;a href=&quot;http://faculty.haas.berkeley.edu/shapiro/wars.pdf&quot;&gt;The Art of
17293 Standards Wars&lt;/a&gt; (PDF 25 pages). I recommend it for everyone
17294 following the standards wars of today.&lt;/p&gt;
17295 </description>
17296 </item>
17297
17298 <item>
17299 <title>Sitesummary tip: Listing computer hardware models used at site</title>
17300 <link>http://people.skolelinux.org/pere/blog/Sitesummary_tip__Listing_computer_hardware_models_used_at_site.html</link>
17301 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Sitesummary_tip__Listing_computer_hardware_models_used_at_site.html</guid>
17302 <pubDate>Thu, 3 Jun 2010 12:05:00 +0200</pubDate>
17303 <description>&lt;p&gt;When using sitesummary at a site to track machines, it is possible
17304 to get a list of the machine types in use thanks to the DMI
17305 information extracted from each machine. The script to do so is
17306 included in the sitesummary package, and here is example output from
17307 the Skolelinux build servers:&lt;/p&gt;
17308
17309 &lt;blockquote&gt;&lt;pre&gt;
17310 maintainer:~# /usr/lib/sitesummary/hardware-model-summary
17311 vendor count
17312 Dell Computer Corporation 1
17313 PowerEdge 1750 1
17314 IBM 1
17315 eserver xSeries 345 -[8670M1X]- 1
17316 Intel 2
17317 [no-dmi-info] 3
17318 maintainer:~#
17319 &lt;/pre&gt;&lt;/blockquote&gt;
17320
17321 &lt;p&gt;The quality of the report depend on the quality of the DMI tables
17322 provided in each machine. Here there are Intel machines without model
17323 information listed with Intel as vendor and no model, and virtual Xen
17324 machines listed as [no-dmi-info]. One can add -l as a command line
17325 option to list the individual machines.&lt;/p&gt;
17326
17327 &lt;p&gt;A larger list is
17328 &lt;a href=&quot;http://narvikskolen.no/sitesummary/&quot;&gt;available from the the
17329 city of Narvik&lt;/a&gt;, which uses Skolelinux on all their shools and also
17330 provide the basic sitesummary report publicly. In their report there
17331 are ~1400 machines. I know they use both Ubuntu and Skolelinux on
17332 their machines, and as sitesummary is available in both distributions,
17333 it is trivial to get all of them to report to the same central
17334 collector.&lt;/p&gt;
17335 </description>
17336 </item>
17337
17338 <item>
17339 <title>KDM fail at boot with NVidia cards - and no one try to fix it?</title>
17340 <link>http://people.skolelinux.org/pere/blog/KDM_fail_at_boot_with_NVidia_cards___and_no_one_try_to_fix_it_.html</link>
17341 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/KDM_fail_at_boot_with_NVidia_cards___and_no_one_try_to_fix_it_.html</guid>
17342 <pubDate>Tue, 1 Jun 2010 17:05:00 +0200</pubDate>
17343 <description>&lt;p&gt;It is strange to watch how a bug in Debian causing KDM to fail to
17344 start at boot when an NVidia video card is used is handled. The
17345 problem seem to be that the nvidia X.org driver uses a long time to
17346 initialize, and this duration is longer than kdm is configured to
17347 wait.&lt;/p&gt;
17348
17349 &lt;p&gt;I came across two bugs related to this issue,
17350 &lt;a href=&quot;http://bugs.debian.org/583312&quot;&gt;#583312&lt;/a&gt; initially filed
17351 against initscripts and passed on to nvidia-glx when it became obvious
17352 that the nvidia drivers were involved, and
17353 &lt;a href=&quot;http://bugs.debian.org/524751&quot;&gt;#524751&lt;/a&gt; initially filed against
17354 kdm and passed on to src:nvidia-graphics-drivers for unknown reasons.&lt;/p&gt;
17355
17356 &lt;p&gt;To me, it seem that no-one is interested in actually solving the
17357 problem nvidia video card owners experience and make sure the Debian
17358 distribution work out of the box for these users. The nvidia driver
17359 maintainers expect kdm to be set up to wait longer, while kdm expect
17360 the nvidia driver maintainers to fix the driver to start faster, and
17361 while they wait for each other I guess the users end up switching to a
17362 distribution that work for them. I have no idea what the solution is,
17363 but I am pretty sure that waiting for each other is not it.&lt;/p&gt;
17364
17365 &lt;p&gt;I wonder why we end up handling bugs this way.&lt;/p&gt;
17366 </description>
17367 </item>
17368
17369 <item>
17370 <title>Parallellized boot seem to hold up well in Debian/testing</title>
17371 <link>http://people.skolelinux.org/pere/blog/Parallellized_boot_seem_to_hold_up_well_in_Debian_testing.html</link>
17372 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Parallellized_boot_seem_to_hold_up_well_in_Debian_testing.html</guid>
17373 <pubDate>Thu, 27 May 2010 23:55:00 +0200</pubDate>
17374 <description>&lt;p&gt;A few days ago, parallel booting was enabled in Debian/testing.
17375 The feature seem to hold up pretty well, but three fairly serious
17376 issues are known and should be solved:
17377
17378 &lt;p&gt;&lt;ul&gt;
17379
17380 &lt;li&gt;The wicd package seen to
17381 &lt;a href=&quot;http://bugs.debian.org/508289&quot;&gt;break NFS mounting&lt;/a&gt; and
17382 &lt;a href=&quot;http://bugs.debian.org/581586&quot;&gt;network setup&lt;/a&gt; when
17383 parallel booting is enabled. No idea why, but the wicd maintainer
17384 seem to be on the case.&lt;/li&gt;
17385
17386 &lt;li&gt;The nvidia X driver seem to
17387 &lt;a href=&quot;http://bugs.debian.org/583312&quot;&gt;have a race condition&lt;/a&gt;
17388 triggered more easily when parallel booting is in effect. The
17389 maintainer is on the case.&lt;/li&gt;
17390
17391 &lt;li&gt;The sysv-rc package fail to properly enable dependency based boot
17392 sequencing (the shutdown is broken) when old file-rc users
17393 &lt;a href=&quot;http://bugs.debian.org/575080&quot;&gt;try to switch back&lt;/a&gt; to
17394 sysv-rc. One way to solve it would be for file-rc to create
17395 /etc/init.d/.legacy-bootordering, and another is to try to make
17396 sysv-rc more robust. Will investigate some more and probably upload a
17397 workaround in sysv-rc to help those trying to move from file-rc to
17398 sysv-rc get a working shutdown.&lt;/li&gt;
17399
17400 &lt;/ul&gt;&lt;/p&gt;
17401
17402 &lt;p&gt;All in all not many surprising issues, and all of them seem
17403 solvable before Squeeze is released. In addition to these there are
17404 some packages with bugs in their dependencies and run level settings,
17405 which I expect will be fixed in a reasonable time span.&lt;/p&gt;
17406
17407 &lt;p&gt;If you report any problems with dependencies in init.d scripts to
17408 the BTS, please usertag the report to get it to show up at
17409 &lt;a href=&quot;http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=initscripts-ng-devel@lists.alioth.debian.org&quot;&gt;the
17410 list of usertagged bugs related to this&lt;/a&gt;.&lt;/p&gt;
17411
17412 &lt;p&gt;Update: Correct bug number to file-rc issue.&lt;/p&gt;
17413 </description>
17414 </item>
17415
17416 <item>
17417 <title>More flexible firmware handling in debian-installer</title>
17418 <link>http://people.skolelinux.org/pere/blog/More_flexible_firmware_handling_in_debian_installer.html</link>
17419 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/More_flexible_firmware_handling_in_debian_installer.html</guid>
17420 <pubDate>Sat, 22 May 2010 21:30:00 +0200</pubDate>
17421 <description>&lt;p&gt;After a long break from debian-installer development, I finally
17422 found time today to return to the project. Having to spend less time
17423 working dependency based boot in debian, as it is almost complete now,
17424 definitely helped freeing some time.&lt;/p&gt;
17425
17426 &lt;p&gt;A while back, I ran into a problem while working on Debian Edu. We
17427 include some firmware packages on the Debian Edu CDs, those needed to
17428 get disk and network controllers working. Without having these
17429 firmware packages available during installation, it is impossible to
17430 install Debian Edu on the given machine, and because our target group
17431 are non-technical people, asking them to provide firmware packages on
17432 an external medium is a support pain. Initially, I expected it to be
17433 enough to include the firmware packages on the CD to get
17434 debian-installer to find and use them. This proved to be wrong.
17435 Next, I hoped it was enough to symlink the relevant firmware packages
17436 to some useful location on the CD (tried /cdrom/ and
17437 /cdrom/firmware/). This also proved to not work, and at this point I
17438 found time to look at the debian-installer code to figure out what was
17439 going to work.&lt;/p&gt;
17440
17441 &lt;p&gt;The firmware loading code is in the hw-detect package, and a closer
17442 look revealed that it would only look for firmware packages outside
17443 the installation media, so the CD was never checked for firmware
17444 packages. It would only check USB sticks, floppies and other
17445 &quot;external&quot; media devices. Today I changed it to also look in the
17446 /cdrom/firmware/ directory on the mounted CD or DVD, which should
17447 solve the problem I ran into with Debian edu. I also changed it to
17448 look in /firmware/, to make sure the installer also find firmware
17449 provided in the initrd when booting the installer via PXE, to allow us
17450 to provide the same feature in the PXE setup included in Debian
17451 Edu.&lt;/p&gt;
17452
17453 &lt;p&gt;To make sure firmware deb packages with a license questions are not
17454 activated without asking if the license is accepted, I extended
17455 hw-detect to look for preinst scripts in the firmware packages, and
17456 run these before activating the firmware during installation. The
17457 license question is asked using debconf in the preinst, so this should
17458 solve the issue for the firmware packages I have looked at so far.&lt;/p&gt;
17459
17460 &lt;p&gt;If you want to discuss the details of these features, please
17461 contact us on debian-boot@lists.debian.org.&lt;/p&gt;
17462 </description>
17463 </item>
17464
17465 <item>
17466 <title>Pieces of the roaming laptop puzzle in Debian</title>
17467 <link>http://people.skolelinux.org/pere/blog/Pieces_of_the_roaming_laptop_puzzle_in_Debian.html</link>
17468 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Pieces_of_the_roaming_laptop_puzzle_in_Debian.html</guid>
17469 <pubDate>Wed, 19 May 2010 19:00:00 +0200</pubDate>
17470 <description>&lt;p&gt;Today, the last piece of the puzzle for roaming laptops in Debian
17471 Edu finally entered the Debian archive. Today, the new
17472 &lt;a href=&quot;http://packages.qa.debian.org/libp/libpam-mklocaluser.html&quot;&gt;libpam-mklocaluser&lt;/a&gt;
17473 package was accepted. Two days ago, two other pieces was accepted
17474 into unstable. The
17475 &lt;a href=&quot;http://packages.qa.debian.org/p/pam-python.html&quot;&gt;pam-python&lt;/a&gt;
17476 package needed by libpam-mklocaluser, and the
17477 &lt;a href=&quot;http://packages.qa.debian.org/s/sssd.html&quot;&gt;sssd&lt;/a&gt; package
17478 passed NEW on Monday. In addition, the
17479 &lt;a href=&quot;http://packages.qa.debian.org/libp/libpam-ccreds.html&quot;&gt;libpam-ccreds&lt;/a&gt;
17480 package we need is in experimental (version 10-4) since Saturday, and
17481 hopefully will be moved to unstable soon.&lt;/p&gt;
17482
17483 &lt;p&gt;This collection of packages allow for two different setups for
17484 roaming laptops. The traditional setup would be using libpam-ccreds,
17485 nscd and libpam-mklocaluser with LDAP or Kerberos authentication,
17486 which should work out of the box if the configuration changes proposed
17487 for nscd in &lt;a href=&quot;http://bugs.debian.org/485282&quot;&gt;BTS report
17488 #485282&lt;/a&gt; is implemented. The alternative setup is to use sssd with
17489 libpam-mklocaluser to connect to LDAP or Kerberos and let sssd take
17490 care of the caching of passwords and group information.&lt;/p&gt;
17491
17492 &lt;p&gt;I have so far been unable to get sssd to work with the LDAP server
17493 at the University, but suspect the issue is some SSL/GnuTLS related
17494 problem with the server certificate. I plan to update the Debian
17495 package to version 1.2, which is scheduled for next week, and hope to
17496 find time to make sure the next release will include both the
17497 Debian/Ubuntu specific patches. Upstream is friendly and responsive,
17498 and I am sure we will find a good solution.&lt;/p&gt;
17499
17500 &lt;p&gt;The idea is to set up the roaming laptops to authenticate using
17501 LDAP or Kerberos and create a local user with home directory in /home/
17502 when a usre in LDAP logs in via KDM or GDM for the first time, and
17503 cache the password for offline checking, as well as caching group
17504 memberhips and other relevant LDAP information. The
17505 libpam-mklocaluser package was created to make sure the local home
17506 directory is in /home/, instead of /site/server/directory/ which would
17507 be the home directory if pam_mkhomedir was used. To avoid confusion
17508 with support requests and configuration, we do not want local laptops
17509 to have users in a path that is used for the same users home directory
17510 on the home directory servers.&lt;/p&gt;
17511
17512 &lt;p&gt;One annoying problem with gdm is that it do not show the PAM
17513 message passed to the user from libpam-mklocaluser when the local user
17514 is created. Instead gdm simply reject the login with some generic
17515 message. The message is shown in kdm, ssh and login, so I guess it is
17516 a bug in gdm. Have not investigated if there is some other message
17517 type that can be used instead to get gdm to also show the message.&lt;/p&gt;
17518
17519 &lt;p&gt;If you want to help out with implementing this for Debian Edu,
17520 please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
17521 </description>
17522 </item>
17523
17524 <item>
17525 <title>Parallellized boot is now the default in Debian/unstable</title>
17526 <link>http://people.skolelinux.org/pere/blog/Parallellized_boot_is_now_the_default_in_Debian_unstable.html</link>
17527 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Parallellized_boot_is_now_the_default_in_Debian_unstable.html</guid>
17528 <pubDate>Fri, 14 May 2010 22:40:00 +0200</pubDate>
17529 <description>&lt;p&gt;Since this evening, parallel booting is the default in
17530 Debian/unstable for machines using dependency based boot sequencing.
17531 Apparently the testing of concurrent booting has been wider than
17532 expected, if I am to believe the
17533 &lt;a href=&quot;http://lists.debian.org/debian-devel/2010/05/msg00122.html&quot;&gt;input
17534 on debian-devel@&lt;/a&gt;, and I concluded a few days ago to move forward
17535 with the feature this weekend, to give us some time to detect any
17536 remaining problems before Squeeze is frozen. If serious problems are
17537 detected, it is simple to change the default back to sequential boot.
17538 The upload of the new sysvinit package also activate a new upstream
17539 version.&lt;/p&gt;
17540
17541 More information about
17542 &lt;a href=&quot;http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot&quot;&gt;dependency
17543 based boot sequencing&lt;/a&gt; is available from the Debian wiki. It is
17544 currently possible to disable parallel booting when one run into
17545 problems caused by it, by adding this line to /etc/default/rcS:&lt;/p&gt;
17546
17547 &lt;blockquote&gt;&lt;pre&gt;
17548 CONCURRENCY=none
17549 &lt;/pre&gt;&lt;/blockquote&gt;
17550
17551 &lt;p&gt;If you report any problems with dependencies in init.d scripts to
17552 the BTS, please usertag the report to get it to show up at
17553 &lt;a href=&quot;http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=initscripts-ng-devel@lists.alioth.debian.org&quot;&gt;the
17554 list of usertagged bugs related to this&lt;/a&gt;.&lt;/p&gt;
17555 </description>
17556 </item>
17557
17558 <item>
17559 <title>Sitesummary tip: Listing MAC address of all clients</title>
17560 <link>http://people.skolelinux.org/pere/blog/Sitesummary_tip__Listing_MAC_address_of_all_clients.html</link>
17561 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Sitesummary_tip__Listing_MAC_address_of_all_clients.html</guid>
17562 <pubDate>Fri, 14 May 2010 21:10:00 +0200</pubDate>
17563 <description>&lt;p&gt;In the recent Debian Edu versions, the
17564 &lt;a href=&quot;http://wiki.debian.org/DebianEdu/HowTo/SiteSummary&quot;&gt;sitesummary
17565 system&lt;/a&gt; is used to keep track of the machines in the school
17566 network. Each machine will automatically report its status to the
17567 central server after boot and once per night. The network setup is
17568 also reported, and using this information it is possible to get the
17569 MAC address of all network interfaces in the machines. This is useful
17570 to update the DHCP configuration.&lt;/p&gt;
17571
17572 &lt;p&gt;To give some idea how to use sitesummary, here is a one-liner to
17573 ist all MAC addresses of all machines reporting to sitesummary. Run
17574 this on the collector host:&lt;/p&gt;
17575
17576 &lt;blockquote&gt;&lt;pre&gt;
17577 perl -MSiteSummary -e &#39;for_all_hosts(sub { print join(&quot; &quot;, get_macaddresses(shift)), &quot;\n&quot;; });&#39;
17578 &lt;/pre&gt;&lt;/blockquote&gt;
17579
17580 &lt;p&gt;This will list all MAC addresses assosiated with all machine, one
17581 line per machine and with space between the MAC addresses.&lt;/p&gt;
17582
17583 &lt;p&gt;To allow system administrators easier job at adding static DHCP
17584 addresses for hosts, it would be possible to extend this to fetch
17585 machine information from sitesummary and update the DHCP and DNS
17586 tables in LDAP using this information. Such tool is unfortunately not
17587 written yet.&lt;/p&gt;
17588 </description>
17589 </item>
17590
17591 <item>
17592 <title>systemd, an interesting alternative to upstart</title>
17593 <link>http://people.skolelinux.org/pere/blog/systemd__an_interesting_alternative_to_upstart.html</link>
17594 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/systemd__an_interesting_alternative_to_upstart.html</guid>
17595 <pubDate>Thu, 13 May 2010 22:20:00 +0200</pubDate>
17596 <description>&lt;p&gt;The last few days a new boot system called
17597 &lt;a href=&quot;http://www.freedesktop.org/wiki/Software/systemd&quot;&gt;systemd&lt;/a&gt;
17598 has been
17599 &lt;a href=&quot;http://0pointer.de/blog/projects/systemd.html&quot;&gt;introduced&lt;/a&gt;
17600
17601 to the free software world. I have not yet had time to play around
17602 with it, but it seem to be a very interesting alternative to
17603 &lt;a href=&quot;http://upstart.ubuntu.com/&quot;&gt;upstart&lt;/a&gt;, and might prove to be
17604 a good alternative for Debian when we are able to switch to an event
17605 based boot system. Tollef is
17606 &lt;a href=&quot;http://bugs.debian.org/580814&quot;&gt;in the process&lt;/a&gt; of getting
17607 systemd into Debian, and I look forward to seeing how well it work. I
17608 like the fact that systemd handles init.d scripts with dependency
17609 information natively, allowing them to run in parallel where upstart
17610 at the moment do not.&lt;/p&gt;
17611
17612 &lt;p&gt;Unfortunately do systemd have the same problem as upstart regarding
17613 platform support. It only work on recent Linux kernels, and also need
17614 some new kernel features enabled to function properly. This means
17615 kFreeBSD and Hurd ports of Debian will need a port or a different boot
17616 system. Not sure how that will be handled if systemd proves to be the
17617 way forward.&lt;/p&gt;
17618
17619 &lt;p&gt;In the mean time, based on the
17620 &lt;a href=&quot;http://lists.debian.org/debian-devel/2010/05/msg00122.html&quot;&gt;input
17621 on debian-devel@&lt;/a&gt; regarding parallel booting in Debian, I have
17622 decided to enable full parallel booting as the default in Debian as
17623 soon as possible (probably this weekend or early next week), to see if
17624 there are any remaining serious bugs in the init.d dependencies. A
17625 new version of the sysvinit package implementing this change is
17626 already in experimental. If all go well, Squeeze will be released
17627 with parallel booting enabled by default.&lt;/p&gt;
17628 </description>
17629 </item>
17630
17631 <item>
17632 <title>Parallellizing the boot in Debian Squeeze - ready for wider testing</title>
17633 <link>http://people.skolelinux.org/pere/blog/Parallellizing_the_boot_in_Debian_Squeeze___ready_for_wider_testing.html</link>
17634 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Parallellizing_the_boot_in_Debian_Squeeze___ready_for_wider_testing.html</guid>
17635 <pubDate>Thu, 6 May 2010 23:25:00 +0200</pubDate>
17636 <description>&lt;p&gt;These days, the init.d script dependencies in Squeeze are quite
17637 complete, so complete that it is actually possible to run all the
17638 init.d scripts in parallell based on these dependencies. If you want
17639 to test your Squeeze system, make sure
17640 &lt;a href=&quot;http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot&quot;&gt;dependency
17641 based boot sequencing&lt;/a&gt; is enabled, and add this line to
17642 /etc/default/rcS:&lt;/p&gt;
17643
17644 &lt;blockquote&gt;&lt;pre&gt;
17645 CONCURRENCY=makefile
17646 &lt;/pre&gt;&lt;/blockquote&gt;
17647
17648 &lt;p&gt;That is it. It will cause sysv-rc to use the startpar tool to run
17649 scripts in parallel using the dependency information stored in
17650 /etc/init.d/.depend.boot, /etc/init.d/.depend.start and
17651 /etc/init.d/.depend.stop to order the scripts. Startpar is configured
17652 to try to start the kdm and gdm scripts as early as possible, and will
17653 start the facilities required by kdm or gdm as early as possible to
17654 make this happen.&lt;/p&gt;
17655
17656 &lt;p&gt;Give it a try, and see if you like the result. If some services
17657 fail to start properly, it is most likely because they have incomplete
17658 init.d script dependencies in their startup script (or some of their
17659 dependent scripts have incomplete dependencies). Report bugs and get
17660 the package maintainers to fix it. :)&lt;/p&gt;
17661
17662 &lt;p&gt;Running scripts in parallel could be the default in Debian when we
17663 manage to get the init.d script dependencies complete and correct. I
17664 expect we will get there in Squeeze+1, if we get manage to test and
17665 fix the remaining issues.&lt;/p&gt;
17666
17667 &lt;p&gt;If you report any problems with dependencies in init.d scripts to
17668 the BTS, please usertag the report to get it to show up at
17669 &lt;a href=&quot;http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=initscripts-ng-devel@lists.alioth.debian.org&quot;&gt;the
17670 list of usertagged bugs related to this&lt;/a&gt;.&lt;/p&gt;
17671 </description>
17672 </item>
17673
17674 <item>
17675 <title>Forcing new users to change their password on first login</title>
17676 <link>http://people.skolelinux.org/pere/blog/Forcing_new_users_to_change_their_password_on_first_login.html</link>
17677 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Forcing_new_users_to_change_their_password_on_first_login.html</guid>
17678 <pubDate>Sun, 2 May 2010 13:47:00 +0200</pubDate>
17679 <description>&lt;p&gt;One interesting feature in Active Directory, is the ability to
17680 create a new user with an expired password, and thus force the user to
17681 change the password on the first login attempt.&lt;/p&gt;
17682
17683 &lt;p&gt;I&#39;m not quite sure how to do that with the LDAP setup in Debian
17684 Edu, but did some initial testing with a local account. The account
17685 and password aging information is available in /etc/shadow, but
17686 unfortunately, it is not possible to specify an expiration time for
17687 passwords, only a maximum age for passwords.&lt;/p&gt;
17688
17689 &lt;p&gt;A freshly created account (using adduser test) will have these
17690 settings in /etc/shadow:&lt;/p&gt;
17691
17692 &lt;blockquote&gt;&lt;pre&gt;
17693 root@tjener:~# chage -l test
17694 Last password change : May 02, 2010
17695 Password expires : never
17696 Password inactive : never
17697 Account expires : never
17698 Minimum number of days between password change : 0
17699 Maximum number of days between password change : 99999
17700 Number of days of warning before password expires : 7
17701 root@tjener:~#
17702 &lt;/pre&gt;&lt;/blockquote&gt;
17703
17704 &lt;p&gt;The only way I could come up with to create a user with an expired
17705 account, is to change the date of the last password change to the
17706 lowest value possible (January 1th 1970), and the maximum password age
17707 to the difference in days between that date and today. To make it
17708 simple, I went for 30 years (30 * 365 = 10950) and January 2th (to
17709 avoid testing if 0 is a valid value).&lt;/p&gt;
17710
17711 &lt;p&gt;After using these commands to set it up, it seem to work as
17712 intended:&lt;/p&gt;
17713
17714 &lt;blockquote&gt;&lt;pre&gt;
17715 root@tjener:~# chage -d 1 test; chage -M 10950 test
17716 root@tjener:~# chage -l test
17717 Last password change : Jan 02, 1970
17718 Password expires : never
17719 Password inactive : never
17720 Account expires : never
17721 Minimum number of days between password change : 0
17722 Maximum number of days between password change : 10950
17723 Number of days of warning before password expires : 7
17724 root@tjener:~#
17725 &lt;/pre&gt;&lt;/blockquote&gt;
17726
17727 &lt;p&gt;So far I have tested this with ssh and console, and kdm (in
17728 Squeeze) login, and all ask for a new password before login in the
17729 user (with ssh, I was thrown out and had to log in again).&lt;/p&gt;
17730
17731 &lt;p&gt;Perhaps we should set up something similar for Debian Edu, to make
17732 sure only the user itself have the account password?&lt;/p&gt;
17733
17734 &lt;p&gt;If you want to comment on or help out with implementing this for
17735 Debian Edu, please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
17736
17737 &lt;p&gt;Update 2010-05-02 17:20: Paul Tötterman tells me on IRC that the
17738 shadow(8) page in Debian/testing now state that setting the date of
17739 last password change to zero (0) will force the password to be changed
17740 on the first login. This was not mentioned in the manual in Lenny, so
17741 I did not notice this in my initial testing. I have tested it on
17742 Squeeze, and &#39;&lt;tt&gt;chage -d 0 username&lt;/tt&gt;&#39; do work there. I have not
17743 tested it on Lenny yet.&lt;/p&gt;
17744
17745 &lt;p&gt;Update 2010-05-02-19:05: Jim Paris tells me via email that an
17746 equivalent command to expire a password is &#39;&lt;tt&gt;passwd -e
17747 username&lt;/tt&gt;&#39;, which insert zero into the date of the last password
17748 change.&lt;/p&gt;
17749 </description>
17750 </item>
17751
17752 <item>
17753 <title>Thoughts on roaming laptop setup for Debian Edu</title>
17754 <link>http://people.skolelinux.org/pere/blog/Thoughts_on_roaming_laptop_setup_for_Debian_Edu.html</link>
17755 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Thoughts_on_roaming_laptop_setup_for_Debian_Edu.html</guid>
17756 <pubDate>Wed, 28 Apr 2010 20:40:00 +0200</pubDate>
17757 <description>&lt;p&gt;For some years now, I have wondered how we should handle laptops in
17758 Debian Edu. The Debian Edu infrastructure is mostly designed to
17759 handle stationary computers, and less suited for computers that come
17760 and go.&lt;/p&gt;
17761
17762 &lt;p&gt;Now I finally believe I have an sensible idea on how to adjust
17763 Debian Edu for laptops, by introducing a new profile for them, for
17764 example called Roaming Workstations. Here are my thought on this.
17765 The setup would consist of the following:&lt;/p&gt;
17766
17767 &lt;ul&gt;
17768
17769 &lt;li&gt;During installation, the user name of the owner / primary user of
17770 the laptop is requested and a local home directory is set up for
17771 the user, with uid and gid information fetched from the LDAP
17772 server. This allow the user to work also when offline. The
17773 central home directory can be available in a subdirectory on
17774 request, for example mounted via CIFS. It could be mounted
17775 automatically when a user log in while on the Debian Edu network,
17776 and unmounted when the machine is taken away (network down,
17777 hibernate, etc), it can be set up to do automatic mounting on
17778 request (using autofs), or perhaps some GUI button on the desktop
17779 can be used to access it when needed. Perhaps it is enough to use
17780 the fish protocol in KDE?&lt;/li&gt;
17781
17782 &lt;li&gt;Password checking is set up to use LDAP or Kerberos
17783 authentication when the machine is on the Debian Edu network, and
17784 to cache the password for offline checking when the machine unable
17785 to reach the LDAP or Kerberos server. This can be done using
17786 &lt;a href=&quot;http://www.padl.com/OSS/pam_ccreds.html&quot;&gt;libpam-ccreds&lt;/a&gt;
17787 or the Fedora developed
17788 &lt;a href=&quot;https://fedoraproject.org/wiki/Features/SSSD&quot;&gt;System
17789 Security Services Daemon&lt;/a&gt; packages.&lt;/li&gt;
17790
17791 &lt;li&gt;File synchronisation with the central home directory is set up
17792 using a shared directory in both the local and the central home
17793 directory, using unison.&lt;/li&gt;
17794
17795 &lt;li&gt;Printing should be set up to print to all printers broadcasting
17796 their existence on the local network, and should then work out of
17797 the box with CUPS. For sites needing accurate printer quotas, some
17798 system with Kerberos authentication or printing via ssh could be
17799 implemented.&lt;/li&gt;
17800
17801 &lt;li&gt;For users that should have local root access to their laptop,
17802 sudo should be used to allow this to the local user.&lt;/li&gt;
17803
17804 &lt;li&gt;It would be nice if user and group information from LDAP is
17805 cached on the client, but given that there are entries for the
17806 local user and primary group in /etc/, it should not be needed.&lt;/li&gt;
17807
17808 &lt;/ul&gt;
17809
17810 &lt;p&gt;I believe all the pieces to implement this are in Debian/testing at
17811 the moment. If we work quickly, we should be able to get this ready
17812 in time for the Squeeze release to freeze. Some of the pieces need
17813 tweaking, like libpam-ccreds should get support for pam-auth-update
17814 (&lt;a href=&quot;http://bugs.debian.org/566718&quot;&gt;#566718&lt;/a&gt;) and nslcd (or
17815 perhaps debian-edu-config) should get some integration code to stop
17816 its daemon when the LDAP server is unavailable to avoid long timeouts
17817 when disconnected from the net. If we get Kerberos enabled, we need
17818 to make sure we avoid long timeouts there too.&lt;/p&gt;
17819
17820 &lt;p&gt;If you want to help out with implementing this for Debian Edu,
17821 please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
17822 </description>
17823 </item>
17824
17825 <item>
17826 <title>Great book: &quot;Content: Selected Essays on Technology, Creativity, Copyright, and the Future of the Future&quot;</title>
17827 <link>http://people.skolelinux.org/pere/blog/Great_book___Content__Selected_Essays_on_Technology__Creativity__Copyright__and_the_Future_of_the_Future_.html</link>
17828 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Great_book___Content__Selected_Essays_on_Technology__Creativity__Copyright__and_the_Future_of_the_Future_.html</guid>
17829 <pubDate>Mon, 19 Apr 2010 17:10:00 +0200</pubDate>
17830 <description>&lt;p&gt;The last few weeks i have had the pleasure of reading a
17831 thought-provoking collection of essays by Cory Doctorow, on topics
17832 touching copyright, virtual worlds, the future of man when the
17833 conscience mind can be duplicated into a computer and many more. The
17834 book titled &quot;Content: Selected Essays on Technology, Creativity,
17835 Copyright, and the Future of the Future&quot; is available with few
17836 restrictions on the web, for example from
17837 &lt;a href=&quot;http://craphound.com/content/&quot;&gt;his own site&lt;/a&gt;. I read the
17838 epub-version from
17839 &lt;a href=&quot;http://www.feedbooks.com/book/2883&quot;&gt;feedbooks&lt;/a&gt; using
17840 &lt;a href=&quot;http://www.fbreader.org/&quot;&gt;fbreader&lt;/a&gt; and my N810. I
17841 strongly recommend this book.&lt;/p&gt;
17842 </description>
17843 </item>
17844
17845 <item>
17846 <title>Kerberos for Debian Edu/Squeeze?</title>
17847 <link>http://people.skolelinux.org/pere/blog/Kerberos_for_Debian_Edu_Squeeze_.html</link>
17848 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Kerberos_for_Debian_Edu_Squeeze_.html</guid>
17849 <pubDate>Wed, 14 Apr 2010 17:20:00 +0200</pubDate>
17850 <description>&lt;p&gt;&lt;a href=&quot;http://www.nuug.no/aktiviteter/20100413-kerberos/&quot;&gt;Yesterdays
17851 NUUG presentation&lt;/a&gt; about Kerberos was inspiring, and reminded me
17852 about the need to start using Kerberos in Skolelinux. Setting up a
17853 Kerberos server seem to be straight forward, and if we get this in
17854 place a long time before the Squeeze version of Debian freezes, we
17855 have a chance to migrate Skolelinux away from NFSv3 for the home
17856 directories, and over to an architecture where the infrastructure do
17857 not have to trust IP addresses and machines, and instead can trust
17858 users and cryptographic keys instead.&lt;/p&gt;
17859
17860 &lt;p&gt;A challenge will be integration and administration. Is there a
17861 Kerberos implementation for Debian where one can control the
17862 administration access in Kerberos using LDAP groups? With it, the
17863 school administration will have to maintain access control using flat
17864 files on the main server, which give a huge potential for errors.&lt;/p&gt;
17865
17866 &lt;p&gt;A related question I would like to know is how well Kerberos and
17867 pam-ccreds (offline password check) work together. Anyone know?&lt;/p&gt;
17868
17869 &lt;p&gt;Next step will be to use Kerberos for access control in Lwat and
17870 Nagios. I have no idea how much work that will be to implement. We
17871 would also need to document how to integrate with Windows AD, as such
17872 shared network will require two Kerberos realms that need to cooperate
17873 to work properly.&lt;/p&gt;
17874
17875 &lt;p&gt;I believe a good start would be to start using Kerberos on the
17876 skolelinux.no machines, and this way get ourselves experience with
17877 configuration and integration. A natural starting point would be
17878 setting up ldap.skolelinux.no as the Kerberos server, and migrate the
17879 rest of the machines from PAM via LDAP to PAM via Kerberos one at the
17880 time.&lt;/p&gt;
17881
17882 &lt;p&gt;If you would like to contribute to get this working in Skolelinux,
17883 I recommend you to see the video recording from yesterdays NUUG
17884 presentation, and start using Kerberos at home. The video show show
17885 up in a few days.&lt;/p&gt;
17886 </description>
17887 </item>
17888
17889 <item>
17890 <title>After 6 years of waiting, the Xreset.d feature is implemented</title>
17891 <link>http://people.skolelinux.org/pere/blog/After_6_years_of_waiting__the_Xreset_d_feature_is_implemented.html</link>
17892 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/After_6_years_of_waiting__the_Xreset_d_feature_is_implemented.html</guid>
17893 <pubDate>Sat, 6 Mar 2010 18:15:00 +0100</pubDate>
17894 <description>&lt;p&gt;6 years ago, as part of the Debian Edu development I am involved
17895 in, I asked for a hook in the kdm and gdm setup to run scripts as root
17896 when the user log out. A bug was submitted against the xfree86-common
17897 package in 2004 (&lt;a href=&quot;http://bugs.debian.org/230422&quot;&gt;#230422&lt;/a&gt;),
17898 and revisited every time Debian Edu was working on a new release.
17899 Today, this finally paid off.&lt;/p&gt;
17900
17901 &lt;p&gt;The framework for this feature was today commited to the git
17902 repositry for the xorg package, and the git repository for xdm has
17903 been updated to use this framework. Next on my agenda is to make sure
17904 kdm and gdm also add code to use this framework.&lt;/p&gt;
17905
17906 &lt;p&gt;In Debian Edu, we want to ability to run commands as root when the
17907 user log out, to get rid of runaway processes and do general cleanup
17908 after a user. With this framework in place, we finally can do that in
17909 a generic way that work with all display managers using this
17910 framework. My goal is to get all display managers in Debian use it,
17911 similar to how they use the Xsession.d framework today.&lt;p&gt;
17912 </description>
17913 </item>
17914
17915 <item>
17916 <title>Debian Edu / Skolelinux based on Lenny released, work continues</title>
17917 <link>http://people.skolelinux.org/pere/blog/Debian_Edu___Skolelinux_based_on_Lenny_released__work_continues.html</link>
17918 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Edu___Skolelinux_based_on_Lenny_released__work_continues.html</guid>
17919 <pubDate>Thu, 11 Feb 2010 17:15:00 +0100</pubDate>
17920 <description>&lt;p&gt;On Tuesday, the Debian/Lenny based version of
17921 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Skolelinux&lt;/a&gt; was finally
17922 shipped. This was a major leap forward for the project, and I am very
17923 pleased that we finally got the release wrapped up. Work on the first
17924 point release starts imediately, as we plan to get that one out a
17925 month after the major release, to include all fixes for bugs we found
17926 and fixed too late in the release process to include last Tuesday.&lt;/p&gt;
17927
17928 &lt;p&gt;Perhaps it even is time for some partying?&lt;/p&gt;
17929
17930 &lt;p&gt;After this first point release, my plan is to focus again on the
17931 next major release, based on Squeeze. We will try to get as many of
17932 the fixes we need into the official Debian packages before the freeze,
17933 and have just a few weeks or months to make it happen.&lt;/p&gt;
17934 </description>
17935 </item>
17936
17937 <item>
17938 <title>Automatic Munin and Nagios configuration</title>
17939 <link>http://people.skolelinux.org/pere/blog/Automatic_Munin_and_Nagios_configuration.html</link>
17940 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Automatic_Munin_and_Nagios_configuration.html</guid>
17941 <pubDate>Wed, 27 Jan 2010 15:15:00 +0100</pubDate>
17942 <description>&lt;p&gt;One of the new features in the next Debian/Lenny based release of
17943 Debian Edu/Skolelinux, which is scheduled for release in the next few
17944 days, is automatic configuration of the service monitoring system
17945 Nagios. The previous release had automatic configuration of trend
17946 analysis using Munin, and this Lenny based release take that a step
17947 further.&lt;/p&gt;
17948
17949 &lt;p&gt;When installing a Debian Edu Main-server, it is automatically
17950 configured as a Munin and Nagios server. In addition, it is
17951 configured to be a server for the
17952 &lt;a href=&quot;http://wiki.debian.org/DebianEdu/HowTo/SiteSummary&quot;&gt;SiteSummary
17953 system&lt;/a&gt; I have written for use in Debian Edu. The SiteSummary
17954 system is inspired by a system used by the University of Oslo where I
17955 work. In short, the system provide a centralised collector of
17956 information about the computers on the network, and a client on each
17957 computer submitting information to this collector. This allow for
17958 automatic information on which packages are installed on each machine,
17959 which kernel the machines are using, what kind of configuration the
17960 packages got etc. This also allow us to automatically generate Munin
17961 and Nagios configuration.&lt;/p&gt;
17962
17963 &lt;p&gt;All computers reporting to the sitesummary collector with the
17964 munin-node package installed is automatically enabled as a Munin
17965 client and graphs from the statistics collected from that machine show
17966 up automatically on http://www/munin/ on the Main-server.&lt;/p&gt;
17967
17968 &lt;p&gt;All non-laptop computers reporting to the sitesummary collector are
17969 automatically monitored for network presence (ping and any network
17970 services detected). In addition, all computers (also laptops) with
17971 the nagios-nrpe-server package installed and configured the way
17972 sitesummary would configure it, are monitored for full disks, software
17973 raid status, swap free and other checks that need to run locally on
17974 the machine.&lt;/p&gt;
17975
17976 &lt;p&gt;The result is that the administrator on a school using Debian Edu
17977 based on Lenny will be able to check the health of his installation
17978 with one look at the Nagios settings, without having to spend any time
17979 keeping the Nagios configuration up-to-date.&lt;/p&gt;
17980
17981 &lt;p&gt;The only configuration one need to do to get Nagios up and running
17982 is to set the password used to get access via HTTP. The system
17983 administrator need to run &quot;&lt;tt&gt;htpasswd /etc/nagios3/htpasswd.users
17984 nagiosadmin&lt;/tt&gt;&quot; to create a nagiosadmin user and set a password for
17985 it to be able to log into the Nagios web pages. After that,
17986 everything is taken care of.&lt;/p&gt;
17987 </description>
17988 </item>
17989
17990 <item>
17991 <title>Relative popularity of document formats (MS Office vs. ODF)</title>
17992 <link>http://people.skolelinux.org/pere/blog/Relative_popularity_of_document_formats__MS_Office_vs__ODF_.html</link>
17993 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Relative_popularity_of_document_formats__MS_Office_vs__ODF_.html</guid>
17994 <pubDate>Wed, 12 Aug 2009 15:50:00 +0200</pubDate>
17995 <description>&lt;p&gt;Just for fun, I did a search right now on Google for a few file ODF
17996 and MS Office based formats (not to be mistaken for ISO or ECMA
17997 OOXML), to get an idea of their relative usage. I searched using
17998 &#39;filetype:odt&#39; and equvalent terms, and got these results:&lt;/P&gt;
17999
18000 &lt;table&gt;
18001 &lt;tr&gt;&lt;th&gt;Type&lt;/th&gt;&lt;th&gt;ODF&lt;/th&gt;&lt;th&gt;MS Office&lt;/th&gt;&lt;/tr&gt;
18002 &lt;tr&gt;&lt;td&gt;Tekst&lt;/td&gt; &lt;td&gt;odt:282000&lt;/td&gt; &lt;td&gt;docx:308000&lt;/td&gt;&lt;/tr&gt;
18003 &lt;tr&gt;&lt;td&gt;Presentasjon&lt;/td&gt; &lt;td&gt;odp:75600&lt;/td&gt; &lt;td&gt;pptx:183000&lt;/td&gt;&lt;/tr&gt;
18004 &lt;tr&gt;&lt;td&gt;Regneark&lt;/td&gt; &lt;td&gt;ods:26500 &lt;/td&gt; &lt;td&gt;xlsx:145000&lt;/td&gt;&lt;/tr&gt;
18005 &lt;/table&gt;
18006
18007 &lt;p&gt;Next, I added a &#39;site:no&#39; limit to get the numbers for Norway, and
18008 got these numbers:&lt;/p&gt;
18009
18010 &lt;table&gt;
18011 &lt;tr&gt;&lt;th&gt;Type&lt;/th&gt;&lt;th&gt;ODF&lt;/th&gt;&lt;th&gt;MS Office&lt;/th&gt;&lt;/tr&gt;
18012 &lt;tr&gt;&lt;td&gt;Tekst&lt;/td&gt; &lt;td&gt;odt:2480 &lt;/td&gt; &lt;td&gt;docx:4460&lt;/td&gt;&lt;/tr&gt;
18013 &lt;tr&gt;&lt;td&gt;Presentasjon&lt;/td&gt; &lt;td&gt;odp:299 &lt;/td&gt; &lt;td&gt;pptx:741&lt;/td&gt;&lt;/tr&gt;
18014 &lt;tr&gt;&lt;td&gt;Regneark&lt;/td&gt; &lt;td&gt;ods:187 &lt;/td&gt; &lt;td&gt;xlsx:372&lt;/td&gt;&lt;/tr&gt;
18015 &lt;/table&gt;
18016
18017 &lt;p&gt;I wonder how these numbers change over time.&lt;/p&gt;
18018
18019 &lt;p&gt;I am aware of Google returning different results and numbers based
18020 on where the search is done, so I guess these numbers will differ if
18021 they are conduced in another country. Because of this, I did the same
18022 search from a machine in California, USA, a few minutes after the
18023 search done from a machine here in Norway.&lt;/p&gt;
18024
18025
18026 &lt;table&gt;
18027 &lt;tr&gt;&lt;th&gt;Type&lt;/th&gt;&lt;th&gt;ODF&lt;/th&gt;&lt;th&gt;MS Office&lt;/th&gt;&lt;/tr&gt;
18028 &lt;tr&gt;&lt;td&gt;Tekst&lt;/td&gt; &lt;td&gt;odt:129000&lt;/td&gt; &lt;td&gt;docx:308000&lt;/td&gt;&lt;/tr&gt;
18029 &lt;tr&gt;&lt;td&gt;Presentasjon&lt;/td&gt; &lt;td&gt;odp:44200&lt;/td&gt; &lt;td&gt;pptx:93900&lt;/td&gt;&lt;/tr&gt;
18030 &lt;tr&gt;&lt;td&gt;Regneark&lt;/td&gt; &lt;td&gt;ods:26500 &lt;/td&gt; &lt;td&gt;xlsx:82400&lt;/td&gt;&lt;/tr&gt;
18031 &lt;/table&gt;
18032
18033 &lt;p&gt;And with &#39;site:no&#39;:
18034
18035 &lt;table&gt;
18036 &lt;tr&gt;&lt;th&gt;Type&lt;/th&gt;&lt;th&gt;ODF&lt;/th&gt;&lt;th&gt;MS Office&lt;/th&gt;&lt;/tr&gt;
18037 &lt;tr&gt;&lt;td&gt;Tekst&lt;/td&gt; &lt;td&gt;odt:2480&lt;/td&gt; &lt;td&gt;docx:3410&lt;/td&gt;&lt;/tr&gt;
18038 &lt;tr&gt;&lt;td&gt;Presentasjon&lt;/td&gt; &lt;td&gt;odp:175&lt;/td&gt; &lt;td&gt;pptx:604&lt;/td&gt;&lt;/tr&gt;
18039 &lt;tr&gt;&lt;td&gt;Regneark&lt;/td&gt; &lt;td&gt;ods:186 &lt;/td&gt; &lt;td&gt;xlsx:296&lt;/td&gt;&lt;/tr&gt;
18040 &lt;/table&gt;
18041
18042 &lt;p&gt;Interesting difference, not sure what to conclude from these
18043 numbers.&lt;/p&gt;
18044 </description>
18045 </item>
18046
18047 <item>
18048 <title>ISO still hope to fix OOXML</title>
18049 <link>http://people.skolelinux.org/pere/blog/ISO_still_hope_to_fix_OOXML.html</link>
18050 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/ISO_still_hope_to_fix_OOXML.html</guid>
18051 <pubDate>Sat, 8 Aug 2009 14:00:00 +0200</pubDate>
18052 <description>&lt;p&gt;According to &lt;a
18053 href=&quot;http://twerner.blogspot.com/2009/08/defects-of-office-open-xml.html&quot;&gt;a
18054 blog post from Torsten Werner&lt;/a&gt;, the current defect report for ISO
18055 29500 (ISO OOXML) is 809 pages. His interesting point is that the
18056 defect report is 71 pages more than the full ODF 1.1 specification.
18057 Personally I find it more interesting that ISO still believe ISO OOXML
18058 can be fixed in ISO. Personally, I believe it is broken beyon repair,
18059 and I completely lack any trust in ISO for being able to get anywhere
18060 close to solving the problems. I was part of the Norwegian committee
18061 involved in the OOXML fast track process, and was not impressed with
18062 Standard Norway and ISO in how they handled it.&lt;/p&gt;
18063
18064 &lt;p&gt;These days I focus on ODF instead, which seem like a specification
18065 with the future ahead of it. We are working in NUUG to organise a ODF
18066 seminar this autumn.&lt;/p&gt;
18067 </description>
18068 </item>
18069
18070 <item>
18071 <title>Debian has switched to dependency based boot sequencing</title>
18072 <link>http://people.skolelinux.org/pere/blog/Debian_has_switched_to_dependency_based_boot_sequencing.html</link>
18073 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_has_switched_to_dependency_based_boot_sequencing.html</guid>
18074 <pubDate>Mon, 27 Jul 2009 23:50:00 +0200</pubDate>
18075 <description>&lt;p&gt;Since this evening, with the upload of sysvinit version 2.87dsf-2,
18076 and the upload of insserv version 1.12.0-10 yesterday, Debian unstable
18077 have been migrated to using dependency based boot sequencing. This
18078 conclude work me and others have been doing for the last three days.
18079 It feels great to see this finally part of the default Debian
18080 installation. Now we just need to weed out the last few problems that
18081 are bound to show up, to get everything ready for Squeeze.&lt;/p&gt;
18082
18083 &lt;p&gt;The next step is migrating /sbin/init from sysvinit to upstart, and
18084 fixing the more fundamental problem of handing the event based
18085 non-predictable kernel in the early boot.&lt;/p&gt;
18086 </description>
18087 </item>
18088
18089 <item>
18090 <title>Taking over sysvinit development</title>
18091 <link>http://people.skolelinux.org/pere/blog/Taking_over_sysvinit_development.html</link>
18092 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Taking_over_sysvinit_development.html</guid>
18093 <pubDate>Wed, 22 Jul 2009 23:00:00 +0200</pubDate>
18094 <description>&lt;p&gt;After several years of frustration with the lack of activity from
18095 the existing sysvinit upstream developer, I decided a few weeks ago to
18096 take over the package and become the new upstream. The number of
18097 patches to track for the Debian package was becoming a burden, and the
18098 lack of synchronization between the distribution made it hard to keep
18099 the package up to date.&lt;/p&gt;
18100
18101 &lt;p&gt;On the new sysvinit team is the SuSe maintainer Dr. Werner Fink,
18102 and my Debian co-maintainer Kel Modderman. About 10 days ago, I made
18103 a new upstream tarball with version number 2.87dsf (for Debian, SuSe
18104 and Fedora), based on the patches currently in use in these
18105 distributions. We Debian maintainers plan to move to this tarball as
18106 the new upstream as soon as we find time to do the merge. Since the
18107 new tarball was created, we agreed with Werner at SuSe to make a new
18108 upstream project at &lt;a href=&quot;http://savannah.nongnu.org/&quot;&gt;Savannah&lt;/a&gt;, and continue
18109 development there. The project is registered and currently waiting
18110 for approval by the Savannah administrators, and as soon as it is
18111 approved, we will import the old versions from svn and continue
18112 working on the future release.&lt;/p&gt;
18113
18114 &lt;p&gt;It is a bit ironic that this is done now, when some of the involved
18115 distributions are moving to upstart as a syvinit replacement.&lt;/p&gt;
18116 </description>
18117 </item>
18118
18119 <item>
18120 <title>Debian boots quicker and quicker</title>
18121 <link>http://people.skolelinux.org/pere/blog/Debian_boots_quicker_and_quicker.html</link>
18122 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_boots_quicker_and_quicker.html</guid>
18123 <pubDate>Wed, 24 Jun 2009 21:40:00 +0200</pubDate>
18124 <description>&lt;p&gt;I spent Monday and tuesday this week in London with a lot of the
18125 people involved in the boot system on Debian and Ubuntu, to see if we
18126 could find more ways to speed up the boot system. This was an Ubuntu
18127 funded
18128 &lt;a href=&quot;https://wiki.ubuntu.com/FoundationsTeam/BootPerformance/DebianUbuntuSprint&quot;&gt;developer
18129 gathering&lt;/a&gt;. It was quite productive. We also discussed the future
18130 of boot systems, and ways to handle the increasing number of boot
18131 issues introduced by the Linux kernel becoming more and more
18132 asynchronous and event base. The Ubuntu approach using udev and
18133 upstart might be a good way forward. Time will show.&lt;/p&gt;
18134
18135 &lt;p&gt;Anyway, there are a few ways at the moment to speed up the boot
18136 process in Debian. All of these should be applied to get a quick
18137 boot:&lt;/p&gt;
18138
18139 &lt;ul&gt;
18140
18141 &lt;li&gt;Use dash as /bin/sh.&lt;/li&gt;
18142
18143 &lt;li&gt;Disable the init.d/hwclock*.sh scripts and make sure the hardware
18144 clock is in UTC.&lt;/li&gt;
18145
18146 &lt;li&gt;Install and activate the insserv package to enable
18147 &lt;a href=&quot;http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot&quot;&gt;dependency
18148 based boot sequencing&lt;/a&gt;, and enable concurrent booting.&lt;/li&gt;
18149
18150 &lt;/ul&gt;
18151
18152 These points are based on the Google summer of code work done by
18153 &lt;a href=&quot;http://initscripts-ng.alioth.debian.org/soc2006-bootsystem/&quot;&gt;Carlos
18154 Villegas&lt;/a&gt;.
18155
18156 &lt;p&gt;Support for makefile-style concurrency during boot was uploaded to
18157 unstable yesterday. When we tested it, we were able to cut 6 seconds
18158 from the boot sequence. It depend on very correct dependency
18159 declaration in all init.d scripts, so I expect us to find edge cases
18160 where the dependences in some scripts are slightly wrong when we start
18161 using this.&lt;/p&gt;
18162
18163 &lt;p&gt;On our IRC channel for this effort, #pkg-sysvinit, a new idea was
18164 introduced by Raphael Geissert today, one that could affect the
18165 startup speed as well. Instead of starting some scripts concurrently
18166 from rcS.d/ and another set of scripts from rc2.d/, it would be
18167 possible to run a of them in the same process. A quick way to test
18168 this would be to enable insserv and run &#39;mv /etc/rc2.d/S* /etc/rcS.d/;
18169 insserv&#39;. Will need to test if that work. :)&lt;/p&gt;
18170 </description>
18171 </item>
18172
18173 <item>
18174 <title>Two projects that have improved the quality of free software a lot</title>
18175 <link>http://people.skolelinux.org/pere/blog/Two_projects_that_have_improved_the_quality_of_free_software_a_lot.html</link>
18176 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Two_projects_that_have_improved_the_quality_of_free_software_a_lot.html</guid>
18177 <pubDate>Sat, 2 May 2009 15:00:00 +0200</pubDate>
18178 <description>&lt;p&gt;There are two software projects that have had huge influence on the
18179 quality of free software, and I wanted to mention both in case someone
18180 do not yet know them.&lt;/p&gt;
18181
18182 &lt;p&gt;The first one is &lt;a href=&quot;http://valgrind.org/&quot;&gt;valgrind&lt;/a&gt;, a
18183 tool to detect and expose errors in the memory handling of programs.
18184 It is easy to use, all one need to do is to run &#39;valgrind program&#39;,
18185 and it will report any problems on stdout. It is even better if the
18186 program include debug information. With debug information, it is able
18187 to report the source file name and line number where the problem
18188 occurs. It can report things like &#39;reading past memory block in file
18189 X line N, the memory block was allocated in file Y, line M&#39;, and
18190 &#39;using uninitialised value in control logic&#39;. This tool has made it
18191 trivial to investigate reproducible crash bugs in programs, and have
18192 reduced the number of this kind of bugs in free software a lot.
18193
18194 &lt;p&gt;The second one is
18195 &lt;a href=&quot;http://en.wikipedia.org/wiki/Coverity&quot;&gt;Coverity&lt;/a&gt; which is
18196 a source code checker. It is able to process the source of a program
18197 and find problems in the logic without running the program. It
18198 started out as the Stanford Checker and became well known when it was
18199 used to find bugs in the Linux kernel. It is now a commercial tool
18200 and the company behind it is running
18201 &lt;a href=&quot;http://www.scan.coverity.com/&quot;&gt;a community service&lt;/a&gt; for the
18202 free software community, where a lot of free software projects get
18203 their source checked for free. Several thousand defects have been
18204 found and fixed so far. It can find errors like &#39;lock L taken in file
18205 X line N is never released if exiting in line M&#39;, or &#39;the code in file
18206 Y lines O to P can never be executed&#39;. The projects included in the
18207 community service project have managed to get rid of a lot of
18208 reliability problems thanks to Coverity.&lt;/p&gt;
18209
18210 &lt;p&gt;I believe tools like this, that are able to automatically find
18211 errors in the source, are vital to improve the quality of software and
18212 make sure we can get rid of the crashing and failing software we are
18213 surrounded by today.&lt;/p&gt;
18214 </description>
18215 </item>
18216
18217 <item>
18218 <title>No patch is not better than a useless patch</title>
18219 <link>http://people.skolelinux.org/pere/blog/No_patch_is_not_better_than_a_useless_patch.html</link>
18220 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/No_patch_is_not_better_than_a_useless_patch.html</guid>
18221 <pubDate>Tue, 28 Apr 2009 09:30:00 +0200</pubDate>
18222 <description>&lt;p&gt;Julien Blache
18223 &lt;a href=&quot;http://blog.technologeek.org/2009/04/12/214&quot;&gt;claim that no
18224 patch is better than a useless patch&lt;/a&gt;. I completely disagree, as a
18225 patch allow one to discuss a concrete and proposed solution, and also
18226 prove that the issue at hand is important enough for someone to spent
18227 time on fixing it. No patch do not provide any of these positive
18228 properties.&lt;/p&gt;
18229 </description>
18230 </item>
18231
18232 <item>
18233 <title>Recording video from cron using VLC</title>
18234 <link>http://people.skolelinux.org/pere/blog/Recording_video_from_cron_using_VLC.html</link>
18235 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Recording_video_from_cron_using_VLC.html</guid>
18236 <pubDate>Sun, 5 Apr 2009 10:00:00 +0200</pubDate>
18237 <description>&lt;p&gt;One think I have wanted to figure out for a along time is how to
18238 run vlc from cron to do recording of video streams on the net. The
18239 task is trivial with mplayer, but I do not really trust the security
18240 of mplayer (it crashes too often on strange input), and thus prefer
18241 vlc. I finally found a way to do it today. I spent an hour or so
18242 searching the web for recipes and reading the documentation. The
18243 hardest part was to get rid of the GUI window, but after finding the
18244 dummy interface, the command line finally presented itself:&lt;/p&gt;
18245
18246 &lt;blockquote&gt;&lt;pre&gt;URL=http://www.ping.uio.no/video/rms-oslo_2009.ogg
18247 SAVEFILE=rms.ogg
18248 DISPLAY= vlc -q $URL \
18249 --sout=&quot;#duplicate{dst=std{access=file,url=&#39;$SAVEFILE&#39;},dst=nodisplay}&quot; \
18250 --intf=dummy&lt;/pre&gt;&lt;/blockquote&gt;
18251
18252 &lt;p&gt;The command stream the URL and store it in the SAVEFILE by
18253 duplicating the output stream to &quot;nodisplay&quot; and the file, using the
18254 dummy interface. The dummy interface and the nodisplay output make
18255 sure no X interface is needed.&lt;/p&gt;
18256
18257 &lt;p&gt;The cron job then need to start this job with the appropriate URL
18258 and file name to save, sleep for the duration wanted, and then kill
18259 the vlc process with SIGTERM. Here is a complete script
18260 &lt;tt&gt;vlc-record&lt;/tt&gt; to use from &lt;tt&gt;at&lt;/tt&gt; or &lt;tt&gt;cron&lt;/tt&gt;:&lt;/p&gt;
18261
18262 &lt;blockquote&gt;&lt;pre&gt;#!/bin/sh
18263 set -e
18264 URL=&quot;$1&quot;
18265 SAVEFILE=&quot;$2&quot;
18266 DURATION=&quot;$3&quot;
18267 DISPLAY= vlc -q &quot;$URL&quot; \
18268 --sout=&quot;#duplicate{dst=std{access=file,url=&#39;$SAVEFILE&#39;},dst=nodisplay}&quot; \
18269 --intf=dummy &lt; /dev/null &gt; /dev/null 2&gt;&amp;1 &amp;
18270 pid=$!
18271 sleep $DURATION
18272 kill $pid
18273 wait $pid&lt;/pre&gt;&lt;/blockquote&gt;
18274 </description>
18275 </item>
18276
18277 <item>
18278 <title>Standardize on protocols and formats, not vendors and applications</title>
18279 <link>http://people.skolelinux.org/pere/blog/Standardize_on_protocols_and_formats__not_vendors_and_applications.html</link>
18280 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Standardize_on_protocols_and_formats__not_vendors_and_applications.html</guid>
18281 <pubDate>Mon, 30 Mar 2009 11:50:00 +0200</pubDate>
18282 <description>&lt;p&gt;Where I work at the University of Oslo, one decision stand out as a
18283 very good one to form a long lived computer infrastructure. It is the
18284 simple one, lost by many in todays computer industry: Standardize on
18285 open network protocols and open exchange/storage formats, not applications.
18286 Applications come and go, while protocols and files tend to stay, and
18287 thus one want to make it easy to change application and vendor, while
18288 avoiding conversion costs and locking users to a specific platform or
18289 application.&lt;/p&gt;
18290
18291 &lt;p&gt;This approach make it possible to replace the client applications
18292 independently of the server applications. One can even allow users to
18293 use several different applications as long as they handle the selected
18294 protocol and format. In the normal case, only one client application
18295 is recommended and users only get help if they choose to use this
18296 application, but those that want to deviate from the easy path are not
18297 blocked from doing so.&lt;/p&gt;
18298
18299 &lt;p&gt;It also allow us to replace the server side without forcing the
18300 users to replace their applications, and thus allow us to select the
18301 best server implementation at any moment, when scale and resouce
18302 requirements change.&lt;/p&gt;
18303
18304 &lt;p&gt;I strongly recommend standardizing - on open network protocols and
18305 open formats, but I would never recommend standardizing on a single
18306 application that do not use open network protocol or open formats.&lt;/p&gt;
18307 </description>
18308 </item>
18309
18310 <item>
18311 <title>Returning from Skolelinux developer gathering</title>
18312 <link>http://people.skolelinux.org/pere/blog/Returning_from_Skolelinux_developer_gathering.html</link>
18313 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Returning_from_Skolelinux_developer_gathering.html</guid>
18314 <pubDate>Sun, 29 Mar 2009 21:00:00 +0200</pubDate>
18315 <description>&lt;p&gt;I&#39;m sitting on the train going home from this weekends Debian
18316 Edu/Skolelinux development gathering. I got a bit done tuning the
18317 desktop, and looked into the dynamic service location protocol
18318 implementation avahi. It look like it could be useful for us. Almost
18319 30 people participated, and I believe it was a great environment to
18320 get to know the Skolelinux system. Walter Bender, involved in the
18321 development of the Sugar educational platform, presented his stuff and
18322 also helped me improve my OLPC installation. He also showed me that
18323 his Turtle Art application can be used in standalone mode, and we
18324 agreed that I would help getting it packaged for Debian. As a
18325 standalone application it would be great for Debian Edu. We also
18326 tried to get the video conferencing working with two OLPCs, but that
18327 proved to be too hard for us. The application seem to need more work
18328 before it is ready for me. I look forward to getting home and relax
18329 now. :)&lt;/p&gt;
18330 </description>
18331 </item>
18332
18333 <item>
18334 <title>Time for new LDAP schemas replacing RFC 2307?</title>
18335 <link>http://people.skolelinux.org/pere/blog/Time_for_new__LDAP_schemas_replacing_RFC_2307_.html</link>
18336 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Time_for_new__LDAP_schemas_replacing_RFC_2307_.html</guid>
18337 <pubDate>Sun, 29 Mar 2009 20:30:00 +0200</pubDate>
18338 <description>&lt;p&gt;The state of standardized LDAP schemas on Linux is far from
18339 optimal. There is RFC 2307 documenting one way to store NIS maps in
18340 LDAP, and a modified version of this normally called RFC 2307bis, with
18341 some modifications to be compatible with Active Directory. The RFC
18342 specification handle the content of a lot of system databases, but do
18343 not handle DNS zones and DHCP configuration.&lt;/p&gt;
18344
18345 &lt;p&gt;In &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu/Skolelinux&lt;/a&gt;,
18346 we would like to store information about users, SMB clients/hosts,
18347 filegroups, netgroups (users and hosts), DHCP and DNS configuration,
18348 and LTSP configuration in LDAP. These objects have a lot in common,
18349 but with the current LDAP schemas it is not possible to have one
18350 object per entity. For example, one need to have at least three LDAP
18351 objects for a given computer, one with the SMB related stuff, one with
18352 DNS information and another with DHCP information. The schemas
18353 provided for DNS and DHCP are impossible to combine into one LDAP
18354 object. In addition, it is impossible to implement quick queries for
18355 netgroup membership, because of the way NIS triples are implemented.
18356 It just do not scale. I believe it is time for a few RFC
18357 specifications to cleam up this mess.&lt;/p&gt;
18358
18359 &lt;p&gt;I would like to have one LDAP object representing each computer in
18360 the network, and this object can then keep the SMB (ie host key), DHCP
18361 (mac address/name) and DNS (name/IP address) settings in one place.
18362 It need to be efficently stored to make sure it scale well.&lt;/p&gt;
18363
18364 &lt;p&gt;I would also like to have a quick way to map from a user or
18365 computer and to the net group this user or computer is a member.&lt;/p&gt;
18366
18367 &lt;p&gt;Active Directory have done a better job than unix heads like myself
18368 in this regard, and the unix side need to catch up. Time to start a
18369 new IETF work group?&lt;/p&gt;
18370 </description>
18371 </item>
18372
18373 <item>
18374 <title>Checking server hardware support status for Dell, HP and IBM servers</title>
18375 <link>http://people.skolelinux.org/pere/blog/Checking_server_hardware_support_status_for_Dell__HP_and_IBM_servers.html</link>
18376 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Checking_server_hardware_support_status_for_Dell__HP_and_IBM_servers.html</guid>
18377 <pubDate>Sat, 28 Feb 2009 23:50:00 +0100</pubDate>
18378 <description>&lt;p&gt;At work, we have a few hundred Linux servers, and with that amount
18379 of hardware it is important to keep track of when the hardware support
18380 contract expire for each server. We have a machine (and service)
18381 register, which until recently did not contain much useful besides the
18382 machine room location and contact information for the system owner for
18383 each machine. To make it easier for us to track support contract
18384 status, I&#39;ve recently spent time on extending the machine register to
18385 include information about when the support contract expire, and to tag
18386 machines with expired contracts to make it easy to get a list of such
18387 machines. I extended a perl script already being used to import
18388 information about machines into the register, to also do some screen
18389 scraping off the sites of Dell, HP and IBM (our majority of machines
18390 are from these vendors), and automatically check the support status
18391 for the relevant machines. This make the support status information
18392 easily available and I hope it will make it easier for the computer
18393 owner to know when to get new hardware or renew the support contract.
18394 The result of this work documented that 27% of the machines in the
18395 registry is without a support contract, and made it very easy to find
18396 them. 27% might seem like a lot, but I see it more as the case of us
18397 using machines a bit longer than the 3 years a normal support contract
18398 last, to have test machines and a platform for less important
18399 services. After all, the machines without a contract are working fine
18400 at the moment and the lack of contract is only a problem if any of
18401 them break down. When that happen, we can either fix it using spare
18402 parts from other machines or move the service to another old
18403 machine.&lt;/p&gt;
18404
18405 &lt;p&gt;I believe the code for screen scraping the Dell site was originally
18406 written by Trond Hasle Amundsen, and later adjusted by me and Morten
18407 Werner Forsbring. The HP scraping was written by me after reading a
18408 nice article in ;login: about how to use WWW::Mechanize, and the IBM
18409 scraping was written by me based on the Dell code. I know the HTML
18410 parsing could be done using nice libraries, but did not want to
18411 introduce more dependencies. This is the current incarnation:&lt;/p&gt;
18412
18413 &lt;pre&gt;
18414 use LWP::Simple;
18415 use POSIX;
18416 use WWW::Mechanize;
18417 use Date::Parse;
18418 [...]
18419 sub get_support_info {
18420 my ($machine, $model, $serial, $productnumber) = @_;
18421 my $str;
18422
18423 if ( $model =~ m/^Dell / ) {
18424 # fetch website from Dell support
18425 my $url = &quot;http://support.euro.dell.com/support/topics/topic.aspx/emea/shared/support/my_systems_info/no/details?c=no&amp;amp;cs=nodhs1&amp;amp;l=no&amp;amp;s=dhs&amp;amp;ServiceTag=$serial&quot;;
18426 my $webpage = get($url);
18427 return undef unless ($webpage);
18428
18429 my $daysleft = -1;
18430 my @lines = split(/\n/, $webpage);
18431 foreach my $line (@lines) {
18432 next unless ($line =~ m/Beskrivelse/);
18433 $line =~ s/&amp;lt;[^&gt;]+?&gt;/;/gm;
18434 $line =~ s/^.+?;(Beskrivelse;)/$1/;
18435
18436 my @f = split(/\;/, $line);
18437 @f = @f[13 .. $#f];
18438 my $lastend = &quot;&quot;;
18439 while ($f[3] eq &quot;DELL&quot;) {
18440 my ($type, $startstr, $endstr, $days) = @f[0, 5, 7, 10];
18441
18442 my $start = POSIX::strftime(&quot;%Y-%m-%d&quot;,
18443 localtime(str2time($startstr)));
18444 my $end = POSIX::strftime(&quot;%Y-%m-%d&quot;,
18445 localtime(str2time($endstr)));
18446 $str .= &quot;$type $start -&gt; $end &quot;;
18447 @f = @f[14 .. $#f];
18448 $lastend = $end if ($end gt $lastend);
18449 }
18450 my $today = POSIX::strftime(&quot;%Y-%m-%d&quot;, localtime(time));
18451 tag_machine_unsupported($machine)
18452 if ($lastend lt $today);
18453 }
18454 } elsif ( $model =~ m/^HP / ) {
18455 my $mech = WWW::Mechanize-&gt;new();
18456 my $url =
18457 &#39;http://www1.itrc.hp.com/service/ewarranty/warrantyInput.do&#39;;
18458 $mech-&gt;get($url);
18459 my $fields = {
18460 &#39;BODServiceID&#39; =&gt; &#39;NA&#39;,
18461 &#39;RegisteredPurchaseDate&#39; =&gt; &#39;&#39;,
18462 &#39;country&#39; =&gt; &#39;NO&#39;,
18463 &#39;productNumber&#39; =&gt; $productnumber,
18464 &#39;serialNumber1&#39; =&gt; $serial,
18465 };
18466 $mech-&gt;submit_form( form_number =&gt; 2,
18467 fields =&gt; $fields );
18468 # Next step is screen scraping
18469 my $content = $mech-&gt;content();
18470
18471 $content =~ s/&amp;lt;[^&gt;]+?&gt;/;/gm;
18472 $content =~ s/\s+/ /gm;
18473 $content =~ s/;\s*;/;;/gm;
18474 $content =~ s/;[\s;]+/;/gm;
18475
18476 my $today = POSIX::strftime(&quot;%Y-%m-%d&quot;, localtime(time));
18477
18478 while ($content =~ m/;Warranty Type;/) {
18479 my ($type, $status, $startstr, $stopstr) = $content =~
18480 m/;Warranty Type;([^;]+);.+?;Status;(\w+);Start Date;([^;]+);End Date;([^;]+);/;
18481 $content =~ s/^.+?;Warranty Type;//;
18482 my $start = POSIX::strftime(&quot;%Y-%m-%d&quot;,
18483 localtime(str2time($startstr)));
18484 my $end = POSIX::strftime(&quot;%Y-%m-%d&quot;,
18485 localtime(str2time($stopstr)));
18486
18487 $str .= &quot;$type ($status) $start -&gt; $end &quot;;
18488
18489 tag_machine_unsupported($machine)
18490 if ($end lt $today);
18491 }
18492 } elsif ( $model =~ m/^IBM / ) {
18493 # This code ignore extended support contracts.
18494 my ($producttype) = $model =~ m/.*-\[(.{4}).+\]-/;
18495 if ($producttype &amp;amp;&amp;amp; $serial) {
18496 my $content =
18497 get(&quot;http://www-947.ibm.com/systems/support/supportsite.wss/warranty?action=warranty&amp;amp;brandind=5000008&amp;amp;Submit=Submit&amp;amp;type=$producttype&amp;amp;serial=$serial&quot;);
18498 if ($content) {
18499 $content =~ s/&amp;lt;[^&gt;]+?&gt;/;/gm;
18500 $content =~ s/\s+/ /gm;
18501 $content =~ s/;\s*;/;;/gm;
18502 $content =~ s/;[\s;]+/;/gm;
18503
18504 $content =~ s/^.+?;Warranty status;//;
18505 my ($status, $end) = $content =~ m/;Warranty status;([^;]+)\s*;Expiration date;(\S+) ;/;
18506
18507 $str .= &quot;($status) -&gt; $end &quot;;
18508
18509 my $today = POSIX::strftime(&quot;%Y-%m-%d&quot;, localtime(time));
18510 tag_machine_unsupported($machine)
18511 if ($end lt $today);
18512 }
18513 }
18514 }
18515 return $str;
18516 }
18517 &lt;/pre&gt;
18518
18519 &lt;p&gt;Here are some examples on how to use the function, using fake
18520 serial numbers. The information passed in as arguments are fetched
18521 from dmidecode.&lt;/p&gt;
18522
18523 &lt;pre&gt;
18524 print get_support_info(&quot;hp.host&quot;, &quot;HP ProLiant BL460c G1&quot;, &quot;1234567890&quot;
18525 &quot;447707-B21&quot;);
18526 print get_support_info(&quot;dell.host&quot;, &quot;Dell Inc. PowerEdge 2950&quot;, &quot;1234567&quot;);
18527 print get_support_info(&quot;ibm.host&quot;, &quot;IBM eserver xSeries 345 -[867061X]-&quot;,
18528 &quot;1234567&quot;);
18529 &lt;/pre&gt;
18530
18531 &lt;p&gt;I would recommend this approach for tracking support contracts for
18532 everyone with more than a few computers to administer. :)&lt;/p&gt;
18533
18534 &lt;p&gt;Update 2009-03-06: The IBM page do not include extended support
18535 contracts, so it is useless in that case. The original Dell code do
18536 not handle extended support contracts either, but has been updated to
18537 do so.&lt;/p&gt;
18538 </description>
18539 </item>
18540
18541 <item>
18542 <title>Using bar codes at a computing center</title>
18543 <link>http://people.skolelinux.org/pere/blog/Using_bar_codes_at_a_computing_center.html</link>
18544 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Using_bar_codes_at_a_computing_center.html</guid>
18545 <pubDate>Fri, 20 Feb 2009 08:50:00 +0100</pubDate>
18546 <description>&lt;p&gt;At work with the University of Oslo, we have several hundred computers
18547 in our computing center. This give us a challenge in tracking the
18548 location and cabling of the computers, when they are added, moved and
18549 removed. Some times the location register is not updated when a
18550 computer is inserted or moved and we then have to search the room for
18551 the &quot;missing&quot; computer.&lt;/p&gt;
18552
18553 &lt;p&gt;In the last issue of Linux Journal, I came across a project
18554 &lt;a href=&quot;http://www.libdmtx.org/&quot;&gt;libdmtx&lt;/a&gt; to write and read bar
18555 code blocks as defined in the
18556 &lt;a href=&quot;http://en.wikipedia.org/wiki/Data_Matrix&quot;&gt;The Data Matrix
18557 Standard&lt;/a&gt;. This is bar codes that can be read with a normal
18558 digital camera, for example that on a cell phone, and several such bar
18559 codes can be read by libdmtx from one picture. The bar code standard
18560 allow up to 2 KiB to be written in the tag. There is another project
18561 with &lt;a href=&quot;http://www.terryburton.co.uk/barcodewriter/&quot;&gt;a bar code
18562 writer written in postscript&lt;/a&gt; capable of creating such bar codes,
18563 but this was the first time I found a tool to read these bar
18564 codes.&lt;/p&gt;
18565
18566 &lt;p&gt;It occurred to me that this could be used to tag and track the
18567 machines in our computing center. If both racks and computers are
18568 tagged this way, we can use a picture of the rack and all its
18569 computers to detect the rack location of any computer in that rack.
18570 If we do this regularly for the entire room, we will find all
18571 locations, and can detect movements and removals.&lt;/p&gt;
18572
18573 &lt;p&gt;I decided to test if this would work in practice, and picked a
18574 random rack and tagged all the machines with their names. Next, I
18575 took pictures with my digital camera, and gave the dmtxread program
18576 these JPEG pictures to see how many tags it could read. This worked
18577 fairly well. If the pictures was well focused and not taken from the
18578 side, all tags in the image could be read. Because of limited space
18579 between the racks, I was unable to get a good picture of the entire
18580 rack, but could without problem read all tags from a picture covering
18581 about half the rack. I had to limit the search time used by dmtxread
18582 to 60000 ms to make sure it terminated in a reasonable time frame.&lt;/p&gt;
18583
18584 &lt;p&gt;My conclusion is that this could work, and we should probably look
18585 at adjusting our computer tagging procedures to use bar codes for
18586 easier automatic tracking of computers.&lt;/p&gt;
18587 </description>
18588 </item>
18589
18590 <item>
18591 <title>When web browser developers make a video player...</title>
18592 <link>http://people.skolelinux.org/pere/blog/When_web_browser_developers_make_a_video_player___.html</link>
18593 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/When_web_browser_developers_make_a_video_player___.html</guid>
18594 <pubDate>Sat, 17 Jan 2009 18:50:00 +0100</pubDate>
18595 <description>&lt;p&gt;As part of the work we do in &lt;a href=&quot;http://www.nuug.no&quot;&gt;NUUG&lt;/a&gt;
18596 to publish video recordings of our monthly presentations, we provide a
18597 page with embedded video for easy access to the recording. Putting a
18598 good set of HTML tags together to get working embedded video in all
18599 browsers and across all operating systems is not easy. I hope this
18600 will become easier when the &amp;lt;video&amp;gt; tag is implemented in all
18601 browsers, but I am not sure. We provide the recordings in several
18602 formats, MPEG1, Ogg Theora, H.264 and Quicktime, and want the
18603 browser/media plugin to pick one it support and use it to play the
18604 recording, using whatever embed mechanism the browser understand.
18605 There is at least four different tags to use for this, the new HTML5
18606 &amp;lt;video&amp;gt; tag, the &amp;lt;object&amp;gt; tag, the &amp;lt;embed&amp;gt; tag and
18607 the &amp;lt;applet&amp;gt; tag. All of these take a lot of options, and
18608 finding the best options is a major challenge.&lt;/p&gt;
18609
18610 &lt;p&gt;I just tested the experimental Opera browser available from &lt;a
18611 href=&quot;http://labs.opera.com&quot;&gt;labs.opera.com&lt;/a&gt;, to see how it handled
18612 a &amp;lt;video&amp;gt; tag with a few video sources and no extra attributes.
18613 I was not very impressed. The browser start by fetching a picture
18614 from the video stream. Not sure if it is the first frame, but it is
18615 definitely very early in the recording. So far, so good. Next,
18616 instead of streaming the 76 MiB video file, it start to download all
18617 of it, but do not start to play the video. This mean I have to wait
18618 for several minutes for the downloading to finish. When the download
18619 is done, the playing of the video do not start! Waiting for the
18620 download, but I do not get to see the video? Some testing later, I
18621 discover that I have to add the controls=&quot;true&quot; attribute to be able
18622 to get a play button to pres to start the video. Adding
18623 autoplay=&quot;true&quot; did not help. I sure hope this is a misfeature of the
18624 test version of Opera, and that future implementations of the
18625 &amp;lt;video&amp;gt; tag will stream recordings by default, or at least start
18626 playing when the download is done.&lt;/p&gt;
18627
18628 &lt;p&gt;The test page I used (since changed to add more attributes) is
18629 &lt;a href=&quot;http://www.nuug.no/aktiviteter/20090113-foredrag-om-foredrag/&quot;&gt;available
18630 from the nuug site&lt;/a&gt;. Will have to test it with the new Firefox
18631 too.&lt;/p&gt;
18632
18633 &lt;p&gt;In the test process, I discovered a missing feature. I was unable
18634 to find a way to get the URL of the playing video out of Opera, so I
18635 am not quite sure it picked the Ogg Theora version of the video. I
18636 sure hope it was using the announced Ogg Theora support. :)&lt;/p&gt;
18637 </description>
18638 </item>
18639
18640 <item>
18641 <title>Software video mixer on a USB stick</title>
18642 <link>http://people.skolelinux.org/pere/blog/Software_video_mixer_on_a_USB_stick.html</link>
18643 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Software_video_mixer_on_a_USB_stick.html</guid>
18644 <pubDate>Sun, 28 Dec 2008 15:40:00 +0100</pubDate>
18645 <description>&lt;p&gt;The &lt;a href=&quot;http://www.nuug.no/&quot;&gt;Norwegian Unix User Group&lt;/a&gt; is
18646 recording our montly presentation on video, and recently we have
18647 worked on improving the quality of the recordings by mixing the slides
18648 directly with the video stream. For this, we use the
18649 &lt;a href=&quot;http://dvswitch.alioth.debian.org/&quot;&gt;dvswitch&lt;/a&gt; package from
18650 the Debian video team. As this require quite one computer per video
18651 source, and NUUG do not have enough laptops available, we need to
18652 borrow laptops. And to avoid having to install extra software on
18653 these borrwed laptops, I have wrapped up all the programs needed on a
18654 bootable USB stick. The software required is dvswitch with assosiated
18655 source, sink and mixer applications and
18656 &lt;a href=&quot;http://www.kinodv.org/&quot;&gt;dvgrab&lt;/a&gt;. To allow this setup to
18657 work without any configuration, I&#39;ve patched dvswitch to use
18658 &lt;a href=&quot;http://www.avahi.org/&quot;&gt;avahi&lt;/a&gt; to connect the various parts
18659 together. And to allow us to use laptops without firewire plugs, I
18660 upgraded dvgrab to the one from Debian/unstable to get one that work
18661 with USB sources. We have not yet tested this setup in a production
18662 setup, but I hope it will work properly, and allow us to set up a
18663 video mixer in a very short time frame. We will need it for
18664 &lt;a href=&quot;http://www.goopen.no/&quot;&gt;Go Open 2009&lt;/a&gt;.&lt;/p&gt;
18665
18666 &lt;p&gt;&lt;a href=&quot;http://www.nuug.no/pub/video/bin/usbstick-dvswitch.img.gz&quot;&gt;The
18667 USB image&lt;/a&gt; is for a 1 GB memory stick, but can be used on any
18668 larger stick as well.&lt;/p&gt;
18669 </description>
18670 </item>
18671
18672 <item>
18673 <title>Devcamp brought us closer to the Lenny based Debian Edu release</title>
18674 <link>http://people.skolelinux.org/pere/blog/Devcamp_brought_us_closer_to_the_Lenny_based_Debian_Edu_release.html</link>
18675 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Devcamp_brought_us_closer_to_the_Lenny_based_Debian_Edu_release.html</guid>
18676 <pubDate>Sun, 7 Dec 2008 12:00:00 +0100</pubDate>
18677 <description>&lt;p&gt;This weekend we had a small developer gathering for Debian Edu in
18678 Oslo. Most of Saturday was used for the general assemly for the
18679 member organization, but the rest of the weekend I used to tune the
18680 LTSP installation. LTSP now work out of the box on the 10-network.
18681 Acer Aspire One proved to be a very nice thin client, with both
18682 screen, mouse and keybard in a small box. Was working on getting the
18683 diskless workstation setup configured out of the box, but did not
18684 finish it before the weekend was up.&lt;/p&gt;
18685
18686 &lt;p&gt;Did not find time to look at the 4 VGA cards in one box we got from
18687 the Brazilian group, so that will have to wait for the next
18688 development gathering. Would love to have the Debian Edu installer
18689 automatically detect and configure a multiseat setup when it find one
18690 of these cards.&lt;/p&gt;
18691 </description>
18692 </item>
18693
18694 <item>
18695 <title>The sorry state of multimedia browser plugins in Debian</title>
18696 <link>http://people.skolelinux.org/pere/blog/The_sorry_state_of_multimedia_browser_plugins_in_Debian.html</link>
18697 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/The_sorry_state_of_multimedia_browser_plugins_in_Debian.html</guid>
18698 <pubDate>Tue, 25 Nov 2008 00:10:00 +0100</pubDate>
18699 <description>&lt;p&gt;Recently I have spent some time evaluating the multimedia browser
18700 plugins available in Debian Lenny, to see which one we should use by
18701 default in Debian Edu. We need an embedded video playing plugin with
18702 control buttons to pause or stop the video, and capable of streaming
18703 all the multimedia content available on the web. The test results and
18704 notes are available on
18705 &lt;a href=&quot;http://wiki.debian.org/DebianEdu/BrowserMultimedia&quot;&gt;the
18706 Debian wiki&lt;/a&gt;. I was surprised how few of the plugins are able to
18707 fill this need. My personal video player favorite, VLC, has a really
18708 bad plugin which fail on a lot of the test pages. A lot of the MIME
18709 types I would expect to work with any free software player (like
18710 video/ogg), just do not work. And simple formats like the
18711 audio/x-mplegurl format (m3u playlists), just isn&#39;t supported by the
18712 totem and vlc plugins. I hope the situation will improve soon. No
18713 wonder sites use the proprietary Adobe flash to play video.&lt;/p&gt;
18714
18715 &lt;p&gt;For Lenny, we seem to end up with the mplayer plugin. It seem to
18716 be the only one fitting our needs. :/&lt;/p&gt;
18717 </description>
18718 </item>
18719
18720 </channel>
18721 </rss>