]> 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/Brushing_up_on_old_packages_in_Xiph_and_Debian.html">Brushing up on old packages in Xiph and Debian</a></div>
24 <div class="date">28th February 2025</div>
25 <div class="body"><p>Since my motivation boost in the beginning of the month caused me
26 to wrap up a new release of
27 <tt><a href="https://xiph.org/oggz/">liboggz</a></tt>, I have used the
28 same boost to wrap up new editions of
29 <tt><a href="https://xiph.org/fishsound/">libfishsound</a></tt>,
30 <tt><a href="https://gitlab.xiph.org/xiph/liboggplay/">liboggplay</a></tt>
31 and
32 <tt><a href="https://wiki.xiph.org/index.php/OggKate">libkate</a></tt>
33 too. These have been tagged in upstream git, but not yet published on
34 the Xiph download location. I am waiting for someone with access to
35 have time to move the tarballs there, I hope it will happen in a few
36 days. The same is the case for a minor update of liboggz too.</p>
37
38 <p>As I was looking at Xiph packages lacking updates, it occurred to
39 me that there are packages in Debian that have not received a new
40 upload in a long time. Looking for a way to identify them, I came
41 across the <tt>ltnu</tt> script from the
42 <tt><a href="https://tracker.debian.org/pkg/devscripts">devscripts</a></tt>
43 package. It can sort by last update, packages maintained by a single
44 user/group, and is useful to figure out which packages a single
45 maintainer should have a look at. But I wanted a archive wide
46 summary. I lifted the <a href="https://udd.debian.org/">UDD</a> SQL
47 query used by ltnu from the script and adjusted it slightly to end up
48 with the following command:</p>
49
50 <pre>
51 #!/bin/sh
52 env PGPASSWORD=udd-mirror psql --host=udd-mirror.debian.net --user=udd-mirror udd --command="
53 select source,
54 max(version) as ver,
55 max(date) as uploaded
56 from upload_history
57 where distribution='unstable' and
58 source in (select source
59 from sources
60 where release='sid')
61 group by source
62 order by max(date) asc
63 limit 50;"
64 </pre>
65
66 <p>This will sort all source packages in Debian by upload date, and
67 list the 50 oldest ones. The end result is a list of packages I
68 suspect could use some attention:</p>
69
70 <pre>
71 source | ver | uploaded
72 -----------------------------+-------------------------+------------------------
73 xserver-xorg-video-ivtvdev | 1.1.2-1 | 2011-02-09 22:26:27+00
74 dynamite | 0.1.1-2 | 2011-04-30 16:47:20+00
75 xkbind | 2010.05.20-1 | 2011-05-02 22:48:05+00
76 libspctag | 0.2-1 | 2011-09-22 18:47:07+00
77 gromit | 20041213-9 | 2011-11-13 21:02:56+00
78 s3switch | 0.1-1 | 2011-11-22 15:47:40+00
79 cd5 | 0.1-3 | 2011-12-07 21:19:05+00
80 xserver-xorg-video-glide | 1.2.0-1 | 2011-12-30 16:50:48+00
81 blahtexml | 0.9-1.1 | 2012-04-25 11:32:11+00
82 aggregate | 1.6-7 | 2012-05-01 00:47:11+00
83 rtfilter | 1.1-4 | 2012-05-11 12:50:00+00
84 sic | 1.1-5 | 2012-05-11 19:10:31+00
85 kbdd | 0.6-4 | 2012-05-12 07:33:32+00
86 logtop | 0.4.3-1 | 2012-06-05 23:04:20+00
87 gbemol | 0.3.2-2 | 2012-06-26 17:03:11+00
88 pidgin-mra | 20100304-1 | 2012-06-29 23:07:41+00
89 mumudvb | 1.7.1-1 | 2012-06-30 09:12:14+00
90 libdr-sundown-perl | 0.02-1 | 2012-08-18 10:00:07+00
91 ztex-bmp | 20120314-2 | 2012-08-18 19:47:55+00
92 display-dhammapada | 1.0-0.1 | 2012-12-19 12:02:32+00
93 eot-utils | 1.1-1 | 2013-02-19 17:02:28+00
94 multiwatch | 1.0.0-rc1+really1.0.0-1 | 2013-02-19 17:02:35+00
95 pidgin-latex | 1.5.0-1 | 2013-04-04 15:03:43+00
96 libkeepalive | 0.2-1 | 2013-04-08 22:00:07+00
97 dfu-programmer | 0.6.1-1 | 2013-04-23 13:32:32+00
98 libb64 | 1.2-3 | 2013-05-05 21:04:51+00
99 i810switch | 0.6.5-7.1 | 2013-05-10 13:03:18+00
100 premake4 | 4.3+repack1-2 | 2013-05-31 12:48:51+00
101 unagi | 0.3.4-1 | 2013-06-05 11:19:32+00
102 mod-vhost-ldap | 2.4.0-1 | 2013-07-12 07:19:00+00
103 libapache2-mod-ldap-userdir | 1.1.19-2.1 | 2013-07-12 21:22:48+00
104 w9wm | 0.4.2-8 | 2013-07-18 11:49:10+00
105 vish | 0.0.20130812-1 | 2013-08-12 21:10:37+00
106 xfishtank | 2.5-1 | 2013-08-20 17:34:06+00
107 wap-wml-tools | 0.0.4-7 | 2013-08-21 16:19:10+00
108 ttysnoop | 0.12d-6 | 2013-08-24 17:33:09+00
109 libkaz | 1.21-2 | 2013-09-02 16:00:10+00
110 rarpd | 0.981107-9 | 2013-09-02 19:48:24+00
111 libimager-qrcode-perl | 0.033-1.2 | 2013-09-04 21:06:31+00
112 dov4l | 0.9+repack-1 | 2013-09-22 19:33:25+00
113 textdraw | 0.2+ds-0+nmu1 | 2013-10-07 21:25:03+00
114 gzrt | 0.8-1 | 2013-10-08 06:33:13+00
115 away | 0.9.5+ds-0+nmu2 | 2013-10-25 01:18:18+00
116 jshon | 20131010-1 | 2013-11-30 00:00:11+00
117 libstar-parser-perl | 0.59-4 | 2013-12-23 21:50:43+00
118 gcal | 3.6.3-3 | 2013-12-29 18:33:29+00
119 fonts-larabie | 1:20011216-5 | 2014-01-02 21:20:49+00
120 ccd2iso | 0.3-4 | 2014-01-28 06:33:35+00
121 kerneltop | 0.91-1 | 2014-02-04 12:03:30+00
122 vera++ | 1.2.1-2 | 2014-02-04 21:21:37+00
123 (50 rows)
124 </pre>
125
126 <p>So there are 8 packages last uploaded to unstable in 2011, 12
127 packages in 2012 and 26 packages in 2013. I suspect their maintainers
128 need help and we should all offer our assistance. I already contacted
129 two of them and hope the rest of the Debian community will chip in to
130 help too. We should ensure any Debian specific patches are passed
131 upstream if they still exist, that the package is brought up to speed
132 with the latest Debian policy, as well as ensure the source can built
133 with the current compiler set in Debian.</p>
134
135 <p>As usual, if you use Bitcoin and want to show your support of my
136 activities, please send Bitcoin donations to my address
137 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
138 </div>
139 <div class="tags">
140
141
142 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>.
143
144
145 </div>
146 </div>
147 <div class="padding"></div>
148
149 <div class="entry">
150 <div class="title"><a href="http://www.hungry.com/~pere/blog/Some_of_my_2024_free_software_activities.html">Some of my 2024 free software activities</a></div>
151 <div class="date">10th February 2025</div>
152 <div class="body"><p>It is a while since I posted a summary of the free software and
153 open culture activities and projects I have worked on. Here is a
154 quick summary of the major ones from last year.</p>
155
156 <p>I guess the biggest project of the year has been migrating orphaned
157 packages in Debian without a version control system to have a git
158 repository on salsa.debian.org. When I started in April around 450
159 the orphaned packages needed git. I've since migrated around 250 of
160 the packages to a salsa git repository, and around 40 packages were
161 left when I took a break. Not sure who did the around 160 conversions
162 I was not involved in, but I am very glad I got some help on the
163 project. I stopped partly because some of the remaining packages
164 needed more disk space to build than I have available on my
165 development machine, and partly because some had a strange build setup
166 I could not figure out. I had a time budget of 20 minutes per
167 package, if the package proved problematic and likely to take longer,
168 I moved to another package. Might continue later, if I manage to free
169 up some disk space.</p>
170
171 <p>Another rather big project was the translation to Norwegian Bokmål
172 and publishing of the first book ever published by a Sámi woman, the
173 «<a href="http://www.hungry.com/~pere/publisher/#infoerlifellerdoed2024">Møter
174 vi liv eller død?</a>» book by Elsa Laula, with a PD0 and CC-BY
175 license. I released it during the summer, and to my surprise it has
176 already sold several copies. As I suck at marketing, I did not expect
177 to sell any.</p>
178
179 <p>A smaller, but more long term project (for more than 10 years now),
180 and related to orphaned packages in Debian, is my project to ensure a
181 simple way to install hardware related packages in Debian when the
182 relevant hardware is present in a machine. It made a fairly big
183 advance forward last year, partly because I have been poking and
184 begging package maintainers and upstream developers to include
185 AppStream metadata XML in their packages. I've also released a few
186 new versions of the isenkram system with some robustness improvements.
187 Today 127 packages in Debian provide such information, allowing
188 <tt>isenkram-lookup</tt> to propose them. Will keep pushing until the
189 around 35 package names currently hard coded in the isenkram package
190 are down to zero, so only information provided by individual packages
191 are used for this feature.</p>
192
193 <p>As part of the work on AppStream, I have sponsored several packages
194 into Debian where the maintainer wanted to fix the issue but lacked
195 direct upload rights. I've also sponsored a few other packages, when
196 approached by the maintainer.</p>
197
198 <p>I would also like to mention two hardware related packages in
199 particular where I have been involved, the megactl and mfi-util
200 packages. Both work with the hardware RAID systems in several Dell
201 PowerEdge servers, and the first one is already available in Debian
202 (and of course, proposed by isenkram when used on the appropriate Dell
203 server), the other is waiting for NEW processing since this autumn. I
204 manage several such Dell servers and would like the tools needed to
205 monitor and configure these RAID controllers to be available from
206 within Debian out of the box.</p>
207
208 <p>Vaguely related to hardware support in Debian, I have also been
209 trying to find ways to help out the Debian ROCm team, to improve the
210 support in Debian for my artificial idiocy (AI) compute node. So far
211 only uploaded one package, helped test the initial packaging of
212 llama.cpp and tried to figure out how to get good speech recognition
213 like Whisper into Debian.<p>
214
215 <p>I am still involved in the LinuxCNC project, and organised a
216 developer gathering in Norway last summer. A new one is planned the
217 summer of 2025. I've also helped evaluate patches and uploaded new
218 versions of LinuxCNC into Debian.</p>
219
220 <p>After a 10 years long break, we managed to get a new and improved
221 upstream version of <tt>lsdvd</tt> released just before Christmas. As
222 I use it regularly to maintain my DVD archive, I was very happy to
223 finally get out a version supporting DVDDiscID useful for uniquely
224 identifying DVDs. I am dreaming of a Internet service mapping DVD IDs
225 to IMDB movie IDs, to make life as a DVD collector easier.</p>
226
227 <p>My involvement in Norwegian archive standardisation and the free
228 software implementation of the vendor neutral Noark 5 API continued
229 for the entire year. I've been pushing patches into both the API and
230 the test code for the API, participated in several editorial meetings
231 regarding the Noark 5 Tjenestegrensesnitt specification, submitted
232 several proposals for improvements for the same. We also organised a
233 small seminar for Noark 5 interested people, and is organising a new
234 seminar in a month.</p>
235
236 <p>Part of the year was spent working on and coordinating a Norwegian
237 Bokmål translation of the marvellous children's book
238 «<a href="https://fsfe.org/activities/ada-zangemann/">Ada and
239 Zangemann<a>», which focus on the right to repair and control your own
240 property, and the value of controlling the software on the devices you
241 own. The translation is mostly complete, and is now waiting for a
242 transformation of the project and manuscript to use Docbook XML
243 instead of a home made semi-text based format. Great progress is
244 being made and the new book build process is almost complete.</p>
245
246 <p>I have also been looking at how to companies in Norway can use free
247 software to report their accounting summaries to the Norwegian
248 government. Several new regulations make it very hard for companies
249 to do use free software for accounting, and I would like to change
250 this. Found a few drafts for opening up the reporting process, and
251 have read up on some of the specifications, but nothing much is
252 working yet.</p>
253
254 <p>These were just the top of the iceberg, but I guess this blog post
255 is long enough now. If you would like to help with any of these
256 projects, please get in touch, either directly on the project mailing
257 lists and forums, or with me via email, IRC or Signal. :)</p>
258
259 <p>As usual, if you use Bitcoin and want to show your support of my
260 activities, please send Bitcoin donations to my address
261 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
262 </div>
263 <div class="tags">
264
265
266 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>, <a href="http://www.hungry.com/~pere/blog/tags/lsdvd">lsdvd</a>, <a href="http://www.hungry.com/~pere/blog/tags/noark5">noark5</a>, <a href="http://www.hungry.com/~pere/blog/tags/standard">standard</a>, <a href="http://www.hungry.com/~pere/blog/tags/sysadmin">sysadmin</a>, <a href="http://www.hungry.com/~pere/blog/tags/verkidetfri">verkidetfri</a>.
267
268
269 </div>
270 </div>
271 <div class="padding"></div>
272
273 <div class="entry">
274 <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>
275 <div class="date"> 9th February 2025</div>
276 <div class="body"><p>A little over a week ago, I noticed
277 <a href="https://tracker.debian.org/pkg/liboggz">the liboggz
278 package</a> on my Debian dashboard had not had a new upstream release
279 for a while. A closer look showed that its last release, version
280 1.1.1, happened in 2010. A few patches had accumulated in the Debian
281 package, and I even noticed that I had passed on these patches to
282 upstream five years ago. A handful crash bugs had been reported
283 against the Debian package, and looking at the upstream repository I
284 even found a few crash bugs reported there too. To add insult to
285 injury, I discovered that upstream had accumulated several fixes in the
286 years between 2010 and now, and many of them had not made their way
287 into the Debian package. I decided enough was enough, and that a new
288 upstream release was needed fixing these nasty crash bugs. Luckily I
289 am also a member of the Xiph team, aka upstream, and could actually go
290 to work immediately to fix it.</p>
291
292 <p>I started by adding automatic build testing on
293 <a href="https://gitlab.xiph.org/xiph/liboggz">the Xiph gitlab oggz
294 instance</a>, to get a better idea of the state of affairs with the
295 code base. This exposed a few build problems, which I had to fix. In
296 parallel to this, I sent an email announcing my wish for a new release
297 to every person who had committed to the upstream code base since
298 2010, and asked for help doing a new release both on email and on the
299 #xiph IRC channel. Sadly only a fraction of their email providers
300 accepted my email. But Ralph Giles in the Xiph team came to the
301 rescue and provided invaluable help to guide be through the release
302 Xiph process. While this was going on, I spent a few days tracking
303 down the crash bugs with good help from
304 <a href="https://www.valgrind.org/">valgrind</a>, and came up with
305 patch proposals to get rid of at least these specific crash bugs. The
306 open issues also had to be checked. Several of them proved to be
307 fixed already, but a few I had to creat patches for. I also checked
308 out the Debian, Arch, Fedora, Suse and Gentoo packages to see if there
309 were patches applied in these Linux distributions that should be
310 passed upstream. The end result was ready yesterday. A new liboggz
311 release, version 1.1.2, was tagged, wrapped up and published on the
312 project page. And today, the new release was uploaded into
313 Debian.</p>
314
315 <p>You are probably by now curious on what actually changed in the
316 library. I guess the most interesting new feature was support for
317 Opus and VP8. Almost all other changes were stability or
318 documentation fixes. The rest were related to the gitlab continuous
319 integration testing. All in all, this was really a minor update,
320 hence the version bump only from 1.1.1 to to 1.1.2, but it was long
321 overdue and I am very happy that it is out the door.</p>
322
323 <p>One change proposed upstream was not included this time, as it
324 extended the API and changed some of the existing library methods, and
325 thus require a major SONAME bump and possibly code changes in every
326 program using the library. As I am not that familiar with the code
327 base, I am unsure if I am the right person to evaluate the change.
328 Perhaps later.</p>
329
330 <p>Since the release was tagged, a few minor fixes has been committed
331 upstream already: automatic testing the cross building to Windows, and
332 documentation updates linking to the correct project page. If a
333 important issue is discovered with this release, I guess a new release
334 might happen soon including the minor fixes. If not, perhaps they can
335 wait fifteen years. :)</p>
336
337 <p>I would like to send a big thank you to everyone that helped make
338 this release happen, from the people adding fixes upstream over the
339 course of fifteen years, to the ones reporting crash bugs, other bugs
340 and those maintaining the package in various Linux distributions.
341 Thank you very much for your time and interest.</p>
342
343 <p>As usual, if you use Bitcoin and want to show your support of my
344 activities, please send Bitcoin donations to my address
345 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
346 </div>
347 <div class="tags">
348
349
350 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>.
351
352
353 </div>
354 </div>
355 <div class="padding"></div>
356
357 <div class="entry">
358 <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>
359 <div class="date">31st January 2025</div>
360 <div class="body"><p>Nikita-prosjektet, der jeg er involvert, inviterer i samarbeid med
361 forskningsgruppen METAINFO og foreningen NUUG, til et frokostseminar
362 om Noark 5 og Noark 5 Tjenestegrensesnitt fredag 2025-03-14. Fokus
363 denne gangen er på bevaring og kassasjon. Seminaret finner sted ved
364 OsloMet, Pilestredet 46. Vi håper å få til videostrømming via
365 Internett av presentasjoner og paneldiskusjon. Oppdatert program og
366 lenker til påmeldingsskjema finner en via
367 <a href="https://noark.codeberg.page/noark5-seminars/2025-03-14-noark-workshop.html">arrangementets infoside</a>. Arrangementet er gratis.
368
369 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
370 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
371 til min adresse
372 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>. Merk,
373 betaling med bitcoin er ikke anonymt. :)</p>
374 </div>
375 <div class="tags">
376
377
378 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>.
379
380
381 </div>
382 </div>
383 <div class="padding"></div>
384
385 <div class="entry">
386 <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>
387 <div class="date">19th January 2025</div>
388 <div class="body"><p>For some years now, I have been working on a automatic hardware
389 based package recommendation system for Debian and other Linux
390 distributions. The isenkram system I started on back in 2013 now
391 consist of two subsystems, one locating firmware files using the
392 information provided by apt-file, and one matching hardware to
393 packages using information provided by AppStream. The former is very
394 similar to the mechanism implemented in debian-installer to pick the
395 right firmware packages to install. This post is about the latter
396 system. Thanks to steady progress and good help from both other
397 Debian and upstream developers, I am happy to report that
398 <a href="https://tracker.debian.org/pkg/isenkram">the Isenkram
399 system</a> now are able to recommend 121 packages using information
400 provided via
401 <a href="https://www.freedesktop.org/wiki/Distributions/AppStream/">AppStream</a>.</p>
402
403 <p>The mapping is done using modalias information provided by the
404 kernel, the same information used by udev when creating device files,
405 and the kernel when deciding which kernel modules to load. To get all
406 the modalias identifiers relevant for your machine, you can run the
407 following command on the command line:</p>
408
409 <pre>
410 find /sys/devices -name modalias -print0 | xargs -0 sort -u
411 </pre>
412
413 <p>The modalias identifiers can look something like this:</p>
414
415 <pre>
416 acpi:PNP0000
417 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
418 dmi:bvnDellInc.:bvr2.18.1:bd08/14/2023:br2.18:svnDellInc.:pnPowerEdgeR730:pvr:rvnDellInc.:rn0H21J3:rvrA09:cvnDellInc.:ct23:cvr:skuSKU=NotProvided
419 pci:v00008086d00008D3Bsv00001028sd00000600bc07sc80i00
420 platform:serial8250
421 scsi:t-0x05
422 usb:v413CpA001d0000dc09dsc00dp00ic09isc00ip00in00
423 </pre>
424
425 <p>The entries above are a selection of the complete set available on
426 a Dell PowerEdge R730 machine I have access to, to give an idea about
427 the various styles of hardware identifiers presented in the modalias
428 format. When looking up relevant packages in a Debian Testing
429 installation on the same R730, I get this list of packages
430 proposed:</p>
431
432 <pre>
433 % sudo isenkram-lookup
434 firmware-bnx2x
435 firmware-nvidia-graphics
436 firmware-qlogic
437 megactl
438 wsl
439 %
440 </pre>
441
442 <p>The list consist of firmware packages requested by kernel modules,
443 as well packages with program to get the status from the RAID
444 controller and to maintain the LAN console. When the edac-utils
445 package providing tools to check the ECC RAM status will enter testing
446 in a few days, it will also show up as a proposal from isenkram. In
447 addition, once the mfiutil package we uploaded in October get past the
448 NEW processing, it will also propose a tool to configure the RAID
449 controller.</p>
450
451 <p>Another example is the trusty old Lenovo Thinkpad X230, which have
452 hardware handled by several packages in the archive. This is running
453 on Debian Stable:</p>
454
455 <pre>
456 % isenkram-lookup
457 beignet-opencl-icd
458 bluez
459 cheese
460 ethtool
461 firmware-iwlwifi
462 firmware-misc-nonfree
463 fprintd
464 fprintd-demo
465 gkrellm-thinkbat
466 hdapsd
467 libpam-fprintd
468 pidgin-blinklight
469 thinkfan
470 tlp
471 tp-smapi-dkms
472 tpb
473 %
474 </pre>
475
476 <p>Here there proposal consist of software to handle the camera,
477 bluetooth, network card, wifi card, GPU, fan, fingerprint reader and
478 acceleration sensor on the machine.</p>
479
480 <p>Here is the complete set of packages currently providing hardware
481 mapping via AppStream in Debian Unstable: air-quality-sensor,
482 alsa-firmware-loaders, antpm, array-info, avarice, avrdude,
483 bmusb-v4l2proxy, brltty, calibre, colorhug-client, concordance-common,
484 consolekit, dahdi-firmware-nonfree, dahdi-linux, edac-utils,
485 eegdev-plugins-free, ekeyd, elogind, firmware-amd-graphics,
486 firmware-ath9k-htc, firmware-atheros, firmware-b43-installer,
487 firmware-b43legacy-installer, firmware-bnx2, firmware-bnx2x,
488 firmware-brcm80211, firmware-carl9170, firmware-cavium,
489 firmware-intel-graphics, firmware-intel-misc, firmware-ipw2x00,
490 firmware-ivtv, firmware-iwlwifi, firmware-libertas,
491 firmware-linux-free, firmware-mediatek, firmware-misc-nonfree,
492 firmware-myricom, firmware-netronome, firmware-netxen,
493 firmware-nvidia-graphics, firmware-qcom-soc, firmware-qlogic,
494 firmware-realtek, firmware-ti-connectivity, fpga-icestorm, g810-led,
495 galileo, garmin-forerunner-tools, gkrellm-thinkbat, goldencheetah,
496 gpsman, gpstrans, gqrx-sdr, i8kutils, imsprog, ledger-wallets-udev,
497 libairspy0, libam7xxx0.1, libbladerf2, libgphoto2-6t64,
498 libhamlib-utils, libm2k0.9.0, libmirisdr4, libnxt, libopenxr1-monado,
499 libosmosdr0, librem5-flash-image, librtlsdr0, libticables2-8,
500 libx52pro0, libykpers-1-1, libyubikey-udev, limesuite,
501 linuxcnc-uspace, lomoco, madwimax, media-player-info, megactl, mixxx,
502 mkgmap, msi-keyboard, mu-editor, mustang-plug, nbc, nitrokey-app, nqc,
503 ola, openfpgaloader, openocd, openrazer-driver-dkms, pcmciautils,
504 pcscd, pidgin-blinklight, ponyprog, printer-driver-splix,
505 python-yubico-tools, python3-btchip, qlcplus, rosegarden, scdaemon,
506 sispmctl, solaar, spectools, sunxi-tools, t2n, thinkfan, tlp,
507 tp-smapi-dkms, trezor, tucnak, ubertooth, usbrelay, uuu, viking,
508 w1retap, wsl, xawtv, xinput-calibrator, xserver-xorg-input-wacom and
509 xtrx-dkms.</p>
510
511 <p>In addition to these, there are several
512 <a href="https://udd.debian.org/cgi-bin/bts-usertags.cgi?user=pere%40hungry.com&tag=appstream-modalias">with
513 patches pending in the Debian bug tracking system</a>, and even more
514 where no-one wrote patches yet. Good candiates for the latter are
515 packages
516 <a href="https://udd.debian.org/lintian-tag.cgi?tag=appstream-metadata-missing-modalias-provide">with
517 udev rules but no AppStream hardware information</a>.</p>
518
519 <p>The isenkram system consist of two packages, isenkram-cli with the
520 command line tools, and isenkram with a GUI background process. The
521 latter will listen for dbus events from udev emitted when new hardware
522 become available (like when inserting a USB dongle or discovering a
523 new bluetooth device), look up the modalias entry for this piece of
524 hardware in AppStream (and a hard coded list of mappings from isenkram
525 - currently working hard to move this list to AppStream), and pop up a
526 dialog proposing to install any not already installed packages
527 supporting this hardware. It work very well today when inserting the
528 LEGO Mindstorms RCX, NXT and EV3 controllers. :) If you want to make
529 sure more hardware related packages get recommended, please help out
530 fixing the remaining packages in Debian to provide AppStream metadata
531 with hardware mappings.</p>
532
533 <p>As usual, if you use Bitcoin and want to show your support of my
534 activities, please send Bitcoin donations to my address
535 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
536 </div>
537 <div class="tags">
538
539
540 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>.
541
542
543 </div>
544 </div>
545 <div class="padding"></div>
546
547 <div class="entry">
548 <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>
549 <div class="date">18th January 2025</div>
550 <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>
551 and
552 <a href="http://www.hungry.com/~pere/blog/What_is_the_most_supported_MIME_type_in_Debian_.html">twelve</a>
553 years ago, I measured what the most supported MIME type in Debian
554 was</a>, first by analysing the desktop files in all packages in the
555 archive, then by analysing the DEP-11 AppStream data set. I guess it
556 is time to repeat the measurement, only for unstable as last time:</p>
557
558 <p><strong>Debian Unstable:</strong></p>
559
560 <pre>
561 count MIME type
562 ----- -----------------------
563 63 image/png
564 63 image/jpeg
565 57 image/tiff
566 54 image/gif
567 51 image/bmp
568 50 audio/mpeg
569 48 text/plain
570 42 audio/x-mp3
571 40 application/ogg
572 39 audio/x-wav
573 39 audio/x-flac
574 36 audio/x-vorbis+ogg
575 35 audio/x-mpeg
576 34 audio/x-mpegurl
577 34 audio/ogg
578 33 application/x-ogg
579 32 audio/mp4
580 31 audio/x-scpls
581 31 application/pdf
582 29 audio/x-ms-wma
583 </pre>
584
585 <p>The list was created like this using a sid chroot:</p>
586
587 <pre>
588 cat /var/lib/apt/lists/*sid*_dep11_Components-amd64.yml.gz | \
589 zcat | awk '/^ - \S+\/\S+$/ {print $2 }' | sort | \
590 uniq -c | sort -nr | head -20
591 </pre>
592
593 <p>It is nice to see that the same number of packages now support PNG
594 and JPEG. Last time JPEG had more support than PNG. Most of the MIME
595 types are known to me, but the 'audio/x-scpls' one I have no idea what
596 represent, except it being an audio format. To find the packages
597 claiming support for this format, the appstreamcli command from the
598 appstream package can be used:
599
600 <pre>
601 % appstreamcli what-provides mediatype audio/x-scpls | grep Package: | sort -u
602 Package: alsaplayer-common
603 Package: amarok
604 Package: audacious
605 Package: brasero
606 Package: celluloid
607 Package: clapper
608 Package: clementine
609 Package: cynthiune.app
610 Package: elisa
611 Package: gtranscribe
612 Package: kaffeine
613 Package: kmplayer
614 Package: kylin-burner
615 Package: lollypop
616 Package: mediaconch-gui
617 Package: mediainfo-gui
618 Package: mplayer-gui
619 Package: mpv
620 Package: mystiq
621 Package: parlatype
622 Package: parole
623 Package: pragha
624 Package: qmmp
625 Package: rhythmbox
626 Package: sayonara
627 Package: shotcut
628 Package: smplayer
629 Package: soundconverter
630 Package: strawberry
631 Package: syncplay
632 Package: vlc
633 %
634 </pre>
635
636 <p>Look like several video and auto tools understand the format.
637 Similarly one can check out the number of packages supporting the STL
638 format commonly used for 3D printing:</p>
639
640 <pre>
641 % appstreamcli what-provides mediatype model/stl | grep Package: | sort -u
642 Package: cura
643 Package: freecad
644 Package: open3d-viewer
645 %
646 </pre>
647
648 <p>How strange the
649 <a href="https://tracker.debian.org/pkg/slic3r">slic3r</a> and
650 <a href="https://tracker.debian.org/pkg/slic3r-prusa">prusa-slicer</a>
651 packages do not support STL. Perhaps just missing package metadata?
652 Luckily the amount of package metadata in Debian is getting better,
653 and hopefully this way of locating relevant packages for any file
654 format will be the preferred one soon.
655
656 <p>As usual, if you use Bitcoin and want to show your support of my
657 activities, please send Bitcoin donations to my address
658 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
659 </div>
660 <div class="tags">
661
662
663 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>.
664
665
666 </div>
667 </div>
668 <div class="padding"></div>
669
670 <div class="entry">
671 <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>
672 <div class="date">11th January 2025</div>
673 <div class="body"><p><a href="https://linuxcnc.org/">The LinuxCNC project</a> is
674 trotting along. And I believe this great software system for
675 numerical control of machines such as milling machines, lathes, plasma
676 cutters, routers, cutting machines, robots and hexapods, would do even
677 better with more in-person developer gatherings, so we plan to
678 organise such gathering this summer too.</p>
679
680 <p>This year we would like to invite to a small LinuxCNC and free
681 software fabrication workshop/gathering in Norway this summer for the
682 weekend starting July 4th 2025. New this year is the slightly larger
683 scope, and we invite people also outside the LinuxCNC community to
684 join. As earlier, we suggest to organize it as an
685 <a href="https://en.wikipedia.org/wiki/Unconference">unconference</a>,
686 where the participants create the program upon arrival.</p>
687
688 <p>The location is a metal workshop 15 minutes drive away from to the
689 Gardermoen airport (OSL), where there is a lot of space and a hotel only
690 5 minutes away by car. We plan to fire up the barbeque in the evenings.</p>
691
692 <p>Please let us know if you would like to join. We track the list of
693 participants on <a href="https://pad.efn.no/p/linuxcnc-2025-norway">a
694 simple pad</a>, please add yourself there if you are interested in joining.</p>
695
696 <p><a href="https://www.nuugfoundation.no/">The NUUG Foundation</a> has on
697 our request offered to handle any money involved with this gathering,
698 in other words holding any sponsor funds and paying any bills.
699 NUUG Foundation is a spinnoff from the NUUG member organisation here
700 in Norway with long ties to the free software and open standards
701 communities.</p>
702
703 <p>As usual we hope to find sponsors to pay for food, lodging and travel.</p>
704
705 <p>As usual, if you use Bitcoin and want to show your support of my
706 activities, please send Bitcoin donations to my address
707 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
708 </div>
709 <div class="tags">
710
711
712 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>.
713
714
715 </div>
716 </div>
717 <div class="padding"></div>
718
719 <div class="entry">
720 <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>
721 <div class="date">21st December 2024</div>
722 <div class="body"><p>The rumors of the death of
723 <a href="https://sourceforge.net/projects/lsdvd/">the lsdvd project</a>
724 is slightly exaggerated. And the last few months, we have been
725 working on fixing and improving it, culminating in a new release last
726 night. This is the list of changes in the new 0.18 release, as
727 <a href="https://sourceforge.net/p/lsdvd/mailman/message/59108028/">announced
728 on the project mailing list</a>:</p>
729
730 <ul>
731
732 <li>Simplified autoconf setup, dropped --enable-debug option.</li>
733 <li>Improved video resolution reporting (<a href="https://sourceforge.net/p/lsdvd/patches/8/">Fixes #8</a>).</li>
734 <li>Applied patches fetched from BSDs (<a href="https://sourceforge.net/p/lsdvd/patches/7/">Fixes #7</a>).</li>
735 <li>Corrected Perl output (<a href="https://sourceforge.net/p/lsdvd/patches/1/">Fixes #1</a>).</li>
736 <li>Adjusted Pan and Scan entries to produce valid XML.</li>
737 <li>Changed --help output from stderr to stdout.</li>
738 <li>Corrected aspect ratio and audio format formatting.</li>
739 <li>Avoid segfault when hitting a NULL pointer in the IFO structure.</li>
740 <li>Change build rules to supress compiler flags, to make it easier to
741 spot warnings.</li>
742 <li>Set default DVD device based on OS (Linux, *BSD, Darwin)</li>
743 <li>Added libdvdread DVDDiscID to output.</li>
744 <li>Corrected typo in longest track value in XML format.</li>
745 <li>Switched XML output to use libxml to avoid string encoding issues.</li>
746 <li>Added simple build time test suite.</li>
747 <li>Cleaned up language code handling and adding missing mapping for
748 language codes 'nb' and 'nn'.</li>
749 <li>Added JSON output support using -Oj.</li>
750 </ul>
751
752 <p>The most exciting news to me is easy access to the DVDDiscID, which
753 make it a lot easier to identify DVD duplicates across a large
754 collection of DVDs. During testing it has proved to be very effective
755 ad identifying when DVDs in a DVD box (say all Star Wars movies) is
756 identical to DVDs sold individually (like the same Star Wars movies
757 packaged individually).</p>
758
759 <p>Because none of the current developers got access to do tarball
760 releases on Sourceforge any more, the release is only available as
761 <a href="https://sourceforge.net/p/lsdvd/git/ci/0.18/tree/">a git
762 tag</a> in the repository. Lets hope it do not take ten years for the
763 next release. The project are discussing to move away from
764 Sourceforge, but it has not yet concluded.</p>
765
766 <p>As usual, if you use Bitcoin and want to show your support of my
767 activities, please send Bitcoin donations to my address
768 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
769 </div>
770 <div class="tags">
771
772
773 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>.
774
775
776 </div>
777 </div>
778 <div class="padding"></div>
779
780 <div class="entry">
781 <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>
782 <div class="date">11th July 2024</div>
783 <div class="body"><p><a href="http://www.hungry.com/~pere/blog/Time_to_move_orphaned_Debian_packages_to_git.html">In
784 April</a>, I started migrating orphaned Debian packages without any
785 version control system listed in debian/control to git. This morning,
786 my Debian QA page finally reached 200 QA packages migrated. In
787 reality there are a few more, as the packages uploaded by someone else
788 after my initial upload have disappeared from my QA uploads list. As
789 I am running out of steam and will most likely focus on other parts of
790 Debian moving forward, I hope someone else will find time to continue
791 the migration to bring the number of orphaned packages without any
792 version control system down to zero. Here is the updated recipe if
793 someone want to help out.</p>
794
795 <p>To locate packages to work on, the following one-liner can be used:</p>
796
797 <blockquote><pre>
798 PGPASSWORD="udd-mirror" psql --port=5432 --host=udd-mirror.debian.net \
799 --username=udd-mirror udd -c "select source from sources \
800 where release = 'sid' and (vcs_url ilike '%anonscm.debian.org%' \
801 OR vcs_browser ilike '%anonscm.debian.org%' or vcs_url IS NULL \
802 OR vcs_browser IS NULL) AND maintainer ilike '%packages@qa.debian.org%' \
803 order by random() limit 10;"
804 </pre></blockquote>
805
806 <p>Pick a random package from the list and run the latest edition of
807 the script
808 <tt><a href="http://www.hungry.com/~pere/blog/images/2024-07-11-debian-snap-to-salsa.sh">debian-snap-to-salsa</a></tt>
809 with the package name as the argument to prepare a git repository with
810 the existing packaging. This will download old Debian packages from
811 <tt>snapshot.debian.org</tt>. Note that very recent uploads will not
812 be included, so check out the package on <tt>tracker.debian.org</tt>.
813 Next, run <tt>gbp buildpackage --git-ignore-new</tt> to verify that
814 the package build as it should, and then visit
815 <a href="https://salsa.debian.org/debian/">https://salsa.debian.org/debian/</a>
816 and make sure there is not already a git repository for the package
817 there. I also did <tt>git log -p debian/control</tt> and look for vcs
818 entries to check if the package used to have a git repository on
819 Alioth, and see if it can be a useful starting point moving forward.
820 If all this check out, I created a new gitlab project below the Debian
821 group on salsa, push the package source there and upload a new version.
822 I tend to also ensure build hardening is enabled, if it prove to be
823 easy, and check if I can easily fix any lintian issues or bug reports.
824 If the process took more than 20 minutes, I dropped it and moved on to
825 another package.</p>
826
827 <p>If I found patches in debian/patches/ that were not yet passed
828 upstream, I would send an email to make sure upstream know about them.
829 This has proved to be a valuable step, and caused several new releases
830 for software that initially appeared abandoned. :)</p>
831
832 <p>As usual, if you use Bitcoin and want to show your support of my
833 activities, please send Bitcoin donations to my address
834 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
835 </div>
836 <div class="tags">
837
838
839 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>.
840
841
842 </div>
843 </div>
844 <div class="padding"></div>
845
846 <div class="entry">
847 <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>
848 <div class="date">10th July 2024</div>
849 <div class="body"><p>The Norwegian <a href="https://linuxcnc.org/">The LinuxCNC</a>
850 developer gathering 2024 is over. It was a great and productive
851 weekend, and I am sad that it is over.</p>
852
853 <p>Regular readers probably still remember what LinuxCNC is, but her
854 is a quick summary for those that forgot? LinuxCNC is a free software
855 system for numerical control of machines such as milling machines,
856 lathes, plasma cutters, routers, cutting machines, robots and
857 hexapods. It eats G-code and produce motor movement and other changes
858 to the physical world, while reading sensor input.</p>
859
860 <p>I am not quite sure about the total head count, as not all people
861 were present at the gathering the entire weekend, but I believe it was
862 close to 10 people showing their faces at the gathering. The "hard
863 core" of the group, who stayed the entire weekend, were two from
864 Norway, two from Germany and one from England. I am happy with the
865 outcome from the gathering. We managed to wrap up a new stable
866 LinuxCNC release 2.9.3 and even tested it on real hardware within
867 minutes of the release. The release notes for 2.9.3 are still being
868 written, but should show up on on the project site in the next few
869 days. We managed to go through around twenty pull requests and merge
870 then into either the stable release (2.9) or the development branch
871 (master). There are still around thirty pull requests left to
872 process, so we are not out of work yet. We even managed to
873 fix/improve a slightly worn lathe, and experiment with running a
874 mechanical clock using G-code.</p>
875
876 <p>The evening barbeque worked well both on Saturday and Sunday. It
877 is quite fun to light up a charcoal grill using compressed air. Sadly
878 the weather was not the best, so we stayed indoors most of the
879 time.</p>
880
881 <p>This gathering was made possible partly with sponsoring from both
882 <a href="https://www.redpill-linpro.com/">Redpill Linpro</a>,
883 <a href="https://debian.org/">Debian</a> and
884 <a href="https://nuugfoundation.no/">NUUG Foundation</a>, and we are
885 most grateful for the support. I would also like to thank the local
886 school for lending us some furniture, and of course the rest of the
887 members of the organizers team, Asle and Bosse, for their countless
888 contributions. The gathering was such success that we want to do it
889 again next year.</p>
890
891 <p>We plan to organize the next Norwegian LinuxCNC developer gathering
892 at the end of June next year, the weekend Friday 27th to Sunday 29th
893 of June 2025. I recommend you reserve the dates on your calendar
894 today. Other related communities are also welcome to join in, for
895 example those working on systems like FreeCAD and opencamlib, as I am
896 sure we have much in common and sharing experiences would be very
897 useful to all involved. We are of course looking for sponsors for
898 this gathering already. The total budget for this gathering was
899 around NOK 25.000 (around EUR 2.300), so our needs are quite modest.
900 Perhaps a machine or tools company would like to help out the free
901 software manufacturing community by sponsoring food, lodging and
902 transport for such gathering?</p>
903 </div>
904 <div class="tags">
905
906
907 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>.
908
909
910 </div>
911 </div>
912 <div class="padding"></div>
913
914 <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>
915 <div id="sidebar">
916
917
918
919 <h2>Archive</h2>
920 <ul>
921
922 <li>2025
923 <ul>
924
925 <li><a href="http://www.hungry.com/~pere/blog/archive/2025/01/">January (4)</a></li>
926
927 <li><a href="http://www.hungry.com/~pere/blog/archive/2025/02/">February (3)</a></li>
928
929 </ul></li>
930
931 <li>2024
932 <ul>
933
934 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/01/">January (1)</a></li>
935
936 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/02/">February (1)</a></li>
937
938 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/03/">March (2)</a></li>
939
940 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/04/">April (3)</a></li>
941
942 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/05/">May (1)</a></li>
943
944 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/06/">June (1)</a></li>
945
946 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/07/">July (2)</a></li>
947
948 <li><a href="http://www.hungry.com/~pere/blog/archive/2024/12/">December (1)</a></li>
949
950 </ul></li>
951
952 <li>2023
953 <ul>
954
955 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/01/">January (3)</a></li>
956
957 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/02/">February (1)</a></li>
958
959 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/04/">April (2)</a></li>
960
961 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/05/">May (3)</a></li>
962
963 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/06/">June (1)</a></li>
964
965 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/08/">August (1)</a></li>
966
967 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/09/">September (1)</a></li>
968
969 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/10/">October (1)</a></li>
970
971 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/11/">November (4)</a></li>
972
973 <li><a href="http://www.hungry.com/~pere/blog/archive/2023/12/">December (1)</a></li>
974
975 </ul></li>
976
977 <li>2022
978 <ul>
979
980 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/02/">February (1)</a></li>
981
982 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/03/">March (3)</a></li>
983
984 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/04/">April (2)</a></li>
985
986 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/06/">June (2)</a></li>
987
988 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/07/">July (1)</a></li>
989
990 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/09/">September (1)</a></li>
991
992 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/10/">October (1)</a></li>
993
994 <li><a href="http://www.hungry.com/~pere/blog/archive/2022/12/">December (1)</a></li>
995
996 </ul></li>
997
998 <li>2021
999 <ul>
1000
1001 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/01/">January (2)</a></li>
1002
1003 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/02/">February (1)</a></li>
1004
1005 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/05/">May (1)</a></li>
1006
1007 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/06/">June (1)</a></li>
1008
1009 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/07/">July (3)</a></li>
1010
1011 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/08/">August (1)</a></li>
1012
1013 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/09/">September (1)</a></li>
1014
1015 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/10/">October (1)</a></li>
1016
1017 <li><a href="http://www.hungry.com/~pere/blog/archive/2021/12/">December (1)</a></li>
1018
1019 </ul></li>
1020
1021 <li>2020
1022 <ul>
1023
1024 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/02/">February (2)</a></li>
1025
1026 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/03/">March (2)</a></li>
1027
1028 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/04/">April (2)</a></li>
1029
1030 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/05/">May (3)</a></li>
1031
1032 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/06/">June (2)</a></li>
1033
1034 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/07/">July (1)</a></li>
1035
1036 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/09/">September (1)</a></li>
1037
1038 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/10/">October (1)</a></li>
1039
1040 <li><a href="http://www.hungry.com/~pere/blog/archive/2020/11/">November (1)</a></li>
1041
1042 </ul></li>
1043
1044 <li>2019
1045 <ul>
1046
1047 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/01/">January (4)</a></li>
1048
1049 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/02/">February (3)</a></li>
1050
1051 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/03/">March (3)</a></li>
1052
1053 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/05/">May (2)</a></li>
1054
1055 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/06/">June (5)</a></li>
1056
1057 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/07/">July (2)</a></li>
1058
1059 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/08/">August (1)</a></li>
1060
1061 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/09/">September (1)</a></li>
1062
1063 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/11/">November (1)</a></li>
1064
1065 <li><a href="http://www.hungry.com/~pere/blog/archive/2019/12/">December (4)</a></li>
1066
1067 </ul></li>
1068
1069 <li>2018
1070 <ul>
1071
1072 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/01/">January (1)</a></li>
1073
1074 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/02/">February (5)</a></li>
1075
1076 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/03/">March (5)</a></li>
1077
1078 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/04/">April (3)</a></li>
1079
1080 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/06/">June (2)</a></li>
1081
1082 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/07/">July (5)</a></li>
1083
1084 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/08/">August (3)</a></li>
1085
1086 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/09/">September (3)</a></li>
1087
1088 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/10/">October (5)</a></li>
1089
1090 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/11/">November (2)</a></li>
1091
1092 <li><a href="http://www.hungry.com/~pere/blog/archive/2018/12/">December (4)</a></li>
1093
1094 </ul></li>
1095
1096 <li>2017
1097 <ul>
1098
1099 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/01/">January (4)</a></li>
1100
1101 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/02/">February (3)</a></li>
1102
1103 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/03/">March (5)</a></li>
1104
1105 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/04/">April (2)</a></li>
1106
1107 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/06/">June (5)</a></li>
1108
1109 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/07/">July (1)</a></li>
1110
1111 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/08/">August (1)</a></li>
1112
1113 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/09/">September (3)</a></li>
1114
1115 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/10/">October (5)</a></li>
1116
1117 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/11/">November (3)</a></li>
1118
1119 <li><a href="http://www.hungry.com/~pere/blog/archive/2017/12/">December (4)</a></li>
1120
1121 </ul></li>
1122
1123 <li>2016
1124 <ul>
1125
1126 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/01/">January (3)</a></li>
1127
1128 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/02/">February (2)</a></li>
1129
1130 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/03/">March (3)</a></li>
1131
1132 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/04/">April (8)</a></li>
1133
1134 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/05/">May (8)</a></li>
1135
1136 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/06/">June (2)</a></li>
1137
1138 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/07/">July (2)</a></li>
1139
1140 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/08/">August (5)</a></li>
1141
1142 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/09/">September (2)</a></li>
1143
1144 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/10/">October (3)</a></li>
1145
1146 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/11/">November (8)</a></li>
1147
1148 <li><a href="http://www.hungry.com/~pere/blog/archive/2016/12/">December (5)</a></li>
1149
1150 </ul></li>
1151
1152 <li>2015
1153 <ul>
1154
1155 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/01/">January (7)</a></li>
1156
1157 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/02/">February (6)</a></li>
1158
1159 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/03/">March (1)</a></li>
1160
1161 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/04/">April (4)</a></li>
1162
1163 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/05/">May (3)</a></li>
1164
1165 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/06/">June (4)</a></li>
1166
1167 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/07/">July (6)</a></li>
1168
1169 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/08/">August (2)</a></li>
1170
1171 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/09/">September (2)</a></li>
1172
1173 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/10/">October (9)</a></li>
1174
1175 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/11/">November (6)</a></li>
1176
1177 <li><a href="http://www.hungry.com/~pere/blog/archive/2015/12/">December (3)</a></li>
1178
1179 </ul></li>
1180
1181 <li>2014
1182 <ul>
1183
1184 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/01/">January (2)</a></li>
1185
1186 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/02/">February (3)</a></li>
1187
1188 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/03/">March (8)</a></li>
1189
1190 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/04/">April (7)</a></li>
1191
1192 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/05/">May (1)</a></li>
1193
1194 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/06/">June (2)</a></li>
1195
1196 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/07/">July (2)</a></li>
1197
1198 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/08/">August (2)</a></li>
1199
1200 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/09/">September (5)</a></li>
1201
1202 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/10/">October (6)</a></li>
1203
1204 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/11/">November (3)</a></li>
1205
1206 <li><a href="http://www.hungry.com/~pere/blog/archive/2014/12/">December (5)</a></li>
1207
1208 </ul></li>
1209
1210 <li>2013
1211 <ul>
1212
1213 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/01/">January (11)</a></li>
1214
1215 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/02/">February (9)</a></li>
1216
1217 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/03/">March (9)</a></li>
1218
1219 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/04/">April (6)</a></li>
1220
1221 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/05/">May (9)</a></li>
1222
1223 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/06/">June (10)</a></li>
1224
1225 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/07/">July (7)</a></li>
1226
1227 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/08/">August (3)</a></li>
1228
1229 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/09/">September (5)</a></li>
1230
1231 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/10/">October (7)</a></li>
1232
1233 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/11/">November (9)</a></li>
1234
1235 <li><a href="http://www.hungry.com/~pere/blog/archive/2013/12/">December (3)</a></li>
1236
1237 </ul></li>
1238
1239 <li>2012
1240 <ul>
1241
1242 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/01/">January (7)</a></li>
1243
1244 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/02/">February (10)</a></li>
1245
1246 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/03/">March (17)</a></li>
1247
1248 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/04/">April (12)</a></li>
1249
1250 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/05/">May (12)</a></li>
1251
1252 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/06/">June (20)</a></li>
1253
1254 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/07/">July (17)</a></li>
1255
1256 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/08/">August (6)</a></li>
1257
1258 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/09/">September (9)</a></li>
1259
1260 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/10/">October (17)</a></li>
1261
1262 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/11/">November (10)</a></li>
1263
1264 <li><a href="http://www.hungry.com/~pere/blog/archive/2012/12/">December (7)</a></li>
1265
1266 </ul></li>
1267
1268 <li>2011
1269 <ul>
1270
1271 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/01/">January (16)</a></li>
1272
1273 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/02/">February (6)</a></li>
1274
1275 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/03/">March (6)</a></li>
1276
1277 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/04/">April (7)</a></li>
1278
1279 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/05/">May (3)</a></li>
1280
1281 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/06/">June (2)</a></li>
1282
1283 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/07/">July (7)</a></li>
1284
1285 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/08/">August (6)</a></li>
1286
1287 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/09/">September (4)</a></li>
1288
1289 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/10/">October (2)</a></li>
1290
1291 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/11/">November (3)</a></li>
1292
1293 <li><a href="http://www.hungry.com/~pere/blog/archive/2011/12/">December (1)</a></li>
1294
1295 </ul></li>
1296
1297 <li>2010
1298 <ul>
1299
1300 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/01/">January (2)</a></li>
1301
1302 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/02/">February (1)</a></li>
1303
1304 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/03/">March (3)</a></li>
1305
1306 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/04/">April (3)</a></li>
1307
1308 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/05/">May (9)</a></li>
1309
1310 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/06/">June (14)</a></li>
1311
1312 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/07/">July (12)</a></li>
1313
1314 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/08/">August (13)</a></li>
1315
1316 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/09/">September (7)</a></li>
1317
1318 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/10/">October (9)</a></li>
1319
1320 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/11/">November (13)</a></li>
1321
1322 <li><a href="http://www.hungry.com/~pere/blog/archive/2010/12/">December (12)</a></li>
1323
1324 </ul></li>
1325
1326 <li>2009
1327 <ul>
1328
1329 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/01/">January (8)</a></li>
1330
1331 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/02/">February (8)</a></li>
1332
1333 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/03/">March (12)</a></li>
1334
1335 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/04/">April (10)</a></li>
1336
1337 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/05/">May (9)</a></li>
1338
1339 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/06/">June (3)</a></li>
1340
1341 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/07/">July (4)</a></li>
1342
1343 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/08/">August (3)</a></li>
1344
1345 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/09/">September (1)</a></li>
1346
1347 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/10/">October (2)</a></li>
1348
1349 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/11/">November (3)</a></li>
1350
1351 <li><a href="http://www.hungry.com/~pere/blog/archive/2009/12/">December (3)</a></li>
1352
1353 </ul></li>
1354
1355 <li>2008
1356 <ul>
1357
1358 <li><a href="http://www.hungry.com/~pere/blog/archive/2008/11/">November (5)</a></li>
1359
1360 <li><a href="http://www.hungry.com/~pere/blog/archive/2008/12/">December (7)</a></li>
1361
1362 </ul></li>
1363
1364 </ul>
1365
1366
1367
1368 <h2>Tags</h2>
1369 <ul>
1370
1371 <li><a href="http://www.hungry.com/~pere/blog/tags/3d-printer">3d-printer (19)</a></li>
1372
1373 <li><a href="http://www.hungry.com/~pere/blog/tags/amiga">amiga (1)</a></li>
1374
1375 <li><a href="http://www.hungry.com/~pere/blog/tags/aros">aros (1)</a></li>
1376
1377 <li><a href="http://www.hungry.com/~pere/blog/tags/bankid">bankid (4)</a></li>
1378
1379 <li><a href="http://www.hungry.com/~pere/blog/tags/betalkontant">betalkontant (9)</a></li>
1380
1381 <li><a href="http://www.hungry.com/~pere/blog/tags/bitcoin">bitcoin (13)</a></li>
1382
1383 <li><a href="http://www.hungry.com/~pere/blog/tags/bootsystem">bootsystem (17)</a></li>
1384
1385 <li><a href="http://www.hungry.com/~pere/blog/tags/bsa">bsa (2)</a></li>
1386
1387 <li><a href="http://www.hungry.com/~pere/blog/tags/chrpath">chrpath (3)</a></li>
1388
1389 <li><a href="http://www.hungry.com/~pere/blog/tags/debian">debian (209)</a></li>
1390
1391 <li><a href="http://www.hungry.com/~pere/blog/tags/debian edu">debian edu (159)</a></li>
1392
1393 <li><a href="http://www.hungry.com/~pere/blog/tags/debian-handbook">debian-handbook (9)</a></li>
1394
1395 <li><a href="http://www.hungry.com/~pere/blog/tags/digistan">digistan (11)</a></li>
1396
1397 <li><a href="http://www.hungry.com/~pere/blog/tags/dld">dld (18)</a></li>
1398
1399 <li><a href="http://www.hungry.com/~pere/blog/tags/docbook">docbook (33)</a></li>
1400
1401 <li><a href="http://www.hungry.com/~pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
1402
1403 <li><a href="http://www.hungry.com/~pere/blog/tags/english">english (471)</a></li>
1404
1405 <li><a href="http://www.hungry.com/~pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
1406
1407 <li><a href="http://www.hungry.com/~pere/blog/tags/fildeling">fildeling (14)</a></li>
1408
1409 <li><a href="http://www.hungry.com/~pere/blog/tags/freeculture">freeculture (34)</a></li>
1410
1411 <li><a href="http://www.hungry.com/~pere/blog/tags/freedombox">freedombox (9)</a></li>
1412
1413 <li><a href="http://www.hungry.com/~pere/blog/tags/frikanalen">frikanalen (20)</a></li>
1414
1415 <li><a href="http://www.hungry.com/~pere/blog/tags/h264">h264 (20)</a></li>
1416
1417 <li><a href="http://www.hungry.com/~pere/blog/tags/intervju">intervju (43)</a></li>
1418
1419 <li><a href="http://www.hungry.com/~pere/blog/tags/isenkram">isenkram (21)</a></li>
1420
1421 <li><a href="http://www.hungry.com/~pere/blog/tags/kart">kart (23)</a></li>
1422
1423 <li><a href="http://www.hungry.com/~pere/blog/tags/kodi">kodi (6)</a></li>
1424
1425 <li><a href="http://www.hungry.com/~pere/blog/tags/ldap">ldap (9)</a></li>
1426
1427 <li><a href="http://www.hungry.com/~pere/blog/tags/lego">lego (5)</a></li>
1428
1429 <li><a href="http://www.hungry.com/~pere/blog/tags/lenker">lenker (8)</a></li>
1430
1431 <li><a href="http://www.hungry.com/~pere/blog/tags/linuxcnc">linuxcnc (8)</a></li>
1432
1433 <li><a href="http://www.hungry.com/~pere/blog/tags/lsdvd">lsdvd (3)</a></li>
1434
1435 <li><a href="http://www.hungry.com/~pere/blog/tags/ltsp">ltsp (1)</a></li>
1436
1437 <li><a href="http://www.hungry.com/~pere/blog/tags/madewithcc">madewithcc (3)</a></li>
1438
1439 <li><a href="http://www.hungry.com/~pere/blog/tags/mesh network">mesh network (8)</a></li>
1440
1441 <li><a href="http://www.hungry.com/~pere/blog/tags/multimedia">multimedia (48)</a></li>
1442
1443 <li><a href="http://www.hungry.com/~pere/blog/tags/nice free software">nice free software (15)</a></li>
1444
1445 <li><a href="http://www.hungry.com/~pere/blog/tags/noark5">noark5 (27)</a></li>
1446
1447 <li><a href="http://www.hungry.com/~pere/blog/tags/norsk">norsk (326)</a></li>
1448
1449 <li><a href="http://www.hungry.com/~pere/blog/tags/nuug">nuug (200)</a></li>
1450
1451 <li><a href="http://www.hungry.com/~pere/blog/tags/offentlig innsyn">offentlig innsyn (42)</a></li>
1452
1453 <li><a href="http://www.hungry.com/~pere/blog/tags/open311">open311 (2)</a></li>
1454
1455 <li><a href="http://www.hungry.com/~pere/blog/tags/opensnitch">opensnitch (4)</a></li>
1456
1457 <li><a href="http://www.hungry.com/~pere/blog/tags/opphavsrett">opphavsrett (76)</a></li>
1458
1459 <li><a href="http://www.hungry.com/~pere/blog/tags/personvern">personvern (114)</a></li>
1460
1461 <li><a href="http://www.hungry.com/~pere/blog/tags/raid">raid (4)</a></li>
1462
1463 <li><a href="http://www.hungry.com/~pere/blog/tags/reactos">reactos (1)</a></li>
1464
1465 <li><a href="http://www.hungry.com/~pere/blog/tags/reprap">reprap (11)</a></li>
1466
1467 <li><a href="http://www.hungry.com/~pere/blog/tags/rfid">rfid (3)</a></li>
1468
1469 <li><a href="http://www.hungry.com/~pere/blog/tags/robot">robot (17)</a></li>
1470
1471 <li><a href="http://www.hungry.com/~pere/blog/tags/rss">rss (1)</a></li>
1472
1473 <li><a href="http://www.hungry.com/~pere/blog/tags/ruter">ruter (7)</a></li>
1474
1475 <li><a href="http://www.hungry.com/~pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
1476
1477 <li><a href="http://www.hungry.com/~pere/blog/tags/sikkerhet">sikkerhet (60)</a></li>
1478
1479 <li><a href="http://www.hungry.com/~pere/blog/tags/sitesummary">sitesummary (4)</a></li>
1480
1481 <li><a href="http://www.hungry.com/~pere/blog/tags/skepsis">skepsis (5)</a></li>
1482
1483 <li><a href="http://www.hungry.com/~pere/blog/tags/standard">standard (80)</a></li>
1484
1485 <li><a href="http://www.hungry.com/~pere/blog/tags/stavekontroll">stavekontroll (7)</a></li>
1486
1487 <li><a href="http://www.hungry.com/~pere/blog/tags/stortinget">stortinget (14)</a></li>
1488
1489 <li><a href="http://www.hungry.com/~pere/blog/tags/surveillance">surveillance (65)</a></li>
1490
1491 <li><a href="http://www.hungry.com/~pere/blog/tags/sysadmin">sysadmin (6)</a></li>
1492
1493 <li><a href="http://www.hungry.com/~pere/blog/tags/usenix">usenix (2)</a></li>
1494
1495 <li><a href="http://www.hungry.com/~pere/blog/tags/valg">valg (9)</a></li>
1496
1497 <li><a href="http://www.hungry.com/~pere/blog/tags/verkidetfri">verkidetfri (23)</a></li>
1498
1499 <li><a href="http://www.hungry.com/~pere/blog/tags/video">video (82)</a></li>
1500
1501 <li><a href="http://www.hungry.com/~pere/blog/tags/vitenskap">vitenskap (4)</a></li>
1502
1503 <li><a href="http://www.hungry.com/~pere/blog/tags/web">web (42)</a></li>
1504
1505 </ul>
1506
1507
1508 </div>
1509 <p style="text-align: right">
1510 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
1511 </p>
1512
1513 </body>
1514 </html>