]> pere.pagekite.me Git - homepage.git/blob - blog/archive/2018/10/index.html
Generated.
[homepage.git] / blog / archive / 2018 / 10 / index.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen: entries from October 2018</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="10.rss" type="application/rss+xml" />
10 </head>
11 <body>
12 <!-- XML FEED -->
13 <div class="title">
14 <h1>
15 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
16
17 </h1>
18
19 </div>
20
21
22 <h3>Entries from October 2018.</h3>
23
24 <div class="entry">
25 <div class="title">
26 <a href="http://people.skolelinux.org/pere/blog/Web_browser_integration_of_VLC_with_Bittorrent_support.html">Web browser integration of VLC with Bittorrent support</a>
27 </div>
28 <div class="date">
29 21st October 2018
30 </div>
31 <div class="body">
32 <p>Bittorrent is as far as I know, currently the most efficient way to
33 distribute content on the Internet. It is used all by all sorts of
34 content providers, from national TV stations like
35 <a href="https://www.nrk.no/">NRK</a>, Linux distributors like
36 <a href="https://www.debian.org/">Debian</a> and
37 <a href="https://www.ubuntu.com/">Ubuntu</a>, and of course the
38 <a href="https://archive.org/">Internet archive</A>.
39
40 <p>Almost a month ago
41 <a href="https://tracker.debian.org/pkg/vlc-plugin-bittorrent">a new
42 package adding Bittorrent support to VLC</a> became available in
43 Debian testing and unstable. To test it, simply install it like
44 this:</p>
45
46 <p><pre>
47 apt install vlc-plugin-bittorrent
48 </pre></p>
49
50 <p>Since the plugin was made available for the first time in Debian,
51 several improvements have been made to it. In version 2.2-4, now
52 available in both testing and unstable, a desktop file is provided to
53 teach browsers to start VLC when the user click on torrent files or
54 magnet links. The last part is thanks to me finally understanding
55 what the strange x-scheme-handler style MIME types in desktop files
56 are used for. By adding x-scheme-handler/magnet to the MimeType entry
57 in the desktop file, at least the browsers Firefox and Chromium will
58 suggest to start VLC when selecting a magnet URI on a web page. The
59 end result is that now, with the plugin installed in Buster og Sid,
60 one can visit any
61 <a href="https://archive.org/details/CopyingIsNotTheft1080p">Internet
62 Archive page with movies</a> using a web browser and click on the
63 torrent link to start streaming the movie.</p>
64
65 <p>Note, there is still some misfeatures in the plugin. One is the
66 fact that it will hang and
67 <a href="https://github.com/johang/vlc-bittorrent/issues/13">block VLC
68 from exiting until the torrent streaming starts</a>. Another is the
69 fact that it
70 <a href="https://github.com/johang/vlc-bittorrent/issues/9">will pick
71 and play a random file in a multi file torrent</a>. This is not
72 always the video file you want. Combined with the first it can be a
73 bit hard to get the video streaming going. But when it work, it seem
74 to do a good job.</p>
75
76 <p>For the Debian packaging, I would love to find a good way to test
77 if the plugin work with VLC using autopkgtest. I tried, but do not
78 know enough of the inner workings of VLC to get it working. For now
79 the autopkgtest script is only checking if the .so file was
80 successfully loaded by VLC. If you have any suggestions, please
81 submit a patch to the Debian bug tracking system.</p>
82
83 <p>As usual, if you use Bitcoin and want to show your support of my
84 activities, please send Bitcoin donations to my address
85 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
86
87 </div>
88 <div class="tags">
89
90
91 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/verkidetfri">verkidetfri</a>, <a href="http://people.skolelinux.org/pere/blog/tags/video">video</a>.
92
93
94 </div>
95 </div>
96 <div class="padding"></div>
97
98 <div class="entry">
99 <div class="title">
100 <a href="http://people.skolelinux.org/pere/blog/Release_0_2_of_free_software_archive_system_Nikita_announced.html">Release 0.2 of free software archive system Nikita announced</a>
101 </div>
102 <div class="date">
103 18th October 2018
104 </div>
105 <div class="body">
106 <p>This morning, the new release of the
107 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
108 Noark 5 core project</a> was
109 <a href="https://lists.nuug.no/pipermail/nikita-noark/2018-October/000406.html">announced
110 on the project mailing list</a>. The free software solution is an
111 implementation of the Norwegian archive standard Noark 5 used by
112 government offices in Norway. These were the changes in version 0.2
113 since version 0.1.1 (from NEWS.md):
114
115 <ul>
116 <li>Fix typos in REL names</li>
117 <li>Tidy up error message reporting</li>
118 <li>Fix issue where we used Integer.valueOf(), not Integer.getInteger()</li>
119 <li>Change some String handling to StringBuffer</li>
120 <li>Fix error reporting</li>
121 <li>Code tidy-up</li>
122 <li>Fix issue using static non-synchronized SimpleDateFormat to avoid
123 race conditions</li>
124 <li>Fix problem where deserialisers were treating integers as strings</li>
125 <li>Update methods to make them null-safe</li>
126 <li>Fix many issues reported by coverity</li>
127 <li>Improve equals(), compareTo() and hash() in domain model</li>
128 <li>Improvements to the domain model for metadata classes</li>
129 <li>Fix CORS issues when downloading document</li>
130 <li>Implementation of case-handling with registryEntry and document upload</li>
131 <li>Better support in Javascript for OPTIONS</li>
132 <li>Adding concept description of mail integration</li>
133 <li>Improve setting of default values for GET on ny-journalpost</li>
134 <li>Better handling of required values during deserialisation </li>
135 <li>Changed tilknyttetDato (M620) from date to dateTime</li>
136 <li>Corrected some opprettetDato (M600) (de)serialisation errors.</li>
137 <li>Improve parse error reporting.</li>
138 <li>Started on OData search and filtering.</li>
139 <li>Added Contributor Covenant Code of Conduct to project.</li>
140 <li>Moved repository and project from Github to Gitlab.</li>
141 <li>Restructured repository, moved code into src/ and web/.</li>
142 <li>Updated code to use Spring Boot version 2.</li>
143 <li>Added support for OAuth2 authentication.</li>
144 <li>Fixed several bugs discovered by Coverity.</li>
145 <li>Corrected handling of date/datetime fields.</li>
146 <li>Improved error reporting when rejecting during deserializatoin.</li>
147 <li>Adjusted default values provided for ny-arkivdel, ny-mappe,
148 ny-saksmappe, ny-journalpost and ny-dokumentbeskrivelse.</li>
149 <li>Several fixes for korrespondansepart*.</li>
150 <li>Updated web GUI:
151 <ul>
152 <li>Now handle both file upload and download.</li>
153 <li>Uses new OAuth2 authentication for login.</li>
154 <li>Forms now fetches default values from API using GET.</li>
155 <li>Added RFC 822 (email), TIFF and JPEG to list of possible file formats.</li>
156 </ul></li>
157 </ul>
158
159 <p>The changes and improvements are extensive. Running diffstat on
160 the changes between git tab 0.1.1 and 0.2 show 1098 files changed,
161 108666 insertions(+), 54066 deletions(-).</p>
162
163 <p>If free and open standardized archiving API sound interesting to
164 you, please contact us on IRC
165 (<a href="irc://irc.freenode.net/%23nikita">#nikita on
166 irc.freenode.net</a>) or email
167 (<a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">nikita-noark
168 mailing list</a>).</p>
169
170 <p>As usual, if you use Bitcoin and want to show your support of my
171 activities, please send Bitcoin donations to my address
172 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
173
174 </div>
175 <div class="tags">
176
177
178 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
179
180
181 </div>
182 </div>
183 <div class="padding"></div>
184
185 <div class="entry">
186 <div class="title">
187 <a href="http://people.skolelinux.org/pere/blog/Fetching_trusted_timestamps_using_the_rfc3161ng_python_module.html">Fetching trusted timestamps using the rfc3161ng python module</a>
188 </div>
189 <div class="date">
190 8th October 2018
191 </div>
192 <div class="body">
193 <p>I have earlier covered the basics of trusted timestamping using the
194 'openssl ts' client. See blog post for
195 <a href="http://people.skolelinux.org/pere/blog/Public_Trusted_Timestamping_services_for_everyone.html">2014</a>,
196 <a href="http://people.skolelinux.org/pere/blog/syslog_trusted_timestamp___chain_of_trusted_timestamps_for_your_syslog.html">2016</a>
197 and
198 <a href="http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html">2017</a>
199 for those stories. But some times I want to integrate the timestamping
200 in other code, and recently I needed to integrate it into Python.
201 After searching a bit, I found
202 <a href="https://dev.entrouvert.org/projects/python-rfc3161">the
203 rfc3161 library</a> which seemed like a good fit, but I soon
204 discovered it only worked for python version 2, and I needed something
205 that work with python version 3. Luckily I next came across
206 <a href="https://github.com/trbs/rfc3161ng/">the rfc3161ng library</a>,
207 a fork of the original rfc3161 library. Not only is it working with
208 python 3, it have fixed a few of the bugs in the original library, and
209 it has an active maintainer. I decided to wrap it up and make it
210 <a href="https://tracker.debian.org/pkg/python-rfc3161ng">available in
211 Debian</a>, and a few days ago it entered Debian unstable and testing.</p>
212
213 <p>Using the library is fairly straight forward. The only slightly
214 problematic step is to fetch the required certificates to verify the
215 timestamp. For some services it is straight forward, while for others
216 I have not yet figured out how to do it. Here is a small standalone
217 code example based on of the integration tests in the library code:</p>
218
219 <pre>
220 #!/usr/bin/python3
221
222 """
223
224 Python 3 script demonstrating how to use the rfc3161ng module to
225 get trusted timestamps.
226
227 The license of this code is the same as the license of the rfc3161ng
228 library, ie MIT/BSD.
229
230 """
231
232 import os
233 import pyasn1.codec.der
234 import rfc3161ng
235 import subprocess
236 import tempfile
237 import urllib.request
238
239 def store(f, data):
240 f.write(data)
241 f.flush()
242 f.seek(0)
243
244 def fetch(url, f=None):
245 response = urllib.request.urlopen(url)
246 data = response.read()
247 if f:
248 store(f, data)
249 return data
250
251 def main():
252 with tempfile.NamedTemporaryFile() as cert_f,\
253 tempfile.NamedTemporaryFile() as ca_f,\
254 tempfile.NamedTemporaryFile() as msg_f,\
255 tempfile.NamedTemporaryFile() as tsr_f:
256
257 # First fetch certificates used by service
258 certificate_data = fetch('https://freetsa.org/files/tsa.crt', cert_f)
259 ca_data_data = fetch('https://freetsa.org/files/cacert.pem', ca_f)
260
261 # Then timestamp the message
262 timestamper = \
263 rfc3161ng.RemoteTimestamper('http://freetsa.org/tsr',
264 certificate=certificate_data)
265 data = b"Python forever!\n"
266 tsr = timestamper(data=data, return_tsr=True)
267
268 # Finally, convert message and response to something 'openssl ts' can verify
269 store(msg_f, data)
270 store(tsr_f, pyasn1.codec.der.encoder.encode(tsr))
271 args = ["openssl", "ts", "-verify",
272 "-data", msg_f.name,
273 "-in", tsr_f.name,
274 "-CAfile", ca_f.name,
275 "-untrusted", cert_f.name]
276 subprocess.check_call(args)
277
278 if '__main__' == __name__:
279 main()
280 </pre>
281
282 <p>The code fetches the required certificates, store them as temporary
283 files, timestamp a simple message, store the message and timestamp to
284 disk and ask 'openssl ts' to verify the timestamp. A timestamp is
285 around 1.5 kiB in size, and should be fairly easy to store for future
286 use.</p>
287
288 <p>As usual, if you use Bitcoin and want to show your support of my
289 activities, please send Bitcoin donations to my address
290 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
291
292 </div>
293 <div class="tags">
294
295
296 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet</a>.
297
298
299 </div>
300 </div>
301 <div class="padding"></div>
302
303 <div class="entry">
304 <div class="title">
305 <a href="http://people.skolelinux.org/pere/blog/Automatic_Google_Drive_sync_using_grive_in_Debian.html">Automatic Google Drive sync using grive in Debian</a>
306 </div>
307 <div class="date">
308 4th October 2018
309 </div>
310 <div class="body">
311 <p>A few days, I rescued a Windows victim over to Debian. To try to
312 rescue the remains, I helped set up automatic sync with Google Drive.
313 I did not find any sensible Debian package handling this
314 automatically, so I rebuild the grive2 source from
315 <a href="http://www.webupd8.org/">the Ubuntu UPD8 PPA</a> to do the
316 task and added a autostart desktop entry and a small shell script to
317 run in the background while the user is logged in to do the sync.
318 Here is a sketch of the setup for future reference.</p>
319
320 <p>I first created <tt>~/googledrive</tt>, entered the directory and
321 ran '<tt>grive -a</tt>' to authenticate the machine/user. Next, I
322 created a autostart hook in <tt>~/.config/autostart/grive.desktop</tt>
323 to start the sync when the user log in:</p>
324
325 <p><blockquote><pre>
326 [Desktop Entry]
327 Name=Google drive autosync
328 Type=Application
329 Exec=/home/user/bin/grive-sync
330 </pre></blockquote></p>
331
332 <p>Finally, I wrote the <tt>~/bin/grive-sync</tt> script to sync
333 ~/googledrive/ with the files in Google Drive.</p>
334
335 <p><blockquote><pre>
336 #!/bin/sh
337 set -e
338 cd ~/
339 cleanup() {
340 if [ "$syncpid" ] ; then
341 kill $syncpid
342 fi
343 }
344 trap cleanup EXIT INT QUIT
345 /usr/lib/grive/grive-sync.sh listen googledrive 2>&1 | sed "s%^%$0:%" &
346 syncpdi=$!
347 while true; do
348 if ! xhost >/dev/null 2>&1 ; then
349 echo "no DISPLAY, exiting as the user probably logged out"
350 exit 1
351 fi
352 if [ ! -e /run/user/1000/grive-sync.sh_googledrive ] ; then
353 /usr/lib/grive/grive-sync.sh sync googledrive
354 fi
355 sleep 300
356 done 2>&1 | sed "s%^%$0:%"
357 </pre></blockquote></p>
358
359 <p>Feel free to use the setup if you want. It can be assumed to be
360 GNU GPL v2 licensed (or any later version, at your leisure), but I
361 doubt this code is possible to claim copyright on.</p>
362
363 <p>As usual, if you use Bitcoin and want to show your support of my
364 activities, please send Bitcoin donations to my address
365 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
366
367 </div>
368 <div class="tags">
369
370
371 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>.
372
373
374 </div>
375 </div>
376 <div class="padding"></div>
377
378 <p style="text-align: right;"><a href="10.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS Feed" width="36" height="14" /></a></p>
379 <div id="sidebar">
380
381
382
383 <h2>Archive</h2>
384 <ul>
385
386 <li>2018
387 <ul>
388
389 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/01/">January (1)</a></li>
390
391 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/02/">February (5)</a></li>
392
393 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/03/">March (5)</a></li>
394
395 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/04/">April (3)</a></li>
396
397 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/06/">June (2)</a></li>
398
399 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/07/">July (5)</a></li>
400
401 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/08/">August (3)</a></li>
402
403 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/09/">September (3)</a></li>
404
405 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/10/">October (4)</a></li>
406
407 </ul></li>
408
409 <li>2017
410 <ul>
411
412 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/01/">January (4)</a></li>
413
414 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/02/">February (3)</a></li>
415
416 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/03/">March (5)</a></li>
417
418 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/04/">April (2)</a></li>
419
420 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/06/">June (5)</a></li>
421
422 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/07/">July (1)</a></li>
423
424 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/08/">August (1)</a></li>
425
426 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/09/">September (3)</a></li>
427
428 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/10/">October (5)</a></li>
429
430 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/11/">November (3)</a></li>
431
432 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/12/">December (4)</a></li>
433
434 </ul></li>
435
436 <li>2016
437 <ul>
438
439 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/01/">January (3)</a></li>
440
441 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/02/">February (2)</a></li>
442
443 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/03/">March (3)</a></li>
444
445 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/04/">April (8)</a></li>
446
447 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/05/">May (8)</a></li>
448
449 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/06/">June (2)</a></li>
450
451 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/07/">July (2)</a></li>
452
453 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/08/">August (5)</a></li>
454
455 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/09/">September (2)</a></li>
456
457 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/10/">October (3)</a></li>
458
459 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/11/">November (8)</a></li>
460
461 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/12/">December (5)</a></li>
462
463 </ul></li>
464
465 <li>2015
466 <ul>
467
468 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/01/">January (7)</a></li>
469
470 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/02/">February (6)</a></li>
471
472 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/03/">March (1)</a></li>
473
474 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/04/">April (4)</a></li>
475
476 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/05/">May (3)</a></li>
477
478 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/06/">June (4)</a></li>
479
480 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/07/">July (6)</a></li>
481
482 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/08/">August (2)</a></li>
483
484 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/09/">September (2)</a></li>
485
486 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/10/">October (9)</a></li>
487
488 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/11/">November (6)</a></li>
489
490 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/12/">December (3)</a></li>
491
492 </ul></li>
493
494 <li>2014
495 <ul>
496
497 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
498
499 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
500
501 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
502
503 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/04/">April (7)</a></li>
504
505 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/05/">May (1)</a></li>
506
507 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/06/">June (2)</a></li>
508
509 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/07/">July (2)</a></li>
510
511 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/08/">August (2)</a></li>
512
513 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/09/">September (5)</a></li>
514
515 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/10/">October (6)</a></li>
516
517 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/11/">November (3)</a></li>
518
519 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/12/">December (5)</a></li>
520
521 </ul></li>
522
523 <li>2013
524 <ul>
525
526 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
527
528 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
529
530 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
531
532 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
533
534 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
535
536 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
537
538 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
539
540 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
541
542 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
543
544 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
545
546 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
547
548 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
549
550 </ul></li>
551
552 <li>2012
553 <ul>
554
555 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
556
557 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
558
559 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
560
561 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
562
563 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
564
565 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
566
567 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
568
569 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
570
571 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
572
573 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
574
575 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
576
577 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
578
579 </ul></li>
580
581 <li>2011
582 <ul>
583
584 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
585
586 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
587
588 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
589
590 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
591
592 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
593
594 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
595
596 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
597
598 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
599
600 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
601
602 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
603
604 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
605
606 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
607
608 </ul></li>
609
610 <li>2010
611 <ul>
612
613 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
614
615 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
616
617 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
618
619 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
620
621 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
622
623 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
624
625 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
626
627 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
628
629 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
630
631 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
632
633 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
634
635 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
636
637 </ul></li>
638
639 <li>2009
640 <ul>
641
642 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
643
644 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
645
646 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
647
648 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
649
650 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
651
652 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
653
654 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
655
656 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
657
658 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
659
660 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
661
662 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
663
664 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
665
666 </ul></li>
667
668 <li>2008
669 <ul>
670
671 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
672
673 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
674
675 </ul></li>
676
677 </ul>
678
679
680
681 <h2>Tags</h2>
682 <ul>
683
684 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (16)</a></li>
685
686 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
687
688 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
689
690 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
691
692 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (10)</a></li>
693
694 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (17)</a></li>
695
696 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
697
698 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
699
700 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (163)</a></li>
701
702 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (158)</a></li>
703
704 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian-handbook">debian-handbook (4)</a></li>
705
706 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (10)</a></li>
707
708 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld">dld (17)</a></li>
709
710 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (25)</a></li>
711
712 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
713
714 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (389)</a></li>
715
716 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
717
718 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (13)</a></li>
719
720 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (32)</a></li>
721
722 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (9)</a></li>
723
724 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (18)</a></li>
725
726 <li><a href="http://people.skolelinux.org/pere/blog/tags/h264">h264 (20)</a></li>
727
728 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (42)</a></li>
729
730 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (16)</a></li>
731
732 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (20)</a></li>
733
734 <li><a href="http://people.skolelinux.org/pere/blog/tags/kodi">kodi (3)</a></li>
735
736 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
737
738 <li><a href="http://people.skolelinux.org/pere/blog/tags/lego">lego (4)</a></li>
739
740 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (8)</a></li>
741
742 <li><a href="http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (2)</a></li>
743
744 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
745
746 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
747
748 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (41)</a></li>
749
750 <li><a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (10)</a></li>
751
752 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (299)</a></li>
753
754 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (191)</a></li>
755
756 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (34)</a></li>
757
758 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
759
760 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (72)</a></li>
761
762 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (107)</a></li>
763
764 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (2)</a></li>
765
766 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
767
768 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
769
770 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (3)</a></li>
771
772 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (10)</a></li>
773
774 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
775
776 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (6)</a></li>
777
778 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
779
780 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (55)</a></li>
781
782 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
783
784 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (5)</a></li>
785
786 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (56)</a></li>
787
788 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (6)</a></li>
789
790 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (12)</a></li>
791
792 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (55)</a></li>
793
794 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (4)</a></li>
795
796 <li><a href="http://people.skolelinux.org/pere/blog/tags/usenix">usenix (2)</a></li>
797
798 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (9)</a></li>
799
800 <li><a href="http://people.skolelinux.org/pere/blog/tags/verkidetfri">verkidetfri (13)</a></li>
801
802 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (69)</a></li>
803
804 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
805
806 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (41)</a></li>
807
808 </ul>
809
810
811 </div>
812 <p style="text-align: right">
813 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
814 </p>
815
816 </body>
817 </html>