]> pere.pagekite.me Git - homepage.git/blob - blog/index.html
Generated.
[homepage.git] / blog / index.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen</title>
7 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/vim.css" />
9 <link rel="alternate" title="RSS Feed" href="http://people.skolelinux.org/pere/blog/index.rss" type="application/rss+xml" />
10 </head>
11 <body>
12 <div class="title">
13 <h1>
14 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
15
16 </h1>
17
18 </div>
19
20
21
22 <div class="entry">
23 <div class="title"><a href="http://people.skolelinux.org/pere/blog/listadmin__the_quick_way_to_moderate_mailman_lists___nice_free_software.html">listadmin, the quick way to moderate mailman lists - nice free software</a></div>
24 <div class="date">22nd October 2014</div>
25 <div class="body"><p>If you ever had to moderate a mailman list, like the ones on
26 alioth.debian.org, you know the web interface is fairly slow to
27 operate. First you visit one web page, enter the moderation password
28 and get a new page shown with a list of all the messages to moderate
29 and various options for each email address. This take a while for
30 every list you moderate, and you need to do it regularly to do a good
31 job as a list moderator. But there is a quick alternative,
32 <a href="http://heim.ifi.uio.no/kjetilho/hacks/#listadmin">the
33 listadmin program</a>. It allow you to check lists for new messages
34 to moderate in a fraction of a second. Here is a test run on two
35 lists I recently took over:</p>
36
37 <p><blockquote><pre>
38 % time listadmin xiph
39 fetching data for pkg-xiph-commits@lists.alioth.debian.org ... nothing in queue
40 fetching data for pkg-xiph-maint@lists.alioth.debian.org ... nothing in queue
41
42 real 0m1.709s
43 user 0m0.232s
44 sys 0m0.012s
45 %
46 </pre></blockquote></p>
47
48 <p>In 1.7 seconds I had checked two mailing lists and confirmed that
49 there are no message in the moderation queue. Every morning I
50 currently moderate 68 mailman lists, and it normally take around two
51 minutes. When I took over the two pkg-xiph lists above a few days
52 ago, there were 400 emails waiting in the moderator queue. It took me
53 less than 15 minutes to process them all using the listadmin
54 program.</p>
55
56 <p>If you install
57 <a href="https://tracker.debian.org/pkg/listadmin">the listadmin
58 package</a> from Debian and create a file <tt>~/.listadmin.ini</tt>
59 with content like this, the moderation task is a breeze:</p>
60
61 <p><blockquote><pre>
62 username@example.org
63 spamlevel 23
64 default discard
65 discard_if_reason "Posting restricted to members only. Remove us from your mail list."
66
67 password secret
68 adminurl https://{domain}/mailman/admindb/{list}
69 mailman-list@lists.example.com
70
71 password hidden
72 other-list@otherserver.example.org
73 </pre></blockquote></p>
74
75 <p>There are other options to set as well. Check the manual page to
76 learn the details.</p>
77
78 <p>If you are forced to moderate lists on a mailman installation where
79 the SSL certificate is self signed or not properly signed by a
80 generally accepted signing authority, you can set a environment
81 variable when calling listadmin to disable SSL verification:</p>
82
83 <p><blockquote><pre>
84 PERL_LWP_SSL_VERIFY_HOSTNAME=0 listadmin
85 </pre></blockquote></p>
86
87 <p>If you want to moderate a subset of the lists you take care of, you
88 can provide an argument to the listadmin script like I do in the
89 initial screen dump (the xiph argument). Using an argument, only
90 lists matching the argument string will be processed. This make it
91 quick to accept messages if you notice the moderation request in your
92 email.</p>
93
94 <p>Without the listadmin program, I would never be the moderator of 68
95 mailing lists, as I simply do not have time to spend on that if the
96 process was any slower. The listadmin program have saved me hours of
97 time I could spend elsewhere over the years. It truly is nice free
98 software.</p>
99
100 <p>As usual, if you use Bitcoin and want to show your support of my
101 activities, please send Bitcoin donations to my address
102 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&label=PetterReinholdtsenBlog">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
103 </div>
104 <div class="tags">
105
106
107 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.
108
109
110 </div>
111 </div>
112 <div class="padding"></div>
113
114 <div class="entry">
115 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Debian_Jessie__PXE_and_automatic_firmware_installation.html">Debian Jessie, PXE and automatic firmware installation</a></div>
116 <div class="date">17th October 2014</div>
117 <div class="body"><p>When PXE installing laptops with Debian, I often run into the
118 problem that the WiFi card require some firmware to work properly.
119 And it has been a pain to fix this using preseeding in Debian.
120 Normally something more is needed. But thanks to
121 <a href="https://packages.qa.debian.org/i/isenkram.html">my isenkram
122 package</a> and its recent tasksel extension, it has now become easy
123 to do this using simple preseeding.</p>
124
125 <p>The isenkram-cli package provide tasksel tasks which will install
126 firmware for the hardware found in the machine (actually, requested by
127 the kernel modules for the hardware). (It can also install user space
128 programs supporting the hardware detected, but that is not the focus
129 of this story.)</p>
130
131 <p>To get this working in the default installation, two preeseding
132 values are needed. First, the isenkram-cli package must be installed
133 into the target chroot (aka the hard drive) before tasksel is executed
134 in the pkgsel step of the debian-installer system. This is done by
135 preseeding the base-installer/includes debconf value to include the
136 isenkram-cli package. The package name is next passed to debootstrap
137 for installation. With the isenkram-cli package in place, tasksel
138 will automatically use the isenkram tasks to detect hardware specific
139 packages for the machine being installed and install them, because
140 isenkram-cli contain tasksel tasks.</p>
141
142 <p>Second, one need to enable the non-free APT repository, because
143 most firmware unfortunately is non-free. This is done by preseeding
144 the apt-mirror-setup step. This is unfortunate, but for a lot of
145 hardware it is the only option in Debian.</p>
146
147 <p>The end result is two lines needed in your preseeding file to get
148 firmware installed automatically by the installer:</p>
149
150 <p><blockquote><pre>
151 base-installer base-installer/includes string isenkram-cli
152 apt-mirror-setup apt-setup/non-free boolean true
153 </pre></blockquote></p>
154
155 <p>The current version of isenkram-cli in testing/jessie will install
156 both firmware and user space packages when using this method. It also
157 do not work well, so use version 0.15 or later. Installing both
158 firmware and user space packages might give you a bit more than you
159 want, so I decided to split the tasksel task in two, one for firmware
160 and one for user space programs. The firmware task is enabled by
161 default, while the one for user space programs is not. This split is
162 implemented in the package currently in unstable.</p>
163
164 <p>If you decide to give this a go, please let me know (via email) how
165 this recipe work for you. :)</p>
166
167 <p>So, I bet you are wondering, how can this work. First and
168 foremost, it work because tasksel is modular, and driven by whatever
169 files it find in /usr/lib/tasksel/ and /usr/share/tasksel/. So the
170 isenkram-cli package place two files for tasksel to find. First there
171 is the task description file (/usr/share/tasksel/descs/isenkram.desc):</p>
172
173 <p><blockquote><pre>
174 Task: isenkram-packages
175 Section: hardware
176 Description: Hardware specific packages (autodetected by isenkram)
177 Based on the detected hardware various hardware specific packages are
178 proposed.
179 Test-new-install: show show
180 Relevance: 8
181 Packages: for-current-hardware
182
183 Task: isenkram-firmware
184 Section: hardware
185 Description: Hardware specific firmware packages (autodetected by isenkram)
186 Based on the detected hardware various hardware specific firmware
187 packages are proposed.
188 Test-new-install: mark show
189 Relevance: 8
190 Packages: for-current-hardware-firmware
191 </pre></blockquote></p>
192
193 <p>The key parts are Test-new-install which indicate how the task
194 should be handled and the Packages line referencing to a script in
195 /usr/lib/tasksel/packages/. The scripts use other scripts to get a
196 list of packages to install. The for-current-hardware-firmware script
197 look like this to list relevant firmware for the machine:
198
199 <p><blockquote><pre>
200 #!/bin/sh
201 #
202 PATH=/usr/sbin:$PATH
203 export PATH
204 isenkram-autoinstall-firmware -l
205 </pre></blockquote></p>
206
207 <p>With those two pieces in place, the firmware is installed by
208 tasksel during the normal d-i run. :)</p>
209
210 <p>If you want to test what tasksel will install when isenkram-cli is
211 installed, run <tt>DEBIAN_PRIORITY=critical tasksel --test
212 --new-install</tt> to get the list of packages that tasksel would
213 install.</p>
214
215 <p><a href="https://wiki.debian.org/DebianEdu/">Debian Edu</a> will be
216 pilots in testing this feature, as isenkram is used there now to
217 install firmware, replacing the earlier scripts.</p>
218 </div>
219 <div class="tags">
220
221
222 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin</a>.
223
224
225 </div>
226 </div>
227 <div class="padding"></div>
228
229 <div class="entry">
230 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Ubuntu_used_to_show_the_bread_prizes_at_ICA_Storo.html">Ubuntu used to show the bread prizes at ICA Storo</a></div>
231 <div class="date"> 4th October 2014</div>
232 <div class="body"><p>Today I came across an unexpected Ubuntu boot screen. Above the
233 bread shelf on the ICA shop at Storo in Oslo, the grub menu of Ubuntu
234 with Linux kernel 3.2.0-23 (ie probably version 12.04 LTS) was stuck
235 on a screen normally showing the bread types and prizes:</p>
236
237 <p align="center"><img width="70%" src="http://people.skolelinux.org/pere/blog/images/2014-10-04-ubuntu-ica-storo-crop.jpeg"></p>
238
239 <p>If it had booted as it was supposed to, I would never had known
240 about this hidden Linux installation. It is interesting what
241 <a href="http://revealingerrors.com/">errors can reveal</a>.</p>
242 </div>
243 <div class="tags">
244
245
246 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.
247
248
249 </div>
250 </div>
251 <div class="padding"></div>
252
253 <div class="entry">
254 <div class="title"><a href="http://people.skolelinux.org/pere/blog/New_lsdvd_release_version_0_17_is_ready.html">New lsdvd release version 0.17 is ready</a></div>
255 <div class="date"> 4th October 2014</div>
256 <div class="body"><p>The <a href="https://sourceforge.net/p/lsdvd/">lsdvd project</a>
257 got a new set of developers a few weeks ago, after the original
258 developer decided to step down and pass the project to fresh blood.
259 This project is now maintained by Petter Reinholdtsen and Steve
260 Dibb.</p>
261
262 <p>I just wrapped up
263 <a href="https://sourceforge.net/p/lsdvd/mailman/message/32896061/">a
264 new lsdvd release</a>, available in git or from
265 <a href="https://sourceforge.net/projects/lsdvd/files/lsdvd/">the
266 download page</a>. This is the changelog dated 2014-10-03 for version
267 0.17.</p>
268
269 <ul>
270
271 <li>Ignore 'phantom' audio, subtitle tracks</li>
272 <li>Check for garbage in the program chains, which indicate that a track is
273 non-existant, to work around additional copy protection</li>
274 <li>Fix displaying content type for audio tracks, subtitles</li>
275 <li>Fix pallete display of first entry</li>
276 <li>Fix include orders</li>
277 <li>Ignore read errors in titles that would not be displayed anyway</li>
278 <li>Fix the chapter count</li>
279 <li>Make sure the array size and the array limit used when initialising
280 the palette size is the same.</li>
281 <li>Fix array printing.</li>
282 <li>Correct subsecond calculations.</li>
283 <li>Add sector information to the output format.</li>
284 <li>Clean up code to be closer to ANSI C and compile without warnings
285 with more GCC compiler warnings.</li>
286
287 </ul>
288
289 <p>This change bring together patches for lsdvd in use in various
290 Linux and Unix distributions, as well as patches submitted to the
291 project the last nine years. Please check it out. :)</p>
292 </div>
293 <div class="tags">
294
295
296 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd</a>, <a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia</a>.
297
298
299 </div>
300 </div>
301 <div class="padding"></div>
302
303 <div class="entry">
304 <div class="title"><a href="http://people.skolelinux.org/pere/blog/How_to_test_Debian_Edu_Jessie_despite_some_fatal_problems_with_the_installer.html">How to test Debian Edu Jessie despite some fatal problems with the installer</a></div>
305 <div class="date">26th September 2014</div>
306 <div class="body"><p>The <a href="http://www.skolelinux.org/">Debian Edu / Skolelinux
307 project</a> provide a Linux solution for schools, including a
308 powerful desktop with education software, a central server providing
309 web pages, user database, user home directories, central login and PXE
310 boot of both clients without disk and the installation to install Debian
311 Edu on machines with disk (and a few other services perhaps to small
312 to mention here). We in the Debian Edu team are currently working on
313 the Jessie based version, trying to get everything in shape before the
314 freeze, to avoid having to maintain our own package repository in the
315 future. The
316 <a href="https://wiki.debian.org/DebianEdu/Status/Jessie">current
317 status</a> can be seen on the Debian wiki, and there is still heaps of
318 work left. Some fatal problems block testing, breaking the installer,
319 but it is possible to work around these to get anyway. Here is a
320 recipe on how to get the installation limping along.</p>
321
322 <p>First, download the test ISO via
323 <a href="ftp://ftp.skolelinux.no/cd-edu-testing-nolocal-netinst/debian-edu-amd64-i386-NETINST-1.iso">ftp</a>,
324 <a href="http://ftp.skolelinux.no/cd-edu-testing-nolocal-netinst/debian-edu-amd64-i386-NETINST-1.iso">http</a>
325 or rsync (use
326 ftp.skolelinux.org::cd-edu-testing-nolocal-netinst/debian-edu-amd64-i386-NETINST-1.iso).
327 The ISO build was broken on Tuesday, so we do not get a new ISO every
328 12 hours or so, but thankfully the ISO we already got we are able to
329 install with some tweaking.</p>
330
331 <p>When you get to the Debian Edu profile question, go to tty2
332 (use Alt-Ctrl-F2), run</p>
333
334 <p><blockquote><pre>
335 nano /usr/bin/edu-eatmydata-install
336 </pre></blockquote></p>
337
338 <p>and add 'exit 0' as the second line, disabling the eatmydata
339 optimization. Return to the installation, select the profile you want
340 and continue. Without this change, exim4-config will fail to install
341 due to a known bug in eatmydata.</p>
342
343 <p>When you get the grub question at the end, answer /dev/sda (or if
344 this do not work, figure out what your correct value would be. All my
345 test machines need /dev/sda, so I have no advice if it do not fit
346 your need.</p>
347
348 <p>If you installed a profile including a graphical desktop, log in as
349 root after the initial boot from hard drive, and install the
350 education-desktop-XXX metapackage. XXX can be kde, gnome, lxde, xfce
351 or mate. If you want several desktop options, install more than one
352 metapackage. Once this is done, reboot and you should have a working
353 graphical login screen. This workaround should no longer be needed
354 once the education-tasks package version 1.801 enter testing in two
355 days.</p>
356
357 <p>I believe the ISO build will start working on two days when the new
358 tasksel package enter testing and Steve McIntyre get a chance to
359 update the debian-cd git repository. The eatmydata, grub and desktop
360 issues are already fixed in unstable and testing, and should show up
361 on the ISO as soon as the ISO build start working again. Well the
362 eatmydata optimization is really just disabled. The proper fix
363 require an upload by the eatmydata maintainer applying the patch
364 provided in bug <a href="https://bugs.debian.org/702711">#702711</a>.
365 The rest have proper fixes in unstable.</p>
366
367 <p>I hope this get you going with the installation testing, as we are
368 quickly running out of time trying to get our Jessie based
369 installation ready before the distribution freeze in a month.</p>
370 </div>
371 <div class="tags">
372
373
374 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.
375
376
377 </div>
378 </div>
379 <div class="padding"></div>
380
381 <div class="entry">
382 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Suddenly_I_am_the_new_upstream_of_the_lsdvd_command_line_tool.html">Suddenly I am the new upstream of the lsdvd command line tool</a></div>
383 <div class="date">25th September 2014</div>
384 <div class="body"><p>I use the <a href="https://sourceforge.net/p/lsdvd/">lsdvd tool</a>
385 to handle my fairly large DVD collection. It is a nice command line
386 tool to get details about a DVD, like title, tracks, track length,
387 etc, in XML, Perl or human readable format. But lsdvd have not seen
388 any new development since 2006 and had a few irritating bugs affecting
389 its use with some DVDs. Upstream seemed to be dead, and in January I
390 sent a small probe asking for a version control repository for the
391 project, without any reply. But I use it regularly and would like to
392 get <a href="https://packages.qa.debian.org/lsdvd">an updated version
393 into Debian</a>. So two weeks ago I tried harder to get in touch with
394 the project admin, and after getting a reply from him explaining that
395 he was no longer interested in the project, I asked if I could take
396 over. And yesterday, I became project admin.</p>
397
398 <p>I've been in touch with a Gentoo developer and the Debian
399 maintainer interested in joining forces to maintain the upstream
400 project, and I hope we can get a new release out fairly quickly,
401 collecting the patches spread around on the internet into on place.
402 I've added the relevant Debian patches to the freshly created git
403 repository, and expect the Gentoo patches to make it too. If you got
404 a DVD collection and care about command line tools, check out
405 <a href="https://sourceforge.net/p/lsdvd/git/ci/master/tree/">the git source</a> and join
406 <a href="https://sourceforge.net/p/lsdvd/mailman/">the project mailing
407 list</a>. :)</p>
408 </div>
409 <div class="tags">
410
411
412 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd</a>, <a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia</a>.
413
414
415 </div>
416 </div>
417 <div class="padding"></div>
418
419 <div class="entry">
420 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Hva_henger_under_skibrua_over_E16_p__Sollih_gda_.html">Hva henger under skibrua over E16 på Sollihøgda?</a></div>
421 <div class="date">21st September 2014</div>
422 <div class="body"><p>Rundt omkring i Oslo og Østlandsområdet henger det bokser over
423 veiene som jeg har lurt på hva gjør. De har ut fra plassering og
424 vinkling sett ut som bokser som sniffer ut et eller annet fra
425 forbipasserende trafikk, men det har vært uklart for meg hva det er de
426 leser av. Her om dagen tok jeg bilde av en slik boks som henger under
427 <a href="http://www.openstreetmap.no/?zoom=19&mlat=59.96396&mlon=10.34443&layers=B00000">ei
428 skibru på Sollihøgda</a>:</p>
429
430 <p align="center"><img width="60%" src="http://people.skolelinux.org/pere/blog/images/2014-09-13-kapsch-sollihogda-crop.jpeg"></p>
431
432 <p>Boksen er tydelig merket «Kapsch >>>», logoen til
433 <a href="http://www.kapsch.net/">det sveitsiske selskapet Kapsch</a> som
434 blant annet lager sensorsystemer for veitrafikk. Men de lager mye
435 forskjellig, og jeg kjente ikke igjen boksen på utseendet etter en
436 kjapp titt på produktlista til selskapet.</p>
437
438 <p>I og med at boksen henger over veien E16, en riksvei vedlikeholdt
439 av Statens Vegvesen, så antok jeg at det burde være mulig å bruke
440 REST-API-et som gir tilgang til vegvesenets database over veier,
441 skilter og annet veirelatert til å finne ut hva i alle dager dette
442 kunne være. De har både
443 <a href="https://www.vegvesen.no/nvdb/api/dokumentasjon/datakatalog">en
444 datakatalog</a> og
445 <a href="https://www.vegvesen.no/nvdb/api/dokumentasjon/sok">et
446 søk</a>, der en kan søke etter ulike typer oppføringer innen for et
447 gitt geografisk område. Jeg laget et enkelt shell-script for å hente
448 ut antall av en gitt type innenfor området skibrua dekker, og listet
449 opp navnet på typene som ble funnet. Orket ikke slå opp hvordan
450 URL-koding av aktuelle strenger kunne gjøres mer generisk, og brukte
451 en stygg sed-linje i stedet.</p>
452
453 <blockquote><pre>
454 #!/bin/sh
455 urlmap() {
456 sed \
457 -e 's/ / /g' -e 's/{/%7B/g' \
458 -e 's/}/%7D/g' -e 's/\[/%5B/g' \
459 -e 's/\]/%5D/g' -e 's/ /%20/g' \
460 -e 's/,/%2C/g' -e 's/\"/%22/g' \
461 -e 's/:/%3A/g'
462 }
463
464 lookup() {
465 url="$1"
466 curl -s -H 'Accept: application/vnd.vegvesen.nvdb-v1+xml' \
467 "https://www.vegvesen.no/nvdb/api$url" | xmllint --format -
468 }
469
470 for id in $(seq 1 874) ; do
471 search="{
472 lokasjon: {
473 bbox: \"10.34425,59.96386,10.34458,59.96409\",
474 srid: \"WGS84\"
475 },
476 objektTyper: [{
477 id: $id, antall: 10
478 }]
479 }"
480
481 query=/sok?kriterie=$(echo $search | urlmap)
482 if lookup "$query" |
483 grep -q '&lt;totaltAntallReturnert>0&lt;'
484 then
485 :
486 else
487 echo $id
488 lookup "/datakatalog/objekttyper/$id" |grep '^ &lt;navn>'
489 fi
490 done
491
492 exit 0
493 </pre></blockquote>
494
495 Aktuelt ID-område 1-874 var riktig i datakatalogen da jeg laget
496 scriptet. Det vil endre seg over tid. Skriptet listet så opp
497 aktuelle typer i og rundt skibrua:
498
499 <blockquote><pre>
500 5
501 &lt;navn>Rekkverk&lt;/navn>
502 14
503 &lt;navn>Rekkverksende&lt;/navn>
504 47
505 &lt;navn>Trafikklomme&lt;/navn>
506 49
507 &lt;navn>Trafikkøy&lt;/navn>
508 60
509 &lt;navn>Bru&lt;/navn>
510 79
511 &lt;navn>Stikkrenne/Kulvert&lt;/navn>
512 80
513 &lt;navn>Grøft, åpen&lt;/navn>
514 86
515 &lt;navn>Belysningsstrekning&lt;/navn>
516 95
517 &lt;navn>Skiltpunkt&lt;/navn>
518 96
519 &lt;navn>Skiltplate&lt;/navn>
520 98
521 &lt;navn>Referansestolpe&lt;/navn>
522 99
523 &lt;navn>Vegoppmerking, langsgående&lt;/navn>
524 105
525 &lt;navn>Fartsgrense&lt;/navn>
526 106
527 &lt;navn>Vinterdriftsstrategi&lt;/navn>
528 172
529 &lt;navn>Trafikkdeler&lt;/navn>
530 241
531 &lt;navn>Vegdekke&lt;/navn>
532 293
533 &lt;navn>Breddemåling&lt;/navn>
534 301
535 &lt;navn>Kantklippareal&lt;/navn>
536 318
537 &lt;navn>Snø-/isrydding&lt;/navn>
538 445
539 &lt;navn>Skred&lt;/navn>
540 446
541 &lt;navn>Dokumentasjon&lt;/navn>
542 452
543 &lt;navn>Undergang&lt;/navn>
544 528
545 &lt;navn>Tverrprofil&lt;/navn>
546 532
547 &lt;navn>Vegreferanse&lt;/navn>
548 534
549 &lt;navn>Region&lt;/navn>
550 535
551 &lt;navn>Fylke&lt;/navn>
552 536
553 &lt;navn>Kommune&lt;/navn>
554 538
555 &lt;navn>Gate&lt;/navn>
556 539
557 &lt;navn>Transportlenke&lt;/navn>
558 540
559 &lt;navn>Trafikkmengde&lt;/navn>
560 570
561 &lt;navn>Trafikkulykke&lt;/navn>
562 571
563 &lt;navn>Ulykkesinvolvert enhet&lt;/navn>
564 572
565 &lt;navn>Ulykkesinvolvert person&lt;/navn>
566 579
567 &lt;navn>Politidistrikt&lt;/navn>
568 583
569 &lt;navn>Vegbredde&lt;/navn>
570 591
571 &lt;navn>Høydebegrensning&lt;/navn>
572 592
573 &lt;navn>Nedbøyningsmåling&lt;/navn>
574 597
575 &lt;navn>Støy-luft, Strekningsdata&lt;/navn>
576 601
577 &lt;navn>Oppgravingsdata&lt;/navn>
578 602
579 &lt;navn>Oppgravingslag&lt;/navn>
580 603
581 &lt;navn>PMS-parsell&lt;/navn>
582 604
583 &lt;navn>Vegnormalstrekning&lt;/navn>
584 605
585 &lt;navn>Værrelatert strekning&lt;/navn>
586 616
587 &lt;navn>Feltstrekning&lt;/navn>
588 617
589 &lt;navn>Adressepunkt&lt;/navn>
590 626
591 &lt;navn>Friksjonsmåleserie&lt;/navn>
592 629
593 &lt;navn>Vegdekke, flatelapping&lt;/navn>
594 639
595 &lt;navn>Kurvatur, horisontalelement&lt;/navn>
596 640
597 &lt;navn>Kurvatur, vertikalelement&lt;/navn>
598 642
599 &lt;navn>Kurvatur, vertikalpunkt&lt;/navn>
600 643
601 &lt;navn>Statistikk, trafikkmengde&lt;/navn>
602 647
603 &lt;navn>Statistikk, vegbredde&lt;/navn>
604 774
605 &lt;navn>Nedbøyningsmåleserie&lt;/navn>
606 775
607 &lt;navn>ATK, influensstrekning&lt;/navn>
608 794
609 &lt;navn>Systemobjekt&lt;/navn>
610 810
611 &lt;navn>Vinterdriftsklasse&lt;/navn>
612 821
613 &lt;navn>Funksjonell vegklasse&lt;/navn>
614 825
615 &lt;navn>Kurvatur, stigning&lt;/navn>
616 838
617 &lt;navn>Vegbredde, beregnet&lt;/navn>
618 862
619 &lt;navn>Reisetidsregistreringspunkt&lt;/navn>
620 871
621 &lt;navn>Bruksklasse&lt;/navn>
622 </pre></blockquote>
623
624 <p>Av disse ser ID 775 og 862 mest relevant ut. ID 775 antar jeg
625 refererer til fotoboksen som står like ved brua, mens
626 «Reisetidsregistreringspunkt» kanskje kan være boksen som henger der.
627 Hvordan finner jeg så ut hva dette kan være for noe. En titt på
628 <a href="http://labs.vegdata.no/nvdb-datakatalog/862-Reisetidsregistreringspunkt/">datakatalogsiden
629 for ID 862/Reisetidsregistreringspunkt</a> viser at det er finnes 53
630 slike målere i Norge, og hvor de er plassert, men gir ellers få
631 detaljer. Det er plassert 40 på østlandet og 13 i Trondheimsregionen.
632 Men siden nevner «AutoPASS», og hvis en slår opp oppføringen på
633 Sollihøgda nevner den «Ciber AS» som ID for eksternt system. (Kan det
634 være snakk om
635 <a href="http://www.proff.no/selskap/ciber-norge-as/oslo/internettdesign-og-programmering/Z0I3KMF4/">Ciber
636 Norge AS</a>, et selskap eid av Ciber Europe Bv?) Et nettsøk på
637 «Ciber AS autopass» fører meg til en artikkel fra NRK Trøndelag i
638 2013 med tittel
639 «<a href="http://www.nrk.no/trondelag/sjekk-dette-hvis-du-vil-unnga-ko-1.11327947">Sjekk
640 dette hvis du vil unngå kø</a>». Artikkelen henviser til vegvesenets
641 nettside
642 <a href="http://www.reisetider.no/reisetid/forside.html">reisetider.no</a>
643 som har en
644 <a href="http://www.reisetider.no/reisetid/omrade.html?omrade=5">kartside
645 for Østlandet</a> som viser at det måles mellom Sandvika og Sollihøgda.
646 Det kan dermed se ut til at jeg har funnet ut hva boksene gjør.</p>
647
648 <p>Hvis det stemmer, så er dette bokser som leser av AutoPASS-ID-en
649 til alle passerende biler med AutoPASS-brikke, og dermed gjør det mulig
650 for de som kontrollerer boksene å holde rede på hvor en gitt bil er
651 når den passerte et slikt målepunkt. NRK-artikkelen forteller at
652 denne informasjonen i dag kun brukes til å koble to
653 AutoPASS-brikkepasseringer passeringer sammen for å beregne
654 reisetiden, og at bruken er godkjent av Datatilsynet. Det er desverre
655 ikke mulig for en sjåfør som passerer under en slik boks å kontrollere
656 at AutoPASS-ID-en kun brukes til dette i dag og i fremtiden.</p>
657
658 <p>I tillegg til denne type AutoPASS-sniffere vet jeg at det også
659 finnes mange automatiske stasjoner som tar betalt pr. passering (aka
660 bomstasjoner), og der lagres informasjon om tid, sted og bilnummer i
661 10 år. Finnes det andre slike sniffere plassert ut på veiene?</p>
662
663 <p>Personlig har jeg valgt å ikke bruke AutoPASS-brikke, for å gjøre
664 det vanskeligere og mer kostbart for de som vil invadere privatsfæren
665 og holde rede på hvor bilen min beveger seg til enhver tid. Jeg håper
666 flere vil gjøre det samme, selv om det gir litt høyere private
667 utgifter (dyrere bompassering). Vern om privatsfæren koster i disse
668 dager.</p>
669
670 <p>Takk til Jan Kristian Jensen i Statens Vegvesen for tips om
671 dokumentasjon på vegvesenets REST-API.</p>
672 </div>
673 <div class="tags">
674
675
676 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/kart">kart</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern</a>, <a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid</a>, <a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance</a>.
677
678
679 </div>
680 </div>
681 <div class="padding"></div>
682
683 <div class="entry">
684 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Speeding_up_the_Debian_installer_using_eatmydata_and_dpkg_divert.html">Speeding up the Debian installer using eatmydata and dpkg-divert</a></div>
685 <div class="date">16th September 2014</div>
686 <div class="body"><p>The <a href="https://www.debian.org/">Debian</a> installer could be
687 a lot quicker. When we install more than 2000 packages in
688 <a href="http://www.skolelinux.org/">Skolelinux / Debian Edu</a> using
689 tasksel in the installer, unpacking the binary packages take forever.
690 A part of the slow I/O issue was discussed in
691 <a href="https://bugs.debian.org/613428">bug #613428</a> about too
692 much file system sync-ing done by dpkg, which is the package
693 responsible for unpacking the binary packages. Other parts (like code
694 executed by postinst scripts) might also sync to disk during
695 installation. All this sync-ing to disk do not really make sense to
696 me. If the machine crash half-way through, I start over, I do not try
697 to salvage the half installed system. So the failure sync-ing is
698 supposed to protect against, hardware or system crash, is not really
699 relevant while the installer is running.</p>
700
701 <p>A few days ago, I thought of a way to get rid of all the file
702 system sync()-ing in a fairly non-intrusive way, without the need to
703 change the code in several packages. The idea is not new, but I have
704 not heard anyone propose the approach using dpkg-divert before. It
705 depend on the small and clever package
706 <a href="https://packages.qa.debian.org/eatmydata">eatmydata</a>, which
707 uses LD_PRELOAD to replace the system functions for syncing data to
708 disk with functions doing nothing, thus allowing programs to live
709 dangerous while speeding up disk I/O significantly. Instead of
710 modifying the implementation of dpkg, apt and tasksel (which are the
711 packages responsible for selecting, fetching and installing packages),
712 it occurred to me that we could just divert the programs away, replace
713 them with a simple shell wrapper calling
714 "eatmydata&nbsp;$program&nbsp;$@", to get the same effect.
715 Two days ago I decided to test the idea, and wrapped up a simple
716 implementation for the Debian Edu udeb.</p>
717
718 <p>The effect was stunning. In my first test it reduced the running
719 time of the pkgsel step (installing tasks) from 64 to less than 44
720 minutes (20 minutes shaved off the installation) on an old Dell
721 Latitude D505 machine. I am not quite sure what the optimised time
722 would have been, as I messed up the testing a bit, causing the debconf
723 priority to get low enough for two questions to pop up during
724 installation. As soon as I saw the questions I moved the installation
725 along, but do not know how long the question were holding up the
726 installation. I did some more measurements using Debian Edu Jessie,
727 and got these results. The time measured is the time stamp in
728 /var/log/syslog between the "pkgsel: starting tasksel" and the
729 "pkgsel: finishing up" lines, if you want to do the same measurement
730 yourself. In Debian Edu, the tasksel dialog do not show up, and the
731 timing thus do not depend on how quickly the user handle the tasksel
732 dialog.</p>
733
734 <p><table>
735
736 <tr>
737 <th>Machine/setup</th>
738 <th>Original tasksel</th>
739 <th>Optimised tasksel</th>
740 <th>Reduction</th>
741 </tr>
742
743 <tr>
744 <td>Latitude D505 Main+LTSP LXDE</td>
745 <td>64 min (07:46-08:50)</td>
746 <td><44 min (11:27-12:11)</td>
747 <td>>20 min 18%</td>
748 </tr>
749
750 <tr>
751 <td>Latitude D505 Roaming LXDE</td>
752 <td>57 min (08:48-09:45)</td>
753 <td>34 min (07:43-08:17)</td>
754 <td>23 min 40%</td>
755 </tr>
756
757 <tr>
758 <td>Latitude D505 Minimal</td>
759 <td>22 min (10:37-10:59)</td>
760 <td>11 min (11:16-11:27)</td>
761 <td>11 min 50%</td>
762 </tr>
763
764 <tr>
765 <td>Thinkpad X200 Minimal</td>
766 <td>6 min (08:19-08:25)</td>
767 <td>4 min (08:04-08:08)</td>
768 <td>2 min 33%</td>
769 </tr>
770
771 <tr>
772 <td>Thinkpad X200 Roaming KDE</td>
773 <td>19 min (09:21-09:40)</td>
774 <td>15 min (10:25-10:40)</td>
775 <td>4 min 21%</td>
776 </tr>
777
778 </table></p>
779
780 <p>The test is done using a netinst ISO on a USB stick, so some of the
781 time is spent downloading packages. The connection to the Internet
782 was 100Mbit/s during testing, so downloading should not be a
783 significant factor in the measurement. Download typically took a few
784 seconds to a few minutes, depending on the amount of packages being
785 installed.</p>
786
787 <p>The speedup is implemented by using two hooks in
788 <a href="https://www.debian.org/devel/debian-installer/">Debian
789 Installer</a>, the pre-pkgsel.d hook to set up the diverts, and the
790 finish-install.d hook to remove the divert at the end of the
791 installation. I picked the pre-pkgsel.d hook instead of the
792 post-base-installer.d hook because I test using an ISO without the
793 eatmydata package included, and the post-base-installer.d hook in
794 Debian Edu can only operate on packages included in the ISO. The
795 negative effect of this is that I am unable to activate this
796 optimization for the kernel installation step in d-i. If the code is
797 moved to the post-base-installer.d hook, the speedup would be larger
798 for the entire installation.</p>
799
800 <p>I've implemented this in the
801 <a href="https://packages.qa.debian.org/debian-edu-install">debian-edu-install</a>
802 git repository, and plan to provide the optimization as part of the
803 Debian Edu installation. If you want to test this yourself, you can
804 create two files in the installer (or in an udeb). One shell script
805 need do go into /usr/lib/pre-pkgsel.d/, with content like this:</p>
806
807 <p><blockquote><pre>
808 #!/bin/sh
809 set -e
810 . /usr/share/debconf/confmodule
811 info() {
812 logger -t my-pkgsel "info: $*"
813 }
814 error() {
815 logger -t my-pkgsel "error: $*"
816 }
817 override_install() {
818 apt-install eatmydata || true
819 if [ -x /target/usr/bin/eatmydata ] ; then
820 for bin in dpkg apt-get aptitude tasksel ; do
821 file=/usr/bin/$bin
822 # Test that the file exist and have not been diverted already.
823 if [ -f /target$file ] ; then
824 info "diverting $file using eatmydata"
825 printf "#!/bin/sh\neatmydata $bin.distrib \"\$@\"\n" \
826 > /target$file.edu
827 chmod 755 /target$file.edu
828 in-target dpkg-divert --package debian-edu-config \
829 --rename --quiet --add $file
830 ln -sf ./$bin.edu /target$file
831 else
832 error "unable to divert $file, as it is missing."
833 fi
834 done
835 else
836 error "unable to find /usr/bin/eatmydata after installing the eatmydata pacage"
837 fi
838 }
839
840 override_install
841 </pre></blockquote></p>
842
843 <p>To clean up, another shell script should go into
844 /usr/lib/finish-install.d/ with code like this:
845
846 <p><blockquote><pre>
847 #! /bin/sh -e
848 . /usr/share/debconf/confmodule
849 error() {
850 logger -t my-finish-install "error: $@"
851 }
852 remove_install_override() {
853 for bin in dpkg apt-get aptitude tasksel ; do
854 file=/usr/bin/$bin
855 if [ -x /target$file.edu ] ; then
856 rm /target$file
857 in-target dpkg-divert --package debian-edu-config \
858 --rename --quiet --remove $file
859 rm /target$file.edu
860 else
861 error "Missing divert for $file."
862 fi
863 done
864 sync # Flush file buffers before continuing
865 }
866
867 remove_install_override
868 </pre></blockquote></p>
869
870 <p>In Debian Edu, I placed both code fragments in a separate script
871 edu-eatmydata-install and call it from the pre-pkgsel.d and
872 finish-install.d scripts.</p>
873
874 <p>By now you might ask if this change should get into the normal
875 Debian installer too? I suspect it should, but am not sure the
876 current debian-installer coordinators find it useful enough. It also
877 depend on the side effects of the change. I'm not aware of any, but I
878 guess we will see if the change is safe after some more testing.
879 Perhaps there is some package in Debian depending on sync() and
880 fsync() having effect? Perhaps it should go into its own udeb, to
881 allow those of us wanting to enable it to do so without affecting
882 everyone.</p>
883
884 <p>Update 2014-09-24: Since a few days ago, enabling this optimization
885 will break installation of all programs using gnutls because of
886 <a href="https://bugs.debian.org/702711">bug #702711</a>. An updated
887 eatmydata package in Debian will solve it.</p>
888
889 <p>Update 2014-10-17: The bug mentioned above is fixed in testing and
890 the optimization work again. And I have discovered that the
891 dpkg-divert trick is not really needed and implemented a slightly
892 simpler approach as part of the debian-edu-install package. See
893 tools/edu-eatmydata-install in the source package.</p>
894 </div>
895 <div class="tags">
896
897
898 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.
899
900
901 </div>
902 </div>
903 <div class="padding"></div>
904
905 <div class="entry">
906 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Good_bye_subkeys_pgp_net__welcome_pool_sks_keyservers_net.html">Good bye subkeys.pgp.net, welcome pool.sks-keyservers.net</a></div>
907 <div class="date">10th September 2014</div>
908 <div class="body"><p>Yesterday, I had the pleasure of attending a talk with the
909 <a href="http://www.nuug.no/">Norwegian Unix User Group</a> about
910 <a href="http://www.nuug.no/aktiviteter/20140909-sks-keyservers/">the
911 OpenPGP keyserver pool sks-keyservers.net</a>, and was very happy to
912 learn that there is a large set of publicly available key servers to
913 use when looking for peoples public key. So far I have used
914 subkeys.pgp.net, and some times wwwkeys.nl.pgp.net when the former
915 were misbehaving, but those days are ended. The servers I have used
916 up until yesterday have been slow and some times unavailable. I hope
917 those problems are gone now.</p>
918
919 <p>Behind the round robin DNS entry of the
920 <a href="https://sks-keyservers.net/">sks-keyservers.net</a> service
921 there is a pool of more than 100 keyservers which are checked every
922 day to ensure they are well connected and up to date. It must be
923 better than what I have used so far. :)</p>
924
925 <p>Yesterdays speaker told me that the service is the default
926 keyserver provided by the default configuration in GnuPG, but this do
927 not seem to be used in Debian. Perhaps it should?</p>
928
929 <p>Anyway, I've updated my ~/.gnupg/options file to now include this
930 line:</p>
931
932 <p><blockquote><pre>
933 keyserver pool.sks-keyservers.net
934 </pre></blockquote></p>
935
936 <p>With GnuPG version 2 one can also locate the keyserver using SRV
937 entries in DNS. Just for fun, I did just that at work, so now every
938 user of GnuPG at the University of Oslo should find a OpenGPG
939 keyserver automatically should their need it:</p>
940
941 <p><blockquote><pre>
942 % host -t srv _pgpkey-http._tcp.uio.no
943 _pgpkey-http._tcp.uio.no has SRV record 0 100 11371 pool.sks-keyservers.net.
944 %
945 </pre></blockquote></p>
946
947 <p>Now if only
948 <a href="http://ietfreport.isoc.org/idref/draft-shaw-openpgp-hkp/">the
949 HKP lookup protocol</a> supported finding signature paths, I would be
950 very happy. It can look up a given key or search for a user ID, but I
951 normally do not want that, but to find a trust path from my key to
952 another key. Given a user ID or key ID, I would like to find (and
953 download) the keys representing a signature path from my key to the
954 key in question, to be able to get a trust path between the two keys.
955 This is as far as I can tell not possible today. Perhaps something
956 for a future version of the protocol?</p>
957 </div>
958 <div class="tags">
959
960
961 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet</a>.
962
963
964 </div>
965 </div>
966 <div class="padding"></div>
967
968 <div class="entry">
969 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Do_you_need_an_agreement_with_MPEG_LA_to_publish_and_broadcast_H_264_video_in_Norway_.html">Do you need an agreement with MPEG-LA to publish and broadcast H.264 video in Norway?</a></div>
970 <div class="date">25th August 2014</div>
971 <div class="body"><p>Two years later, I am still not sure if it is legal here in Norway
972 to use or publish a video in H.264 or MPEG4 format edited by the
973 commercially licensed video editors, without limiting the use to
974 create "personal" or "non-commercial" videos or get a license
975 agreement with <a href="http://www.mpegla.com">MPEG LA</a>. If one
976 want to publish and broadcast video in a non-personal or commercial
977 setting, it might be that those tools can not be used, or that video
978 format can not be used, without breaking their copyright license. I
979 am not sure.
980 <a href="http://people.skolelinux.org/pere/blog/Trenger_en_avtale_med_MPEG_LA_for___publisere_og_kringkaste_H_264_video_.html">Back
981 then</a>, I found that the copyright license terms for Adobe Premiere
982 and Apple Final Cut Pro both specified that one could not use the
983 program to produce anything else without a patent license from MPEG
984 LA. The issue is not limited to those two products, though. Other
985 much used products like those from Avid and Sorenson Media have terms
986 of use are similar to those from Adobe and Apple. The complicating
987 factor making me unsure if those terms have effect in Norway or not is
988 that the patents in question are not valid in Norway, but copyright
989 licenses are.</p>
990
991 <p>These are the terms for Avid Artist Suite, according to their
992 <a href="http://www.avid.com/US/about-avid/legal-notices/legal-enduserlicense2">published
993 end user</a>
994 <a href="http://www.avid.com/static/resources/common/documents/corporate/LICENSE.pdf">license
995 text</a> (converted to lower case text for easier reading):</p>
996
997 <p><blockquote>
998 <p>18.2. MPEG-4. MPEG-4 technology may be included with the
999 software. MPEG LA, L.L.C. requires this notice: </p>
1000
1001 <p>This product is licensed under the MPEG-4 visual patent portfolio
1002 license for the personal and non-commercial use of a consumer for (i)
1003 encoding video in compliance with the MPEG-4 visual standard (“MPEG-4
1004 video”) and/or (ii) decoding MPEG-4 video that was encoded by a
1005 consumer engaged in a personal and non-commercial activity and/or was
1006 obtained from a video provider licensed by MPEG LA to provide MPEG-4
1007 video. No license is granted or shall be implied for any other
1008 use. Additional information including that relating to promotional,
1009 internal and commercial uses and licensing may be obtained from MPEG
1010 LA, LLC. See http://www.mpegla.com. This product is licensed under
1011 the MPEG-4 systems patent portfolio license for encoding in compliance
1012 with the MPEG-4 systems standard, except that an additional license
1013 and payment of royalties are necessary for encoding in connection with
1014 (i) data stored or replicated in physical media which is paid for on a
1015 title by title basis and/or (ii) data which is paid for on a title by
1016 title basis and is transmitted to an end user for permanent storage
1017 and/or use, such additional license may be obtained from MPEG LA,
1018 LLC. See http://www.mpegla.com for additional details.</p>
1019
1020 <p>18.3. H.264/AVC. H.264/AVC technology may be included with the
1021 software. MPEG LA, L.L.C. requires this notice:</p>
1022
1023 <p>This product is licensed under the AVC patent portfolio license for
1024 the personal use of a consumer or other uses in which it does not
1025 receive remuneration to (i) encode video in compliance with the AVC
1026 standard (“AVC video”) and/or (ii) decode AVC video that was encoded
1027 by a consumer engaged in a personal activity and/or was obtained from
1028 a video provider licensed to provide AVC video. No license is granted
1029 or shall be implied for any other use. Additional information may be
1030 obtained from MPEG LA, L.L.C. See http://www.mpegla.com.</p>
1031 </blockquote></p>
1032
1033 <p>Note the requirement that the videos created can only be used for
1034 personal or non-commercial purposes.</p>
1035
1036 <p>The Sorenson Media software have
1037 <a href="http://www.sorensonmedia.com/terms/">similar terms</a>:</p>
1038
1039 <p><blockquote>
1040
1041 <p>With respect to a license from Sorenson pertaining to MPEG-4 Video
1042 Decoders and/or Encoders: Any such product is licensed under the
1043 MPEG-4 visual patent portfolio license for the personal and
1044 non-commercial use of a consumer for (i) encoding video in compliance
1045 with the MPEG-4 visual standard (“MPEG-4 video”) and/or (ii) decoding
1046 MPEG-4 video that was encoded by a consumer engaged in a personal and
1047 non-commercial activity and/or was obtained from a video provider
1048 licensed by MPEG LA to provide MPEG-4 video. No license is granted or
1049 shall be implied for any other use. Additional information including
1050 that relating to promotional, internal and commercial uses and
1051 licensing may be obtained from MPEG LA, LLC. See
1052 http://www.mpegla.com.</p>
1053
1054 <p>With respect to a license from Sorenson pertaining to MPEG-4
1055 Consumer Recorded Data Encoder, MPEG-4 Systems Internet Data Encoder,
1056 MPEG-4 Mobile Data Encoder, and/or MPEG-4 Unique Use Encoder: Any such
1057 product is licensed under the MPEG-4 systems patent portfolio license
1058 for encoding in compliance with the MPEG-4 systems standard, except
1059 that an additional license and payment of royalties are necessary for
1060 encoding in connection with (i) data stored or replicated in physical
1061 media which is paid for on a title by title basis and/or (ii) data
1062 which is paid for on a title by title basis and is transmitted to an
1063 end user for permanent storage and/or use. Such additional license may
1064 be obtained from MPEG LA, LLC. See http://www.mpegla.com for
1065 additional details.</p>
1066
1067 </blockquote></p>
1068
1069 <p>Some free software like
1070 <a href="https://handbrake.fr/">Handbrake</A> and
1071 <a href="http://ffmpeg.org/">FFMPEG</a> uses GPL/LGPL licenses and do
1072 not have any such terms included, so for those, there is no
1073 requirement to limit the use to personal and non-commercial.</p>
1074 </div>
1075 <div class="tags">
1076
1077
1078 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia</a>, <a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>, <a href="http://people.skolelinux.org/pere/blog/tags/video">video</a>, <a href="http://people.skolelinux.org/pere/blog/tags/web">web</a>.
1079
1080
1081 </div>
1082 </div>
1083 <div class="padding"></div>
1084
1085 <p style="text-align: right;"><a href="index.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS feed" width="36" height="14" /></a></p>
1086 <div id="sidebar">
1087
1088
1089
1090 <h2>Archive</h2>
1091 <ul>
1092
1093 <li>2014
1094 <ul>
1095
1096 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
1097
1098 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
1099
1100 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
1101
1102 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/04/">April (7)</a></li>
1103
1104 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/05/">May (1)</a></li>
1105
1106 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/06/">June (2)</a></li>
1107
1108 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/07/">July (2)</a></li>
1109
1110 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/08/">August (2)</a></li>
1111
1112 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/09/">September (5)</a></li>
1113
1114 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/10/">October (4)</a></li>
1115
1116 </ul></li>
1117
1118 <li>2013
1119 <ul>
1120
1121 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
1122
1123 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
1124
1125 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
1126
1127 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
1128
1129 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
1130
1131 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
1132
1133 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
1134
1135 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
1136
1137 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
1138
1139 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
1140
1141 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
1142
1143 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
1144
1145 </ul></li>
1146
1147 <li>2012
1148 <ul>
1149
1150 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
1151
1152 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
1153
1154 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
1155
1156 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
1157
1158 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
1159
1160 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
1161
1162 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
1163
1164 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
1165
1166 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
1167
1168 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
1169
1170 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
1171
1172 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
1173
1174 </ul></li>
1175
1176 <li>2011
1177 <ul>
1178
1179 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
1180
1181 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
1182
1183 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
1184
1185 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
1186
1187 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
1188
1189 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
1190
1191 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
1192
1193 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
1194
1195 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
1196
1197 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
1198
1199 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
1200
1201 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
1202
1203 </ul></li>
1204
1205 <li>2010
1206 <ul>
1207
1208 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
1209
1210 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
1211
1212 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
1213
1214 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
1215
1216 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
1217
1218 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
1219
1220 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
1221
1222 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
1223
1224 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
1225
1226 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
1227
1228 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
1229
1230 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
1231
1232 </ul></li>
1233
1234 <li>2009
1235 <ul>
1236
1237 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
1238
1239 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
1240
1241 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
1242
1243 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
1244
1245 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
1246
1247 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
1248
1249 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
1250
1251 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
1252
1253 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
1254
1255 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
1256
1257 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
1258
1259 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
1260
1261 </ul></li>
1262
1263 <li>2008
1264 <ul>
1265
1266 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
1267
1268 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
1269
1270 </ul></li>
1271
1272 </ul>
1273
1274
1275
1276 <h2>Tags</h2>
1277 <ul>
1278
1279 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (13)</a></li>
1280
1281 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
1282
1283 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
1284
1285 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
1286
1287 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (8)</a></li>
1288
1289 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (14)</a></li>
1290
1291 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
1292
1293 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
1294
1295 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (107)</a></li>
1296
1297 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (150)</a></li>
1298
1299 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (10)</a></li>
1300
1301 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld">dld (15)</a></li>
1302
1303 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (12)</a></li>
1304
1305 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
1306
1307 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (259)</a></li>
1308
1309 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (21)</a></li>
1310
1311 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (12)</a></li>
1312
1313 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (13)</a></li>
1314
1315 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (8)</a></li>
1316
1317 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (11)</a></li>
1318
1319 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (41)</a></li>
1320
1321 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (10)</a></li>
1322
1323 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (19)</a></li>
1324
1325 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
1326
1327 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (8)</a></li>
1328
1329 <li><a href="http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (2)</a></li>
1330
1331 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
1332
1333 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
1334
1335 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (31)</a></li>
1336
1337 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (248)</a></li>
1338
1339 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (162)</a></li>
1340
1341 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (11)</a></li>
1342
1343 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
1344
1345 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (48)</a></li>
1346
1347 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (75)</a></li>
1348
1349 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (1)</a></li>
1350
1351 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
1352
1353 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
1354
1355 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (3)</a></li>
1356
1357 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (9)</a></li>
1358
1359 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
1360
1361 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (4)</a></li>
1362
1363 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
1364
1365 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (41)</a></li>
1366
1367 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
1368
1369 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (4)</a></li>
1370
1371 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (45)</a></li>
1372
1373 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (3)</a></li>
1374
1375 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (9)</a></li>
1376
1377 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (26)</a></li>
1378
1379 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (2)</a></li>
1380
1381 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (8)</a></li>
1382
1383 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (43)</a></li>
1384
1385 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
1386
1387 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (33)</a></li>
1388
1389 </ul>
1390
1391
1392 </div>
1393 <p style="text-align: right">
1394 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
1395 </p>
1396
1397 </body>
1398 </html>