1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns=
"http://www.w3.org/1999/xhtml" dir=
"ltr">
5 <meta http-equiv=
"Content-Type" content=
"text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen: entries from March
2014</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=
"03.rss" type=
"application/rss+xml" />
15 <a href=
"http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen
</a>
22 <h3>Entries from March
2014.
</h3>
26 <a href=
"http://people.skolelinux.org/pere/blog/Public_Trusted_Timestamping_services_for_everyone.html">Public Trusted Timestamping services for everyone
</a>
32 <p>Did you ever need to store logs or other files in a way that would
33 allow it to be used as evidence in court, and needed a way to
34 demonstrate without reasonable doubt that the file had not been
35 changed since it was created? Or, did you ever need to document that
36 a given document was received at some point in time, like some
37 archived document or the answer to an exam, and not changed after it
38 was received? The problem in these settings is to remove the need to
39 trust yourself and your computers, while still being able to prove
40 that a file is the same as it was at some given time in the past.
</p>
42 <p>A solution to these problems is to have a trusted third party
43 "stamp" the document and verify that at some given time the document
44 looked a given way. Such
45 <a href=
"https://en.wikipedia.org/wiki/Notarius">notarius
</a> service
46 have been around for thousands of years, and its digital equivalent is
48 <a href=
"http://en.wikipedia.org/wiki/Trusted_timestamping">trusted
49 timestamping service
</a>.
<a href=
"http://www.ietf.org/">The Internet
50 Engineering Task Force
</a> standardised how such service could work a
51 few years ago as
<a href=
"http://tools.ietf.org/html/rfc3161">RFC
52 3161</a>. The mechanism is simple. Create a hash of the file in
53 question, send it to a trusted third party which add a time stamp to
54 the hash and sign the result with its private key, and send back the
55 signed hash + timestamp. Both email, FTP and HTTP can be used to
56 request such signature, depending on what is provided by the service
57 used. Anyone with the document and the signature can then verify that
58 the document matches the signature by creating their own hash and
59 checking the signature using the trusted third party public key.
60 There are several commercial services around providing such
61 timestamping. A quick search for
62 "
<a href=
"https://duckduckgo.com/?q=rfc+3161+service">rfc
3161
63 service
</a>" pointed me to at least
64 <a href="https://www.digistamp.com/technical/how-a-digital-time-stamp-works/
">DigiStamp</a>,
65 <a href="http://www.quovadisglobal.co.uk/CertificateServices/SigningServices/TimeStamp.aspx
">Quo
67 <a href="https://www.globalsign.com/timestamp-service/
">Global Sign</a>
68 and <a href="http://www.globaltrustfinder.com/TSADefault.aspx
">Global
69 Trust Finder</a>. The system work as long as the private key of the
70 trusted third party is not compromised.</p>
72 <p>But as far as I can tell, there are very few public trusted
73 timestamp services available for everyone. I've been looking for one
74 for a while now. But yesterday I found one over at
75 <a href="https://www.pki.dfn.de/zeitstempeldienst/
">Deutches
76 Forschungsnetz</a> mentioned in
77 <a href="http://www.d-mueller.de/blog/dealing-with-trusted-timestamps-in-php-rfc-
3161/
">a
78 blog by David Müller</a>. I then found a good recipe on how to use
80 <a href="http://www.rz.uni-greifswald.de/support/dfn-pki-zertifikate/zeitstempeldienst.html
">University
81 of Greifswald</a>.</p>
83 <p><a href="http://www.openssl.org/
">The OpenSSL library</a> contain
84 both server and tools to use and set up your own signing service. See
85 the ts(1SSL), tsget(1SSL) manual pages for more details. The
86 following shell script demonstrate how to extract a signed timestamp
87 for any file on the disk in a Debian environment:</p>
92 url="http://zeitstempel.dfn.de"
93 caurl="https://pki.pca.dfn.de/global-services-ca/pub/cacert/chain.txt"
94 reqfile=$(mktemp -t tmp.XXXXXXXXXX.tsq)
95 resfile=$(mktemp -t tmp.XXXXXXXXXX.tsr)
97 if [ ! -f $cafile ] ; then
98 wget -O $cafile "$caurl"
100 openssl ts -query -data "$
1" -cert | tee "$reqfile" \
101 | /usr/lib/ssl/misc/tsget -h "$url" -o "$resfile"
102 openssl ts -reply -in "$resfile" -text
1>&
2
103 openssl ts -verify -data "$
1" -in "$resfile" -CAfile "$cafile"
1>&
2
105 rm "$reqfile" "$resfile"
106 </pre></blockquote></p>
108 <p>The argument to the script is the file to timestamp, and the output
109 is a base64 encoded version of the signature to STDOUT and details
110 about the signature to STDERR. Note that due to
111 <a href=
"http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=742553">a bug
112 in the tsget script
</a>, you might need to modify the included script
113 and remove the last line. Or just write your own HTTP uploader using
114 curl. :) Now you too can prove and verify that files have not been
117 <p>But the Internet need more public trusted timestamp services.
118 Perhaps something for
<a href=
"http://www.uninett.no/">Uninett
</a> or
119 my work place the
<a href=
"http://www.uio.no/">University of Oslo
</a>
126 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet
</a>.
131 <div class=
"padding"></div>
135 <a href=
"http://people.skolelinux.org/pere/blog/Video_DVD_reader_library___python_dvdvideo___nice_free_software.html">Video DVD reader library / python-dvdvideo - nice free software
</a>
141 <p>Keeping your DVD collection safe from scratches and curious
142 children fingers while still having it available when you want to see a
143 movie is not straight forward. My preferred method at the moment is
144 to store a full copy of the ISO on a hard drive, and use VLC, Popcorn
145 Hour or other useful players to view the resulting file. This way the
146 subtitles and bonus material are still available and using the ISO is
147 just like inserting the original DVD record in the DVD player.
</p>
149 <p>Earlier I used dd for taking security copies, but it do not handle
150 DVDs giving read errors (which are quite a few of them). I've also
152 <a href=
"http://people.skolelinux.org/pere/blog/Ripping_problematic_DVDs_using_dvdbackup_and_genisoimage.html">dvdbackup
153 and genisoimage
</a>, but these days I use the marvellous python library
155 <a href=
"http://bblank.thinkmo.de/blog/new-software-python-dvdvideo">python-dvdvideo
</a>
156 written by Bastian Blank. It is
157 <a href=
"http://packages.qa.debian.org/p/python-dvdvideo.html">in Debian
158 already
</a> and the binary package name is python3-dvdvideo. Instead
159 of trying to read every block from the DVD, it parses the file
160 structure and figure out which block on the DVD is actually in used,
161 and only read those blocks from the DVD. This work surprisingly well,
162 and I have been able to almost backup my entire DVD collection using
163 this method.
</p> So far, python-dvdvideo have failed on between
10 and
164 20 DVDs, which is a small fraction of my collection. The most common
166 <a href=
"https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=720831">DVDs
167 using UTF-
16 instead of UTF-
8 characters
</a>, which according to
168 Bastian is against the DVD specification (and seem to cause some
169 players to fail too). A rarer problem is what seem to be inconsistent
170 DVD structures, as the python library
171 <a href=
"https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=723079">claim
172 there is a overlap between objects
</a>. An equally rare problem claim
173 <a href=
"https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=741878">some
174 value is out of range
</a>. No idea what is going on there. I wish I
175 knew enough about the DVD format to fix these, to ensure my movie
176 collection will stay with me in the future.
</p>
178 <p>So, if you need to keep your DVDs safe, back them up using
179 python-dvdvideo. :)
</p>
185 Tags:
<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/opphavsrett">opphavsrett
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/video">video
</a>.
190 <div class=
"padding"></div>
194 <a href=
"http://people.skolelinux.org/pere/blog/Norsk_utgave_av_Alaveteli___WhatDoTheyKnow_p__trappene.html">Norsk utgave av Alaveteli / WhatDoTheyKnow på trappene
</a>
200 <p>Det offentlige Norge har mye kunnskap og informasjon. Men hvordan
201 kan en få tilgang til den på en enkel måte? Takket være et lite
202 knippe lover og tilhørende forskrifter, blant annet
203 <a href=
"http://lovdata.no/dokument/NL/lov/2006-05-19-16">offentlighetsloven
</a>,
204 <a href=
"http://lovdata.no/dokument/NL/lov/2003-05-09-31">miljøinformasjonsloven
</a>
206 <a href=
"http://lovdata.no/dokument/NL/lov/1967-02-10/">forvaltningsloven
</a>
207 har en rett til å spørre det offentlige og få svar. Men det finnes
208 intet offentlig arkiv over hva andre har spurt om, og dermed risikerer en
209 å måtte forstyrre myndighetene gang på gang for å få tak i samme
210 informasjonen på nytt.
<a href=
"http://www.mysociety.org/">Britiske
211 mySociety
</a> har laget tjenesten
212 <a href=
"http://www.whatdotheyknow.com/">WhatDoTheyKnow
</a> som gjør
213 noe med dette. I Storbritannia blir WhatdoTheyKnow brukt i
214 <a href=
"http://www.mysociety.org/2011/07/01/whatdotheyknows-share-of-central-government-foi-requests-q2-2011/">ca
215 15% av alle innsynsforespørsler mot sentraladministrasjonen
</a>.
216 Prosjektet heter
<a href=
"http://www.alaveteli.org/">Alaveteli
</A>, og
217 er takk i bruk en rekke steder etter at løsningen ble generalisert og
218 gjort mulig å oversette. Den hjelper borgerne med å be om innsyn,
219 rådgir ved purringer og klager og lar alle se hvilke henvendelser som
220 er sendt til det offentlige og hvilke svar som er kommet inn, i et
221 søkpart arkiv. Her i Norge holder vi i foreningen NUUG på å få opp en
222 norsk utgave av Alaveteli, og her trenger vi din hjelp med
225 <p>Så langt er
76 % av Alaveteli oversatt til norsk bokmål, men vi
226 skulle gjerne vært oppe i
100 % før lansering. Oversettelsen gjøres
227 på
<a href=
"https://www.transifex.com/projects/p/alaveteli/">Transifex,
228 der enhver som registrerer seg
</a> og ber om tilgang til
229 bokmålsoversettelsen får bidra. Vi har satt opp en test av tjenesten
230 (som ikke sender epost til det offentlige, kun til oss som holder på å
231 sette opp tjenesten) på maskinen
232 <a href=
"http://alaveteli-dev.nuug.no/">alaveteli-dev.nuug.no
</a>, der
233 en kan se hvordan de oversatte meldingen blir seende ut på nettsiden.
234 Når tjenesten lanseres vil den hete
235 <a href=
"https://www.mimesbrønn.no/">Mimes brønn
</a>, etter
236 visdomskilden som Odin måtte gi øyet sitt for å få drikke i. Den
237 nettsiden er er ennå ikke klar til bruk.
</p>
239 <p>Hvis noen vil oversette til nynorsk også, så skal vi finne ut
240 hvordan vi lager en flerspråklig tjeneste. Men i første omgang er
241 fokus på bokmålsoversettelsen, der vi selv har nok peiling til å ha
242 fått oversatt
76%, men trenger hjelp for å komme helt i mål. :)
</p>
248 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</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>.
253 <div class=
"padding"></div>
257 <a href=
"http://people.skolelinux.org/pere/blog/Freedombox_on_Dreamplug__Raspberry_Pi_and_virtual_x86_machine.html">Freedombox on Dreamplug, Raspberry Pi and virtual x86 machine
</a>
263 <p>The
<a href=
"https://wiki.debian.org/FreedomBox">Freedombox
264 project
</a> is working on providing the software and hardware for
265 making it easy for non-technical people to host their data and
266 communication at home, and being able to communicate with their
267 friends and family encrypted and away from prying eyes. It has been
268 going on for a while, and is slowly progressing towards a new test
271 <p>And what day could be better than the Pi day to announce that the
272 new version will provide "hard drive" / SD card / USB stick images for
273 Dreamplug, Raspberry Pi and VirtualBox (or any other virtualization
274 system), and can also be installed using a Debian installer preseed
275 file. The Debian based Freedombox is now based on Debian Jessie,
276 where most of the needed packages used are already present. Only one,
277 the freedombox-setup package, is missing. To try to build your own
278 boot image to test the current status, fetch the freedom-maker scripts
280 <a href=
"http://packages.qa.debian.org/vmdebootstrap">vmdebootstrap
</a>
281 with a user with sudo access to become root:
284 git clone http://anonscm.debian.org/git/freedombox/freedom-maker.git \
286 sudo apt-get install git vmdebootstrap mercurial python-docutils \
287 mktorrent extlinux virtualbox qemu-user-static binfmt-support \
289 make -C freedom-maker dreamplug-image raspberry-image virtualbox-image
292 <p>Root access is needed to run debootstrap and mount loopback
293 devices. See the README for more details on the build. If you do not
294 want all three images, trim the make line. But note that thanks to
<a
295 href=
"https://bugs.debian.org/741407">a race condition in
296 vmdebootstrap
</a>, the build might fail without the patch to the
299 <p>If you instead want to install using a Debian CD and the preseed
300 method, boot a Debian Wheezy ISO and use this boot argument to load
301 the preseed values:
</p>
304 url=
<a href=
"http://www.reinholdtsen.name/freedombox/preseed-jessie.dat">http://www.reinholdtsen.name/freedombox/preseed-jessie.dat
</a>
307 <p>But note that due to
<a href=
"https://bugs.debian.org/740673">a
308 recently introduced bug in apt in Jessie
</a>, the installer will
309 currently hang while setting up APT sources. Killing the
310 '
<tt>apt-cdrom ident
</tt>' process when it hang a few times during the
311 installation will get the installation going. This affect all
312 installations in Jessie, and I expect it will be fixed soon.
</p>
314 Give it a go and let us know how it goes on the mailing list, and help
315 us get the new release published. :) Please join us on
316 <a href=
"irc://irc.debian.org:6667/%23freedombox">IRC (#freedombox on
317 irc.debian.org)
</a> and
318 <a href=
"http://lists.alioth.debian.org/mailman/listinfo/freedombox-discuss">the
319 mailing list
</a> if you want to help make this vision come true.
</p>
325 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/freedombox">freedombox
</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>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/web">web
</a>.
330 <div class=
"padding"></div>
334 <a href=
"http://people.skolelinux.org/pere/blog/How_to_add_extra_storage_servers_in_Debian_Edu___Skolelinux.html">How to add extra storage servers in Debian Edu / Skolelinux
</a>
340 <p>On larger sites, it is useful to use a dedicated storage server for
341 storing user home directories and data. The design for handling this
342 in
<a href=
"http://www.skolelinux.org/">Debian Edu / Skolelinux
</a>, is
343 to update the automount rules in LDAP and let the automount daemon on
344 the clients take care of the rest. I was reminded about the need to
345 document this better when one of the customers of
346 <a href=
"http://www.slxdrift.no/">Skolelinux Drift AS
</a>, where I am
347 on the board of directors, asked about how to do this. The steps to
348 get this working are the following:
</p>
352 <li>Add new storage server in DNS. I use nas-server.intern as the
353 example host here.
</li>
355 <li>Add automoun LDAP information about this server in LDAP, to allow
356 all clients to automatically mount it on reqeust.
</li>
358 <li>Add the relevant entries in tjener.intern:/etc/fstab, because
359 tjener.intern do not use automount to avoid mounting loops.
</li>
363 <p>DNS entries are added in GOsa², and not described here. Follow the
364 <a href=
"https://wiki.debian.org/DebianEdu/Documentation/Wheezy/GettingStarted">instructions
365 in the manual
</a> (Machine Management with GOsa² in section Getting
368 <p>Ensure that the NFS export points on the server are exported to the
369 relevant subnets or machines:
</p>
372 root@tjener:~# showmount -e nas-server
373 Export list for nas-server:
376 </pre></blockquote></p>
378 <p>Here everything on the backbone network is granted access to the
379 /storage export. With NFSv3 it is slightly better to limit it to
380 netgroup membership or single IP addresses to have some limits on the
383 <p>The next step is to update LDAP. This can not be done using GOsa²,
384 because it lack a module for automount. Instead, use ldapvi and add
385 the required LDAP objects using an editor.
</p>
388 ldapvi --ldap-conf -ZD '(cn=admin)' -b ou=automount,dc=skole,dc=skolelinux,dc=no
389 </pre></blockquote></p>
391 <p>When the editor show up, add the following LDAP objects at the
392 bottom of the document. The "/&" part in the last LDAP object is a
393 wild card matching everything the nas-server exports, removing the
394 need to list individual mount points in LDAP.
</p>
397 add cn=nas-server,ou=auto.skole,ou=automount,dc=skole,dc=skolelinux,dc=no
398 objectClass: automount
400 automountInformation: -fstype=autofs --timeout=
60 ldap:ou=auto.nas-server,ou=automount,dc=skole,dc=skolelinux,dc=no
402 add ou=auto.nas-server,ou=automount,dc=skole,dc=skolelinux,dc=no
404 objectClass: automountMap
407 add cn=/,ou=auto.nas-server,ou=automount,dc=skole,dc=skolelinux,dc=no
408 objectClass: automount
410 automountInformation: -fstype=nfs,tcp,rsize=
32768,wsize=
32768,rw,intr,hard,nodev,nosuid,noatime nas-server.intern:/&
411 </pre></blockquote></p>
413 <p>The last step to remember is to mount the relevant mount points in
414 tjener.intern by adding them to /etc/fstab, creating the mount
415 directories using mkdir and running "mount -a" to mount them.
</p>
417 <p>When this is done, your users should be able to access the files on
418 the storage server directly by just visiting the
419 /tjener/nas-server/storage/ directory using any application on any
420 workstation, LTSP client or LTSP server.
</p>
426 Tags:
<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/ldap">ldap
</a>.
431 <div class=
"padding"></div>
435 <a href=
"http://people.skolelinux.org/pere/blog/Hvordan_b_r_RFC_822_formattert_epost_lagres_i_en_NOARK5_database_.html">Hvordan bør RFC
822-formattert epost lagres i en NOARK5-database?
</a>
441 <p>For noen uker siden ble NXCs fri programvarelisenserte
443 <a href=
"http://www.nuug.no/aktiviteter/20140211-noark/">presentert hos
445 <a href=
"https://www.youtube.com/watch?v=JCb_dNS3MHQ">på youtube
446 foreløbig
</a>), og det fikk meg til å titte litt mer på NOARK5,
447 standarden for arkivhåndtering i det offentlige Norge. Jeg lurer på
448 om denne kjernen kan være nyttig i et par av mine prosjekter, og for ett
449 av dem er det mest aktuelt å lagre epost. Jeg klarte ikke finne noen
450 anbefaling om hvordan RFC
822-formattert epost (aka Internett-epost)
451 burde lagres i NOARK5, selv om jeg vet at noen arkiver tar
452 PDF-utskrift av eposten med sitt epostprogram og så arkiverer PDF-en
453 (eller enda værre, tar papirutskrift og lagrer bildet av eposten som
456 <p>Det er ikke så mange formater som er akseptert av riksarkivet til
457 langtidsoppbevaring av offentlige arkiver, og PDF og XML er de mest
458 aktuelle i så måte. Det slo meg at det måtte da finnes en eller annen
459 egnet XML-representasjon og at det kanskje var enighet om hvilken som
460 burde brukes, så jeg tok mot til meg og spurte
461 <a href=
"http://samdok.com/">SAMDOK
</a>, en gruppe tilknyttet
462 arkivverket som ser ut til å jobbe med NOARK-samhandling, om de hadde
468 <p>Usikker på om dette er riktig forum å ta opp mitt spørsmål, men jeg
469 lurer på om det er definert en anbefaling om hvordan RFC
470 822-formatterte epost (aka vanlig Internet-epost) bør lages håndteres
471 i NOARK5, slik at en bevarer all informasjon i eposten
472 (f.eks. Received-linjer). Finnes det en anbefalt XML-mapping ala den
474 <URL:
<a href=
"https://www.informit.com/articles/article.aspx?p=32074">https://www.informit.com/articles/article.aspx?p=
32074</a> >? Mitt
475 mål er at det skal være mulig å lagre eposten i en NOARK5-kjerne og
476 kunne få ut en identisk formattert kopi av opprinnelig epost ved
480 <p>Postmottaker hos SAMDOK mente spørsmålet heller burde stilles
481 direkte til riksarkivet, og jeg fikk i dag svar derfra formulert av
482 seniorrådgiver Geir Ivar Tungesvik:
</p>
485 <p>Riksarkivet har ingen anbefalinger når det gjelder konvertering fra
486 e-post til XML. Det står arkivskaper fritt å eventuelt definere/bruke
487 eget format. Inklusive da - som det spørres om - et format der det er
488 mulig å re-etablere e-post format ut fra XML-en. XML (e-post)
489 dokumenter må være referert i arkivstrukturen, og det må vedlegges et
490 gyldig XML skjema (.xsd) for XML-filene. Arkivskaper står altså fritt
491 til å gjøre hva de vil, bare det dokumenteres og det kan dannes et
492 utrekk ved avlevering til depot.
</p>
494 <p>De obligatoriske kravene i Noark
5 standarden må altså oppfylles -
495 etter dialog med Riksarkivet i forbindelse med godkjenning. For
496 offentlige arkiv er det særlig viktig med filene loependeJournal.xml
497 og offentligJournal.xml. Private arkiv som vil forholde seg til Noark
498 5 standarden er selvsagt frie til å bruke det som er relevant for dem
499 av obligatoriske krav.
</p>
502 <p>Det ser dermed ut for meg som om det er et lite behov for å
503 standardisere XML-lagring av RFC-
822-formatterte meldinger. Noen som
504 vet om god spesifikasjon i så måte? I tillegg til den omtalt over,
505 har jeg kommet over flere aktuelle beskrivelser (søk på "rfc
822
506 xml", så finner du aktuelle alternativer).
</p>
510 <li><a href=
"http://www.openhealth.org/xmtp/">XML MIME Transformation
511 protocol (XMTP)
</a> fra OpenHealth, sist oppdatert
2001.
</li>
513 <li><a href=
"https://tools.ietf.org/html/draft-klyne-message-rfc822-xml-03">An
514 XML format for mail and other messages
</a> utkast fra IETF datert
517 <li><a href=
"http://www.informit.com/articles/article.aspx?p=32074">xMail:
518 E-mail as XML
</a> en artikkel fra
2003 som beskriver python-modulen
519 rfc822 som gir ut XML-representasjon av en RFC
822-formattert epost.
</li>
523 <p>Finnes det andre og bedre spesifikasjoner for slik lagring? Send
524 meg en epost hvis du har innspill.
</p>
530 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn
</a>.
535 <div class=
"padding"></div>
537 <p style=
"text-align: right;"><a href=
"03.rss"><img src=
"http://people.skolelinux.org/pere/blog/xml.gif" alt=
"RSS Feed" width=
"36" height=
"14" /></a></p>
548 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/01/">January (
2)
</a></li>
550 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/02/">February (
3)
</a></li>
552 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/03/">March (
6)
</a></li>
559 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/01/">January (
11)
</a></li>
561 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/02/">February (
9)
</a></li>
563 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/03/">March (
9)
</a></li>
565 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/04/">April (
6)
</a></li>
567 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/05/">May (
9)
</a></li>
569 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/06/">June (
10)
</a></li>
571 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/07/">July (
7)
</a></li>
573 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/08/">August (
3)
</a></li>
575 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/09/">September (
5)
</a></li>
577 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/10/">October (
7)
</a></li>
579 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/11/">November (
9)
</a></li>
581 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/12/">December (
3)
</a></li>
588 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/01/">January (
7)
</a></li>
590 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/02/">February (
10)
</a></li>
592 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/03/">March (
17)
</a></li>
594 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/04/">April (
12)
</a></li>
596 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/05/">May (
12)
</a></li>
598 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/06/">June (
20)
</a></li>
600 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/07/">July (
17)
</a></li>
602 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/08/">August (
6)
</a></li>
604 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/09/">September (
9)
</a></li>
606 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/10/">October (
17)
</a></li>
608 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/11/">November (
10)
</a></li>
610 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/12/">December (
7)
</a></li>
617 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/01/">January (
16)
</a></li>
619 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/02/">February (
6)
</a></li>
621 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/03/">March (
6)
</a></li>
623 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/04/">April (
7)
</a></li>
625 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/05/">May (
3)
</a></li>
627 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/06/">June (
2)
</a></li>
629 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/07/">July (
7)
</a></li>
631 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/08/">August (
6)
</a></li>
633 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/09/">September (
4)
</a></li>
635 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/10/">October (
2)
</a></li>
637 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/11/">November (
3)
</a></li>
639 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/12/">December (
1)
</a></li>
646 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/01/">January (
2)
</a></li>
648 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/02/">February (
1)
</a></li>
650 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/03/">March (
3)
</a></li>
652 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/04/">April (
3)
</a></li>
654 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/05/">May (
9)
</a></li>
656 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/06/">June (
14)
</a></li>
658 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/07/">July (
12)
</a></li>
660 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/08/">August (
13)
</a></li>
662 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/09/">September (
7)
</a></li>
664 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/10/">October (
9)
</a></li>
666 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/11/">November (
13)
</a></li>
668 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/12/">December (
12)
</a></li>
675 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/01/">January (
8)
</a></li>
677 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/02/">February (
8)
</a></li>
679 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/03/">March (
12)
</a></li>
681 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/04/">April (
10)
</a></li>
683 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/05/">May (
9)
</a></li>
685 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/06/">June (
3)
</a></li>
687 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/07/">July (
4)
</a></li>
689 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/08/">August (
3)
</a></li>
691 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/09/">September (
1)
</a></li>
693 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/10/">October (
2)
</a></li>
695 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/11/">November (
3)
</a></li>
697 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/12/">December (
3)
</a></li>
704 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/11/">November (
5)
</a></li>
706 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/12/">December (
7)
</a></li>
717 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (
13)
</a></li>
719 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/amiga">amiga (
1)
</a></li>
721 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/aros">aros (
1)
</a></li>
723 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bankid">bankid (
4)
</a></li>
725 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (
8)
</a></li>
727 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (
14)
</a></li>
729 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bsa">bsa (
2)
</a></li>
731 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (
2)
</a></li>
733 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian (
95)
</a></li>
735 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (
145)
</a></li>
737 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/digistan">digistan (
10)
</a></li>
739 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/docbook">docbook (
10)
</a></li>
741 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (
4)
</a></li>
743 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/english">english (
240)
</a></li>
745 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (
21)
</a></li>
747 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (
12)
</a></li>
749 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (
12)
</a></li>
751 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (
6)
</a></li>
753 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (
11)
</a></li>
755 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/intervju">intervju (
39)
</a></li>
757 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (
7)
</a></li>
759 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/kart">kart (
18)
</a></li>
761 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ldap">ldap (
9)
</a></li>
763 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lenker">lenker (
7)
</a></li>
765 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (
1)
</a></li>
767 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (
7)
</a></li>
769 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (
26)
</a></li>
771 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk (
242)
</a></li>
773 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug (
162)
</a></li>
775 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (
11)
</a></li>
777 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/open311">open311 (
2)
</a></li>
779 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (
46)
</a></li>
781 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern (
69)
</a></li>
783 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/raid">raid (
1)
</a></li>
785 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reprap">reprap (
11)
</a></li>
787 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rfid">rfid (
2)
</a></li>
789 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot (
9)
</a></li>
791 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rss">rss (
1)
</a></li>
793 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ruter">ruter (
4)
</a></li>
795 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (
2)
</a></li>
797 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (
36)
</a></li>
799 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (
4)
</a></li>
801 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (
4)
</a></li>
803 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard (
44)
</a></li>
805 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (
3)
</a></li>
807 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (
9)
</a></li>
809 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (
22)
</a></li>
811 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (
1)
</a></li>
813 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/valg">valg (
8)
</a></li>
815 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/video">video (
40)
</a></li>
817 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (
4)
</a></li>
819 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/web">web (
29)
</a></li>
825 <p style=
"text-align: right">
826 Created by
<a href=
"http://steve.org.uk/Software/chronicle">Chronicle v4.6
</a>