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