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