As my regular readers probably remember, I published a French and -Norwegian translation of the classic Free Culture book by the founder -of the Creative Commons movement, Lawrence Lessig, the last year. A -bit less known is the fact that due to the way I created the -translations, using docbook and po4a, and also recreated the English -original. And because I already had created a new the PDF edition, I -published it too. The revenue from the book is sent to the Creative -Commons Corporation. So I do not earn any money from the project, I -just earn the warm fuzzy feeling that the text is available for a -wider audience and more people can learn why the Creative Commons is -needed.
- -Today, just for fun, I had a look at the sales number over at -Lulu.com, which take care of payment, printing and shipping. Much to -my surprise, the English edition is selling better than both the -French and Norwegian edition, despite the fact that it has been -available in English since it was first published. In total, 24 paper -books was sold for USD $19.99 between 2016-01-01 and 2016-07-31:
- -Title / language | Quantity |
---|---|
Culture Libre / French | 3 |
Fri kultur / Norwegian | 7 |
Free Culture / English | 14 |
The books are available both from Lulu.com and from large book -stores like Amazon and Barnes&Noble. Most revenue, around $10 per -book, is sent to the Creative Commons project when the book is sold -directly by Lulu.com. The summary from Lulu tell me 10 books was sold -via the Amazon channel, 10 via Ingram (what is this?) and 4 directly -by Lulu. And Lulu.com tells me that the revenue sent so far this year -is USD $101.42. No idea what kind of sales numbers to expect, so I do -not know if that is a good amount of sales for a 10 year old book or -not. But it make me happy that the buyers find the book, and I hope -they enjoy reading it as much as I did.
- -The ebook edition is available for free from -Github.
- -If you would like to translate and publish the book in your native -language, I would be happy to help make it happen. Please get in -touch.
+ +Did you ever wonder where the web trafic really flow to reach the +web servers, and who own the network equipment it is flowing through? +It is possible to get a glimpse of this from using traceroute, but it +is hard to find all the details. Many years ago, I wrote a system to +map the Norwegian Internet (trying to figure out if our plans for a +network game service would get low enough latency, and who we needed +to talk to about setting up game servers close to the users. Back +then I used traceroute output from many locations (I asked my friends +to run a script and send me their traceroute output) to create the +graph and the map. The output from traceroute typically look like +this: + +
+traceroute to www.stortinget.no (85.88.67.10), 30 hops max, 60 byte packets + 1 uio-gw10.uio.no (129.240.202.1) 0.447 ms 0.486 ms 0.621 ms + 2 uio-gw8.uio.no (129.240.24.229) 0.467 ms 0.578 ms 0.675 ms + 3 oslo-gw1.uninett.no (128.39.65.17) 0.385 ms 0.373 ms 0.358 ms + 4 te3-1-2.br1.fn3.as2116.net (193.156.90.3) 1.174 ms 1.172 ms 1.153 ms + 5 he16-1-1.cr1.san110.as2116.net (195.0.244.234) 2.627 ms he16-1-1.cr2.oslosda310.as2116.net (195.0.244.48) 3.172 ms he16-1-1.cr1.san110.as2116.net (195.0.244.234) 2.857 ms + 6 ae1.ar8.oslosda310.as2116.net (195.0.242.39) 0.662 ms 0.637 ms ae0.ar8.oslosda310.as2116.net (195.0.242.23) 0.622 ms + 7 89.191.10.146 (89.191.10.146) 0.931 ms 0.917 ms 0.955 ms + 8 * * * + 9 * * * +[...] ++ +
This show the DNS names and IP addresses of (at least some of the) +network equipment involved in getting the data traffic from me to the +www.stortinget.no server, and how long it took in milliseconds for a +package to reach the equipment and return to me. Three packages are +sent, and some times the packages do not follow the same path. This +is shown for hop 5, where three different IP addresses replied to the +traceroute request.
+ +There are many ways to measure trace routes. Other good traceroute +implementations I use are traceroute (using ICMP packages) mtr (can do +both ICMP, UDP and TCP) and scapy (python library with ICMP, UDP, TCP +traceroute and a lot of other capabilities). All of them are easily +available in Debian.
+ +This time around, I wanted to know the geographic location of +different route points, to visualize how visiting a web page spread +information about the visit to a lot of servers around the globe. The +background is that a web site today often will ask the browser to get +from many servers the parts (for example HTML, JSON, fonts, +JavaScript, CSS, video) required to display the content. This will +leak information about the visit to those controlling these servers +and anyone able to peek at the data traffic passing by (like your ISP, +the ISPs backbone provider, FRA, GCHQ, NSA and others).
+ +Lets pick an example, the Norwegian parliament web site +www.stortinget.no. It is read daily by all members of parliament and +their staff, as well as political journalists, activits and many other +citizens of Norway. A visit to the www.stortinget.no web site will +ask your browser to contact 8 other servers: ajax.googleapis.com, +insights.hotjar.com, script.hotjar.com, static.hotjar.com, +stats.g.doubleclick.net, www.google-analytics.com, +www.googletagmanager.com and www.netigate.se. I extracted this by +asking PhantomJS to visit the +Stortinget web page and tell me all the URLs PhantomJS downloaded to +render the page (in HAR format using +their +netsniff example. I am very grateful to Gorm for showing me how +to do this). My goal is to visualize network traces to all IP +addresses behind these DNS names, do show where visitors personal +information is spread when visiting the page.
+ + + +When I had a look around for options, I could not find any good +free software tools to do this, and decided I needed my own traceroute +wrapper outputting KML based on locations looked up using GeoIP. KML +is easy to work with and easy to generate, and understood by several +of the GIS tools I have available. I got good help from by NUUG +colleague Anders Einar with this, and the result can be seen in +my +kmltraceroute git repository. Unfortunately, the quality of the +free GeoIP databases I could find (and the for-pay databases my +friends had access to) is not up to the task. The IP addresses of +central Internet infrastructure would typically be placed near the +controlling companies main office, and not where the router is really +located, as you can see from the +KML file I created using the GeoLite City dataset from MaxMind. + +
+ +I also had a look at the visual traceroute graph created by +the scrapy project, +showing IP network ownership (aka AS owner) for the IP address in +question. +The +graph display a lot of useful information about the traceroute in SVG +format, and give a good indication on who control the network +equipment involved, but it do not include geolocation. This graph +make it possible to see the information is made available at least for +UNINETT, Catchcom, Stortinget, Nordunet, Google, Amazon, Telia, Level +3 Communications and NetDNA.
+ + + +In the process, I came across the +web service GeoTraceRoute by +Salim Gasmi. Its methology of combining guesses based on DNS names, +various location databases and finally use latecy times to rule out +candidate locations seemed to do a very good job of guessing correct +geolocation. But it could only do one trace at the time, did not have +a sensor in Norway and did not make the geolocations easily available +for postprocessing. So I contacted the developer and asked if he +would be willing to share the code (he refused until he had time to +clean it up), but he was interested in providing the geolocations in a +machine readable format, and willing to set up a sensor in Norway. So +since yesterday, it is possible to run traces from Norway in this +service thanks to a sensor node set up by +the NUUG assosiation, and get the +trace in KML format for further processing.
+ + + +Here we can see a lot of trafic passes Sweden on its way to +Denmark, Germany, Holland and Ireland. Plenty of places where the +Snowden confirmations verified the traffic is read by various actors +without your best interest as their top priority.
+ +Combining KML files is trivial using a text editor, so I could loop +over all the hosts behind the urls imported by www.stortinget.no and +ask for the KML file from geotraceroute, and create a combined KML +file with all the traces (unfortunately only one of the IP addresses +behind the DNS name is traced this time. To get them all, one would +have to request traces using IP number instead of DNS names from +geotraceroute). That might be the next step in this project.
+ +Armed with these tools, I find it a lot easier to figure out where +the IP traffic moves and who control the boxes involved in moving it. +And every time the link crosses for example the Swedish border, we can +be sure Swedish Signal Intelligence (FRA) is listening, as GCHQ do in +Britain and NSA in USA and cables around the globe. (Hm, what should +we tell them? :) Keep that in mind if you ever send anything +unencrypted over the Internet.
+ +PS: KML files are drawn using +the KML viewer from Ivan +Rublev, as it was less cluttered than the local Linux application +Marble. There are heaps of other options too.
+ +As usual, if you use Bitcoin and want to show your support of my +activities, please send Bitcoin donations to my address +15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b.
For mange år siden leste jeg en klassisk tekst som gjorde såpass -inntrykk på meg at jeg husker den fortsatt, flere år senere, og bruker -argumentene fra den stadig vekk. Teksten var «The Relativity of -Wrong» som Isaac Asimov publiserte i Skeptical Inquirer i 1989. Den -gir litt perspektiv rundt formidlingen av vitenskapelige resultater. -Jeg har hatt lyst til å kunne dele den også med folk som ikke -behersker engelsk så godt, som barn og noen av mine eldre slektninger, -og har savnet å ha den tilgjengelig på norsk. For to uker siden tok -jeg meg sammen og kontaktet Asbjørn Dyrendal i foreningen Skepsis om -de var interessert i å publisere en norsk utgave på bloggen sin, og da -han var positiv tok jeg kontakt med Skeptical Inquirer og spurte om -det var greit for dem. I løpet av noen dager fikk vi tilbakemelding -fra Barry Karr hos The Skeptical Inquirer som hadde sjekket og fått OK -fra Robyn Asimov som representerte arvingene i Asmiov-familien og gikk -igang med oversettingen.
- -Resultatet, «Relativt -feil», ble publisert på skepsis-bloggen for noen minutter siden. -Jeg anbefaler deg på det varmeste å lese denne teksten og dele den med -dine venner.
- -For å håndtere oversettelsen og sikre at original og oversettelse -var i sync brukte vi git, po4a, GNU make og Transifex. Det hele -fungerte utmerket og gjorde det enkelt å dele tekstene og jobbe sammen -om finpuss på formuleringene. Hadde hosted.weblate.org latt meg -opprette nye prosjekter selv i stedet for å måtte kontakte -administratoren der, så hadde jeg brukt weblate i stedet.
+ +Do you have a large iCalendar +file with lots of old entries, and would like to archive them to save +space and resources? At least those of us using KOrganizer know that +turning on and off an event set become slower and slower the more +entries are in the set. While working on migrating our calendars to a +Radicale CalDAV server on our +Freedombox server, my +loved one wondered if I could find a way to split up the calendar file +she had in KOrganizer, and I set out to write a tool. I spent a few +days writing and polishing the system, and it is now ready for general +consumption. The +code for +ical-archiver is publicly available from a git repository on +github. The system is written in Python and depend on +the vobject Python +module.
+ +To use it, locate the iCalendar file you want to operate on and +give it as an argument to the ical-archiver script. This will +generate a set of new files, one file per component type per year for +all components expiring more than two years in the past. The vevent, +vtodo and vjournal entries are handled by the script. The remaining +entries are stored in a 'remaining' file.
+ +This is what a test run can look like: + +
+% ical-archiver t/2004-2016.ics +Found 3612 vevents +Found 6 vtodos +Found 2 vjournals +Writing t/2004-2016.ics-subset-vevent-2004.ics +Writing t/2004-2016.ics-subset-vevent-2005.ics +Writing t/2004-2016.ics-subset-vevent-2006.ics +Writing t/2004-2016.ics-subset-vevent-2007.ics +Writing t/2004-2016.ics-subset-vevent-2008.ics +Writing t/2004-2016.ics-subset-vevent-2009.ics +Writing t/2004-2016.ics-subset-vevent-2010.ics +Writing t/2004-2016.ics-subset-vevent-2011.ics +Writing t/2004-2016.ics-subset-vevent-2012.ics +Writing t/2004-2016.ics-subset-vevent-2013.ics +Writing t/2004-2016.ics-subset-vevent-2014.ics +Writing t/2004-2016.ics-subset-vjournal-2007.ics +Writing t/2004-2016.ics-subset-vjournal-2011.ics +Writing t/2004-2016.ics-subset-vtodo-2012.ics +Writing t/2004-2016.ics-remaining.ics +% ++ +
As you can see, the original file is untouched and new files are +written with names derived from the original file. If you are happy +with their content, the *-remaining.ics file can replace the original +the the others can be archived or imported as historical calendar +collections.
+ +The script should probably be improved a bit. The error handling +when discovering broken entries is not good, and I am not sure yet if +it make sense to split different entry types into separate files or +not. The program is thus likely to change. If you find it +interesting, please get in touch. :)
+ +As usual, if you use Bitcoin and want to show your support of my +activities, please send Bitcoin donations to my address +15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b.
Did you know there is a TV channel broadcasting talks from DebConf -16 across an entire country? Or that there is a TV channel -broadcasting talks by or about -Linus Torvalds, -Tor, -OpenID, -Common Lisp, -Civic Tech, -EFF founder John Barlow, -how to make 3D -printer electronics and many more fascinating topics? It works -using only free software (all of it -available from Github), and -is administrated using a web browser and a web API.
- -The TV channel is the Norwegian open channel -Frikanalen, and I am involved -via the NUUG member association in -running and developing the software for the channel. The channel is -organised as a member organisation where its members can upload and -broadcast what they want (think of it as Youtube for national -broadcasting television). Individuals can broadcast too. The time -slots are handled on a first come, first serve basis. Because the -channel have almost no viewers and very few active members, we can -experiment with TV technology without too much flack when we make -mistakes. And thanks to the few active members, most of the slots on -the schedule are free. I see this as an opportunity to spread -knowledge about technology and free software, and have a script I run -regularly to fill up all the open slots the next few days with -technology related video. The end result is a channel I like to -describe as Techno TV - filled with interesting talks and -presentations.
- -It is available on channel 50 on the Norwegian national digital TV -network (RiksTV). It is also available as a multicast stream on -Uninett. And finally, it is available as -a WebM unicast stream from -Frikanalen and NUUG. Check it out. :)
+ +I received a very nice Christmas present today. As my regular +readers probably know, I have been working on the +the Isenkram +system for many years. The goal of the Isenkram system is to make +it easier for users to figure out what to install to get a given piece +of hardware to work in Debian, and a key part of this system is a way +to map hardware to packages. Isenkram have its own mapping database, +and also uses data provided by each package using the AppStream +metadata format. And today, +AppStream in +Debian learned to look up hardware the same way Isenkram is doing it, +ie using fnmatch():
+ ++% appstreamcli what-provides modalias \ + usb:v1130p0202d0100dc00dsc00dp00ic03isc00ip00in00 +Identifier: pymissile [generic] +Name: pymissile +Summary: Control original Striker USB Missile Launcher +Package: pymissile +% appstreamcli what-provides modalias usb:v0694p0002d0000 +Identifier: libnxt [generic] +Name: libnxt +Summary: utility library for talking to the LEGO Mindstorms NXT brick +Package: libnxt +--- +Identifier: t2n [generic] +Name: t2n +Summary: Simple command-line tool for Lego NXT +Package: t2n +--- +Identifier: python-nxt [generic] +Name: python-nxt +Summary: Python driver/interface/wrapper for the Lego Mindstorms NXT robot +Package: python-nxt +--- +Identifier: nbc [generic] +Name: nbc +Summary: C compiler for LEGO Mindstorms NXT bricks +Package: nbc +% ++ +
A similar query can be done using the combined AppStream and +Isenkram databases using the isenkram-lookup tool:
+ ++% isenkram-lookup usb:v1130p0202d0100dc00dsc00dp00ic03isc00ip00in00 +pymissile +% isenkram-lookup usb:v0694p0002d0000 +libnxt +nbc +python-nxt +t2n +% ++ +
You can find modalias values relevant for your machine using +cat $(find /sys/devices/ -name modalias). + +
If you want to make this system a success and help Debian users +make the most of the hardware they have, please +helpadd +AppStream metadata for your package following the guidelines +documented in the wiki. So far only 11 packages provide such +information, among the several hundred hardware specific packages in +Debian. The Isenkram database on the other hand contain 101 packages, +mostly related to USB dongles. Most of the packages with hardware +mapping in AppStream are LEGO Mindstorms related, because I have, as +part of my involvement in +the Debian LEGO +team given priority to making sure LEGO users get proposed the +complete set of packages in Debian for that particular hardware. The +team also got a nice Christmas present today. The +nxt-firmware +package made it into Debian. With this package in place, it is +now possible to use the LEGO Mindstorms NXT unit with only free +software, as the nxt-firmware package contain the source and firmware +binaries for the NXT brick.
+ +As usual, if you use Bitcoin and want to show your support of my +activities, please send Bitcoin donations to my address +15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b.
Yesterday, I tried to unlock a HTC Desire HD phone, and it proved -to be a slight challenge. Here is the recipe if I ever need to do it -again. It all started by me wanting to try the recipe to set up -an -hardened Android installation from the Tor project blog on a -device I had access to. It is a old mobile phone with a broken -microphone The initial idea had been to just -install -CyanogenMod on it, but did not quite find time to start on it -until a few days ago.
- -The unlock process is supposed to be simple: (1) Boot into the boot -loader (press volume down and power at the same time), (2) select -'fastboot' before (3) connecting the device via USB to a Linux -machine, (4) request the device identifier token by running 'fastboot -oem get_identifier_token', (5) request the device unlocking key using -the HTC developer web -site and unlock the phone using the key file emailed to you.
- -Unfortunately, this only work fi you have hboot version 2.00.0029 -or newer, and the device I was working on had 2.00.0027. This -apparently can be easily fixed by downloading a Windows program and -running it on your Windows machine, if you accept the terms Microsoft -require you to accept to use Windows - which I do not. So I had to -come up with a different approach. I got a lot of help from AndyCap -on #nuug, and would not have been able to get this working without -him.
- -First I needed to extract the hboot firmware from -the -windows binary for HTC Desire HD downloaded as 'the RUU' from HTC. -For this there is is a github -project named unruu using libunshield. The unshield tool did not -recognise the file format, but unruu worked and extracted rom.zip, -containing the new hboot firmware and a text file describing which -devices it would work for.
- -Next, I needed to get the new firmware into the device. For this I -followed some instructions -available -from HTC1Guru.com, and ran these commands as root on a Linux -machine with Debian testing:
+ +The Isenkram +system I wrote two years ago to make it easier in Debian to find +and install packages to get your hardware dongles to work, is still +going strong. It is a system to look up the hardware present on or +connected to the current system, and map the hardware to Debian +packages. It can either be done using the tools in isenkram-cli or +using the user space daemon in the isenkram package. The latter will +notify you, when inserting new hardware, about what packages to +install to get the dongle working. It will even provide a button to +click on to ask packagekit to install the packages.
+ +Here is an command line example from my Thinkpad laptop:
-adb reboot-bootloader -fastboot oem rebootRUU -fastboot flash zip rom.zip -fastboot flash zip rom.zip -fastboot reboot +% isenkram-lookup +bluez +cheese +ethtool +fprintd +fprintd-demo +gkrellm-thinkbat +hdapsd +libpam-fprintd +pidgin-blinklight +thinkfan +tlp +tp-smapi-dkms +tp-smapi-source +tpb +%-
The flash command apparently need to be done twice to take effect, -as the first is just preparations and the second one do the flashing. -The adb command is just to get to the boot loader menu, so turning the -device on while holding volume down and the power button should work -too.
- -With the new hboot version in place I could start following the -instructions on the HTC developer web site. I got the device token -like this:
- --fastboot oem get_identifier_token 2>&1 | sed 's/(bootloader) //' -- -
And once I got the unlock code via email, I could use it like -this:
+It can also list the firware package providing firmware requested +by the load kernel modules, which in my case is an empty list because +I have all the firmware my machine need:
-fastboot flash unlocktoken Unlock_code.bin +% /usr/sbin/isenkram-autoinstall-firmware -l +info: did not find any firmware files requested by loaded kernel modules. exiting +%-
And with that final step in place, the phone was unlocked and I -could start stuffing the software of my own choosing into the device. -So far I only inserted a replacement recovery image to wipe the phone -before I start. We will see what happen next. Perhaps I should -install Debian on it. :)
+The last few days I had a look at several of the around 250 +packages in Debian with udev rules. These seem like good candidates +to install when a given hardware dongle is inserted, and I found +several that should be proposed by isenkram. I have not had time to +check all of them, but am happy to report that now there are 97 +packages packages mapped to hardware by Isenkram. 11 of these +packages provide hardware mapping using AppStream, while the rest are +listed in the modaliases file provided in isenkram.
+ +These are the packages with hardware mappings at the moment. The +marked packages are also announcing their hardware +support using AppStream, for everyone to use:
+ +air-quality-sensor, alsa-firmware-loaders, argyll, +array-info, avarice, avrdude, b43-fwcutter, +bit-babbler, bluez, bluez-firmware, brltty, +broadcom-sta-dkms, calibre, cgminer, cheese, colord, +colorhug-client, dahdi-firmware-nonfree, dahdi-linux, +dfu-util, dolphin-emu, ekeyd, ethtool, firmware-ipw2x00, fprintd, +fprintd-demo, galileo, gkrellm-thinkbat, gphoto2, +gpsbabel, gpsbabel-gui, gpsman, gpstrans, gqrx-sdr, gr-fcdproplus, +gr-osmosdr, gtkpod, hackrf, hdapsd, hdmi2usb-udev, hpijs-ppds, hplip, +ipw3945-source, ipw3945d, kde-config-tablet, kinect-audio-setup, +libnxt, libpam-fprintd, lomoco, +madwimax, minidisc-utils, mkgmap, msi-keyboard, mtkbabel, +nbc, nqc, nut-hal-drivers, ola, +open-vm-toolbox, open-vm-tools, openambit, pcgminer, pcmciautils, +pcscd, pidgin-blinklight, printer-driver-splix, +pymissile, python-nxt, qlandkartegt, +qlandkartegt-garmin, rosegarden, rt2x00-source, sispmctl, +soapysdr-module-hackrf, solaar, squeak-plugins-scratch, sunxi-tools, +t2n, thinkfan, thinkfinger-tools, tlp, tp-smapi-dkms, +tp-smapi-source, tpb, tucnak, uhd-host, usbmuxd, viking, +virtualbox-ose-guest-x11, w1retap, xawtv, xserver-xorg-input-vmmouse, +xserver-xorg-input-wacom, xserver-xorg-video-qxl, +xserver-xorg-video-vmware, yubikey-personalization and +zd1211-firmware
+ +If you know of other packages, please let me know with a wishlist +bug report against the isenkram-cli package, and ask the package +maintainer to +add AppStream +metadata according to the guidelines to provide the information +for everyone. In time, I hope to get rid of the isenkram specific +hardware mapping and depend exclusively on AppStream.
+ +Note, the AppStream metadata for broadcom-sta-dkms is matching too +much hardware, and suggest that the package with with any ethernet +card. See bug #838735 for +the details. I hope the maintainer find time to address it soon. In +the mean time I provide an override in isenkram.
For a while now, I have wanted to test -the Signal app, as it is -said to provide end to end encrypted communication and several of my -friends and family are already using it. As I by choice do not own a -mobile phone, this proved to be harder than expected. And I wanted to -have the source of the client and know that it was the code used on my -machine. But yesterday I managed to get it working. I used the -Github source, compared it to the source in -the -Signal Chrome app available from the Chrome web store, applied -patches to use the production Signal servers, started the app and -asked for the hidden "register without a smart phone" form. Here is -the recipe how I did it.
- -First, I fetched the Signal desktop source from Github, using - -
-git clone https://github.com/WhisperSystems/Signal-Desktop.git -- -
Next, I patched the source to use the production servers, to be -able to talk to other Signal users:
- --cat <<EOF | patch -p0 -diff -ur ./js/background.js userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/0.15.0_0/js/background.js ---- ./js/background.js 2016-06-29 13:43:15.630344628 +0200 -+++ userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/0.15.0_0/js/background.js 2016-06-29 14:06:29.530300934 +0200 -@@ -47,8 +47,8 @@ - }); - }); - -- var SERVER_URL = 'https://textsecure-service-staging.whispersystems.org'; -- var ATTACHMENT_SERVER_URL = 'https://whispersystems-textsecure-attachments-staging.s3.amazonaws.com'; -+ var SERVER_URL = 'https://textsecure-service-ca.whispersystems.org:4433'; -+ var ATTACHMENT_SERVER_URL = 'https://whispersystems-textsecure-attachments.s3.amazonaws.com'; - var messageReceiver; - window.getSocketStatus = function() { - if (messageReceiver) { -diff -ur ./js/expire.js userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/0.15.0_0/js/expire.js ---- ./js/expire.js 2016-06-29 13:43:15.630344628 +0200 -+++ userdata/Default/Extensions/bikioccmkafdpakkkcpdbppfkghcmihk/0.15.0_0/js/expire.js2016-06-29 14:06:29.530300934 +0200 -@@ -1,6 +1,6 @@ - ;(function() { - 'use strict'; -- var BUILD_EXPIRATION = 0; -+ var BUILD_EXPIRATION = 1474492690000; - - window.extension = window.extension || {}; - -EOF -- -
The first part is changing the servers, and the second is updating -an expiration timestamp. This timestamp need to be updated regularly. -It is set 90 days in the future by the build process (Gruntfile.js). -The value is seconds since 1970 times 1000, as far as I can tell.
- -Based on a tip and good help from the #nuug IRC channel, I wrote a -script to launch Signal in Chromium.
- --#!/bin/sh -cd $(dirname $0) -mkdir -p userdata -exec chromium \ - --proxy-server="socks://localhost:9050" \ - --user-data-dir=`pwd`/userdata --load-and-launch-app=`pwd` -- -
The script start the app and configure Chromium to use the Tor -SOCKS5 proxy to make sure those controlling the Signal servers (today -Amazon and Whisper Systems) as well as those listening on the lines -will have a harder time location my laptop based on the Signal -connections if they use source IP address.
- -When the script starts, one need to follow the instructions under -"Standalone Registration" in the CONTRIBUTING.md file in the git -repository. I right clicked on the Signal window to get up the -Chromium debugging tool, visited the 'Console' tab and wrote -'extension.install("standalone")' on the console prompt to get the -registration form. Then I entered by land line phone number and -pressed 'Call'. 5 seconds later the phone rang and a robot voice -repeated the verification code three times. After entering the number -into the verification code field in the form, I could start using -Signal from my laptop. - -
As far as I can tell, The Signal app will leak who is talking to -whom and thus who know who to those controlling the central server, -but such leakage is hard to avoid with a centrally controlled server -setup. It is something to keep in mind when using Signal - the -content of your chats are harder to intercept, but the meta data -exposing your contact network is available to people you do not know. -So better than many options, but not great. And sadly the usage is -connected to my land line, thus allowing those controlling the server -to associate it to my home and person. I would prefer it if only -those I knew could tell who I was on Signal. There are options -avoiding such information leakage, but most of my friends are not -using them, so I am stuck with Signal for now.
+ +In my early years, I played +the epic game +Elite on my PC. I spent many months trading and fighting in +space, and reached the 'elite' fighting status before I moved on. The +original Elite game was available on Commodore 64 and the IBM PC +edition I played had a 64 KB executable. I am still impressed today +that the authors managed to squeeze both a 3D engine and details about +more than 2000 planet systems across 7 galaxies into a binary so +small.
+ +I have known about the free +software game Oolite inspired by Elite for a while, but did not +really have time to test it properly until a few days ago. It was +great to discover that my old knowledge about trading routes were +still valid. But my fighting and flying abilities were gone, so I had +to retrain to be able to dock on a space station. And I am still not +able to make much resistance when I am attacked by pirates, so I +bougth and mounted the most powerful laser in the rear to be able to +put up at least some resistance while fleeing for my life. :)
+ +When playing Elite in the late eighties, I had to discover +everything on my own, and I had long lists of prices seen on different +planets to be able to decide where to trade what. This time I had the +advantages of the +Elite wiki, +where information about each planet is easily available with common +price ranges and suggested trading routes. This improved my ability +to earn money and I have been able to earn enough to buy a lot of +useful equipent in a few days. I believe I originally played for +months before I could get a docking computer, while now I could get it +after less then a week.
+ +If you like science fiction and dreamed of a life as a vagabond in +space, you should try out Oolite. It is available for Linux, MacOSX +and Windows, and is included in Debian and derivatives since 2011.
+ +As usual, if you use Bitcoin and want to show your support of my +activities, please send Bitcoin donations to my address +15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b.
When I set out a few weeks ago to figure out -which -multimedia player in Debian claimed to support most file formats / -MIME types, I was a bit surprised how varied the sets of MIME types -the various players claimed support for. The range was from 55 to 130 -MIME types. I suspect most media formats are supported by all -players, but this is not really reflected in the MimeTypes values in -their desktop files. There are probably also some bogus MIME types -listed, but it is hard to identify which one this is.
- -Anyway, in the mean time I got in touch with upstream for some of -the players suggesting to add more MIME types to their desktop files, -and decided to spend some time myself improving the situation for my -favorite media player VLC. The fixes for VLC entered Debian unstable -yesterday. The complete list of MIME types can be seen on the -Multimedia -player MIME type support status Debian wiki page.
- -The new "best" multimedia player in Debian? It is VLC, followed by -totem, parole, kplayer, gnome-mpv, mpv, smplayer, mplayer-gui and -kmplayer. I am sure some of the other players desktop files support -several of the formats currently listed as working only with vlc, -toten and parole.
- -A sad observation is that only 14 MIME types are listed as -supported by all the tested multimedia players in Debian in their -desktop files: audio/mpeg, audio/vnd.rn-realaudio, audio/x-mpegurl, -audio/x-ms-wma, audio/x-scpls, audio/x-wav, video/mp4, video/mpeg, -video/quicktime, video/vnd.rn-realvideo, video/x-matroska, -video/x-ms-asf, video/x-ms-wmv and video/x-msvideo. Personally I find -it sad that video/ogg and video/webm is not supported by all the media -players in Debian. As far as I can tell, all of them can handle both -formats.
+ +Når jeg bruker Ghostery, +uBlock, +uMatrix, +ScriptSafe og andre +nettleserverktøy (de passer på hverandre) for å holde styr på hvordan +nettsteder sprer informasjon om hvilke nettsider jeg leser blir det +veldig synlig hvilke nettsteder som er satt opp til å utveksle +informasjon med utlandet og tredjeparter. For en stund siden la jeg +merke til at det virker å være avvik mellom personvernpolicy og +praksis endel steder, og tok tak i et par konkrete eksempler og sendte +spørsmål til Datatilsynets kontaktpunkt for veiledning:
+ ++ ++ +«Jeg har et spørsmål når det gjelder bruken av Google Analytics og +personvernpolicy. Er det lovlig for et nettsted å si en ting i +personvernpolicy og gjøre noe annet i virkeligheten? Spesifikt lurer +jeg på hvilket lov som er brutt hvis nettstedet i HTML-koden til +nettsidene ber lesernes nettleser om å kontakte Google Analytics og +slik overleverer sitt IP-nummer til Google, samtidig som +personvernpolicien hevder at Google Analytics kun får anonymiserte +data. Google får jo i slike tilfeller alltid overført fullt +IP-nummer, og nettstedet kan i URL-en som brukes be Google om å ikke +lagre deler av IP-adressen (omtalt som anonymisering av Google +Analytics)
+ +Et eksempel er Nettavisen digi.no. +Deres +personvernpolicy sier følgende:
+ ++ «Tredjeparter (som Google Analytics, Cxense, TNS Gallup) får kun + anonymiserte data.» ++ +Men når en leser artikler der så blir maskiner i Norge, USA, +Tyskland, Danmark, Storbritannia, Irland og Nederland varslet om +besøket og får dermed overlevert full IP-adresse, som datatilsynet har +uttalt er en personopplysning. Nettsidene er satt opp til be +nettleseren å kontakte 29 ulike maskiner rundt om i verden. Fire av +dem er er under DNS-domenene digi.no og tek.no som tilhører samme +eier. I tillegg ber nettsidene ikke +Google +Analytics om å fjerne siste oktett i IP-adressen ved lagring, +dvs. flagget «aip=1» er ikke satt i URL-en som brukes for å kontakte +Google Analytics.
+ +Tilsvarende er også tilfelle for andre nettsteder, så digi.no er +ikke spesiell i så måte (dagbladet.no er et annet eksempel, det +gjelder flere).»
+ +
Etter noen dager kunne juridisk rådgiver Elisabeth Krauss Amundsen +hos Datatilsynet fortelle det følgende:
+ ++«Hei, og takk for din e-post. + ++ + + +Vår svartjeneste gir deg kortfattet rådgivning. Vi vil derfor ikke konkludere +i saken din, men gi deg råd og veiledning.
+ +Ut ifra det du skriver er det antakelig flere bestemmelser i +personopplysingsloven som brytes dersom virksomhetens personvernpolicy +sier noe annet om behandlingen av personopplysninger enn det som +faktisk skjer. Antakelig vil det være et brudd på informasjonsplikten +i personopplysingsloven §§ 18 og +19<https://lovdata.no/dokument/NL/lov/2000-04-14-31/KAPITTEL_2#§18> +dersom det gis feilinformasjon om at opplysningene utleveres. Det kan +også stilles spørsmål om grunnkravene for behandling av +personopplysninger vil være oppfylt ved en utlevering av +personopplysninger til en tredjepart, dersom dette ikke er inkludert +behandlingsgrunnlaget og formålet med behandlingen, se +personopplysingsloven § 11, jf. +8.<https://lovdata.no/dokument/NL/lov/2000-04-14-31/KAPITTEL_2#§11>» +
Oppdatert med kunnskap om lover og regler tok jeg så kontakt med +Dagbladet på epostadressen de annonserer på sine +personvernpolicysider:
+ +
+ ++ +«Jeg lurte litt i forbindelse med en bloggpost jeg skriver på, og lurer +på om dere hjelpe meg med å finne ut av følgende. Først litt +bakgrunnsinformasjon. +Dagbladets +personvernpolicy forteller følgende:
+ +++ + +«3. Automatisk innhentet informasjon
+ +For eksempel IP-adressen din (ikke synlig for andre) samt + statistisk, automatisk produsert informasjon, som når du sist var + innlogget på tjenesten. Dette er informasjon vi samler for å gjøre + tjenesten best mulig.»
+ +Men når en besøker nettsidene til Dagbladet, +f.eks. forsiden, så er nettsidene +satt opp til å kontakte mange tredjeparter som slik får tilgang til +både fullt IP-nummer og i de fleste tilfeller nøyaktig hvilken +artikkel en leser hos Dagbladet ved at Referer-feltet fylles og legges +ved. Dette gjelder Google Analytics, Cxense, INS Gallup, Doubleclick +med flere. Totalt ber forsiden nettleseren om å koble seg opp til 60 +nettsteder med 149 separate oppkoblinger. I hver av disse +oppkoblingene oversendes IP-adressen til leseren, og i følge +Datatilsynet er +«en +IP-adresse definert som en personopplysning fordi den kan spores +tilbake til en bestemt maskinvare og dermed til en enkeltperson».
+ +Datatilsynet har fortalt meg at i følge personopplysingsloven §§ 18 +og 19 skal informasjonen som gis om bruk og utlevering av +personopplysninger være korrekt. De forteller videre at det er endel +grunnkrav som må være oppfylt ved utlevering av personopplysninger til +tredjeparter, nærmere forklart i personopplysingsloven § 11 som +henviser til § 8.
+ +Mitt spørsmål er dermed som følger:
+ ++ ++ +Hva mener dere i personpolicyen når dere skriver at IP-adressen ikke + er synlig for andre?»
+ +
Etter en uke har jeg fortsatt ikke fått svar fra Dagbladet på mitt +spørsmål, så neste steg er antagelig å høre om Datatilsynet er +interessert i å se på saken.
+ +Men Dagbladet er ikke det eneste nettstedet som forteller at de +ikke deler personopplysninger med andre mens observerbar praksis +dokumenterer noe annet. Jeg sendte derfor også et spørsmål til +kontaktadressen til nettavisen Digi.no, og der var responsen mye +bedre:
+ ++ ++ +«Jeg lurte på en ting i forbindelse med en bloggpost jeg skriver på, +og lurer på om dere hjelpe meg. Først litt bakgrunnsinformasjon. +Digi.nos +personvernpolicy forteller følgende:
+ ++ «All personlig informasjon blir lagret i våre systemer, disse er ikke + tilgjengelig for tredjeparter, og blir ikke lagret i + informasjonskapsler. Tredjeparter (som Google Analytics, Cxense, + TNS Gallup) får kun anonymiserte data.» ++ +Men når en besøker nettsidene til nettavisen, f.eks. +forsiden, så er nettsidene satt opp +til å kontakte mange tredjeparter som slik får tilgang til både fullt +IP-nummer og i de fleste tilfeller nøyaktig hvilken artikkel en leser +hos Digi.no ved at Referer-feltet fylles og legges ved. Dette gjelder +både Google Analytics, Cxense blant og INS Gallum. Totalt ber +forsiden nettleseren om å koble seg opp til 29 nettsteder med 44 +separate oppkoblinger. I hver av disse oppkoblingene sendes +IP-adressen til leseren over, og i følge Datatilsynet er +«en +IP-adresse definert som en personopplysning fordi den kan spores +tilbake til en bestemt maskinvare og dermed til en enkeltperson». +Det jeg ser virker ikke å være i tråd med personvernpolicyen.
+ +Når en besøker Digi.nos nettsider gjøres det to oppkoblinger til +Google Analytics, en for å hente ned programkoden som samler +informasjon fra nettleseren og sender over til Google (analytics.js), +og en for å overføre det som ble samlet inn. I den siste oppkoblingen +er det mulig å be Google om å ikke ta vare på hele IP-adressen, men i +stedet fjerne siste oktett i IP-adressen. Dette omtales ofte litt +misvisende for «anonymisert» bruk av Google Analytics, i og med at +fullt IP-nummer blir sendt til Google og det er opp til Google om de +vil bry seg om ønsket fra de som har laget nettsiden. Ut fra det som +står i personvernpolicyen ville jeg tro at Digi.no ba google om å ikke +ta vare på hele IP-nummeret, men når en ser på den andre oppkoblingen +kan en se at flagget «aio=1» ikke er satt, og at Digi.no ikke ber +Google om å la være å lagre hele IP-adressen. Dette virker heller +ikke å være i tråd med personvernpolicyen.
+ +Datatilsynet har fortalt meg at i følge personopplysingsloven §§ 18 +og 19 skal informasjonen som gis om bruk og utlevering av +personopplysninger være korrekt. De forteller videre at det er endel +grunnkrav som må være oppfylt ved utlevering av personopplysninger til +tredjeparter, nærmere forklart i personopplysingsloven § 11 som +henviser til § 8. Det er uklart for meg om disse kravene er oppfylt +når IP-adresse og informasjon om hvilke websider som besøkes til +tredjeparter.
+ +Mitt spørsmål er dermed som følger:
+ ++ ++ +Hva mener dere i personpolicyen når dere skriver at «Tredjeparter + får kun anonymiserte data»?»
+ +
Redaksjonssjef Kurt Lekanger svarte samme dag og forklarte at han +mÃ¥tte komme tilbake til meg nÃ¥r han hadde med utviklingsavdelingen. +Seks dager senere lurte jeg pÃ¥ hva han fant ut, og etter noen timer +fikk jeg sÃ¥ følgende svar fra direktøren for teknologi og +forretningsutvikling Ãystein W. Høie i Teknisk Ukeblad Media:
+ ++ ++ +«Takk for godt tips! Det er helt riktig at IP og referrer-adresse +potensielt kan leses ut av tredjepart.
+ +Retningslinjene våre har vært uklare på dette tidspunktet, og vi +oppdaterer nå disse så dette kommer tydeligere frem. Ny tekst blir som +følger:
+ +
+3. Dette bruker vi ikke informasjonen til Informasjon du oppgir til +oss blir lagret i våre systemer, er ikke tilgjengelig for +tredjeparter, og blir ikke lagret i informasjonskapsler. +Informasjonen vil kun benyttes til å gi deg som bruker mer relevant +informasjon og bedre tjenester.
+ +Tredjeparter (som Google Analytics, Cxense, TNS Gallup) vil kunne +hente ut IP-adresse og data basert på dine surfemønstre. TU Media AS +er pliktig å påse at disse tredjepartene behandler data i tråd med +norsk regelverk.
+
+ +Ellers har vi nå aktivert anonymisering i Google Analytics +(aip=1). Kan også nevne at Tek.no-brukere som har kjøpt Tek Ekstra har +mulighet til å skru av all tracking i kontrollpanelet sitt. Dette er +noe vi vurderer å rulle ut på alle sidene i vårt nettverk.»
+ +
Det var nyttig å vite at vi er enige om at formuleringen i +personvernpolicyen er misvisende. Derimot var det nedslående at i +stedet for å endre praksis for å følge det personvernpolicyen sier om +å ikke dele personinformasjon med tredjeparter, så velger Digi.no å +fortsette praksis og i stedet endre personvernpolicyen slik at den å +dokumentere dagens praksis med spredning av personopplysninger.
+ +Med bakgrunn i at Digi.no ikke har fulgt sin egen personvernpolicy +spurte jeg hvordan Digi.no kom til å håndtere endringen:
+ ++ ++ +«Tusen takk for beskjed om endring av personvernpolicy for digi.no. +Gjelder endringen også andre nettsteder?
+ +Vil tidligere håndteringen av IP-adresser og lesemønster i strid +med dokumentert personvernpolicy bli varslet til Datatilsynet i tråd +med +personopplysningsforskriften +§ 2-6? Vil leserne bli varslet på en prominent og synlig måte om +at lesernes IP-adresser og lesemønster har vært utlevert til +tredjeparter i stid med tidligere formulering om at tredjeparter kun +får anonymiserte data, og at utleveringen fortsetter etter at +personvernpolicy er endret for å dokumentere praksis?
+ +Appropos ekstra tilbud til betalende lesere, tilbyr dere en +mulighet for å betale for å lese som ikke innebærer at en må gjøre det +mulig å la sine lesevaner blir registeret av tek.no? Betaler gjerne +for å lese nyheter, men ikke med en bit av privatlivet mitt. :)»
+
Jeg fikk raskt svar tilbake fra direktøren Høie:
+ +++ +«Tydeliggjøringen i personvernpolicy gjelder alle våre nettsteder.
+ +Vi kommer til å ta en runde og gå over vår policy i forbindelse med +dette, og vil i de tilfeller det er påkrevd selvsagt være tydelig +overfor brukere og tilsyn. Vil samtidig understreke at vår bruk av +tredjeparts analyseverktøy og annonsetracking er helt på linje med det +som er normalt for norske kommersielle nettsteder.
+ +Angående spørsmålet ditt: +
+
Du vil fortsatt vises i våre interne systemer om du blir Ekstra-bruker, +vi skrur bare av tredjeparts tracking.»
Det høres jo ikke bra ut at det er normalt for norske kommersielle +nettsteder å utlevere lesernes personopplysninger til utlandet. Men +som en kan lese fra gårdagens oppslag fra NRK gjelder +det også norske kommuner og andre offentlige aktører, og +jeg +skrev om omfanget av problemet i fjor. Det er uansett ikke en +praksis jeg tror er i tråd med kravene i personopplysningsloven, og +heller ikke en praksis jeg som leser synes er greit. Jeg manglet dog +fortsatt svar på om Digi.no kom til å varsle lesere og Datatilsynet om +avviket mellom praksis og policy, så jeg forsøkte meg med en ny epost +i går kveld:
+ ++ ++ +«Kan du fortelle meg om dere anser det å være påkrevd å varsle +tilsyn og brukere nå, når dere har oppdaget at praksis ikke har vært i +tråd med personvernpolicy?»
+ +
Det spørsmålet vet jeg så langt ikke svaret på, men antagelig kan +Datatilsynet svare på om det er påkrevd å varsle tilsyn og lesere om +dette. Jeg planlegger å oppdatere denne bloggposten med svaret når +det kommer.
+ +Jeg synes jo det er spesielt ille når barn får sine +personopplysninger spredt til utlandet, noe jeg +tok +opp med NRK i fjor. De to eksemplene jeg nevner er som dere +forstår ikke unike, men jeg har ikke full oversikt over hvor mange +nettsteder dette gjelder. Jeg har ikke kapasitet til eller glede av å +lese alle personvernpolicyer i landet. Kanskje mine lesere kan sende +meg tips på epost om andre nettsteder med avvik mellom policy og +praksis? Hvis vi alle går sammen og kontakter de ansvarlige, kanskje +noen til slutt endrer praksis og slutter å dele lesernes +personopplysninger med tredjeparter?
+ +Apropos bruken av Google Analytics kan jeg forresten nevne at +Universitetet i Oslo også har tatt i bruk Google Analytics, men der +lagres programkoden som overføres til nettleserne lokalt og deler av +IP-adressen fjernes lokalt på universitetet via en mellomtjener/proxy +(tilgjengelig via +github) før informasjon sendes over til Google Analytics. Dermed +er det mulig for ansvarlige for nettstedet å vite at Google +ikke har tilgang til komplett IP-adresse. à rsaken til at denne +metoden brukes er at juristene ved universitetet har konkludert med at +det er eneste måten en kunne vurdere å bruke Google Analytics uten å +bryte loven. Risikoen for gjenidentifisering og +identifisering ved hjelp av +nettleserinformasjon er fortsatt tilstede, så det er ingen optimal +løsning, men det er bedre enn å håpe at f.eks. Google og alle som +lytter på veien skal prioritere norsk lov over sin lokale +lovgivning.
+ +Oppdatering 2016-12-09: Fikk svar fra direktøren Høie på mitt +spørsmål litt etter at jeg hadde publisert denne artikkelen:
+ ++ ++ +Vi kommer til å annonsere en oppdatert policy, og skal undersøke om +vi er pliktig å varsle Datatilsynet.
+ +Det vi uansett ønsker å gjøre først, er å gå gjennom hele policy +sammen med utviklerne og advokat, så vi er sikre på at vi går frem +riktig og at det ikke er flere tvetydigheter som skjuler seg i +teksten.
+ +Har du andre idéer eller konkrete innspill til hva som kan gjøre +policy tydeligere, tar vi gjerne imot det. Dette er et felt vi ønsker +å være ryddige på.
+ +
Vi får se om de liker mine innspill, som i grunnen er å ikke pusse +på personvernpolicyen men i stedet slutte å spre lesernes +personopplysninger til eksterne aktører.
Many years ago, when koffice was fresh and with few users, I -decided to test its presentation tool when making the slides for a -talk I was giving for NUUG on Japhar, a free Java virtual machine. I -wrote the first draft of the slides, saved the result and went to bed -the day before I would give the talk. The next day I took a plane to -the location where the meeting should take place, and on the plane I -started up koffice again to polish the talk a bit, only to discover -that kpresenter refused to load its own data file. I cursed a bit and -started making the slides again from memory, to have something to -present when I arrived. I tested that the saved files could be -loaded, and the day seemed to be rescued. I continued to polish the -slides until I suddenly discovered that the saved file could no longer -be loaded into kpresenter. In the end I had to rewrite the slides -three times, condensing the content until the talk became shorter and -shorter. After the talk I was able to pinpoint the problem – -kpresenter wrote inline images in a way itself could not understand. -Eventually that bug was fixed and kpresenter ended up being a great -program to make slides. The point I'm trying to make is that we -expect a program to be able to load its own data files, and it is -embarrassing to its developers if it can't.
- -Did you ever experience a program failing to load its own data -files from the desktop file browser? It is not a uncommon problem. A -while back I discovered that the screencast recorder -gtk-recordmydesktop would save an Ogg Theora video file the KDE file -browser would refuse to open. No video player claimed to understand -such file. I tracked down the cause being file --mime-type -returning the application/ogg MIME type, which no video player I had -installed listed as a MIME type they would understand. I asked for -file to change its -behavour and use the MIME type video/ogg instead. I also asked -several video players to add video/ogg to their desktop files, to give -the file browser an idea what to do about Ogg Theora files. After a -while, the desktop file browsers in Debian started to handle the -output from gtk-recordmydesktop properly.
- -But history repeats itself. A few days ago I tested the music -system Rosegarden again, and I discovered that the KDE and xfce file -browsers did not know what to do with the Rosegarden project files -(*.rg). I've reported the -rosegarden problem to BTS and a fix is commited to git and will be -included in the next upload. To increase the chance of me remembering -how to fix the problem next time some program fail to load its files -from the file browser, here are some notes on how to fix it.
- -The file browsers in Debian in general operates on MIME types. -There are two sources for the MIME type of a given file. The output from -file --mime-type mentioned above, and the content of the -shared MIME type registry (under /usr/share/mime/). The file MIME -type is mapped to programs supporting the MIME type, and this -information is collected from -the -desktop files available in /usr/share/applications/. If there is -one desktop file claiming support for the MIME type of the file, it is -activated when asking to open a given file. If there are more, one -can normally select which one to use by right-clicking on the file and -selecting the wanted one using 'Open with' or similar. In general -this work well. But it depend on each program picking a good MIME -type (preferably -a -MIME type registered with IANA), file and/or the shared MIME -registry recognizing the file and the desktop file to list the MIME -type in its list of supported MIME types.
- -The /usr/share/mime/packages/rosegarden.xml entry for -the -Shared MIME database look like this:
- -- --<?xml version="1.0" encoding="UTF-8"?> -<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"> - <mime-type type="audio/x-rosegarden"> - <sub-class-of type="application/x-gzip"/> - <comment>Rosegarden project file</comment> - <glob pattern="*.rg"/> - </mime-type> -</mime-info> -
This states that audio/x-rosegarden is a kind of application/x-gzip -(it is a gzipped XML file). Note, it is much better to use an -official MIME type registered with IANA than it is to make up ones own -unofficial ones like the x-rosegarden type used by rosegarden.
- -The desktop file of the rosegarden program failed to list -audio/x-rosegarden in its list of supported MIME types, causing the -file browsers to have no idea what to do with *.rg files:
- -- --% grep Mime /usr/share/applications/rosegarden.desktop -MimeType=audio/x-rosegarden-composition;audio/x-rosegarden-device;audio/x-rosegarden-project;audio/x-rosegarden-template;audio/midi; -X-KDE-NativeMimeType=audio/x-rosegarden-composition -% -
The fix was to add "audio/x-rosegarden;" at the end of the -MimeType= line.
- -If you run into a file which fail to open the correct program when -selected from the file browser, please check out the output from -file --mime-type for the file, ensure the file ending and -MIME type is registered somewhere under /usr/share/mime/ and check -that some desktop file under /usr/share/applications/ is claiming -support for this MIME type. If not, please report a bug to have it -fixed. :)
+ +Jeg er mer en gjennomsnittlig interessert i fri programvare og fri +kultur, og nå når et nytt år nærmer seg slutten tenkte jeg det var på +tide med et lite tilbakeblikk på årene som var. Jeg har vært +involvert i flere prosjekter og løsninger, og her er en liten +gjennomgang av de jeg kom på i farten.
+ +Den største nyheten for meg fra 2015 var at jeg endelig, etter 2.5 +år med flekkvis innsats, fikk gitt ut en bokmålsutgave av den +klassiske boken Free Culture av +Lawrence Lessig. Boken forteller om bakgrunnen for fri +kultur-bevegelsen, beskriver problemer med dagens opphavsrett og +skisserer hvordan vi kan bøte på problemene både individuelt og som +samfunn. Jeg anbefaler alle å lese denne boken, som jeg med god hjelp +har gitt ut på engelsk, bokmål og fransk. Papirboken kan bestilles i +nettbokhandler i USA som Lulu +(Norsk, +Fransk, +Engelsk), +Amazon og Barnes & Noble takket være selvpubliseringsløsningen +lulu.com og +ebokutgave +samt alt som trengs for å oppdatere boken er tilgjengelig fra +github.
+ +Et annet prosjekt jeg er veldig fornøyd med å ha deltatt i +lanseringen av, er Mimes +brønn, NUUG-tjenesten for å gjøre det enklere å be om innsyn i +offentlig forvaltning, og spare offentlig forvaltning for å måtte +besvare de samme innsynshenvendelsene gang på gang. Etter bare noen +måneders drift førte +en +henvendelse via tjenesten til +spørsmål +fra Stortinget til regjeringen. I dette og andre tilfeller har +NUUG finansiert utvidet klagesak for henvendelser som vi som står bak +tjenesten synes fortjener ekstra oppmerksomhet. Så langt har en liten +håndfull slike klagesaker blitt sendt til Sivilombudsmannen, der vi +fikk medhold i en saken (om .bv omtalt over) og avslag i en annen +(oppsummering fra møte i Pentagon om Internet-styring og nasjonal +sikkerhet).
+ +Etter at jeg i lengre tid har manglet GPG-nøkkel registrert i +Debian (den opprinnelige ble fjernet på grunn av for kort +nøkkellengde) fikk jeg endelig fikset ny nøkkel og Debiantilgang i +slutten av 2015. Aktiviteten i Debian har ikke vært spesielt +skadelidende mens jeg manglet nøkkel (kjenner flere som er villig til +å laste opp på mine vegne), men da nøkkelen var på plass steg +motivasjonen og jeg har blant anne brukt tiden på å bidra til at +pakker relatert til lyd- og videokodekene fra +Xiph.org-stiftelsen (dvs. Ogg, +Vorbis, Theora, Opus, etc) er i bedre stand i Debian, og har bidratt +til å få liv i gruppen som vedlikeholder Xiph-relaterte slik at dette +forhåpentligvis skal fungere bedre også i fremtiden. Jeg har jobbet +litt mer systemene Isenkram og appstream, som gjør det enklere å +håndtere ulike dongler i Debian ved at systemet selv vet og foreslår +hvilke pakker som bør installeres for å få dongler til å fungere. Har +også fått inn eller hjulpet til å få inn endel nye programpakker, +spesielt fornøyd med +Sonic Pi, +OpenALPR og +Coz. + + +
Et Debian-relatert prosjekt jeg følger er +FreedomBox, som tar sikte på +å tilby en løsning (både programvare og maskinvare) der hvem som helst +kan beholde sin private informasjon hjemme hos seg selv i stedet for å +dele den med skytjenesteleverandører som Google, Facebook, Twitter, +Appear.in med flere. I tillegg til generell deltagelse i utvikling av +prosjektet har jeg jobbet med å få alle Debian-pakkene som brukes av +Freedombox "reproduserbare" i Debian, dvs. gjøre det mulig å sjekke at +pakken som brukes i Freedombox ikke inneholder annet enn det som +kommer fra kildekodepakken i Debian og gir et forutsigbart resultat +ved bygging. Har også fulgt opp endel feilrapporter relatert til +Freedombox-spesifikke pakker (som Plinth og freedombox-setup) og +pakker som utgjør tjenestene i en Freedombox.
+ +I samarbeid med Skolelinuxprosjektet og foreningen NUUG har jeg +vært med å arrangere flere utviklersamlinger både i 2015 og 2016. Der +har oversettere og utviklere blitt lært opp og arbeidet med blant +annet dokumentasjon, feilfiksing og utvikling av Skolelinux og +Frikanalen. Relatert til dette arbeidet har jeg koordinert norsk +oversettelse av Håndbok for +Debian-administratorer til bokmål, og flyttet +oversetterarbeidet +av Skolelinux-håndboken fra Transifex til Weblate. Begge bøkene +er snart klare for første gangs korrekturlesing og vi drømmer om å +gjøre dem tilgjengelig på papir.
+ +Gjennom hele perioden har jeg holdt et lite øye med NUUG-prosjektet +FiksGataMi, som stort sett går av seg selv uten manuelt vedlikehold, +men av og til er det problemer med enkelte mottakere (eposter i +retur). NUUG-drift oppgraderte tjenesten i løpet av 2016, og jeg +bisto Marius Halden litt i forbindelse med dette. Tjenesten får +stadig flere brukere, og flere kommuner har tatt kontakt for å lære +mer om hvordan FiksGataMi fungerer. + +
Den åpne TV-kanalen +Frikanalen har fått en god del +av min oppmerksomhet. Den var i starten av 2015 tilgjengelig på +RiksTV kanal 50, web. Kanalen har fått et REST-basert API, og dette +har jeg tatt i bruk for å fylle sendeplanen med NUUG-, TED- og +Debian-foredrag samt andre tekniske presentasjoner. Har lastet opp +mye nytt der og strømlinjeformet prosessen slik at både nye TED- og +NUUG-foredrag går veldig greit. På høsten tok jeg en titt på +multikast-spredning av kanalen til Uninett, og dette er nå kommet på +plass, slik at alle TV-er som bruker Uninetts TV-løsning nå kan se på +Frikanalen. Det jobbes for tiden med å få distribusjon på Altibox, og +dette håper vi skal være klart i starten av 2017.
+ +Relatert til Frikanalen har jeg i lengre tid +forsøkt å +få klarhet i hva som er juridisk status for H.264 i Norge. Det er +fortsatt uklart for meg om Frikanalen må betale for retten til å +kringkaste eller ikke, og om vi risikerer å bryte opphavsrettsvilkår +ved å kringkaste på web med H.264. Har spurt ulike aktører for å +forsøke å finne ut hvordan de har vurdert situasjonen, uten å bli +klok.
+ +Et prosjekt som var morsomt å se ta form var Ole Aamots +dokumentarprosjekt +om fri programvare i Norge. Han fikk intervjuet en god del av de +mest aktive folkene i Norge, og resultatet ble interessant og +severdig. Et nærmere prosjekt er NUUGs samarbeide med Oslo +dokumentarfilmfestival om visningen av Citizenfour, der NUUG tok opp +samtalen i forbindelse med visningen og publiserte opptaket på +Frikanalen. Jeg er veldig fornøyd med å ha lyktes med å få dette på +plass, selv om jeg ikke rakk å være med på visningen selv. Et annet +NUUG-foredrag jeg er spesielt fornøyd med å ha fått på plass er +besøket fra Bradley Kuhn fra Software Freedom Conservancy. Det tok +mange måneder å organisere i samarbeid med BLUG, men til slutt klarte +vi å finne et tidspunkt som passet alle, slik at han kunne besøke Oslo +og Bergen. Opptaket fra dette er også publisert på Frikanalen. +Generelt har jeg veldig fornøyd med at Frikanalen nå i praksis er +Tekno-TV med interessante faktaprogram og presentasjoner nesten hele +døgnet, hele uka.
+ +Vi har i lengre tid forsøkt å få opp et Mesh-nett i Oslo, under +navnet dugnadsnett.no, uten at vi så langt har klart å nå kritisk +masse. Tanken er å gjøre det mulig å kommunisere direkte mellom +likeverdige parter uten sentrale knutepunkt som enkelt kan avlyttes. +Prosjektet er ikke dødt, men interessen blant oss som er med har ikke +vært stor nok til å kunne prioritere dette over alt annet.
+ +En ting som har tatt prioritet for min del er NUUG og EFNs forsøk +pÃ¥ Ã¥ fÃ¥ domstolvurdering av om det er greit for politiet Ã¥ overta et +DNS-domene uten domstolvurdering. Bakgrunnen er at Ãkokrim tok beslag +i popcorn-time.no i mars 2016, med pÃ¥stand om at nettstedet bidro til +opphavsrettsbrudd ved Ã¥ omtale fri programvareløsningen Popcorn Time +og lenke til nettsteder der det var lenker til nettsteder der en kunne +laste ned Popcorn Time. For det første mener vi at domstolene bør +involveres før DNS-domener tas fra sine eiere, og for det andre mener +vi begrunnelsen er sÃ¥ søkt at domenet ikke burde beslaglegges i første +omgang. NUUG og EFN forsøkte først Ã¥ protestere pÃ¥ egne vegne men ble +avvist av domstolene med at vi ikke hadde rettslig interesse. Mens +dette pÃ¥gikk lyktes vi Ã¥ fÃ¥ kontakt med registrar og regnskapsfører +som fikk ble raidet av seks stykker fra Ãkokrim, og i gjeldende runde +er det registrar og regnskapsfører som protesterer med støtte fra NUUG +og EFN. Advokattimene renner ut og vi hÃ¥per vi holder ut til saken +har fÃ¥tt prøvd saken.
+ +Et annet prosjekt, relatert til fri kultur og åndsverksvern, som +jeg har brukt endel tid på er å maskinelt kunne identifisere verk som +er falt i det fri i Norge. Jeg ønsker å vite hvor mange kunstuttrykk +som blir røvet fra fellesskapet hver gang vernetiden i åndsverksloven +blir utvidet, f.eks. nå sist når vernetiden for musikk ble utvidet med +20 år fra 50 til 70 år med tilbakevirkende kraft, som om de som laget +musikk for 60 år siden skulle bli mer motivert til å lage musikk av +utvidet vernetid. Har sett på å kombinere informasjon fra +Nasjonalbiblioteket, Deichmanske bibliotek, Wikipedia, Store Norske +Leksikon og WorldCat, og gleder meg til Nasjonalbibliotekets initiativ +for autorativ database over verk tar form.
+ +Dårlig konkurranse på drivstoffmarkedet har irritert meg en stund, +og jeg laget for flere år siden en skraper som samlet inn prisdata fra +ulike kilder. Jeg ble derfor veldig glad da en økonomistudent tok +kontakt i starten av 2015 og lurte på om jeg kunne bidra med data til +hans masteroppgave om konkurransevilkårene i drivstoffmarkedet. Jeg +bidro med glede, og resultatet er publisert +i fulltekst som "Hemmeligheten bak bensinprisen : en empirisk analyse +av pumpeprisens drivkrefter" på BIBSYS Brage.
+ +I tilegg til det jeg har gjort her har jeg rapportert og fikset en +rekke små og store feil i fri programvare, og hjulpet +Debian-bidragsytere og upstream-utviklerne med å forbedre forskjellig +fri programvare og få det inn i Debian.
+ +Mye av det jeg har fått gjort rundt fri programvare og fri kultur +har vært mulig takket være at jeg får dekket 20% av arbeidstiden min +på Universitetet i Oslo fra +NUUG Foundation for å jobbe +med og koordinere fri programvareaktiviteter. Jeg er svært takknemlig +til dem og min arbeidsgiver USIT for at jeg har fått muligheten. Uten +dette hadde jeg ikke rukket over like mye etter hvert som ungene ble +større.
A little more than 11 years ago, one of the creators of Tor, and -the current President of the Tor -project, Roger Dingledine, gave a talk for the members of the -Norwegian Unix User group (NUUG). A -video of the talk was recorded, and today, thanks to the great help -from David Noble, I finally was able to publish the video of the talk -on Frikanalen, the Norwegian open channel TV station where NUUG -currently publishes its talks. You can -watch the live stream using a web -browser with WebM support, or check out the recording on the video -on demand page for the talk -"Tor: Anonymous -communication for the US Department of Defence...and you.".
- -Here is the video included for those of you using browsers with -HTML video and Ogg Theora support:
- - - -I guess the gist of the talk can be summarised quite simply: If you -want to help the military in USA (and everyone else), use Tor. :)
+ +For +fire og et halvt år siden lot jeg meg overraske over at Ruters +billettautomater for kollektivtrafikken i Oslo kjørte +Windows 2000 +Professional, et og et halvt år etter at Microsoft hadde gitt +beskjed om at det ikke lenger kom sikkerhetsoppdateringer til +systemet. Støtten fra Microsoft +tok +slutt 2010-07-13 i følge Wikipedia og Microsoft selv.
+ +For fem dager siden passerte jeg på nytt en slik billettautomat som +hadde brutt sammen, og den annonserte fortsatt at den kjører Windows +2000 Professional, nå mer enn seks år siden Microsoft sluttet å komme +med sikkerhetspatcher til produktet. Sikret meg et bilde av +krasjmeldingen på skjermen. + +
+ +Mon tro om de mangler kildekoden til systemet som kjører på +automaten, og dermed ikke uten videre kan oppgradere?
+ +Jeg ser jo fra +en +innsynshenvendelse om kildekoden til billett-Appen til Ruter på Mimes +brønn at Ruter tilsynelatende ikke legger sikkerheten i +sertifikater, nøkler og passord, men i stedet baserer seg på at +logikken i programvaren holdes hemmelig. Det borger ikke godt for +sikkerheten i Ruters datasystemer. + +
Det er nå tre og et halvt år siden +Ruter +fortalte Aftenposten at nye automater ble minst seks måneder +forsinket, da leverandøren ikke hadde god nok kontroll. Det kan +virke som om leverandøren ikke er alene om å ikke ha god nok +kontroll.
+ +Bildet er tilgjengelig for bruk med bruksvilkårene til +Creative +Commons Navngivelse 3.0 Norge (CC BY 3.0).
+ +Oppdatering 2016-12-01: Saken har fått omtale på +digi.no +og +NRK +Beta.
The isenkram -system is a user-focused solution in Debian for handling hardware -related packages. The idea is to have a database of mappings between -hardware and packages, and pop up a dialog suggesting for the user to -install the packages to use a given hardware dongle. Some use cases -are when you insert a Yubikey, it proposes to install the software -needed to control it; when you insert a braille reader list it -proposes to install the packages needed to send text to the reader; -and when you insert a ColorHug screen calibrator it suggests to -install the driver for it. The system work well, and even have a few -command line tools to install firmware packages and packages for the -hardware already in the machine (as opposed to hotpluggable hardware).
- -The system was initially written using aptdaemon, because I found -good documentation and example code on how to use it. But aptdaemon -is going away and is generally being replaced by -PackageKit, -so Isenkram needed a rewrite. And today, thanks to the great patch -from my college Sunil Mohan Adapa in the FreedomBox project, the -rewrite finally took place. I've just uploaded a new version of -Isenkram into Debian Unstable with the patch included, and the default -for the background daemon is now to use PackageKit. To check it out, -install the isenkram package and insert some hardware dongle -and see if it is recognised.
- -If you want to know what kind of packages isenkram would propose for -the machine it is running on, you can check out the isenkram-lookup -program. This is what it look like on a Thinkpad X230:
- -- --% isenkram-lookup -bluez -cheese -fprintd -fprintd-demo -gkrellm-thinkbat -hdapsd -libpam-fprintd -pidgin-blinklight -thinkfan -tleds -tp-smapi-dkms -tp-smapi-source -tpb -%p -
The hardware mappings come from several places. The preferred way -is for packages to announce their hardware support using -the -cross distribution appstream system. -See -previous -blog posts about isenkram to learn how to do that.
+ +Two years ago, I did some experiments with eatmydata and the Debian +installation system, observing how using +eatmydata +could speed up the installation quite a bit. My testing measured +speedup around 20-40 percent for Debian Edu, where we install around +1000 packages from within the installer. The eatmydata package +provide a way to disable/delay file system flushing. This is a bit +risky in the general case, as files that should be stored on disk will +stay only in memory a bit longer than expected, causing problems if a +machine crashes at an inconvenient time. But for an installation, if +the machine crashes during installation the process is normally +restarted, and avoiding disk operations as much as possible to speed +up the process make perfect sense. + +
I added code in the Debian Edu specific installation code to enable +eatmydata, +but did not have time to push it any further. But a few months ago I +picked it up again and worked with the libeatmydata package maintainer +Mattia Rizzolo to make it easier for everyone to get this installation +speedup in Debian. Thanks to our cooperation There is now an +eatmydata-udeb package in Debian testing and unstable, and simply +enabling/installing it in debian-installer (d-i) is enough to get the +quicker installations. It can be enabled using preseeding. The +following untested kernel argument should do the trick:
+ ++ ++preseed/early_command="anna-install eatmydata-udeb" +
This should ask d-i to install the package inside the d-i +environment early in the installation sequence. Having it installed +in d-i in turn will make sure the relevant scripts are called just +after debootstrap filled /target/ with the freshly installed Debian +system to configure apt to run dpkg with eatmydata. This is enough to +speed up the installation process. There is a proposal to +extend the idea a bit further +by using /etc/ld.so.preload instead of apt.conf, but I have not +tested its impact.
+Yesterday I updated the -battery-stats -package in Debian with a few patches sent to me by skilled and -enterprising users. There were some nice user and visible changes. -First of all, both desktop menu entries now work. A design flaw in -one of the script made the history graph fail to show up (its PNG was -dumped in ~/.xsession-errors) if no controlling TTY was available. -The script worked when called from the command line, but not when -called from the desktop menu. I changed this to look for a DISPLAY -variable or a TTY before deciding where to draw the graph, and now the -graph window pop up as expected.
- -The next new feature is a discharge rate estimator in one of the -graphs (the one showing the last few hours). New is also the user of -colours showing charging in blue and discharge in red. The percentages -of this graph is relative to last full charge, not battery design -capacity.
- -The other graph show the entire history of the collected battery -statistics, comparing it to the design capacity of the battery to -visualise how the battery life time get shorter over time. The red -line in this graph is what the previous graph considers 100 percent: - -
In this graph you can see that I only charge the battery to 80 -percent of last full capacity, and how the capacity of the battery is -shrinking. :(
- -The last new feature is in the collector, which now will handle -more hardware models. On some hardware, Linux power supply -information is stored in /sys/class/power_supply/ACAD/, while the -collector previously only looked in /sys/class/power_supply/AC/. Now -both are checked to figure if there is power connected to the -machine.
- -If you are interested in how your laptop battery is doing, please -check out the -battery-stats -in Debian unstable, or rebuild it on Jessie to get it working on -Debian stable. :) The upstream source is available from github. -Patches are very welcome.
- -As usual, if you use Bitcoin and want to show your support of my -activities, please send Bitcoin donations to my address -15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b.
+ +I Norge er det mange som trenger å skrive både bokmål og nynorsk. +Eksamensoppgaver, offentlige brev og nyheter er eksempler på tekster +der det er krav om skriftspråk. I tillegg til alle skoleoppgavene som +elever over det ganske land skal levere inn hvert år. Det mange ikke +vet er at selv om de kommersielle alternativene +Google Translate og +Bing Translator ikke kan +bidra med å oversette mellom bokmål og nynorsk, så finnes det et +utmerket fri programvarealternativ som kan. Oversetterverktøyet +Apertium har støtte for en rekke språkkombinasjoner, og takket være +den utrettelige innsatsen til blant annet Kevin Brubeck Unhammer, kan +en bruke webtjenesten til å fylle inn en tekst på bokmål eller +nynorsk, og få den automatoversatt til det andre skriftspråket. +Resultatet er ikke perfekt, men et svært godt utgangspunkt. Av og til +er resultatet så bra at det kan benyttes uten endringer. Jeg vet +f.eks. at store deler av Joomla ble oversatt til nynorsk ved hjelp +Apertium. Høres det ut som noe du kan ha bruk for? Besøk i så fall +Apertium.org og fyll inn +teksten din i webskjemaet der. + +
Hvis du trenger maskinell tilgang til den bakenforliggende +teknologien kan du enten installere pakken +apertium-nno-nob +på en Debian-maskin eller bruke web-API-et tilgjengelig fra +api.apertium.org. Se +API-dokumentasjonen +for detaljer om web-API-et. Her kan du se hvordan resultatet blir for +denne teksten som ble skrevet på bokmål over maskinoversatt til +nynorsk.
+ ++ +
I Noreg er det mange som treng å skriva både bokmål og nynorsk. +Eksamensoppgåver, offentlege brev og nyhende er døme på tekster der +det er krav om skriftspråk. I tillegg til alle skuleoppgåvene som +elevar over det ganske land skal levera inn kvart år. Det mange ikkje +veit er at sjølv om dei kommersielle alternativa +Google *Translate og +Bing *Translator ikkje +kan bidra med å omsetja mellom bokmål og nynorsk, så finst det eit +utmerka fri programvarealternativ som kan. Omsetjarverktøyet +*Apertium har støtte for ei rekkje språkkombinasjonar, og takka vera +den utrøyttelege innsatsen til blant anna Kevin Brubeck Unhammer, kan +ein bruka *webtjenesten til å fylla inn ei tekst på bokmål eller +nynorsk, og få den *automatoversatt til det andre skriftspråket. +Resultatet er ikkje perfekt, men eit svært godt utgangspunkt. Av og +til er resultatet så bra at det kan nyttast utan endringar. Eg veit +t.d. at store delar av *Joomla vart omsett til nynorsk ved hjelp +*Apertium. Høyrast det ut som noko du kan ha bruk for? Besøk i så +fall *Apertium.org og fyll inn +teksta di i *webskjemaet der. + +
Viss du treng *maskinell tilgjenge til den *bakenforliggende +teknologien kan du anten installera pakken +*apertium-*nno-*nob +på ein *Debian-maskin eller bruka *web-*API-eit tilgjengeleg frå +*api.*apertium.org. Sjå +*API-dokumentasjonen +for detaljar om *web-*API-eit. Her kan du sjå korleis resultatet vert +for denne teksta som vart skreva på bokmål over *maskinoversatt til +nynorsk.
Archive
-
+
- 2017
+
-
+
+
- January (2) + +
+
- 2016
-
@@ -732,7 +1332,15 @@ activities, please send Bitcoin donations to my address
- July (2) -
- August (3) +
- August (5) + +
- September (2) + +
- October (3) + +
- November (8) + +
- December (5)
@@ -971,25 +1579,25 @@ activities, please send Bitcoin donations to my address
- chrpath (2) -
- debian (133) +
- debian (145) -
- debian edu (157) +
- debian edu (158)
- digistan (10) -
- dld (15) +
- dld (16)
- docbook (23)
- drivstoffpriser (4) -
- english (325) +
- english (337)
- fiksgatami (23)
- fildeling (12) -
- freeculture (28) +
- freeculture (29)
- freedombox (9) @@ -999,9 +1607,9 @@ activities, please send Bitcoin donations to my address
- intervju (42) -
- isenkram (12) +
- isenkram (15) -
- kart (19) +
- kart (20)
- ldap (9) @@ -1015,19 +1623,19 @@ activities, please send Bitcoin donations to my address
- multimedia (39) -
- nice free software (7) +
- nice free software (9) -
- norsk (276) +
- norsk (285) -
- nuug (182) +
- nuug (183)
- offentlig innsyn (26)
- open311 (2) -
- opphavsrett (61) +
- opphavsrett (62) -
- personvern (92) +
- personvern (97)
- raid (1) @@ -1037,27 +1645,27 @@ activities, please send Bitcoin donations to my address
- rfid (3) -
- robot (9) +
- robot (10)
- rss (1) -
- ruter (4) +
- ruter (5)
- scraperwiki (2) -
- sikkerhet (48) +
- sikkerhet (52)
- sitesummary (4)
- skepsis (5) -
- standard (49) +
- standard (50) -
- stavekontroll (4) +
- stavekontroll (5) -
- stortinget (10) +
- stortinget (11) -
- surveillance (37) +
- surveillance (45)
- sysadmin (2) @@ -1069,7 +1677,7 @@ activities, please send Bitcoin donations to my address
- vitenskap (4) -
- web (38) +
- web (39)