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>
72 <p>For øvrig burde varsleren Edward Snowden få politisk asyl i
78 venstre.no mail is handled by 10 aspmx.l.google.com.
79 venstre.no mail is handled by 20 alt1.aspmx.l.google.com.
80 venstre.no mail is handled by 20 alt2.aspmx.l.google.com.
81 venstre.no mail is handled by 30 aspmx2.googlemail.com.
82 venstre.no mail is handled by 30 aspmx3.googlemail.com.
84 traceroute to aspmx.l.google.com (173.194.222.27), 30 hops max, 60 byte packets
85 1 uio-gw10.uio.no (129.240.6.1) 0.411 ms 0.438 ms 0.536 ms
86 2 uio-gw8.uio.no (129.240.24.229) 0.375 ms 0.452 ms 0.548 ms
87 3 oslo-gw1.uninett.no (128.39.65.17) 1.940 ms 1.950 ms 1.942 ms
88 4 se-tug.nordu.net (109.105.102.108) 6.910 ms 6.949 ms 7.283 ms
89 5 google-gw.nordu.net (109.105.98.6) 6.975 ms 6.967 ms 6.958 ms
90 6 209.85.250.192 (209.85.250.192) 7.337 ms 7.286 ms 10.890 ms
91 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
92 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
93 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
97 mdg.no mail is handled by 1 aspmx.l.google.com.
98 mdg.no mail is handled by 5 alt2.aspmx.l.google.com.
99 mdg.no mail is handled by 5 alt1.aspmx.l.google.com.
100 mdg.no mail is handled by 10 aspmx2.googlemail.com.
101 mdg.no mail is handled by 10 aspmx3.googlemail.com.
103 sv.no mail is handled by 1 aspmx.l.google.com.
104 sv.no mail is handled by 5 alt1.aspmx.l.google.com.
105 sv.no mail is handled by 5 alt2.aspmx.l.google.com.
106 sv.no mail is handled by 10 aspmx3.googlemail.com.
107 sv.no mail is handled by 10 aspmx2.googlemail.com.
109 hoyre.no mail is handled by 10 hoyre-no.mx1.comendosystems.com.
110 hoyre.no mail is handled by 20 hoyre-no.mx2.comendosystems.net.
112 traceroute to hoyre-no.mx1.comendosystems.com (89.104.206.4), 30 hops max, 60 byte packets
113 1 uio-gw10.uio.no (129.240.6.1) 0.450 ms 0.510 ms 0.591 ms
114 2 uio-gw8.uio.no (129.240.24.229) 0.383 ms 0.508 ms 0.596 ms
115 3 oslo-gw1.uninett.no (128.39.65.17) 0.311 ms 0.315 ms 0.300 ms
116 4 se-tug.nordu.net (109.105.102.108) 6.837 ms 6.842 ms 6.834 ms
117 5 dk-uni.nordu.net (109.105.97.10) 26.073 ms 26.085 ms 26.076 ms
118 6 dix.1000m.soeborg.ip.comendo.dk (192.38.7.22) 15.372 ms 15.046 ms 15.123 ms
119 7 89.104.192.65 (89.104.192.65) 15.875 ms 15.990 ms 16.239 ms
120 8 89.104.192.179 (89.104.192.179) 15.676 ms 15.674 ms 15.664 ms
121 9 03dm-com.mx1.staysecuregroup.com (89.104.206.4) 15.637 ms * *
124 krf.no mail is handled by 10 krf-no.mail.protection.outlook.com.
126 traceroute to krf-no.mail.protection.outlook.com (213.199.154.42), 30 hops max, 60 byte packets
127 1 uio-gw10.uio.no (129.240.6.1) 0.401 ms 0.438 ms 0.536 ms
128 2 uio-gw8.uio.no (129.240.24.229) 11.076 ms 11.120 ms 11.204 ms
129 3 oslo-gw1.uninett.no (128.39.65.17) 0.232 ms 0.234 ms 0.271 ms
130 4 se-tug.nordu.net (109.105.102.108) 6.811 ms 6.820 ms 6.815 ms
131 5 netnod-ix-ge-a-sth-4470.microsoft.com (195.245.240.181) 7.074 ms 7.013 ms 7.061 ms
132 6 ae1-0.sto-96cbe-1b.ntwk.msn.net (104.44.225.161) 7.227 ms 7.362 ms 7.293 ms
133 7 be-8-0.ibr01.ams.ntwk.msn.net (104.44.5.7) 41.993 ms 43.334 ms 41.939 ms
134 8 be-1-0.ibr02.ams.ntwk.msn.net (104.44.4.214) 43.153 ms 43.507 ms 43.404 ms
135 9 ae3-0.fra-96cbe-1b.ntwk.msn.net (104.44.5.17) 29.897 ms 29.831 ms 29.794 ms
136 10 ae10-0.vie-96cbe-1a.ntwk.msn.net (198.206.164.1) 42.309 ms 42.130 ms 41.808 ms
137 11 * ae8-0.vie-96cbe-1b.ntwk.msn.net (104.44.227.29) 41.425 ms *
141 arbeiderpartiet.no mail is handled by 10 mail.intility.com.
142 arbeiderpartiet.no mail is handled by 20 mail2.intility.com.
144 traceroute to mail.intility.com (188.95.245.87), 30 hops max, 60 byte packets
145 1 uio-gw10.uio.no (129.240.6.1) 0.486 ms 0.508 ms 0.649 ms
146 2 uio-gw8.uio.no (129.240.24.229) 0.416 ms 0.508 ms 0.620 ms
147 3 oslo-gw1.uninett.no (128.39.65.17) 0.276 ms 0.278 ms 0.275 ms
148 4 te3-1-2.br1.fn3.as2116.net (193.156.90.3) 0.374 ms 0.371 ms 0.416 ms
149 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
150 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
151 7 cD2EC45C1.static.as2116.net (193.69.236.210) 0.654 ms 0.615 ms 0.590 ms
152 8 185.7.132.38 (185.7.132.38) 1.661 ms 1.808 ms 1.695 ms
153 9 185.7.132.100 (185.7.132.100) 1.793 ms 1.943 ms 1.546 ms
157 frp.no mail is handled by 10 mx03.telecomputing.no.
158 frp.no mail is handled by 20 mx01.telecomputing.no.
160 traceroute to mx03.telecomputing.no (95.128.105.102), 30 hops max, 60 byte packets
161 1 uio-gw10.uio.no (129.240.6.1) 0.378 ms 0.402 ms 0.479 ms
162 2 uio-gw8.uio.no (129.240.24.229) 0.361 ms 0.458 ms 0.548 ms
163 3 oslo-gw1.uninett.no (128.39.65.17) 0.361 ms 0.352 ms 0.336 ms
164 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
165 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
166 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
167 7 95.128.105.3 (95.128.105.3) 1.050 ms 1.288 ms 1.182 ms
168 8 mx03.telecomputing.no (95.128.105.102) 0.717 ms 0.703 ms 0.692 ms
175 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>.
180 <div class=
"padding"></div>
183 <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>
184 <div class=
"date">30th August
2016</div>
185 <div class=
"body"><p>In April we
186 <a href=
"http://people.skolelinux.org/pere/blog/Lets_make_a_Norwegian_Bokm_l_edition_of_The_Debian_Administrator_s_Handbook.html">started
187 to work
</a> on a Norwegian Bokmål edition of the "open access" book on
188 how to set up and administrate a Debian system. Today I am happy to
189 report that the first draft is now publicly available. You can find
190 it on
<a href=
"https://debian-handbook.info/get/">get the Debian
191 Administrator's Handbook page
</a> (under Other languages). The first
192 eight chapters have a first draft translation, and we are working on
193 proofreading the content. If you want to help out, please start
195 <a href=
"https://hosted.weblate.org/projects/debian-handbook/">the
196 hosted weblate project page
</a>, and get in touch using
197 <a href=
"http://lists.alioth.debian.org/mailman/listinfo/debian-handbook-translators">the
198 translators mailing list
</a>. Please also check out
199 <a href=
"https://debian-handbook.info/contribute/">the instructions for
200 contributors
</a>. A good way to contribute is to proofread the text
201 and update weblate if you find errors.
</p>
203 <p>Our goal is still to make the Norwegian book available on paper as well as
209 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>.
214 <div class=
"padding"></div>
217 <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>
218 <div class=
"date">11th August
2016</div>
219 <div class=
"body"><p>This summer, I read a great article
220 "
<a href=
"https://www.usenix.org/publications/login/summer2016/curtsinger">coz:
221 This Is the Profiler You're Looking For
</a>" in USENIX ;login: about
222 how to profile multi-threaded programs. It presented a system for
223 profiling software by running experiences in the running program,
224 testing how run time performance is affected by "speeding up
" parts of
225 the code to various degrees compared to a normal run. It does this by
226 slowing down parallel threads while the "faster up
" code is running
227 and measure how this affect processing time. The processing time is
228 measured using probes inserted into the code, either using progress
229 counters (COZ_PROGRESS) or as latency meters (COZ_BEGIN/COZ_END). It
230 can also measure unmodified code by measuring complete the program
231 runtime and running the program several times instead.</p>
233 <p>The project and presentation was so inspiring that I would like to
234 get the system into Debian. I
235 <a href="https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=
830708">created
236 a WNPP request for it</a> and contacted upstream to try to make the
237 system ready for Debian by sending patches. The build process need to
238 be changed a bit to avoid running 'git clone' to get dependencies, and
239 to include the JavaScript web page used to visualize the collected
240 profiling information included in the source package.
241 But I expect that should work out fairly soon.</p>
243 <p>The way the system work is fairly simple. To run an coz experiment
244 on a binary with debug symbols available, start the program like this:
247 coz run --- program-to-run
248 </pre></blockquote></p>
250 <p>This will create a text file profile.coz with the instrumentation
251 information. To show what part of the code affect the performance
252 most, use a web browser and either point it to
253 <a href="http://plasma-umass.github.io/coz/
">http://plasma-umass.github.io/coz/</a>
254 or use the copy from git (in the gh-pages branch). Check out this web
255 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
256 profiling more useful you include <coz.h> and insert the
257 COZ_PROGRESS or COZ_BEGIN and COZ_END at appropriate places in the
258 code, rebuild and run the profiler. This allow coz to do more
259 targeted experiments.</p>
261 <p>A video published by ACM
262 <a href="https://www.youtube.com/watch?v=jE0V-p1odPg
">presenting the
263 Coz profiler</a> is available from Youtube. There is also a paper
264 from the 25th Symposium on Operating Systems Principles available
266 <a href="https://www.usenix.org/conference/atc16/technical-sessions/presentation/curtsinger
">Coz:
267 finding code that counts with causal profiling</a>.</p>
269 <p><a href="https://github.com/plasma-umass/coz
">The source code</a>
270 for Coz is available from github. It will only build with clang
272 <a href="https://gcc.gnu.org/bugzilla/show_bug.cgi?id=
55606">C++
273 feature missing in GCC</a>, but I've submitted
274 <a href="https://github.com/plasma-umass/coz/pull/
67">a patch to solve
275 it</a> and hope it will be included in the upstream source soon.</p>
277 <p>Please get in touch if you, like me, would like to see this piece
278 of software in Debian. I would very much like some help with the
279 packaging effort, as I lack the in depth knowledge on how to package
285 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>.
290 <div class="padding
"></div>
293 <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>
294 <div class="date
"> 5th August 2016</div>
295 <div class="body
"><p>As my regular readers probably remember, the last year I published
296 a French and Norwegian translation of the classic
297 <a href="http://www.free-culture.cc/
">Free Culture book</a> by the
298 founder of the Creative Commons movement, Lawrence Lessig. A bit less
299 known is the fact that due to the way I created the translations,
300 using docbook and po4a, I also recreated the English original. And
301 because I already had created a new the PDF edition, I published it
302 too. The revenue from the books are sent to the Creative Commons
303 Corporation. In other words, I do not earn any money from this
304 project, I just earn the warm fuzzy feeling that the text is available
305 for a wider audience and more people can learn why the Creative
306 Commons is needed.</p>
308 <p>Today, just for fun, I had a look at the sales number over at
309 Lulu.com, which take care of payment, printing and shipping. Much to
310 my surprise, the English edition is selling better than both the
311 French and Norwegian edition, despite the fact that it has been
312 available in English since it was first published. In total, 24 paper
313 books was sold for USD $19.99 between 2016-01-01 and 2016-07-31:</p>
316 <tr><th>Title / language</th><th>Quantity</th></tr>
317 <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>
318 <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>
319 <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>
322 <p>The books are available both from Lulu.com and from large book
323 stores like Amazon and Barnes&Noble. Most revenue, around $10 per
324 book, is sent to the Creative Commons project when the book is sold
325 directly by Lulu.com. The other channels give less revenue. The
326 summary from Lulu tell me 10 books was sold via the Amazon channel, 10
327 via Ingram (what is this?) and 4 directly by Lulu. And Lulu.com tells
328 me that the revenue sent so far this year is USD $101.42. No idea
329 what kind of sales numbers to expect, so I do not know if that is a
330 good amount of sales for a 10 year old book or not. But it make me
331 happy that the buyers find the book, and I hope they enjoy reading it
332 as much as I did.</p>
334 <p>The ebook edition is available for free from
335 <a href="https://github.com/petterreinholdtsen/free-culture-lessig
">Github</a>.</p>
337 <p>If you would like to translate and publish the book in your native
338 language, I would be happy to help make it happen. Please get in
344 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>.
349 <div class="padding
"></div>
352 <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>
353 <div class="date
"> 1st August 2016</div>
354 <div class="body
"><p>For mange år siden leste jeg en klassisk tekst som gjorde såpass
355 inntrykk på meg at jeg husker den fortsatt, flere år senere, og bruker
356 argumentene fra den stadig vekk. Teksten var «The Relativity of
357 Wrong» som Isaac Asimov publiserte i Skeptical Inquirer i 1989. Den
358 gir litt perspektiv rundt formidlingen av vitenskapelige resultater.
359 Jeg har hatt lyst til å kunne dele den også med folk som ikke
360 behersker engelsk så godt, som barn og noen av mine eldre slektninger,
361 og har savnet å ha den tilgjengelig på norsk. For to uker siden tok
362 jeg meg sammen og kontaktet Asbjørn Dyrendal i foreningen Skepsis om
363 de var interessert i å publisere en norsk utgave på bloggen sin, og da
364 han var positiv tok jeg kontakt med Skeptical Inquirer og spurte om
365 det var greit for dem. I løpet av noen dager fikk vi tilbakemelding
366 fra Barry Karr hos The Skeptical Inquirer som hadde sjekket og fått OK
367 fra Robyn Asimov som representerte arvingene i Asmiov-familien og gikk
368 igang med oversettingen.</p>
370 <p>Resultatet, <a href="http://www.skepsis.no/?p=
1617">«Relativt
371 feil»</a>, ble publisert på skepsis-bloggen for noen minutter siden.
372 Jeg anbefaler deg på det varmeste å lese denne teksten og dele den med
375 <p>For å håndtere oversettelsen og sikre at original og oversettelse
376 var i sync brukte vi git, po4a, GNU make og Transifex. Det hele
377 fungerte utmerket og gjorde det enkelt å dele tekstene og jobbe sammen
378 om finpuss på formuleringene. Hadde hosted.weblate.org latt meg
379 opprette nye prosjekter selv i stedet for å måtte kontakte
380 administratoren der, så hadde jeg brukt weblate i stedet.</p>
385 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>.
390 <div class="padding
"></div>
393 <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>
394 <div class="date
"> 1st August 2016</div>
395 <div class="body
"><p>Did you know there is a TV channel broadcasting talks from DebConf
396 16 across an entire country? Or that there is a TV channel
397 broadcasting talks by or about
398 <a href="http://beta.frikanalen.no/video/
625529/
">Linus Torvalds</a>,
399 <a href="http://beta.frikanalen.no/video/
625599/
">Tor</a>,
400 <a href="http://beta.frikanalen.no/video/
624019/
">OpenID</A>,
401 <a href="http://beta.frikanalen.no/video/
625624/
">Common Lisp</a>,
402 <a href="http://beta.frikanalen.no/video/
625446/
">Civic Tech</a>,
403 <a href="http://beta.frikanalen.no/video/
625090/
">EFF founder John Barlow</a>,
404 <a href="http://beta.frikanalen.no/video/
625432/
">how to make 3D
405 printer electronics</a> and many more fascinating topics? It works
406 using only free software (all of it
407 <a href="http://github.com/Frikanalen
">available from Github</a>), and
408 is administrated using a web browser and a web API.</p>
410 <p>The TV channel is the Norwegian open channel
411 <a href="http://www.frikanalen.no/
">Frikanalen</a>, and I am involved
412 via <a href="https://www.nuug.no/
">the NUUG member association</a> in
413 running and developing the software for the channel. The channel is
414 organised as a member organisation where its members can upload and
415 broadcast what they want (think of it as Youtube for national
416 broadcasting television). Individuals can broadcast too. The time
417 slots are handled on a first come, first serve basis. Because the
418 channel have almost no viewers and very few active members, we can
419 experiment with TV technology without too much flack when we make
420 mistakes. And thanks to the few active members, most of the slots on
421 the schedule are free. I see this as an opportunity to spread
422 knowledge about technology and free software, and have a script I run
423 regularly to fill up all the open slots the next few days with
424 technology related video. The end result is a channel I like to
425 describe as Techno TV - filled with interesting talks and
428 <p>It is available on channel 50 on the Norwegian national digital TV
429 network (RiksTV). It is also available as a multicast stream on
430 Uninett. And finally, it is available as
431 <a href="http://beta.frikanalen.no/
">a WebM unicast stream</a> from
432 Frikanalen and NUUG. Check it out. :)</p>
437 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>.
442 <div class="padding
"></div>
445 <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>
446 <div class="date
"> 7th July 2016</div>
447 <div class="body
"><p>Yesterday, I tried to unlock a HTC Desire HD phone, and it proved
448 to be a slight challenge. Here is the recipe if I ever need to do it
449 again. It all started by me wanting to try the recipe to set up
450 <a href="https://blog.torproject.org/blog/mission-impossible-hardening-android-security-and-privacy
">an
451 hardened Android installation</a> from the Tor project blog on a
452 device I had access to. It is a old mobile phone with a broken
453 microphone The initial idea had been to just
454 <a href="http://wiki.cyanogenmod.org/w/Install_CM_for_ace
">install
455 CyanogenMod on it</a>, but did not quite find time to start on it
456 until a few days ago.</p>
458 <p>The unlock process is supposed to be simple: (1) Boot into the boot
459 loader (press volume down and power at the same time), (2) select
460 'fastboot' before (3) connecting the device via USB to a Linux
461 machine, (4) request the device identifier token by running 'fastboot
462 oem get_identifier_token', (5) request the device unlocking key using
463 the <a href="http://www.htcdev.com/bootloader/
">HTC developer web
464 site</a> and unlock the phone using the key file emailed to you.</p>
466 <p>Unfortunately, this only work fi you have hboot version 2.00.0029
467 or newer, and the device I was working on had 2.00.0027. This
468 apparently can be easily fixed by downloading a Windows program and
469 running it on your Windows machine, if you accept the terms Microsoft
470 require you to accept to use Windows - which I do not. So I had to
471 come up with a different approach. I got a lot of help from AndyCap
472 on #nuug, and would not have been able to get this working without
475 <p>First I needed to extract the hboot firmware from
476 <a href="http://www.htcdev.com/ruu/PD9810000_Ace_Sense30_S_hboot_2.00
.0029.exe
">the
477 windows binary for HTC Desire HD</a> downloaded as 'the RUU' from HTC.
478 For this there is is <a href="https://github.com/kmdm/unruu/
">a github
479 project named unruu</a> using libunshield. The unshield tool did not
480 recognise the file format, but unruu worked and extracted rom.zip,
481 containing the new hboot firmware and a text file describing which
482 devices it would work for.</p>
484 <p>Next, I needed to get the new firmware into the device. For this I
485 followed some instructions
486 <a href="http://www.htc1guru.com/
2013/
09/new-ruu-zips-posted/
">available
487 from HTC1Guru.com</a>, and ran these commands as root on a Linux
488 machine with Debian testing:</p>
491 adb reboot-bootloader
492 fastboot oem rebootRUU
493 fastboot flash zip rom.zip
494 fastboot flash zip rom.zip
498 <p>The flash command apparently need to be done twice to take effect,
499 as the first is just preparations and the second one do the flashing.
500 The adb command is just to get to the boot loader menu, so turning the
501 device on while holding volume down and the power button should work
504 <p>With the new hboot version in place I could start following the
505 instructions on the HTC developer web site. I got the device token
509 fastboot oem get_identifier_token 2>&1 | sed 's/(bootloader) //'
512 <p>And once I got the unlock code via email, I could use it like
516 fastboot flash unlocktoken Unlock_code.bin
519 <p>And with that final step in place, the phone was unlocked and I
520 could start stuffing the software of my own choosing into the device.
521 So far I only inserted a replacement recovery image to wipe the phone
522 before I start. We will see what happen next. Perhaps I should
523 install <a href="https://www.debian.org/
">Debian</a> on it. :)</p>
528 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>.
533 <div class="padding
"></div>
536 <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>
537 <div class="date
"> 3rd July 2016</div>
538 <div class="body
"><p>For a while now, I have wanted to test
539 <a href="https://whispersystems.org/
">the Signal app</a>, as it is
540 said to provide end to end encrypted communication and several of my
541 friends and family are already using it. As I by choice do not own a
542 mobile phone, this proved to be harder than expected. And I wanted to
543 have the source of the client and know that it was the code used on my
544 machine. But yesterday I managed to get it working. I used the
545 Github source, compared it to the source in
546 <a href="https://chrome.google.com/webstore/detail/signal-private-messenger/bikioccmkafdpakkkcpdbppfkghcmihk?hl=en-US
">the
547 Signal Chrome app</a> available from the Chrome web store, applied
548 patches to use the production Signal servers, started the app and
549 asked for the hidden "register without a smart phone" form. Here is
550 the recipe how I did it.
</p>
552 <p>First, I fetched the Signal desktop source from Github, using
555 git clone https://github.com/WhisperSystems/Signal-Desktop.git
558 <p>Next, I patched the source to use the production servers, to be
559 able to talk to other Signal users:
</p>
562 cat
<<EOF | patch -p0
563 diff -ur ./js/background.js userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/
0.15.0_0/js/background.js
564 --- ./js/background.js
2016-
06-
29 13:
43:
15.630344628 +
0200
565 +++ userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/
0.15.0_0/js/background.js
2016-
06-
29 14:
06:
29.530300934 +
0200
570 - var SERVER_URL = 'https://textsecure-service-staging.whispersystems.org';
571 - var ATTACHMENT_SERVER_URL = 'https://whispersystems-textsecure-attachments-staging.s3.amazonaws.com';
572 + var SERVER_URL = 'https://textsecure-service-ca.whispersystems.org:
4433';
573 + var ATTACHMENT_SERVER_URL = 'https://whispersystems-textsecure-attachments.s3.amazonaws.com';
575 window.getSocketStatus = function() {
576 if (messageReceiver) {
577 diff -ur ./js/expire.js userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/
0.15.0_0/js/expire.js
578 --- ./js/expire.js
2016-
06-
29 13:
43:
15.630344628 +
0200
579 +++ userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/
0.15.0_0/js/expire.js2016-
06-
29 14:
06:
29.530300934 +
0200
583 - var BUILD_EXPIRATION =
0;
584 + var BUILD_EXPIRATION =
1474492690000;
586 window.extension = window.extension || {};
591 <p>The first part is changing the servers, and the second is updating
592 an expiration timestamp. This timestamp need to be updated regularly.
593 It is set
90 days in the future by the build process (Gruntfile.js).
594 The value is seconds since
1970 times
1000, as far as I can tell.
</p>
596 <p>Based on a tip and good help from the #nuug IRC channel, I wrote a
597 script to launch Signal in Chromium.
</p>
604 --proxy-server="socks://localhost:
9050" \
605 --user-data-dir=`pwd`/userdata --load-and-launch-app=`pwd`
608 <p> The script start the app and configure Chromium to use the Tor
609 SOCKS5 proxy to make sure those controlling the Signal servers (today
610 Amazon and Whisper Systems) as well as those listening on the lines
611 will have a harder time location my laptop based on the Signal
612 connections if they use source IP address.
</p>
614 <p>When the script starts, one need to follow the instructions under
615 "Standalone Registration" in the CONTRIBUTING.md file in the git
616 repository. I right clicked on the Signal window to get up the
617 Chromium debugging tool, visited the 'Console' tab and wrote
618 'extension.install("standalone")' on the console prompt to get the
619 registration form. Then I entered by land line phone number and
620 pressed 'Call'.
5 seconds later the phone rang and a robot voice
621 repeated the verification code three times. After entering the number
622 into the verification code field in the form, I could start using
623 Signal from my laptop.
625 <p>As far as I can tell, The Signal app will leak who is talking to
626 whom and thus who know who to those controlling the central server,
627 but such leakage is hard to avoid with a centrally controlled server
628 setup. It is something to keep in mind when using Signal - the
629 content of your chats are harder to intercept, but the meta data
630 exposing your contact network is available to people you do not know.
631 So better than many options, but not great. And sadly the usage is
632 connected to my land line, thus allowing those controlling the server
633 to associate it to my home and person. I would prefer it if only
634 those I knew could tell who I was on Signal. There are options
635 avoiding such information leakage, but most of my friends are not
636 using them, so I am stuck with Signal for now.
</p>
641 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>.
646 <div class=
"padding"></div>
649 <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>
650 <div class=
"date"> 6th June
2016</div>
651 <div class=
"body"><p>When I set out a few weeks ago to figure out
652 <a href=
"http://people.skolelinux.org/pere/blog/What_is_the_best_multimedia_player_in_Debian_.html">which
653 multimedia player in Debian claimed to support most file formats /
654 MIME types
</a>, I was a bit surprised how varied the sets of MIME types
655 the various players claimed support for. The range was from
55 to
130
656 MIME types. I suspect most media formats are supported by all
657 players, but this is not really reflected in the MimeTypes values in
658 their desktop files. There are probably also some bogus MIME types
659 listed, but it is hard to identify which one this is.
</p>
661 <p>Anyway, in the mean time I got in touch with upstream for some of
662 the players suggesting to add more MIME types to their desktop files,
663 and decided to spend some time myself improving the situation for my
664 favorite media player VLC. The fixes for VLC entered Debian unstable
665 yesterday. The complete list of MIME types can be seen on the
666 <a href=
"https://wiki.debian.org/DebianMultimedia/PlayerSupport">Multimedia
667 player MIME type support status
</a> Debian wiki page.
</p>
669 <p>The new "best" multimedia player in Debian? It is VLC, followed by
670 totem, parole, kplayer, gnome-mpv, mpv, smplayer, mplayer-gui and
671 kmplayer. I am sure some of the other players desktop files support
672 several of the formats currently listed as working only with vlc,
673 toten and parole.
</p>
675 <p>A sad observation is that only
14 MIME types are listed as
676 supported by all the tested multimedia players in Debian in their
677 desktop files: audio/mpeg, audio/vnd.rn-realaudio, audio/x-mpegurl,
678 audio/x-ms-wma, audio/x-scpls, audio/x-wav, video/mp4, video/mpeg,
679 video/quicktime, video/vnd.rn-realvideo, video/x-matroska,
680 video/x-ms-asf, video/x-ms-wmv and video/x-msvideo. Personally I find
681 it sad that video/ogg and video/webm is not supported by all the media
682 players in Debian. As far as I can tell, all of them can handle both
688 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>.
693 <div class=
"padding"></div>
696 <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>
697 <div class=
"date"> 5th June
2016</div>
698 <div class=
"body"><p>Many years ago, when koffice was fresh and with few users, I
699 decided to test its presentation tool when making the slides for a
700 talk I was giving for NUUG on Japhar, a free Java virtual machine. I
701 wrote the first draft of the slides, saved the result and went to bed
702 the day before I would give the talk. The next day I took a plane to
703 the location where the meeting should take place, and on the plane I
704 started up koffice again to polish the talk a bit, only to discover
705 that kpresenter refused to load its own data file. I cursed a bit and
706 started making the slides again from memory, to have something to
707 present when I arrived. I tested that the saved files could be
708 loaded, and the day seemed to be rescued. I continued to polish the
709 slides until I suddenly discovered that the saved file could no longer
710 be loaded into kpresenter. In the end I had to rewrite the slides
711 three times, condensing the content until the talk became shorter and
712 shorter. After the talk I was able to pinpoint the problem
–
713 kpresenter wrote inline images in a way itself could not understand.
714 Eventually that bug was fixed and kpresenter ended up being a great
715 program to make slides. The point I'm trying to make is that we
716 expect a program to be able to load its own data files, and it is
717 embarrassing to its developers if it can't.
</p>
719 <p>Did you ever experience a program failing to load its own data
720 files from the desktop file browser? It is not a uncommon problem. A
721 while back I discovered that the screencast recorder
722 gtk-recordmydesktop would save an Ogg Theora video file the KDE file
723 browser would refuse to open. No video player claimed to understand
724 such file. I tracked down the cause being
<tt>file --mime-type
</tt>
725 returning the application/ogg MIME type, which no video player I had
726 installed listed as a MIME type they would understand. I asked for
727 <a href=
"http://bugs.gw.com/view.php?id=382">file to change its
728 behavour
</a> and use the MIME type video/ogg instead. I also asked
729 several video players to add video/ogg to their desktop files, to give
730 the file browser an idea what to do about Ogg Theora files. After a
731 while, the desktop file browsers in Debian started to handle the
732 output from gtk-recordmydesktop properly.
</p>
734 <p>But history repeats itself. A few days ago I tested the music
735 system Rosegarden again, and I discovered that the KDE and xfce file
736 browsers did not know what to do with the Rosegarden project files
737 (*.rg). I've reported
<a href=
"http://bugs.debian.org/825993">the
738 rosegarden problem to BTS
</a> and a fix is commited to git and will be
739 included in the next upload. To increase the chance of me remembering
740 how to fix the problem next time some program fail to load its files
741 from the file browser, here are some notes on how to fix it.
</p>
743 <p>The file browsers in Debian in general operates on MIME types.
744 There are two sources for the MIME type of a given file. The output from
745 <tt>file --mime-type
</tt> mentioned above, and the content of the
746 shared MIME type registry (under /usr/share/mime/). The file MIME
747 type is mapped to programs supporting the MIME type, and this
748 information is collected from
749 <a href=
"https://www.freedesktop.org/wiki/Specifications/desktop-entry-spec/">the
750 desktop files
</a> available in /usr/share/applications/. If there is
751 one desktop file claiming support for the MIME type of the file, it is
752 activated when asking to open a given file. If there are more, one
753 can normally select which one to use by right-clicking on the file and
754 selecting the wanted one using 'Open with' or similar. In general
755 this work well. But it depend on each program picking a good MIME
757 <a href=
"http://www.iana.org/assignments/media-types/media-types.xhtml">a
758 MIME type registered with IANA
</a>), file and/or the shared MIME
759 registry recognizing the file and the desktop file to list the MIME
760 type in its list of supported MIME types.
</p>
762 <p>The
<tt>/usr/share/mime/packages/rosegarden.xml
</tt> entry for
763 <a href=
"http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec">the
764 Shared MIME database
</a> look like this:
</p>
767 <?xml
version="
1.0"
encoding="UTF-
8"?
>
768 <mime-info
xmlns="http://www.freedesktop.org/standards/shared-mime-info"
>
769 <mime-type
type="audio/x-rosegarden"
>
770 <sub-class-of
type="application/x-gzip"/
>
771 <comment
>Rosegarden project file
</comment
>
772 <glob
pattern="*.rg"/
>
775 </pre></blockquote></p>
777 <p>This states that audio/x-rosegarden is a kind of application/x-gzip
778 (it is a gzipped XML file). Note, it is much better to use an
779 official MIME type registered with IANA than it is to make up ones own
780 unofficial ones like the x-rosegarden type used by rosegarden.
</p>
782 <p>The desktop file of the rosegarden program failed to list
783 audio/x-rosegarden in its list of supported MIME types, causing the
784 file browsers to have no idea what to do with *.rg files:
</p>
787 % grep Mime /usr/share/applications/rosegarden.desktop
788 MimeType=audio/x-rosegarden-composition;audio/x-rosegarden-device;audio/x-rosegarden-project;audio/x-rosegarden-template;audio/midi;
789 X-KDE-NativeMimeType=audio/x-rosegarden-composition
791 </pre></blockquote></p>
793 <p>The fix was to add "audio/x-rosegarden;" at the end of the
796 <p>If you run into a file which fail to open the correct program when
797 selected from the file browser, please check out the output from
798 <tt>file --mime-type
</tt> for the file, ensure the file ending and
799 MIME type is registered somewhere under /usr/share/mime/ and check
800 that some desktop file under /usr/share/applications/ is claiming
801 support for this MIME type. If not, please report a bug to have it
807 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>.
812 <div class=
"padding"></div>
814 <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>
825 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/01/">January (
3)
</a></li>
827 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/02/">February (
2)
</a></li>
829 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/03/">March (
3)
</a></li>
831 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/04/">April (
8)
</a></li>
833 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/05/">May (
8)
</a></li>
835 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/06/">June (
2)
</a></li>
837 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/07/">July (
2)
</a></li>
839 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/08/">August (
5)
</a></li>
841 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/09/">September (
1)
</a></li>
848 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/01/">January (
7)
</a></li>
850 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/02/">February (
6)
</a></li>
852 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/03/">March (
1)
</a></li>
854 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/04/">April (
4)
</a></li>
856 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/05/">May (
3)
</a></li>
858 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/06/">June (
4)
</a></li>
860 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/07/">July (
6)
</a></li>
862 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/08/">August (
2)
</a></li>
864 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/09/">September (
2)
</a></li>
866 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/10/">October (
9)
</a></li>
868 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/11/">November (
6)
</a></li>
870 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/12/">December (
3)
</a></li>
877 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/01/">January (
2)
</a></li>
879 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/02/">February (
3)
</a></li>
881 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/03/">March (
8)
</a></li>
883 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/04/">April (
7)
</a></li>
885 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/05/">May (
1)
</a></li>
887 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/06/">June (
2)
</a></li>
889 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/07/">July (
2)
</a></li>
891 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/08/">August (
2)
</a></li>
893 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/09/">September (
5)
</a></li>
895 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/10/">October (
6)
</a></li>
897 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/11/">November (
3)
</a></li>
899 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/12/">December (
5)
</a></li>
906 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/01/">January (
11)
</a></li>
908 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/02/">February (
9)
</a></li>
910 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/03/">March (
9)
</a></li>
912 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/04/">April (
6)
</a></li>
914 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/05/">May (
9)
</a></li>
916 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/06/">June (
10)
</a></li>
918 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/07/">July (
7)
</a></li>
920 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/08/">August (
3)
</a></li>
922 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/09/">September (
5)
</a></li>
924 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/10/">October (
7)
</a></li>
926 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/11/">November (
9)
</a></li>
928 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/12/">December (
3)
</a></li>
935 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/01/">January (
7)
</a></li>
937 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/02/">February (
10)
</a></li>
939 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/03/">March (
17)
</a></li>
941 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/04/">April (
12)
</a></li>
943 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/05/">May (
12)
</a></li>
945 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/06/">June (
20)
</a></li>
947 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/07/">July (
17)
</a></li>
949 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/08/">August (
6)
</a></li>
951 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/09/">September (
9)
</a></li>
953 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/10/">October (
17)
</a></li>
955 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/11/">November (
10)
</a></li>
957 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/12/">December (
7)
</a></li>
964 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/01/">January (
16)
</a></li>
966 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/02/">February (
6)
</a></li>
968 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/03/">March (
6)
</a></li>
970 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/04/">April (
7)
</a></li>
972 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/05/">May (
3)
</a></li>
974 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/06/">June (
2)
</a></li>
976 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/07/">July (
7)
</a></li>
978 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/08/">August (
6)
</a></li>
980 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/09/">September (
4)
</a></li>
982 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/10/">October (
2)
</a></li>
984 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/11/">November (
3)
</a></li>
986 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/12/">December (
1)
</a></li>
993 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/01/">January (
2)
</a></li>
995 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/02/">February (
1)
</a></li>
997 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/03/">March (
3)
</a></li>
999 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/04/">April (
3)
</a></li>
1001 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/05/">May (
9)
</a></li>
1003 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/06/">June (
14)
</a></li>
1005 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/07/">July (
12)
</a></li>
1007 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/08/">August (
13)
</a></li>
1009 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/09/">September (
7)
</a></li>
1011 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/10/">October (
9)
</a></li>
1013 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/11/">November (
13)
</a></li>
1015 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/12/">December (
12)
</a></li>
1022 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/01/">January (
8)
</a></li>
1024 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/02/">February (
8)
</a></li>
1026 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/03/">March (
12)
</a></li>
1028 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/04/">April (
10)
</a></li>
1030 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/05/">May (
9)
</a></li>
1032 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/06/">June (
3)
</a></li>
1034 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/07/">July (
4)
</a></li>
1036 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/08/">August (
3)
</a></li>
1038 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/09/">September (
1)
</a></li>
1040 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/10/">October (
2)
</a></li>
1042 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/11/">November (
3)
</a></li>
1044 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/12/">December (
3)
</a></li>
1051 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/11/">November (
5)
</a></li>
1053 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/12/">December (
7)
</a></li>
1064 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (
13)
</a></li>
1066 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/amiga">amiga (
1)
</a></li>
1068 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/aros">aros (
1)
</a></li>
1070 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bankid">bankid (
4)
</a></li>
1072 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (
9)
</a></li>
1074 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (
16)
</a></li>
1076 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bsa">bsa (
2)
</a></li>
1078 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (
2)
</a></li>
1080 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian (
135)
</a></li>
1082 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (
157)
</a></li>
1084 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/digistan">digistan (
10)
</a></li>
1086 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/dld">dld (
15)
</a></li>
1088 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/docbook">docbook (
23)
</a></li>
1090 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (
4)
</a></li>
1092 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/english">english (
327)
</a></li>
1094 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (
23)
</a></li>
1096 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (
12)
</a></li>
1098 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (
28)
</a></li>
1100 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (
9)
</a></li>
1102 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (
18)
</a></li>
1104 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/h264">h264 (
20)
</a></li>
1106 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/intervju">intervju (
42)
</a></li>
1108 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (
12)
</a></li>
1110 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/kart">kart (
19)
</a></li>
1112 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ldap">ldap (
9)
</a></li>
1114 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lenker">lenker (
8)
</a></li>
1116 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (
2)
</a></li>
1118 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (
1)
</a></li>
1120 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (
8)
</a></li>
1122 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (
39)
</a></li>
1124 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (
8)
</a></li>
1126 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk (
277)
</a></li>
1128 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug (
182)
</a></li>
1130 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (
26)
</a></li>
1132 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/open311">open311 (
2)
</a></li>
1134 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (
61)
</a></li>
1136 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern (
92)
</a></li>
1138 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/raid">raid (
1)
</a></li>
1140 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reactos">reactos (
1)
</a></li>
1142 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reprap">reprap (
11)
</a></li>
1144 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rfid">rfid (
3)
</a></li>
1146 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot (
9)
</a></li>
1148 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rss">rss (
1)
</a></li>
1150 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ruter">ruter (
4)
</a></li>
1152 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (
2)
</a></li>
1154 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (
48)
</a></li>
1156 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (
4)
</a></li>
1158 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (
5)
</a></li>
1160 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard (
49)
</a></li>
1162 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (
4)
</a></li>
1164 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (
10)
</a></li>
1166 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (
38)
</a></li>
1168 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (
2)
</a></li>
1170 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/usenix">usenix (
2)
</a></li>
1172 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/valg">valg (
8)
</a></li>
1174 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/video">video (
59)
</a></li>
1176 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (
4)
</a></li>
1178 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/web">web (
38)
</a></li>
1184 <p style=
"text-align: right">
1185 Created by
<a href=
"http://steve.org.uk/Software/chronicle">Chronicle v4.6
</a>