X-Git-Url: http://pere.pagekite.me/gitweb/homepage.git/blobdiff_plain/24da44ee1a578509baf0dc45dfa6c243af983075..aa4069048e4b39f85304deb4c9abc90695b8441c:/blog/index.rss diff --git a/blog/index.rss b/blog/index.rss index 3b3c3bc599..e42e39614e 100644 --- a/blog/index.rss +++ b/blog/index.rss @@ -7,1056 +7,634 @@ - First Jessie based Debian Edu released (alpha0) - http://people.skolelinux.org/pere/blog/First_Jessie_based_Debian_Edu_released__alpha0_.html - http://people.skolelinux.org/pere/blog/First_Jessie_based_Debian_Edu_released__alpha0_.html - Mon, 27 Oct 2014 20:40:00 +0100 - <p>I am happy to report that I on behalf of the Debian Edu team just -sent out -<a href="https://lists.debian.org/debian-edu-announce/2014/10/msg00000.html">this -announcement</a>:</p> - -<pre> -The Debian Edu Team is pleased to announce the release of Debian Edu -Jessie 8.0+edu0~alpha0 - -Debian Edu is a complete operating system for schools. Through its -various installation profiles you can install servers, workstations -and laptops which will work together on the school network. With -Debian Edu, the teachers themselves or their technical support can -roll out a complete multi-user multi-machine study environment within -hours or a few days. Debian Edu comes with hundreds of applications -pre-installed, but you can always add more packages from Debian. - -For those who want to give Debian Edu Jessie a try, download and -installation instructions are available, including detailed -instructions in the manual[1] explaining the first steps, such as -setting up a network or adding users. Please note that the password -for the user your prompted for during installation must have a length -of at least 5 characters! - - [1] &lt;URL: <a href="https://wiki.debian.org/DebianEdu/Documentation/Jessie">https://wiki.debian.org/DebianEdu/Documentation/Jessie</a> &gt; - -Would you like to give your school's computer a longer life? Are you -tired of sneaker administration, running from computer to computer -reinstalling the operating system? Would you like to administrate all -the computers in your school using only a couple of hours every week? -Check out Debian Edu Jessie! - -Skolelinux is used by at least two hundred schools all over the world, -mostly in Germany and Norway. - -About Debian Edu and Skolelinux -=============================== - -Debian Edu, also known as Skolelinux[2], is a Linux distribution based -on Debian providing an out-of-the box environment of a completely -configured school network. Immediately after installation a school -server running all services needed for a school network is set up just -waiting for users and machines being added via GOsa², a comfortable -Web-UI. A netbooting environment is prepared using PXE, so after -initial installation of the main server from CD or USB stick all other -machines can be installed via the network. The provided school server -provides LDAP database and Kerberos authentication service, -centralized home directories, DHCP server, web proxy and many other -services. The desktop contains more than 60 educational software -packages[3] and more are available from the Debian archive, and -schools can choose between KDE, Gnome, LXDE, Xfce and MATE desktop -environment. - - [2] &lt;URL: <a href="http://www.skolelinux.org/">http://www.skolelinux.org/</a> &gt; - [3] &lt;URL: <a href="http://people.skolelinux.org/pere/blog/Educational_applications_included_in_Debian_Edu___Skolelinux__the_screenshot_collection____.html">http://people.skolelinux.org/pere/blog/Educational_applications_included_in_Debian_Edu___Skolelinux__the_screenshot_collection____.html</a> &gt; - -Full release notes and manual -============================= - -Below the download URLs there is a list of some of the new features -and bugfixes of Debian Edu 8.0+edu0~alpha0 Codename Jessie. The full -list is part of the manual. (See the feature list in the manual[4] for -the English version.) For some languages manual translations are -available, see the manual translation overview[5]. - - [4] &lt;URL: <a href="https://wiki.debian.org/DebianEdu/Documentation/Jessie/Features">https://wiki.debian.org/DebianEdu/Documentation/Jessie/Features</a> &gt; - [5] &lt;URL: <a href="http://maintainer.skolelinux.org/debian-edu-doc/">http://maintainer.skolelinux.org/debian-edu-doc/</a> &gt; - -Where to get it ---------------- - -To download the multiarch netinstall CD release (624 MiB) you can use - - * <a href="ftp://ftp.skolelinux.org/skolelinux-cd/debian-edu-8.0+edu0~alpha0-CD.iso">ftp://ftp.skolelinux.org/skolelinux-cd/debian-edu-8.0+edu0~alpha0-CD.iso</a> - * <a href="http://ftp.skolelinux.org/skolelinux-cd/debian-edu-8.0+edu0~alpha0-CD.iso">http://ftp.skolelinux.org/skolelinux-cd/debian-edu-8.0+edu0~alpha0-CD.iso</a> - * rsync -avzP ftp.skolelinux.org::skolelinux-cd/debian-edu-8.0+edu0~alpha0-CD.iso . - -The SHA1SUM of this image is: 361188818e036ce67280a572f757de82ebfeb095 - -New features for Debian Edu 8.0+edu0~alpha0 Codename Jessie released 2014-10-27 -=============================================================================== - - -Installation changes --------------------- - - * PXE installation now installs firmware automatically for the hardware present. - -Software updates ----------------- - -Everything which is new in Debian Jessie 8.0, eg: - - * Linux kernel 3.16.x - * Desktop environments KDE "Plasma" 4.11.12, GNOME 3.14, Xfce 4.10, - LXDE 0.5.6 and MATE 1.8 (KDE "Plasma" is installed by default; to - choose one of the others see manual.) - * the browsers Iceweasel 31 ESR and Chromium 38 - * !LibreOffice 4.3.3 - * GOsa 2.7.4 - * LTSP 5.5.4 - * CUPS print system 1.7.5 - * new boot framework: systemd - * Educational toolbox GCompris 14.07 - * Music creator Rosegarden 14.02 - * Image editor Gimp 2.8.14 - * Virtual stargazer Stellarium 0.13.0 - * golearn 0.9 - * tuxpaint 0.9.22 - * New version of debian-installer from Debian Jessie. - * Debian Jessie includes about 42000 packages available for - installation. - * More information about Debian Jessie 8.0 is provided in the release - notes[6] and the installation manual[7]. - - [6] &lt;URL: <a href="http://www.debian.org/releases/jessie/releasenotes">http://www.debian.org/releases/jessie/releasenotes</a> &gt; - [7] &lt;URL: <a href="http://www.debian.org/releases/jessie/installmanual">http://www.debian.org/releases/jessie/installmanual</a> &gt; - -Fixed bugs ----------- - - * Inserting incorrect DNS information in Gosa will no longer break - DNS completely, but instead stop DNS updates until the incorrect - information is corrected (Debian bug #710362) - * and many others. - -Documentation and translation updates -------------------------------------- - - * The Debian Edu Jessie Manual is fully translated to German, French, - Italian, Danish and Dutch. Partly translated versions exist for - Norwegian Bokmal and Spanish. - -Other changes -------------- - - * Due to new Squid settings, powering off or rebooting the main - server takes more time. - * To manage printers localhost:631 has to be used, currently www:631 - doesn't work. - -Regressions / known problems ----------------------------- - - * Installing LTSP chroot fails with a bug related to eatmydata about - exim4-config failing to run its postinst (see Debian bug #765694 - and Debian bug #762103). - * Munin collection is not properly configured on clients (Debian bug - #764594). The fix is available in a newer version of munin-node. - * PXE setup for Main Server and Thin Client Server setup does not - work when installing on a machine without direct Internet access. - Will be fixed when Debian bug #766960 is fixed in Jessie. + Idea for storing trusted timestamps in a Noark 5 archive + http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html + http://people.skolelinux.org/pere/blog/Idea_for_storing_trusted_timestamps_in_a_Noark_5_archive.html + Wed, 7 Jun 2017 21:40:00 +0200 + <p><em>This is a copy of +<a href="https://lists.nuug.no/pipermail/nikita-noark/2017-June/000297.html">an +email I posted to the nikita-noark mailing list</a>. Please follow up +there if you would like to discuss this topic. The background is that +we are making a free software archive system based on the Norwegian +<a href="https://www.arkivverket.no/forvaltning-og-utvikling/regelverk-og-standarder/noark-standarden">Noark +5 standard</a> for government archives.</em></p> + +<p>I've been wondering a bit lately how trusted timestamps could be +stored in Noark 5. +<a href="https://en.wikipedia.org/wiki/Trusted_timestamping">Trusted +timestamps</a> can be used to verify that some information +(document/file/checksum/metadata) have not been changed since a +specific time in the past. This is useful to verify the integrity of +the documents in the archive.</p> + +<p>Then it occured to me, perhaps the trusted timestamps could be +stored as dokument variants (ie dokumentobjekt referered to from +dokumentbeskrivelse) with the filename set to the hash it is +stamping?</p> + +<p>Given a "dokumentbeskrivelse" with an associated "dokumentobjekt", +a new dokumentobjekt is associated with "dokumentbeskrivelse" with the +same attributes as the stamped dokumentobjekt except these +attributes:</p> -See the status page[8] for the complete list. - - [8] &lt;URL: <a href="https://wiki.debian.org/DebianEdu/Status/Jessie">https://wiki.debian.org/DebianEdu/Status/Jessie</a> &gt; - -How to report bugs ------------------- - -&lt;URL: <a href="http://wiki.debian.org/DebianEdu/HowTo/ReportBugs">http://wiki.debian.org/DebianEdu/HowTo/ReportBugs</a> &gt; +<ul> -About Debian -============ +<li>format -> "RFC3161" +<li>mimeType -> "application/timestamp-reply" +<li>formatDetaljer -> "&lt;source URL for timestamp service&gt;" +<li>filenavn -> "&lt;sjekksum&gt;.tsr" -The Debian Project was founded in 1993 by Ian Murdock to be a truly -free community project. Since then the project has grown to be one of -the largest and most influential open source projects. Thousands of -volunteers from all over the world work together to create and -maintain Debian software. Available in 70 languages, and supporting a -huge range of computer types, Debian calls itself the universal -operating system. +</ul> -Contact Information -For further information, please visit the Debian web pages[9] or send -mail to press@debian.org. - - [9] &lt;URL: <a href="http://www.debian.org/">http://www.debian.org/</a> &gt; -</pre> - - - - - I spent last weekend recording MakerCon Nordic - http://people.skolelinux.org/pere/blog/I_spent_last_weekend_recording_MakerCon_Nordic.html - http://people.skolelinux.org/pere/blog/I_spent_last_weekend_recording_MakerCon_Nordic.html - Thu, 23 Oct 2014 23:00:00 +0200 - <p>I spent last weekend at <a href="http://www.makercon.no/">Makercon -Nordic</a>, a great conference and workshop for makers in Norway and -the surrounding countries. I had volunteered on behalf of the -Norwegian Unix Users Group (NUUG) to video record the talks, and we -had a great and exhausting time recording the entire day, two days in -a row. There were only two of us, Hans-Petter and me, and we used the -regular video equipment for NUUG, with a -<a href="http://dvswitch.alioth.debian.org/wiki/">dvswitch</a>, a -camera and a VGA to DV convert box, and mixed video and slides -live.</p> - -<p>Hans-Petter did the post-processing, consisting of uploading the -around 180 GiB of raw video to Youtube, and the result is -<a href="https://www.youtube.com/user/MakerConNordic/">now becoming -public</a> on the MakerConNordic account. The videos have the license -NUUG always use on our recordings, which is -<a href="http://creativecommons.org/licenses/by-sa/3.0/no/">Creative -Commons Navngivelse-Del på samme vilkår 3.0 Norge</a>. Many great -talks available. Check it out! :)</p> - - - - - listadmin, the quick way to moderate mailman lists - nice free software - http://people.skolelinux.org/pere/blog/listadmin__the_quick_way_to_moderate_mailman_lists___nice_free_software.html - http://people.skolelinux.org/pere/blog/listadmin__the_quick_way_to_moderate_mailman_lists___nice_free_software.html - Wed, 22 Oct 2014 20:00:00 +0200 - <p>If you ever had to moderate a mailman list, like the ones on -alioth.debian.org, you know the web interface is fairly slow to -operate. First you visit one web page, enter the moderation password -and get a new page shown with a list of all the messages to moderate -and various options for each email address. This take a while for -every list you moderate, and you need to do it regularly to do a good -job as a list moderator. But there is a quick alternative, -<a href="http://heim.ifi.uio.no/kjetilho/hacks/#listadmin">the -listadmin program</a>. It allow you to check lists for new messages -to moderate in a fraction of a second. Here is a test run on two -lists I recently took over:</p> +<p>This assume a service following +<a href="https://tools.ietf.org/html/rfc3161">IETF RFC 3161</a> is +used, which specifiy the given MIME type for replies and the .tsr file +ending for the content of such trusted timestamp. As far as I can +tell from the Noark 5 specifications, it is OK to have several +variants/renderings of a dokument attached to a given +dokumentbeskrivelse objekt. It might be stretching it a bit to make +some of these variants represent crypto-signatures useful for +verifying the document integrity instead of representing the dokument +itself.</p> + +<p>Using the source of the service in formatDetaljer allow several +timestamping services to be used. This is useful to spread the risk +of key compromise over several organisations. It would only be a +problem to trust the timestamps if all of the organisations are +compromised.</p> + +<p>The following oneliner on Linux can be used to generate the tsr +file. $input is the path to the file to checksum, and $sha256 is the +SHA-256 checksum of the file (ie the "<sjekksum>.tsr" value mentioned +above).</p> <p><blockquote><pre> -% time listadmin xiph -fetching data for pkg-xiph-commits@lists.alioth.debian.org ... nothing in queue -fetching data for pkg-xiph-maint@lists.alioth.debian.org ... nothing in queue - -real 0m1.709s -user 0m0.232s -sys 0m0.012s -% +openssl ts -query -data "$inputfile" -cert -sha256 -no_nonce \ + | curl -s -H "Content-Type: application/timestamp-query" \ + --data-binary "@-" http://zeitstempel.dfn.de > $sha256.tsr </pre></blockquote></p> -<p>In 1.7 seconds I had checked two mailing lists and confirmed that -there are no message in the moderation queue. Every morning I -currently moderate 68 mailman lists, and it normally take around two -minutes. When I took over the two pkg-xiph lists above a few days -ago, there were 400 emails waiting in the moderator queue. It took me -less than 15 minutes to process them all using the listadmin -program.</p> - -<p>If you install -<a href="https://tracker.debian.org/pkg/listadmin">the listadmin -package</a> from Debian and create a file <tt>~/.listadmin.ini</tt> -with content like this, the moderation task is a breeze:</p> +<p>To verify the timestamp, you first need to download the public key +of the trusted timestamp service, for example using this command:</p> <p><blockquote><pre> -username username@example.org -spamlevel 23 -default discard -discard_if_reason "Posting restricted to members only. Remove us from your mail list." - -password secret -adminurl https://{domain}/mailman/admindb/{list} -mailman-list@lists.example.com - -password hidden -other-list@otherserver.example.org +wget -O ca-cert.txt \ + https://pki.pca.dfn.de/global-services-ca/pub/cacert/chain.txt </pre></blockquote></p> -<p>There are other options to set as well. Check the manual page to -learn the details.</p> +<p>Note, the public key should be stored alongside the timestamps in +the archive to make sure it is also available 100 years from now. It +is probably a good idea to standardise how and were to store such +public keys, to make it easier to find for those trying to verify +documents 100 or 1000 years from now. :)</p> -<p>If you are forced to moderate lists on a mailman installation where -the SSL certificate is self signed or not properly signed by a -generally accepted signing authority, you can set a environment -variable when calling listadmin to disable SSL verification:</p> +<p>The verification itself is a simple openssl command:</p> <p><blockquote><pre> -PERL_LWP_SSL_VERIFY_HOSTNAME=0 listadmin +openssl ts -verify -data $inputfile -in $sha256.tsr \ + -CAfile ca-cert.txt -text </pre></blockquote></p> -<p>If you want to moderate a subset of the lists you take care of, you -can provide an argument to the listadmin script like I do in the -initial screen dump (the xiph argument). Using an argument, only -lists matching the argument string will be processed. This make it -quick to accept messages if you notice the moderation request in your -email.</p> - -<p>Without the listadmin program, I would never be the moderator of 68 -mailing lists, as I simply do not have time to spend on that if the -process was any slower. The listadmin program have saved me hours of -time I could spend elsewhere over the years. It truly is nice free -software.</p> - -<p>As usual, if you use Bitcoin and want to show your support of my -activities, please send Bitcoin donations to my address -<b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&label=PetterReinholdtsenBlog">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p> - -<p>Update 2014-10-27: Added missing 'username' statement in -configuration example. Also, I've been told that the -PERL_LWP_SSL_VERIFY_HOSTNAME=0 setting do not work for everyone. Not -sure why.</p> +<p>Is there any reason this approach would not work? Is it somehow against +the Noark 5 specification?</p> - Debian Jessie, PXE and automatic firmware installation - http://people.skolelinux.org/pere/blog/Debian_Jessie__PXE_and_automatic_firmware_installation.html - http://people.skolelinux.org/pere/blog/Debian_Jessie__PXE_and_automatic_firmware_installation.html - Fri, 17 Oct 2014 14:10:00 +0200 - <p>When PXE installing laptops with Debian, I often run into the -problem that the WiFi card require some firmware to work properly. -And it has been a pain to fix this using preseeding in Debian. -Normally something more is needed. But thanks to -<a href="https://packages.qa.debian.org/i/isenkram.html">my isenkram -package</a> and its recent tasksel extension, it has now become easy -to do this using simple preseeding.</p> - -<p>The isenkram-cli package provide tasksel tasks which will install -firmware for the hardware found in the machine (actually, requested by -the kernel modules for the hardware). (It can also install user space -programs supporting the hardware detected, but that is not the focus -of this story.)</p> - -<p>To get this working in the default installation, two preeseding -values are needed. First, the isenkram-cli package must be installed -into the target chroot (aka the hard drive) before tasksel is executed -in the pkgsel step of the debian-installer system. This is done by -preseeding the base-installer/includes debconf value to include the -isenkram-cli package. The package name is next passed to debootstrap -for installation. With the isenkram-cli package in place, tasksel -will automatically use the isenkram tasks to detect hardware specific -packages for the machine being installed and install them, because -isenkram-cli contain tasksel tasks.</p> - -<p>Second, one need to enable the non-free APT repository, because -most firmware unfortunately is non-free. This is done by preseeding -the apt-mirror-setup step. This is unfortunate, but for a lot of -hardware it is the only option in Debian.</p> - -<p>The end result is two lines needed in your preseeding file to get -firmware installed automatically by the installer:</p> - -<p><blockquote><pre> -base-installer base-installer/includes string isenkram-cli -apt-mirror-setup apt-setup/non-free boolean true -</pre></blockquote></p> - -<p>The current version of isenkram-cli in testing/jessie will install -both firmware and user space packages when using this method. It also -do not work well, so use version 0.15 or later. Installing both -firmware and user space packages might give you a bit more than you -want, so I decided to split the tasksel task in two, one for firmware -and one for user space programs. The firmware task is enabled by -default, while the one for user space programs is not. This split is -implemented in the package currently in unstable.</p> - -<p>If you decide to give this a go, please let me know (via email) how -this recipe work for you. :)</p> - -<p>So, I bet you are wondering, how can this work. First and -foremost, it work because tasksel is modular, and driven by whatever -files it find in /usr/lib/tasksel/ and /usr/share/tasksel/. So the -isenkram-cli package place two files for tasksel to find. First there -is the task description file (/usr/share/tasksel/descs/isenkram.desc):</p> - -<p><blockquote><pre> -Task: isenkram-packages -Section: hardware -Description: Hardware specific packages (autodetected by isenkram) - Based on the detected hardware various hardware specific packages are - proposed. -Test-new-install: show show -Relevance: 8 -Packages: for-current-hardware - -Task: isenkram-firmware -Section: hardware -Description: Hardware specific firmware packages (autodetected by isenkram) - Based on the detected hardware various hardware specific firmware - packages are proposed. -Test-new-install: mark show -Relevance: 8 -Packages: for-current-hardware-firmware -</pre></blockquote></p> - -<p>The key parts are Test-new-install which indicate how the task -should be handled and the Packages line referencing to a script in -/usr/lib/tasksel/packages/. The scripts use other scripts to get a -list of packages to install. The for-current-hardware-firmware script -look like this to list relevant firmware for the machine: - -<p><blockquote><pre> -#!/bin/sh -# -PATH=/usr/sbin:$PATH -export PATH -isenkram-autoinstall-firmware -l -</pre></blockquote></p> - -<p>With those two pieces in place, the firmware is installed by -tasksel during the normal d-i run. :)</p> - -<p>If you want to test what tasksel will install when isenkram-cli is -installed, run <tt>DEBIAN_PRIORITY=critical tasksel --test ---new-install</tt> to get the list of packages that tasksel would -install.</p> - -<p><a href="https://wiki.debian.org/DebianEdu/">Debian Edu</a> will be -pilots in testing this feature, as isenkram is used there now to -install firmware, replacing the earlier scripts.</p> + Når nynorskoversettelsen svikter til eksamen... + http://people.skolelinux.org/pere/blog/N_r_nynorskoversettelsen_svikter_til_eksamen___.html + http://people.skolelinux.org/pere/blog/N_r_nynorskoversettelsen_svikter_til_eksamen___.html + Sat, 3 Jun 2017 08:20:00 +0200 + <p><a href="http://www.aftenposten.no/norge/Krever-at-elever-ma-fa-annullert-eksamen-etter-rot-med-oppgavetekster-622459b.html">Aftenposten +melder i dag</a> om feil i eksamensoppgavene for eksamen i politikk og +menneskerettigheter, der teksten i bokmåls og nynorskutgaven ikke var +like. Oppgaveteksten er gjengitt i artikkelen, og jeg ble nysgjerring +på om den fri oversetterløsningen +<a href="https://www.apertium.org/">Apertium</a> ville gjort en bedre +jobb enn Utdanningsdirektoratet. Det kan se slik ut.</p> + +<p>Her er bokmålsoppgaven fra eksamenen:</p> + +<blockquote> +<p>Drøft utfordringene knyttet til nasjonalstatenes og andre aktørers +rolle og muligheter til å håndtere internasjonale utfordringer, som +for eksempel flykningekrisen.</p> + +<p>Vedlegge er eksempler på tekster som kan gi relevante perspektiver +på temaet:</p> +<ol> +<li>Flykningeregnskapet 2016, UNHCR og IDMC +<li>«Grenseløst Europa for fall» A-Magasinet, 26. november 2015 +</ol> + +</blockquote> + +<p>Dette oversetter Apertium slik:</p> + +<blockquote> +<p>Drøft utfordringane knytte til nasjonalstatane sine og rolla til +andre aktørar og høve til å handtera internasjonale utfordringar, som +til dømes *flykningekrisen.</p> + +<p>Vedleggja er døme på tekster som kan gje relevante perspektiv på +temaet:</p> + +<ol> +<li>*Flykningeregnskapet 2016, *UNHCR og *IDMC</li> +<li>«*Grenseløst Europa for fall» A-Magasinet, 26. november 2015</li> +</ol> + +</blockquote> + +<p>Ord som ikke ble forstått er markert med stjerne (*), og trenger +ekstra språksjekk. Men ingen ord er forsvunnet, slik det var i +oppgaven elevene fikk presentert på eksamen. Jeg mistenker dog at +"andre aktørers rolle og muligheter til ..." burde vært oversatt til +"rolla til andre aktørar og deira høve til ..." eller noe slikt, men +det er kanskje flisespikking. Det understreker vel bare at det alltid +trengs korrekturlesning etter automatisk oversettelse.</p> - Ubuntu used to show the bread prizes at ICA Storo - http://people.skolelinux.org/pere/blog/Ubuntu_used_to_show_the_bread_prizes_at_ICA_Storo.html - http://people.skolelinux.org/pere/blog/Ubuntu_used_to_show_the_bread_prizes_at_ICA_Storo.html - Sat, 4 Oct 2014 15:20:00 +0200 - <p>Today I came across an unexpected Ubuntu boot screen. Above the -bread shelf on the ICA shop at Storo in Oslo, the grub menu of Ubuntu -with Linux kernel 3.2.0-23 (ie probably version 12.04 LTS) was stuck -on a screen normally showing the bread types and prizes:</p> - -<p align="center"><img width="70%" src="http://people.skolelinux.org/pere/blog/images/2014-10-04-ubuntu-ica-storo-crop.jpeg"></p> - -<p>If it had booted as it was supposed to, I would never had known -about this hidden Linux installation. It is interesting what -<a href="http://revealingerrors.com/">errors can reveal</a>.</p> + Epost inn som arkivformat i Riksarkivarens forskrift? + http://people.skolelinux.org/pere/blog/Epost_inn_som_arkivformat_i_Riksarkivarens_forskrift_.html + http://people.skolelinux.org/pere/blog/Epost_inn_som_arkivformat_i_Riksarkivarens_forskrift_.html + Thu, 27 Apr 2017 11:30:00 +0200 + <p>I disse dager, med frist 1. mai, har Riksarkivaren ute en høring på +sin forskrift. Som en kan se er det ikke mye tid igjen før fristen +som går ut på søndag. Denne forskriften er det som lister opp hvilke +formater det er greit å arkivere i +<a href="http://www.arkivverket.no/arkivverket/Offentleg-forvalting/Noark/Noark-5">Noark +5-løsninger</a> i Norge.</p> + +<p>Jeg fant høringsdokumentene hos +<a href="https://www.arkivrad.no/aktuelt/riksarkivarens-forskrift-pa-horing">Norsk +Arkivråd</a> etter å ha blitt tipset på epostlisten til +<a href="https://github.com/hiOA-ABI/nikita-noark5-core">fri +programvareprosjektet Nikita Noark5-Core</a>, som lager et Noark 5 +Tjenestegresesnitt. Jeg er involvert i Nikita-prosjektet og takket +være min interesse for tjenestegrensesnittsprosjektet har jeg lest en +god del Noark 5-relaterte dokumenter, og til min overraskelse oppdaget +at standard epost ikke er på listen over godkjente formater som kan +arkiveres. Høringen med frist søndag er en glimrende mulighet til å +forsøke å gjøre noe med det. Jeg holder på med +<a href="https://github.com/petterreinholdtsen/noark5-tester/blob/master/docs/hoering-arkivforskrift.tex">egen +høringsuttalelse</a>, og lurer på om andre er interessert i å støtte +forslaget om å tillate arkivering av epost som epost i arkivet.</p> + +<p>Er du igang med å skrive egen høringsuttalelse allerede? I så fall +kan du jo vurdere å ta med en formulering om epost-lagring. Jeg tror +ikke det trengs så mye. Her et kort forslag til tekst:</p> + +<p><blockquote> + + <p>Viser til høring sendt ut 2017-02-17 (Riksarkivarens referanse + 2016/9840 HELHJO), og tillater oss å sende inn noen innspill om + revisjon av Forskrift om utfyllende tekniske og arkivfaglige + bestemmelser om behandling av offentlige arkiver (Riksarkivarens + forskrift).</p> + + <p>Svært mye av vår kommuikasjon foregår i dag på e-post.  Vi + foreslår derfor at Internett-e-post, slik det er beskrevet i IETF + RFC 5322, + <a href="https://tools.ietf.org/html/rfc5322">https://tools.ietf.org/html/rfc5322</a>. bør + inn som godkjent dokumentformat.  Vi foreslår at forskriftens + oversikt over godkjente dokumentformater ved innlevering i § 5-16 + endres til å ta med Internett-e-post.</p> + +</blockquote></p> + +<p>Som del av arbeidet med tjenestegrensesnitt har vi testet hvordan +epost kan lagres i en Noark 5-struktur, og holder på å skrive et +forslag om hvordan dette kan gjøres som vil bli sendt over til +arkivverket så snart det er ferdig. De som er interesserte kan +<a href="https://github.com/petterreinholdtsen/noark5-tester/blob/master/docs/epostlagring.md">følge +fremdriften på web</a>.</p> + +<p>Oppdatering 2017-04-28: I dag ble høringuttalelsen jeg skrev + <a href="https://www.nuug.no/news/NUUGs_h_ringuttalelse_til_Riksarkivarens_forskrift.shtml">sendt + inn av foreningen NUUG</a>.</p> - New lsdvd release version 0.17 is ready - http://people.skolelinux.org/pere/blog/New_lsdvd_release_version_0_17_is_ready.html - http://people.skolelinux.org/pere/blog/New_lsdvd_release_version_0_17_is_ready.html - Sat, 4 Oct 2014 08:40:00 +0200 - <p>The <a href="https://sourceforge.net/p/lsdvd/">lsdvd project</a> -got a new set of developers a few weeks ago, after the original -developer decided to step down and pass the project to fresh blood. -This project is now maintained by Petter Reinholdtsen and Steve -Dibb.</p> - -<p>I just wrapped up -<a href="https://sourceforge.net/p/lsdvd/mailman/message/32896061/">a -new lsdvd release</a>, available in git or from -<a href="https://sourceforge.net/projects/lsdvd/files/lsdvd/">the -download page</a>. This is the changelog dated 2014-10-03 for version -0.17.</p> + Offentlig elektronisk postjournal blokkerer tilgang for utvalgte webklienter + http://people.skolelinux.org/pere/blog/Offentlig_elektronisk_postjournal_blokkerer_tilgang_for_utvalgte_webklienter.html + http://people.skolelinux.org/pere/blog/Offentlig_elektronisk_postjournal_blokkerer_tilgang_for_utvalgte_webklienter.html + Thu, 20 Apr 2017 13:00:00 +0200 + <p>Jeg oppdaget i dag at <a href="https://www.oep.no/">nettstedet som +publiserer offentlige postjournaler fra statlige etater</a>, OEP, har +begynt å blokkerer enkelte typer webklienter fra å få tilgang. Vet +ikke hvor mange det gjelder, men det gjelder i hvert fall libwww-perl +og curl. For å teste selv, kjør følgende:</p> -<ul> +<blockquote><pre> +% curl -v -s https://www.oep.no/pub/report.xhtml?reportId=3 2>&1 |grep '< HTTP' +< HTTP/1.1 404 Not Found +% curl -v -s --header 'User-Agent:Opera/12.0' https://www.oep.no/pub/report.xhtml?reportId=3 2>&1 |grep '< HTTP' +< HTTP/1.1 200 OK +% +</pre></blockquote> - <li>Ignore 'phantom' audio, subtitle tracks</li> - <li>Check for garbage in the program chains, which indicate that a track is - non-existant, to work around additional copy protection</li> - <li>Fix displaying content type for audio tracks, subtitles</li> - <li>Fix pallete display of first entry</li> - <li>Fix include orders</li> - <li>Ignore read errors in titles that would not be displayed anyway</li> - <li>Fix the chapter count</li> - <li>Make sure the array size and the array limit used when initialising - the palette size is the same.</li> - <li>Fix array printing.</li> - <li>Correct subsecond calculations.</li> - <li>Add sector information to the output format.</li> - <li>Clean up code to be closer to ANSI C and compile without warnings - with more GCC compiler warnings.</li> +<p>Her kan en se at tjenesten gir «404 Not Found» for curl i +standardoppsettet, mens den gir «200 OK» hvis curl hevder å være Opera +versjon 12.0. Offentlig elektronisk postjournal startet blokkeringen +2017-03-02.</p> + +<p>Blokkeringen vil gjøre det litt vanskeligere å maskinelt hente +informasjon fra oep.no. Kan blokkeringen være gjort for å hindre +automatisert innsamling av informasjon fra OEP, slik Pressens +Offentlighetsutvalg gjorde for å dokumentere hvordan departementene +hindrer innsyn i +<a href="http://presse.no/dette-mener-np/undergraver-offentlighetsloven/">rapporten +«Slik hindrer departementer innsyn» som ble publiserte i januar +2017</a>. Det virker usannsynlig, da det jo er trivielt å bytte +User-Agent til noe nytt.</p> + +<p>Finnes det juridisk grunnlag for det offentlige å diskriminere +webklienter slik det gjøres her? Der tilgang gis eller ikke alt etter +hva klienten sier at den heter? Da OEP eies av DIFI og driftes av +Basefarm, finnes det kanskje noen dokumenter sendt mellom disse to +aktørene man kan be om innsyn i for å forstå hva som har skjedd. Men +<a href="https://www.oep.no/search/result.html?period=dateRange&fromDate=01.01.2016&toDate=01.04.2017&dateType=documentDate&caseDescription=&descType=both&caseNumber=&documentNumber=&sender=basefarm&senderType=both&documentType=all&legalAuthority=&archiveCode=&list2=196&searchType=advanced&Search=Search+in+records">postjournalen +til DIFI viser kun to dokumenter</a> det siste året mellom DIFI og +Basefarm. +<a href="https://www.mimesbronn.no/request/blokkering_av_tilgang_til_oep_fo">Mimes brønn neste</a>, +tenker jeg.</p> + + + + + Free software archive system Nikita now able to store documents + http://people.skolelinux.org/pere/blog/Free_software_archive_system_Nikita_now_able_to_store_documents.html + http://people.skolelinux.org/pere/blog/Free_software_archive_system_Nikita_now_able_to_store_documents.html + Sun, 19 Mar 2017 08:00:00 +0100 + <p>The <a href="https://github.com/hiOA-ABI/nikita-noark5-core">Nikita +Noark 5 core project</a> is implementing the Norwegian standard for +keeping an electronic archive of government documents. +<a href="http://www.arkivverket.no/arkivverket/Offentlig-forvaltning/Noark/Noark-5/English-version">The +Noark 5 standard</a> document the requirement for data systems used by +the archives in the Norwegian government, and the Noark 5 web interface +specification document a REST web service for storing, searching and +retrieving documents and metadata in such archive. I've been involved +in the project since a few weeks before Christmas, when the Norwegian +Unix User Group +<a href="https://www.nuug.no/news/NOARK5_kjerne_som_fri_programvare_f_r_epostliste_hos_NUUG.shtml">announced +it supported the project</a>. I believe this is an important project, +and hope it can make it possible for the government archives in the +future to use free software to keep the archives we citizens depend +on. But as I do not hold such archive myself, personally my first use +case is to store and analyse public mail journal metadata published +from the government. I find it useful to have a clear use case in +mind when developing, to make sure the system scratches one of my +itches.</p> + +<p>If you would like to help make sure there is a free software +alternatives for the archives, please join our IRC channel +(<a href="irc://irc.freenode.net/%23nikita"">#nikita on +irc.freenode.net</a>) and +<a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">the +project mailing list</a>.</p> + +<p>When I got involved, the web service could store metadata about +documents. But a few weeks ago, a new milestone was reached when it +became possible to store full text documents too. Yesterday, I +completed an implementation of a command line tool +<tt>archive-pdf</tt> to upload a PDF file to the archive using this +API. The tool is very simple at the moment, and find existing +<a href="https://en.wikipedia.org/wiki/Fonds">fonds</a>, series and +files while asking the user to select which one to use if more than +one exist. Once a file is identified, the PDF is associated with the +file and uploaded, using the title extracted from the PDF itself. The +process is fairly similar to visiting the archive, opening a cabinet, +locating a file and storing a piece of paper in the archive. Here is +a test run directly after populating the database with test data using +our API tester:</p> -</ul> +<p><blockquote><pre> +~/src//noark5-tester$ ./archive-pdf mangelmelding/mangler.pdf +using arkiv: Title of the test fonds created 2017-03-18T23:49:32.103446 +using arkivdel: Title of the test series created 2017-03-18T23:49:32.103446 + + 0 - Title of the test case file created 2017-03-18T23:49:32.103446 + 1 - Title of the test file created 2017-03-18T23:49:32.103446 +Select which mappe you want (or search term): 0 +Uploading mangelmelding/mangler.pdf + PDF title: Mangler i spesifikasjonsdokumentet for NOARK 5 Tjenestegrensesnitt + File 2017/1: Title of the test case file created 2017-03-18T23:49:32.103446 +~/src//noark5-tester$ +</pre></blockquote></p> -<p>This change bring together patches for lsdvd in use in various -Linux and Unix distributions, as well as patches submitted to the -project the last nine years. Please check it out. :)</p> +<p>You can see here how the fonds (arkiv) and serie (arkivdel) only had +one option, while the user need to choose which file (mappe) to use +among the two created by the API tester. The <tt>archive-pdf</tt> +tool can be found in the git repository for the API tester.</p> + +<p>In the project, I have been mostly working on +<a href="https://github.com/petterreinholdtsen/noark5-tester">the API +tester</a> so far, while getting to know the code base. The API +tester currently use +<a href="https://en.wikipedia.org/wiki/HATEOAS">the HATEOAS links</a> +to traverse the entire exposed service API and verify that the exposed +operations and objects match the specification, as well as trying to +create objects holding metadata and uploading a simple XML file to +store. The tester has proved very useful for finding flaws in our +implementation, as well as flaws in the reference site and the +specification.</p> + +<p>The test document I uploaded is a summary of all the specification +defects we have collected so far while implementing the web service. +There are several unclear and conflicting parts of the specification, +and we have +<a href="https://github.com/petterreinholdtsen/noark5-tester/tree/master/mangelmelding">started +writing down</a> the questions we get from implementing it. We use a +format inspired by how <a href="http://www.opengroup.org/austin/">The +Austin Group</a> collect defect reports for the POSIX standard with +<a href="http://www.opengroup.org/austin/mantis.html">their +instructions for the MANTIS defect tracker system</a>, in lack of an official way to structure defect reports for Noark 5 (our first submitted defect report was a <a href="https://github.com/petterreinholdtsen/noark5-tester/blob/master/mangelmelding/sendt/2017-03-15-mangel-prosess.md">request for a procedure for submitting defect reports</a> :). + +<p>The Nikita project is implemented using Java and Spring, and is +fairly easy to get up and running using Docker containers for those +that want to test the current code base. The API tester is +implemented in Python.</p> - How to test Debian Edu Jessie despite some fatal problems with the installer - http://people.skolelinux.org/pere/blog/How_to_test_Debian_Edu_Jessie_despite_some_fatal_problems_with_the_installer.html - http://people.skolelinux.org/pere/blog/How_to_test_Debian_Edu_Jessie_despite_some_fatal_problems_with_the_installer.html - Fri, 26 Sep 2014 12:20:00 +0200 - <p>The <a href="http://www.skolelinux.org/">Debian Edu / Skolelinux -project</a> provide a Linux solution for schools, including a -powerful desktop with education software, a central server providing -web pages, user database, user home directories, central login and PXE -boot of both clients without disk and the installation to install Debian -Edu on machines with disk (and a few other services perhaps to small -to mention here). We in the Debian Edu team are currently working on -the Jessie based version, trying to get everything in shape before the -freeze, to avoid having to maintain our own package repository in the -future. The -<a href="https://wiki.debian.org/DebianEdu/Status/Jessie">current -status</a> can be seen on the Debian wiki, and there is still heaps of -work left. Some fatal problems block testing, breaking the installer, -but it is possible to work around these to get anyway. Here is a -recipe on how to get the installation limping along.</p> - -<p>First, download the test ISO via -<a href="ftp://ftp.skolelinux.no/cd-edu-testing-nolocal-netinst/debian-edu-amd64-i386-NETINST-1.iso">ftp</a>, -<a href="http://ftp.skolelinux.no/cd-edu-testing-nolocal-netinst/debian-edu-amd64-i386-NETINST-1.iso">http</a> -or rsync (use -ftp.skolelinux.org::cd-edu-testing-nolocal-netinst/debian-edu-amd64-i386-NETINST-1.iso). -The ISO build was broken on Tuesday, so we do not get a new ISO every -12 hours or so, but thankfully the ISO we already got we are able to -install with some tweaking.</p> - -<p>When you get to the Debian Edu profile question, go to tty2 -(use Alt-Ctrl-F2), run</p> + Detecting NFS hangs on Linux without hanging yourself... + http://people.skolelinux.org/pere/blog/Detecting_NFS_hangs_on_Linux_without_hanging_yourself___.html + http://people.skolelinux.org/pere/blog/Detecting_NFS_hangs_on_Linux_without_hanging_yourself___.html + Thu, 9 Mar 2017 15:20:00 +0100 + <p>Over the years, administrating thousand of NFS mounting linux +computers at the time, I often needed a way to detect if the machine +was experiencing NFS hang. If you try to use <tt>df</tt> or look at a +file or directory affected by the hang, the process (and possibly the +shell) will hang too. So you want to be able to detect this without +risking the detection process getting stuck too. It has not been +obvious how to do this. When the hang has lasted a while, it is +possible to find messages like these in dmesg:</p> + +<p><blockquote> +nfs: server nfsserver not responding, still trying +<br>nfs: server nfsserver OK +</blockquote></p> + +<p>It is hard to know if the hang is still going on, and it is hard to +be sure looking in dmesg is going to work. If there are lots of other +messages in dmesg the lines might have rotated out of site before they +are noticed.</p> + +<p>While reading through the nfs client implementation in linux kernel +code, I came across some statistics that seem to give a way to detect +it. The om_timeouts sunrpc value in the kernel will increase every +time the above log entry is inserted into dmesg. And after digging a +bit further, I discovered that this value show up in +/proc/self/mountstats on Linux.</p> + +<p>The mountstats content seem to be shared between files using the +same file system context, so it is enough to check one of the +mountstats files to get the state of the mount point for the machine. +I assume this will not show lazy umounted NFS points, nor NFS mount +points in a different process context (ie with a different filesystem +view), but that does not worry me.</p> + +<p>The content for a NFS mount point look similar to this:</p> <p><blockquote><pre> -nano /usr/bin/edu-eatmydata-install +[...] +device /dev/mapper/Debian-var mounted on /var with fstype ext3 +device nfsserver:/mnt/nfsserver/home0 mounted on /mnt/nfsserver/home0 with fstype nfs statvers=1.1 + opts: rw,vers=3,rsize=65536,wsize=65536,namlen=255,acregmin=3,acregmax=60,acdirmin=30,acdirmax=60,soft,nolock,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=129.240.3.145,mountvers=3,mountport=4048,mountproto=udp,local_lock=all + age: 7863311 + caps: caps=0x3fe7,wtmult=4096,dtsize=8192,bsize=0,namlen=255 + sec: flavor=1,pseudoflavor=1 + events: 61063112 732346265 1028140 35486205 16220064 8162542 761447191 71714012 37189 3891185 45561809 110486139 4850138 420353 15449177 296502 52736725 13523379 0 52182 9016896 1231 0 0 0 0 0 + bytes: 166253035039 219519120027 0 0 40783504807 185466229638 11677877 45561809 + RPC iostats version: 1.0 p/v: 100003/3 (nfs) + xprt: tcp 925 1 6810 0 0 111505412 111480497 109 2672418560317 0 248 53869103 22481820 + per-op statistics + NULL: 0 0 0 0 0 0 0 0 + GETATTR: 61063106 61063108 0 9621383060 6839064400 453650 77291321 78926132 + SETATTR: 463469 463470 0 92005440 66739536 63787 603235 687943 + LOOKUP: 17021657 17021657 0 3354097764 4013442928 57216 35125459 35566511 + ACCESS: 14281703 14290009 5 2318400592 1713803640 1709282 4865144 7130140 + READLINK: 125 125 0 20472 18620 0 1112 1118 + READ: 4214236 4214237 0 715608524 41328653212 89884 22622768 22806693 + WRITE: 8479010 8494376 22 187695798568 1356087148 178264904 51506907 231671771 + CREATE: 171708 171708 0 38084748 46702272 873 1041833 1050398 + MKDIR: 3680 3680 0 773980 993920 26 23990 24245 + SYMLINK: 903 903 0 233428 245488 6 5865 5917 + MKNOD: 80 80 0 20148 21760 0 299 304 + REMOVE: 429921 429921 0 79796004 61908192 3313 2710416 2741636 + RMDIR: 3367 3367 0 645112 484848 22 5782 6002 + RENAME: 466201 466201 0 130026184 121212260 7075 5935207 5961288 + LINK: 289155 289155 0 72775556 67083960 2199 2565060 2585579 + READDIR: 2933237 2933237 0 516506204 13973833412 10385 3190199 3297917 + READDIRPLUS: 1652839 1652839 0 298640972 6895997744 84735 14307895 14448937 + FSSTAT: 6144 6144 0 1010516 1032192 51 9654 10022 + FSINFO: 2 2 0 232 328 0 1 1 + PATHCONF: 1 1 0 116 140 0 0 0 + COMMIT: 0 0 0 0 0 0 0 0 + +device binfmt_misc mounted on /proc/sys/fs/binfmt_misc with fstype binfmt_misc +[...] </pre></blockquote></p> -<p>and add 'exit 0' as the second line, disabling the eatmydata -optimization. Return to the installation, select the profile you want -and continue. Without this change, exim4-config will fail to install -due to a known bug in eatmydata.</p> - -<p>When you get the grub question at the end, answer /dev/sda (or if -this do not work, figure out what your correct value would be. All my -test machines need /dev/sda, so I have no advice if it do not fit -your need.</p> - -<p>If you installed a profile including a graphical desktop, log in as -root after the initial boot from hard drive, and install the -education-desktop-XXX metapackage. XXX can be kde, gnome, lxde, xfce -or mate. If you want several desktop options, install more than one -metapackage. Once this is done, reboot and you should have a working -graphical login screen. This workaround should no longer be needed -once the education-tasks package version 1.801 enter testing in two -days.</p> - -<p>I believe the ISO build will start working on two days when the new -tasksel package enter testing and Steve McIntyre get a chance to -update the debian-cd git repository. The eatmydata, grub and desktop -issues are already fixed in unstable and testing, and should show up -on the ISO as soon as the ISO build start working again. Well the -eatmydata optimization is really just disabled. The proper fix -require an upload by the eatmydata maintainer applying the patch -provided in bug <a href="https://bugs.debian.org/702711">#702711</a>. -The rest have proper fixes in unstable.</p> - -<p>I hope this get you going with the installation testing, as we are -quickly running out of time trying to get our Jessie based -installation ready before the distribution freeze in a month.</p> +<p>The key number to look at is the third number in the per-op list. +It is the number of NFS timeouts experiences per file system +operation. Here 22 write timeouts and 5 access timeouts. If these +numbers are increasing, I believe the machine is experiencing NFS +hang. Unfortunately the timeout value do not start to increase right +away. The NFS operations need to time out first, and this can take a +while. The exact timeout value depend on the setup. For example the +defaults for TCP and UDP mount points are quite different, and the +timeout value is affected by the soft, hard, timeo and retrans NFS +mount options.</p> + +<p>The only way I have been able to get working on Debian and RedHat +Enterprise Linux for getting the timeout count is to peek in /proc/. +But according to +<ahref="http://docs.oracle.com/cd/E19253-01/816-4555/netmonitor-12/index.html">Solaris +10 System Administration Guide: Network Services</a>, the 'nfsstat -c' +command can be used to get these timeout values. But this do not work +on Linux, as far as I can tell. I +<ahref="http://bugs.debian.org/857043">asked Debian about this</a>, +but have not seen any replies yet.</p> + +<p>Is there a better way to figure out if a Linux NFS client is +experiencing NFS hangs? Is there a way to detect which processes are +affected? Is there a way to get the NFS mount going quickly once the +network problem causing the NFS hang has been cleared? I would very +much welcome some clues, as we regularly run into NFS hangs.</p> - Suddenly I am the new upstream of the lsdvd command line tool - http://people.skolelinux.org/pere/blog/Suddenly_I_am_the_new_upstream_of_the_lsdvd_command_line_tool.html - http://people.skolelinux.org/pere/blog/Suddenly_I_am_the_new_upstream_of_the_lsdvd_command_line_tool.html - Thu, 25 Sep 2014 11:20:00 +0200 - <p>I use the <a href="https://sourceforge.net/p/lsdvd/">lsdvd tool</a> -to handle my fairly large DVD collection. It is a nice command line -tool to get details about a DVD, like title, tracks, track length, -etc, in XML, Perl or human readable format. But lsdvd have not seen -any new development since 2006 and had a few irritating bugs affecting -its use with some DVDs. Upstream seemed to be dead, and in January I -sent a small probe asking for a version control repository for the -project, without any reply. But I use it regularly and would like to -get <a href="https://packages.qa.debian.org/lsdvd">an updated version -into Debian</a>. So two weeks ago I tried harder to get in touch with -the project admin, and after getting a reply from him explaining that -he was no longer interested in the project, I asked if I could take -over. And yesterday, I became project admin.</p> - -<p>I've been in touch with a Gentoo developer and the Debian -maintainer interested in joining forces to maintain the upstream -project, and I hope we can get a new release out fairly quickly, -collecting the patches spread around on the internet into on place. -I've added the relevant Debian patches to the freshly created git -repository, and expect the Gentoo patches to make it too. If you got -a DVD collection and care about command line tools, check out -<a href="https://sourceforge.net/p/lsdvd/git/ci/master/tree/">the git source</a> and join -<a href="https://sourceforge.net/p/lsdvd/mailman/">the project mailing -list</a>. :)</p> + How does it feel to be wiretapped, when you should be doing the wiretapping... + http://people.skolelinux.org/pere/blog/How_does_it_feel_to_be_wiretapped__when_you_should_be_doing_the_wiretapping___.html + http://people.skolelinux.org/pere/blog/How_does_it_feel_to_be_wiretapped__when_you_should_be_doing_the_wiretapping___.html + Wed, 8 Mar 2017 11:50:00 +0100 + <p>So the new president in the United States of America claim to be +surprised to discover that he was wiretapped during the election +before he was elected president. He even claim this must be illegal. +Well, doh, if it is one thing the confirmations from Snowden +documented, it is that the entire population in USA is wiretapped, one +way or another. Of course the president candidates were wiretapped, +alongside the senators, judges and the rest of the people in USA.</p> + +<p>Next, the Federal Bureau of Investigation ask the Department of +Justice to go public rejecting the claims that Donald Trump was +wiretapped illegally. I fail to see the relevance, given that I am +sure the surveillance industry in USA believe they have all the legal +backing they need to conduct mass surveillance on the entire +world.</p> + +<p>There is even the director of the FBI stating that he never saw an +order requesting wiretapping of Donald Trump. That is not very +surprising, given how the FISA court work, with all its activity being +secret. Perhaps he only heard about it?</p> + +<p>What I find most sad in this story is how Norwegian journalists +present it. In a news reports the other day in the radio from the +Norwegian National broadcasting Company (NRK), I heard the journalist +claim that 'the FBI denies any wiretapping', while the reality is that +'the FBI denies any illegal wiretapping'. There is a fundamental and +important difference, and it make me sad that the journalists are +unable to grasp it.</p> + +<p><strong>Update 2017-03-13:</strong> Look like +<a href="https://theintercept.com/2017/03/13/rand-paul-is-right-nsa-routinely-monitors-americans-communications-without-warrants/">The +Intercept report that US Senator Rand Paul confirm what I state above</a>.</p> - Hva henger under skibrua over E16 på Sollihøgda? - http://people.skolelinux.org/pere/blog/Hva_henger_under_skibrua_over_E16_p__Sollih_gda_.html - http://people.skolelinux.org/pere/blog/Hva_henger_under_skibrua_over_E16_p__Sollih_gda_.html - Sun, 21 Sep 2014 09:50:00 +0200 - <p>Rundt omkring i Oslo og Østlandsområdet henger det bokser over -veiene som jeg har lurt på hva gjør. De har ut fra plassering og -vinkling sett ut som bokser som sniffer ut et eller annet fra -forbipasserende trafikk, men det har vært uklart for meg hva det er de -leser av. Her om dagen tok jeg bilde av en slik boks som henger under -<a href="http://www.openstreetmap.no/?zoom=19&mlat=59.96396&mlon=10.34443&layers=B00000">ei -skibru på Sollihøgda</a>:</p> - -<p align="center"><img width="60%" src="http://people.skolelinux.org/pere/blog/images/2014-09-13-kapsch-sollihogda-crop.jpeg"></p> - -<p>Boksen er tydelig merket «Kapsch >>>», logoen til -<a href="http://www.kapsch.net/">det sveitsiske selskapet Kapsch</a> som -blant annet lager sensorsystemer for veitrafikk. Men de lager mye -forskjellig, og jeg kjente ikke igjen boksen på utseendet etter en -kjapp titt på produktlista til selskapet.</p> - -<p>I og med at boksen henger over veien E16, en riksvei vedlikeholdt -av Statens Vegvesen, så antok jeg at det burde være mulig å bruke -REST-API-et som gir tilgang til vegvesenets database over veier, -skilter og annet veirelatert til å finne ut hva i alle dager dette -kunne være. De har både -<a href="https://www.vegvesen.no/nvdb/api/dokumentasjon/datakatalog">en -datakatalog</a> og -<a href="https://www.vegvesen.no/nvdb/api/dokumentasjon/sok">et -søk</a>, der en kan søke etter ulike typer oppføringer innen for et -gitt geografisk område. Jeg laget et enkelt shell-script for å hente -ut antall av en gitt type innenfor området skibrua dekker, og listet -opp navnet på typene som ble funnet. Orket ikke slå opp hvordan -URL-koding av aktuelle strenger kunne gjøres mer generisk, og brukte -en stygg sed-linje i stedet.</p> + Norwegian Bokmål translation of The Debian Administrator's Handbook complete, proofreading in progress + http://people.skolelinux.org/pere/blog/Norwegian_Bokm_l_translation_of_The_Debian_Administrator_s_Handbook_complete__proofreading_in_progress.html + http://people.skolelinux.org/pere/blog/Norwegian_Bokm_l_translation_of_The_Debian_Administrator_s_Handbook_complete__proofreading_in_progress.html + Fri, 3 Mar 2017 14:50:00 +0100 + <p>For almost a year now, we have been working on making a Norwegian +Bokmål edition of <a href="https://debian-handbook.info/">The Debian +Administrator's Handbook</a>. Now, thanks to the tireless effort of +Ole-Erik, Ingrid and Andreas, the initial translation is complete, and +we are working on the proof reading to ensure consistent language and +use of correct computer science terms. The plan is to make the book +available on paper, as well as in electronic form. For that to +happen, the proof reading must be completed and all the figures need +to be translated. If you want to help out, get in touch.</p> + +<p><a href="http://people.skolelinux.org/pere/debian-handbook/debian-handbook-nb-NO.pdf">A + +fresh PDF edition</a> in A4 format (the final book will have smaller +pages) of the book created every morning is available for +proofreading. If you find any errors, please +<a href="https://hosted.weblate.org/projects/debian-handbook/">visit +Weblate and correct the error</a>. The +<a href="http://l.github.io/debian-handbook/stat/nb-NO/index.html">state +of the translation including figures</a> is a useful source for those +provide Norwegian bokmål screen shots and figures.</p> + + + + + Unlimited randomness with the ChaosKey? + http://people.skolelinux.org/pere/blog/Unlimited_randomness_with_the_ChaosKey_.html + http://people.skolelinux.org/pere/blog/Unlimited_randomness_with_the_ChaosKey_.html + Wed, 1 Mar 2017 20:50:00 +0100 + <p>A few days ago I ordered a small batch of +<a href="http://altusmetrum.org/ChaosKey/">the ChaosKey</a>, a small +USB dongle for generating entropy created by Bdale Garbee and Keith +Packard. Yesterday it arrived, and I am very happy to report that it +work great! According to its designers, to get it to work out of the +box, you need the Linux kernel version 4.1 or later. I tested on a +Debian Stretch machine (kernel version 4.9), and there it worked just +fine, increasing the available entropy very quickly. I wrote a small +test oneliner to test. It first print the current entropy level, +drain /dev/random, and then print the entropy level for five seconds. +Here is the situation without the ChaosKey inserted:</p> <blockquote><pre> -#!/bin/sh -urlmap() { - sed \ - -e 's/ / /g' -e 's/{/%7B/g' \ - -e 's/}/%7D/g' -e 's/\[/%5B/g' \ - -e 's/\]/%5D/g' -e 's/ /%20/g' \ - -e 's/,/%2C/g' -e 's/\"/%22/g' \ - -e 's/:/%3A/g' -} - -lookup() { - url="$1" - curl -s -H 'Accept: application/vnd.vegvesen.nvdb-v1+xml' \ - "https://www.vegvesen.no/nvdb/api$url" | xmllint --format - -} - -for id in $(seq 1 874) ; do - search="{ - lokasjon: { - bbox: \"10.34425,59.96386,10.34458,59.96409\", - srid: \"WGS84\" - }, - objektTyper: [{ - id: $id, antall: 10 - }] -}" - - query=/sok?kriterie=$(echo $search | urlmap) - if lookup "$query" | - grep -q '&lt;totaltAntallReturnert>0&lt;' - then - : - else - echo $id - lookup "/datakatalog/objekttyper/$id" |grep '^ &lt;navn>' - fi -done - -exit 0 +% cat /proc/sys/kernel/random/entropy_avail; \ + dd bs=1M if=/dev/random of=/dev/null count=1; \ + for n in $(seq 1 5); do \ + cat /proc/sys/kernel/random/entropy_avail; \ + sleep 1; \ + done +300 +0+1 oppføringer inn +0+1 oppføringer ut +28 byte kopiert, 0,000264565 s, 106 kB/s +4 +8 +12 +17 +21 +% </pre></blockquote> -Aktuelt ID-område 1-874 var riktig i datakatalogen da jeg laget -scriptet. Det vil endre seg over tid. Skriptet listet så opp -aktuelle typer i og rundt skibrua: +<p>The entropy level increases by 3-4 every second. In such case any +application requiring random bits (like a HTTPS enabled web server) +will halt and wait for more entrpy. And here is the situation with +the ChaosKey inserted:</p> <blockquote><pre> -5 - &lt;navn>Rekkverk&lt;/navn> -14 - &lt;navn>Rekkverksende&lt;/navn> -47 - &lt;navn>Trafikklomme&lt;/navn> -49 - &lt;navn>Trafikkøy&lt;/navn> -60 - &lt;navn>Bru&lt;/navn> -79 - &lt;navn>Stikkrenne/Kulvert&lt;/navn> -80 - &lt;navn>Grøft, åpen&lt;/navn> -86 - &lt;navn>Belysningsstrekning&lt;/navn> -95 - &lt;navn>Skiltpunkt&lt;/navn> -96 - &lt;navn>Skiltplate&lt;/navn> -98 - &lt;navn>Referansestolpe&lt;/navn> -99 - &lt;navn>Vegoppmerking, langsgående&lt;/navn> -105 - &lt;navn>Fartsgrense&lt;/navn> -106 - &lt;navn>Vinterdriftsstrategi&lt;/navn> -172 - &lt;navn>Trafikkdeler&lt;/navn> -241 - &lt;navn>Vegdekke&lt;/navn> -293 - &lt;navn>Breddemåling&lt;/navn> -301 - &lt;navn>Kantklippareal&lt;/navn> -318 - &lt;navn>Snø-/isrydding&lt;/navn> -445 - &lt;navn>Skred&lt;/navn> -446 - &lt;navn>Dokumentasjon&lt;/navn> -452 - &lt;navn>Undergang&lt;/navn> -528 - &lt;navn>Tverrprofil&lt;/navn> -532 - &lt;navn>Vegreferanse&lt;/navn> -534 - &lt;navn>Region&lt;/navn> -535 - &lt;navn>Fylke&lt;/navn> -536 - &lt;navn>Kommune&lt;/navn> -538 - &lt;navn>Gate&lt;/navn> -539 - &lt;navn>Transportlenke&lt;/navn> -540 - &lt;navn>Trafikkmengde&lt;/navn> -570 - &lt;navn>Trafikkulykke&lt;/navn> -571 - &lt;navn>Ulykkesinvolvert enhet&lt;/navn> -572 - &lt;navn>Ulykkesinvolvert person&lt;/navn> -579 - &lt;navn>Politidistrikt&lt;/navn> -583 - &lt;navn>Vegbredde&lt;/navn> -591 - &lt;navn>Høydebegrensning&lt;/navn> -592 - &lt;navn>Nedbøyningsmåling&lt;/navn> -597 - &lt;navn>Støy-luft, Strekningsdata&lt;/navn> -601 - &lt;navn>Oppgravingsdata&lt;/navn> -602 - &lt;navn>Oppgravingslag&lt;/navn> -603 - &lt;navn>PMS-parsell&lt;/navn> -604 - &lt;navn>Vegnormalstrekning&lt;/navn> -605 - &lt;navn>Værrelatert strekning&lt;/navn> -616 - &lt;navn>Feltstrekning&lt;/navn> -617 - &lt;navn>Adressepunkt&lt;/navn> -626 - &lt;navn>Friksjonsmåleserie&lt;/navn> -629 - &lt;navn>Vegdekke, flatelapping&lt;/navn> -639 - &lt;navn>Kurvatur, horisontalelement&lt;/navn> -640 - &lt;navn>Kurvatur, vertikalelement&lt;/navn> -642 - &lt;navn>Kurvatur, vertikalpunkt&lt;/navn> -643 - &lt;navn>Statistikk, trafikkmengde&lt;/navn> -647 - &lt;navn>Statistikk, vegbredde&lt;/navn> -774 - &lt;navn>Nedbøyningsmåleserie&lt;/navn> -775 - &lt;navn>ATK, influensstrekning&lt;/navn> -794 - &lt;navn>Systemobjekt&lt;/navn> -810 - &lt;navn>Vinterdriftsklasse&lt;/navn> -821 - &lt;navn>Funksjonell vegklasse&lt;/navn> -825 - &lt;navn>Kurvatur, stigning&lt;/navn> -838 - &lt;navn>Vegbredde, beregnet&lt;/navn> -862 - &lt;navn>Reisetidsregistreringspunkt&lt;/navn> -871 - &lt;navn>Bruksklasse&lt;/navn> +% cat /proc/sys/kernel/random/entropy_avail; \ + dd bs=1M if=/dev/random of=/dev/null count=1; \ + for n in $(seq 1 5); do \ + cat /proc/sys/kernel/random/entropy_avail; \ + sleep 1; \ + done +1079 +0+1 oppføringer inn +0+1 oppføringer ut +104 byte kopiert, 0,000487647 s, 213 kB/s +433 +1028 +1031 +1035 +1038 +% </pre></blockquote> -<p>Av disse ser ID 775 og 862 mest relevant ut. ID 775 antar jeg -refererer til fotoboksen som står like ved brua, mens -«Reisetidsregistreringspunkt» kanskje kan være boksen som henger der. -Hvordan finner jeg så ut hva dette kan være for noe. En titt på -<a href="http://labs.vegdata.no/nvdb-datakatalog/862-Reisetidsregistreringspunkt/">datakatalogsiden -for ID 862/Reisetidsregistreringspunkt</a> viser at det er finnes 53 -slike målere i Norge, og hvor de er plassert, men gir ellers få -detaljer. Det er plassert 40 på østlandet og 13 i Trondheimsregionen. -Men siden nevner «AutoPASS», og hvis en slår opp oppføringen på -Sollihøgda nevner den «Ciber AS» som ID for eksternt system. (Kan det -være snakk om -<a href="http://www.proff.no/selskap/ciber-norge-as/oslo/internettdesign-og-programmering/Z0I3KMF4/">Ciber -Norge AS</a>, et selskap eid av Ciber Europe Bv?) Et nettsøk på - «Ciber AS autopass» fører meg til en artikkel fra NRK Trøndelag i - 2013 med tittel -«<a href="http://www.nrk.no/trondelag/sjekk-dette-hvis-du-vil-unnga-ko-1.11327947">Sjekk -dette hvis du vil unngå kø</a>». Artikkelen henviser til vegvesenets -nettside -<a href="http://www.reisetider.no/reisetid/forside.html">reisetider.no</a> -som har en -<a href="http://www.reisetider.no/reisetid/omrade.html?omrade=5">kartside -for Østlandet</a> som viser at det måles mellom Sandvika og Sollihøgda. -Det kan dermed se ut til at jeg har funnet ut hva boksene gjør.</p> - -<p>Hvis det stemmer, så er dette bokser som leser av AutoPASS-ID-en -til alle passerende biler med AutoPASS-brikke, og dermed gjør det mulig -for de som kontrollerer boksene å holde rede på hvor en gitt bil er -når den passerte et slikt målepunkt. NRK-artikkelen forteller at -denne informasjonen i dag kun brukes til å koble to -AutoPASS-brikkepasseringer passeringer sammen for å beregne -reisetiden, og at bruken er godkjent av Datatilsynet. Det er desverre -ikke mulig for en sjåfør som passerer under en slik boks å kontrollere -at AutoPASS-ID-en kun brukes til dette i dag og i fremtiden.</p> - -<p>I tillegg til denne type AutoPASS-sniffere vet jeg at det også -finnes mange automatiske stasjoner som tar betalt pr. passering (aka -bomstasjoner), og der lagres informasjon om tid, sted og bilnummer i -10 år. Finnes det andre slike sniffere plassert ut på veiene?</p> - -<p>Personlig har jeg valgt å ikke bruke AutoPASS-brikke, for å gjøre -det vanskeligere og mer kostbart for de som vil invadere privatsfæren -og holde rede på hvor bilen min beveger seg til enhver tid. Jeg håper -flere vil gjøre det samme, selv om det gir litt høyere private -utgifter (dyrere bompassering). Vern om privatsfæren koster i disse -dager.</p> - -<p>Takk til Jan Kristian Jensen i Statens Vegvesen for tips om -dokumentasjon på vegvesenets REST-API.</p> +<p>Quite the difference. :) I bought a few more than I need, in case +someone want to buy one here in Norway. :)</p> + +<p>Update: The dongle was presented at Debconf last year. You might +find <a href="https://debconf16.debconf.org/talks/94/">the talk +recording illuminating</a>. It explains exactly what the source of +randomness is, if you are unable to spot it from the schema drawing +available from the ChaosKey web site linked at the start of this blog +post.</p> - Speeding up the Debian installer using eatmydata and dpkg-divert - http://people.skolelinux.org/pere/blog/Speeding_up_the_Debian_installer_using_eatmydata_and_dpkg_divert.html - http://people.skolelinux.org/pere/blog/Speeding_up_the_Debian_installer_using_eatmydata_and_dpkg_divert.html - Tue, 16 Sep 2014 14:00:00 +0200 - <p>The <a href="https://www.debian.org/">Debian</a> installer could be -a lot quicker. When we install more than 2000 packages in -<a href="http://www.skolelinux.org/">Skolelinux / Debian Edu</a> using -tasksel in the installer, unpacking the binary packages take forever. -A part of the slow I/O issue was discussed in -<a href="https://bugs.debian.org/613428">bug #613428</a> about too -much file system sync-ing done by dpkg, which is the package -responsible for unpacking the binary packages. Other parts (like code -executed by postinst scripts) might also sync to disk during -installation. All this sync-ing to disk do not really make sense to -me. If the machine crash half-way through, I start over, I do not try -to salvage the half installed system. So the failure sync-ing is -supposed to protect against, hardware or system crash, is not really -relevant while the installer is running.</p> - -<p>A few days ago, I thought of a way to get rid of all the file -system sync()-ing in a fairly non-intrusive way, without the need to -change the code in several packages. The idea is not new, but I have -not heard anyone propose the approach using dpkg-divert before. It -depend on the small and clever package -<a href="https://packages.qa.debian.org/eatmydata">eatmydata</a>, which -uses LD_PRELOAD to replace the system functions for syncing data to -disk with functions doing nothing, thus allowing programs to live -dangerous while speeding up disk I/O significantly. Instead of -modifying the implementation of dpkg, apt and tasksel (which are the -packages responsible for selecting, fetching and installing packages), -it occurred to me that we could just divert the programs away, replace -them with a simple shell wrapper calling -"eatmydata&nbsp;$program&nbsp;$@", to get the same effect. -Two days ago I decided to test the idea, and wrapped up a simple -implementation for the Debian Edu udeb.</p> - -<p>The effect was stunning. In my first test it reduced the running -time of the pkgsel step (installing tasks) from 64 to less than 44 -minutes (20 minutes shaved off the installation) on an old Dell -Latitude D505 machine. I am not quite sure what the optimised time -would have been, as I messed up the testing a bit, causing the debconf -priority to get low enough for two questions to pop up during -installation. As soon as I saw the questions I moved the installation -along, but do not know how long the question were holding up the -installation. I did some more measurements using Debian Edu Jessie, -and got these results. The time measured is the time stamp in -/var/log/syslog between the "pkgsel: starting tasksel" and the -"pkgsel: finishing up" lines, if you want to do the same measurement -yourself. In Debian Edu, the tasksel dialog do not show up, and the -timing thus do not depend on how quickly the user handle the tasksel -dialog.</p> - -<p><table> - -<tr> -<th>Machine/setup</th> -<th>Original tasksel</th> -<th>Optimised tasksel</th> -<th>Reduction</th> -</tr> - -<tr> -<td>Latitude D505 Main+LTSP LXDE</td> -<td>64 min (07:46-08:50)</td> -<td><44 min (11:27-12:11)</td> -<td>>20 min 18%</td> -</tr> - -<tr> -<td>Latitude D505 Roaming LXDE</td> -<td>57 min (08:48-09:45)</td> -<td>34 min (07:43-08:17)</td> -<td>23 min 40%</td> -</tr> - -<tr> -<td>Latitude D505 Minimal</td> -<td>22 min (10:37-10:59)</td> -<td>11 min (11:16-11:27)</td> -<td>11 min 50%</td> -</tr> - -<tr> -<td>Thinkpad X200 Minimal</td> -<td>6 min (08:19-08:25)</td> -<td>4 min (08:04-08:08)</td> -<td>2 min 33%</td> -</tr> - -<tr> -<td>Thinkpad X200 Roaming KDE</td> -<td>19 min (09:21-09:40)</td> -<td>15 min (10:25-10:40)</td> -<td>4 min 21%</td> -</tr> - -</table></p> - -<p>The test is done using a netinst ISO on a USB stick, so some of the -time is spent downloading packages. The connection to the Internet -was 100Mbit/s during testing, so downloading should not be a -significant factor in the measurement. Download typically took a few -seconds to a few minutes, depending on the amount of packages being -installed.</p> - -<p>The speedup is implemented by using two hooks in -<a href="https://www.debian.org/devel/debian-installer/">Debian -Installer</a>, the pre-pkgsel.d hook to set up the diverts, and the -finish-install.d hook to remove the divert at the end of the -installation. I picked the pre-pkgsel.d hook instead of the -post-base-installer.d hook because I test using an ISO without the -eatmydata package included, and the post-base-installer.d hook in -Debian Edu can only operate on packages included in the ISO. The -negative effect of this is that I am unable to activate this -optimization for the kernel installation step in d-i. If the code is -moved to the post-base-installer.d hook, the speedup would be larger -for the entire installation.</p> - -<p>I've implemented this in the -<a href="https://packages.qa.debian.org/debian-edu-install">debian-edu-install</a> -git repository, and plan to provide the optimization as part of the -Debian Edu installation. If you want to test this yourself, you can -create two files in the installer (or in an udeb). One shell script -need do go into /usr/lib/pre-pkgsel.d/, with content like this:</p> - -<p><blockquote><pre> -#!/bin/sh -set -e -. /usr/share/debconf/confmodule -info() { - logger -t my-pkgsel "info: $*" -} -error() { - logger -t my-pkgsel "error: $*" -} -override_install() { - apt-install eatmydata || true - if [ -x /target/usr/bin/eatmydata ] ; then - for bin in dpkg apt-get aptitude tasksel ; do - file=/usr/bin/$bin - # Test that the file exist and have not been diverted already. - if [ -f /target$file ] ; then - info "diverting $file using eatmydata" - printf "#!/bin/sh\neatmydata $bin.distrib \"\$@\"\n" \ - > /target$file.edu - chmod 755 /target$file.edu - in-target dpkg-divert --package debian-edu-config \ - --rename --quiet --add $file - ln -sf ./$bin.edu /target$file - else - error "unable to divert $file, as it is missing." - fi - done - else - error "unable to find /usr/bin/eatmydata after installing the eatmydata pacage" - fi -} - -override_install -</pre></blockquote></p> - -<p>To clean up, another shell script should go into -/usr/lib/finish-install.d/ with code like this: - -<p><blockquote><pre> -#! /bin/sh -e -. /usr/share/debconf/confmodule -error() { - logger -t my-finish-install "error: $@" -} -remove_install_override() { - for bin in dpkg apt-get aptitude tasksel ; do - file=/usr/bin/$bin - if [ -x /target$file.edu ] ; then - rm /target$file - in-target dpkg-divert --package debian-edu-config \ - --rename --quiet --remove $file - rm /target$file.edu - else - error "Missing divert for $file." - fi - done - sync # Flush file buffers before continuing -} - -remove_install_override -</pre></blockquote></p> - -<p>In Debian Edu, I placed both code fragments in a separate script -edu-eatmydata-install and call it from the pre-pkgsel.d and -finish-install.d scripts.</p> - -<p>By now you might ask if this change should get into the normal -Debian installer too? I suspect it should, but am not sure the -current debian-installer coordinators find it useful enough. It also -depend on the side effects of the change. I'm not aware of any, but I -guess we will see if the change is safe after some more testing. -Perhaps there is some package in Debian depending on sync() and -fsync() having effect? Perhaps it should go into its own udeb, to -allow those of us wanting to enable it to do so without affecting -everyone.</p> - -<p>Update 2014-09-24: Since a few days ago, enabling this optimization -will break installation of all programs using gnutls because of -<a href="https://bugs.debian.org/702711">bug #702711</a>. An updated -eatmydata package in Debian will solve it.</p> - -<p>Update 2014-10-17: The bug mentioned above is fixed in testing and -the optimization work again. And I have discovered that the -dpkg-divert trick is not really needed and implemented a slightly -simpler approach as part of the debian-edu-install package. See -tools/edu-eatmydata-install in the source package.</p> + Detect OOXML files with undefined behaviour? + http://people.skolelinux.org/pere/blog/Detect_OOXML_files_with_undefined_behaviour_.html + http://people.skolelinux.org/pere/blog/Detect_OOXML_files_with_undefined_behaviour_.html + Tue, 21 Feb 2017 00:20:00 +0100 + <p>I just noticed +<a href="http://www.arkivrad.no/aktuelt/riksarkivarens-forskrift-pa-horing">the +new Norwegian proposal for archiving rules in the goverment</a> list +<a href="http://www.ecma-international.org/publications/standards/Ecma-376.htm">ECMA-376</a> +/ ISO/IEC 29500 (aka OOXML) as valid formats to put in long term +storage. Luckily such files will only be accepted based on +pre-approval from the National Archive. Allowing OOXML files to be +used for long term storage might seem like a good idea as long as we +forget that there are plenty of ways for a "valid" OOXML document to +have content with no defined interpretation in the standard, which +lead to a question and an idea.</p> + +<p>Is there any tool to detect if a OOXML document depend on such +undefined behaviour? It would be useful for the National Archive (and +anyone else interested in verifying that a document is well defined) +to have such tool available when considering to approve the use of +OOXML. I'm aware of the +<a href="https://github.com/arlm/officeotron/">officeotron OOXML +validator</a>, but do not know how complete it is nor if it will +report use of undefined behaviour. Are there other similar tools +available? Please send me an email if you know of any such tool.</p>