]> pere.pagekite.me Git - homepage.git/blob - blog/index.html
Generated.
[homepage.git] / blog / index.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen</title>
7 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/vim.css" />
9 <link rel="alternate" title="RSS Feed" href="http://people.skolelinux.org/pere/blog/index.rss" type="application/rss+xml" />
10 </head>
11 <body>
12 <div class="title">
13 <h1>
14 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
15
16 </h1>
17
18 </div>
19
20
21
22 <div class="entry">
23 <div class="title"><a href="http://people.skolelinux.org/pere/blog/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>
24 <div class="date"> 1st August 2016</div>
25 <div class="body"><p>Did you know there is a TV channel broadcasting talks from DebConf
26 16 across an entire country? Or that there is a TV channel
27 broadcasting talks by or about
28 <a href="http://beta.frikanalen.no/video/625529/">Linus Torvalds</a>,
29 <a href="http://beta.frikanalen.no/video/625599/">Tor</a>,
30 <a href="http://beta.frikanalen.no/video/624019/">OpenID</A>,
31 <a href="http://beta.frikanalen.no/video/625624/">Common Lisp</a>,
32 <a href="http://beta.frikanalen.no/video/625446/">Civic Tech</a>,
33 <a href="http://beta.frikanalen.no/video/625090/">EFF founder John Barlow</a>,
34 <a href="http://beta.frikanalen.no/video/625432/">how to make 3D
35 printer electronics</a> and many more fascinating topics? It works
36 using only free software (all of it
37 <a href="http://github.com/Frikanalen">available from Github</a>), and
38 is administrated using a web browser and a web API.</p>
39
40 <p>The TV channel is the Norwegian open channel
41 <a href="http://www.frikanalen.no/">Frikanalen</a>, and I am involved
42 via <a href="https://www.nuug.no/">the NUUG member association</a> in
43 running and developing the software for the channel. The channel is
44 organised as a member organisation where its members can upload and
45 broadcast what they want (think of it as Youtube for national
46 broadcasting television). Individuals can broadcast too. The time
47 slots are handled on a first come, first serve basis. Because the
48 channel have almost no viewers and very few active members, we can
49 experiment with TV technology without too much flack when we make
50 mistakes. And thanks to the few active members, most of the slots on
51 the schedule are free. I see this as an opportunity to spread
52 knowledge about technology and free software, and have a script I run
53 regularly to fill up all the open slots the next few days with
54 technology related video. The end result is a channel I like to
55 describe as Techno TV - filled with interesting talks and
56 presentations.</p>
57
58 <p>It is available on channel 50 on the Norwegian national digital TV
59 network (RiksTV). It is also available as a multicast stream on
60 Uninett. And finally, it is available as
61 <a href="http://beta.frikanalen.no/">a WebM unicast stream</a> from
62 Frikanalen and NUUG. Check it out. :)</p>
63 </div>
64 <div class="tags">
65
66
67 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>.
68
69
70 </div>
71 </div>
72 <div class="padding"></div>
73
74 <div class="entry">
75 <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>
76 <div class="date"> 7th July 2016</div>
77 <div class="body"><p>Yesterday, I tried to unlock a HTC Desire HD phone, and it proved
78 to be a slight challenge. Here is the recipe if I ever need to do it
79 again. It all started by me wanting to try the recipe to set up
80 <a href="https://blog.torproject.org/blog/mission-impossible-hardening-android-security-and-privacy">an
81 hardened Android installation</a> from the Tor project blog on a
82 device I had access to. It is a old mobile phone with a broken
83 microphone The initial idea had been to just
84 <a href="http://wiki.cyanogenmod.org/w/Install_CM_for_ace">install
85 CyanogenMod on it</a>, but did not quite find time to start on it
86 until a few days ago.</p>
87
88 <p>The unlock process is supposed to be simple: (1) Boot into the boot
89 loader (press volume down and power at the same time), (2) select
90 'fastboot' before (3) connecting the device via USB to a Linux
91 machine, (4) request the device identifier token by running 'fastboot
92 oem get_identifier_token', (5) request the device unlocking key using
93 the <a href="http://www.htcdev.com/bootloader/">HTC developer web
94 site</a> and unlock the phone using the key file emailed to you.</p>
95
96 <p>Unfortunately, this only work fi you have hboot version 2.00.0029
97 or newer, and the device I was working on had 2.00.0027. This
98 apparently can be easily fixed by downloading a Windows program and
99 running it on your Windows machine, if you accept the terms Microsoft
100 require you to accept to use Windows - which I do not. So I had to
101 come up with a different approach. I got a lot of help from AndyCap
102 on #nuug, and would not have been able to get this working without
103 him.</p>
104
105 <p>First I needed to extract the hboot firmware from
106 <a href="http://www.htcdev.com/ruu/PD9810000_Ace_Sense30_S_hboot_2.00.0029.exe">the
107 windows binary for HTC Desire HD</a> downloaded as 'the RUU' from HTC.
108 For this there is is <a href="https://github.com/kmdm/unruu/">a github
109 project named unruu</a> using libunshield. The unshield tool did not
110 recognise the file format, but unruu worked and extracted rom.zip,
111 containing the new hboot firmware and a text file describing which
112 devices it would work for.</p>
113
114 <p>Next, I needed to get the new firmware into the device. For this I
115 followed some instructions
116 <a href="http://www.htc1guru.com/2013/09/new-ruu-zips-posted/">available
117 from HTC1Guru.com</a>, and ran these commands as root on a Linux
118 machine with Debian testing:</p>
119
120 <p><pre>
121 adb reboot-bootloader
122 fastboot oem rebootRUU
123 fastboot flash zip rom.zip
124 fastboot flash zip rom.zip
125 fastboot reboot
126 </pre></p>
127
128 <p>The flash command apparently need to be done twice to take effect,
129 as the first is just preparations and the second one do the flashing.
130 The adb command is just to get to the boot loader menu, so turning the
131 device on while holding volume down and the power button should work
132 too.</p>
133
134 <p>With the new hboot version in place I could start following the
135 instructions on the HTC developer web site. I got the device token
136 like this:</p>
137
138 <p><pre>
139 fastboot oem get_identifier_token 2>&1 | sed 's/(bootloader) //'
140 </pre>
141
142 <p>And once I got the unlock code via email, I could use it like
143 this:</p>
144
145 <p><pre>
146 fastboot flash unlocktoken Unlock_code.bin
147 </pre></p>
148
149 <p>And with that final step in place, the phone was unlocked and I
150 could start stuffing the software of my own choosing into the device.
151 So far I only inserted a replacement recovery image to wipe the phone
152 before I start. We will see what happen next. Perhaps I should
153 install <a href="https://www.debian.org/">Debian</a> on it. :)</p>
154 </div>
155 <div class="tags">
156
157
158 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>.
159
160
161 </div>
162 </div>
163 <div class="padding"></div>
164
165 <div class="entry">
166 <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>
167 <div class="date"> 3rd July 2016</div>
168 <div class="body"><p>For a while now, I have wanted to test
169 <a href="https://whispersystems.org/">the Signal app</a>, as it is
170 said to provide end to end encrypted communication and several of my
171 friends and family are already using it. As I by choice do not own a
172 mobile phone, this proved to be harder than expected. And I wanted to
173 have the source of the client and know that it was the code used on my
174 machine. But yesterday I managed to get it working. I used the
175 Github source, compared it to the source in
176 <a href="https://chrome.google.com/webstore/detail/signal-private-messenger/bikioccmkafdpakkkcpdbppfkghcmihk?hl=en-US">the
177 Signal Chrome app</a> available from the Chrome web store, applied
178 patches to use the production Signal servers, started the app and
179 asked for the hidden "register without a smart phone" form. Here is
180 the recipe how I did it.</p>
181
182 <p>First, I fetched the Signal desktop source from Github, using
183
184 <pre>
185 git clone https://github.com/WhisperSystems/Signal-Desktop.git
186 </pre>
187
188 <p>Next, I patched the source to use the production servers, to be
189 able to talk to other Signal users:</p>
190
191 <pre>
192 cat &lt;&lt;EOF | patch -p0
193 diff -ur ./js/background.js userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/0.15.0_0/js/background.js
194 --- ./js/background.js 2016-06-29 13:43:15.630344628 +0200
195 +++ userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/0.15.0_0/js/background.js 2016-06-29 14:06:29.530300934 +0200
196 @@ -47,8 +47,8 @@
197 });
198 });
199
200 - var SERVER_URL = 'https://textsecure-service-staging.whispersystems.org';
201 - var ATTACHMENT_SERVER_URL = 'https://whispersystems-textsecure-attachments-staging.s3.amazonaws.com';
202 + var SERVER_URL = 'https://textsecure-service-ca.whispersystems.org:4433';
203 + var ATTACHMENT_SERVER_URL = 'https://whispersystems-textsecure-attachments.s3.amazonaws.com';
204 var messageReceiver;
205 window.getSocketStatus = function() {
206 if (messageReceiver) {
207 diff -ur ./js/expire.js userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/0.15.0_0/js/expire.js
208 --- ./js/expire.js 2016-06-29 13:43:15.630344628 +0200
209 +++ userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/0.15.0_0/js/expire.js2016-06-29 14:06:29.530300934 +0200
210 @@ -1,6 +1,6 @@
211 ;(function() {
212 'use strict';
213 - var BUILD_EXPIRATION = 0;
214 + var BUILD_EXPIRATION = 1474492690000;
215
216 window.extension = window.extension || {};
217
218 EOF
219 </pre>
220
221 <p>The first part is changing the servers, and the second is updating
222 an expiration timestamp. This timestamp need to be updated regularly.
223 It is set 90 days in the future by the build process (Gruntfile.js).
224 The value is seconds since 1970 times 1000, as far as I can tell.</p>
225
226 <p>Based on a tip and good help from the #nuug IRC channel, I wrote a
227 script to launch Signal in Chromium.</p>
228
229 <pre>
230 #!/bin/sh
231 cd $(dirname $0)
232 mkdir -p userdata
233 exec chromium \
234 --proxy-server="socks://localhost:9050" \
235 --user-data-dir=`pwd`/userdata --load-and-launch-app=`pwd`
236 </pre>
237
238 <p> The script start the app and configure Chromium to use the Tor
239 SOCKS5 proxy to make sure those controlling the Signal servers (today
240 Amazon and Whisper Systems) as well as those listening on the lines
241 will have a harder time location my laptop based on the Signal
242 connections if they use source IP address.</p>
243
244 <p>When the script starts, one need to follow the instructions under
245 "Standalone Registration" in the CONTRIBUTING.md file in the git
246 repository. I right clicked on the Signal window to get up the
247 Chromium debugging tool, visited the 'Console' tab and wrote
248 'extension.install("standalone")' on the console prompt to get the
249 registration form. Then I entered by land line phone number and
250 pressed 'Call'. 5 seconds later the phone rang and a robot voice
251 repeated the verification code three times. After entering the number
252 into the verification code field in the form, I could start using
253 Signal from my laptop.
254
255 <p>As far as I can tell, The Signal app will leak who is talking to
256 whom and thus who know who to those controlling the central server,
257 but such leakage is hard to avoid with a centrally controlled server
258 setup. It is something to keep in mind when using Signal - the
259 content of your chats are harder to intercept, but the meta data
260 exposing your contact network is available to people you do not know.
261 So better than many options, but not great. And sadly the usage is
262 connected to my land line, thus allowing those controlling the server
263 to associate it to my home and person. I would prefer it if only
264 those I knew could tell who I was on Signal. There are options
265 avoiding such information leakage, but most of my friends are not
266 using them, so I am stuck with Signal for now.</p>
267 </div>
268 <div class="tags">
269
270
271 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>.
272
273
274 </div>
275 </div>
276 <div class="padding"></div>
277
278 <div class="entry">
279 <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>
280 <div class="date"> 6th June 2016</div>
281 <div class="body"><p>When I set out a few weeks ago to figure out
282 <a href="http://people.skolelinux.org/pere/blog/What_is_the_best_multimedia_player_in_Debian_.html">which
283 multimedia player in Debian claimed to support most file formats /
284 MIME types</a>, I was a bit surprised how varied the sets of MIME types
285 the various players claimed support for. The range was from 55 to 130
286 MIME types. I suspect most media formats are supported by all
287 players, but this is not really reflected in the MimeTypes values in
288 their desktop files. There are probably also some bogus MIME types
289 listed, but it is hard to identify which one this is.</p>
290
291 <p>Anyway, in the mean time I got in touch with upstream for some of
292 the players suggesting to add more MIME types to their desktop files,
293 and decided to spend some time myself improving the situation for my
294 favorite media player VLC. The fixes for VLC entered Debian unstable
295 yesterday. The complete list of MIME types can be seen on the
296 <a href="https://wiki.debian.org/DebianMultimedia/PlayerSupport">Multimedia
297 player MIME type support status</a> Debian wiki page.</p>
298
299 <p>The new "best" multimedia player in Debian? It is VLC, followed by
300 totem, parole, kplayer, gnome-mpv, mpv, smplayer, mplayer-gui and
301 kmplayer. I am sure some of the other players desktop files support
302 several of the formats currently listed as working only with vlc,
303 toten and parole.</p>
304
305 <p>A sad observation is that only 14 MIME types are listed as
306 supported by all the tested multimedia players in Debian in their
307 desktop files: audio/mpeg, audio/vnd.rn-realaudio, audio/x-mpegurl,
308 audio/x-ms-wma, audio/x-scpls, audio/x-wav, video/mp4, video/mpeg,
309 video/quicktime, video/vnd.rn-realvideo, video/x-matroska,
310 video/x-ms-asf, video/x-ms-wmv and video/x-msvideo. Personally I find
311 it sad that video/ogg and video/webm is not supported by all the media
312 players in Debian. As far as I can tell, all of them can handle both
313 formats.</p>
314 </div>
315 <div class="tags">
316
317
318 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>.
319
320
321 </div>
322 </div>
323 <div class="padding"></div>
324
325 <div class="entry">
326 <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>
327 <div class="date"> 5th June 2016</div>
328 <div class="body"><p>Many years ago, when koffice was fresh and with few users, I
329 decided to test its presentation tool when making the slides for a
330 talk I was giving for NUUG on Japhar, a free Java virtual machine. I
331 wrote the first draft of the slides, saved the result and went to bed
332 the day before I would give the talk. The next day I took a plane to
333 the location where the meeting should take place, and on the plane I
334 started up koffice again to polish the talk a bit, only to discover
335 that kpresenter refused to load its own data file. I cursed a bit and
336 started making the slides again from memory, to have something to
337 present when I arrived. I tested that the saved files could be
338 loaded, and the day seemed to be rescued. I continued to polish the
339 slides until I suddenly discovered that the saved file could no longer
340 be loaded into kpresenter. In the end I had to rewrite the slides
341 three times, condensing the content until the talk became shorter and
342 shorter. After the talk I was able to pinpoint the problem &ndash;
343 kpresenter wrote inline images in a way itself could not understand.
344 Eventually that bug was fixed and kpresenter ended up being a great
345 program to make slides. The point I'm trying to make is that we
346 expect a program to be able to load its own data files, and it is
347 embarrassing to its developers if it can't.</p>
348
349 <p>Did you ever experience a program failing to load its own data
350 files from the desktop file browser? It is not a uncommon problem. A
351 while back I discovered that the screencast recorder
352 gtk-recordmydesktop would save an Ogg Theora video file the KDE file
353 browser would refuse to open. No video player claimed to understand
354 such file. I tracked down the cause being <tt>file --mime-type</tt>
355 returning the application/ogg MIME type, which no video player I had
356 installed listed as a MIME type they would understand. I asked for
357 <a href="http://bugs.gw.com/view.php?id=382">file to change its
358 behavour</a> and use the MIME type video/ogg instead. I also asked
359 several video players to add video/ogg to their desktop files, to give
360 the file browser an idea what to do about Ogg Theora files. After a
361 while, the desktop file browsers in Debian started to handle the
362 output from gtk-recordmydesktop properly.</p>
363
364 <p>But history repeats itself. A few days ago I tested the music
365 system Rosegarden again, and I discovered that the KDE and xfce file
366 browsers did not know what to do with the Rosegarden project files
367 (*.rg). I've reported <a href="http://bugs.debian.org/825993">the
368 rosegarden problem to BTS</a> and a fix is commited to git and will be
369 included in the next upload. To increase the chance of me remembering
370 how to fix the problem next time some program fail to load its files
371 from the file browser, here are some notes on how to fix it.</p>
372
373 <p>The file browsers in Debian in general operates on MIME types.
374 There are two sources for the MIME type of a given file. The output from
375 <tt>file --mime-type</tt> mentioned above, and the content of the
376 shared MIME type registry (under /usr/share/mime/). The file MIME
377 type is mapped to programs supporting the MIME type, and this
378 information is collected from
379 <a href="https://www.freedesktop.org/wiki/Specifications/desktop-entry-spec/">the
380 desktop files</a> available in /usr/share/applications/. If there is
381 one desktop file claiming support for the MIME type of the file, it is
382 activated when asking to open a given file. If there are more, one
383 can normally select which one to use by right-clicking on the file and
384 selecting the wanted one using 'Open with' or similar. In general
385 this work well. But it depend on each program picking a good MIME
386 type (preferably
387 <a href="http://www.iana.org/assignments/media-types/media-types.xhtml">a
388 MIME type registered with IANA</a>), file and/or the shared MIME
389 registry recognizing the file and the desktop file to list the MIME
390 type in its list of supported MIME types.</p>
391
392 <p>The <tt>/usr/share/mime/packages/rosegarden.xml</tt> entry for
393 <a href="http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec">the
394 Shared MIME database</a> look like this:</p>
395
396 <p><blockquote><pre>
397 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
398 &lt;mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"&gt;
399 &lt;mime-type type="audio/x-rosegarden"&gt;
400 &lt;sub-class-of type="application/x-gzip"/&gt;
401 &lt;comment&gt;Rosegarden project file&lt;/comment&gt;
402 &lt;glob pattern="*.rg"/&gt;
403 &lt;/mime-type&gt;
404 &lt;/mime-info&gt;
405 </pre></blockquote></p>
406
407 <p>This states that audio/x-rosegarden is a kind of application/x-gzip
408 (it is a gzipped XML file). Note, it is much better to use an
409 official MIME type registered with IANA than it is to make up ones own
410 unofficial ones like the x-rosegarden type used by rosegarden.</p>
411
412 <p>The desktop file of the rosegarden program failed to list
413 audio/x-rosegarden in its list of supported MIME types, causing the
414 file browsers to have no idea what to do with *.rg files:</p>
415
416 <p><blockquote><pre>
417 % grep Mime /usr/share/applications/rosegarden.desktop
418 MimeType=audio/x-rosegarden-composition;audio/x-rosegarden-device;audio/x-rosegarden-project;audio/x-rosegarden-template;audio/midi;
419 X-KDE-NativeMimeType=audio/x-rosegarden-composition
420 %
421 </pre></blockquote></p>
422
423 <p>The fix was to add "audio/x-rosegarden;" at the end of the
424 MimeType= line.</p>
425
426 <p>If you run into a file which fail to open the correct program when
427 selected from the file browser, please check out the output from
428 <tt>file --mime-type</tt> for the file, ensure the file ending and
429 MIME type is registered somewhere under /usr/share/mime/ and check
430 that some desktop file under /usr/share/applications/ is claiming
431 support for this MIME type. If not, please report a bug to have it
432 fixed. :)</p>
433 </div>
434 <div class="tags">
435
436
437 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>.
438
439
440 </div>
441 </div>
442 <div class="padding"></div>
443
444 <div class="entry">
445 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Tor___from_its_creators_mouth_11_years_ago.html">Tor - from its creators mouth 11 years ago</a></div>
446 <div class="date">28th May 2016</div>
447 <div class="body"><p>A little more than 11 years ago, one of the creators of Tor, and
448 the current President of <a href="https://www.torproject.org/">the Tor
449 project</a>, Roger Dingledine, gave a talk for the members of the
450 <a href="http://www.nuug.no/">Norwegian Unix User group</a> (NUUG). A
451 video of the talk was recorded, and today, thanks to the great help
452 from David Noble, I finally was able to publish the video of the talk
453 on Frikanalen, the Norwegian open channel TV station where NUUG
454 currently publishes its talks. You can
455 <a href="http://frikanalen.no/se">watch the live stream using a web
456 browser</a> with WebM support, or check out the recording on the video
457 on demand page for the talk
458 "<a href="http://beta.frikanalen.no/video/625599">Tor: Anonymous
459 communication for the US Department of Defence...and you.</a>".</p>
460
461 <p>Here is the video included for those of you using browsers with
462 HTML video and Ogg Theora support:</p>
463
464 <p><video width="70%" poster="http://simula.gunkies.org/media/625599/large_thumb/20050421-tor-frikanalen.jpg" controls>
465 <source src="http://simula.gunkies.org/media/625599/theora/20050421-tor-frikanalen.ogv" type="video/ogg"/>
466 </video></p>
467
468 <p>I guess the gist of the talk can be summarised quite simply: If you
469 want to help the military in USA (and everyone else), use Tor. :)</p>
470 </div>
471 <div class="tags">
472
473
474 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>.
475
476
477 </div>
478 </div>
479 <div class="padding"></div>
480
481 <div class="entry">
482 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Isenkram_with_PackageKit_support___new_version_0_23_available_in_Debian_unstable.html">Isenkram with PackageKit support - new version 0.23 available in Debian unstable</a></div>
483 <div class="date">25th May 2016</div>
484 <div class="body"><p><a href="https://tracker.debian.org/pkg/isenkram">The isenkram
485 system</a> is a user-focused solution in Debian for handling hardware
486 related packages. The idea is to have a database of mappings between
487 hardware and packages, and pop up a dialog suggesting for the user to
488 install the packages to use a given hardware dongle. Some use cases
489 are when you insert a Yubikey, it proposes to install the software
490 needed to control it; when you insert a braille reader list it
491 proposes to install the packages needed to send text to the reader;
492 and when you insert a ColorHug screen calibrator it suggests to
493 install the driver for it. The system work well, and even have a few
494 command line tools to install firmware packages and packages for the
495 hardware already in the machine (as opposed to hotpluggable hardware).</p>
496
497 <p>The system was initially written using aptdaemon, because I found
498 good documentation and example code on how to use it. But aptdaemon
499 is going away and is generally being replaced by
500 <a href="http://www.freedesktop.org/software/PackageKit/">PackageKit</a>,
501 so Isenkram needed a rewrite. And today, thanks to the great patch
502 from my college Sunil Mohan Adapa in the FreedomBox project, the
503 rewrite finally took place. I've just uploaded a new version of
504 Isenkram into Debian Unstable with the patch included, and the default
505 for the background daemon is now to use PackageKit. To check it out,
506 install the <tt>isenkram</tt> package and insert some hardware dongle
507 and see if it is recognised.</p>
508
509 <p>If you want to know what kind of packages isenkram would propose for
510 the machine it is running on, you can check out the isenkram-lookup
511 program. This is what it look like on a Thinkpad X230:</p>
512
513 <p><blockquote><pre>
514 % isenkram-lookup
515 bluez
516 cheese
517 fprintd
518 fprintd-demo
519 gkrellm-thinkbat
520 hdapsd
521 libpam-fprintd
522 pidgin-blinklight
523 thinkfan
524 tleds
525 tp-smapi-dkms
526 tp-smapi-source
527 tpb
528 %p
529 </pre></blockquote></p>
530
531 <p>The hardware mappings come from several places. The preferred way
532 is for packages to announce their hardware support using
533 <a href="https://www.freedesktop.org/software/appstream/docs/">the
534 cross distribution appstream system</a>.
535 See
536 <a href="http://people.skolelinux.org/pere/blog/tags/isenkram/">previous
537 blog posts about isenkram</a> to learn how to do that.</p>
538 </div>
539 <div class="tags">
540
541
542 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram</a>.
543
544
545 </div>
546 </div>
547 <div class="padding"></div>
548
549 <div class="entry">
550 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Discharge_rate_estimate_in_new_battery_statistics_collector_for_Debian.html">Discharge rate estimate in new battery statistics collector for Debian</a></div>
551 <div class="date">23rd May 2016</div>
552 <div class="body"><p>Yesterday I updated the
553 <a href="https://tracker.debian.org/pkg/battery-stats">battery-stats
554 package in Debian</a> with a few patches sent to me by skilled and
555 enterprising users. There were some nice user and visible changes.
556 First of all, both desktop menu entries now work. A design flaw in
557 one of the script made the history graph fail to show up (its PNG was
558 dumped in ~/.xsession-errors) if no controlling TTY was available.
559 The script worked when called from the command line, but not when
560 called from the desktop menu. I changed this to look for a DISPLAY
561 variable or a TTY before deciding where to draw the graph, and now the
562 graph window pop up as expected.</p>
563
564 <p>The next new feature is a discharge rate estimator in one of the
565 graphs (the one showing the last few hours). New is also the user of
566 colours showing charging in blue and discharge in red. The percentages
567 of this graph is relative to last full charge, not battery design
568 capacity.</p>
569
570 <p align="center"><img src="http://people.skolelinux.org/pere/blog/images/2016-05-23-battery-stats-rate.png"/></p>
571
572 <p>The other graph show the entire history of the collected battery
573 statistics, comparing it to the design capacity of the battery to
574 visualise how the battery life time get shorter over time. The red
575 line in this graph is what the previous graph considers 100 percent:
576
577 <p align="center"><img src="http://people.skolelinux.org/pere/blog/images/2016-05-23-battery-stats-history.png"/></p>
578
579 <p>In this graph you can see that I only charge the battery to 80
580 percent of last full capacity, and how the capacity of the battery is
581 shrinking. :(</p>
582
583 <p>The last new feature is in the collector, which now will handle
584 more hardware models. On some hardware, Linux power supply
585 information is stored in /sys/class/power_supply/ACAD/, while the
586 collector previously only looked in /sys/class/power_supply/AC/. Now
587 both are checked to figure if there is power connected to the
588 machine.</p>
589
590 <p>If you are interested in how your laptop battery is doing, please
591 check out the
592 <a href="https://tracker.debian.org/pkg/battery-stats">battery-stats</a>
593 in Debian unstable, or rebuild it on Jessie to get it working on
594 Debian stable. :) The upstream source is available from <a
595 href="https://github.com/petterreinholdtsen/battery-stats">github</a>.
596 Patches are very welcome.</p>
597
598 <p>As usual, if you use Bitcoin and want to show your support of my
599 activities, please send Bitcoin donations to my address
600 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
601 </div>
602 <div class="tags">
603
604
605 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>.
606
607
608 </div>
609 </div>
610 <div class="padding"></div>
611
612 <div class="entry">
613 <div class="title"><a href="http://people.skolelinux.org/pere/blog/French_edition_of_Lawrence_Lessigs_book_Cultura_Libre_on_Amazon_and_Barnes___Noble.html">French edition of Lawrence Lessigs book Cultura Libre on Amazon and Barnes & Noble</a></div>
614 <div class="date">21st May 2016</div>
615 <div class="body"><p>A few weeks ago the French paperback edition of Lawrence Lessigs
616 2004 book Cultura Libre was published. Today I noticed that the book
617 is now available from book stores. You can now buy it from
618 <a href="http://www.amazon.com/Culture-Libre-French-Lawrence-Lessig/dp/8269018260">Amazon</a>
619 ($19.99),
620 <a href="http://www.barnesandnoble.com/w/culture-libre-lawrence-lessig/1123776705">Barnes
621 & Noble</a> ($?) and as always from
622 <a href="http://www.lulu.com/shop/lawrence-lessig/culture-libre/paperback/product-22645082.html">Lulu.com</a>
623 ($19.99). The revenue is donated to the Creative Commons project. If
624 you buy from Lulu.com, they currently get $10.59, while if you buy
625 from one of the book stores most of the revenue go to the book store
626 and the Creative Commons project get much (not sure how much
627 less).</p>
628
629 <p>I was a bit surprised to discover that there is a kindle edition
630 sold by Amazon Digital Services LLC on Amazon. Not quite sure how
631 that edition was created, but if you want to download a electronic
632 edition (PDF, EPUB, Mobi) generated from the same files used to create
633 the paperback edition, they are
634 <a href="https://github.com/petterreinholdtsen/free-culture-lessig">available
635 from github</a>.</p>
636 </div>
637 <div class="tags">
638
639
640 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>.
641
642
643 </div>
644 </div>
645 <div class="padding"></div>
646
647 <div class="entry">
648 <div class="title"><a href="http://people.skolelinux.org/pere/blog/I_want_the_courts_to_be_involved_before_the_police_can_hijack_a_news_site_DNS_domain___domstolkontroll_.html">I want the courts to be involved before the police can hijack a news site DNS domain (#domstolkontroll)</a></div>
649 <div class="date">19th May 2016</div>
650 <div class="body"><p>I just donated to the
651 <a href="http://www.nuug.no/dns-beslag-donasjon.shtml">NUUG defence
652 "fond"</a> to fund the effort in Norway to get the seizure of the news
653 site popcorn-time.no tested in court. I hope everyone that agree with
654 me will do the same.</p>
655
656 <p>Would you be worried if you knew the police in your country could
657 hijack DNS domains of news sites covering free software system without
658 talking to a judge first? I am. What if the free software system
659 combined search engine lookups, bittorrent downloads and video playout
660 and was called Popcorn Time? Would that affect your view? It still
661 make me worried.</p>
662
663 <p>In March 2016, the Norwegian police seized (as in forced NORID to
664 change the IP address pointed to by it to one controlled by the
665 police) the DNS domain popcorn-time.no, without any supervision from
666 the courts. I did not know about the web site back then, and assumed
667 the courts had been involved, and was very surprised when I discovered
668 that the police had hijacked the DNS domain without asking a judge for
669 permission first. I was even more surprised when I had a look at
670 <a href="https://web.archive.org/web/*/http://popcorn-time.no">the web
671 site content on the Internet Archive</A>, and only found news coverage
672 about Popcorn Time, not any material published without the right
673 holders permissions.</p>
674
675 <p>The seizure was widely covered in the Norwegian press (see for
676 example <a href="http://www.hegnar.no/Nyheter/Naeringsliv/2016/03/Popcorn-time.no-beslaglagt-av-OEkokrim">Hegnar Online</a> and
677 <a href="http://itavisen.no/2016/03/08/okokrim-har-beslaglagt-popcorn-time-no/">ITavisen<a/>
678 and
679 <a href="http://www.nrk.no/kultur/okokrim-gar-til-aksjon-mot-popcorn-time-1.12842452">NRK</a>),
680 at first due to the press release sent out by Økokrim, but then based
681 on
682 <a href="http://blogg.torvund.net/2016/03/09/okokrims-beslag-i-domenet-popcorn-time-no/">protests
683 from the law professor Olav Torvund</a> and
684 <a href="http://www.klassekampen.no/article/20160311/ARTICLE/160319995">lawyer
685 Jon Wessel-Aas</a>. It even got some
686 <a href="https://torrentfreak.com/norwegian-authorities-sued-over-popcorn-time-domain-seizure-160418/">coverage
687 on TorrentFreak</a>.</p>
688
689 <p>I
690 <a href="http://people.skolelinux.org/pere/blog/NUUG_contests_Norwegian_police_DNS_seizure_of_popcorn_time_no.html">
691 wrote about the case a month ago</a>, when the
692 <a href="http://www.nuug.no/">Norwegian Unix User Group</a> (NUUG),
693 where I am an active member, decided to ask the courts to test this seizure.
694 The request was denied, but NUUG and its co-requestor EFN have not
695 given up, and now they are rallying for support to get the seizure
696 legally challenged. They accept both bank and Bitcoin transfer for
697 those that want to support the request.</p>
698
699 <p>If you as me believe news sites about free software should not be
700 censored, even if the free software have both legal and illegal
701 applications, and that DNS hijacking should be tested by the courts, I
702 suggest you <a href="http://www.nuug.no/dns-beslag-donasjon.shtml">show
703 your support by donating to NUUG</a>.</a>
704 </div>
705 <div class="tags">
706
707
708 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/opphavsrett">opphavsrett</a>.
709
710
711 </div>
712 </div>
713 <div class="padding"></div>
714
715 <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>
716 <div id="sidebar">
717
718
719
720 <h2>Archive</h2>
721 <ul>
722
723 <li>2016
724 <ul>
725
726 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/01/">January (3)</a></li>
727
728 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/02/">February (2)</a></li>
729
730 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/03/">March (3)</a></li>
731
732 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/04/">April (8)</a></li>
733
734 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/05/">May (8)</a></li>
735
736 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/06/">June (2)</a></li>
737
738 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/07/">July (2)</a></li>
739
740 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/08/">August (1)</a></li>
741
742 </ul></li>
743
744 <li>2015
745 <ul>
746
747 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/01/">January (7)</a></li>
748
749 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/02/">February (6)</a></li>
750
751 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/03/">March (1)</a></li>
752
753 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/04/">April (4)</a></li>
754
755 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/05/">May (3)</a></li>
756
757 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/06/">June (4)</a></li>
758
759 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/07/">July (6)</a></li>
760
761 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/08/">August (2)</a></li>
762
763 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/09/">September (2)</a></li>
764
765 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/10/">October (9)</a></li>
766
767 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/11/">November (6)</a></li>
768
769 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/12/">December (3)</a></li>
770
771 </ul></li>
772
773 <li>2014
774 <ul>
775
776 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
777
778 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
779
780 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
781
782 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/04/">April (7)</a></li>
783
784 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/05/">May (1)</a></li>
785
786 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/06/">June (2)</a></li>
787
788 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/07/">July (2)</a></li>
789
790 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/08/">August (2)</a></li>
791
792 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/09/">September (5)</a></li>
793
794 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/10/">October (6)</a></li>
795
796 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/11/">November (3)</a></li>
797
798 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/12/">December (5)</a></li>
799
800 </ul></li>
801
802 <li>2013
803 <ul>
804
805 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
806
807 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
808
809 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
810
811 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
812
813 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
814
815 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
816
817 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
818
819 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
820
821 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
822
823 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
824
825 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
826
827 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
828
829 </ul></li>
830
831 <li>2012
832 <ul>
833
834 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
835
836 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
837
838 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
839
840 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
841
842 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
843
844 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
845
846 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
847
848 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
849
850 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
851
852 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
853
854 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
855
856 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
857
858 </ul></li>
859
860 <li>2011
861 <ul>
862
863 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
864
865 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
866
867 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
868
869 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
870
871 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
872
873 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
874
875 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
876
877 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
878
879 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
880
881 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
882
883 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
884
885 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
886
887 </ul></li>
888
889 <li>2010
890 <ul>
891
892 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
893
894 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
895
896 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
897
898 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
899
900 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
901
902 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
903
904 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
905
906 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
907
908 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
909
910 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
911
912 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
913
914 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
915
916 </ul></li>
917
918 <li>2009
919 <ul>
920
921 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
922
923 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
924
925 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
926
927 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
928
929 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
930
931 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
932
933 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
934
935 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
936
937 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
938
939 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
940
941 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
942
943 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
944
945 </ul></li>
946
947 <li>2008
948 <ul>
949
950 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
951
952 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
953
954 </ul></li>
955
956 </ul>
957
958
959
960 <h2>Tags</h2>
961 <ul>
962
963 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (13)</a></li>
964
965 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
966
967 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
968
969 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
970
971 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (9)</a></li>
972
973 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (16)</a></li>
974
975 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
976
977 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
978
979 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (133)</a></li>
980
981 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (157)</a></li>
982
983 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (10)</a></li>
984
985 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld">dld (15)</a></li>
986
987 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (22)</a></li>
988
989 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
990
991 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (324)</a></li>
992
993 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
994
995 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (12)</a></li>
996
997 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (27)</a></li>
998
999 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (9)</a></li>
1000
1001 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (18)</a></li>
1002
1003 <li><a href="http://people.skolelinux.org/pere/blog/tags/h264">h264 (20)</a></li>
1004
1005 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (42)</a></li>
1006
1007 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (12)</a></li>
1008
1009 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (19)</a></li>
1010
1011 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
1012
1013 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (8)</a></li>
1014
1015 <li><a href="http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (2)</a></li>
1016
1017 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
1018
1019 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
1020
1021 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (39)</a></li>
1022
1023 <li><a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (7)</a></li>
1024
1025 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (275)</a></li>
1026
1027 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (182)</a></li>
1028
1029 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (26)</a></li>
1030
1031 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
1032
1033 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (61)</a></li>
1034
1035 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (92)</a></li>
1036
1037 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (1)</a></li>
1038
1039 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
1040
1041 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
1042
1043 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (3)</a></li>
1044
1045 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (9)</a></li>
1046
1047 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
1048
1049 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (4)</a></li>
1050
1051 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
1052
1053 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (48)</a></li>
1054
1055 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
1056
1057 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (4)</a></li>
1058
1059 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (49)</a></li>
1060
1061 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (4)</a></li>
1062
1063 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (10)</a></li>
1064
1065 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (37)</a></li>
1066
1067 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (2)</a></li>
1068
1069 <li><a href="http://people.skolelinux.org/pere/blog/tags/usenix">usenix (2)</a></li>
1070
1071 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (8)</a></li>
1072
1073 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (59)</a></li>
1074
1075 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
1076
1077 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (38)</a></li>
1078
1079 </ul>
1080
1081
1082 </div>
1083 <p style="text-align: right">
1084 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
1085 </p>
1086
1087 </body>
1088 </html>