]> pere.pagekite.me Git - homepage.git/blob - blog/archive/2013/11/index.html
Link to archive.org.
[homepage.git] / blog / archive / 2013 / 11 / 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 November 2013</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="11.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 November 2013.</h3>
23
24 <div class="entry">
25 <div class="title">
26 <a href="http://people.skolelinux.org/pere/blog/Lets_make_a_wireless_community_network_in_Oslo_.html">Lets make a wireless community network in Oslo!</a>
27 </div>
28 <div class="date">
29 13th November 2013
30 </div>
31 <div class="body">
32 <p>Today NUUG and Hackeriet announced
33 <a href="http://www.nuug.no/news/Bli_med___bygge_dugnadsnett_for_alle_i_Oslo.shtml">our
34 plans to join forces and create a wireless community network in
35 Oslo</a>. The workshop to help people get started will take place
36 Thursday 2013-11-28, but we already are collecting the geolocation of
37 people joining forces to make this happen. We have
38 <a href="https://github.com/petterreinholdtsen/meshfx-node/blob/master/oslo-nodes.geojson">9
39 locations plotted on the map</a>, but we will need more before we have
40 a connected mesh spread across Oslo. If this sound interesting to
41 you, please join us at the workshop. If you are too impatient to wait
42 15 days, please join us on the IRC channel
43 <a href="irc://irc.freenode.net/%23nuug">#nuug on irc.freenode.net</a>
44 right away. :)</p>
45
46 </div>
47 <div class="tags">
48
49
50 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>.
51
52
53 </div>
54 </div>
55 <div class="padding"></div>
56
57 <div class="entry">
58 <div class="title">
59 <a href="http://people.skolelinux.org/pere/blog/Running_TP_Link_MR3040_as_a_batman_adv_mesh_node_using_openwrt.html">Running TP-Link MR3040 as a batman-adv mesh node using openwrt</a>
60 </div>
61 <div class="date">
62 10th November 2013
63 </div>
64 <div class="body">
65 <p>Continuing my research into mesh networking, I was recommended to
66 use TP-Link 3040 and 3600 access points as mesh nodes, and the pair I
67 bought arrived on Friday. Here are my notes on how to set up the
68 MR3040 as a mesh node using
69 <a href="http://www.openwrt.org/">OpenWrt</a>.</p>
70
71 <p>I started by following the instructions on the OpenWRT wiki for
72 <a href="http://wiki.openwrt.org/toh/tp-link/tl-mr3040">TL-MR3040</a>,
73 and downloaded
74 <a href="http://downloads.openwrt.org/snapshots/trunk/ar71xx/openwrt-ar71xx-generic-tl-mr3040-v2-squashfs-factory.bin">the
75 recommended firmware image</a>
76 (openwrt-ar71xx-generic-tl-mr3040-v2-squashfs-factory.bin) and
77 uploaded it into the original web interface. The flashing went fine,
78 and the machine was available via telnet on the ethernet port. After
79 logging in and setting the root password, ssh was available and I
80 could start to set it up as a batman-adv mesh node.</p>
81
82 <p>I started off by reading the instructions from
83 <a href="http://wirelessafrica.meraka.org.za/wiki/index.php?title=Antoine's_Research">Wireless
84 Africa</a>, which had quite a lot of useful information, but
85 eventually I followed the recipe from the Open Mesh wiki for
86 <a href="http://www.open-mesh.org/projects/batman-adv/wiki/Batman-adv-openwrt-config">using
87 batman-adv on OpenWrt</a>. A small snag was the fact that the
88 <tt>opkg install kmod-batman-adv</tt> command did not work as it
89 should. The batman-adv kernel module would fail to load because its
90 dependency crc16 was not already loaded. I
91 <a href="https://dev.openwrt.org/ticket/14452">reported the bug</a> to
92 the openwrt project and hope it will be fixed soon. But the problem
93 only seem to affect initial testing of batman-adv, as configuration
94 seem to work when booting from scratch.</p>
95
96 <p>The setup is done using files in /etc/config/. I did not bridge
97 the Ethernet and mesh interfaces this time, to be able to hook up the
98 box on my local network and log into it for configuration updates.
99 The following files were changed and look like this after modifying
100 them:</p>
101
102 <p><tt>/etc/config/network</tt></p>
103
104 <pre>
105
106 config interface 'loopback'
107 option ifname 'lo'
108 option proto 'static'
109 option ipaddr '127.0.0.1'
110 option netmask '255.0.0.0'
111
112 config globals 'globals'
113 option ula_prefix 'fdbf:4c12:3fed::/48'
114
115 config interface 'lan'
116 option ifname 'eth0'
117 option type 'bridge'
118 option proto 'dhcp'
119 option ipaddr '192.168.1.1'
120 option netmask '255.255.255.0'
121 option hostname 'tl-mr3040'
122 option ip6assign '60'
123
124 config interface 'mesh'
125 option ifname 'adhoc0'
126 option mtu '1528'
127 option proto 'batadv'
128 option mesh 'bat0'
129 </pre>
130
131 <p><tt>/etc/config/wireless</tt></p>
132 <pre>
133
134 config wifi-device 'radio0'
135 option type 'mac80211'
136 option channel '11'
137 option hwmode '11ng'
138 option path 'platform/ar933x_wmac'
139 option htmode 'HT20'
140 list ht_capab 'SHORT-GI-20'
141 list ht_capab 'SHORT-GI-40'
142 list ht_capab 'RX-STBC1'
143 list ht_capab 'DSSS_CCK-40'
144 option disabled '0'
145
146 config wifi-iface 'wmesh'
147 option device 'radio0'
148 option ifname 'adhoc0'
149 option network 'mesh'
150 option encryption 'none'
151 option mode 'adhoc'
152 option bssid '02:BA:00:00:00:01'
153 option ssid 'meshfx@hackeriet'
154 </pre>
155 <p><tt>/etc/config/batman-adv</tt></p>
156 <pre>
157
158 config 'mesh' 'bat0'
159 option interfaces 'adhoc0'
160 option 'aggregated_ogms'
161 option 'ap_isolation'
162 option 'bonding'
163 option 'fragmentation'
164 option 'gw_bandwidth'
165 option 'gw_mode'
166 option 'gw_sel_class'
167 option 'log_level'
168 option 'orig_interval'
169 option 'vis_mode'
170 option 'bridge_loop_avoidance'
171 option 'distributed_arp_table'
172 option 'network_coding'
173 option 'hop_penalty'
174
175 # yet another batX instance
176 # config 'mesh' 'bat5'
177 # option 'interfaces' 'second_mesh'
178 </pre>
179
180 <p>The mesh node is now operational. I have yet to test its range,
181 but I hope it is good. I have not yet tested the TP-Link 3600 box
182 still wrapped up in plastic.</p>
183
184 </div>
185 <div class="tags">
186
187
188 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>.
189
190
191 </div>
192 </div>
193 <div class="padding"></div>
194
195 <div class="entry">
196 <div class="title">
197 <a href="http://people.skolelinux.org/pere/blog/Debian_init_d_boot_script_example_for_rsyslog.html">Debian init.d boot script example for rsyslog</a>
198 </div>
199 <div class="date">
200 2nd November 2013
201 </div>
202 <div class="body">
203 <p>If one of the points of switching to a new init system in Debian is
204 <a href="http://thomas.goirand.fr/blog/?p=147">to get rid of huge
205 init.d scripts</a>, I doubt we need to switch away from sysvinit and
206 init.d scripts at all. Here is an example init.d script, ie a rewrite
207 of /etc/init.d/rsyslog:</p>
208
209 <p><pre>
210 #!/lib/init/init-d-script
211 ### BEGIN INIT INFO
212 # Provides: rsyslog
213 # Required-Start: $remote_fs $time
214 # Required-Stop: umountnfs $time
215 # X-Stop-After: sendsigs
216 # Default-Start: 2 3 4 5
217 # Default-Stop: 0 1 6
218 # Short-Description: enhanced syslogd
219 # Description: Rsyslog is an enhanced multi-threaded syslogd.
220 # It is quite compatible to stock sysklogd and can be
221 # used as a drop-in replacement.
222 ### END INIT INFO
223 DESC="enhanced syslogd"
224 DAEMON=/usr/sbin/rsyslogd
225 </pre></p>
226
227 <p>Pretty minimalistic to me... For the record, the original sysv-rc
228 script was 137 lines, and the above is just 15 lines, most of it meta
229 info/comments.</p>
230
231 <p>How to do this, you ask? Well, one create a new script
232 /lib/init/init-d-script looking something like this:
233
234 <p><pre>
235 #!/bin/sh
236
237 # Define LSB log_* functions.
238 # Depend on lsb-base (>= 3.2-14) to ensure that this file is present
239 # and status_of_proc is working.
240 . /lib/lsb/init-functions
241
242 #
243 # Function that starts the daemon/service
244
245 #
246 do_start()
247 {
248 # Return
249 # 0 if daemon has been started
250 # 1 if daemon was already running
251 # 2 if daemon could not be started
252 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
253 || return 1
254 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \
255 $DAEMON_ARGS \
256 || return 2
257 # Add code here, if necessary, that waits for the process to be ready
258 # to handle requests from services started subsequently which depend
259 # on this one. As a last resort, sleep for some time.
260 }
261
262 #
263 # Function that stops the daemon/service
264 #
265 do_stop()
266 {
267 # Return
268 # 0 if daemon has been stopped
269 # 1 if daemon was already stopped
270 # 2 if daemon could not be stopped
271 # other if a failure occurred
272 start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
273 RETVAL="$?"
274 [ "$RETVAL" = 2 ] && return 2
275 # Wait for children to finish too if this is a daemon that forks
276 # and if the daemon is only ever run from this initscript.
277 # If the above conditions are not satisfied then add some other code
278 # that waits for the process to drop all resources that could be
279 # needed by services started subsequently. A last resort is to
280 # sleep for some time.
281 start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
282 [ "$?" = 2 ] && return 2
283 # Many daemons don't delete their pidfiles when they exit.
284 rm -f $PIDFILE
285 return "$RETVAL"
286 }
287
288 #
289 # Function that sends a SIGHUP to the daemon/service
290 #
291 do_reload() {
292 #
293 # If the daemon can reload its configuration without
294 # restarting (for example, when it is sent a SIGHUP),
295 # then implement that here.
296 #
297 start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
298 return 0
299 }
300
301 SCRIPTNAME=$1
302 scriptbasename="$(basename $1)"
303 echo "SN: $scriptbasename"
304 if [ "$scriptbasename" != "init-d-library" ] ; then
305 script="$1"
306 shift
307 . $script
308 else
309 exit 0
310 fi
311
312 NAME=$(basename $DAEMON)
313 PIDFILE=/var/run/$NAME.pid
314
315 # Exit if the package is not installed
316 #[ -x "$DAEMON" ] || exit 0
317
318 # Read configuration variable file if it is present
319 [ -r /etc/default/$NAME ] && . /etc/default/$NAME
320
321 # Load the VERBOSE setting and other rcS variables
322 . /lib/init/vars.sh
323
324 case "$1" in
325 start)
326 [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
327 do_start
328 case "$?" in
329 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
330 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
331 esac
332 ;;
333 stop)
334 [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
335 do_stop
336 case "$?" in
337 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
338 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
339 esac
340 ;;
341 status)
342 status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
343 ;;
344 #reload|force-reload)
345 #
346 # If do_reload() is not implemented then leave this commented out
347 # and leave 'force-reload' as an alias for 'restart'.
348 #
349 #log_daemon_msg "Reloading $DESC" "$NAME"
350 #do_reload
351 #log_end_msg $?
352 #;;
353 restart|force-reload)
354 #
355 # If the "reload" option is implemented then remove the
356 # 'force-reload' alias
357 #
358 log_daemon_msg "Restarting $DESC" "$NAME"
359 do_stop
360 case "$?" in
361 0|1)
362 do_start
363 case "$?" in
364 0) log_end_msg 0 ;;
365 1) log_end_msg 1 ;; # Old process is still running
366 *) log_end_msg 1 ;; # Failed to start
367 esac
368 ;;
369 *)
370 # Failed to stop
371 log_end_msg 1
372 ;;
373 esac
374 ;;
375 *)
376 echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
377 exit 3
378 ;;
379 esac
380
381 :
382 </pre></p>
383
384 <p>It is based on /etc/init.d/skeleton, and could be improved quite a
385 lot. I did not really polish the approach, so it might not always
386 work out of the box, but you get the idea. I did not try very hard to
387 optimize it nor make it more robust either.</p>
388
389 <p>A better argument for switching init system in Debian than reducing
390 the size of init scripts (which is a good thing to do anyway), is to
391 get boot system that is able to handle the kernel events sensibly and
392 robustly, and do not depend on the boot to run sequentially. The boot
393 and the kernel have not behaved sequentially in years.</p>
394
395 </div>
396 <div class="tags">
397
398
399 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>.
400
401
402 </div>
403 </div>
404 <div class="padding"></div>
405
406 <div class="entry">
407 <div class="title">
408 <a href="http://people.skolelinux.org/pere/blog/Browser_plugin_for_SPICE__spice_xpi__uploaded_to_Debian.html">Browser plugin for SPICE (spice-xpi) uploaded to Debian</a>
409 </div>
410 <div class="date">
411 1st November 2013
412 </div>
413 <div class="body">
414 <p><a href="http://www.spice-space.org/">The SPICE protocol</a> for
415 remote display access is the preferred solution with oVirt and RedHat
416 Enterprise Virtualization, and I was sad to discover the other day
417 that the browser plugin needed to use these systems seamlessly was
418 missing in Debian. The <a href="http://bugs.debian.org/668284">request
419 for a package</a> was from 2012-04-10 with no progress since
420 2013-04-01, so I decided to wrap up a package based on the great work
421 from Cajus Pollmeier and put it in a collab-maint maintained git
422 repository to get a package I could use. I would very much like
423 others to help me maintain the package (or just take over, I do not
424 mind), but as no-one had volunteered so far, I just uploaded it to
425 NEW. I hope it will be available in Debian in a few days.</p>
426
427 <p>The source is now available from
428 <a href="http://anonscm.debian.org/gitweb/?p=collab-maint/spice-xpi.git;a=summary">http://anonscm.debian.org/gitweb/?p=collab-maint/spice-xpi.git;a=summary</a>.</p>
429
430 </div>
431 <div class="tags">
432
433
434 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>.
435
436
437 </div>
438 </div>
439 <div class="padding"></div>
440
441 <p style="text-align: right;"><a href="11.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS Feed" width="36" height="14" /></a></p>
442 <div id="sidebar">
443
444
445
446 <h2>Archive</h2>
447 <ul>
448
449 <li>2013
450 <ul>
451
452 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
453
454 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
455
456 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
457
458 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
459
460 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
461
462 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
463
464 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
465
466 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
467
468 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
469
470 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
471
472 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (4)</a></li>
473
474 </ul></li>
475
476 <li>2012
477 <ul>
478
479 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
480
481 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
482
483 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
484
485 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
486
487 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
488
489 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
490
491 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
492
493 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
494
495 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
496
497 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
498
499 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
500
501 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
502
503 </ul></li>
504
505 <li>2011
506 <ul>
507
508 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
509
510 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
511
512 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
513
514 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
515
516 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
517
518 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
519
520 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
521
522 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
523
524 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
525
526 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
527
528 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
529
530 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
531
532 </ul></li>
533
534 <li>2010
535 <ul>
536
537 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
538
539 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
540
541 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
542
543 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
544
545 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
546
547 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
548
549 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
550
551 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
552
553 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
554
555 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
556
557 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
558
559 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
560
561 </ul></li>
562
563 <li>2009
564 <ul>
565
566 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
567
568 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
569
570 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
571
572 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
573
574 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
575
576 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
577
578 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
579
580 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
581
582 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
583
584 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
585
586 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
587
588 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
589
590 </ul></li>
591
592 <li>2008
593 <ul>
594
595 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
596
597 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
598
599 </ul></li>
600
601 </ul>
602
603
604
605 <h2>Tags</h2>
606 <ul>
607
608 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (13)</a></li>
609
610 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
611
612 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
613
614 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
615
616 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (7)</a></li>
617
618 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (13)</a></li>
619
620 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
621
622 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (90)</a></li>
623
624 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (142)</a></li>
625
626 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (10)</a></li>
627
628 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (10)</a></li>
629
630 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
631
632 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (227)</a></li>
633
634 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (21)</a></li>
635
636 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (12)</a></li>
637
638 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (12)</a></li>
639
640 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (5)</a></li>
641
642 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (11)</a></li>
643
644 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (37)</a></li>
645
646 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (7)</a></li>
647
648 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (18)</a></li>
649
650 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (8)</a></li>
651
652 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (6)</a></li>
653
654 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
655
656 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (5)</a></li>
657
658 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (25)</a></li>
659
660 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (236)</a></li>
661
662 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (158)</a></li>
663
664 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (8)</a></li>
665
666 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
667
668 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (45)</a></li>
669
670 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (67)</a></li>
671
672 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (1)</a></li>
673
674 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
675
676 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (2)</a></li>
677
678 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (8)</a></li>
679
680 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
681
682 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (4)</a></li>
683
684 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
685
686 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (32)</a></li>
687
688 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
689
690 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (4)</a></li>
691
692 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (43)</a></li>
693
694 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (3)</a></li>
695
696 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (9)</a></li>
697
698 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (20)</a></li>
699
700 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (1)</a></li>
701
702 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (8)</a></li>
703
704 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (39)</a></li>
705
706 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
707
708 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (28)</a></li>
709
710 </ul>
711
712
713 </div>
714 <p style="text-align: right">
715 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
716 </p>
717
718 </body>
719 </html>