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">
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" />
14 <a href=
"http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen
</a>
23 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/E_tjenesten_ber_om_innsyn_i_eposten_til_partiene_p__Stortinget.html">E-tjenesten ber om innsyn i eposten til partiene på Stortinget
</a></div>
24 <div class=
"date"> 6th September
2016</div>
25 <div class=
"body"><p>I helga kom det et hårreisende forslag fra Lysne II-utvalget satt
26 ned av Forsvarsdepartementet. Lysne II-utvalget var bedt om å vurdere
27 ønskelista til Forsvarets etterretningstjeneste (e-tjenesten), og har
29 <a href=
"http://www.aftenposten.no/norge/Utvalg-sier-ja-til-at-E-tjenesten-far-overvake-innholdet-i-all-internett--og-telefontrafikk-som-krysser-riksgrensen-603232b.html">forslag
30 om at e-tjenesten skal få lov til a avlytte all Internett-trafikk
</a>
31 som passerer Norges grenser. Få er klar over at dette innebærer at
32 e-tjenesten får tilgang til epost sendt til de fleste politiske
33 partiene på Stortinget. Regjeringspartiet Høyre (@hoyre.no),
34 støttepartiene Venstre (@venstre.no) og Kristelig Folkeparti (@krf.no)
35 samt Sosialistisk Ventreparti (@sv.no) og Miljøpartiet de grønne
36 (@mdg.no) har nemlig alle valgt å ta imot eposten sin via utenlandske
37 tjenester. Det betyr at hvis noen sender epost til noen med en slik
38 adresse vil innholdet i eposten om dette forslaget blir vedtatt gjøres
39 tilgjengelig for e-tjenesten. Venstre, Sosialistisk Ventreparti og
40 Miljøpartiet De Grønne har valgt å motta sin epost hos Google,
41 Kristelig Folkeparti har valgt å motta sin epost hos Microsoft, og
42 Høyre har valgt å motta sin epost hos Comendo med mottak i Danmark og
43 Irland. Kun Arbeiderpartiet og Fremskrittspartiet har valgt å motta
44 eposten sin i Norge, hos henholdsvis Intility AS og Telecomputing
47 <p>Konsekvensen er at epost inn og ut av de politiske organisasjonene,
48 til og fra partimedlemmer og partiets tillitsvalgte vil gjøres
49 tilgjengelig for e-tjenesten for analyse og sortering. Jeg mistenker
50 at kunnskapen som slik blir tilgjengelig vil være nyttig hvis en
51 ønsker å vite hvilke argumenter som treffer publikum når en ønsker å
52 påvirke Stortingets representanter.
</p
54 <p>Ved hjelp av MX-oppslag i DNS for epost-domene, tilhørende
55 whois-oppslag av IP-adressene og traceroute for å se hvorvidt
56 trafikken går via utlandet kan enhver få bekreftet at epost sendt til
57 de omtalte partiene vil gjøres tilgjengelig for forsvarets
58 etterretningstjeneste hvis forslaget blir vedtatt. En kan også bruke
59 den kjekke nett-tjenesten
<a href=
"http://ipinfo.io/">ipinfo.io
</a>
60 for å få en ide om hvor i verden en IP-adresse hører til.
</p>
62 <p>På den positive siden vil forslaget gjøre at enda flere blir
63 motivert til å ta grep for å bruke
64 <a href=
"https://www.torproject.org/">Tor
</a> og krypterte
65 kommunikasjonsløsninger for å kommunisere med sine kjære, for å sikre
66 at privatsfæren vernes. Selv bruker jeg blant annet
67 <a href=
"https://www.freedomboxfoundation.org/">FreedomBox
</a> og
68 <a href=
"https://whispersystems.org/">Signal
</a> til slikt. Ingen av
69 dem er optimale, men de fungerer ganske bra allerede og øker kostnaden
70 for dem som ønsker å invadere mitt privatliv.
</p>
75 venstre.no mail is handled by 10 aspmx.l.google.com.
76 venstre.no mail is handled by 20 alt1.aspmx.l.google.com.
77 venstre.no mail is handled by 20 alt2.aspmx.l.google.com.
78 venstre.no mail is handled by 30 aspmx2.googlemail.com.
79 venstre.no mail is handled by 30 aspmx3.googlemail.com.
81 traceroute to aspmx.l.google.com (173.194.222.27), 30 hops max, 60 byte packets
82 1 uio-gw10.uio.no (129.240.6.1) 0.411 ms 0.438 ms 0.536 ms
83 2 uio-gw8.uio.no (129.240.24.229) 0.375 ms 0.452 ms 0.548 ms
84 3 oslo-gw1.uninett.no (128.39.65.17) 1.940 ms 1.950 ms 1.942 ms
85 4 se-tug.nordu.net (109.105.102.108) 6.910 ms 6.949 ms 7.283 ms
86 5 google-gw.nordu.net (109.105.98.6) 6.975 ms 6.967 ms 6.958 ms
87 6 209.85.250.192 (209.85.250.192) 7.337 ms 7.286 ms 10.890 ms
88 7 209.85.254.13 (209.85.254.13) 7.394 ms 209.85.254.31 (209.85.254.31) 7.586 ms 209.85.254.33 (209.85.254.33) 7.570 ms
89 8 209.85.251.255 (209.85.251.255) 15.686 ms 209.85.249.229 (209.85.249.229) 16.118 ms 209.85.251.255 (209.85.251.255) 16.073 ms
90 9 74.125.37.255 (74.125.37.255) 16.794 ms 216.239.40.248 (216.239.40.248) 16.113 ms 74.125.37.44 (74.125.37.44) 16.764 ms
94 mdg.no mail is handled by 1 aspmx.l.google.com.
95 mdg.no mail is handled by 5 alt2.aspmx.l.google.com.
96 mdg.no mail is handled by 5 alt1.aspmx.l.google.com.
97 mdg.no mail is handled by 10 aspmx2.googlemail.com.
98 mdg.no mail is handled by 10 aspmx3.googlemail.com.
100 sv.no mail is handled by 1 aspmx.l.google.com.
101 sv.no mail is handled by 5 alt1.aspmx.l.google.com.
102 sv.no mail is handled by 5 alt2.aspmx.l.google.com.
103 sv.no mail is handled by 10 aspmx3.googlemail.com.
104 sv.no mail is handled by 10 aspmx2.googlemail.com.
106 hoyre.no mail is handled by 10 hoyre-no.mx1.comendosystems.com.
107 hoyre.no mail is handled by 20 hoyre-no.mx2.comendosystems.net.
109 traceroute to hoyre-no.mx1.comendosystems.com (89.104.206.4), 30 hops max, 60 byte packets
110 1 uio-gw10.uio.no (129.240.6.1) 0.450 ms 0.510 ms 0.591 ms
111 2 uio-gw8.uio.no (129.240.24.229) 0.383 ms 0.508 ms 0.596 ms
112 3 oslo-gw1.uninett.no (128.39.65.17) 0.311 ms 0.315 ms 0.300 ms
113 4 se-tug.nordu.net (109.105.102.108) 6.837 ms 6.842 ms 6.834 ms
114 5 dk-uni.nordu.net (109.105.97.10) 26.073 ms 26.085 ms 26.076 ms
115 6 dix.1000m.soeborg.ip.comendo.dk (192.38.7.22) 15.372 ms 15.046 ms 15.123 ms
116 7 89.104.192.65 (89.104.192.65) 15.875 ms 15.990 ms 16.239 ms
117 8 89.104.192.179 (89.104.192.179) 15.676 ms 15.674 ms 15.664 ms
118 9 03dm-com.mx1.staysecuregroup.com (89.104.206.4) 15.637 ms * *
121 krf.no mail is handled by 10 krf-no.mail.protection.outlook.com.
123 traceroute to krf-no.mail.protection.outlook.com (213.199.154.42), 30 hops max, 60 byte packets
124 1 uio-gw10.uio.no (129.240.6.1) 0.401 ms 0.438 ms 0.536 ms
125 2 uio-gw8.uio.no (129.240.24.229) 11.076 ms 11.120 ms 11.204 ms
126 3 oslo-gw1.uninett.no (128.39.65.17) 0.232 ms 0.234 ms 0.271 ms
127 4 se-tug.nordu.net (109.105.102.108) 6.811 ms 6.820 ms 6.815 ms
128 5 netnod-ix-ge-a-sth-4470.microsoft.com (195.245.240.181) 7.074 ms 7.013 ms 7.061 ms
129 6 ae1-0.sto-96cbe-1b.ntwk.msn.net (104.44.225.161) 7.227 ms 7.362 ms 7.293 ms
130 7 be-8-0.ibr01.ams.ntwk.msn.net (104.44.5.7) 41.993 ms 43.334 ms 41.939 ms
131 8 be-1-0.ibr02.ams.ntwk.msn.net (104.44.4.214) 43.153 ms 43.507 ms 43.404 ms
132 9 ae3-0.fra-96cbe-1b.ntwk.msn.net (104.44.5.17) 29.897 ms 29.831 ms 29.794 ms
133 10 ae10-0.vie-96cbe-1a.ntwk.msn.net (198.206.164.1) 42.309 ms 42.130 ms 41.808 ms
134 11 * ae8-0.vie-96cbe-1b.ntwk.msn.net (104.44.227.29) 41.425 ms *
138 arbeiderpartiet.no mail is handled by 10 mail.intility.com.
139 arbeiderpartiet.no mail is handled by 20 mail2.intility.com.
141 traceroute to mail.intility.com (188.95.245.87), 30 hops max, 60 byte packets
142 1 uio-gw10.uio.no (129.240.6.1) 0.486 ms 0.508 ms 0.649 ms
143 2 uio-gw8.uio.no (129.240.24.229) 0.416 ms 0.508 ms 0.620 ms
144 3 oslo-gw1.uninett.no (128.39.65.17) 0.276 ms 0.278 ms 0.275 ms
145 4 te3-1-2.br1.fn3.as2116.net (193.156.90.3) 0.374 ms 0.371 ms 0.416 ms
146 5 he16-1-1.cr1.san110.as2116.net (195.0.244.234) 3.132 ms he16-1-1.cr2.oslosda310.as2116.net (195.0.244.48) 10.079 ms he16-1-1.cr1.san110.as2116.net (195.0.244.234) 3.353 ms
147 6 te1-2-0.ar2.ulv89.as2116.net (195.0.243.194) 0.569 ms te5-0-0.ar2.ulv89.as2116.net (195.0.243.192) 0.661 ms 0.653 ms
148 7 cD2EC45C1.static.as2116.net (193.69.236.210) 0.654 ms 0.615 ms 0.590 ms
149 8 185.7.132.38 (185.7.132.38) 1.661 ms 1.808 ms 1.695 ms
150 9 185.7.132.100 (185.7.132.100) 1.793 ms 1.943 ms 1.546 ms
154 frp.no mail is handled by 10 mx03.telecomputing.no.
155 frp.no mail is handled by 20 mx01.telecomputing.no.
157 traceroute to mx03.telecomputing.no (95.128.105.102), 30 hops max, 60 byte packets
158 1 uio-gw10.uio.no (129.240.6.1) 0.378 ms 0.402 ms 0.479 ms
159 2 uio-gw8.uio.no (129.240.24.229) 0.361 ms 0.458 ms 0.548 ms
160 3 oslo-gw1.uninett.no (128.39.65.17) 0.361 ms 0.352 ms 0.336 ms
161 4 xe-2-2-0-0.san-peer2.osl.no.ip.tdc.net (193.156.90.16) 0.375 ms 0.366 ms 0.346 ms
162 5 xe-2-0-2-0.ost-pe1.osl.no.ip.tdc.net (85.19.121.97) 0.780 ms xe-2-0-0-0.ost-pe1.osl.no.ip.tdc.net (85.19.121.101) 0.713 ms xe-2-0-2-0.ost-pe1.osl.no.ip.tdc.net (85.19.121.97) 0.759 ms
163 6 cpe.xe-0-2-0-100.ost-pe1.osl.no.customer.tdc.net (85.19.26.46) 0.837 ms 0.755 ms 0.759 ms
164 7 95.128.105.3 (95.128.105.3) 1.050 ms 1.288 ms 1.182 ms
165 8 mx03.telecomputing.no (95.128.105.102) 0.717 ms 0.703 ms 0.692 ms
172 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance
</a>.
177 <div class=
"padding"></div>
180 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/First_draft_Norwegian_Bokm_l_edition_of_The_Debian_Administrator_s_Handbook_now_public.html">First draft Norwegian Bokmål edition of The Debian Administrator's Handbook now public
</a></div>
181 <div class=
"date">30th August
2016</div>
182 <div class=
"body"><p>In April we
183 <a href=
"http://people.skolelinux.org/pere/blog/Lets_make_a_Norwegian_Bokm_l_edition_of_The_Debian_Administrator_s_Handbook.html">started
184 to work
</a> on a Norwegian Bokmål edition of the "open access" book on
185 how to set up and administrate a Debian system. Today I am happy to
186 report that the first draft is now publicly available. You can find
187 it on
<a href=
"https://debian-handbook.info/get/">get the Debian
188 Administrator's Handbook page
</a> (under Other languages). The first
189 eight chapters have a first draft translation, and we are working on
190 proofreading the content. If you want to help out, please start
192 <a href=
"https://hosted.weblate.org/projects/debian-handbook/">the
193 hosted weblate project page
</a>, and get in touch using
194 <a href=
"http://lists.alioth.debian.org/mailman/listinfo/debian-handbook-translators">the
195 translators mailing list
</a>. Please also check out
196 <a href=
"https://debian-handbook.info/contribute/">the instructions for
197 contributors
</a>. A good way to contribute is to proofread the text
198 and update weblate if you find errors.
</p>
200 <p>Our goal is still to make the Norwegian book available on paper as well as
206 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>.
211 <div class=
"padding"></div>
214 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Coz_can_help_you_find_bottlenecks_in_multi_threaded_software___nice_free_software.html">Coz can help you find bottlenecks in multi-threaded software - nice free software
</a></div>
215 <div class=
"date">11th August
2016</div>
216 <div class=
"body"><p>This summer, I read a great article
217 "
<a href=
"https://www.usenix.org/publications/login/summer2016/curtsinger">coz:
218 This Is the Profiler You're Looking For
</a>" in USENIX ;login: about
219 how to profile multi-threaded programs. It presented a system for
220 profiling software by running experiences in the running program,
221 testing how run time performance is affected by "speeding up
" parts of
222 the code to various degrees compared to a normal run. It does this by
223 slowing down parallel threads while the "faster up
" code is running
224 and measure how this affect processing time. The processing time is
225 measured using probes inserted into the code, either using progress
226 counters (COZ_PROGRESS) or as latency meters (COZ_BEGIN/COZ_END). It
227 can also measure unmodified code by measuring complete the program
228 runtime and running the program several times instead.</p>
230 <p>The project and presentation was so inspiring that I would like to
231 get the system into Debian. I
232 <a href="https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=
830708">created
233 a WNPP request for it</a> and contacted upstream to try to make the
234 system ready for Debian by sending patches. The build process need to
235 be changed a bit to avoid running 'git clone' to get dependencies, and
236 to include the JavaScript web page used to visualize the collected
237 profiling information included in the source package.
238 But I expect that should work out fairly soon.</p>
240 <p>The way the system work is fairly simple. To run an coz experiment
241 on a binary with debug symbols available, start the program like this:
244 coz run --- program-to-run
245 </pre></blockquote></p>
247 <p>This will create a text file profile.coz with the instrumentation
248 information. To show what part of the code affect the performance
249 most, use a web browser and either point it to
250 <a href="http://plasma-umass.github.io/coz/
">http://plasma-umass.github.io/coz/</a>
251 or use the copy from git (in the gh-pages branch). Check out this web
252 site to have a look at several example profiling runs and get an idea what the end result from the profile runs look like. To make the
253 profiling more useful you include <coz.h> and insert the
254 COZ_PROGRESS or COZ_BEGIN and COZ_END at appropriate places in the
255 code, rebuild and run the profiler. This allow coz to do more
256 targeted experiments.</p>
258 <p>A video published by ACM
259 <a href="https://www.youtube.com/watch?v=jE0V-p1odPg
">presenting the
260 Coz profiler</a> is available from Youtube. There is also a paper
261 from the 25th Symposium on Operating Systems Principles available
263 <a href="https://www.usenix.org/conference/atc16/technical-sessions/presentation/curtsinger
">Coz:
264 finding code that counts with causal profiling</a>.</p>
266 <p><a href="https://github.com/plasma-umass/coz
">The source code</a>
267 for Coz is available from github. It will only build with clang
269 <a href="https://gcc.gnu.org/bugzilla/show_bug.cgi?id=
55606">C++
270 feature missing in GCC</a>, but I've submitted
271 <a href="https://github.com/plasma-umass/coz/pull/
67">a patch to solve
272 it</a> and hope it will be included in the upstream source soon.</p>
274 <p>Please get in touch if you, like me, would like to see this piece
275 of software in Debian. I would very much like some help with the
276 packaging effort, as I lack the in depth knowledge on how to package
282 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/nice free software
">nice free software</a>.
287 <div class="padding
"></div>
290 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/Sales_number_for_the_Free_Culture_translation__first_half_of_2016.html
">Sales number for the Free Culture translation, first half of 2016</a></div>
291 <div class="date
"> 5th August 2016</div>
292 <div class="body
"><p>As my regular readers probably remember, the last year I published
293 a French and Norwegian translation of the classic
294 <a href="http://www.free-culture.cc/
">Free Culture book</a> by the
295 founder of the Creative Commons movement, Lawrence Lessig. A bit less
296 known is the fact that due to the way I created the translations,
297 using docbook and po4a, I also recreated the English original. And
298 because I already had created a new the PDF edition, I published it
299 too. The revenue from the books are sent to the Creative Commons
300 Corporation. In other words, I do not earn any money from this
301 project, I just earn the warm fuzzy feeling that the text is available
302 for a wider audience and more people can learn why the Creative
303 Commons is needed.</p>
305 <p>Today, just for fun, I had a look at the sales number over at
306 Lulu.com, which take care of payment, printing and shipping. Much to
307 my surprise, the English edition is selling better than both the
308 French and Norwegian edition, despite the fact that it has been
309 available in English since it was first published. In total, 24 paper
310 books was sold for USD $19.99 between 2016-01-01 and 2016-07-31:</p>
313 <tr><th>Title / language</th><th>Quantity</th></tr>
314 <tr><td><a href="http://www.lulu.com/shop/lawrence-lessig/culture-libre/paperback/product-
22645082.html
">Culture Libre / French</a></td><td align="right
">3</td></tr>
315 <tr><td><a href="http://www.lulu.com/shop/lawrence-lessig/fri-kultur/paperback/product-
22441576.html
">Fri kultur / Norwegian</a></td><td align="right
">7</td></tr>
316 <tr><td><a href="http://www.lulu.com/shop/lawrence-lessig/free-culture/paperback/product-
22440520.html
">Free Culture / English</a></td><td align="right
">14</td></tr>
319 <p>The books are available both from Lulu.com and from large book
320 stores like Amazon and Barnes&Noble. Most revenue, around $10 per
321 book, is sent to the Creative Commons project when the book is sold
322 directly by Lulu.com. The other channels give less revenue. The
323 summary from Lulu tell me 10 books was sold via the Amazon channel, 10
324 via Ingram (what is this?) and 4 directly by Lulu. And Lulu.com tells
325 me that the revenue sent so far this year is USD $101.42. No idea
326 what kind of sales numbers to expect, so I do not know if that is a
327 good amount of sales for a 10 year old book or not. But it make me
328 happy that the buyers find the book, and I hope they enjoy reading it
329 as much as I did.</p>
331 <p>The ebook edition is available for free from
332 <a href="https://github.com/petterreinholdtsen/free-culture-lessig
">Github</a>.</p>
334 <p>If you would like to translate and publish the book in your native
335 language, I would be happy to help make it happen. Please get in
341 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>.
346 <div class="padding
"></div>
349 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/Vitenskapen_tar_som_vanlig_feil_igjen___relativt_feil.html
">Vitenskapen tar som vanlig feil igjen - relativt feil</a></div>
350 <div class="date
"> 1st August 2016</div>
351 <div class="body
"><p>For mange år siden leste jeg en klassisk tekst som gjorde såpass
352 inntrykk på meg at jeg husker den fortsatt, flere år senere, og bruker
353 argumentene fra den stadig vekk. Teksten var «The Relativity of
354 Wrong» som Isaac Asimov publiserte i Skeptical Inquirer i 1989. Den
355 gir litt perspektiv rundt formidlingen av vitenskapelige resultater.
356 Jeg har hatt lyst til å kunne dele den også med folk som ikke
357 behersker engelsk så godt, som barn og noen av mine eldre slektninger,
358 og har savnet å ha den tilgjengelig på norsk. For to uker siden tok
359 jeg meg sammen og kontaktet Asbjørn Dyrendal i foreningen Skepsis om
360 de var interessert i å publisere en norsk utgave på bloggen sin, og da
361 han var positiv tok jeg kontakt med Skeptical Inquirer og spurte om
362 det var greit for dem. I løpet av noen dager fikk vi tilbakemelding
363 fra Barry Karr hos The Skeptical Inquirer som hadde sjekket og fått OK
364 fra Robyn Asimov som representerte arvingene i Asmiov-familien og gikk
365 igang med oversettingen.</p>
367 <p>Resultatet, <a href="http://www.skepsis.no/?p=
1617">«Relativt
368 feil»</a>, ble publisert på skepsis-bloggen for noen minutter siden.
369 Jeg anbefaler deg på det varmeste å lese denne teksten og dele den med
372 <p>For å håndtere oversettelsen og sikre at original og oversettelse
373 var i sync brukte vi git, po4a, GNU make og Transifex. Det hele
374 fungerte utmerket og gjorde det enkelt å dele tekstene og jobbe sammen
375 om finpuss på formuleringene. Hadde hosted.weblate.org latt meg
376 opprette nye prosjekter selv i stedet for å måtte kontakte
377 administratoren der, så hadde jeg brukt weblate i stedet.</p>
382 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/norsk
">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/skepsis
">skepsis</a>.
387 <div class="padding
"></div>
390 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/Techno_TV_broadcasting_live_across_Norway_and_the_Internet___debconf16___nuug__on__frikanalen.html
">Techno TV broadcasting live across Norway and the Internet (#debconf16, #nuug) on @frikanalen</a></div>
391 <div class="date
"> 1st August 2016</div>
392 <div class="body
"><p>Did you know there is a TV channel broadcasting talks from DebConf
393 16 across an entire country? Or that there is a TV channel
394 broadcasting talks by or about
395 <a href="http://beta.frikanalen.no/video/
625529/
">Linus Torvalds</a>,
396 <a href="http://beta.frikanalen.no/video/
625599/
">Tor</a>,
397 <a href="http://beta.frikanalen.no/video/
624019/
">OpenID</A>,
398 <a href="http://beta.frikanalen.no/video/
625624/
">Common Lisp</a>,
399 <a href="http://beta.frikanalen.no/video/
625446/
">Civic Tech</a>,
400 <a href="http://beta.frikanalen.no/video/
625090/
">EFF founder John Barlow</a>,
401 <a href="http://beta.frikanalen.no/video/
625432/
">how to make 3D
402 printer electronics</a> and many more fascinating topics? It works
403 using only free software (all of it
404 <a href="http://github.com/Frikanalen
">available from Github</a>), and
405 is administrated using a web browser and a web API.</p>
407 <p>The TV channel is the Norwegian open channel
408 <a href="http://www.frikanalen.no/
">Frikanalen</a>, and I am involved
409 via <a href="https://www.nuug.no/
">the NUUG member association</a> in
410 running and developing the software for the channel. The channel is
411 organised as a member organisation where its members can upload and
412 broadcast what they want (think of it as Youtube for national
413 broadcasting television). Individuals can broadcast too. The time
414 slots are handled on a first come, first serve basis. Because the
415 channel have almost no viewers and very few active members, we can
416 experiment with TV technology without too much flack when we make
417 mistakes. And thanks to the few active members, most of the slots on
418 the schedule are free. I see this as an opportunity to spread
419 knowledge about technology and free software, and have a script I run
420 regularly to fill up all the open slots the next few days with
421 technology related video. The end result is a channel I like to
422 describe as Techno TV - filled with interesting talks and
425 <p>It is available on channel 50 on the Norwegian national digital TV
426 network (RiksTV). It is also available as a multicast stream on
427 Uninett. And finally, it is available as
428 <a href="http://beta.frikanalen.no/
">a WebM unicast stream</a> from
429 Frikanalen and NUUG. Check it out. :)</p>
434 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english
">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/frikanalen
">frikanalen</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug
">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/video
">video</a>.
439 <div class="padding
"></div>
442 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/Unlocking_HTC_Desire_HD_on_Linux_using_unruu_and_fastboot.html
">Unlocking HTC Desire HD on Linux using unruu and fastboot</a></div>
443 <div class="date
"> 7th July 2016</div>
444 <div class="body
"><p>Yesterday, I tried to unlock a HTC Desire HD phone, and it proved
445 to be a slight challenge. Here is the recipe if I ever need to do it
446 again. It all started by me wanting to try the recipe to set up
447 <a href="https://blog.torproject.org/blog/mission-impossible-hardening-android-security-and-privacy
">an
448 hardened Android installation</a> from the Tor project blog on a
449 device I had access to. It is a old mobile phone with a broken
450 microphone The initial idea had been to just
451 <a href="http://wiki.cyanogenmod.org/w/Install_CM_for_ace
">install
452 CyanogenMod on it</a>, but did not quite find time to start on it
453 until a few days ago.</p>
455 <p>The unlock process is supposed to be simple: (1) Boot into the boot
456 loader (press volume down and power at the same time), (2) select
457 'fastboot' before (3) connecting the device via USB to a Linux
458 machine, (4) request the device identifier token by running 'fastboot
459 oem get_identifier_token', (5) request the device unlocking key using
460 the <a href="http://www.htcdev.com/bootloader/
">HTC developer web
461 site</a> and unlock the phone using the key file emailed to you.</p>
463 <p>Unfortunately, this only work fi you have hboot version 2.00.0029
464 or newer, and the device I was working on had 2.00.0027. This
465 apparently can be easily fixed by downloading a Windows program and
466 running it on your Windows machine, if you accept the terms Microsoft
467 require you to accept to use Windows - which I do not. So I had to
468 come up with a different approach. I got a lot of help from AndyCap
469 on #nuug, and would not have been able to get this working without
472 <p>First I needed to extract the hboot firmware from
473 <a href="http://www.htcdev.com/ruu/PD9810000_Ace_Sense30_S_hboot_2.00
.0029.exe
">the
474 windows binary for HTC Desire HD</a> downloaded as 'the RUU' from HTC.
475 For this there is is <a href="https://github.com/kmdm/unruu/
">a github
476 project named unruu</a> using libunshield. The unshield tool did not
477 recognise the file format, but unruu worked and extracted rom.zip,
478 containing the new hboot firmware and a text file describing which
479 devices it would work for.</p>
481 <p>Next, I needed to get the new firmware into the device. For this I
482 followed some instructions
483 <a href="http://www.htc1guru.com/
2013/
09/new-ruu-zips-posted/
">available
484 from HTC1Guru.com</a>, and ran these commands as root on a Linux
485 machine with Debian testing:</p>
488 adb reboot-bootloader
489 fastboot oem rebootRUU
490 fastboot flash zip rom.zip
491 fastboot flash zip rom.zip
495 <p>The flash command apparently need to be done twice to take effect,
496 as the first is just preparations and the second one do the flashing.
497 The adb command is just to get to the boot loader menu, so turning the
498 device on while holding volume down and the power button should work
501 <p>With the new hboot version in place I could start following the
502 instructions on the HTC developer web site. I got the device token
506 fastboot oem get_identifier_token 2>&1 | sed 's/(bootloader) //'
509 <p>And once I got the unlock code via email, I could use it like
513 fastboot flash unlocktoken Unlock_code.bin
516 <p>And with that final step in place, the phone was unlocked and I
517 could start stuffing the software of my own choosing into the device.
518 So far I only inserted a replacement recovery image to wipe the phone
519 before I start. We will see what happen next. Perhaps I should
520 install <a href="https://www.debian.org/
">Debian</a> on it. :)</p>
525 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/bootsystem
">bootsystem</a>, <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/opphavsrett
">opphavsrett</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet
">sikkerhet</a>.
530 <div class="padding
"></div>
533 <div class="title
"><a href="http://people.skolelinux.org/pere/blog/How_to_use_the_Signal_app_if_you_only_have_a_land_line__ie_no_mobile_phone_.html
">How to use the Signal app if you only have a land line (ie no mobile phone)</a></div>
534 <div class="date
"> 3rd July 2016</div>
535 <div class="body
"><p>For a while now, I have wanted to test
536 <a href="https://whispersystems.org/
">the Signal app</a>, as it is
537 said to provide end to end encrypted communication and several of my
538 friends and family are already using it. As I by choice do not own a
539 mobile phone, this proved to be harder than expected. And I wanted to
540 have the source of the client and know that it was the code used on my
541 machine. But yesterday I managed to get it working. I used the
542 Github source, compared it to the source in
543 <a href="https://chrome.google.com/webstore/detail/signal-private-messenger/bikioccmkafdpakkkcpdbppfkghcmihk?hl=en-US
">the
544 Signal Chrome app</a> available from the Chrome web store, applied
545 patches to use the production Signal servers, started the app and
546 asked for the hidden "register without a smart phone" form. Here is
547 the recipe how I did it.
</p>
549 <p>First, I fetched the Signal desktop source from Github, using
552 git clone https://github.com/WhisperSystems/Signal-Desktop.git
555 <p>Next, I patched the source to use the production servers, to be
556 able to talk to other Signal users:
</p>
559 cat
<<EOF | patch -p0
560 diff -ur ./js/background.js userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/
0.15.0_0/js/background.js
561 --- ./js/background.js
2016-
06-
29 13:
43:
15.630344628 +
0200
562 +++ userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/
0.15.0_0/js/background.js
2016-
06-
29 14:
06:
29.530300934 +
0200
567 - var SERVER_URL = 'https://textsecure-service-staging.whispersystems.org';
568 - var ATTACHMENT_SERVER_URL = 'https://whispersystems-textsecure-attachments-staging.s3.amazonaws.com';
569 + var SERVER_URL = 'https://textsecure-service-ca.whispersystems.org:
4433';
570 + var ATTACHMENT_SERVER_URL = 'https://whispersystems-textsecure-attachments.s3.amazonaws.com';
572 window.getSocketStatus = function() {
573 if (messageReceiver) {
574 diff -ur ./js/expire.js userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/
0.15.0_0/js/expire.js
575 --- ./js/expire.js
2016-
06-
29 13:
43:
15.630344628 +
0200
576 +++ userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/
0.15.0_0/js/expire.js2016-
06-
29 14:
06:
29.530300934 +
0200
580 - var BUILD_EXPIRATION =
0;
581 + var BUILD_EXPIRATION =
1474492690000;
583 window.extension = window.extension || {};
588 <p>The first part is changing the servers, and the second is updating
589 an expiration timestamp. This timestamp need to be updated regularly.
590 It is set
90 days in the future by the build process (Gruntfile.js).
591 The value is seconds since
1970 times
1000, as far as I can tell.
</p>
593 <p>Based on a tip and good help from the #nuug IRC channel, I wrote a
594 script to launch Signal in Chromium.
</p>
601 --proxy-server="socks://localhost:
9050" \
602 --user-data-dir=`pwd`/userdata --load-and-launch-app=`pwd`
605 <p> The script start the app and configure Chromium to use the Tor
606 SOCKS5 proxy to make sure those controlling the Signal servers (today
607 Amazon and Whisper Systems) as well as those listening on the lines
608 will have a harder time location my laptop based on the Signal
609 connections if they use source IP address.
</p>
611 <p>When the script starts, one need to follow the instructions under
612 "Standalone Registration" in the CONTRIBUTING.md file in the git
613 repository. I right clicked on the Signal window to get up the
614 Chromium debugging tool, visited the 'Console' tab and wrote
615 'extension.install("standalone")' on the console prompt to get the
616 registration form. Then I entered by land line phone number and
617 pressed 'Call'.
5 seconds later the phone rang and a robot voice
618 repeated the verification code three times. After entering the number
619 into the verification code field in the form, I could start using
620 Signal from my laptop.
622 <p>As far as I can tell, The Signal app will leak who is talking to
623 whom and thus who know who to those controlling the central server,
624 but such leakage is hard to avoid with a centrally controlled server
625 setup. It is something to keep in mind when using Signal - the
626 content of your chats are harder to intercept, but the meta data
627 exposing your contact network is available to people you do not know.
628 So better than many options, but not great. And sadly the usage is
629 connected to my land line, thus allowing those controlling the server
630 to associate it to my home and person. I would prefer it if only
631 those I knew could tell who I was on Signal. There are options
632 avoiding such information leakage, but most of my friends are not
633 using them, so I am stuck with Signal for now.
</p>
638 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/sikkerhet">sikkerhet
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance
</a>.
643 <div class=
"padding"></div>
646 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/The_new__best__multimedia_player_in_Debian_.html">The new "best" multimedia player in Debian?
</a></div>
647 <div class=
"date"> 6th June
2016</div>
648 <div class=
"body"><p>When I set out a few weeks ago to figure out
649 <a href=
"http://people.skolelinux.org/pere/blog/What_is_the_best_multimedia_player_in_Debian_.html">which
650 multimedia player in Debian claimed to support most file formats /
651 MIME types
</a>, I was a bit surprised how varied the sets of MIME types
652 the various players claimed support for. The range was from
55 to
130
653 MIME types. I suspect most media formats are supported by all
654 players, but this is not really reflected in the MimeTypes values in
655 their desktop files. There are probably also some bogus MIME types
656 listed, but it is hard to identify which one this is.
</p>
658 <p>Anyway, in the mean time I got in touch with upstream for some of
659 the players suggesting to add more MIME types to their desktop files,
660 and decided to spend some time myself improving the situation for my
661 favorite media player VLC. The fixes for VLC entered Debian unstable
662 yesterday. The complete list of MIME types can be seen on the
663 <a href=
"https://wiki.debian.org/DebianMultimedia/PlayerSupport">Multimedia
664 player MIME type support status
</a> Debian wiki page.
</p>
666 <p>The new "best" multimedia player in Debian? It is VLC, followed by
667 totem, parole, kplayer, gnome-mpv, mpv, smplayer, mplayer-gui and
668 kmplayer. I am sure some of the other players desktop files support
669 several of the formats currently listed as working only with vlc,
670 toten and parole.
</p>
672 <p>A sad observation is that only
14 MIME types are listed as
673 supported by all the tested multimedia players in Debian in their
674 desktop files: audio/mpeg, audio/vnd.rn-realaudio, audio/x-mpegurl,
675 audio/x-ms-wma, audio/x-scpls, audio/x-wav, video/mp4, video/mpeg,
676 video/quicktime, video/vnd.rn-realvideo, video/x-matroska,
677 video/x-ms-asf, video/x-ms-wmv and video/x-msvideo. Personally I find
678 it sad that video/ogg and video/webm is not supported by all the media
679 players in Debian. As far as I can tell, all of them can handle both
685 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/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>.
690 <div class=
"padding"></div>
693 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/A_program_should_be_able_to_open_its_own_files_on_Linux.html">A program should be able to open its own files on Linux
</a></div>
694 <div class=
"date"> 5th June
2016</div>
695 <div class=
"body"><p>Many years ago, when koffice was fresh and with few users, I
696 decided to test its presentation tool when making the slides for a
697 talk I was giving for NUUG on Japhar, a free Java virtual machine. I
698 wrote the first draft of the slides, saved the result and went to bed
699 the day before I would give the talk. The next day I took a plane to
700 the location where the meeting should take place, and on the plane I
701 started up koffice again to polish the talk a bit, only to discover
702 that kpresenter refused to load its own data file. I cursed a bit and
703 started making the slides again from memory, to have something to
704 present when I arrived. I tested that the saved files could be
705 loaded, and the day seemed to be rescued. I continued to polish the
706 slides until I suddenly discovered that the saved file could no longer
707 be loaded into kpresenter. In the end I had to rewrite the slides
708 three times, condensing the content until the talk became shorter and
709 shorter. After the talk I was able to pinpoint the problem
–
710 kpresenter wrote inline images in a way itself could not understand.
711 Eventually that bug was fixed and kpresenter ended up being a great
712 program to make slides. The point I'm trying to make is that we
713 expect a program to be able to load its own data files, and it is
714 embarrassing to its developers if it can't.
</p>
716 <p>Did you ever experience a program failing to load its own data
717 files from the desktop file browser? It is not a uncommon problem. A
718 while back I discovered that the screencast recorder
719 gtk-recordmydesktop would save an Ogg Theora video file the KDE file
720 browser would refuse to open. No video player claimed to understand
721 such file. I tracked down the cause being
<tt>file --mime-type
</tt>
722 returning the application/ogg MIME type, which no video player I had
723 installed listed as a MIME type they would understand. I asked for
724 <a href=
"http://bugs.gw.com/view.php?id=382">file to change its
725 behavour
</a> and use the MIME type video/ogg instead. I also asked
726 several video players to add video/ogg to their desktop files, to give
727 the file browser an idea what to do about Ogg Theora files. After a
728 while, the desktop file browsers in Debian started to handle the
729 output from gtk-recordmydesktop properly.
</p>
731 <p>But history repeats itself. A few days ago I tested the music
732 system Rosegarden again, and I discovered that the KDE and xfce file
733 browsers did not know what to do with the Rosegarden project files
734 (*.rg). I've reported
<a href=
"http://bugs.debian.org/825993">the
735 rosegarden problem to BTS
</a> and a fix is commited to git and will be
736 included in the next upload. To increase the chance of me remembering
737 how to fix the problem next time some program fail to load its files
738 from the file browser, here are some notes on how to fix it.
</p>
740 <p>The file browsers in Debian in general operates on MIME types.
741 There are two sources for the MIME type of a given file. The output from
742 <tt>file --mime-type
</tt> mentioned above, and the content of the
743 shared MIME type registry (under /usr/share/mime/). The file MIME
744 type is mapped to programs supporting the MIME type, and this
745 information is collected from
746 <a href=
"https://www.freedesktop.org/wiki/Specifications/desktop-entry-spec/">the
747 desktop files
</a> available in /usr/share/applications/. If there is
748 one desktop file claiming support for the MIME type of the file, it is
749 activated when asking to open a given file. If there are more, one
750 can normally select which one to use by right-clicking on the file and
751 selecting the wanted one using 'Open with' or similar. In general
752 this work well. But it depend on each program picking a good MIME
754 <a href=
"http://www.iana.org/assignments/media-types/media-types.xhtml">a
755 MIME type registered with IANA
</a>), file and/or the shared MIME
756 registry recognizing the file and the desktop file to list the MIME
757 type in its list of supported MIME types.
</p>
759 <p>The
<tt>/usr/share/mime/packages/rosegarden.xml
</tt> entry for
760 <a href=
"http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec">the
761 Shared MIME database
</a> look like this:
</p>
764 <?xml
version="
1.0"
encoding="UTF-
8"?
>
765 <mime-info
xmlns="http://www.freedesktop.org/standards/shared-mime-info"
>
766 <mime-type
type="audio/x-rosegarden"
>
767 <sub-class-of
type="application/x-gzip"/
>
768 <comment
>Rosegarden project file
</comment
>
769 <glob
pattern="*.rg"/
>
772 </pre></blockquote></p>
774 <p>This states that audio/x-rosegarden is a kind of application/x-gzip
775 (it is a gzipped XML file). Note, it is much better to use an
776 official MIME type registered with IANA than it is to make up ones own
777 unofficial ones like the x-rosegarden type used by rosegarden.
</p>
779 <p>The desktop file of the rosegarden program failed to list
780 audio/x-rosegarden in its list of supported MIME types, causing the
781 file browsers to have no idea what to do with *.rg files:
</p>
784 % grep Mime /usr/share/applications/rosegarden.desktop
785 MimeType=audio/x-rosegarden-composition;audio/x-rosegarden-device;audio/x-rosegarden-project;audio/x-rosegarden-template;audio/midi;
786 X-KDE-NativeMimeType=audio/x-rosegarden-composition
788 </pre></blockquote></p>
790 <p>The fix was to add "audio/x-rosegarden;" at the end of the
793 <p>If you run into a file which fail to open the correct program when
794 selected from the file browser, please check out the output from
795 <tt>file --mime-type
</tt> for the file, ensure the file ending and
796 MIME type is registered somewhere under /usr/share/mime/ and check
797 that some desktop file under /usr/share/applications/ is claiming
798 support for this MIME type. If not, please report a bug to have it
804 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>.
809 <div class=
"padding"></div>
811 <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>
822 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/01/">January (
3)
</a></li>
824 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/02/">February (
2)
</a></li>
826 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/03/">March (
3)
</a></li>
828 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/04/">April (
8)
</a></li>
830 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/05/">May (
8)
</a></li>
832 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/06/">June (
2)
</a></li>
834 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/07/">July (
2)
</a></li>
836 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/08/">August (
5)
</a></li>
838 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/09/">September (
1)
</a></li>
845 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/01/">January (
7)
</a></li>
847 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/02/">February (
6)
</a></li>
849 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/03/">March (
1)
</a></li>
851 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/04/">April (
4)
</a></li>
853 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/05/">May (
3)
</a></li>
855 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/06/">June (
4)
</a></li>
857 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/07/">July (
6)
</a></li>
859 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/08/">August (
2)
</a></li>
861 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/09/">September (
2)
</a></li>
863 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/10/">October (
9)
</a></li>
865 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/11/">November (
6)
</a></li>
867 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/12/">December (
3)
</a></li>
874 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/01/">January (
2)
</a></li>
876 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/02/">February (
3)
</a></li>
878 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/03/">March (
8)
</a></li>
880 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/04/">April (
7)
</a></li>
882 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/05/">May (
1)
</a></li>
884 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/06/">June (
2)
</a></li>
886 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/07/">July (
2)
</a></li>
888 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/08/">August (
2)
</a></li>
890 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/09/">September (
5)
</a></li>
892 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/10/">October (
6)
</a></li>
894 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/11/">November (
3)
</a></li>
896 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/12/">December (
5)
</a></li>
903 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/01/">January (
11)
</a></li>
905 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/02/">February (
9)
</a></li>
907 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/03/">March (
9)
</a></li>
909 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/04/">April (
6)
</a></li>
911 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/05/">May (
9)
</a></li>
913 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/06/">June (
10)
</a></li>
915 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/07/">July (
7)
</a></li>
917 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/08/">August (
3)
</a></li>
919 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/09/">September (
5)
</a></li>
921 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/10/">October (
7)
</a></li>
923 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/11/">November (
9)
</a></li>
925 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/12/">December (
3)
</a></li>
932 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/01/">January (
7)
</a></li>
934 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/02/">February (
10)
</a></li>
936 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/03/">March (
17)
</a></li>
938 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/04/">April (
12)
</a></li>
940 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/05/">May (
12)
</a></li>
942 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/06/">June (
20)
</a></li>
944 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/07/">July (
17)
</a></li>
946 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/08/">August (
6)
</a></li>
948 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/09/">September (
9)
</a></li>
950 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/10/">October (
17)
</a></li>
952 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/11/">November (
10)
</a></li>
954 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/12/">December (
7)
</a></li>
961 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/01/">January (
16)
</a></li>
963 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/02/">February (
6)
</a></li>
965 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/03/">March (
6)
</a></li>
967 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/04/">April (
7)
</a></li>
969 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/05/">May (
3)
</a></li>
971 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/06/">June (
2)
</a></li>
973 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/07/">July (
7)
</a></li>
975 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/08/">August (
6)
</a></li>
977 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/09/">September (
4)
</a></li>
979 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/10/">October (
2)
</a></li>
981 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/11/">November (
3)
</a></li>
983 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/12/">December (
1)
</a></li>
990 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/01/">January (
2)
</a></li>
992 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/02/">February (
1)
</a></li>
994 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/03/">March (
3)
</a></li>
996 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/04/">April (
3)
</a></li>
998 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/05/">May (
9)
</a></li>
1000 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/06/">June (
14)
</a></li>
1002 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/07/">July (
12)
</a></li>
1004 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/08/">August (
13)
</a></li>
1006 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/09/">September (
7)
</a></li>
1008 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/10/">October (
9)
</a></li>
1010 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/11/">November (
13)
</a></li>
1012 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/12/">December (
12)
</a></li>
1019 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/01/">January (
8)
</a></li>
1021 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/02/">February (
8)
</a></li>
1023 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/03/">March (
12)
</a></li>
1025 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/04/">April (
10)
</a></li>
1027 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/05/">May (
9)
</a></li>
1029 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/06/">June (
3)
</a></li>
1031 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/07/">July (
4)
</a></li>
1033 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/08/">August (
3)
</a></li>
1035 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/09/">September (
1)
</a></li>
1037 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/10/">October (
2)
</a></li>
1039 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/11/">November (
3)
</a></li>
1041 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/12/">December (
3)
</a></li>
1048 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/11/">November (
5)
</a></li>
1050 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/12/">December (
7)
</a></li>
1061 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (
13)
</a></li>
1063 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/amiga">amiga (
1)
</a></li>
1065 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/aros">aros (
1)
</a></li>
1067 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bankid">bankid (
4)
</a></li>
1069 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (
9)
</a></li>
1071 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (
16)
</a></li>
1073 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bsa">bsa (
2)
</a></li>
1075 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (
2)
</a></li>
1077 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian (
135)
</a></li>
1079 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (
157)
</a></li>
1081 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/digistan">digistan (
10)
</a></li>
1083 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/dld">dld (
15)
</a></li>
1085 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/docbook">docbook (
23)
</a></li>
1087 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (
4)
</a></li>
1089 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/english">english (
327)
</a></li>
1091 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (
23)
</a></li>
1093 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (
12)
</a></li>
1095 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (
28)
</a></li>
1097 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (
9)
</a></li>
1099 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (
18)
</a></li>
1101 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/h264">h264 (
20)
</a></li>
1103 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/intervju">intervju (
42)
</a></li>
1105 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (
12)
</a></li>
1107 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/kart">kart (
19)
</a></li>
1109 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ldap">ldap (
9)
</a></li>
1111 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lenker">lenker (
8)
</a></li>
1113 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (
2)
</a></li>
1115 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (
1)
</a></li>
1117 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (
8)
</a></li>
1119 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (
39)
</a></li>
1121 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (
8)
</a></li>
1123 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk (
277)
</a></li>
1125 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug (
182)
</a></li>
1127 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (
26)
</a></li>
1129 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/open311">open311 (
2)
</a></li>
1131 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (
61)
</a></li>
1133 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern (
92)
</a></li>
1135 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/raid">raid (
1)
</a></li>
1137 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reactos">reactos (
1)
</a></li>
1139 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reprap">reprap (
11)
</a></li>
1141 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rfid">rfid (
3)
</a></li>
1143 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot (
9)
</a></li>
1145 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rss">rss (
1)
</a></li>
1147 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ruter">ruter (
4)
</a></li>
1149 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (
2)
</a></li>
1151 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (
48)
</a></li>
1153 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (
4)
</a></li>
1155 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (
5)
</a></li>
1157 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard (
49)
</a></li>
1159 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (
4)
</a></li>
1161 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (
10)
</a></li>
1163 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (
38)
</a></li>
1165 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (
2)
</a></li>
1167 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/usenix">usenix (
2)
</a></li>
1169 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/valg">valg (
8)
</a></li>
1171 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/video">video (
59)
</a></li>
1173 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (
4)
</a></li>
1175 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/web">web (
38)
</a></li>
1181 <p style=
"text-align: right">
1182 Created by
<a href=
"http://steve.org.uk/Software/chronicle">Chronicle v4.6
</a>