]> pere.pagekite.me Git - homepage.git/blob - blog/index.rss
69c7f4ccb6b3e1b9a6c27268da3a2fbbcd2cac74
[homepage.git] / blog / index.rss
1 <?xml version="1.0" encoding="utf-8"?>
2 <rss version='2.0' xmlns:lj='http://www.livejournal.org/rss/lj/1.0/' xmlns:atom="http://www.w3.org/2005/Atom">
3 <channel>
4 <title>Petter Reinholdtsen</title>
5 <description></description>
6 <link>http://people.skolelinux.org/pere/blog/</link>
7 <atom:link href="http://people.skolelinux.org/pere/blog/index.rss" rel="self" type="application/rss+xml" />
8
9 <item>
10 <title>I spent last weekend recording MakerCon Nordic</title>
11 <link>http://people.skolelinux.org/pere/blog/I_spent_last_weekend_recording_MakerCon_Nordic.html</link>
12 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/I_spent_last_weekend_recording_MakerCon_Nordic.html</guid>
13 <pubDate>Thu, 23 Oct 2014 23:00:00 +0200</pubDate>
14 <description>&lt;p&gt;I spent last weekend at &lt;a href=&quot;http://www.makercon.no/&quot;&gt;Makercon
15 Nordic&lt;/a&gt;, a great conference and workshop for makers in Norway and
16 the surrounding countries. I had volunteered on behalf of the
17 Norwegian Unix Users Group (NUUG) to video record the talks, and we
18 had a great and exhausting time recording the entire day, two days in
19 a row. There were only two of us, Hans-Petter and me, and we used the
20 regular video equipment for NUUG, with a
21 &lt;a href=&quot;http://dvswitch.alioth.debian.org/wiki/&quot;&gt;dvswitch&lt;/a&gt;, a
22 camera and a VGA to DV convert box, and mixed video and slides
23 live.&lt;/p&gt;
24
25 &lt;p&gt;Hans-Petter did the post-processing, consisting of uploading the
26 around 180 GiB of raw video to Youtube, and the result is
27 &lt;a href=&quot;https://www.youtube.com/user/MakerConNordic/&quot;&gt;now becoming
28 public&lt;/a&gt; on the MakerConNordic account. The videos have the license
29 NUUG always use on our recordings, which is
30 &lt;a href=&quot;http://creativecommons.org/licenses/by-sa/3.0/no/&quot;&gt;Creative
31 Commons Navngivelse-Del på samme vilkår 3.0 Norge&lt;/a&gt;. Many great
32 talks available. Check it out! :)&lt;/p&gt;
33 </description>
34 </item>
35
36 <item>
37 <title>listadmin, the quick way to moderate mailman lists - nice free software</title>
38 <link>http://people.skolelinux.org/pere/blog/listadmin__the_quick_way_to_moderate_mailman_lists___nice_free_software.html</link>
39 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/listadmin__the_quick_way_to_moderate_mailman_lists___nice_free_software.html</guid>
40 <pubDate>Wed, 22 Oct 2014 20:00:00 +0200</pubDate>
41 <description>&lt;p&gt;If you ever had to moderate a mailman list, like the ones on
42 alioth.debian.org, you know the web interface is fairly slow to
43 operate. First you visit one web page, enter the moderation password
44 and get a new page shown with a list of all the messages to moderate
45 and various options for each email address. This take a while for
46 every list you moderate, and you need to do it regularly to do a good
47 job as a list moderator. But there is a quick alternative,
48 &lt;a href=&quot;http://heim.ifi.uio.no/kjetilho/hacks/#listadmin&quot;&gt;the
49 listadmin program&lt;/a&gt;. It allow you to check lists for new messages
50 to moderate in a fraction of a second. Here is a test run on two
51 lists I recently took over:&lt;/p&gt;
52
53 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
54 % time listadmin xiph
55 fetching data for pkg-xiph-commits@lists.alioth.debian.org ... nothing in queue
56 fetching data for pkg-xiph-maint@lists.alioth.debian.org ... nothing in queue
57
58 real 0m1.709s
59 user 0m0.232s
60 sys 0m0.012s
61 %
62 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
63
64 &lt;p&gt;In 1.7 seconds I had checked two mailing lists and confirmed that
65 there are no message in the moderation queue. Every morning I
66 currently moderate 68 mailman lists, and it normally take around two
67 minutes. When I took over the two pkg-xiph lists above a few days
68 ago, there were 400 emails waiting in the moderator queue. It took me
69 less than 15 minutes to process them all using the listadmin
70 program.&lt;/p&gt;
71
72 &lt;p&gt;If you install
73 &lt;a href=&quot;https://tracker.debian.org/pkg/listadmin&quot;&gt;the listadmin
74 package&lt;/a&gt; from Debian and create a file &lt;tt&gt;~/.listadmin.ini&lt;/tt&gt;
75 with content like this, the moderation task is a breeze:&lt;/p&gt;
76
77 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
78 username@example.org
79 spamlevel 23
80 default discard
81 discard_if_reason &quot;Posting restricted to members only. Remove us from your mail list.&quot;
82
83 password secret
84 adminurl https://{domain}/mailman/admindb/{list}
85 mailman-list@lists.example.com
86
87 password hidden
88 other-list@otherserver.example.org
89 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
90
91 &lt;p&gt;There are other options to set as well. Check the manual page to
92 learn the details.&lt;/p&gt;
93
94 &lt;p&gt;If you are forced to moderate lists on a mailman installation where
95 the SSL certificate is self signed or not properly signed by a
96 generally accepted signing authority, you can set a environment
97 variable when calling listadmin to disable SSL verification:&lt;/p&gt;
98
99 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
100 PERL_LWP_SSL_VERIFY_HOSTNAME=0 listadmin
101 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
102
103 &lt;p&gt;If you want to moderate a subset of the lists you take care of, you
104 can provide an argument to the listadmin script like I do in the
105 initial screen dump (the xiph argument). Using an argument, only
106 lists matching the argument string will be processed. This make it
107 quick to accept messages if you notice the moderation request in your
108 email.&lt;/p&gt;
109
110 &lt;p&gt;Without the listadmin program, I would never be the moderator of 68
111 mailing lists, as I simply do not have time to spend on that if the
112 process was any slower. The listadmin program have saved me hours of
113 time I could spend elsewhere over the years. It truly is nice free
114 software.&lt;/p&gt;
115
116 &lt;p&gt;As usual, if you use Bitcoin and want to show your support of my
117 activities, please send Bitcoin donations to my address
118 &lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&amp;label=PetterReinholdtsenBlog&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
119 </description>
120 </item>
121
122 <item>
123 <title>Debian Jessie, PXE and automatic firmware installation</title>
124 <link>http://people.skolelinux.org/pere/blog/Debian_Jessie__PXE_and_automatic_firmware_installation.html</link>
125 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Jessie__PXE_and_automatic_firmware_installation.html</guid>
126 <pubDate>Fri, 17 Oct 2014 14:10:00 +0200</pubDate>
127 <description>&lt;p&gt;When PXE installing laptops with Debian, I often run into the
128 problem that the WiFi card require some firmware to work properly.
129 And it has been a pain to fix this using preseeding in Debian.
130 Normally something more is needed. But thanks to
131 &lt;a href=&quot;https://packages.qa.debian.org/i/isenkram.html&quot;&gt;my isenkram
132 package&lt;/a&gt; and its recent tasksel extension, it has now become easy
133 to do this using simple preseeding.&lt;/p&gt;
134
135 &lt;p&gt;The isenkram-cli package provide tasksel tasks which will install
136 firmware for the hardware found in the machine (actually, requested by
137 the kernel modules for the hardware). (It can also install user space
138 programs supporting the hardware detected, but that is not the focus
139 of this story.)&lt;/p&gt;
140
141 &lt;p&gt;To get this working in the default installation, two preeseding
142 values are needed. First, the isenkram-cli package must be installed
143 into the target chroot (aka the hard drive) before tasksel is executed
144 in the pkgsel step of the debian-installer system. This is done by
145 preseeding the base-installer/includes debconf value to include the
146 isenkram-cli package. The package name is next passed to debootstrap
147 for installation. With the isenkram-cli package in place, tasksel
148 will automatically use the isenkram tasks to detect hardware specific
149 packages for the machine being installed and install them, because
150 isenkram-cli contain tasksel tasks.&lt;/p&gt;
151
152 &lt;p&gt;Second, one need to enable the non-free APT repository, because
153 most firmware unfortunately is non-free. This is done by preseeding
154 the apt-mirror-setup step. This is unfortunate, but for a lot of
155 hardware it is the only option in Debian.&lt;/p&gt;
156
157 &lt;p&gt;The end result is two lines needed in your preseeding file to get
158 firmware installed automatically by the installer:&lt;/p&gt;
159
160 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
161 base-installer base-installer/includes string isenkram-cli
162 apt-mirror-setup apt-setup/non-free boolean true
163 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
164
165 &lt;p&gt;The current version of isenkram-cli in testing/jessie will install
166 both firmware and user space packages when using this method. It also
167 do not work well, so use version 0.15 or later. Installing both
168 firmware and user space packages might give you a bit more than you
169 want, so I decided to split the tasksel task in two, one for firmware
170 and one for user space programs. The firmware task is enabled by
171 default, while the one for user space programs is not. This split is
172 implemented in the package currently in unstable.&lt;/p&gt;
173
174 &lt;p&gt;If you decide to give this a go, please let me know (via email) how
175 this recipe work for you. :)&lt;/p&gt;
176
177 &lt;p&gt;So, I bet you are wondering, how can this work. First and
178 foremost, it work because tasksel is modular, and driven by whatever
179 files it find in /usr/lib/tasksel/ and /usr/share/tasksel/. So the
180 isenkram-cli package place two files for tasksel to find. First there
181 is the task description file (/usr/share/tasksel/descs/isenkram.desc):&lt;/p&gt;
182
183 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
184 Task: isenkram-packages
185 Section: hardware
186 Description: Hardware specific packages (autodetected by isenkram)
187 Based on the detected hardware various hardware specific packages are
188 proposed.
189 Test-new-install: show show
190 Relevance: 8
191 Packages: for-current-hardware
192
193 Task: isenkram-firmware
194 Section: hardware
195 Description: Hardware specific firmware packages (autodetected by isenkram)
196 Based on the detected hardware various hardware specific firmware
197 packages are proposed.
198 Test-new-install: mark show
199 Relevance: 8
200 Packages: for-current-hardware-firmware
201 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
202
203 &lt;p&gt;The key parts are Test-new-install which indicate how the task
204 should be handled and the Packages line referencing to a script in
205 /usr/lib/tasksel/packages/. The scripts use other scripts to get a
206 list of packages to install. The for-current-hardware-firmware script
207 look like this to list relevant firmware for the machine:
208
209 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
210 #!/bin/sh
211 #
212 PATH=/usr/sbin:$PATH
213 export PATH
214 isenkram-autoinstall-firmware -l
215 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
216
217 &lt;p&gt;With those two pieces in place, the firmware is installed by
218 tasksel during the normal d-i run. :)&lt;/p&gt;
219
220 &lt;p&gt;If you want to test what tasksel will install when isenkram-cli is
221 installed, run &lt;tt&gt;DEBIAN_PRIORITY=critical tasksel --test
222 --new-install&lt;/tt&gt; to get the list of packages that tasksel would
223 install.&lt;/p&gt;
224
225 &lt;p&gt;&lt;a href=&quot;https://wiki.debian.org/DebianEdu/&quot;&gt;Debian Edu&lt;/a&gt; will be
226 pilots in testing this feature, as isenkram is used there now to
227 install firmware, replacing the earlier scripts.&lt;/p&gt;
228 </description>
229 </item>
230
231 <item>
232 <title>Ubuntu used to show the bread prizes at ICA Storo</title>
233 <link>http://people.skolelinux.org/pere/blog/Ubuntu_used_to_show_the_bread_prizes_at_ICA_Storo.html</link>
234 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Ubuntu_used_to_show_the_bread_prizes_at_ICA_Storo.html</guid>
235 <pubDate>Sat, 4 Oct 2014 15:20:00 +0200</pubDate>
236 <description>&lt;p&gt;Today I came across an unexpected Ubuntu boot screen. Above the
237 bread shelf on the ICA shop at Storo in Oslo, the grub menu of Ubuntu
238 with Linux kernel 3.2.0-23 (ie probably version 12.04 LTS) was stuck
239 on a screen normally showing the bread types and prizes:&lt;/p&gt;
240
241 &lt;p align=&quot;center&quot;&gt;&lt;img width=&quot;70%&quot; src=&quot;http://people.skolelinux.org/pere/blog/images/2014-10-04-ubuntu-ica-storo-crop.jpeg&quot;&gt;&lt;/p&gt;
242
243 &lt;p&gt;If it had booted as it was supposed to, I would never had known
244 about this hidden Linux installation. It is interesting what
245 &lt;a href=&quot;http://revealingerrors.com/&quot;&gt;errors can reveal&lt;/a&gt;.&lt;/p&gt;
246 </description>
247 </item>
248
249 <item>
250 <title>New lsdvd release version 0.17 is ready</title>
251 <link>http://people.skolelinux.org/pere/blog/New_lsdvd_release_version_0_17_is_ready.html</link>
252 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/New_lsdvd_release_version_0_17_is_ready.html</guid>
253 <pubDate>Sat, 4 Oct 2014 08:40:00 +0200</pubDate>
254 <description>&lt;p&gt;The &lt;a href=&quot;https://sourceforge.net/p/lsdvd/&quot;&gt;lsdvd project&lt;/a&gt;
255 got a new set of developers a few weeks ago, after the original
256 developer decided to step down and pass the project to fresh blood.
257 This project is now maintained by Petter Reinholdtsen and Steve
258 Dibb.&lt;/p&gt;
259
260 &lt;p&gt;I just wrapped up
261 &lt;a href=&quot;https://sourceforge.net/p/lsdvd/mailman/message/32896061/&quot;&gt;a
262 new lsdvd release&lt;/a&gt;, available in git or from
263 &lt;a href=&quot;https://sourceforge.net/projects/lsdvd/files/lsdvd/&quot;&gt;the
264 download page&lt;/a&gt;. This is the changelog dated 2014-10-03 for version
265 0.17.&lt;/p&gt;
266
267 &lt;ul&gt;
268
269 &lt;li&gt;Ignore &#39;phantom&#39; audio, subtitle tracks&lt;/li&gt;
270 &lt;li&gt;Check for garbage in the program chains, which indicate that a track is
271 non-existant, to work around additional copy protection&lt;/li&gt;
272 &lt;li&gt;Fix displaying content type for audio tracks, subtitles&lt;/li&gt;
273 &lt;li&gt;Fix pallete display of first entry&lt;/li&gt;
274 &lt;li&gt;Fix include orders&lt;/li&gt;
275 &lt;li&gt;Ignore read errors in titles that would not be displayed anyway&lt;/li&gt;
276 &lt;li&gt;Fix the chapter count&lt;/li&gt;
277 &lt;li&gt;Make sure the array size and the array limit used when initialising
278 the palette size is the same.&lt;/li&gt;
279 &lt;li&gt;Fix array printing.&lt;/li&gt;
280 &lt;li&gt;Correct subsecond calculations.&lt;/li&gt;
281 &lt;li&gt;Add sector information to the output format.&lt;/li&gt;
282 &lt;li&gt;Clean up code to be closer to ANSI C and compile without warnings
283 with more GCC compiler warnings.&lt;/li&gt;
284
285 &lt;/ul&gt;
286
287 &lt;p&gt;This change bring together patches for lsdvd in use in various
288 Linux and Unix distributions, as well as patches submitted to the
289 project the last nine years. Please check it out. :)&lt;/p&gt;
290 </description>
291 </item>
292
293 <item>
294 <title>How to test Debian Edu Jessie despite some fatal problems with the installer</title>
295 <link>http://people.skolelinux.org/pere/blog/How_to_test_Debian_Edu_Jessie_despite_some_fatal_problems_with_the_installer.html</link>
296 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/How_to_test_Debian_Edu_Jessie_despite_some_fatal_problems_with_the_installer.html</guid>
297 <pubDate>Fri, 26 Sep 2014 12:20:00 +0200</pubDate>
298 <description>&lt;p&gt;The &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Debian Edu / Skolelinux
299 project&lt;/a&gt; provide a Linux solution for schools, including a
300 powerful desktop with education software, a central server providing
301 web pages, user database, user home directories, central login and PXE
302 boot of both clients without disk and the installation to install Debian
303 Edu on machines with disk (and a few other services perhaps to small
304 to mention here). We in the Debian Edu team are currently working on
305 the Jessie based version, trying to get everything in shape before the
306 freeze, to avoid having to maintain our own package repository in the
307 future. The
308 &lt;a href=&quot;https://wiki.debian.org/DebianEdu/Status/Jessie&quot;&gt;current
309 status&lt;/a&gt; can be seen on the Debian wiki, and there is still heaps of
310 work left. Some fatal problems block testing, breaking the installer,
311 but it is possible to work around these to get anyway. Here is a
312 recipe on how to get the installation limping along.&lt;/p&gt;
313
314 &lt;p&gt;First, download the test ISO via
315 &lt;a href=&quot;ftp://ftp.skolelinux.no/cd-edu-testing-nolocal-netinst/debian-edu-amd64-i386-NETINST-1.iso&quot;&gt;ftp&lt;/a&gt;,
316 &lt;a href=&quot;http://ftp.skolelinux.no/cd-edu-testing-nolocal-netinst/debian-edu-amd64-i386-NETINST-1.iso&quot;&gt;http&lt;/a&gt;
317 or rsync (use
318 ftp.skolelinux.org::cd-edu-testing-nolocal-netinst/debian-edu-amd64-i386-NETINST-1.iso).
319 The ISO build was broken on Tuesday, so we do not get a new ISO every
320 12 hours or so, but thankfully the ISO we already got we are able to
321 install with some tweaking.&lt;/p&gt;
322
323 &lt;p&gt;When you get to the Debian Edu profile question, go to tty2
324 (use Alt-Ctrl-F2), run&lt;/p&gt;
325
326 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
327 nano /usr/bin/edu-eatmydata-install
328 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
329
330 &lt;p&gt;and add &#39;exit 0&#39; as the second line, disabling the eatmydata
331 optimization. Return to the installation, select the profile you want
332 and continue. Without this change, exim4-config will fail to install
333 due to a known bug in eatmydata.&lt;/p&gt;
334
335 &lt;p&gt;When you get the grub question at the end, answer /dev/sda (or if
336 this do not work, figure out what your correct value would be. All my
337 test machines need /dev/sda, so I have no advice if it do not fit
338 your need.&lt;/p&gt;
339
340 &lt;p&gt;If you installed a profile including a graphical desktop, log in as
341 root after the initial boot from hard drive, and install the
342 education-desktop-XXX metapackage. XXX can be kde, gnome, lxde, xfce
343 or mate. If you want several desktop options, install more than one
344 metapackage. Once this is done, reboot and you should have a working
345 graphical login screen. This workaround should no longer be needed
346 once the education-tasks package version 1.801 enter testing in two
347 days.&lt;/p&gt;
348
349 &lt;p&gt;I believe the ISO build will start working on two days when the new
350 tasksel package enter testing and Steve McIntyre get a chance to
351 update the debian-cd git repository. The eatmydata, grub and desktop
352 issues are already fixed in unstable and testing, and should show up
353 on the ISO as soon as the ISO build start working again. Well the
354 eatmydata optimization is really just disabled. The proper fix
355 require an upload by the eatmydata maintainer applying the patch
356 provided in bug &lt;a href=&quot;https://bugs.debian.org/702711&quot;&gt;#702711&lt;/a&gt;.
357 The rest have proper fixes in unstable.&lt;/p&gt;
358
359 &lt;p&gt;I hope this get you going with the installation testing, as we are
360 quickly running out of time trying to get our Jessie based
361 installation ready before the distribution freeze in a month.&lt;/p&gt;
362 </description>
363 </item>
364
365 <item>
366 <title>Suddenly I am the new upstream of the lsdvd command line tool</title>
367 <link>http://people.skolelinux.org/pere/blog/Suddenly_I_am_the_new_upstream_of_the_lsdvd_command_line_tool.html</link>
368 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Suddenly_I_am_the_new_upstream_of_the_lsdvd_command_line_tool.html</guid>
369 <pubDate>Thu, 25 Sep 2014 11:20:00 +0200</pubDate>
370 <description>&lt;p&gt;I use the &lt;a href=&quot;https://sourceforge.net/p/lsdvd/&quot;&gt;lsdvd tool&lt;/a&gt;
371 to handle my fairly large DVD collection. It is a nice command line
372 tool to get details about a DVD, like title, tracks, track length,
373 etc, in XML, Perl or human readable format. But lsdvd have not seen
374 any new development since 2006 and had a few irritating bugs affecting
375 its use with some DVDs. Upstream seemed to be dead, and in January I
376 sent a small probe asking for a version control repository for the
377 project, without any reply. But I use it regularly and would like to
378 get &lt;a href=&quot;https://packages.qa.debian.org/lsdvd&quot;&gt;an updated version
379 into Debian&lt;/a&gt;. So two weeks ago I tried harder to get in touch with
380 the project admin, and after getting a reply from him explaining that
381 he was no longer interested in the project, I asked if I could take
382 over. And yesterday, I became project admin.&lt;/p&gt;
383
384 &lt;p&gt;I&#39;ve been in touch with a Gentoo developer and the Debian
385 maintainer interested in joining forces to maintain the upstream
386 project, and I hope we can get a new release out fairly quickly,
387 collecting the patches spread around on the internet into on place.
388 I&#39;ve added the relevant Debian patches to the freshly created git
389 repository, and expect the Gentoo patches to make it too. If you got
390 a DVD collection and care about command line tools, check out
391 &lt;a href=&quot;https://sourceforge.net/p/lsdvd/git/ci/master/tree/&quot;&gt;the git source&lt;/a&gt; and join
392 &lt;a href=&quot;https://sourceforge.net/p/lsdvd/mailman/&quot;&gt;the project mailing
393 list&lt;/a&gt;. :)&lt;/p&gt;
394 </description>
395 </item>
396
397 <item>
398 <title>Hva henger under skibrua over E16 på Sollihøgda?</title>
399 <link>http://people.skolelinux.org/pere/blog/Hva_henger_under_skibrua_over_E16_p__Sollih_gda_.html</link>
400 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Hva_henger_under_skibrua_over_E16_p__Sollih_gda_.html</guid>
401 <pubDate>Sun, 21 Sep 2014 09:50:00 +0200</pubDate>
402 <description>&lt;p&gt;Rundt omkring i Oslo og Østlandsområdet henger det bokser over
403 veiene som jeg har lurt på hva gjør. De har ut fra plassering og
404 vinkling sett ut som bokser som sniffer ut et eller annet fra
405 forbipasserende trafikk, men det har vært uklart for meg hva det er de
406 leser av. Her om dagen tok jeg bilde av en slik boks som henger under
407 &lt;a href=&quot;http://www.openstreetmap.no/?zoom=19&amp;mlat=59.96396&amp;mlon=10.34443&amp;layers=B00000&quot;&gt;ei
408 skibru på Sollihøgda&lt;/a&gt;:&lt;/p&gt;
409
410 &lt;p align=&quot;center&quot;&gt;&lt;img width=&quot;60%&quot; src=&quot;http://people.skolelinux.org/pere/blog/images/2014-09-13-kapsch-sollihogda-crop.jpeg&quot;&gt;&lt;/p&gt;
411
412 &lt;p&gt;Boksen er tydelig merket «Kapsch &gt;&gt;&gt;», logoen til
413 &lt;a href=&quot;http://www.kapsch.net/&quot;&gt;det sveitsiske selskapet Kapsch&lt;/a&gt; som
414 blant annet lager sensorsystemer for veitrafikk. Men de lager mye
415 forskjellig, og jeg kjente ikke igjen boksen på utseendet etter en
416 kjapp titt på produktlista til selskapet.&lt;/p&gt;
417
418 &lt;p&gt;I og med at boksen henger over veien E16, en riksvei vedlikeholdt
419 av Statens Vegvesen, så antok jeg at det burde være mulig å bruke
420 REST-API-et som gir tilgang til vegvesenets database over veier,
421 skilter og annet veirelatert til å finne ut hva i alle dager dette
422 kunne være. De har både
423 &lt;a href=&quot;https://www.vegvesen.no/nvdb/api/dokumentasjon/datakatalog&quot;&gt;en
424 datakatalog&lt;/a&gt; og
425 &lt;a href=&quot;https://www.vegvesen.no/nvdb/api/dokumentasjon/sok&quot;&gt;et
426 søk&lt;/a&gt;, der en kan søke etter ulike typer oppføringer innen for et
427 gitt geografisk område. Jeg laget et enkelt shell-script for å hente
428 ut antall av en gitt type innenfor området skibrua dekker, og listet
429 opp navnet på typene som ble funnet. Orket ikke slå opp hvordan
430 URL-koding av aktuelle strenger kunne gjøres mer generisk, og brukte
431 en stygg sed-linje i stedet.&lt;/p&gt;
432
433 &lt;blockquote&gt;&lt;pre&gt;
434 #!/bin/sh
435 urlmap() {
436 sed \
437 -e &#39;s/ / /g&#39; -e &#39;s/{/%7B/g&#39; \
438 -e &#39;s/}/%7D/g&#39; -e &#39;s/\[/%5B/g&#39; \
439 -e &#39;s/\]/%5D/g&#39; -e &#39;s/ /%20/g&#39; \
440 -e &#39;s/,/%2C/g&#39; -e &#39;s/\&quot;/%22/g&#39; \
441 -e &#39;s/:/%3A/g&#39;
442 }
443
444 lookup() {
445 url=&quot;$1&quot;
446 curl -s -H &#39;Accept: application/vnd.vegvesen.nvdb-v1+xml&#39; \
447 &quot;https://www.vegvesen.no/nvdb/api$url&quot; | xmllint --format -
448 }
449
450 for id in $(seq 1 874) ; do
451 search=&quot;{
452 lokasjon: {
453 bbox: \&quot;10.34425,59.96386,10.34458,59.96409\&quot;,
454 srid: \&quot;WGS84\&quot;
455 },
456 objektTyper: [{
457 id: $id, antall: 10
458 }]
459 }&quot;
460
461 query=/sok?kriterie=$(echo $search | urlmap)
462 if lookup &quot;$query&quot; |
463 grep -q &#39;&amp;lt;totaltAntallReturnert&gt;0&amp;lt;&#39;
464 then
465 :
466 else
467 echo $id
468 lookup &quot;/datakatalog/objekttyper/$id&quot; |grep &#39;^ &amp;lt;navn&gt;&#39;
469 fi
470 done
471
472 exit 0
473 &lt;/pre&gt;&lt;/blockquote&gt;
474
475 Aktuelt ID-område 1-874 var riktig i datakatalogen da jeg laget
476 scriptet. Det vil endre seg over tid. Skriptet listet så opp
477 aktuelle typer i og rundt skibrua:
478
479 &lt;blockquote&gt;&lt;pre&gt;
480 5
481 &amp;lt;navn&gt;Rekkverk&amp;lt;/navn&gt;
482 14
483 &amp;lt;navn&gt;Rekkverksende&amp;lt;/navn&gt;
484 47
485 &amp;lt;navn&gt;Trafikklomme&amp;lt;/navn&gt;
486 49
487 &amp;lt;navn&gt;Trafikkøy&amp;lt;/navn&gt;
488 60
489 &amp;lt;navn&gt;Bru&amp;lt;/navn&gt;
490 79
491 &amp;lt;navn&gt;Stikkrenne/Kulvert&amp;lt;/navn&gt;
492 80
493 &amp;lt;navn&gt;Grøft, åpen&amp;lt;/navn&gt;
494 86
495 &amp;lt;navn&gt;Belysningsstrekning&amp;lt;/navn&gt;
496 95
497 &amp;lt;navn&gt;Skiltpunkt&amp;lt;/navn&gt;
498 96
499 &amp;lt;navn&gt;Skiltplate&amp;lt;/navn&gt;
500 98
501 &amp;lt;navn&gt;Referansestolpe&amp;lt;/navn&gt;
502 99
503 &amp;lt;navn&gt;Vegoppmerking, langsgående&amp;lt;/navn&gt;
504 105
505 &amp;lt;navn&gt;Fartsgrense&amp;lt;/navn&gt;
506 106
507 &amp;lt;navn&gt;Vinterdriftsstrategi&amp;lt;/navn&gt;
508 172
509 &amp;lt;navn&gt;Trafikkdeler&amp;lt;/navn&gt;
510 241
511 &amp;lt;navn&gt;Vegdekke&amp;lt;/navn&gt;
512 293
513 &amp;lt;navn&gt;Breddemåling&amp;lt;/navn&gt;
514 301
515 &amp;lt;navn&gt;Kantklippareal&amp;lt;/navn&gt;
516 318
517 &amp;lt;navn&gt;Snø-/isrydding&amp;lt;/navn&gt;
518 445
519 &amp;lt;navn&gt;Skred&amp;lt;/navn&gt;
520 446
521 &amp;lt;navn&gt;Dokumentasjon&amp;lt;/navn&gt;
522 452
523 &amp;lt;navn&gt;Undergang&amp;lt;/navn&gt;
524 528
525 &amp;lt;navn&gt;Tverrprofil&amp;lt;/navn&gt;
526 532
527 &amp;lt;navn&gt;Vegreferanse&amp;lt;/navn&gt;
528 534
529 &amp;lt;navn&gt;Region&amp;lt;/navn&gt;
530 535
531 &amp;lt;navn&gt;Fylke&amp;lt;/navn&gt;
532 536
533 &amp;lt;navn&gt;Kommune&amp;lt;/navn&gt;
534 538
535 &amp;lt;navn&gt;Gate&amp;lt;/navn&gt;
536 539
537 &amp;lt;navn&gt;Transportlenke&amp;lt;/navn&gt;
538 540
539 &amp;lt;navn&gt;Trafikkmengde&amp;lt;/navn&gt;
540 570
541 &amp;lt;navn&gt;Trafikkulykke&amp;lt;/navn&gt;
542 571
543 &amp;lt;navn&gt;Ulykkesinvolvert enhet&amp;lt;/navn&gt;
544 572
545 &amp;lt;navn&gt;Ulykkesinvolvert person&amp;lt;/navn&gt;
546 579
547 &amp;lt;navn&gt;Politidistrikt&amp;lt;/navn&gt;
548 583
549 &amp;lt;navn&gt;Vegbredde&amp;lt;/navn&gt;
550 591
551 &amp;lt;navn&gt;Høydebegrensning&amp;lt;/navn&gt;
552 592
553 &amp;lt;navn&gt;Nedbøyningsmåling&amp;lt;/navn&gt;
554 597
555 &amp;lt;navn&gt;Støy-luft, Strekningsdata&amp;lt;/navn&gt;
556 601
557 &amp;lt;navn&gt;Oppgravingsdata&amp;lt;/navn&gt;
558 602
559 &amp;lt;navn&gt;Oppgravingslag&amp;lt;/navn&gt;
560 603
561 &amp;lt;navn&gt;PMS-parsell&amp;lt;/navn&gt;
562 604
563 &amp;lt;navn&gt;Vegnormalstrekning&amp;lt;/navn&gt;
564 605
565 &amp;lt;navn&gt;Værrelatert strekning&amp;lt;/navn&gt;
566 616
567 &amp;lt;navn&gt;Feltstrekning&amp;lt;/navn&gt;
568 617
569 &amp;lt;navn&gt;Adressepunkt&amp;lt;/navn&gt;
570 626
571 &amp;lt;navn&gt;Friksjonsmåleserie&amp;lt;/navn&gt;
572 629
573 &amp;lt;navn&gt;Vegdekke, flatelapping&amp;lt;/navn&gt;
574 639
575 &amp;lt;navn&gt;Kurvatur, horisontalelement&amp;lt;/navn&gt;
576 640
577 &amp;lt;navn&gt;Kurvatur, vertikalelement&amp;lt;/navn&gt;
578 642
579 &amp;lt;navn&gt;Kurvatur, vertikalpunkt&amp;lt;/navn&gt;
580 643
581 &amp;lt;navn&gt;Statistikk, trafikkmengde&amp;lt;/navn&gt;
582 647
583 &amp;lt;navn&gt;Statistikk, vegbredde&amp;lt;/navn&gt;
584 774
585 &amp;lt;navn&gt;Nedbøyningsmåleserie&amp;lt;/navn&gt;
586 775
587 &amp;lt;navn&gt;ATK, influensstrekning&amp;lt;/navn&gt;
588 794
589 &amp;lt;navn&gt;Systemobjekt&amp;lt;/navn&gt;
590 810
591 &amp;lt;navn&gt;Vinterdriftsklasse&amp;lt;/navn&gt;
592 821
593 &amp;lt;navn&gt;Funksjonell vegklasse&amp;lt;/navn&gt;
594 825
595 &amp;lt;navn&gt;Kurvatur, stigning&amp;lt;/navn&gt;
596 838
597 &amp;lt;navn&gt;Vegbredde, beregnet&amp;lt;/navn&gt;
598 862
599 &amp;lt;navn&gt;Reisetidsregistreringspunkt&amp;lt;/navn&gt;
600 871
601 &amp;lt;navn&gt;Bruksklasse&amp;lt;/navn&gt;
602 &lt;/pre&gt;&lt;/blockquote&gt;
603
604 &lt;p&gt;Av disse ser ID 775 og 862 mest relevant ut. ID 775 antar jeg
605 refererer til fotoboksen som står like ved brua, mens
606 «Reisetidsregistreringspunkt» kanskje kan være boksen som henger der.
607 Hvordan finner jeg så ut hva dette kan være for noe. En titt på
608 &lt;a href=&quot;http://labs.vegdata.no/nvdb-datakatalog/862-Reisetidsregistreringspunkt/&quot;&gt;datakatalogsiden
609 for ID 862/Reisetidsregistreringspunkt&lt;/a&gt; viser at det er finnes 53
610 slike målere i Norge, og hvor de er plassert, men gir ellers få
611 detaljer. Det er plassert 40 på østlandet og 13 i Trondheimsregionen.
612 Men siden nevner «AutoPASS», og hvis en slår opp oppføringen på
613 Sollihøgda nevner den «Ciber AS» som ID for eksternt system. (Kan det
614 være snakk om
615 &lt;a href=&quot;http://www.proff.no/selskap/ciber-norge-as/oslo/internettdesign-og-programmering/Z0I3KMF4/&quot;&gt;Ciber
616 Norge AS&lt;/a&gt;, et selskap eid av Ciber Europe Bv?) Et nettsøk på
617 «Ciber AS autopass» fører meg til en artikkel fra NRK Trøndelag i
618 2013 med tittel
619 «&lt;a href=&quot;http://www.nrk.no/trondelag/sjekk-dette-hvis-du-vil-unnga-ko-1.11327947&quot;&gt;Sjekk
620 dette hvis du vil unngå kø&lt;/a&gt;». Artikkelen henviser til vegvesenets
621 nettside
622 &lt;a href=&quot;http://www.reisetider.no/reisetid/forside.html&quot;&gt;reisetider.no&lt;/a&gt;
623 som har en
624 &lt;a href=&quot;http://www.reisetider.no/reisetid/omrade.html?omrade=5&quot;&gt;kartside
625 for Østlandet&lt;/a&gt; som viser at det måles mellom Sandvika og Sollihøgda.
626 Det kan dermed se ut til at jeg har funnet ut hva boksene gjør.&lt;/p&gt;
627
628 &lt;p&gt;Hvis det stemmer, så er dette bokser som leser av AutoPASS-ID-en
629 til alle passerende biler med AutoPASS-brikke, og dermed gjør det mulig
630 for de som kontrollerer boksene å holde rede på hvor en gitt bil er
631 når den passerte et slikt målepunkt. NRK-artikkelen forteller at
632 denne informasjonen i dag kun brukes til å koble to
633 AutoPASS-brikkepasseringer passeringer sammen for å beregne
634 reisetiden, og at bruken er godkjent av Datatilsynet. Det er desverre
635 ikke mulig for en sjåfør som passerer under en slik boks å kontrollere
636 at AutoPASS-ID-en kun brukes til dette i dag og i fremtiden.&lt;/p&gt;
637
638 &lt;p&gt;I tillegg til denne type AutoPASS-sniffere vet jeg at det også
639 finnes mange automatiske stasjoner som tar betalt pr. passering (aka
640 bomstasjoner), og der lagres informasjon om tid, sted og bilnummer i
641 10 år. Finnes det andre slike sniffere plassert ut på veiene?&lt;/p&gt;
642
643 &lt;p&gt;Personlig har jeg valgt å ikke bruke AutoPASS-brikke, for å gjøre
644 det vanskeligere og mer kostbart for de som vil invadere privatsfæren
645 og holde rede på hvor bilen min beveger seg til enhver tid. Jeg håper
646 flere vil gjøre det samme, selv om det gir litt høyere private
647 utgifter (dyrere bompassering). Vern om privatsfæren koster i disse
648 dager.&lt;/p&gt;
649
650 &lt;p&gt;Takk til Jan Kristian Jensen i Statens Vegvesen for tips om
651 dokumentasjon på vegvesenets REST-API.&lt;/p&gt;
652 </description>
653 </item>
654
655 <item>
656 <title>Speeding up the Debian installer using eatmydata and dpkg-divert</title>
657 <link>http://people.skolelinux.org/pere/blog/Speeding_up_the_Debian_installer_using_eatmydata_and_dpkg_divert.html</link>
658 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Speeding_up_the_Debian_installer_using_eatmydata_and_dpkg_divert.html</guid>
659 <pubDate>Tue, 16 Sep 2014 14:00:00 +0200</pubDate>
660 <description>&lt;p&gt;The &lt;a href=&quot;https://www.debian.org/&quot;&gt;Debian&lt;/a&gt; installer could be
661 a lot quicker. When we install more than 2000 packages in
662 &lt;a href=&quot;http://www.skolelinux.org/&quot;&gt;Skolelinux / Debian Edu&lt;/a&gt; using
663 tasksel in the installer, unpacking the binary packages take forever.
664 A part of the slow I/O issue was discussed in
665 &lt;a href=&quot;https://bugs.debian.org/613428&quot;&gt;bug #613428&lt;/a&gt; about too
666 much file system sync-ing done by dpkg, which is the package
667 responsible for unpacking the binary packages. Other parts (like code
668 executed by postinst scripts) might also sync to disk during
669 installation. All this sync-ing to disk do not really make sense to
670 me. If the machine crash half-way through, I start over, I do not try
671 to salvage the half installed system. So the failure sync-ing is
672 supposed to protect against, hardware or system crash, is not really
673 relevant while the installer is running.&lt;/p&gt;
674
675 &lt;p&gt;A few days ago, I thought of a way to get rid of all the file
676 system sync()-ing in a fairly non-intrusive way, without the need to
677 change the code in several packages. The idea is not new, but I have
678 not heard anyone propose the approach using dpkg-divert before. It
679 depend on the small and clever package
680 &lt;a href=&quot;https://packages.qa.debian.org/eatmydata&quot;&gt;eatmydata&lt;/a&gt;, which
681 uses LD_PRELOAD to replace the system functions for syncing data to
682 disk with functions doing nothing, thus allowing programs to live
683 dangerous while speeding up disk I/O significantly. Instead of
684 modifying the implementation of dpkg, apt and tasksel (which are the
685 packages responsible for selecting, fetching and installing packages),
686 it occurred to me that we could just divert the programs away, replace
687 them with a simple shell wrapper calling
688 &quot;eatmydata&amp;nbsp;$program&amp;nbsp;$@&quot;, to get the same effect.
689 Two days ago I decided to test the idea, and wrapped up a simple
690 implementation for the Debian Edu udeb.&lt;/p&gt;
691
692 &lt;p&gt;The effect was stunning. In my first test it reduced the running
693 time of the pkgsel step (installing tasks) from 64 to less than 44
694 minutes (20 minutes shaved off the installation) on an old Dell
695 Latitude D505 machine. I am not quite sure what the optimised time
696 would have been, as I messed up the testing a bit, causing the debconf
697 priority to get low enough for two questions to pop up during
698 installation. As soon as I saw the questions I moved the installation
699 along, but do not know how long the question were holding up the
700 installation. I did some more measurements using Debian Edu Jessie,
701 and got these results. The time measured is the time stamp in
702 /var/log/syslog between the &quot;pkgsel: starting tasksel&quot; and the
703 &quot;pkgsel: finishing up&quot; lines, if you want to do the same measurement
704 yourself. In Debian Edu, the tasksel dialog do not show up, and the
705 timing thus do not depend on how quickly the user handle the tasksel
706 dialog.&lt;/p&gt;
707
708 &lt;p&gt;&lt;table&gt;
709
710 &lt;tr&gt;
711 &lt;th&gt;Machine/setup&lt;/th&gt;
712 &lt;th&gt;Original tasksel&lt;/th&gt;
713 &lt;th&gt;Optimised tasksel&lt;/th&gt;
714 &lt;th&gt;Reduction&lt;/th&gt;
715 &lt;/tr&gt;
716
717 &lt;tr&gt;
718 &lt;td&gt;Latitude D505 Main+LTSP LXDE&lt;/td&gt;
719 &lt;td&gt;64 min (07:46-08:50)&lt;/td&gt;
720 &lt;td&gt;&lt;44 min (11:27-12:11)&lt;/td&gt;
721 &lt;td&gt;&gt;20 min 18%&lt;/td&gt;
722 &lt;/tr&gt;
723
724 &lt;tr&gt;
725 &lt;td&gt;Latitude D505 Roaming LXDE&lt;/td&gt;
726 &lt;td&gt;57 min (08:48-09:45)&lt;/td&gt;
727 &lt;td&gt;34 min (07:43-08:17)&lt;/td&gt;
728 &lt;td&gt;23 min 40%&lt;/td&gt;
729 &lt;/tr&gt;
730
731 &lt;tr&gt;
732 &lt;td&gt;Latitude D505 Minimal&lt;/td&gt;
733 &lt;td&gt;22 min (10:37-10:59)&lt;/td&gt;
734 &lt;td&gt;11 min (11:16-11:27)&lt;/td&gt;
735 &lt;td&gt;11 min 50%&lt;/td&gt;
736 &lt;/tr&gt;
737
738 &lt;tr&gt;
739 &lt;td&gt;Thinkpad X200 Minimal&lt;/td&gt;
740 &lt;td&gt;6 min (08:19-08:25)&lt;/td&gt;
741 &lt;td&gt;4 min (08:04-08:08)&lt;/td&gt;
742 &lt;td&gt;2 min 33%&lt;/td&gt;
743 &lt;/tr&gt;
744
745 &lt;tr&gt;
746 &lt;td&gt;Thinkpad X200 Roaming KDE&lt;/td&gt;
747 &lt;td&gt;19 min (09:21-09:40)&lt;/td&gt;
748 &lt;td&gt;15 min (10:25-10:40)&lt;/td&gt;
749 &lt;td&gt;4 min 21%&lt;/td&gt;
750 &lt;/tr&gt;
751
752 &lt;/table&gt;&lt;/p&gt;
753
754 &lt;p&gt;The test is done using a netinst ISO on a USB stick, so some of the
755 time is spent downloading packages. The connection to the Internet
756 was 100Mbit/s during testing, so downloading should not be a
757 significant factor in the measurement. Download typically took a few
758 seconds to a few minutes, depending on the amount of packages being
759 installed.&lt;/p&gt;
760
761 &lt;p&gt;The speedup is implemented by using two hooks in
762 &lt;a href=&quot;https://www.debian.org/devel/debian-installer/&quot;&gt;Debian
763 Installer&lt;/a&gt;, the pre-pkgsel.d hook to set up the diverts, and the
764 finish-install.d hook to remove the divert at the end of the
765 installation. I picked the pre-pkgsel.d hook instead of the
766 post-base-installer.d hook because I test using an ISO without the
767 eatmydata package included, and the post-base-installer.d hook in
768 Debian Edu can only operate on packages included in the ISO. The
769 negative effect of this is that I am unable to activate this
770 optimization for the kernel installation step in d-i. If the code is
771 moved to the post-base-installer.d hook, the speedup would be larger
772 for the entire installation.&lt;/p&gt;
773
774 &lt;p&gt;I&#39;ve implemented this in the
775 &lt;a href=&quot;https://packages.qa.debian.org/debian-edu-install&quot;&gt;debian-edu-install&lt;/a&gt;
776 git repository, and plan to provide the optimization as part of the
777 Debian Edu installation. If you want to test this yourself, you can
778 create two files in the installer (or in an udeb). One shell script
779 need do go into /usr/lib/pre-pkgsel.d/, with content like this:&lt;/p&gt;
780
781 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
782 #!/bin/sh
783 set -e
784 . /usr/share/debconf/confmodule
785 info() {
786 logger -t my-pkgsel &quot;info: $*&quot;
787 }
788 error() {
789 logger -t my-pkgsel &quot;error: $*&quot;
790 }
791 override_install() {
792 apt-install eatmydata || true
793 if [ -x /target/usr/bin/eatmydata ] ; then
794 for bin in dpkg apt-get aptitude tasksel ; do
795 file=/usr/bin/$bin
796 # Test that the file exist and have not been diverted already.
797 if [ -f /target$file ] ; then
798 info &quot;diverting $file using eatmydata&quot;
799 printf &quot;#!/bin/sh\neatmydata $bin.distrib \&quot;\$@\&quot;\n&quot; \
800 &gt; /target$file.edu
801 chmod 755 /target$file.edu
802 in-target dpkg-divert --package debian-edu-config \
803 --rename --quiet --add $file
804 ln -sf ./$bin.edu /target$file
805 else
806 error &quot;unable to divert $file, as it is missing.&quot;
807 fi
808 done
809 else
810 error &quot;unable to find /usr/bin/eatmydata after installing the eatmydata pacage&quot;
811 fi
812 }
813
814 override_install
815 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
816
817 &lt;p&gt;To clean up, another shell script should go into
818 /usr/lib/finish-install.d/ with code like this:
819
820 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
821 #! /bin/sh -e
822 . /usr/share/debconf/confmodule
823 error() {
824 logger -t my-finish-install &quot;error: $@&quot;
825 }
826 remove_install_override() {
827 for bin in dpkg apt-get aptitude tasksel ; do
828 file=/usr/bin/$bin
829 if [ -x /target$file.edu ] ; then
830 rm /target$file
831 in-target dpkg-divert --package debian-edu-config \
832 --rename --quiet --remove $file
833 rm /target$file.edu
834 else
835 error &quot;Missing divert for $file.&quot;
836 fi
837 done
838 sync # Flush file buffers before continuing
839 }
840
841 remove_install_override
842 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
843
844 &lt;p&gt;In Debian Edu, I placed both code fragments in a separate script
845 edu-eatmydata-install and call it from the pre-pkgsel.d and
846 finish-install.d scripts.&lt;/p&gt;
847
848 &lt;p&gt;By now you might ask if this change should get into the normal
849 Debian installer too? I suspect it should, but am not sure the
850 current debian-installer coordinators find it useful enough. It also
851 depend on the side effects of the change. I&#39;m not aware of any, but I
852 guess we will see if the change is safe after some more testing.
853 Perhaps there is some package in Debian depending on sync() and
854 fsync() having effect? Perhaps it should go into its own udeb, to
855 allow those of us wanting to enable it to do so without affecting
856 everyone.&lt;/p&gt;
857
858 &lt;p&gt;Update 2014-09-24: Since a few days ago, enabling this optimization
859 will break installation of all programs using gnutls because of
860 &lt;a href=&quot;https://bugs.debian.org/702711&quot;&gt;bug #702711&lt;/a&gt;. An updated
861 eatmydata package in Debian will solve it.&lt;/p&gt;
862
863 &lt;p&gt;Update 2014-10-17: The bug mentioned above is fixed in testing and
864 the optimization work again. And I have discovered that the
865 dpkg-divert trick is not really needed and implemented a slightly
866 simpler approach as part of the debian-edu-install package. See
867 tools/edu-eatmydata-install in the source package.&lt;/p&gt;
868 </description>
869 </item>
870
871 <item>
872 <title>Good bye subkeys.pgp.net, welcome pool.sks-keyservers.net</title>
873 <link>http://people.skolelinux.org/pere/blog/Good_bye_subkeys_pgp_net__welcome_pool_sks_keyservers_net.html</link>
874 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Good_bye_subkeys_pgp_net__welcome_pool_sks_keyservers_net.html</guid>
875 <pubDate>Wed, 10 Sep 2014 13:10:00 +0200</pubDate>
876 <description>&lt;p&gt;Yesterday, I had the pleasure of attending a talk with the
877 &lt;a href=&quot;http://www.nuug.no/&quot;&gt;Norwegian Unix User Group&lt;/a&gt; about
878 &lt;a href=&quot;http://www.nuug.no/aktiviteter/20140909-sks-keyservers/&quot;&gt;the
879 OpenPGP keyserver pool sks-keyservers.net&lt;/a&gt;, and was very happy to
880 learn that there is a large set of publicly available key servers to
881 use when looking for peoples public key. So far I have used
882 subkeys.pgp.net, and some times wwwkeys.nl.pgp.net when the former
883 were misbehaving, but those days are ended. The servers I have used
884 up until yesterday have been slow and some times unavailable. I hope
885 those problems are gone now.&lt;/p&gt;
886
887 &lt;p&gt;Behind the round robin DNS entry of the
888 &lt;a href=&quot;https://sks-keyservers.net/&quot;&gt;sks-keyservers.net&lt;/a&gt; service
889 there is a pool of more than 100 keyservers which are checked every
890 day to ensure they are well connected and up to date. It must be
891 better than what I have used so far. :)&lt;/p&gt;
892
893 &lt;p&gt;Yesterdays speaker told me that the service is the default
894 keyserver provided by the default configuration in GnuPG, but this do
895 not seem to be used in Debian. Perhaps it should?&lt;/p&gt;
896
897 &lt;p&gt;Anyway, I&#39;ve updated my ~/.gnupg/options file to now include this
898 line:&lt;/p&gt;
899
900 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
901 keyserver pool.sks-keyservers.net
902 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
903
904 &lt;p&gt;With GnuPG version 2 one can also locate the keyserver using SRV
905 entries in DNS. Just for fun, I did just that at work, so now every
906 user of GnuPG at the University of Oslo should find a OpenGPG
907 keyserver automatically should their need it:&lt;/p&gt;
908
909 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
910 % host -t srv _pgpkey-http._tcp.uio.no
911 _pgpkey-http._tcp.uio.no has SRV record 0 100 11371 pool.sks-keyservers.net.
912 %
913 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
914
915 &lt;p&gt;Now if only
916 &lt;a href=&quot;http://ietfreport.isoc.org/idref/draft-shaw-openpgp-hkp/&quot;&gt;the
917 HKP lookup protocol&lt;/a&gt; supported finding signature paths, I would be
918 very happy. It can look up a given key or search for a user ID, but I
919 normally do not want that, but to find a trust path from my key to
920 another key. Given a user ID or key ID, I would like to find (and
921 download) the keys representing a signature path from my key to the
922 key in question, to be able to get a trust path between the two keys.
923 This is as far as I can tell not possible today. Perhaps something
924 for a future version of the protocol?&lt;/p&gt;
925 </description>
926 </item>
927
928 </channel>
929 </rss>