1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
5 <title>Petter Reinholdtsen
</title>
6 <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"style.css">
7 <link rel=
"alternate" title=
"RSS Feed" href=
"index.rss" type=
"application/rss+xml">
14 <a href=
"">Petter Reinholdtsen
</a>
23 <div class=
"title"><a href=
"En_skam_at_det_ikke_finnes_ordrett_referat_fra_norske_domstoler.html">En skam at det ikke finnes ordrett referat fra norske domstoler
</a></div>
24 <div class=
"date">2009-
03-
13 18:
00</div>
26 <p>Advokatene jobber i disse dager hardt for å bli kvitt juryordningen
27 fra norske domstoler. Det har de forsåvidt jobbet med i mange år.
28 Personlig tror jeg det er å starte i feil ende, og en dårlig ide.
</p>
30 <p>Visst du at det ikke lages ordrett referat fra norske domstoler?
31 Det er ingen som skriver ned alt som sies i en norsk rettsal slik en
32 ser i TV-serier fra USA. Det som publiseres er dommerens
33 oppsummering, og alt som ikke blir med i den oppsummeringen er det
34 vanskelig å få dokumentert i ettertid. Konsekvensen er at en kan
35 lyve så mye en vil fra vitneboksen uten å bli tatt for det i
36 ettertid, hvis dommeren ikke syntes det som ble sagt var så
37 interessant at det ble med i dokumentet som dokumenterer
38 domsavsigelsen. Mens alt som sies fra Stortingets talerstol er
39 tilgjengelig på web etter kort tid for kontroll og kritikk, er det
40 ingen tilsvarende mulighet for det som sies fra vitneboksen i en norsk
41 domstol. Kan dette føre til at en sak varer lengre enn nødvendig i
42 rettssystemet? Jeg tror det, og synes det er en skam at det ikke
43 publiseres ordrette referater fra norske rettsaler.
</p>
45 <p>En relatert observasjon er at det i utvalgte deler av landet
46 eksperimenteres med lydopptak fra rettsalen, men disse opptakene er
47 kun tilgjengelig for dommeren til hjelp når oppsummeringen skrives.
48 Jeg synes som et minimum at disse lydopptakene som en regel burde vært
49 publisert offentlig på web.
</p>
55 Tags:
<a href=
"tags/norsk">norsk
</a>.
59 <div class=
"padding"></div>
62 <div class=
"title"><a href=
"Testing_av_reprap_elektronikken_igang.html">Testing av reprap-elektronikken igang
</a></div>
63 <div class=
"date">2009-
03-
12 16:
00</div>
65 <p>Lenge siden det var en oppdatering av status for min
3D-skriver og
66 i mellomtiden har det skjedd en god del. Reprap-en er nesten ferdig
67 montert, og elektronikken er også nesten ferdig loddet. Det ser ut
68 til at bits-from-bytes sitt byggesett versjon
2.01 hadde noen småfeil,
69 der en del manglet og en annen hadde suboptimalt design. Jeg løser
70 antagelig det ene problemet med å borre noen ekstra hull til skruver i
71 en plastdelen som trenger å festes. Det andre problemet håper jeg å
72 få hjelp fra Audun Vaaler ved Høgskolen i Østfold til å løse.
73 Høgskolen er igang med å bygge en tilsvarende reprap i versjon
2.0, og
74 er kommet litt lenger enn meg. De kan forhåpentligvis skrive ut den
75 delen jeg mangler på denne.
</p>
77 <p>Når det gjelder elektronikken, så er mye allerede loddet sammen av
78 min venn Anders Rosnes, som har mer peiling på elektronikk og lodding
79 enn meg. Jeg fikk i dag testet
80 <a href=
"http://reprap.org/bin/view/Main/Stepper_Motor_Driver_1_1">stepper
81 motordriveren (v1.1)
</a>, og det fungerte. Jeg møtte et lite problem
82 med strømforsyningen, en standard ATX-strømforsyning som nektet å
83 fungere før jeg hadde satt en ledning mellom GRD og PS_ON som
85 <a href=
"http://dev.www.reprap.org/bin/view/Main/PCPowerSupply">reprap-sidene
86 om PC-strømforsyninger
</a>. Jeg møtte også et annet problem med
87 Arduino-programvaren. Versjon
0013 fungerer visst ikke på
88 Debian/Etch. Den kompilerte binæren ble på
0 bytes. En side jeg fant
90 <a href=
"http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1234153046/5">tipset
91 meg
</A> om at en nedgradering
92 til
<a href=
"http://arduino.googlecode.com/files/arduino-0012-linux.tgz">versjon
93 0012</a> kunne løse problemet, og endelig ser jeg motorakslingen
94 snurre. Nå er det å koble sammen mekanikk og elektronikk for å se om
95 reprap-en kvikner til.
</p>
101 Tags:
<a href=
"tags/3d-printer">3d-printer
</a>,
<a href=
"tags/norsk">norsk
</a>,
<a href=
"tags/nuug">nuug
</a>,
<a href=
"tags/reprap">reprap
</a>.
105 <div class=
"padding"></div>
108 <div class=
"title"><a href=
"Frikanalen_og_jul_i_studentr__det.html">Frikanalen og jul i studentrådet
</a></div>
109 <div class=
"date">2009-
03-
11 23:
40</div>
112 <a href=
"http://lists.nuug.no/pipermail/interesserte/2009-March/000387.html">lanserte
</a>
114 <a href=
"http://www.frikanalen.no">Frikanalen
</a> med
115 <a href=
"http://www.nuug.no/pub/video/frikanalen/frontpage.cgi">åpne
116 standarder
</a>, og resultatet av noen intense uker med arbeide kunne
117 endelig presenteres. Jeg har tro på åpen kanalkonseptet som
118 Frikanalen er et eksempel på, der borgerne får anledning til å
119 kringkaste sitt syn på en åpen og demokratisk måte. Jeg er veldig
120 glad vi har fått gjort kanalen tilgjengelig i Ogg Theora, slik at alle
121 kan få tilgang til opptakene på web, og slipper å måtte installere MS
122 Silverlight for å spille av opptakene.
</p>
124 <p>Frikanalen har en brokete historie, og dagens inkarnasjon er ikke
125 helt slik foreningen Åpen kanal planla det for mange år siden, noe som
126 er bakgrunnen for at det fredag
13. mars
2009 kl
09:
00 starter en
127 rettsak i Oslo tingrett der Kringkasterforeningen (tidligere
128 foreningen Åpen kanal) har saksøkt kulturdepartementet over
129 konsesjonsvilkårene til Frikanalen. Jeg er spent på resultatet.
</p>
131 <p>I arbeidet med Frikanalen med åpne standarder, så har vi hatt glede
132 av å se en rekke av innslagene som er tilgjengelig. Her er mye
133 religiøst sludder, fra
134 <a href=
"http://www.nuug.no/pub/video/frikanalen/fetchvideo.cgi?videoId=720">vandring
136 <a href=
"http://www.nuug.no/pub/video/frikanalen/fetchvideo.cgi?videoId=779">religiøst
137 vinklede nyheter
</a> til
139 href=
"http://www.nuug.no/pub/video/frikanalen/fetchvideo.cgi?videoId=2077">kreasjonisk
140 retorikk
</a>, men også fine
141 <a href=
"http://www.nuug.no/pub/video/frikanalen/fetchvideo.cgi?videoId=407">dokumentarer
142 om redningsselskapet
</a> og
143 <a href=
"http://www.nuug.no/pub/video/frikanalen/fetchvideo.cgi?videoId=2204">interessante
144 tegneserieanmeldelser
</a>. Det jeg derimot har hatt størst glede av,
147 <a href=
"http://www.nuug.no/pub/video/frikanalen/fetchvideo.cgi?videoId=1556">jul
148 i studentrådet
</a>, der hver episode var en fest å se på. Jeg håper
149 NUUG lykkes med å få ut sine opptak med like stor suksess.
</p>
155 Tags:
<a href=
"tags/norsk">norsk
</a>,
<a href=
"tags/nuug">nuug
</a>,
<a href=
"tags/video">video
</a>.
159 <div class=
"padding"></div>
162 <div class=
"title"><a href=
"Lisensvalg_for_NUUG_opptakene_endelig_p___plass.html">Lisensvalg for NUUG-opptakene endelig på plass
</a></div>
163 <div class=
"date">2009-
03-
06 21:
20</div>
165 <p>Etter mange års meditasjon over temaet, har NUUG endelig klart å
166 bestemme seg for hvilken lisens vi skal bruke på videoopptakene som
167 gjøres av NUUGs videogruppe. Ole Kristian har annonsert at lisensen
168 blir
<a href=
"http://creativecommons.org/licenses/by-sa/3.0/no/">Creative
169 Commons Navngivelse-Del på samme vilkår
3.0 Norge
</a>. Jeg er veldig
170 glad for at denne saken endelig er landet. Lisensen for opptaket til
171 Stallman-foredraget ble en annen pga. at lisensvalget ikke var avklart
172 på forhånd og IFI og PING ønsket CC-BY-ND, og må ses på som et unntak
173 i denne sammenhengen.
</p>
179 Tags:
<a href=
"tags/norsk">norsk
</a>,
<a href=
"tags/nuug">nuug
</a>,
<a href=
"tags/video">video
</a>.
183 <div class=
"padding"></div>
186 <div class=
"title"><a href=
"Teknisk_program_for_Go_Open_2009_er_nesten_ferdig.html">Teknisk program for Go Open
2009 er nesten ferdig
</a></div>
187 <div class=
"date">2009-
03-
05 22:
30</div>
189 <p>Etter lang tids jobbing begynner endelig programmet til det
190 tekniske sporet på konferansen
<a href=
"http://www.goopen.no/">Go Open
191 2009</a> å bli ferdig. Det blir
9 punkter på programmet, og etter alt
192 å dømme blir det disse
9:
</p>
196 <li>"Open Telephony: A solution greater than the sum of its parts" med
197 Jon
"maddog" Hall
</li>
198 <li>OpenSolaris-relatert med Ian Murdock fra SUN
</li>
199 <li>"The inner workings of the OpenStreetmap project and the
200 technology used" med Andy Allan
</li>
201 <li>Coreboot-relatert med Peter Stuge
</li>
202 <li>"Gratis værdata fra Meteorologisk institutt" med Trond Michelsen
</li>
203 <li>RRDtool/Nagios-relatert med Tobias Oetiker
</li>
204 <li>"Developers guide to server-side productivity and fun using open
205 source platforms and frameworks" med en gjeng folk fra
207 <li>"G(et)it Nå!" med Marcus Ramberg
</li>
208 <li>Om kontrolltelling av valgresultater med fri programvare med Mitch
213 <p>De siste bekreftelsene og overskrifter mangler og kommer
214 forhåpentlig på plass før mandag, men jeg håper dette blir et program
215 flere enn meg vil sette pris på. Jeg gleder meg i hvert fall
222 Tags:
<a href=
"tags/norsk">norsk
</a>,
<a href=
"tags/nuug">nuug
</a>.
226 <div class=
"padding"></div>
229 <div class=
"title"><a href=
"Checking_server_hardware_support_status_for_Dell__HP_and_IBM_servers.html">Checking server hardware support status for Dell, HP and IBM servers
</a></div>
230 <div class=
"date">2009-
02-
28 23:
50</div>
232 <p>At work, we have a few hundred Linux servers, and with that amount
233 of hardware it is important to keep track of when the hardware support
234 contract expire for each server. We have a machine (and service)
235 register, which until recently did not contain much useful besides the
236 machine room location and contact information for the system owner for
237 each machine. To make it easier for us to track support contract
238 status, I've recently spent time on extending the machine register to
239 include information about when the support contract expire, and to tag
240 machines with expired contracts to make it easy to get a list of such
241 machines. I extended a perl script already being used to import
242 information about machines into the register, to also do some screen
243 scraping off the sites of Dell, HP and IBM (our majority of machines
244 are from these vendors), and automatically check the support status
245 for the relevant machines. This make the support status information
246 easily available and I hope it will make it easier for the computer
247 owner to know when to get new hardware or renew the support contract.
248 The result of this work documented that
27% of the machines in the
249 registry is without a support contract, and made it very easy to find
250 them.
27% might seem like a lot, but I see it more as the case of us
251 using machines a bit longer than the
3 years a normal support contract
252 last, to have test machines and a platform for less important
253 services. After all, the machines without a contract are working fine
254 at the moment and the lack of contract is only a problem if any of
255 them break down. When that happen, we can either fix it using spare
256 parts from other machines or move the service to another old
259 <p>I believe the code for screen scraping the Dell site was originally
260 written by Trond Hasle Amundsen, and later adjusted by me and Morten
261 Werner Forsbring. The HP scraping was written by me after reading a
262 nice article in ;login: about how to use WWW::Mechanize, and the IBM
263 scraping was written by me based on the Dell code. I know the HTML
264 parsing could be done using nice libraries, but did not want to
265 introduce more dependencies. This is the current incarnation:
</p>
273 sub get_support_info {
274 my ($machine, $model, $serial, $productnumber) = @_;
277 if ( $model =~ m/^Dell / ) {
278 # fetch website from Dell support
279 my $url = "http://support.euro.dell.com/support/topics/topic.aspx/emea/shared/support/my_systems_info/no/details?c=no
&cs=nodhs1
&l=no
&s=dhs
&ServiceTag=$serial";
280 my $webpage = get($url);
281 return undef unless ($webpage);
284 my @lines = split(/\n/, $webpage);
285 foreach my $line (@lines) {
286 next unless ($line =~ m/Beskrivelse/);
287 $line =~ s/
<[^
>]+
?>/;/gm;
288 $line =~ s/^.+?;(Beskrivelse;)/$
1/;
290 my @f = split(/\;/, $line);
293 while ($f[
3] eq "DELL") {
294 my ($type, $startstr, $endstr, $days) = @f[
0,
5,
7,
10];
296 my $start = POSIX::strftime("%Y-%m-%d",
297 localtime(str2time($startstr)));
298 my $end = POSIX::strftime("%Y-%m-%d",
299 localtime(str2time($endstr)));
300 $str .= "$type $start -
> $end ";
302 $lastend = $end if ($end gt $lastend);
304 my $today = POSIX::strftime("%Y-%m-%d", localtime(time));
305 tag_machine_unsupported($machine)
306 if ($lastend lt $today);
308 } elsif ( $model =~ m/^HP / ) {
309 my $mech = WWW::Mechanize-
>new();
311 'http://www1.itrc.hp.com/service/ewarranty/warrantyInput.do';
314 'BODServiceID' =
> 'NA',
315 'RegisteredPurchaseDate' =
> '',
317 'productNumber' =
> $productnumber,
318 'serialNumber1' =
> $serial,
320 $mech-
>submit_form( form_number =
> 2,
322 # Next step is screen scraping
323 my $content = $mech-
>content();
325 $content =~ s/
<[^
>]+
?>/;/gm;
326 $content =~ s/\s+/ /gm;
327 $content =~ s/;\s*;/;;/gm;
328 $content =~ s/;[\s;]+/;/gm;
330 my $today = POSIX::strftime("%Y-%m-%d", localtime(time));
332 while ($content =~ m/;Warranty Type;/) {
333 my ($type, $status, $startstr, $stopstr) = $content =~
334 m/;Warranty Type;([^;]+);.+?;Status;(\w+);Start Date;([^;]+);End Date;([^;]+);/;
335 $content =~ s/^.+?;Warranty Type;//;
336 my $start = POSIX::strftime("%Y-%m-%d",
337 localtime(str2time($startstr)));
338 my $end = POSIX::strftime("%Y-%m-%d",
339 localtime(str2time($stopstr)));
341 $str .= "$type ($status) $start -
> $end ";
343 tag_machine_unsupported($machine)
346 } elsif ( $model =~ m/^IBM / ) {
347 # This code ignore extended support contracts.
348 my ($producttype) = $model =~ m/.*-\[(.{
4}).+\]-/;
349 if ($producttype
&& $serial) {
351 get("http://www-
947.ibm.com/systems/support/supportsite.wss/warranty?action=warranty
&brandind=
5000008&Submit=Submit
&type=$producttype
&serial=$serial");
353 $content =~ s/
<[^
>]+
?>/;/gm;
354 $content =~ s/\s+/ /gm;
355 $content =~ s/;\s*;/;;/gm;
356 $content =~ s/;[\s;]+/;/gm;
358 $content =~ s/^.+?;Warranty status;//;
359 my ($status, $end) = $content =~ m/;Warranty status;([^;]+)\s*;Expiration date;(\S+) ;/;
361 $str .= "($status) -
> $end ";
363 my $today = POSIX::strftime("%Y-%m-%d", localtime(time));
364 tag_machine_unsupported($machine)
373 <p>Here are some examples on how to use the function, using fake
374 serial numbers. The information passed in as arguments are fetched
378 print get_support_info("hp.host", "HP ProLiant BL460c G1", "
1234567890"
380 print get_support_info("dell.host", "Dell Inc. PowerEdge
2950", "
1234567");
381 print get_support_info("ibm.host", "IBM eserver xSeries
345 -[
867061X]-",
385 <p>I would recommend this approach for tracking support contracts for
386 everyone with more than a few computers to administer. :)
</p>
388 <p>Update
2009-
03-
06: The IBM page do not include extended support
389 contracts, so it is useless in that case. The original Dell code do
390 not handle extended support contracts either, but has been updated to
397 Tags:
<a href=
"tags/english">english
</a>,
<a href=
"tags/nuug">nuug
</a>.
401 <div class=
"padding"></div>
404 <div class=
"title"><a href=
"Using_bar_codes_at_a_computing_center.html">Using bar codes at a computing center
</a></div>
405 <div class=
"date">2009-
02-
20 08:
50</div>
407 <p>At work with the University of Oslo, we have several hundred computers
408 in our computing center. This give us a challenge in tracking the
409 location and cabling of the computers, when they are added, moved and
410 removed. Some times the location register is not updated when a
411 computer is inserted or moved and we then have to search the room for
412 the "missing" computer.
</p>
414 <p>In the last issue of Linux Journal, I came across a project
415 <a href=
"http://www.libdmtx.org/">libdmtx
</a> to write and read bar
416 code blocks as defined in the
417 <a href=
"http://en.wikipedia.org/wiki/Data_Matrix">The Data Matrix
418 Standard
</a>. This is bar codes that can be read with a normal
419 digital camera, for example that on a cell phone, and several such bar
420 codes can be read by libdmtx from one picture. The bar code standard
421 allow up to
2 KiB to be written in the tag. There is another project
422 with
<a href=
"http://www.terryburton.co.uk/barcodewriter/">a bar code
423 writer written in postscript
</a> capable of creating such bar codes,
424 but this was the first time I found a tool to read these bar
427 <p>It occurred to me that this could be used to tag and track the
428 machines in our computing center. If both racks and computers are
429 tagged this way, we can use a picture of the rack and all its
430 computers to detect the rack location of any computer in that rack.
431 If we do this regularly for the entire room, we will find all
432 locations, and can detect movements and removals.
</p>
434 <p>I decided to test if this would work in practice, and picked a
435 random rack and tagged all the machines with their names. Next, I
436 took pictures with my digital camera, and gave the dmtxread program
437 these JPEG pictures to see how many tags it could read. This worked
438 fairly well. If the pictures was well focused and not taken from the
439 side, all tags in the image could be read. Because of limited space
440 between the racks, I was unable to get a good picture of the entire
441 rack, but could without problem read all tags from a picture covering
442 about half the rack. I had to limit the search time used by dmtxread
443 to
60000 ms to make sure it terminated in a reasonable time frame.
</p>
445 <p>My conclusion is that this could work, and we should probably look
446 at adjusting our computer tagging procedures to use bar codes for
447 easier automatic tracking of computers.
</p>
453 Tags:
<a href=
"tags/english">english
</a>,
<a href=
"tags/nuug">nuug
</a>.
457 <div class=
"padding"></div>
460 <div class=
"title"><a href=
"Kart_over_overv__kningskamera_i_Norge.html">Kart over overvåkningskamera i Norge
</a></div>
461 <div class=
"date">2009-
02-
15 22:
30</div>
464 <a href=
"http://www.personvern.no/">personvernforeningen
</a> har jeg
466 <a href=
"http://personvern.no/wiki/index.php/Kameraovervåkning">et
467 kart over overvåkningskamera i Norge
</a>. Bakgrunnen er at det etter
468 min mening bærer galt avsted med den massive overvåkningen som
469 finner sted i Norge i dag, og at flere og flere overvåkningskamera
470 gjør det vanskeligere og vanskeligere å gå igjennom livet uten at
471 små og store brødre trenger inn i ens private sfære. Datatilsynet
472 har et register over kameraovervåkning, men det viser seg å være
473 ubrukelig både til å finne ut hvor det er kamera plassert, og til å
474 sjekke om et kamera en kommer over er registrert. Dette nye kartet
475 fikser en av disse manglene, men det vil fortsatt være umulig å vite
476 om et kamera er registrert etter lovens krav eller ikke. Pr. nå er
477 22 kamera i Oslo registrert, og det trengs flere til å registrere
478 alle. Informasjonen registreres direkte inn i
<a
479 href=
"http://www.openstreetmap.org/">OpenStreetmap
</a>, sa hentes det
480 automatisk over i spesialkartet.
</p>
486 Tags:
<a href=
"tags/norsk">norsk
</a>,
<a href=
"tags/personvern">personvern
</a>.
490 <div class=
"padding"></div>
493 <div class=
"title"><a href=
"Endelig_er_Debian_Lenny_gitt_ut.html">Endelig er Debian Lenny gitt ut
</a></div>
494 <div class=
"date">2009-
02-
15 11:
50</div>
496 <p>Endelig er
<a href=
"http://www.debian.org/">Debian
</a>
497 <a href=
"http://www.debian.org/News/2009/20090214">Lenny
</a> gitt ut.
498 Et langt steg videre for Debian-prosjektet, og en rekke nye
499 programpakker blir nå tilgjengelig for de av oss som bruker den
500 stabile utgaven av Debian. Neste steg er nå å få
501 <a href=
"http://www.skolelinux.org/">Skolelinux
</a> /
502 <a href=
"http://wiki.debian.org/DebianEdu/">Debian Edu
</a> ferdig
503 oppdatert for den nye utgaven, slik at en oppdatert versjon kan
504 slippes løs på skolene. Takk til alle debian-utviklerne som har
505 gjort dette mulig. Endelig er f.eks. fungerende avhengighetsstyrt
506 bootsekvens tilgjengelig i stabil utgave, vha pakken
507 <tt>insserv
</tt>.
</p>
513 Tags:
<a href=
"tags/debian">debian
</a>,
<a href=
"tags/debian edu">debian edu
</a>,
<a href=
"tags/norsk">norsk
</a>.
517 <div class=
"padding"></div>
520 <div class=
"title"><a href=
"F__rste_vellykkede_videostr__m_fra_NUUG.html">Første vellykkede videostrøm fra NUUG
</a></div>
521 <div class=
"date">2009-
02-
11 06:
30</div>
523 <p>Jeg ble glad for å se under
524 <a href=
"http://www.nuug.no/aktiviteter/20090210-compiz/">gårdagens
525 medlemsmøte
</a> i NUUG Oslo at utsending av live-video fra møtet
526 fungerte for første gang. Forrige gang ble det ved en teknisk tabbe
527 sendt video uten lyd. Vi kan takke Ole Kristian Lien og resten av
528 videogruppen i NUUG for at nå NUUG-medlemmer over det ganske land
529 kunne se foredraget samtidig med oss i Oslo. Vi opplevde til og med
530 under møtet å motta spørsmål via IRC som ble besvart der og da.
531 Opptaket publiseres så snart det er kopiert over til NUUGs
532 webserver og komprimert.
</p>
538 Tags:
<a href=
"tags/norsk">norsk
</a>,
<a href=
"tags/nuug">nuug
</a>,
<a href=
"tags/video">video
</a>.
542 <div class=
"padding"></div>
544 <p style=
"text-align: right;"><a href=
"index.rss"><img src=
"xml.gif" alt=
"RSS feed" width=
"36" height=
"14"></a></p>
558 <li><a href=
"archive/2009/01/">January (
8)
</a></li>
560 <li><a href=
"archive/2009/02/">February (
8)
</a></li>
562 <li><a href=
"archive/2009/03/">March (
5)
</a></li>
569 <li><a href=
"archive/2008/11/">November (
5)
</a></li>
571 <li><a href=
"archive/2008/12/">December (
7)
</a></li>
582 <li><a href=
"tags/3d-printer">3d-printer (
8)
</a></li>
584 <li><a href=
"tags/amiga">amiga (
1)
</a></li>
586 <li><a href=
"tags/aros">aros (
1)
</a></li>
588 <li><a href=
"tags/debian">debian (
3)
</a></li>
590 <li><a href=
"tags/debian edu">debian edu (
4)
</a></li>
592 <li><a href=
"tags/english">english (
6)
</a></li>
594 <li><a href=
"tags/fiksgatami">fiksgatami (
1)
</a></li>
596 <li><a href=
"tags/ltsp">ltsp (
1)
</a></li>
598 <li><a href=
"tags/multimedia">multimedia (
2)
</a></li>
600 <li><a href=
"tags/norsk">norsk (
27)
</a></li>
602 <li><a href=
"tags/nuug">nuug (
24)
</a></li>
604 <li><a href=
"tags/personvern">personvern (
3)
</a></li>
606 <li><a href=
"tags/reprap">reprap (
8)
</a></li>
608 <li><a href=
"tags/rss">rss (
1)
</a></li>
610 <li><a href=
"tags/stavekontroll">stavekontroll (
1)
</a></li>
612 <li><a href=
"tags/video">video (
5)
</a></li>
614 <li><a href=
"tags/web">web (
2)
</a></li>
620 <p style=
"text-align: right">
621 Created by
<a href=
"http://steve.org.uk/Software/chronicle">Chronicle v3.5
</a>