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