]> pere.pagekite.me Git - homepage.git/blob - blog/index.html
Summarize 2024.
[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://www.hungry.com/~pere/blog/style.css" />
8 <link rel="stylesheet" type="text/css" media="screen" href="http://www.hungry.com/~pere/blog/vim.css" />
9 <link rel="alternate" title="RSS Feed" href="http://www.hungry.com/~pere/blog/index.rss" type="application/rss+xml" />
10 </head>
11 <body>
12 <div class="title">
13 <h1>
14 <a href="http://www.hungry.com/~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://www.hungry.com/~pere/blog/New_oggz_release_1_1_2_after_15_years.html">New oggz release 1.1.2 after 15 years</a></div>
24 <div class="date"> 9th February 2025</div>
25 <div class="body"><p>A little over a week ago, I noticed
26 <a href="https://tracker.debian.org/pkg/liboggz">the liboggz
27 package</a> on my Debian dashboard had not had a new upstream release
28 for a while. A closer look showed that its last release, version
29 1.1.1, happened in 2010. A few patches had accumulated in the Debian
30 package, and I even noticed that I had passed on these patches to
31 upstream five years ago. A handful crash bugs had been reported
32 against the Debian package, and looking at the upstream repository I
33 even found a few crash bugs reported there too. To add insult to
34 injury, I discovered that upstream had accumulated several fixes in the
35 years between 2010 and now, and many of them had not made their way
36 into the Debian package. I decided enough was enough, and that a new
37 upstream release was needed fixing these nasty crash bugs. Luckily I
38 am also a member of the Xiph team, aka upstream, and could actually go
39 to work immediately to fix it.</p>
40
41 <p>I started by adding automatic build testing on
42 <a href="https://gitlab.xiph.org/xiph/liboggz">the Xiph gitlab oggz
43 instance</a>, to get a better idea of the state of affairs with the
44 code base. This exposed a few build problems, which I had to fix. In
45 parallel to this, I sent an email announcing my wish for a new release
46 to every person who had committed to the upstream code base since
47 2010, and asked for help doing a new release both on email and on the
48 #xiph IRC channel. Sadly only a fraction of their email providers
49 accepted my email. But Ralph Giles in the Xiph team came to the
50 rescue and provided invaluable help to guide be through the release
51 Xiph process. While this was going on, I spent a few days tracking
52 down the crash bugs with good help from
53 <a href="https://www.valgrind.org/">valgrind</a>, and came up with
54 patch proposals to get rid of at least these specific crash bugs. The
55 open issues also had to be checked. Several of them proved to be
56 fixed already, but a few I had to creat patches for. I also checked
57 out the Debian, Arch, Fedora, Suse and Gentoo packages to see if there
58 were patches applied in these Linux distributions that should be
59 passed upstream. The end result was ready yesterday. A new liboggz
60 release, version 1.1.2, was tagged, wrapped up and published on the
61 project page. And today, the new release was uploaded into
62 Debian.</p>
63
64 <p>You are probably by now curious on what actually changed in the
65 library. I guess the most interesting new feature was support for
66 Opus and VP8. Almost all other changes were stability or
67 documentation fixes. The rest were related to the gitlab continuous
68 integration testing. All in all, this was really a minor update,
69 hence the version bump only from 1.1.1 to to 1.1.2, but it was long
70 overdue and I am very happy that it is out the door.</p>
71
72 <p>One change proposed upstream was not included this time, as it
73 extended the API and changed some of the existing library methods, and
74 thus require a major SONAME bump and possibly code changes in every
75 program using the library. As I am not that familiar with the code
76 base, I am unsure if I am the right person to evaluate the change.
77 Perhaps later.</p>
78
79 <p>Since the release was tagged, a few minor fixes has been committed
80 upstream already: automatic testing the cross building to Windows, and
81 documentation updates linking to the correct project page. If a
82 important issue is discovered with this release, I guess a new release
83 might happen soon including the minor fixes. If not, perhaps they can
84 wait fifteen years. :)</p>
85
86 <p>I would like to send a big thank you to everyone that helped make
87 this release happen, from the people adding fixes upstream over the
88 course of fifteen years, to the ones reporting crash bugs, other bugs
89 and those maintaining the package in various Linux distributions.
90 Thank you very much for your time and interest.</p>
91
92 <p>As usual, if you use Bitcoin and want to show your support of my
93 activities, please send Bitcoin donations to my address
94 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
95 </div>
96 <div class="tags">
97
98
99 Tags: <a href="http://www.hungry.com/~pere/blog/tags/debian">debian</a>, <a href="http://www.hungry.com/~pere/blog/tags/english">english</a>, <a href="http://www.hungry.com/~pere/blog/tags/multimedia">multimedia</a>, <a href="http://www.hungry.com/~pere/blog/tags/standard">standard</a>, <a href="http://www.hungry.com/~pere/blog/tags/video">video</a>.
100
101
102 </div>
103 </div>
104 <div class="padding"></div>
105
106 <div class="entry">
107 <div class="title"><a href="http://www.hungry.com/~pere/blog/Frokostseminar_om_Noark_5_i_Oslo_fredag_2025_03_14.html">Frokostseminar om Noark 5 i Oslo fredag 2025-03-14</a></div>
108 <div class="date">31st January 2025</div>
109 <div class="body"><p>Nikita-prosjektet, der jeg er involvert, inviterer i samarbeid med
110 forskningsgruppen METAINFO og foreningen NUUG, til et frokostseminar
111 om Noark 5 og Noark 5 Tjenestegrensesnitt fredag 2025-03-14. Fokus
112 denne gangen er på bevaring og kassasjon. Seminaret finner sted ved
113 OsloMet, Pilestredet 46. Vi håper å få til videostrømming via
114 Internett av presentasjoner og paneldiskusjon. Oppdatert program og
115 lenker til påmeldingsskjema finner en via
116 <a href="https://noark.codeberg.page/noark5-seminars/2025-03-14-noark-workshop.html">arrangementets infoside</a>. Arrangementet er gratis.
117
118 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
119 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
120 til min adresse
121 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>. Merk,
122 betaling med bitcoin er ikke anonymt. :)</p>
123 </div>
124 <div class="tags">
125
126
127 Tags: <a href="http://www.hungry.com/~pere/blog/tags/noark5">noark5</a>, <a href="http://www.hungry.com/~pere/blog/tags/norsk">norsk</a>, <a href="http://www.hungry.com/~pere/blog/tags/nuug">nuug</a>, <a href="http://www.hungry.com/~pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://www.hungry.com/~pere/blog/tags/standard">standard</a>.
128
129
130 </div>
131 </div>
132 <div class="padding"></div>
133
134 <div class="entry">
135 <div class="title"><a href="http://www.hungry.com/~pere/blog/121_packages_in_Debian_mapped_to_hardware_for_automatic_recommendation.html">121 packages in Debian mapped to hardware for automatic recommendation</a></div>
136 <div class="date">19th January 2025</div>
137 <div class="body"><p>For some years now, I have been working on a automatic hardware
138 based package recommendation system for Debian and other Linux
139 distributions. The isenkram system I started on back in 2013 now
140 consist of two subsystems, one locating firmware files using the
141 information provided by apt-file, and one matching hardware to
142 packages using information provided by AppStream. The former is very
143 similar to the mechanism implemented in debian-installer to pick the
144 right firmware packages to install. This post is about the latter
145 system. Thanks to steady progress and good help from both other
146 Debian and upstream developers, I am happy to report that
147 <a href="https://tracker.debian.org/pkg/isenkram">the Isenkram
148 system</a> now are able to recommend 121 packages using information
149 provided via
150 <a href="https://www.freedesktop.org/wiki/Distributions/AppStream/">AppStream</a>.</p>
151
152 <p>The mapping is done using modalias information provided by the
153 kernel, the same information used by udev when creating device files,
154 and the kernel when deciding which kernel modules to load. To get all
155 the modalias identifiers relevant for your machine, you can run the
156 following command on the command line:</p>
157
158 <pre>
159 find /sys/devices -name modalias -print0 | xargs -0 sort -u
160 </pre>
161
162 <p>The modalias identifiers can look something like this:</p>
163
164 <pre>
165 acpi:PNP0000
166 cpu:type:x86,ven0000fam0006mod003F:feature:,0000,0001,0002,0003,0004,0005,0006,0007,0008,0009,000B,000C,000D,000E,000F,0010,0011,0013,0015,0016,0017,0018,0019,001A,001B,001C,001D,001F,002B,0034,003A,003B,003D,0068,006B,006C,006D,006F,0070,0072,0074,0075,0076,0078,0079,007C,0080,0081,0082,0083,0084,0085,0086,0087,0088,0089,008B,008C,008D,008E,008F,0091,0092,0093,0094,0095,0096,0097,0098,0099,009A,009B,009C,009D,009E,00C0,00C5,00E1,00E3,00EB,00ED,00F0,00F1,00F3,00F5,00F6,00F9,00FA,00FB,00FD,00FF,0100,0101,0102,0103,0111,0120,0121,0123,0125,0127,0128,0129,012A,012C,012D,0140,0160,0161,0165,016C,017B,01C0,01C1,01C2,01C4,01C5,01C6,01F9,024A,025A,025B,025C,025F,0282
167 dmi:bvnDellInc.:bvr2.18.1:bd08/14/2023:br2.18:svnDellInc.:pnPowerEdgeR730:pvr:rvnDellInc.:rn0H21J3:rvrA09:cvnDellInc.:ct23:cvr:skuSKU=NotProvided
168 pci:v00008086d00008D3Bsv00001028sd00000600bc07sc80i00
169 platform:serial8250
170 scsi:t-0x05
171 usb:v413CpA001d0000dc09dsc00dp00ic09isc00ip00in00
172 </pre>
173
174 <p>The entries above are a selection of the complete set available on
175 a Dell PowerEdge R730 machine I have access to, to give an idea about
176 the various styles of hardware identifiers presented in the modalias
177 format. When looking up relevant packages in a Debian Testing
178 installation on the same R730, I get this list of packages
179 proposed:</p>
180
181 <pre>
182 % sudo isenkram-lookup
183 firmware-bnx2x
184 firmware-nvidia-graphics
185 firmware-qlogic
186 megactl
187 wsl
188 %
189 </pre>
190
191 <p>The list consist of firmware packages requested by kernel modules,
192 as well packages with program to get the status from the RAID
193 controller and to maintain the LAN console. When the edac-utils
194 package providing tools to check the ECC RAM status will enter testing
195 in a few days, it will also show up as a proposal from isenkram. In
196 addition, once the mfiutil package we uploaded in October get past the
197 NEW processing, it will also propose a tool to configure the RAID
198 controller.</p>
199
200 <p>Another example is the trusty old Lenovo Thinkpad X230, which have
201 hardware handled by several packages in the archive. This is running
202 on Debian Stable:</p>
203
204 <pre>
205 % isenkram-lookup
206 beignet-opencl-icd
207 bluez
208 cheese
209 ethtool
210 firmware-iwlwifi
211 firmware-misc-nonfree
212 fprintd
213 fprintd-demo
214 gkrellm-thinkbat
215 hdapsd
216 libpam-fprintd
217 pidgin-blinklight
218 thinkfan
219 tlp
220 tp-smapi-dkms
221 tpb
222 %
223 </pre>
224
225 <p>Here there proposal consist of software to handle the camera,
226 bluetooth, network card, wifi card, GPU, fan, fingerprint reader and
227 acceleration sensor on the machine.</p>
228
229 <p>Here is the complete set of packages currently providing hardware
230 mapping via AppStream in Debian Unstable: air-quality-sensor,
231 alsa-firmware-loaders, antpm, array-info, avarice, avrdude,
232 bmusb-v4l2proxy, brltty, calibre, colorhug-client, concordance-common,
233 consolekit, dahdi-firmware-nonfree, dahdi-linux, edac-utils,
234 eegdev-plugins-free, ekeyd, elogind, firmware-amd-graphics,
235 firmware-ath9k-htc, firmware-atheros, firmware-b43-installer,
236 firmware-b43legacy-installer, firmware-bnx2, firmware-bnx2x,
237 firmware-brcm80211, firmware-carl9170, firmware-cavium,
238 firmware-intel-graphics, firmware-intel-misc, firmware-ipw2x00,
239 firmware-ivtv, firmware-iwlwifi, firmware-libertas,
240 firmware-linux-free, firmware-mediatek, firmware-misc-nonfree,
241 firmware-myricom, firmware-netronome, firmware-netxen,
242 firmware-nvidia-graphics, firmware-qcom-soc, firmware-qlogic,
243 firmware-realtek, firmware-ti-connectivity, fpga-icestorm, g810-led,
244 galileo, garmin-forerunner-tools, gkrellm-thinkbat, goldencheetah,
245 gpsman, gpstrans, gqrx-sdr, i8kutils, imsprog, ledger-wallets-udev,
246 libairspy0, libam7xxx0.1, libbladerf2, libgphoto2-6t64,
247 libhamlib-utils, libm2k0.9.0, libmirisdr4, libnxt, libopenxr1-monado,
248 libosmosdr0, librem5-flash-image, librtlsdr0, libticables2-8,
249 libx52pro0, libykpers-1-1, libyubikey-udev, limesuite,
250 linuxcnc-uspace, lomoco, madwimax, media-player-info, megactl, mixxx,
251 mkgmap, msi-keyboard, mu-editor, mustang-plug, nbc, nitrokey-app, nqc,
252 ola, openfpgaloader, openocd, openrazer-driver-dkms, pcmciautils,
253 pcscd, pidgin-blinklight, ponyprog, printer-driver-splix,
254 python-yubico-tools, python3-btchip, qlcplus, rosegarden, scdaemon,
255 sispmctl, solaar, spectools, sunxi-tools, t2n, thinkfan, tlp,
256 tp-smapi-dkms, trezor, tucnak, ubertooth, usbrelay, uuu, viking,
257 w1retap, wsl, xawtv, xinput-calibrator, xserver-xorg-input-wacom and
258 xtrx-dkms.</p>
259
260 <p>In addition to these, there are several
261 <a href="https://udd.debian.org/cgi-bin/bts-usertags.cgi?user=pere%40hungry.com&tag=appstream-modalias">with
262 patches pending in the Debian bug tracking system</a>, and even more
263 where no-one wrote patches yet. Good candiates for the latter are
264 packages
265 <a href="https://udd.debian.org/lintian-tag.cgi?tag=appstream-metadata-missing-modalias-provide">with
266 udev rules but no AppStream hardware information</a>.</p>
267
268 <p>The isenkram system consist of two packages, isenkram-cli with the
269 command line tools, and isenkram with a GUI background process. The
270 latter will listen for dbus events from udev emitted when new hardware
271 become available (like when inserting a USB dongle or discovering a
272 new bluetooth device), look up the modalias entry for this piece of
273 hardware in AppStream (and a hard coded list of mappings from isenkram
274 - currently working hard to move this list to AppStream), and pop up a
275 dialog proposing to install any not already installed packages
276 supporting this hardware. It work very well today when inserting the
277 LEGO Mindstorms RCX, NXT and EV3 controllers. :) If you want to make
278 sure more hardware related packages get recommended, please help out
279 fixing the remaining packages in Debian to provide AppStream metadata
280 with hardware mappings.</p>
281
282 <p>As usual, if you use Bitcoin and want to show your support of my
283 activities, please send Bitcoin donations to my address
284 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
285 </div>
286 <div class="tags">
287
288
289 Tags: <a href="http://www.hungry.com/~pere/blog/tags/debian">debian</a>, <a href="http://www.hungry.com/~pere/blog/tags/english">english</a>, <a href="http://www.hungry.com/~pere/blog/tags/isenkram">isenkram</a>.
290
291
292 </div>
293 </div>
294 <div class="padding"></div>
295
296 <div class="entry">
297 <div class="title"><a href="http://www.hungry.com/~pere/blog/What_is_the_most_supported_MIME_type_in_Debian_in_2025_.html">What is the most supported MIME type in Debian in 2025?</a></div>
298 <div class="date">18th January 2025</div>
299 <div class="body"><p><a href="http://www.hungry.com/~pere/blog/What_is_the_most_supported_MIME_type_in_Debian_in_2018_.html">Seven</a>
300 and
301 <a href="http://www.hungry.com/~pere/blog/What_is_the_most_supported_MIME_type_in_Debian_.html">twelve</a>
302 years ago, I measured what the most supported MIME type in Debian
303 was</a>, first by analysing the desktop files in all packages in the
304 archive, then by analysing the DEP-11 AppStream data set. I guess it
305 is time to repeat the measurement, only for unstable as last time:</p>
306
307 <p><strong>Debian Unstable:</strong></p>
308
309 <pre>
310 count MIME type
311 ----- -----------------------
312 63 image/png
313 63 image/jpeg
314 57 image/tiff
315 54 image/gif
316 51 image/bmp
317 50 audio/mpeg
318 48 text/plain
319 42 audio/x-mp3
320 40 application/ogg
321 39 audio/x-wav
322 39 audio/x-flac
323 36 audio/x-vorbis+ogg
324 35 audio/x-mpeg
325 34 audio/x-mpegurl
326 34 audio/ogg
327 33 application/x-ogg
328 32 audio/mp4
329 31 audio/x-scpls
330 31 application/pdf
331 29 audio/x-ms-wma
332 </pre>
333
334 <p>The list was created like this using a sid chroot:</p>
335
336 <pre>
337 cat /var/lib/apt/lists/*sid*_dep11_Components-amd64.yml.gz | \
338 zcat | awk '/^ - \S+\/\S+$/ {print $2 }' | sort | \
339 uniq -c | sort -nr | head -20
340 </pre>
341
342 <p>It is nice to see that the same number of packages now support PNG
343 and JPEG. Last time JPEG had more support than PNG. Most of the MIME
344 types are known to me, but the 'audio/x-scpls' one I have no idea what
345 represent, except it being an audio format. To find the packages
346 claiming support for this format, the appstreamcli command from the
347 appstream package can be used:
348
349 <pre>
350 % appstreamcli what-provides mediatype audio/x-scpls | grep Package: | sort -u
351 Package: alsaplayer-common
352 Package: amarok
353 Package: audacious
354 Package: brasero
355 Package: celluloid
356 Package: clapper
357 Package: clementine
358 Package: cynthiune.app
359 Package: elisa
360 Package: gtranscribe
361 Package: kaffeine
362 Package: kmplayer
363 Package: kylin-burner
364 Package: lollypop
365 Package: mediaconch-gui
366 Package: mediainfo-gui
367 Package: mplayer-gui
368 Package: mpv
369 Package: mystiq
370 Package: parlatype
371 Package: parole
372 Package: pragha
373 Package: qmmp
374 Package: rhythmbox
375 Package: sayonara
376 Package: shotcut
377 Package: smplayer
378 Package: soundconverter
379 Package: strawberry
380 Package: syncplay
381 Package: vlc
382 %
383 </pre>
384
385 <p>Look like several video and auto tools understand the format.
386 Similarly one can check out the number of packages supporting the STL
387 format commonly used for 3D printing:</p>
388
389 <pre>
390 % appstreamcli what-provides mediatype model/stl | grep Package: | sort -u
391 Package: cura
392 Package: freecad
393 Package: open3d-viewer
394 %
395 </pre>
396
397 <p>How strange the
398 <a href="https://tracker.debian.org/pkg/slic3r">slic3r</a> and
399 <a href="https://tracker.debian.org/pkg/slic3r-prusa">prusa-slicer</a>
400 packages do not support STL. Perhaps just missing package metadata?
401 Luckily the amount of package metadata in Debian is getting better,
402 and hopefully this way of locating relevant packages for any file
403 format will be the preferred one soon.
404
405 <p>As usual, if you use Bitcoin and want to show your support of my
406 activities, please send Bitcoin donations to my address
407 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
408 </div>
409 <div class="tags">
410
411
412 Tags: <a href="http://www.hungry.com/~pere/blog/tags/debian">debian</a>, <a href="http://www.hungry.com/~pere/blog/tags/english">english</a>, <a href="http://www.hungry.com/~pere/blog/tags/isenkram">isenkram</a>.
413
414
415 </div>
416 </div>
417 <div class="padding"></div>
418
419 <div class="entry">
420 <div class="title"><a href="http://www.hungry.com/~pere/blog/The_2025_LinuxCNC_Norwegian_developer_gathering.html">The 2025 LinuxCNC Norwegian developer gathering</a></div>
421 <div class="date">11th January 2025</div>
422 <div class="body"><p><a href="https://linuxcnc.org/">The LinuxCNC project</a> is
423 trotting along. And I believe this great software system for
424 numerical control of machines such as milling machines, lathes, plasma
425 cutters, routers, cutting machines, robots and hexapods, would do even
426 better with more in-person developer gatherings, so we plan to
427 organise such gathering this summer too.</p>
428
429 <p>This year we would like to invite to a small LinuxCNC and free
430 software fabrication workshop/gathering in Norway this summer for the
431 weekend starting July 4th 2025. New this year is the slightly larger
432 scope, and we invite people also outside the LinuxCNC community to
433 join. As earlier, we suggest to organize it as an
434 <a href="https://en.wikipedia.org/wiki/Unconference">unconference</a>,
435 where the participants create the program upon arrival.</p>
436
437 <p>The location is a metal workshop 15 minutes drive away from to the
438 Gardermoen airport (OSL), where there is a lot of space and a hotel only
439 5 minutes away by car. We plan to fire up the barbeque in the evenings.</p>
440
441 <p>Please let us know if you would like to join. We track the list of
442 participants on <a href="https://pad.efn.no/p/linuxcnc-2025-norway">a
443 simple pad</a>, please add yourself there if you are interested in joining.</p>
444
445 <p><a href="https://www.nuugfoundation.no/">The NUUG Foundation</a> has on
446 our request offered to handle any money involved with this gathering,
447 in other words holding any sponsor funds and paying any bills.
448 NUUG Foundation is a spinnoff from the NUUG member organisation here
449 in Norway with long ties to the free software and open standards
450 communities.</p>
451
452 <p>As usual we hope to find sponsors to pay for food, lodging and travel.</p>
453
454 <p>As usual, if you use Bitcoin and want to show your support of my
455 activities, please send Bitcoin donations to my address
456 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
457 </div>
458 <div class="tags">
459
460
461 Tags: <a href="http://www.hungry.com/~pere/blog/tags/debian">debian</a>, <a href="http://www.hungry.com/~pere/blog/tags/english">english</a>, <a href="http://www.hungry.com/~pere/blog/tags/linuxcnc">linuxcnc</a>.
462
463
464 </div>
465 </div>
466 <div class="padding"></div>
467
468 <div class="entry">
469 <div class="title"><a href="http://www.hungry.com/~pere/blog/New_lsdvd_release_0_18_after_ten_years.html">New lsdvd release 0.18 after ten years</a></div>
470 <div class="date">21st December 2024</div>
471 <div class="body"><p>The rumors of the death of
472 <a href="https://sourceforge.net/projects/lsdvd/">the lsdvd project</a>
473 is slightly exaggerated. And the last few months, we have been
474 working on fixing and improving it, culminating in a new release last
475 night. This is the list of changes in the new 0.18 release, as
476 <a href="https://sourceforge.net/p/lsdvd/mailman/message/59108028/">announced
477 on the project mailing list</a>:</p>
478
479 <ul>
480
481 <li>Simplified autoconf setup, dropped --enable-debug option.</li>
482 <li>Improved video resolution reporting (<a href="https://sourceforge.net/p/lsdvd/patches/8/">Fixes #8</a>).</li>
483 <li>Applied patches fetched from BSDs (<a href="https://sourceforge.net/p/lsdvd/patches/7/">Fixes #7</a>).</li>
484 <li>Corrected Perl output (<a href="https://sourceforge.net/p/lsdvd/patches/1/">Fixes #1</a>).</li>
485 <li>Adjusted Pan and Scan entries to produce valid XML.</li>
486 <li>Changed --help output from stderr to stdout.</li>
487 <li>Corrected aspect ratio and audio format formatting.</li>
488 <li>Avoid segfault when hitting a NULL pointer in the IFO structure.</li>
489 <li>Change build rules to supress compiler flags, to make it easier to
490 spot warnings.</li>
491 <li>Set default DVD device based on OS (Linux, *BSD, Darwin)</li>
492 <li>Added libdvdread DVDDiscID to output.</li>
493 <li>Corrected typo in longest track value in XML format.</li>
494 <li>Switched XML output to use libxml to avoid string encoding issues.</li>
495 <li>Added simple build time test suite.</li>
496 <li>Cleaned up language code handling and adding missing mapping for
497 language codes 'nb' and 'nn'.</li>
498 <li>Added JSON output support using -Oj.</li>
499 </ul>
500
501 <p>The most exciting news to me is easy access to the DVDDiscID, which
502 make it a lot easier to identify DVD duplicates across a large
503 collection of DVDs. During testing it has proved to be very effective
504 ad identifying when DVDs in a DVD box (say all Star Wars movies) is
505 identical to DVDs sold individually (like the same Star Wars movies
506 packaged individually).</p>
507
508 <p>Because none of the current developers got access to do tarball
509 releases on Sourceforge any more, the release is only available as
510 <a href="https://sourceforge.net/p/lsdvd/git/ci/0.18/tree/">a git
511 tag</a> in the repository. Lets hope it do not take ten years for the
512 next release. The project are discussing to move away from
513 Sourceforge, but it has not yet concluded.</p>
514
515 <p>As usual, if you use Bitcoin and want to show your support of my
516 activities, please send Bitcoin donations to my address
517 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
518 </div>
519 <div class="tags">
520
521
522 Tags: <a href="http://www.hungry.com/~pere/blog/tags/debian">debian</a>, <a href="http://www.hungry.com/~pere/blog/tags/english">english</a>.
523
524
525 </div>
526 </div>
527 <div class="padding"></div>
528
529 <div class="entry">
530 <div class="title"><a href="http://www.hungry.com/~pere/blog/More_than_200_orphaned_Debian_packages_moved_to_git__216_to_go.html">More than 200 orphaned Debian packages moved to git, 216 to go</a></div>
531 <div class="date">11th July 2024</div>
532 <div class="body"><p><a href="http://www.hungry.com/~pere/blog/Time_to_move_orphaned_Debian_packages_to_git.html">In
533 April</a>, I started migrating orphaned Debian packages without any
534 version control system listed in debian/control to git. This morning,
535 my Debian QA page finally reached 200 QA packages migrated. In
536 reality there are a few more, as the packages uploaded by someone else
537 after my initial upload have disappeared from my QA uploads list. As
538 I am running out of steam and will most likely focus on other parts of
539 Debian moving forward, I hope someone else will find time to continue
540 the migration to bring the number of orphaned packages without any
541 version control system down to zero. Here is the updated recipe if
542 someone want to help out.</p>
543
544 <p>To locate packages to work on, the following one-liner can be used:</p>
545
546 <blockquote><pre>
547 PGPASSWORD="udd-mirror" psql --port=5432 --host=udd-mirror.debian.net \
548 --username=udd-mirror udd -c "select source from sources \
549 where release = 'sid' and (vcs_url ilike '%anonscm.debian.org%' \
550 OR vcs_browser ilike '%anonscm.debian.org%' or vcs_url IS NULL \
551 OR vcs_browser IS NULL) AND maintainer ilike '%packages@qa.debian.org%' \
552 order by random() limit 10;"
553 </pre></blockquote>
554
555 <p>Pick a random package from the list and run the latest edition of
556 the script
557 <tt><a href="http://www.hungry.com/~pere/blog/images/2024-07-11-debian-snap-to-salsa.sh">debian-snap-to-salsa</a></tt>
558 with the package name as the argument to prepare a git repository with
559 the existing packaging. This will download old Debian packages from
560 <tt>snapshot.debian.org</tt>. Note that very recent uploads will not
561 be included, so check out the package on <tt>tracker.debian.org</tt>.
562 Next, run <tt>gbp buildpackage --git-ignore-new</tt> to verify that
563 the package build as it should, and then visit
564 <a href="https://salsa.debian.org/debian/">https://salsa.debian.org/debian/</a>
565 and make sure there is not already a git repository for the package
566 there. I also did <tt>git log -p debian/control</tt> and look for vcs
567 entries to check if the package used to have a git repository on
568 Alioth, and see if it can be a useful starting point moving forward.
569 If all this check out, I created a new gitlab project below the Debian
570 group on salsa, push the package source there and upload a new version.
571 I tend to also ensure build hardening is enabled, if it prove to be
572 easy, and check if I can easily fix any lintian issues or bug reports.
573 If the process took more than 20 minutes, I dropped it and moved on to
574 another package.</p>
575
576 <p>If I found patches in debian/patches/ that were not yet passed
577 upstream, I would send an email to make sure upstream know about them.
578 This has proved to be a valuable step, and caused several new releases
579 for software that initially appeared abandoned. :)</p>
580
581 <p>As usual, if you use Bitcoin and want to show your support of my
582 activities, please send Bitcoin donations to my address
583 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
584 </div>
585 <div class="tags">
586
587
588 Tags: <a href="http://www.hungry.com/~pere/blog/tags/debian">debian</a>, <a href="http://www.hungry.com/~pere/blog/tags/english">english</a>.
589
590
591 </div>
592 </div>
593 <div class="padding"></div>
594
595 <div class="entry">
596 <div class="title"><a href="http://www.hungry.com/~pere/blog/Some_notes_from_the_2024_LinuxCNC_Norwegian_developer_gathering.html">Some notes from the 2024 LinuxCNC Norwegian developer gathering</a></div>
597 <div class="date">10th July 2024</div>
598 <div class="body"><p>The Norwegian <a href="https://linuxcnc.org/">The LinuxCNC</a>
599 developer gathering 2024 is over. It was a great and productive
600 weekend, and I am sad that it is over.</p>
601
602 <p>Regular readers probably still remember what LinuxCNC is, but her
603 is a quick summary for those that forgot? LinuxCNC is a free software
604 system for numerical control of machines such as milling machines,
605 lathes, plasma cutters, routers, cutting machines, robots and
606 hexapods. It eats G-code and produce motor movement and other changes
607 to the physical world, while reading sensor input.</p>
608
609 <p>I am not quite sure about the total head count, as not all people
610 were present at the gathering the entire weekend, but I believe it was
611 close to 10 people showing their faces at the gathering. The "hard
612 core" of the group, who stayed the entire weekend, were two from
613 Norway, two from Germany and one from England. I am happy with the
614 outcome from the gathering. We managed to wrap up a new stable
615 LinuxCNC release 2.9.3 and even tested it on real hardware within
616 minutes of the release. The release notes for 2.9.3 are still being
617 written, but should show up on on the project site in the next few
618 days. We managed to go through around twenty pull requests and merge
619 then into either the stable release (2.9) or the development branch
620 (master). There are still around thirty pull requests left to
621 process, so we are not out of work yet. We even managed to
622 fix/improve a slightly worn lathe, and experiment with running a
623 mechanical clock using G-code.</p>
624
625 <p>The evening barbeque worked well both on Saturday and Sunday. It
626 is quite fun to light up a charcoal grill using compressed air. Sadly
627 the weather was not the best, so we stayed indoors most of the
628 time.</p>
629
630 <p>This gathering was made possible partly with sponsoring from both
631 <a href="https://www.redpill-linpro.com/">Redpill Linpro</a>,
632 <a href="https://debian.org/">Debian</a> and
633 <a href="https://nuugfoundation.no/">NUUG Foundation</a>, and we are
634 most grateful for the support. I would also like to thank the local
635 school for lending us some furniture, and of course the rest of the
636 members of the organizers team, Asle and Bosse, for their countless
637 contributions. The gathering was such success that we want to do it
638 again next year.</p>
639
640 <p>We plan to organize the next Norwegian LinuxCNC developer gathering
641 at the end of June next year, the weekend Friday 27th to Sunday 29th
642 of June 2025. I recommend you reserve the dates on your calendar
643 today. Other related communities are also welcome to join in, for
644 example those working on systems like FreeCAD and opencamlib, as I am
645 sure we have much in common and sharing experiences would be very
646 useful to all involved. We are of course looking for sponsors for
647 this gathering already. The total budget for this gathering was
648 around NOK 25.000 (around EUR 2.300), so our needs are quite modest.
649 Perhaps a machine or tools company would like to help out the free
650 software manufacturing community by sponsoring food, lodging and
651 transport for such gathering?</p>
652 </div>
653 <div class="tags">
654
655
656 Tags: <a href="http://www.hungry.com/~pere/blog/tags/debian">debian</a>, <a href="http://www.hungry.com/~pere/blog/tags/english">english</a>, <a href="http://www.hungry.com/~pere/blog/tags/linuxcnc">linuxcnc</a>.
657
658
659 </div>
660 </div>
661 <div class="padding"></div>
662
663 <div class="entry">
664 <div class="title"><a href="http://www.hungry.com/~pere/blog/_M_ter_vi_liv_eller_d_d____pamfletten_som_inspirerte.html">«Møter vi liv eller død?», pamfletten som inspirerte</a></div>
665 <div class="date"> 4th June 2024</div>
666 <div class="body"><img align="center" src="http://www.hungry.com/~pere/blog/images/2024-06-04-bok-elsa-laula.svg" width="20%" align="center" border="1"></a>
667
668 <p>Da jeg i høst hørte jeg et innslag på
669 <a href="https://radiorakel.no/">radiOrakel</a> om en inspirerende dame
670 som levde for over hundre år siden, fikk jeg en vill ide. Elsa Laula
671 var en svensk samisk dame som ikke bare fikk utdannelsen finansiert av
672 den danske dronningen, men som gjorde så god jobb med å inspirere og
673 organisere den samiske befolkningen at det visstnok ble forslått i
674 Sverige å straffeforfølge henne for oppvigleri før hun flyttet fra
675 Sverige til Norge. Radiopraterne fortalte videre at da Elsa Laula ga
676 ut en pamflett for å inspirere samene til samling var dette den
677 første bok gitt ut av en samisk dame noensinne. Jeg fikk høre at
678 denne korte teksten kun fantes på originalspråket svensk under
679 tittelen «Inför lif eller död» og aldri var oversatt til norsk. Da
680 tenkte jeg, der jeg satt i bilen, at en norsk utgave kan vel jeg
681 fikse. Jeg har jo fått oversatt endel bøker, og en liten pamflett på
682 noen få sider burde jo være grei skuring.</p>
683
684 <p>Den imponerende Elsa Laula, som senere la til etternavnet Renberg, har
685 blant annet fått dokumentaren
686 «<a href="https://www.nrk.no/video/elsa-laula-renberg-kvinnen-som-samlet-sapmi_SAPP67002117">Elsa
687 Laula Renberg, kvinnen som samlet Sápmi</a>» (2017) av Per Kristian
688 Olsen på NRK, NRK-artikkelen
689 «<a href="https://www.nrk.no/kultur/xl/et-liv-i-kamp-for-samefolkets-rettigheter-1.13351401">Samenes
690 Jeanne d’Arc</a>» av Karen Brodshaug Sveen (2017), oppgaven
691 «<a href="https://nordligefolk.no/wp-content/uploads/2020/03/Elsa-Laulas-Info%CC%88r-Lif-och-Do%CC%88d.pdf">Elsa
692 Laulas Innför lif och död – sanningsord i de lappska
693 förhållandena</a>» av Edel Olsen, biografien
694 «<a href="https://www.siribrochjohansen.no/biografien-om-elsa-laula-renberg/">Elsa
695 Laula Renberg - Historien om samefolkets store Minerva</a>» (2015) av
696 Siri Broch Johansen og radiOrakel-podkasten
697 <a href="https://radiorakel.no/podcast/revolusjonen-har-et-kvinnelig-ansikt-elsa-laula/">Revolusjonen
698 har et kvinnelig ansikt – Elsa Laula</a>, for å nevne de jeg har
699 finnet uten å lete spesielt hardt. En virkelig spennende dame, som i
700 tillegg til å inspirere til opprettelsen av samiske organisasjoner,
701 har inspirert til opprettelsen av Sametinget, og født seks barn der
702 fire vokste opp.</p>
703
704 <p>I dag er jeg veldig glad for å kunne annonsere at
705 <a href="http://www.hungry.com/~pere/publisher/#infoerlifellerdoed2024">bokmålsoversettelsen
706 er klar og tilgjengelig</a> for både bestilling på papir og
707 epub-utgave fra lulu.com, samt som nettside. Den kringkastede
708 bokinformasjonen ser slik ut:</p>
709
710 <blockquote>
711
712 <p>Den 27 år gamle sørsamiske kvinnen Elsa Laula ga i august 1904 ut
713 en pamflett i Stockholm. Opplaget var på 6000, finansiert av
714 Stockholmsredaktøren Gustav Hedenström, som også bidro i stiftelsen av
715 Lapparnes Centralforbund. Dette kampskriftet var den første boken gitt
716 ut av en samisk kvinne, og hadde som mål å inspirere til opprettelsen
717 av samiske foreninger over hele landet, samt skape blest om
718 sentralforbundet. Pamfletten er et politisk manifest som fortsatt
719 inspirerer i dag.</p>
720
721 <p>Denne pamfletten er nå for første gang tilgjengelig på bokmål,
722 sammen med en nyutgivelse av originalteksten på svensk.</p>
723
724 </blockquote>
725
726 <p>Oversettelsen hadde ikke vært mulig uten gode hjelpere. En virkelig
727 stor innsats både i korrekturarbeidet og utforskning av arkaiske
728 svenske ord, står Axel Rosén bak. I tillegg har jeg fått innspill fra
729 Edel May Karlsen og flere andre både på språkføring og historisk
730 bakgrunn for å forstå teksten.</p>
731
732 <p>En kuriositet som jeg oppdaget i arbeidet med oversettelsen er at
733 det ikke stemmer at denne boken ikke var oversatt til noen andre
734 språk. Anna Wuolab oversatte den til nordsamisk i 2017 i en utgave
735 gitt ut av samisk skribent- och författarförening (Bágu čálliid
736 searvi) under tittelen «Eallit vai jápmit? : duohtavuođasánit sámi
737 diliid birra = Inför lif eller död? : sanningsord i de lappska
738 förhållandena». Papirutgaven er så vidt jeg kan forstå utsolgt fra
739 forlaget og jeg har ikke klart å finne informasjonsside om boken på
740 Internett. Mulig den er mulig å få tak i som ebok, hvis en skal tro
741 <a href="https://search.worldcat.org/title/1405213087">oppføring i
742 worldcat</a>.</p>
743
744 <p>Oversetterrammeverket jeg har satt opp for å gjennomføre dette
745 oversettelsesprosjektet håndterer flere språk. Jeg er igang med
746 engelsk utgave, og er åpen for å også gi ut andre oversettelser hvis
747 noen er interessert i å gjøre jobben. Det hadde vært ekstra moro å gi
748 den ut på sørsamisk, det samiske språket i regionen der Elsa Laula kom
749 fra. Der er jeg som vanlig avhengig av frivillige som er også
750 interessert i å gjøre dette på dugnad.</p>
751
752 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
753 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
754 til min adresse
755 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>. Merk,
756 betaling med bitcoin er ikke anonymt. :)</p>
757 </div>
758 <div class="tags">
759
760
761 Tags: <a href="http://www.hungry.com/~pere/blog/tags/docbook">docbook</a>, <a href="http://www.hungry.com/~pere/blog/tags/norsk">norsk</a>.
762
763
764 </div>
765 </div>
766 <div class="padding"></div>
767
768 <div class="entry">
769 <div class="title"><a href="http://www.hungry.com/~pere/blog/The_2024_LinuxCNC_Norwegian_developer_gathering.html">The 2024 LinuxCNC Norwegian developer gathering</a></div>
770 <div class="date">31st May 2024</div>
771 <div class="body"><p><a href="https://linuxcnc.org/">The LinuxCNC project</a> is still
772 going strong. And I believe this great software system for numerical control of
773 machines such as milling machines, lathes, plasma cutters, routers,
774 cutting machines, robots and hexapods, would do even better with more
775 in-person developer gatherings, so we plan to organise such gathering
776 this summer too.</p>
777
778 <p>The Norwegian LinuxCNC developer gathering take place the weekend
779 Friday July 5th to 7th this year, and is open for everyone interested
780 in contributing to LinuxCNC and free software manufacturing. Up to
781 date information about the gathering can be found in
782 <a href="https://sourceforge.net/p/emc/mailman/emc-developers/thread/123eaae0-f3b9-4170-a251-b7d608f1e974%40bofh.no/">the
783 developer mailing list thread</a> where the gathering was announced.
784 Thanks to the good people at
785
786 <a href="https://www.debian.org/">Debian</a> as well as leftover money
787 from last years gathering from
788 <a href="https://www.redpill-linpro.com/">Redpill-Linpro</a> and
789 <a href="https://www.nuugfoundation.no/no/">NUUG Foundation</a>, we
790 have enough sponsor funds to pay for food, and probably also shelter
791 for the people traveling from afar to join us. If you would like to
792 join the gathering, get in touch and add your details on
793 <a href="https://pad.efn.no/p/linuxcnc-2024-norway">the pad</a>.</p>
794
795 <p>As usual, if you use Bitcoin and want to show your support of my
796 activities, please send Bitcoin donations to my address
797 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
798 </div>
799 <div class="tags">
800
801
802 Tags: <a href="http://www.hungry.com/~pere/blog/tags/debian">debian</a>, <a href="http://www.hungry.com/~pere/blog/tags/english">english</a>, <a href="http://www.hungry.com/~pere/blog/tags/linuxcnc">linuxcnc</a>.
803
804
805 </div>
806 </div>
807 <div class="padding"></div>
808
809 <p style="text-align: right;"><a href="index.rss"><img src="http://www.hungry.com/~pere/blog/xml.gif" alt="RSS feed" width="36" height="14" /></a></p>
810 <div id="sidebar">
811
812
813
814 <h2>Archive</h2>
815 <ul>
816
817 <li>2025
818 <ul>
819
820 <li><a href="http://www.hungry.com/~pere/blog/archive/2025/01/">January (4)</a></li>
821
822 <li><a href="http://www.hungry.com/~pere/blog/archive/2025/02/">February (1)</a></li>
823
824 </ul></li>
825
826 <li>2024
827 <ul>
828
829 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/01/">January (1)</a></li>
830
831 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/02/">February (1)</a></li>
832
833 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/03/">March (2)</a></li>
834
835 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/04/">April (3)</a></li>
836
837 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/05/">May (1)</a></li>
838
839 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/06/">June (1)</a></li>
840
841 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/07/">July (2)</a></li>
842
843 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/12/">December (1)</a></li>
844
845 </ul></li>
846
847 <li>2023
848 <ul>
849
850 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/01/">January (3)</a></li>
851
852 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/02/">February (1)</a></li>
853
854 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/04/">April (2)</a></li>
855
856 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/05/">May (3)</a></li>
857
858 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/06/">June (1)</a></li>
859
860 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/08/">August (1)</a></li>
861
862 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/09/">September (1)</a></li>
863
864 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/10/">October (1)</a></li>
865
866 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/11/">November (4)</a></li>
867
868 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/12/">December (1)</a></li>
869
870 </ul></li>
871
872 <li>2022
873 <ul>
874
875 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/02/">February (1)</a></li>
876
877 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/03/">March (3)</a></li>
878
879 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/04/">April (2)</a></li>
880
881 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/06/">June (2)</a></li>
882
883 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/07/">July (1)</a></li>
884
885 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/09/">September (1)</a></li>
886
887 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/10/">October (1)</a></li>
888
889 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/12/">December (1)</a></li>
890
891 </ul></li>
892
893 <li>2021
894 <ul>
895
896 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/01/">January (2)</a></li>
897
898 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/02/">February (1)</a></li>
899
900 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/05/">May (1)</a></li>
901
902 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/06/">June (1)</a></li>
903
904 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/07/">July (3)</a></li>
905
906 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/08/">August (1)</a></li>
907
908 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/09/">September (1)</a></li>
909
910 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/10/">October (1)</a></li>
911
912 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/12/">December (1)</a></li>
913
914 </ul></li>
915
916 <li>2020
917 <ul>
918
919 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/02/">February (2)</a></li>
920
921 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/03/">March (2)</a></li>
922
923 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/04/">April (2)</a></li>
924
925 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/05/">May (3)</a></li>
926
927 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/06/">June (2)</a></li>
928
929 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/07/">July (1)</a></li>
930
931 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/09/">September (1)</a></li>
932
933 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/10/">October (1)</a></li>
934
935 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/11/">November (1)</a></li>
936
937 </ul></li>
938
939 <li>2019
940 <ul>
941
942 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/01/">January (4)</a></li>
943
944 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/02/">February (3)</a></li>
945
946 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/03/">March (3)</a></li>
947
948 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/05/">May (2)</a></li>
949
950 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/06/">June (5)</a></li>
951
952 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/07/">July (2)</a></li>
953
954 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/08/">August (1)</a></li>
955
956 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/09/">September (1)</a></li>
957
958 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/11/">November (1)</a></li>
959
960 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/12/">December (4)</a></li>
961
962 </ul></li>
963
964 <li>2018
965 <ul>
966
967 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/01/">January (1)</a></li>
968
969 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/02/">February (5)</a></li>
970
971 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/03/">March (5)</a></li>
972
973 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/04/">April (3)</a></li>
974
975 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/06/">June (2)</a></li>
976
977 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/07/">July (5)</a></li>
978
979 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/08/">August (3)</a></li>
980
981 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/09/">September (3)</a></li>
982
983 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/10/">October (5)</a></li>
984
985 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/11/">November (2)</a></li>
986
987 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/12/">December (4)</a></li>
988
989 </ul></li>
990
991 <li>2017
992 <ul>
993
994 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/01/">January (4)</a></li>
995
996 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/02/">February (3)</a></li>
997
998 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/03/">March (5)</a></li>
999
1000 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/04/">April (2)</a></li>
1001
1002 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/06/">June (5)</a></li>
1003
1004 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/07/">July (1)</a></li>
1005
1006 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/08/">August (1)</a></li>
1007
1008 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/09/">September (3)</a></li>
1009
1010 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/10/">October (5)</a></li>
1011
1012 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/11/">November (3)</a></li>
1013
1014 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/12/">December (4)</a></li>
1015
1016 </ul></li>
1017
1018 <li>2016
1019 <ul>
1020
1021 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/01/">January (3)</a></li>
1022
1023 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/02/">February (2)</a></li>
1024
1025 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/03/">March (3)</a></li>
1026
1027 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/04/">April (8)</a></li>
1028
1029 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/05/">May (8)</a></li>
1030
1031 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/06/">June (2)</a></li>
1032
1033 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/07/">July (2)</a></li>
1034
1035 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/08/">August (5)</a></li>
1036
1037 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/09/">September (2)</a></li>
1038
1039 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/10/">October (3)</a></li>
1040
1041 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/11/">November (8)</a></li>
1042
1043 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/12/">December (5)</a></li>
1044
1045 </ul></li>
1046
1047 <li>2015
1048 <ul>
1049
1050 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/01/">January (7)</a></li>
1051
1052 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/02/">February (6)</a></li>
1053
1054 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/03/">March (1)</a></li>
1055
1056 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/04/">April (4)</a></li>
1057
1058 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/05/">May (3)</a></li>
1059
1060 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/06/">June (4)</a></li>
1061
1062 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/07/">July (6)</a></li>
1063
1064 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/08/">August (2)</a></li>
1065
1066 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/09/">September (2)</a></li>
1067
1068 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/10/">October (9)</a></li>
1069
1070 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/11/">November (6)</a></li>
1071
1072 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/12/">December (3)</a></li>
1073
1074 </ul></li>
1075
1076 <li>2014
1077 <ul>
1078
1079 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/01/">January (2)</a></li>
1080
1081 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/02/">February (3)</a></li>
1082
1083 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/03/">March (8)</a></li>
1084
1085 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/04/">April (7)</a></li>
1086
1087 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/05/">May (1)</a></li>
1088
1089 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/06/">June (2)</a></li>
1090
1091 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/07/">July (2)</a></li>
1092
1093 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/08/">August (2)</a></li>
1094
1095 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/09/">September (5)</a></li>
1096
1097 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/10/">October (6)</a></li>
1098
1099 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/11/">November (3)</a></li>
1100
1101 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/12/">December (5)</a></li>
1102
1103 </ul></li>
1104
1105 <li>2013
1106 <ul>
1107
1108 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/01/">January (11)</a></li>
1109
1110 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/02/">February (9)</a></li>
1111
1112 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/03/">March (9)</a></li>
1113
1114 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/04/">April (6)</a></li>
1115
1116 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/05/">May (9)</a></li>
1117
1118 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/06/">June (10)</a></li>
1119
1120 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/07/">July (7)</a></li>
1121
1122 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/08/">August (3)</a></li>
1123
1124 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/09/">September (5)</a></li>
1125
1126 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/10/">October (7)</a></li>
1127
1128 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/11/">November (9)</a></li>
1129
1130 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/12/">December (3)</a></li>
1131
1132 </ul></li>
1133
1134 <li>2012
1135 <ul>
1136
1137 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/01/">January (7)</a></li>
1138
1139 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/02/">February (10)</a></li>
1140
1141 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/03/">March (17)</a></li>
1142
1143 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/04/">April (12)</a></li>
1144
1145 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/05/">May (12)</a></li>
1146
1147 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/06/">June (20)</a></li>
1148
1149 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/07/">July (17)</a></li>
1150
1151 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/08/">August (6)</a></li>
1152
1153 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/09/">September (9)</a></li>
1154
1155 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/10/">October (17)</a></li>
1156
1157 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/11/">November (10)</a></li>
1158
1159 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/12/">December (7)</a></li>
1160
1161 </ul></li>
1162
1163 <li>2011
1164 <ul>
1165
1166 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/01/">January (16)</a></li>
1167
1168 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/02/">February (6)</a></li>
1169
1170 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/03/">March (6)</a></li>
1171
1172 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/04/">April (7)</a></li>
1173
1174 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/05/">May (3)</a></li>
1175
1176 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/06/">June (2)</a></li>
1177
1178 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/07/">July (7)</a></li>
1179
1180 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/08/">August (6)</a></li>
1181
1182 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/09/">September (4)</a></li>
1183
1184 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/10/">October (2)</a></li>
1185
1186 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/11/">November (3)</a></li>
1187
1188 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/12/">December (1)</a></li>
1189
1190 </ul></li>
1191
1192 <li>2010
1193 <ul>
1194
1195 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/01/">January (2)</a></li>
1196
1197 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/02/">February (1)</a></li>
1198
1199 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/03/">March (3)</a></li>
1200
1201 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/04/">April (3)</a></li>
1202
1203 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/05/">May (9)</a></li>
1204
1205 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/06/">June (14)</a></li>
1206
1207 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/07/">July (12)</a></li>
1208
1209 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/08/">August (13)</a></li>
1210
1211 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/09/">September (7)</a></li>
1212
1213 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/10/">October (9)</a></li>
1214
1215 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/11/">November (13)</a></li>
1216
1217 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/12/">December (12)</a></li>
1218
1219 </ul></li>
1220
1221 <li>2009
1222 <ul>
1223
1224 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/01/">January (8)</a></li>
1225
1226 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/02/">February (8)</a></li>
1227
1228 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/03/">March (12)</a></li>
1229
1230 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/04/">April (10)</a></li>
1231
1232 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/05/">May (9)</a></li>
1233
1234 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/06/">June (3)</a></li>
1235
1236 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/07/">July (4)</a></li>
1237
1238 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/08/">August (3)</a></li>
1239
1240 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/09/">September (1)</a></li>
1241
1242 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/10/">October (2)</a></li>
1243
1244 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/11/">November (3)</a></li>
1245
1246 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/12/">December (3)</a></li>
1247
1248 </ul></li>
1249
1250 <li>2008
1251 <ul>
1252
1253 <li><a href="http://www.hungry.com/~pere/blog/archive/2008/11/">November (5)</a></li>
1254
1255 <li><a href="http://www.hungry.com/~pere/blog/archive/2008/12/">December (7)</a></li>
1256
1257 </ul></li>
1258
1259 </ul>
1260
1261
1262
1263 <h2>Tags</h2>
1264 <ul>
1265
1266 <li><a href="http://www.hungry.com/~pere/blog/tags/3d-printer">3d-printer (19)</a></li>
1267
1268 <li><a href="http://www.hungry.com/~pere/blog/tags/amiga">amiga (1)</a></li>
1269
1270 <li><a href="http://www.hungry.com/~pere/blog/tags/aros">aros (1)</a></li>
1271
1272 <li><a href="http://www.hungry.com/~pere/blog/tags/bankid">bankid (4)</a></li>
1273
1274 <li><a href="http://www.hungry.com/~pere/blog/tags/betalkontant">betalkontant (9)</a></li>
1275
1276 <li><a href="http://www.hungry.com/~pere/blog/tags/bitcoin">bitcoin (13)</a></li>
1277
1278 <li><a href="http://www.hungry.com/~pere/blog/tags/bootsystem">bootsystem (17)</a></li>
1279
1280 <li><a href="http://www.hungry.com/~pere/blog/tags/bsa">bsa (2)</a></li>
1281
1282 <li><a href="http://www.hungry.com/~pere/blog/tags/chrpath">chrpath (3)</a></li>
1283
1284 <li><a href="http://www.hungry.com/~pere/blog/tags/debian">debian (207)</a></li>
1285
1286 <li><a href="http://www.hungry.com/~pere/blog/tags/debian edu">debian edu (159)</a></li>
1287
1288 <li><a href="http://www.hungry.com/~pere/blog/tags/debian-handbook">debian-handbook (9)</a></li>
1289
1290 <li><a href="http://www.hungry.com/~pere/blog/tags/digistan">digistan (11)</a></li>
1291
1292 <li><a href="http://www.hungry.com/~pere/blog/tags/dld">dld (18)</a></li>
1293
1294 <li><a href="http://www.hungry.com/~pere/blog/tags/docbook">docbook (33)</a></li>
1295
1296 <li><a href="http://www.hungry.com/~pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
1297
1298 <li><a href="http://www.hungry.com/~pere/blog/tags/english">english (469)</a></li>
1299
1300 <li><a href="http://www.hungry.com/~pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
1301
1302 <li><a href="http://www.hungry.com/~pere/blog/tags/fildeling">fildeling (14)</a></li>
1303
1304 <li><a href="http://www.hungry.com/~pere/blog/tags/freeculture">freeculture (34)</a></li>
1305
1306 <li><a href="http://www.hungry.com/~pere/blog/tags/freedombox">freedombox (9)</a></li>
1307
1308 <li><a href="http://www.hungry.com/~pere/blog/tags/frikanalen">frikanalen (20)</a></li>
1309
1310 <li><a href="http://www.hungry.com/~pere/blog/tags/h264">h264 (20)</a></li>
1311
1312 <li><a href="http://www.hungry.com/~pere/blog/tags/intervju">intervju (43)</a></li>
1313
1314 <li><a href="http://www.hungry.com/~pere/blog/tags/isenkram">isenkram (20)</a></li>
1315
1316 <li><a href="http://www.hungry.com/~pere/blog/tags/kart">kart (23)</a></li>
1317
1318 <li><a href="http://www.hungry.com/~pere/blog/tags/kodi">kodi (6)</a></li>
1319
1320 <li><a href="http://www.hungry.com/~pere/blog/tags/ldap">ldap (9)</a></li>
1321
1322 <li><a href="http://www.hungry.com/~pere/blog/tags/lego">lego (5)</a></li>
1323
1324 <li><a href="http://www.hungry.com/~pere/blog/tags/lenker">lenker (8)</a></li>
1325
1326 <li><a href="http://www.hungry.com/~pere/blog/tags/linuxcnc">linuxcnc (8)</a></li>
1327
1328 <li><a href="http://www.hungry.com/~pere/blog/tags/lsdvd">lsdvd (2)</a></li>
1329
1330 <li><a href="http://www.hungry.com/~pere/blog/tags/ltsp">ltsp (1)</a></li>
1331
1332 <li><a href="http://www.hungry.com/~pere/blog/tags/madewithcc">madewithcc (3)</a></li>
1333
1334 <li><a href="http://www.hungry.com/~pere/blog/tags/mesh network">mesh network (8)</a></li>
1335
1336 <li><a href="http://www.hungry.com/~pere/blog/tags/multimedia">multimedia (47)</a></li>
1337
1338 <li><a href="http://www.hungry.com/~pere/blog/tags/nice free software">nice free software (15)</a></li>
1339
1340 <li><a href="http://www.hungry.com/~pere/blog/tags/noark5">noark5 (26)</a></li>
1341
1342 <li><a href="http://www.hungry.com/~pere/blog/tags/norsk">norsk (326)</a></li>
1343
1344 <li><a href="http://www.hungry.com/~pere/blog/tags/nuug">nuug (200)</a></li>
1345
1346 <li><a href="http://www.hungry.com/~pere/blog/tags/offentlig innsyn">offentlig innsyn (42)</a></li>
1347
1348 <li><a href="http://www.hungry.com/~pere/blog/tags/open311">open311 (2)</a></li>
1349
1350 <li><a href="http://www.hungry.com/~pere/blog/tags/opensnitch">opensnitch (4)</a></li>
1351
1352 <li><a href="http://www.hungry.com/~pere/blog/tags/opphavsrett">opphavsrett (76)</a></li>
1353
1354 <li><a href="http://www.hungry.com/~pere/blog/tags/personvern">personvern (114)</a></li>
1355
1356 <li><a href="http://www.hungry.com/~pere/blog/tags/raid">raid (4)</a></li>
1357
1358 <li><a href="http://www.hungry.com/~pere/blog/tags/reactos">reactos (1)</a></li>
1359
1360 <li><a href="http://www.hungry.com/~pere/blog/tags/reprap">reprap (11)</a></li>
1361
1362 <li><a href="http://www.hungry.com/~pere/blog/tags/rfid">rfid (3)</a></li>
1363
1364 <li><a href="http://www.hungry.com/~pere/blog/tags/robot">robot (17)</a></li>
1365
1366 <li><a href="http://www.hungry.com/~pere/blog/tags/rss">rss (1)</a></li>
1367
1368 <li><a href="http://www.hungry.com/~pere/blog/tags/ruter">ruter (7)</a></li>
1369
1370 <li><a href="http://www.hungry.com/~pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
1371
1372 <li><a href="http://www.hungry.com/~pere/blog/tags/sikkerhet">sikkerhet (60)</a></li>
1373
1374 <li><a href="http://www.hungry.com/~pere/blog/tags/sitesummary">sitesummary (4)</a></li>
1375
1376 <li><a href="http://www.hungry.com/~pere/blog/tags/skepsis">skepsis (5)</a></li>
1377
1378 <li><a href="http://www.hungry.com/~pere/blog/tags/standard">standard (78)</a></li>
1379
1380 <li><a href="http://www.hungry.com/~pere/blog/tags/stavekontroll">stavekontroll (7)</a></li>
1381
1382 <li><a href="http://www.hungry.com/~pere/blog/tags/stortinget">stortinget (14)</a></li>
1383
1384 <li><a href="http://www.hungry.com/~pere/blog/tags/surveillance">surveillance (65)</a></li>
1385
1386 <li><a href="http://www.hungry.com/~pere/blog/tags/sysadmin">sysadmin (5)</a></li>
1387
1388 <li><a href="http://www.hungry.com/~pere/blog/tags/usenix">usenix (2)</a></li>
1389
1390 <li><a href="http://www.hungry.com/~pere/blog/tags/valg">valg (9)</a></li>
1391
1392 <li><a href="http://www.hungry.com/~pere/blog/tags/verkidetfri">verkidetfri (22)</a></li>
1393
1394 <li><a href="http://www.hungry.com/~pere/blog/tags/video">video (81)</a></li>
1395
1396 <li><a href="http://www.hungry.com/~pere/blog/tags/vitenskap">vitenskap (4)</a></li>
1397
1398 <li><a href="http://www.hungry.com/~pere/blog/tags/web">web (42)</a></li>
1399
1400 </ul>
1401
1402
1403 </div>
1404 <p style="text-align: right">
1405 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
1406 </p>
1407
1408 </body>
1409 </html>