]> pere.pagekite.me Git - homepage.git/blob - blog/index.html
New post.
[homepage.git] / blog / index.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen</title>
7 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/vim.css" />
9 <link rel="alternate" title="RSS Feed" href="http://people.skolelinux.org/pere/blog/index.rss" type="application/rss+xml" />
10 </head>
11 <body>
12 <div class="title">
13 <h1>
14 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
15
16 </h1>
17
18 </div>
19
20
21
22 <div class="entry">
23 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Debian_Edu_interview__Bernd_Zeitzen.html">Debian Edu interview: Bernd Zeitzen</a></div>
24 <div class="date">31st July 2014</div>
25 <div class="body"><p>The complete and free “out of the box” software solution for
26 schools, <a href="http://www.skolelinux.org/">Debian Edu /
27 Skolelinux</a>, is used quite a lot in Germany, and one of the people
28 involved is Bernd Zeitzen, who show up on the project mailing lists
29 from time to time with interesting questions and tips on how to adjust
30 the setup. I managed to interview him this summer.</p>
31
32 <p><strong>Who are you, and how do you spend your days?</strong></p>
33
34 <p>My name is Bernd Zeitzen and I'm married with Hedda, a self
35 employed physiotherapist. My former profession is tool maker, but I
36 haven't worked for 30 years in this job. 30 years ago I started to
37 support my wife and become her officeworker and a few years later the
38 administrator for a small computer network, today based on Ubuntu
39 Server (Samba, OpenVPN). For her daily work she has to use Windows
40 Desktops because the software she needs to organize her business only
41 works with Windows . :-(</p>
42
43 <p>In 1988 we started with one PC and DOS, then I learned to use
44 Windows 98, 2000, XP, …, 8, Ubuntu, MacOSX. Today we are running a
45 Linux server with 6 Windows clients and 10 persons (teacher of
46 children with special needs, speech therapist, occupational therapist,
47 psychologist and officeworkers) using our Samba shares via OpenVPN to
48 work with the documentations of our patients.</p>
49
50 <p><strong>How did you get in contact with the Skolelinux / Debian Edu
51 project?</strong></p>
52
53 <p>Two years ago a friend of mine asked me, if I want to get a job in
54 his school (<a href="http://www.gymnasium-harsewinkel.de/">Gymnasium
55 Harsewinkel</a>). They started with Skolelinux / Debian Edu and they
56 were looking for people to give support to the teachers using the
57 software and the network and teaching the pupils increasing their
58 computer skills in optional lessons. I'm spending 4-6 hours a week
59 with this job.</p>
60
61 <p><strong>What do you see as the advantages of Skolelinux / Debian
62 Edu?</strong></p>
63
64 <p>The independence.</p>
65
66 <p>First: Every person is allowed to use, share and develop the
67 software. Even if you are poor, you are allowed to use the software
68 included in Skolelinux/Debian Edu and all the other Free Software.</p>
69
70 <p>Second: The software runs on old machines and this gives us the
71 possibility to recycle computers, weeded out from offices. The
72 servers and desktops are running for more than two years and they are
73 working reliable. </p>
74
75 <p>We have two servers (one tjener and one terminal server), 45
76 workstations in three classrooms and seven laptops as a mobile
77 solution for all classrooms. These machines are all booting from the
78 terminal server. In the moment we are installing 30 laptops as mobile
79 workstations. Then the pupils have the possibility to work with these
80 machines in their classrooms. Internet access is realized by a WLAN
81 router, connected to the schools network. This is all done without a
82 dedicated system administrator or a computer science teacher.</p>
83
84 <p><strong>What do you see as the disadvantages of Skolelinux / Debian
85 Edu?</strong></p>
86
87 <p>Teachers and pupils are Windows users. &lt;Irony on&gt; And Linux
88 isn't cool. It's software for freaks using the command line. &lt;Irony
89 off&gt; They don't realize the stability of the system. </p>
90
91 <p><strong>Which free software do you use daily?</strong></p>
92
93 <p>Firefox, Thunderbird, LibreOffice, Ubuntu Server 12.04 (Samba,
94 Apache, MySQL, Joomla!, … and Skolelinux / Debian Edu)</p>
95
96 <p><strong>Which strategy do you believe is the right one to use to
97 get schools to use free software?</strong></p>
98
99 <p>In Germany we have the situation: every school is free to decide
100 which software they want to use. This decision is influenced by
101 teachers who learned to use Windows and MS Office. They buy a PC with
102 Windows preinstalled and an additional testing version of MS
103 Office. They don't know about the possibility to use Free Software
104 instead. Another problem are the publisher of school books. They
105 develop their software, added to the school books, for Windows.</p>
106 </div>
107 <div class="tags">
108
109
110 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju</a>.
111
112
113 </div>
114 </div>
115 <div class="padding"></div>
116
117 <div class="entry">
118 <div class="title"><a href="http://people.skolelinux.org/pere/blog/98_6_percent_done_with_the_Norwegian_draft_translation_of_Free_Culture.html">98.6 percent done with the Norwegian draft translation of Free Culture</a></div>
119 <div class="date">23rd July 2014</div>
120 <div class="body"><p>This summer I finally had time to continue working on the Norwegian
121 <a href="http://www.docbook.org/">docbook</a> version of the 2004 book
122 <a href="http://free-culture.cc/">Free Culture</a> by Lawrence Lessig,
123 to get a Norwegian text explaining the problems with todays copyright
124 law. Yesterday, I finally completed translated the book text. There
125 are still some foot/end notes left to translate, the colophon page
126 need to be rewritten, and a few words and phrases still need to be
127 translated, but the Norwegian text is ready for the first proof
128 reading. :) More spell checking is needed, and several illustrations
129 need to be cleaned up. The work stopped up because I had to give
130 priority to other projects the last year, and the progress graph of
131 the translation show this very well:</p>
132
133 <p><img width="80%" align="center" src="https://github.com/petterreinholdtsen/free-culture-lessig/raw/master/progress.png"></p>
134
135 <p>If you want to read the result, check out the
136 <a href="https://github.com/petterreinholdtsen/free-culture-lessig">github</a>
137 project pages and the
138 <a href="https://github.com/petterreinholdtsen/free-culture-lessig/blob/master/archive/freeculture.nb.pdf?raw=true">PDF</a>,
139 <a href="https://github.com/petterreinholdtsen/free-culture-lessig/blob/master/archive/freeculture.nb.epub?raw=true">EPUB</a>
140 and HTML version available in the
141 <a href="https://github.com/petterreinholdtsen/free-culture-lessig/tree/master/archive">archive
142 directory</a>.</p>
143
144 <p>Please report typos, bugs and improvements to the github project if
145 you find any.</p>
146 </div>
147 <div class="tags">
148
149
150 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture</a>.
151
152
153 </div>
154 </div>
155 <div class="padding"></div>
156
157 <div class="entry">
158 <div class="title"><a href="http://people.skolelinux.org/pere/blog/From_English_wiki_to_translated_PDF_and_epub_via_Docbook.html">From English wiki to translated PDF and epub via Docbook</a></div>
159 <div class="date">17th June 2014</div>
160 <div class="body"><p>The <a href="http://www.skolelinux.org/">Debian Edu / Skolelinux
161 project</a> provide an instruction manual for teachers, system
162 administrators and other users that contain useful tips for setting up
163 and maintaining a Debian Edu installation. This text is about how the
164 text processing of this manual is handled in the project.</p>
165
166 <p>One goal of the project is to provide information in the native
167 language of its users, and for this we need to handle translations.
168 But we also want to make sure each language contain the same
169 information, so for this we need a good way to keep the translations
170 in sync. And we want it to be easy for our users to improve the
171 documentation, avoiding the need to learn special formats or tools to
172 contribute, and the obvious way to do this is to make it possible to
173 edit the documentation using a web browser. We also want it to be
174 easy for translators to keep the translation up to date, and give them
175 help in figuring out what need to be translated. Here is the list of
176 tools and the process we have found trying to reach all these
177 goals.</p>
178
179 <p>We maintain the authoritative source of our manual in the
180 <a href="https://wiki.debian.org/DebianEdu/Documentation/Wheezy/">Debian
181 wiki</a>, as several wiki pages written in English. It consist of one
182 front page with references to the different chapters, several pages
183 for each chapter, and finally one "collection page" gluing all the
184 chapters together into one large web page (aka
185 <a href="https://wiki.debian.org/DebianEdu/Documentation/Wheezy/AllInOne">the
186 AllInOne page</a>). The AllInOne page is the one used for further
187 processing and translations. Thanks to the fact that the
188 <a href="http://moinmo.in/">MoinMoin</a> installation on
189 wiki.debian.org support exporting pages in
190 <a href="http://www.docbook.org/">the Docbook format</a>, we can fetch
191 the list of pages to export using the raw version of the AllInOne
192 page, loop over each of them to generate a Docbook XML version of the
193 manual. This process also download images and transform image
194 references to use the locally downloaded images. The generated
195 Docbook XML files are slightly broken, so some post-processing is done
196 using the <tt>documentation/scripts/get_manual</tt> program, and the
197 result is a nice Docbook XML file (debian-edu-wheezy-manual.xml) and
198 a handfull of images. The XML file can now be used to generate PDF, HTML
199 and epub versions of the English manual. This is the basic step of
200 our process, making PDF (using dblatex), HTML (using xsltproc) and
201 epub (using dbtoepub) version from Docbook XML, and the resulting files
202 are placed in the debian-edu-doc-en binary package.</p>
203
204 <p>But English documentation is not enough for us. We want translated
205 documentation too, and we want to make it easy for translators to
206 track the English original. For this we use the
207 <a href="http://packages.qa.debian.org/p/poxml.html">poxml</a> package,
208 which allow us to transform the English Docbook XML file into a
209 translation file (a .pot file), usable with the normal gettext based
210 translation tools used by those translating free software. The pot
211 file is used to create and maintain translation files (several .po
212 files), which the translations update with the native language
213 translations of all titles, paragraphs and blocks of text in the
214 original. The next step is combining the original English Docbook XML
215 and the translation file (say debian-edu-wheezy-manual.nb.po), to
216 create a translated Docbook XML file (in this case
217 debian-edu-wheezy-manual.nb.xml). This translated (or partly
218 translated, if the translation is not complete) Docbook XML file can
219 then be used like the original to create a PDF, HTML and epub version
220 of the documentation.</p>
221
222 <p>The translators use different tools to edit the .po files. We
223 recommend using
224 <a href="http://www.kde.org/applications/development/lokalize/">lokalize</a>,
225 while some use emacs and vi, others can use web based editors like
226 <a href="http://pootle.translatehouse.org/">Poodle</a> or
227 <a href="https://www.transifex.com/">Transifex</a>. All we care about
228 is where the .po file end up, in our git repository. Updated
229 translations can either be committed directly to git, or submitted as
230 <a href="https://bugs.debian.org/src:debian-edu-doc">bug reports
231 against the debian-edu-doc package</a>.</p>
232
233 <p>One challenge is images, which both might need to be translated (if
234 they show translated user applications), and are needed in different
235 formats when creating PDF and HTML versions (epub is a HTML version in
236 this regard). For this we transform the original PNG images to the
237 needed density and format during build, and have a way to provide
238 translated images by storing translated versions in
239 images/$LANGUAGECODE/. I am a bit unsure about the details here. The
240 package maintainers know more.</p>
241
242 <p>If you wonder what the result look like, we provide
243 <a href="http://maintainer.skolelinux.org/debian-edu-doc/">the content
244 of the documentation packages on the web</a>. See for example the
245 <a href="http://maintainer.skolelinux.org/debian-edu-doc/it/debian-edu-wheezy-manual.pdf">Italian
246 PDF version</a> or the
247 <a href="http://maintainer.skolelinux.org/debian-edu-doc/de/debian-edu-wheezy-manual.html">German
248 HTML version</a>. We do not yet build the epub version by default,
249 but perhaps it will be done in the future.</p>
250
251 <p>To learn more, check out
252 <a href="http://packages.qa.debian.org/d/debian-edu-doc.html">the
253 debian-edu-doc package</a>,
254 <a href="https://wiki.debian.org/DebianEdu/Documentation/Wheezy/">the
255 manual on the wiki</a> and
256 <a href="https://wiki.debian.org/DebianEdu/Documentation/Wheezy/Translations">the
257 translation instructions</a> in the manual.</p>
258 </div>
259 <div class="tags">
260
261
262 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.
263
264
265 </div>
266 </div>
267 <div class="padding"></div>
268
269 <div class="entry">
270 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Hvordan_enkelt_laste_ned_filmer_fra_NRK_med_den__nye__l_sningen.html">Hvordan enkelt laste ned filmer fra NRK med den "nye" løsningen</a></div>
271 <div class="date">16th June 2014</div>
272 <div class="body"><p>Jeg har fortsatt behov for å kunne laste ned innslag fra NRKs
273 nettsted av og til for å se senere når jeg ikke er på nett, men
274 <a href="http://people.skolelinux.org/pere/blog/Hvordan_enkelt_laste_ned_filmer_fra_NRK.html">min
275 oppskrift fra 2011</a> sluttet å fungere da NRK byttet
276 avspillermetode. I dag fikk jeg endelig lett etter oppdatert løsning,
277 og jeg er veldig glad for å fortelle at den enkleste måten å laste ned
278 innslag er å bruke siste versjon 2014.06.07 av
279 <a href="http://rg3.github.io/youtube-dl/">youtube-dl</a>. Støtten i
280 youtube-dl <a href="https://github.com/rg3/youtube-dl/issues/2980">kom
281 inn for 23 dager siden</a> og
282 <a href="http://packages.qa.debian.org/y/youtube-dl.html">versjonen i
283 Debian</a> fungerer fint også som backport til Debian Wheezy. Det er
284 et lite problem, det håndterer kun URLer med små bokstaver, men hvis
285 en har en URL med store bokstaver kan en bare gjøre alle store om til
286 små bokstaver for å få youtube-dl til å laste ned. Rapporterte
287 nettopp
288 <a href="https://github.com/rg3/youtube-dl/issues/2980">problemet til
289 utviklerne</a>, og antar de får fikset det snart.</p>
290
291 <p>Dermed er alt klart til å laste ned dokumentarene om
292 <a href="http://tv.nrk.no/program/KOID23005014/usas-hemmelige-avlytting">USAs
293 hemmelige avlytting</a> og
294 <a href="http://tv.nrk.no/program/KOID23005114/selskapene-bak-usas-avlytting">Selskapene
295 bak USAs avlytting</a>, i tillegg til
296 <a href="http://tv.nrk.no/program/KOID20005814/et-moete-med-edward-snowden">intervjuet
297 med Edward Snowden gjort av den tyske tv-kanalen ARD</a>. Anbefaler
298 alle å se disse, sammen med
299 <a href="http://media.ccc.de/browse/congress/2013/30C3_-_5713_-_en_-_saal_2_-_201312301130_-_to_protect_and_infect_part_2_-_jacob.html">foredraget
300 til Jacob Appelbaum på siste CCC-konferanse</a>, for å forstå mer om
301 hvordan overvåkningen av borgerne brer om seg.</p>
302
303 <p>Takk til gode venner på foreningen NUUGs IRC-kanal
304 <a href="irc://irc.freenode.net/%23nuug">#nuug på irc.freenode.net</a>
305 for tipsene som fikk meg i mål</a>.</p>
306
307 <p><strong>Oppdatering 2014-06-17</strong>: Etter at jeg publiserte
308 denne, ble jeg tipset om bloggposten
309 "<a href="http://ingvar.blog.redpill-linpro.com/2012/05/31/downloading-hd-content-from-tv-nrk-no/">Downloading
310 HD content from tv.nrk.no</a>" av Ingvar Hagelund, som har alternativ
311 implementasjon og tips for å lage mkv-fil med undertekstene inkludert.
312 Kanskje den passer bedre for deg? I tillegg ble feilen i youtube-dl
313 ble fikset litt senere ut på dagen i går, samt at youtube-dl fikk
314 støtte for å laste ned undertitler. Takk til Anders Einar Hilden for
315 god innsats og youtube-dl-utviklerne for rask respons.</p>
316 </div>
317 <div class="tags">
318
319
320 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/video">video</a>, <a href="http://people.skolelinux.org/pere/blog/tags/web">web</a>.
321
322
323 </div>
324 </div>
325 <div class="padding"></div>
326
327 <div class="entry">
328 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Free_software_car_computer_solution_.html">Free software car computer solution?</a></div>
329 <div class="date">29th May 2014</div>
330 <div class="body"><p>Dear lazyweb. I'm planning to set up a small Raspberry Pi computer
331 in my car, connected to
332 <a href="http://www.dx.com/p/400a-4-0-tft-lcd-digital-monitor-for-vehicle-parking-reverse-camera-1440x272-12v-dc-57776">a
333 small screen</a> next to the rear mirror. I plan to hook it up with a
334 GPS and a USB wifi card too. The idea is to get my own
335 "<a href="http://en.wikipedia.org/wiki/Carputer">Carputer</a>". But I
336 wonder if someone already created a good free software solution for
337 such car computer.</p>
338
339 <p>This is my current wish list for such system:</p>
340
341 <ul>
342
343 <li>Work on Raspberry Pi.</li>
344
345 <li>Show current speed limit based on location, and warn if going too
346 fast (for example using color codes yellow and red on the screen,
347 or make a sound). This could be done either using either data from
348 <a href="http://www.openstreetmap.org/">Openstreetmap</a> or OCR
349 info gathered from a dashboard camera.</li>
350
351 <li>Track automatic toll road passes and their cost, show total spent
352 and make it possible to calculate toll costs for planned
353 route.</li>
354
355 <li>Collect GPX tracks for use with OpenStreetMap.</li>
356
357 <li>Automatically detect and use any wireless connection to connect
358 to home server. Try IP over DNS
359 (<a href="http://dev.kryo.se/iodine/">iodine</a>) or ICMP
360 (<a href="http://code.gerade.org/hans/">Hans</a>) if direct
361 connection do not work.</li>
362
363 <li>Set up mesh network to talk to other cars with the same system,
364 or some standard car mesh protocol.</li>
365
366 <li>Warn when approaching speed cameras and speed camera ranges
367 (speed calculated between two cameras).</li>
368
369 <li>Suport dashboard/front facing camera to discover speed limits and
370 run OCR to track registration number of passing cars.</li>
371
372 </ul>
373
374 <p>If you know of any free software car computer system supporting
375 some or all of these features, please let me know.</p>
376 </div>
377 <div class="tags">
378
379
380 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.
381
382
383 </div>
384 </div>
385 <div class="padding"></div>
386
387 <div class="entry">
388 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Half_the_Coverity_issues_in_Gnash_fixed_in_the_next_release.html">Half the Coverity issues in Gnash fixed in the next release</a></div>
389 <div class="date">29th April 2014</div>
390 <div class="body"><p>I've been following <a href="http://www.getgnash.org/">the Gnash
391 project</a> for quite a while now. It is a free software
392 implementation of Adobe Flash, both a standalone player and a browser
393 plugin. Gnash implement support for the AVM1 format (and not the
394 newer AVM2 format - see
395 <a href="http://lightspark.github.io/">Lightspark</a> for that one),
396 allowing several flash based sites to work. Thanks to the friendly
397 developers at Youtube, it also work with Youtube videos, because the
398 Javascript code at Youtube detect Gnash and serve a AVM1 player to
399 those users. :) Would be great if someone found time to implement AVM2
400 support, but it has not happened yet. If you install both Lightspark
401 and Gnash, Lightspark will invoke Gnash if it find a AVM1 flash file,
402 so you can get both handled as free software. Unfortunately,
403 Lightspark so far only implement a small subset of AVM2, and many
404 sites do not work yet.</p>
405
406 <p>A few months ago, I started looking at
407 <a href="http://scan.coverity.com/">Coverity</a>, the static source
408 checker used to find heaps and heaps of bugs in free software (thanks
409 to the donation of a scanning service to free software projects by the
410 company developing this non-free code checker), and Gnash was one of
411 the projects I decided to check out. Coverity is able to find lock
412 errors, memory errors, dead code and more. A few days ago they even
413 extended it to also be able to find the heartbleed bug in OpenSSL.
414 There are heaps of checks being done on the instrumented code, and the
415 amount of bogus warnings is quite low compared to the other static
416 code checkers I have tested over the years.</p>
417
418 <p>Since a few weeks ago, I've been working with the other Gnash
419 developers squashing bugs discovered by Coverity. I was quite happy
420 today when I checked the current status and saw that of the 777 issues
421 detected so far, 374 are marked as fixed. This make me confident that
422 the next Gnash release will be more stable and more dependable than
423 the previous one. Most of the reported issues were and are in the
424 test suite, but it also found a few in the rest of the code.</p>
425
426 <p>If you want to help out, you find us on
427 <a href="https://lists.gnu.org/mailman/listinfo/gnash-dev">the
428 gnash-dev mailing list</a> and on
429 <a href="irc://irc.freenode.net/#gnash">the #gnash channel on
430 irc.freenode.net IRC server</a>.</p>
431 </div>
432 <div class="tags">
433
434
435 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia</a>, <a href="http://people.skolelinux.org/pere/blog/tags/video">video</a>, <a href="http://people.skolelinux.org/pere/blog/tags/web">web</a>.
436
437
438 </div>
439 </div>
440 <div class="padding"></div>
441
442 <div class="entry">
443 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Install_hardware_dependent_packages_using_tasksel__Isenkram_0_7_.html">Install hardware dependent packages using tasksel (Isenkram 0.7)</a></div>
444 <div class="date">23rd April 2014</div>
445 <div class="body"><p>It would be nice if it was easier in Debian to get all the hardware
446 related packages relevant for the computer installed automatically.
447 So I implemented one, using
448 <a href="http://packages.qa.debian.org/isenkram">my Isenkram
449 package</a>. To use it, install the tasksel and isenkram packages and
450 run tasksel as user root. You should be presented with a new option,
451 "Hardware specific packages (autodetected by isenkram)". When you
452 select it, tasksel will install the packages isenkram claim is fit for
453 the current hardware, hot pluggable or not.<p>
454
455 <p>The implementation is in two files, one is the tasksel menu entry
456 description, and the other is the script used to extract the list of
457 packages to install. The first part is in
458 <tt>/usr/share/tasksel/descs/isenkram.desc</tt> and look like
459 this:</p>
460
461 <p><blockquote><pre>
462 Task: isenkram
463 Section: hardware
464 Description: Hardware specific packages (autodetected by isenkram)
465 Based on the detected hardware various hardware specific packages are
466 proposed.
467 Test-new-install: mark show
468 Relevance: 8
469 Packages: for-current-hardware
470 </pre></blockquote></p>
471
472 <p>The second part is in
473 <tt>/usr/lib/tasksel/packages/for-current-hardware</tt> and look like
474 this:</p>
475
476 <p><blockquote><pre>
477 #!/bin/sh
478 #
479 (
480 isenkram-lookup
481 isenkram-autoinstall-firmware -l
482 ) | sort -u
483 </pre></blockquote></p>
484
485 <p>All in all, a very short and simple implementation making it
486 trivial to install the hardware dependent package we all may want to
487 have installed on our machines. I've not been able to find a way to
488 get tasksel to tell you exactly which packages it plan to install
489 before doing the installation. So if you are curious or careful,
490 check the output from the isenkram-* command line tools first.</p>
491
492 <p>The information about which packages are handling which hardware is
493 fetched either from the isenkram package itself in
494 /usr/share/isenkram/, from git.debian.org or from the APT package
495 database (using the Modaliases header). The APT package database
496 parsing have caused a nasty resource leak in the isenkram daemon (bugs
497 <a href="http://bugs.debian.org/719837">#719837</a> and
498 <a href="http://bugs.debian.org/730704">#730704</a>). The cause is in
499 the python-apt code (bug
500 <a href="http://bugs.debian.org/745487">#745487</a>), but using a
501 workaround I was able to get rid of the file descriptor leak and
502 reduce the memory leak from ~30 MiB per hardware detection down to
503 around 2 MiB per hardware detection. It should make the desktop
504 daemon a lot more useful. The fix is in version 0.7 uploaded to
505 unstable today.</p>
506
507 <p>I believe the current way of mapping hardware to packages in
508 Isenkram is is a good draft, but in the future I expect isenkram to
509 use the AppStream data source for this. A proposal for getting proper
510 AppStream support into Debian is floating around as
511 <a href="https://wiki.debian.org/DEP-11">DEP-11</a>, and
512 <a href="https://wiki.debian.org/SummerOfCode2014/Projects#SummerOfCode2014.2FProjects.2FAppStreamDEP11Implementation.AppStream.2FDEP-11_for_the_Debian_Archive">GSoC
513 project</a> will take place this summer to improve the situation. I
514 look forward to seeing the result, and welcome patches for isenkram to
515 start using the information when it is ready.</p>
516
517 <p>If you want your package to map to some specific hardware, either
518 add a "Xb-Modaliases" header to your control file like I did in
519 <a href="http://packages.qa.debian.org/pymissile">the pymissile
520 package</a> or submit a bug report with the details to the isenkram
521 package. See also
522 <a href="http://people.skolelinux.org/pere/blog/tags/isenkram/">all my
523 blog posts tagged isenkram</a> for details on the notation. I expect
524 the information will be migrated to AppStream eventually, but for the
525 moment I got no better place to store it.</p>
526 </div>
527 <div class="tags">
528
529
530 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram</a>.
531
532
533 </div>
534 </div>
535 <div class="padding"></div>
536
537 <div class="entry">
538 <div class="title"><a href="http://people.skolelinux.org/pere/blog/FreedomBox_milestone___all_packages_now_in_Debian_Sid.html">FreedomBox milestone - all packages now in Debian Sid</a></div>
539 <div class="date">15th April 2014</div>
540 <div class="body"><p>The <a href="https://wiki.debian.org/FreedomBox">Freedombox
541 project</a> is working on providing the software and hardware to make
542 it easy for non-technical people to host their data and communication
543 at home, and being able to communicate with their friends and family
544 encrypted and away from prying eyes. It is still going strong, and
545 today a major mile stone was reached.</p>
546
547 <p>Today, the last of the packages currently used by the project to
548 created the system images were accepted into Debian Unstable. It was
549 the freedombox-setup package, which is used to configure the images
550 during build and on the first boot. Now all one need to get going is
551 the build code from the freedom-maker git repository and packages from
552 Debian. And once the freedombox-setup package enter testing, we can
553 build everything directly from Debian. :)</p>
554
555 <p>Some key packages used by Freedombox are
556 <a href="http://packages.qa.debian.org/freedombox-setup">freedombox-setup</a>,
557 <a href="http://packages.qa.debian.org/plinth">plinth</a>,
558 <a href="http://packages.qa.debian.org/pagekite">pagekite</a>,
559 <a href="http://packages.qa.debian.org/tor">tor</a>,
560 <a href="http://packages.qa.debian.org/privoxy">privoxy</a>,
561 <a href="http://packages.qa.debian.org/owncloud">owncloud</a> and
562 <a href="http://packages.qa.debian.org/dnsmasq">dnsmasq</a>. There
563 are plans to integrate more packages into the setup. User
564 documentation is maintained on the Debian wiki. Please
565 <a href="https://wiki.debian.org/FreedomBox/Manual/Jessie">check out
566 the manual</a> and help us improve it.</p>
567
568 <p>To test for yourself and create boot images with the FreedomBox
569 setup, run this on a Debian machine using a user with sudo rights to
570 become root:</p>
571
572 <p><pre>
573 sudo apt-get install git vmdebootstrap mercurial python-docutils \
574 mktorrent extlinux virtualbox qemu-user-static binfmt-support \
575 u-boot-tools
576 git clone http://anonscm.debian.org/git/freedombox/freedom-maker.git \
577 freedom-maker
578 make -C freedom-maker dreamplug-image raspberry-image virtualbox-image
579 </pre></p>
580
581 <p>Root access is needed to run debootstrap and mount loopback
582 devices. See the README in the freedom-maker git repo for more
583 details on the build. If you do not want all three images, trim the
584 make line. Note that the virtualbox-image target is not really
585 virtualbox specific. It create a x86 image usable in kvm, qemu,
586 vmware and any other x86 virtual machine environment. You might need
587 the version of vmdebootstrap in Jessie to get the build working, as it
588 include fixes for a race condition with kpartx.</p>
589
590 <p>If you instead want to install using a Debian CD and the preseed
591 method, boot a Debian Wheezy ISO and use this boot argument to load
592 the preseed values:</p>
593
594 <p><pre>
595 url=<a href="http://www.reinholdtsen.name/freedombox/preseed-jessie.dat">http://www.reinholdtsen.name/freedombox/preseed-jessie.dat</a>
596 </pre></p>
597
598 <p>I have not tested it myself the last few weeks, so I do not know if
599 it still work.</p>
600
601 <p>If you wonder how to help, one task you could look at is using
602 systemd as the boot system. It will become the default for Linux in
603 Jessie, so we need to make sure it is usable on the Freedombox. I did
604 a simple test a few weeks ago, and noticed dnsmasq failed to start
605 during boot when using systemd. I suspect there are other problems
606 too. :) To detect problems, there is a test suite included, which can
607 be run from the plinth web interface.</p>
608
609 <p>Give it a go and let us know how it goes on the mailing list, and help
610 us get the new release published. :) Please join us on
611 <a href="irc://irc.debian.org:6667/%23freedombox">IRC (#freedombox on
612 irc.debian.org)</a> and
613 <a href="http://lists.alioth.debian.org/mailman/listinfo/freedombox-discuss">the
614 mailing list</a> if you want to help make this vision come true.</p>
615 </div>
616 <div class="tags">
617
618
619 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet</a>, <a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance</a>, <a href="http://people.skolelinux.org/pere/blog/tags/web">web</a>.
620
621
622 </div>
623 </div>
624 <div class="padding"></div>
625
626 <div class="entry">
627 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Spr_kkoder_for_POSIX_locale_i_Norge.html">Språkkoder for POSIX locale i Norge</a></div>
628 <div class="date">11th April 2014</div>
629 <div class="body"><p>For 12 år siden, skrev jeg et lite notat om
630 <a href="http://i18n.skolelinux.no/localekoder.txt">bruk av språkkoder
631 i Norge</a>. Jeg ble nettopp minnet på dette da jeg fikk spørsmål om
632 notatet fortsatt var aktuelt, og tenkte det var greit å repetere hva
633 som fortsatt gjelder. Det jeg skrev da er fortsatt like aktuelt.</p>
634
635 <p>Når en velger språk i programmer på unix, så velger en blant mange
636 språkkoder. For språk i Norge anbefales følgende språkkoder (anbefalt
637 locale i parantes):</p>
638
639 <p><dl>
640 <dt>nb (nb_NO)</dt><dd>Bokmål i Norge</dd>
641 <dt>nn (nn_NO)</dt><dd>Nynorsk i Norge</dd>
642 <dt>se (se_NO)</dt><dd>Nordsamisk i Norge</dd>
643 </dl></p>
644
645 <p>Alle programmer som bruker andre koder bør endres.</p>
646
647 <p>Språkkoden bør brukes når .po-filer navngis og installeres. Dette
648 er ikke det samme som locale-koden. For Norsk Bokmål, så bør filene
649 være navngitt nb.po, mens locale (LANG) bør være nb_NO.</p>
650
651 <p>Hvis vi ikke får standardisert de kodene i alle programmene med
652 norske oversettelser, så er det umulig å gi LANG-variablen ett innhold
653 som fungerer for alle programmer.</p>
654
655 <p>Språkkodene er de offisielle kodene fra ISO 639, og bruken av dem i
656 forbindelse med POSIX localer er standardisert i RFC 3066 og ISO
657 15897. Denne anbefalingen er i tråd med de angitte standardene.</p>
658
659 <p>Følgende koder er eller har vært i bruk som locale-verdier for
660 "norske" språk. Disse bør unngås, og erstattes når de oppdages:</p>
661
662 <p><table>
663 <tr><td>norwegian</td><td>-> nb_NO</td></tr>
664 <tr><td>bokmål </td><td>-> nb_NO</td></tr>
665 <tr><td>bokmal </td><td>-> nb_NO</td></tr>
666 <tr><td>nynorsk </td><td>-> nn_NO</td></tr>
667 <tr><td>no </td><td>-> nb_NO</td></tr>
668 <tr><td>no_NO </td><td>-> nb_NO</td></tr>
669 <tr><td>no_NY </td><td>-> nn_NO</td></tr>
670 <tr><td>sme_NO </td><td>-> se_NO</td></tr>
671 </table></p>
672
673 <p>Merk at når det gjelder de samiske språkene, at se_NO i praksis
674 henviser til nordsamisk i Norge, mens f.eks. smj_NO henviser til
675 lulesamisk. Dette notatet er dog ikke ment å gi råd rundt samiske
676 språkkoder, der gjør
677 <a href="http://www.divvun.no/">Divvun-prosjektet</a> en bedre
678 jobb.</p>
679
680 <p><strong>Referanser:</strong></p>
681
682 <ul>
683
684 <li><a href="http://www.rfc-base.org/rfc-3066.html">RFC 3066 - Tags
685 for the Identification of Languages</a> (Erstatter RFC 1766)</li>
686
687 <li><a href="http://www.loc.gov/standards/iso639-2/langcodes.html">ISO
688 639</a> - Codes for the Representation of Names of Languages</li>
689
690 <li><a href="http://std.dkuug.dk/jtc1/sc22/wg20/docs/n897-14652w25.pdf">ISO
691 DTR 14652</a> - locale-standard Specification method for cultural
692 conventions</li>
693
694 <li><a href="http://std.dkuug.dk/jtc1/sc22/wg20/docs/n610.pdf">ISO
695 15897: Registration procedures for cultural elements (cultural
696 registry)</a>,
697 <a href="http://std.dkuug.dk/jtc1/sc22/wg20/docs/n849-15897wd6.pdf">(nytt
698 draft)</a></li>
699
700 <li><a href="http://std.dkuug.dk/jtc1/sc22/wg20/">ISO/IEC
701 JTC1/SC22/WG20</a> - Gruppen for i18n-standardisering i ISO</li>
702
703 <ul>
704 </div>
705 <div class="tags">
706
707
708 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>.
709
710
711 </div>
712 </div>
713 <div class="padding"></div>
714
715 <div class="entry">
716 <div class="title"><a href="http://people.skolelinux.org/pere/blog/S3QL__a_locally_mounted_cloud_file_system___nice_free_software.html">S3QL, a locally mounted cloud file system - nice free software</a></div>
717 <div class="date"> 9th April 2014</div>
718 <div class="body"><p>For a while now, I have been looking for a sensible offsite backup
719 solution for use at home. My requirements are simple, it must be
720 cheap and locally encrypted (in other words, I keep the encryption
721 keys, the storage provider do not have access to my private files).
722 One idea me and my friends had many years ago, before the cloud
723 storage providers showed up, was to use Google mail as storage,
724 writing a Linux block device storing blocks as emails in the mail
725 service provided by Google, and thus get heaps of free space. On top
726 of this one can add encryption, RAID and volume management to have
727 lots of (fairly slow, I admit that) cheap and encrypted storage. But
728 I never found time to implement such system. But the last few weeks I
729 have looked at a system called
730 <a href="https://bitbucket.org/nikratio/s3ql/">S3QL</a>, a locally
731 mounted network backed file system with the features I need.</p>
732
733 <p>S3QL is a fuse file system with a local cache and cloud storage,
734 handling several different storage providers, any with Amazon S3,
735 Google Drive or OpenStack API. There are heaps of such storage
736 providers. S3QL can also use a local directory as storage, which
737 combined with sshfs allow for file storage on any ssh server. S3QL
738 include support for encryption, compression, de-duplication, snapshots
739 and immutable file systems, allowing me to mount the remote storage as
740 a local mount point, look at and use the files as if they were local,
741 while the content is stored in the cloud as well. This allow me to
742 have a backup that should survive fire. The file system can not be
743 shared between several machines at the same time, as only one can
744 mount it at the time, but any machine with the encryption key and
745 access to the storage service can mount it if it is unmounted.</p>
746
747 <p>It is simple to use. I'm using it on Debian Wheezy, where the
748 package is included already. So to get started, run <tt>apt-get
749 install s3ql</tt>. Next, pick a storage provider. I ended up picking
750 Greenqloud, after reading their nice recipe on
751 <a href="https://greenqloud.zendesk.com/entries/44611757-How-To-Use-S3QL-to-mount-a-StorageQloud-bucket-on-Debian-Wheezy">how
752 to use S3QL with their Amazon S3 service</a>, because I trust the laws
753 in Iceland more than those in USA when it come to keeping my personal
754 data safe and private, and thus would rather spend money on a company
755 in Iceland. Another nice recipe is available from the article
756 <a href="http://www.admin-magazine.com/HPC/Articles/HPC-Cloud-Storage">S3QL
757 Filesystem for HPC Storage</a> by Jeff Layton in the HPC section of
758 Admin magazine. When the provider is picked, figure out how to get
759 the API key needed to connect to the storage API. With Greencloud,
760 the key did not show up until I had added payment details to my
761 account.</p>
762
763 <p>Armed with the API access details, it is time to create the file
764 system. First, create a new bucket in the cloud. This bucket is the
765 file system storage area. I picked a bucket name reflecting the
766 machine that was going to store data there, but any name will do.
767 I'll refer to it as <tt>bucket-name</tt> below. In addition, one need
768 the API login and password, and a locally created password. Store it
769 all in ~root/.s3ql/authinfo2 like this:
770
771 <p><blockquote><pre>
772 [s3c]
773 storage-url: s3c://s.greenqloud.com:443/bucket-name
774 backend-login: API-login
775 backend-password: API-password
776 fs-passphrase: local-password
777 </pre></blockquote></p>
778
779 <p>I create my local passphrase using <tt>pwget 50</tt> or similar,
780 but any sensible way to create a fairly random password should do it.
781 Armed with these details, it is now time to run mkfs, entering the API
782 details and password to create it:</p>
783
784 <p><blockquote><pre>
785 # mkdir -m 700 /var/lib/s3ql-cache
786 # mkfs.s3ql --cachedir /var/lib/s3ql-cache --authfile /root/.s3ql/authinfo2 \
787 --ssl s3c://s.greenqloud.com:443/bucket-name
788 Enter backend login:
789 Enter backend password:
790 Before using S3QL, make sure to read the user's guide, especially
791 the 'Important Rules to Avoid Loosing Data' section.
792 Enter encryption password:
793 Confirm encryption password:
794 Generating random encryption key...
795 Creating metadata tables...
796 Dumping metadata...
797 ..objects..
798 ..blocks..
799 ..inodes..
800 ..inode_blocks..
801 ..symlink_targets..
802 ..names..
803 ..contents..
804 ..ext_attributes..
805 Compressing and uploading metadata...
806 Wrote 0.00 MB of compressed metadata.
807 # </pre></blockquote></p>
808
809 <p>The next step is mounting the file system to make the storage available.
810
811 <p><blockquote><pre>
812 # mount.s3ql --cachedir /var/lib/s3ql-cache --authfile /root/.s3ql/authinfo2 \
813 --ssl --allow-root s3c://s.greenqloud.com:443/bucket-name /s3ql
814 Using 4 upload threads.
815 Downloading and decompressing metadata...
816 Reading metadata...
817 ..objects..
818 ..blocks..
819 ..inodes..
820 ..inode_blocks..
821 ..symlink_targets..
822 ..names..
823 ..contents..
824 ..ext_attributes..
825 Mounting filesystem...
826 # df -h /s3ql
827 Filesystem Size Used Avail Use% Mounted on
828 s3c://s.greenqloud.com:443/bucket-name 1.0T 0 1.0T 0% /s3ql
829 #
830 </pre></blockquote></p>
831
832 <p>The file system is now ready for use. I use rsync to store my
833 backups in it, and as the metadata used by rsync is downloaded at
834 mount time, no network traffic (and storage cost) is triggered by
835 running rsync. To unmount, one should not use the normal umount
836 command, as this will not flush the cache to the cloud storage, but
837 instead running the umount.s3ql command like this:
838
839 <p><blockquote><pre>
840 # umount.s3ql /s3ql
841 #
842 </pre></blockquote></p>
843
844 <p>There is a fsck command available to check the file system and
845 correct any problems detected. This can be used if the local server
846 crashes while the file system is mounted, to reset the "already
847 mounted" flag. This is what it look like when processing a working
848 file system:</p>
849
850 <p><blockquote><pre>
851 # fsck.s3ql --force --ssl s3c://s.greenqloud.com:443/bucket-name
852 Using cached metadata.
853 File system seems clean, checking anyway.
854 Checking DB integrity...
855 Creating temporary extra indices...
856 Checking lost+found...
857 Checking cached objects...
858 Checking names (refcounts)...
859 Checking contents (names)...
860 Checking contents (inodes)...
861 Checking contents (parent inodes)...
862 Checking objects (reference counts)...
863 Checking objects (backend)...
864 ..processed 5000 objects so far..
865 ..processed 10000 objects so far..
866 ..processed 15000 objects so far..
867 Checking objects (sizes)...
868 Checking blocks (referenced objects)...
869 Checking blocks (refcounts)...
870 Checking inode-block mapping (blocks)...
871 Checking inode-block mapping (inodes)...
872 Checking inodes (refcounts)...
873 Checking inodes (sizes)...
874 Checking extended attributes (names)...
875 Checking extended attributes (inodes)...
876 Checking symlinks (inodes)...
877 Checking directory reachability...
878 Checking unix conventions...
879 Checking referential integrity...
880 Dropping temporary indices...
881 Backing up old metadata...
882 Dumping metadata...
883 ..objects..
884 ..blocks..
885 ..inodes..
886 ..inode_blocks..
887 ..symlink_targets..
888 ..names..
889 ..contents..
890 ..ext_attributes..
891 Compressing and uploading metadata...
892 Wrote 0.89 MB of compressed metadata.
893 #
894 </pre></blockquote></p>
895
896 <p>Thanks to the cache, working on files that fit in the cache is very
897 quick, about the same speed as local file access. Uploading large
898 amount of data is to me limited by the bandwidth out of and into my
899 house. Uploading 685 MiB with a 100 MiB cache gave me 305 kiB/s,
900 which is very close to my upload speed, and downloading the same
901 Debian installation ISO gave me 610 kiB/s, close to my download speed.
902 Both were measured using <tt>dd</tt>. So for me, the bottleneck is my
903 network, not the file system code. I do not know what a good cache
904 size would be, but suspect that the cache should e larger than your
905 working set.</p>
906
907 <p>I mentioned that only one machine can mount the file system at the
908 time. If another machine try, it is told that the file system is
909 busy:</p>
910
911 <p><blockquote><pre>
912 # mount.s3ql --cachedir /var/lib/s3ql-cache --authfile /root/.s3ql/authinfo2 \
913 --ssl --allow-root s3c://s.greenqloud.com:443/bucket-name /s3ql
914 Using 8 upload threads.
915 Backend reports that fs is still mounted elsewhere, aborting.
916 #
917 </pre></blockquote></p>
918
919 <p>The file content is uploaded when the cache is full, while the
920 metadata is uploaded once every 24 hour by default. To ensure the
921 file system content is flushed to the cloud, one can either umount the
922 file system, or ask S3QL to flush the cache and metadata using
923 s3qlctrl:
924
925 <p><blockquote><pre>
926 # s3qlctrl upload-meta /s3ql
927 # s3qlctrl flushcache /s3ql
928 #
929 </pre></blockquote></p>
930
931 <p>If you are curious about how much space your data uses in the
932 cloud, and how much compression and deduplication cut down on the
933 storage usage, you can use s3qlstat on the mounted file system to get
934 a report:</p>
935
936 <p><blockquote><pre>
937 # s3qlstat /s3ql
938 Directory entries: 9141
939 Inodes: 9143
940 Data blocks: 8851
941 Total data size: 22049.38 MB
942 After de-duplication: 21955.46 MB (99.57% of total)
943 After compression: 21877.28 MB (99.22% of total, 99.64% of de-duplicated)
944 Database size: 2.39 MB (uncompressed)
945 (some values do not take into account not-yet-uploaded dirty blocks in cache)
946 #
947 </pre></blockquote></p>
948
949 <p>I mentioned earlier that there are several possible suppliers of
950 storage. I did not try to locate them all, but am aware of at least
951 <a href="https://www.greenqloud.com/">Greenqloud</a>,
952 <a href="http://drive.google.com/">Google Drive</a>,
953 <a href="http://aws.amazon.com/s3/">Amazon S3 web serivces</a>,
954 <a href="http://www.rackspace.com/">Rackspace</a> and
955 <a href="http://crowncloud.net/">Crowncloud</A>. The latter even
956 accept payment in Bitcoin. Pick one that suit your need. Some of
957 them provide several GiB of free storage, but the prize models are
958 quite different and you will have to figure out what suits you
959 best.</p>
960
961 <p>While researching this blog post, I had a look at research papers
962 and posters discussing the S3QL file system. There are several, which
963 told me that the file system is getting a critical check by the
964 science community and increased my confidence in using it. One nice
965 poster is titled
966 "<a href="http://www.lanl.gov/orgs/adtsc/publications/science_highlights_2013/docs/pg68_69.pdf">An
967 Innovative Parallel Cloud Storage System using OpenStack’s SwiftObject
968 Store and Transformative Parallel I/O Approach</a>" by Hsing-Bung
969 Chen, Benjamin McClelland, David Sherrill, Alfred Torrez, Parks Fields
970 and Pamela Smith. Please have a look.</p>
971
972 <p>Given my problems with different file systems earlier, I decided to
973 check out the mounted S3QL file system to see if it would be usable as
974 a home directory (in other word, that it provided POSIX semantics when
975 it come to locking and umask handling etc). Running
976 <a href="http://people.skolelinux.org/pere/blog/Testing_if_a_file_system_can_be_used_for_home_directories___.html">my
977 test code to check file system semantics</a>, I was happy to discover that
978 no error was found. So the file system can be used for home
979 directories, if one chooses to do so.</p>
980
981 <p>If you do not want a locally file system, and want something that
982 work without the Linux fuse file system, I would like to mention the
983 <a href="http://www.tarsnap.com/">Tarsnap service</a>, which also
984 provide locally encrypted backup using a command line client. It have
985 a nicer access control system, where one can split out read and write
986 access, allowing some systems to write to the backup and others to
987 only read from it.</p>
988
989 <p>As usual, if you use Bitcoin and want to show your support of my
990 activities, please send Bitcoin donations to my address
991 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&label=PetterReinholdtsenBlog">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
992 </div>
993 <div class="tags">
994
995
996 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet</a>.
997
998
999 </div>
1000 </div>
1001 <div class="padding"></div>
1002
1003 <p style="text-align: right;"><a href="index.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS feed" width="36" height="14" /></a></p>
1004 <div id="sidebar">
1005
1006
1007
1008 <h2>Archive</h2>
1009 <ul>
1010
1011 <li>2014
1012 <ul>
1013
1014 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
1015
1016 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
1017
1018 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
1019
1020 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/04/">April (7)</a></li>
1021
1022 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/05/">May (1)</a></li>
1023
1024 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/06/">June (2)</a></li>
1025
1026 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/07/">July (2)</a></li>
1027
1028 </ul></li>
1029
1030 <li>2013
1031 <ul>
1032
1033 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
1034
1035 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
1036
1037 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
1038
1039 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
1040
1041 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
1042
1043 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
1044
1045 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
1046
1047 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
1048
1049 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
1050
1051 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
1052
1053 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
1054
1055 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
1056
1057 </ul></li>
1058
1059 <li>2012
1060 <ul>
1061
1062 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
1063
1064 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
1065
1066 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
1067
1068 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
1069
1070 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
1071
1072 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
1073
1074 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
1075
1076 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
1077
1078 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
1079
1080 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
1081
1082 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
1083
1084 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
1085
1086 </ul></li>
1087
1088 <li>2011
1089 <ul>
1090
1091 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
1092
1093 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
1094
1095 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
1096
1097 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
1098
1099 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
1100
1101 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
1102
1103 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
1104
1105 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
1106
1107 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
1108
1109 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
1110
1111 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
1112
1113 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
1114
1115 </ul></li>
1116
1117 <li>2010
1118 <ul>
1119
1120 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
1121
1122 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
1123
1124 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
1125
1126 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
1127
1128 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
1129
1130 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
1131
1132 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
1133
1134 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
1135
1136 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
1137
1138 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
1139
1140 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
1141
1142 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
1143
1144 </ul></li>
1145
1146 <li>2009
1147 <ul>
1148
1149 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
1150
1151 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
1152
1153 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
1154
1155 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
1156
1157 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
1158
1159 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
1160
1161 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
1162
1163 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
1164
1165 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
1166
1167 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
1168
1169 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
1170
1171 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
1172
1173 </ul></li>
1174
1175 <li>2008
1176 <ul>
1177
1178 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
1179
1180 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
1181
1182 </ul></li>
1183
1184 </ul>
1185
1186
1187
1188 <h2>Tags</h2>
1189 <ul>
1190
1191 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (13)</a></li>
1192
1193 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
1194
1195 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
1196
1197 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
1198
1199 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (8)</a></li>
1200
1201 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (14)</a></li>
1202
1203 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
1204
1205 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
1206
1207 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (99)</a></li>
1208
1209 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (148)</a></li>
1210
1211 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (10)</a></li>
1212
1213 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld">dld (15)</a></li>
1214
1215 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (12)</a></li>
1216
1217 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
1218
1219 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (250)</a></li>
1220
1221 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (21)</a></li>
1222
1223 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (12)</a></li>
1224
1225 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (13)</a></li>
1226
1227 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (8)</a></li>
1228
1229 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (11)</a></li>
1230
1231 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (41)</a></li>
1232
1233 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (9)</a></li>
1234
1235 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (18)</a></li>
1236
1237 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
1238
1239 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (7)</a></li>
1240
1241 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
1242
1243 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
1244
1245 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (28)</a></li>
1246
1247 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (246)</a></li>
1248
1249 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (162)</a></li>
1250
1251 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (11)</a></li>
1252
1253 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
1254
1255 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (46)</a></li>
1256
1257 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (72)</a></li>
1258
1259 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (1)</a></li>
1260
1261 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
1262
1263 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
1264
1265 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (2)</a></li>
1266
1267 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (9)</a></li>
1268
1269 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
1270
1271 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (4)</a></li>
1272
1273 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
1274
1275 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (40)</a></li>
1276
1277 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
1278
1279 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (4)</a></li>
1280
1281 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (44)</a></li>
1282
1283 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (3)</a></li>
1284
1285 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (9)</a></li>
1286
1287 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (25)</a></li>
1288
1289 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (1)</a></li>
1290
1291 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (8)</a></li>
1292
1293 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (42)</a></li>
1294
1295 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
1296
1297 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (32)</a></li>
1298
1299 </ul>
1300
1301
1302 </div>
1303 <p style="text-align: right">
1304 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
1305 </p>
1306
1307 </body>
1308 </html>