]> pere.pagekite.me Git - homepage.git/blob - blog/archive/2025/01/index.html
Generated.
[homepage.git] / blog / archive / 2025 / 01 / 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: entries from January 2025</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="01.rss" type="application/rss+xml" />
10 </head>
11 <body>
12 <!-- XML FEED -->
13 <div class="title">
14 <h1>
15 <a href="http://www.hungry.com/~pere/blog/">Petter Reinholdtsen</a>
16
17 </h1>
18
19 </div>
20
21
22 <h3>Entries from January 2025.</h3>
23
24 <div class="entry">
25 <div class="title">
26 <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>
27 </div>
28 <div class="date">
29 31st January 2025
30 </div>
31 <div class="body">
32 <p>Nikita-prosjektet, der jeg er involvert, inviterer i samarbeid med
33 forskningsgruppen METAINFO og foreningen NUUG, til et frokostseminar
34 om Noark 5 og Noark 5 Tjenestegrensesnitt fredag 2025-03-14. Fokus
35 denne gangen er på bevaring og kassasjon. Seminaret finner sted ved
36 OsloMet, Pilestredet 46. Vi håper å få til videostrømming via
37 Internett av presentasjoner og paneldiskusjon. Oppdatert program og
38 lenker til påmeldingsskjema finner en via
39 <a href="https://noark.codeberg.page/noark5-seminars/2025-03-14-noark-workshop.html">arrangementets infoside</a>. Arrangementet er gratis.
40
41 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
42 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
43 til min adresse
44 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>. Merk,
45 betaling med bitcoin er ikke anonymt. :)</p>
46
47 </div>
48 <div class="tags">
49
50
51 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>.
52
53
54 </div>
55 </div>
56 <div class="padding"></div>
57
58 <div class="entry">
59 <div class="title">
60 <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>
61 </div>
62 <div class="date">
63 19th January 2025
64 </div>
65 <div class="body">
66 <p>For some years now, I have been working on a automatic hardware
67 based package recommendation system for Debian and other Linux
68 distributions. The isenkram system I started on back in 2013 now
69 consist of two subsystems, one locating firmware files using the
70 information provided by apt-file, and one matching hardware to
71 packages using information provided by AppStream. The former is very
72 similar to the mechanism implemented in debian-installer to pick the
73 right firmware packages to install. This post is about the latter
74 system. Thanks to steady progress and good help from both other
75 Debian and upstream developers, I am happy to report that
76 <a href="https://tracker.debian.org/pkg/isenkram">the Isenkram
77 system</a> now are able to recommend 121 packages using information
78 provided via
79 <a href="https://www.freedesktop.org/wiki/Distributions/AppStream/">AppStream</a>.</p>
80
81 <p>The mapping is done using modalias information provided by the
82 kernel, the same information used by udev when creating device files,
83 and the kernel when deciding which kernel modules to load. To get all
84 the modalias identifiers relevant for your machine, you can run the
85 following command on the command line:</p>
86
87 <pre>
88 find /sys/devices -name modalias -print0 | xargs -0 sort -u
89 </pre>
90
91 <p>The modalias identifiers can look something like this:</p>
92
93 <pre>
94 acpi:PNP0000
95 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
96 dmi:bvnDellInc.:bvr2.18.1:bd08/14/2023:br2.18:svnDellInc.:pnPowerEdgeR730:pvr:rvnDellInc.:rn0H21J3:rvrA09:cvnDellInc.:ct23:cvr:skuSKU=NotProvided
97 pci:v00008086d00008D3Bsv00001028sd00000600bc07sc80i00
98 platform:serial8250
99 scsi:t-0x05
100 usb:v413CpA001d0000dc09dsc00dp00ic09isc00ip00in00
101 </pre>
102
103 <p>The entries above are a selection of the complete set available on
104 a Dell PowerEdge R730 machine I have access to, to give an idea about
105 the various styles of hardware identifiers presented in the modalias
106 format. When looking up relevant packages in a Debian Testing
107 installation on the same R730, I get this list of packages
108 proposed:</p>
109
110 <pre>
111 % sudo isenkram-lookup
112 firmware-bnx2x
113 firmware-nvidia-graphics
114 firmware-qlogic
115 megactl
116 wsl
117 %
118 </pre>
119
120 <p>The list consist of firmware packages requested by kernel modules,
121 as well packages with program to get the status from the RAID
122 controller and to maintain the LAN console. When the edac-utils
123 package providing tools to check the ECC RAM status will enter testing
124 in a few days, it will also show up as a proposal from isenkram. In
125 addition, once the mfiutil package we uploaded in October get past the
126 NEW processing, it will also propose a tool to configure the RAID
127 controller.</p>
128
129 <p>Another example is the trusty old Lenovo Thinkpad X230, which have
130 hardware handled by several packages in the archive. This is running
131 on Debian Stable:</p>
132
133 <pre>
134 % isenkram-lookup
135 beignet-opencl-icd
136 bluez
137 cheese
138 ethtool
139 firmware-iwlwifi
140 firmware-misc-nonfree
141 fprintd
142 fprintd-demo
143 gkrellm-thinkbat
144 hdapsd
145 libpam-fprintd
146 pidgin-blinklight
147 thinkfan
148 tlp
149 tp-smapi-dkms
150 tpb
151 %
152 </pre>
153
154 <p>Here there proposal consist of software to handle the camera,
155 bluetooth, network card, wifi card, GPU, fan, fingerprint reader and
156 acceleration sensor on the machine.</p>
157
158 <p>Here is the complete set of packages currently providing hardware
159 mapping via AppStream in Debian Unstable: air-quality-sensor,
160 alsa-firmware-loaders, antpm, array-info, avarice, avrdude,
161 bmusb-v4l2proxy, brltty, calibre, colorhug-client, concordance-common,
162 consolekit, dahdi-firmware-nonfree, dahdi-linux, edac-utils,
163 eegdev-plugins-free, ekeyd, elogind, firmware-amd-graphics,
164 firmware-ath9k-htc, firmware-atheros, firmware-b43-installer,
165 firmware-b43legacy-installer, firmware-bnx2, firmware-bnx2x,
166 firmware-brcm80211, firmware-carl9170, firmware-cavium,
167 firmware-intel-graphics, firmware-intel-misc, firmware-ipw2x00,
168 firmware-ivtv, firmware-iwlwifi, firmware-libertas,
169 firmware-linux-free, firmware-mediatek, firmware-misc-nonfree,
170 firmware-myricom, firmware-netronome, firmware-netxen,
171 firmware-nvidia-graphics, firmware-qcom-soc, firmware-qlogic,
172 firmware-realtek, firmware-ti-connectivity, fpga-icestorm, g810-led,
173 galileo, garmin-forerunner-tools, gkrellm-thinkbat, goldencheetah,
174 gpsman, gpstrans, gqrx-sdr, i8kutils, imsprog, ledger-wallets-udev,
175 libairspy0, libam7xxx0.1, libbladerf2, libgphoto2-6t64,
176 libhamlib-utils, libm2k0.9.0, libmirisdr4, libnxt, libopenxr1-monado,
177 libosmosdr0, librem5-flash-image, librtlsdr0, libticables2-8,
178 libx52pro0, libykpers-1-1, libyubikey-udev, limesuite,
179 linuxcnc-uspace, lomoco, madwimax, media-player-info, megactl, mixxx,
180 mkgmap, msi-keyboard, mu-editor, mustang-plug, nbc, nitrokey-app, nqc,
181 ola, openfpgaloader, openocd, openrazer-driver-dkms, pcmciautils,
182 pcscd, pidgin-blinklight, ponyprog, printer-driver-splix,
183 python-yubico-tools, python3-btchip, qlcplus, rosegarden, scdaemon,
184 sispmctl, solaar, spectools, sunxi-tools, t2n, thinkfan, tlp,
185 tp-smapi-dkms, trezor, tucnak, ubertooth, usbrelay, uuu, viking,
186 w1retap, wsl, xawtv, xinput-calibrator, xserver-xorg-input-wacom and
187 xtrx-dkms.</p>
188
189 <p>In addition to these, there are several
190 <a href="https://udd.debian.org/cgi-bin/bts-usertags.cgi?user=pere%40hungry.com&tag=appstream-modalias">with
191 patches pending in the Debian bug tracking system</a>, and even more
192 where no-one wrote patches yet. Good candiates for the latter are
193 packages
194 <a href="https://udd.debian.org/lintian-tag.cgi?tag=appstream-metadata-missing-modalias-provide">with
195 udev rules but no AppStream hardware information</a>.</p>
196
197 <p>The isenkram system consist of two packages, isenkram-cli with the
198 command line tools, and isenkram with a GUI background process. The
199 latter will listen for dbus events from udev emitted when new hardware
200 become available (like when inserting a USB dongle or discovering a
201 new bluetooth device), look up the modalias entry for this piece of
202 hardware in AppStream (and a hard coded list of mappings from isenkram
203 - currently working hard to move this list to AppStream), and pop up a
204 dialog proposing to install any not already installed packages
205 supporting this hardware. It work very well today when inserting the
206 LEGO Mindstorms RCX, NXT and EV3 controllers. :) If you want to make
207 sure more hardware related packages get recommended, please help out
208 fixing the remaining packages in Debian to provide AppStream metadata
209 with hardware mappings.</p>
210
211 <p>As usual, if you use Bitcoin and want to show your support of my
212 activities, please send Bitcoin donations to my address
213 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
214
215 </div>
216 <div class="tags">
217
218
219 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>.
220
221
222 </div>
223 </div>
224 <div class="padding"></div>
225
226 <div class="entry">
227 <div class="title">
228 <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>
229 </div>
230 <div class="date">
231 18th January 2025
232 </div>
233 <div class="body">
234 <p><a href="http://www.hungry.com/~pere/blog/What_is_the_most_supported_MIME_type_in_Debian_in_2018_.html">Seven</a>
235 and
236 <a href="http://www.hungry.com/~pere/blog/What_is_the_most_supported_MIME_type_in_Debian_.html">twelve</a>
237 years ago, I measured what the most supported MIME type in Debian
238 was</a>, first by analysing the desktop files in all packages in the
239 archive, then by analysing the DEP-11 AppStream data set. I guess it
240 is time to repeat the measurement, only for unstable as last time:</p>
241
242 <p><strong>Debian Unstable:</strong></p>
243
244 <pre>
245 count MIME type
246 ----- -----------------------
247 63 image/png
248 63 image/jpeg
249 57 image/tiff
250 54 image/gif
251 51 image/bmp
252 50 audio/mpeg
253 48 text/plain
254 42 audio/x-mp3
255 40 application/ogg
256 39 audio/x-wav
257 39 audio/x-flac
258 36 audio/x-vorbis+ogg
259 35 audio/x-mpeg
260 34 audio/x-mpegurl
261 34 audio/ogg
262 33 application/x-ogg
263 32 audio/mp4
264 31 audio/x-scpls
265 31 application/pdf
266 29 audio/x-ms-wma
267 </pre>
268
269 <p>The list was created like this using a sid chroot:</p>
270
271 <pre>
272 cat /var/lib/apt/lists/*sid*_dep11_Components-amd64.yml.gz | \
273 zcat | awk '/^ - \S+\/\S+$/ {print $2 }' | sort | \
274 uniq -c | sort -nr | head -20
275 </pre>
276
277 <p>It is nice to see that the same number of packages now support PNG
278 and JPEG. Last time JPEG had more support than PNG. Most of the MIME
279 types are known to me, but the 'audio/x-scpls' one I have no idea what
280 represent, except it being an audio format. To find the packages
281 claiming support for this format, the appstreamcli command from the
282 appstream package can be used:
283
284 <pre>
285 % appstreamcli what-provides mediatype audio/x-scpls | grep Package: | sort -u
286 Package: alsaplayer-common
287 Package: amarok
288 Package: audacious
289 Package: brasero
290 Package: celluloid
291 Package: clapper
292 Package: clementine
293 Package: cynthiune.app
294 Package: elisa
295 Package: gtranscribe
296 Package: kaffeine
297 Package: kmplayer
298 Package: kylin-burner
299 Package: lollypop
300 Package: mediaconch-gui
301 Package: mediainfo-gui
302 Package: mplayer-gui
303 Package: mpv
304 Package: mystiq
305 Package: parlatype
306 Package: parole
307 Package: pragha
308 Package: qmmp
309 Package: rhythmbox
310 Package: sayonara
311 Package: shotcut
312 Package: smplayer
313 Package: soundconverter
314 Package: strawberry
315 Package: syncplay
316 Package: vlc
317 %
318 </pre>
319
320 <p>Look like several video and auto tools understand the format.
321 Similarly one can check out the number of packages supporting the STL
322 format commonly used for 3D printing:</p>
323
324 <pre>
325 % appstreamcli what-provides mediatype model/stl | grep Package: | sort -u
326 Package: cura
327 Package: freecad
328 Package: open3d-viewer
329 %
330 </pre>
331
332 <p>How strange the
333 <a href="https://tracker.debian.org/pkg/slic3r">slic3r</a> and
334 <a href="https://tracker.debian.org/pkg/slic3r-prusa">prusa-slicer</a>
335 packages do not support STL. Perhaps just missing package metadata?
336 Luckily the amount of package metadata in Debian is getting better,
337 and hopefully this way of locating relevant packages for any file
338 format will be the preferred one soon.
339
340 <p>As usual, if you use Bitcoin and want to show your support of my
341 activities, please send Bitcoin donations to my address
342 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
343
344 </div>
345 <div class="tags">
346
347
348 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>.
349
350
351 </div>
352 </div>
353 <div class="padding"></div>
354
355 <div class="entry">
356 <div class="title">
357 <a href="http://www.hungry.com/~pere/blog/The_2025_LinuxCNC_Norwegian_developer_gathering.html">The 2025 LinuxCNC Norwegian developer gathering</a>
358 </div>
359 <div class="date">
360 11th January 2025
361 </div>
362 <div class="body">
363 <p><a href="https://linuxcnc.org/">The LinuxCNC project</a> is
364 trotting along. And I believe this great software system for
365 numerical control of machines such as milling machines, lathes, plasma
366 cutters, routers, cutting machines, robots and hexapods, would do even
367 better with more in-person developer gatherings, so we plan to
368 organise such gathering this summer too.</p>
369
370 <p>This year we would like to invite to a small LinuxCNC and free
371 software fabrication workshop/gathering in Norway this summer for the
372 weekend starting July 4th 2025. New this year is the slightly larger
373 scope, and we invite people also outside the LinuxCNC community to
374 join. As earlier, we suggest to organize it as an
375 <a href="https://en.wikipedia.org/wiki/Unconference">unconference</a>,
376 where the participants create the program upon arrival.</p>
377
378 <p>The location is a metal workshop 15 minutes drive away from to the
379 Gardermoen airport (OSL), where there is a lot of space and a hotel only
380 5 minutes away by car. We plan to fire up the barbeque in the evenings.</p>
381
382 <p>Please let us know if you would like to join. We track the list of
383 participants on <a href="https://pad.efn.no/p/linuxcnc-2025-norway">a
384 simple pad</a>, please add yourself there if you are interested in joining.</p>
385
386 <p><a href="https://www.nuugfoundation.no/">The NUUG Foundation</a> has on
387 our request offered to handle any money involved with this gathering,
388 in other words holding any sponsor funds and paying any bills.
389 NUUG Foundation is a spinnoff from the NUUG member organisation here
390 in Norway with long ties to the free software and open standards
391 communities.</p>
392
393 <p>As usual we hope to find sponsors to pay for food, lodging and travel.</p>
394
395 <p>As usual, if you use Bitcoin and want to show your support of my
396 activities, please send Bitcoin donations to my address
397 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
398
399 </div>
400 <div class="tags">
401
402
403 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>.
404
405
406 </div>
407 </div>
408 <div class="padding"></div>
409
410 <p style="text-align: right;"><a href="01.rss"><img src="http://www.hungry.com/~pere/blog/xml.gif" alt="RSS Feed" width="36" height="14" /></a></p>
411 <div id="sidebar">
412
413
414
415 <h2>Archive</h2>
416 <ul>
417
418 <li>2025
419 <ul>
420
421 <li><a href="http://www.hungry.com/~pere/blog/archive/2025/01/">January (4)</a></li>
422
423 <li><a href="http://www.hungry.com/~pere/blog/archive/2025/02/">February (3)</a></li>
424
425 </ul></li>
426
427 <li>2024
428 <ul>
429
430 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/01/">January (1)</a></li>
431
432 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/02/">February (1)</a></li>
433
434 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/03/">March (2)</a></li>
435
436 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/04/">April (3)</a></li>
437
438 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/05/">May (1)</a></li>
439
440 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/06/">June (1)</a></li>
441
442 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/07/">July (2)</a></li>
443
444 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/12/">December (1)</a></li>
445
446 </ul></li>
447
448 <li>2023
449 <ul>
450
451 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/01/">January (3)</a></li>
452
453 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/02/">February (1)</a></li>
454
455 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/04/">April (2)</a></li>
456
457 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/05/">May (3)</a></li>
458
459 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/06/">June (1)</a></li>
460
461 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/08/">August (1)</a></li>
462
463 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/09/">September (1)</a></li>
464
465 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/10/">October (1)</a></li>
466
467 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/11/">November (4)</a></li>
468
469 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/12/">December (1)</a></li>
470
471 </ul></li>
472
473 <li>2022
474 <ul>
475
476 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/02/">February (1)</a></li>
477
478 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/03/">March (3)</a></li>
479
480 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/04/">April (2)</a></li>
481
482 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/06/">June (2)</a></li>
483
484 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/07/">July (1)</a></li>
485
486 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/09/">September (1)</a></li>
487
488 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/10/">October (1)</a></li>
489
490 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/12/">December (1)</a></li>
491
492 </ul></li>
493
494 <li>2021
495 <ul>
496
497 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/01/">January (2)</a></li>
498
499 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/02/">February (1)</a></li>
500
501 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/05/">May (1)</a></li>
502
503 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/06/">June (1)</a></li>
504
505 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/07/">July (3)</a></li>
506
507 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/08/">August (1)</a></li>
508
509 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/09/">September (1)</a></li>
510
511 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/10/">October (1)</a></li>
512
513 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/12/">December (1)</a></li>
514
515 </ul></li>
516
517 <li>2020
518 <ul>
519
520 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/02/">February (2)</a></li>
521
522 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/03/">March (2)</a></li>
523
524 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/04/">April (2)</a></li>
525
526 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/05/">May (3)</a></li>
527
528 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/06/">June (2)</a></li>
529
530 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/07/">July (1)</a></li>
531
532 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/09/">September (1)</a></li>
533
534 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/10/">October (1)</a></li>
535
536 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/11/">November (1)</a></li>
537
538 </ul></li>
539
540 <li>2019
541 <ul>
542
543 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/01/">January (4)</a></li>
544
545 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/02/">February (3)</a></li>
546
547 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/03/">March (3)</a></li>
548
549 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/05/">May (2)</a></li>
550
551 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/06/">June (5)</a></li>
552
553 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/07/">July (2)</a></li>
554
555 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/08/">August (1)</a></li>
556
557 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/09/">September (1)</a></li>
558
559 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/11/">November (1)</a></li>
560
561 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/12/">December (4)</a></li>
562
563 </ul></li>
564
565 <li>2018
566 <ul>
567
568 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/01/">January (1)</a></li>
569
570 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/02/">February (5)</a></li>
571
572 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/03/">March (5)</a></li>
573
574 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/04/">April (3)</a></li>
575
576 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/06/">June (2)</a></li>
577
578 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/07/">July (5)</a></li>
579
580 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/08/">August (3)</a></li>
581
582 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/09/">September (3)</a></li>
583
584 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/10/">October (5)</a></li>
585
586 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/11/">November (2)</a></li>
587
588 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/12/">December (4)</a></li>
589
590 </ul></li>
591
592 <li>2017
593 <ul>
594
595 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/01/">January (4)</a></li>
596
597 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/02/">February (3)</a></li>
598
599 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/03/">March (5)</a></li>
600
601 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/04/">April (2)</a></li>
602
603 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/06/">June (5)</a></li>
604
605 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/07/">July (1)</a></li>
606
607 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/08/">August (1)</a></li>
608
609 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/09/">September (3)</a></li>
610
611 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/10/">October (5)</a></li>
612
613 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/11/">November (3)</a></li>
614
615 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/12/">December (4)</a></li>
616
617 </ul></li>
618
619 <li>2016
620 <ul>
621
622 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/01/">January (3)</a></li>
623
624 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/02/">February (2)</a></li>
625
626 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/03/">March (3)</a></li>
627
628 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/04/">April (8)</a></li>
629
630 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/05/">May (8)</a></li>
631
632 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/06/">June (2)</a></li>
633
634 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/07/">July (2)</a></li>
635
636 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/08/">August (5)</a></li>
637
638 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/09/">September (2)</a></li>
639
640 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/10/">October (3)</a></li>
641
642 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/11/">November (8)</a></li>
643
644 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/12/">December (5)</a></li>
645
646 </ul></li>
647
648 <li>2015
649 <ul>
650
651 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/01/">January (7)</a></li>
652
653 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/02/">February (6)</a></li>
654
655 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/03/">March (1)</a></li>
656
657 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/04/">April (4)</a></li>
658
659 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/05/">May (3)</a></li>
660
661 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/06/">June (4)</a></li>
662
663 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/07/">July (6)</a></li>
664
665 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/08/">August (2)</a></li>
666
667 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/09/">September (2)</a></li>
668
669 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/10/">October (9)</a></li>
670
671 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/11/">November (6)</a></li>
672
673 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/12/">December (3)</a></li>
674
675 </ul></li>
676
677 <li>2014
678 <ul>
679
680 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/01/">January (2)</a></li>
681
682 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/02/">February (3)</a></li>
683
684 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/03/">March (8)</a></li>
685
686 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/04/">April (7)</a></li>
687
688 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/05/">May (1)</a></li>
689
690 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/06/">June (2)</a></li>
691
692 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/07/">July (2)</a></li>
693
694 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/08/">August (2)</a></li>
695
696 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/09/">September (5)</a></li>
697
698 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/10/">October (6)</a></li>
699
700 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/11/">November (3)</a></li>
701
702 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/12/">December (5)</a></li>
703
704 </ul></li>
705
706 <li>2013
707 <ul>
708
709 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/01/">January (11)</a></li>
710
711 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/02/">February (9)</a></li>
712
713 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/03/">March (9)</a></li>
714
715 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/04/">April (6)</a></li>
716
717 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/05/">May (9)</a></li>
718
719 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/06/">June (10)</a></li>
720
721 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/07/">July (7)</a></li>
722
723 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/08/">August (3)</a></li>
724
725 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/09/">September (5)</a></li>
726
727 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/10/">October (7)</a></li>
728
729 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/11/">November (9)</a></li>
730
731 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/12/">December (3)</a></li>
732
733 </ul></li>
734
735 <li>2012
736 <ul>
737
738 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/01/">January (7)</a></li>
739
740 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/02/">February (10)</a></li>
741
742 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/03/">March (17)</a></li>
743
744 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/04/">April (12)</a></li>
745
746 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/05/">May (12)</a></li>
747
748 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/06/">June (20)</a></li>
749
750 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/07/">July (17)</a></li>
751
752 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/08/">August (6)</a></li>
753
754 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/09/">September (9)</a></li>
755
756 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/10/">October (17)</a></li>
757
758 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/11/">November (10)</a></li>
759
760 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/12/">December (7)</a></li>
761
762 </ul></li>
763
764 <li>2011
765 <ul>
766
767 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/01/">January (16)</a></li>
768
769 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/02/">February (6)</a></li>
770
771 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/03/">March (6)</a></li>
772
773 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/04/">April (7)</a></li>
774
775 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/05/">May (3)</a></li>
776
777 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/06/">June (2)</a></li>
778
779 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/07/">July (7)</a></li>
780
781 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/08/">August (6)</a></li>
782
783 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/09/">September (4)</a></li>
784
785 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/10/">October (2)</a></li>
786
787 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/11/">November (3)</a></li>
788
789 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/12/">December (1)</a></li>
790
791 </ul></li>
792
793 <li>2010
794 <ul>
795
796 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/01/">January (2)</a></li>
797
798 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/02/">February (1)</a></li>
799
800 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/03/">March (3)</a></li>
801
802 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/04/">April (3)</a></li>
803
804 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/05/">May (9)</a></li>
805
806 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/06/">June (14)</a></li>
807
808 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/07/">July (12)</a></li>
809
810 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/08/">August (13)</a></li>
811
812 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/09/">September (7)</a></li>
813
814 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/10/">October (9)</a></li>
815
816 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/11/">November (13)</a></li>
817
818 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/12/">December (12)</a></li>
819
820 </ul></li>
821
822 <li>2009
823 <ul>
824
825 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/01/">January (8)</a></li>
826
827 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/02/">February (8)</a></li>
828
829 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/03/">March (12)</a></li>
830
831 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/04/">April (10)</a></li>
832
833 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/05/">May (9)</a></li>
834
835 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/06/">June (3)</a></li>
836
837 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/07/">July (4)</a></li>
838
839 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/08/">August (3)</a></li>
840
841 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/09/">September (1)</a></li>
842
843 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/10/">October (2)</a></li>
844
845 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/11/">November (3)</a></li>
846
847 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/12/">December (3)</a></li>
848
849 </ul></li>
850
851 <li>2008
852 <ul>
853
854 <li><a href="http://www.hungry.com/~pere/blog/archive/2008/11/">November (5)</a></li>
855
856 <li><a href="http://www.hungry.com/~pere/blog/archive/2008/12/">December (7)</a></li>
857
858 </ul></li>
859
860 </ul>
861
862
863
864 <h2>Tags</h2>
865 <ul>
866
867 <li><a href="http://www.hungry.com/~pere/blog/tags/3d-printer">3d-printer (19)</a></li>
868
869 <li><a href="http://www.hungry.com/~pere/blog/tags/amiga">amiga (1)</a></li>
870
871 <li><a href="http://www.hungry.com/~pere/blog/tags/aros">aros (1)</a></li>
872
873 <li><a href="http://www.hungry.com/~pere/blog/tags/bankid">bankid (4)</a></li>
874
875 <li><a href="http://www.hungry.com/~pere/blog/tags/betalkontant">betalkontant (9)</a></li>
876
877 <li><a href="http://www.hungry.com/~pere/blog/tags/bitcoin">bitcoin (13)</a></li>
878
879 <li><a href="http://www.hungry.com/~pere/blog/tags/bootsystem">bootsystem (17)</a></li>
880
881 <li><a href="http://www.hungry.com/~pere/blog/tags/bsa">bsa (2)</a></li>
882
883 <li><a href="http://www.hungry.com/~pere/blog/tags/chrpath">chrpath (3)</a></li>
884
885 <li><a href="http://www.hungry.com/~pere/blog/tags/debian">debian (209)</a></li>
886
887 <li><a href="http://www.hungry.com/~pere/blog/tags/debian edu">debian edu (159)</a></li>
888
889 <li><a href="http://www.hungry.com/~pere/blog/tags/debian-handbook">debian-handbook (9)</a></li>
890
891 <li><a href="http://www.hungry.com/~pere/blog/tags/digistan">digistan (11)</a></li>
892
893 <li><a href="http://www.hungry.com/~pere/blog/tags/dld">dld (18)</a></li>
894
895 <li><a href="http://www.hungry.com/~pere/blog/tags/docbook">docbook (33)</a></li>
896
897 <li><a href="http://www.hungry.com/~pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
898
899 <li><a href="http://www.hungry.com/~pere/blog/tags/english">english (471)</a></li>
900
901 <li><a href="http://www.hungry.com/~pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
902
903 <li><a href="http://www.hungry.com/~pere/blog/tags/fildeling">fildeling (14)</a></li>
904
905 <li><a href="http://www.hungry.com/~pere/blog/tags/freeculture">freeculture (34)</a></li>
906
907 <li><a href="http://www.hungry.com/~pere/blog/tags/freedombox">freedombox (9)</a></li>
908
909 <li><a href="http://www.hungry.com/~pere/blog/tags/frikanalen">frikanalen (20)</a></li>
910
911 <li><a href="http://www.hungry.com/~pere/blog/tags/h264">h264 (20)</a></li>
912
913 <li><a href="http://www.hungry.com/~pere/blog/tags/intervju">intervju (43)</a></li>
914
915 <li><a href="http://www.hungry.com/~pere/blog/tags/isenkram">isenkram (21)</a></li>
916
917 <li><a href="http://www.hungry.com/~pere/blog/tags/kart">kart (23)</a></li>
918
919 <li><a href="http://www.hungry.com/~pere/blog/tags/kodi">kodi (6)</a></li>
920
921 <li><a href="http://www.hungry.com/~pere/blog/tags/ldap">ldap (9)</a></li>
922
923 <li><a href="http://www.hungry.com/~pere/blog/tags/lego">lego (5)</a></li>
924
925 <li><a href="http://www.hungry.com/~pere/blog/tags/lenker">lenker (8)</a></li>
926
927 <li><a href="http://www.hungry.com/~pere/blog/tags/linuxcnc">linuxcnc (8)</a></li>
928
929 <li><a href="http://www.hungry.com/~pere/blog/tags/lsdvd">lsdvd (3)</a></li>
930
931 <li><a href="http://www.hungry.com/~pere/blog/tags/ltsp">ltsp (1)</a></li>
932
933 <li><a href="http://www.hungry.com/~pere/blog/tags/madewithcc">madewithcc (3)</a></li>
934
935 <li><a href="http://www.hungry.com/~pere/blog/tags/mesh network">mesh network (8)</a></li>
936
937 <li><a href="http://www.hungry.com/~pere/blog/tags/multimedia">multimedia (48)</a></li>
938
939 <li><a href="http://www.hungry.com/~pere/blog/tags/nice free software">nice free software (15)</a></li>
940
941 <li><a href="http://www.hungry.com/~pere/blog/tags/noark5">noark5 (27)</a></li>
942
943 <li><a href="http://www.hungry.com/~pere/blog/tags/norsk">norsk (326)</a></li>
944
945 <li><a href="http://www.hungry.com/~pere/blog/tags/nuug">nuug (200)</a></li>
946
947 <li><a href="http://www.hungry.com/~pere/blog/tags/offentlig innsyn">offentlig innsyn (42)</a></li>
948
949 <li><a href="http://www.hungry.com/~pere/blog/tags/open311">open311 (2)</a></li>
950
951 <li><a href="http://www.hungry.com/~pere/blog/tags/opensnitch">opensnitch (4)</a></li>
952
953 <li><a href="http://www.hungry.com/~pere/blog/tags/opphavsrett">opphavsrett (76)</a></li>
954
955 <li><a href="http://www.hungry.com/~pere/blog/tags/personvern">personvern (114)</a></li>
956
957 <li><a href="http://www.hungry.com/~pere/blog/tags/raid">raid (4)</a></li>
958
959 <li><a href="http://www.hungry.com/~pere/blog/tags/reactos">reactos (1)</a></li>
960
961 <li><a href="http://www.hungry.com/~pere/blog/tags/reprap">reprap (11)</a></li>
962
963 <li><a href="http://www.hungry.com/~pere/blog/tags/rfid">rfid (3)</a></li>
964
965 <li><a href="http://www.hungry.com/~pere/blog/tags/robot">robot (17)</a></li>
966
967 <li><a href="http://www.hungry.com/~pere/blog/tags/rss">rss (1)</a></li>
968
969 <li><a href="http://www.hungry.com/~pere/blog/tags/ruter">ruter (7)</a></li>
970
971 <li><a href="http://www.hungry.com/~pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
972
973 <li><a href="http://www.hungry.com/~pere/blog/tags/sikkerhet">sikkerhet (60)</a></li>
974
975 <li><a href="http://www.hungry.com/~pere/blog/tags/sitesummary">sitesummary (4)</a></li>
976
977 <li><a href="http://www.hungry.com/~pere/blog/tags/skepsis">skepsis (5)</a></li>
978
979 <li><a href="http://www.hungry.com/~pere/blog/tags/standard">standard (80)</a></li>
980
981 <li><a href="http://www.hungry.com/~pere/blog/tags/stavekontroll">stavekontroll (7)</a></li>
982
983 <li><a href="http://www.hungry.com/~pere/blog/tags/stortinget">stortinget (14)</a></li>
984
985 <li><a href="http://www.hungry.com/~pere/blog/tags/surveillance">surveillance (65)</a></li>
986
987 <li><a href="http://www.hungry.com/~pere/blog/tags/sysadmin">sysadmin (6)</a></li>
988
989 <li><a href="http://www.hungry.com/~pere/blog/tags/usenix">usenix (2)</a></li>
990
991 <li><a href="http://www.hungry.com/~pere/blog/tags/valg">valg (9)</a></li>
992
993 <li><a href="http://www.hungry.com/~pere/blog/tags/verkidetfri">verkidetfri (23)</a></li>
994
995 <li><a href="http://www.hungry.com/~pere/blog/tags/video">video (82)</a></li>
996
997 <li><a href="http://www.hungry.com/~pere/blog/tags/vitenskap">vitenskap (4)</a></li>
998
999 <li><a href="http://www.hungry.com/~pere/blog/tags/web">web (42)</a></li>
1000
1001 </ul>
1002
1003
1004 </div>
1005 <p style="text-align: right">
1006 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
1007 </p>
1008
1009 </body>
1010 </html>