]> pere.pagekite.me Git - homepage.git/blob - blog/archive/2014/10/10.rss
Generated.
[homepage.git] / blog / archive / 2014 / 10 / 10.rss
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <rss version='2.0' xmlns:lj='http://www.livejournal.org/rss/lj/1.0/'>
3 <channel>
4 <title>Petter Reinholdtsen - Entries from October 2014</title>
5 <description>Entries from October 2014</description>
6 <link>http://people.skolelinux.org/pere/blog/</link>
7
8
9 <item>
10 <title>I spent last weekend recording MakerCon Nordic</title>
11 <link>http://people.skolelinux.org/pere/blog/I_spent_last_weekend_recording_MakerCon_Nordic.html</link>
12 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/I_spent_last_weekend_recording_MakerCon_Nordic.html</guid>
13 <pubDate>Thu, 23 Oct 2014 23:00:00 +0200</pubDate>
14 <description>&lt;p&gt;I spent last weekend at &lt;a href=&quot;http://www.makercon.no/&quot;&gt;Makercon
15 Nordic&lt;/a&gt;, a great conference and workshop for makers in Norway and
16 the surrounding countries. I had volunteered on behalf of the
17 Norwegian Unix Users Group (NUUG) to video record the talks, and we
18 had a great and exhausting time recording the entire day, two days in
19 a row. There were only two of us, Hans-Petter and me, and we used the
20 regular video equipment for NUUG, with a
21 &lt;a href=&quot;http://dvswitch.alioth.debian.org/wiki/&quot;&gt;dvswitch&lt;/a&gt;, a
22 camera and a VGA to DV convert box, and mixed video and slides
23 live.&lt;/p&gt;
24
25 &lt;p&gt;Hans-Petter did the post-processing, consisting of uploading the
26 around 180 GiB of raw video to Youtube, and the result is
27 &lt;a href=&quot;https://www.youtube.com/user/MakerConNordic/&quot;&gt;now becoming
28 public&lt;/a&gt; on the MakerConNordic account. The videos have the license
29 NUUG always use on our recordings, which is
30 &lt;a href=&quot;http://creativecommons.org/licenses/by-sa/3.0/no/&quot;&gt;Creative
31 Commons Navngivelse-Del på samme vilkår 3.0 Norge&lt;/a&gt;. Many great
32 talks available. Check it out! :)&lt;/p&gt;
33 </description>
34 </item>
35
36 <item>
37 <title>listadmin, the quick way to moderate mailman lists - nice free software</title>
38 <link>http://people.skolelinux.org/pere/blog/listadmin__the_quick_way_to_moderate_mailman_lists___nice_free_software.html</link>
39 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/listadmin__the_quick_way_to_moderate_mailman_lists___nice_free_software.html</guid>
40 <pubDate>Wed, 22 Oct 2014 20:00:00 +0200</pubDate>
41 <description>&lt;p&gt;If you ever had to moderate a mailman list, like the ones on
42 alioth.debian.org, you know the web interface is fairly slow to
43 operate. First you visit one web page, enter the moderation password
44 and get a new page shown with a list of all the messages to moderate
45 and various options for each email address. This take a while for
46 every list you moderate, and you need to do it regularly to do a good
47 job as a list moderator. But there is a quick alternative,
48 &lt;a href=&quot;http://heim.ifi.uio.no/kjetilho/hacks/#listadmin&quot;&gt;the
49 listadmin program&lt;/a&gt;. It allow you to check lists for new messages
50 to moderate in a fraction of a second. Here is a test run on two
51 lists I recently took over:&lt;/p&gt;
52
53 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
54 % time listadmin xiph
55 fetching data for pkg-xiph-commits@lists.alioth.debian.org ... nothing in queue
56 fetching data for pkg-xiph-maint@lists.alioth.debian.org ... nothing in queue
57
58 real 0m1.709s
59 user 0m0.232s
60 sys 0m0.012s
61 %
62 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
63
64 &lt;p&gt;In 1.7 seconds I had checked two mailing lists and confirmed that
65 there are no message in the moderation queue. Every morning I
66 currently moderate 68 mailman lists, and it normally take around two
67 minutes. When I took over the two pkg-xiph lists above a few days
68 ago, there were 400 emails waiting in the moderator queue. It took me
69 less than 15 minutes to process them all using the listadmin
70 program.&lt;/p&gt;
71
72 &lt;p&gt;If you install
73 &lt;a href=&quot;https://tracker.debian.org/pkg/listadmin&quot;&gt;the listadmin
74 package&lt;/a&gt; from Debian and create a file &lt;tt&gt;~/.listadmin.ini&lt;/tt&gt;
75 with content like this, the moderation task is a breeze:&lt;/p&gt;
76
77 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
78 username@example.org
79 spamlevel 23
80 default discard
81 discard_if_reason &quot;Posting restricted to members only. Remove us from your mail list.&quot;
82
83 password secret
84 adminurl https://{domain}/mailman/admindb/{list}
85 mailman-list@lists.example.com
86
87 password hidden
88 other-list@otherserver.example.org
89 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
90
91 &lt;p&gt;There are other options to set as well. Check the manual page to
92 learn the details.&lt;/p&gt;
93
94 &lt;p&gt;If you are forced to moderate lists on a mailman installation where
95 the SSL certificate is self signed or not properly signed by a
96 generally accepted signing authority, you can set a environment
97 variable when calling listadmin to disable SSL verification:&lt;/p&gt;
98
99 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
100 PERL_LWP_SSL_VERIFY_HOSTNAME=0 listadmin
101 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
102
103 &lt;p&gt;If you want to moderate a subset of the lists you take care of, you
104 can provide an argument to the listadmin script like I do in the
105 initial screen dump (the xiph argument). Using an argument, only
106 lists matching the argument string will be processed. This make it
107 quick to accept messages if you notice the moderation request in your
108 email.&lt;/p&gt;
109
110 &lt;p&gt;Without the listadmin program, I would never be the moderator of 68
111 mailing lists, as I simply do not have time to spend on that if the
112 process was any slower. The listadmin program have saved me hours of
113 time I could spend elsewhere over the years. It truly is nice free
114 software.&lt;/p&gt;
115
116 &lt;p&gt;As usual, if you use Bitcoin and want to show your support of my
117 activities, please send Bitcoin donations to my address
118 &lt;b&gt;&lt;a href=&quot;bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&amp;label=PetterReinholdtsenBlog&quot;&gt;15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&lt;/a&gt;&lt;/b&gt;.&lt;/p&gt;
119 </description>
120 </item>
121
122 <item>
123 <title>Debian Jessie, PXE and automatic firmware installation</title>
124 <link>http://people.skolelinux.org/pere/blog/Debian_Jessie__PXE_and_automatic_firmware_installation.html</link>
125 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Debian_Jessie__PXE_and_automatic_firmware_installation.html</guid>
126 <pubDate>Fri, 17 Oct 2014 14:10:00 +0200</pubDate>
127 <description>&lt;p&gt;When PXE installing laptops with Debian, I often run into the
128 problem that the WiFi card require some firmware to work properly.
129 And it has been a pain to fix this using preseeding in Debian.
130 Normally something more is needed. But thanks to
131 &lt;a href=&quot;https://packages.qa.debian.org/i/isenkram.html&quot;&gt;my isenkram
132 package&lt;/a&gt; and its recent tasksel extension, it has now become easy
133 to do this using simple preseeding.&lt;/p&gt;
134
135 &lt;p&gt;The isenkram-cli package provide tasksel tasks which will install
136 firmware for the hardware found in the machine (actually, requested by
137 the kernel modules for the hardware). (It can also install user space
138 programs supporting the hardware detected, but that is not the focus
139 of this story.)&lt;/p&gt;
140
141 &lt;p&gt;To get this working in the default installation, two preeseding
142 values are needed. First, the isenkram-cli package must be installed
143 into the target chroot (aka the hard drive) before tasksel is executed
144 in the pkgsel step of the debian-installer system. This is done by
145 preseeding the base-installer/includes debconf value to include the
146 isenkram-cli package. The package name is next passed to debootstrap
147 for installation. With the isenkram-cli package in place, tasksel
148 will automatically use the isenkram tasks to detect hardware specific
149 packages for the machine being installed and install them, because
150 isenkram-cli contain tasksel tasks.&lt;/p&gt;
151
152 &lt;p&gt;Second, one need to enable the non-free APT repository, because
153 most firmware unfortunately is non-free. This is done by preseeding
154 the apt-mirror-setup step. This is unfortunate, but for a lot of
155 hardware it is the only option in Debian.&lt;/p&gt;
156
157 &lt;p&gt;The end result is two lines needed in your preseeding file to get
158 firmware installed automatically by the installer:&lt;/p&gt;
159
160 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
161 base-installer base-installer/includes string isenkram-cli
162 apt-mirror-setup apt-setup/non-free boolean true
163 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
164
165 &lt;p&gt;The current version of isenkram-cli in testing/jessie will install
166 both firmware and user space packages when using this method. It also
167 do not work well, so use version 0.15 or later. Installing both
168 firmware and user space packages might give you a bit more than you
169 want, so I decided to split the tasksel task in two, one for firmware
170 and one for user space programs. The firmware task is enabled by
171 default, while the one for user space programs is not. This split is
172 implemented in the package currently in unstable.&lt;/p&gt;
173
174 &lt;p&gt;If you decide to give this a go, please let me know (via email) how
175 this recipe work for you. :)&lt;/p&gt;
176
177 &lt;p&gt;So, I bet you are wondering, how can this work. First and
178 foremost, it work because tasksel is modular, and driven by whatever
179 files it find in /usr/lib/tasksel/ and /usr/share/tasksel/. So the
180 isenkram-cli package place two files for tasksel to find. First there
181 is the task description file (/usr/share/tasksel/descs/isenkram.desc):&lt;/p&gt;
182
183 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
184 Task: isenkram-packages
185 Section: hardware
186 Description: Hardware specific packages (autodetected by isenkram)
187 Based on the detected hardware various hardware specific packages are
188 proposed.
189 Test-new-install: show show
190 Relevance: 8
191 Packages: for-current-hardware
192
193 Task: isenkram-firmware
194 Section: hardware
195 Description: Hardware specific firmware packages (autodetected by isenkram)
196 Based on the detected hardware various hardware specific firmware
197 packages are proposed.
198 Test-new-install: mark show
199 Relevance: 8
200 Packages: for-current-hardware-firmware
201 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
202
203 &lt;p&gt;The key parts are Test-new-install which indicate how the task
204 should be handled and the Packages line referencing to a script in
205 /usr/lib/tasksel/packages/. The scripts use other scripts to get a
206 list of packages to install. The for-current-hardware-firmware script
207 look like this to list relevant firmware for the machine:
208
209 &lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
210 #!/bin/sh
211 #
212 PATH=/usr/sbin:$PATH
213 export PATH
214 isenkram-autoinstall-firmware -l
215 &lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
216
217 &lt;p&gt;With those two pieces in place, the firmware is installed by
218 tasksel during the normal d-i run. :)&lt;/p&gt;
219
220 &lt;p&gt;If you want to test what tasksel will install when isenkram-cli is
221 installed, run &lt;tt&gt;DEBIAN_PRIORITY=critical tasksel --test
222 --new-install&lt;/tt&gt; to get the list of packages that tasksel would
223 install.&lt;/p&gt;
224
225 &lt;p&gt;&lt;a href=&quot;https://wiki.debian.org/DebianEdu/&quot;&gt;Debian Edu&lt;/a&gt; will be
226 pilots in testing this feature, as isenkram is used there now to
227 install firmware, replacing the earlier scripts.&lt;/p&gt;
228 </description>
229 </item>
230
231 <item>
232 <title>Ubuntu used to show the bread prizes at ICA Storo</title>
233 <link>http://people.skolelinux.org/pere/blog/Ubuntu_used_to_show_the_bread_prizes_at_ICA_Storo.html</link>
234 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Ubuntu_used_to_show_the_bread_prizes_at_ICA_Storo.html</guid>
235 <pubDate>Sat, 4 Oct 2014 15:20:00 +0200</pubDate>
236 <description>&lt;p&gt;Today I came across an unexpected Ubuntu boot screen. Above the
237 bread shelf on the ICA shop at Storo in Oslo, the grub menu of Ubuntu
238 with Linux kernel 3.2.0-23 (ie probably version 12.04 LTS) was stuck
239 on a screen normally showing the bread types and prizes:&lt;/p&gt;
240
241 &lt;p align=&quot;center&quot;&gt;&lt;img width=&quot;70%&quot; src=&quot;http://people.skolelinux.org/pere/blog/images/2014-10-04-ubuntu-ica-storo-crop.jpeg&quot;&gt;&lt;/p&gt;
242
243 &lt;p&gt;If it had booted as it was supposed to, I would never had known
244 about this hidden Linux installation. It is interesting what
245 &lt;a href=&quot;http://revealingerrors.com/&quot;&gt;errors can reveal&lt;/a&gt;.&lt;/p&gt;
246 </description>
247 </item>
248
249 <item>
250 <title>New lsdvd release version 0.17 is ready</title>
251 <link>http://people.skolelinux.org/pere/blog/New_lsdvd_release_version_0_17_is_ready.html</link>
252 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/New_lsdvd_release_version_0_17_is_ready.html</guid>
253 <pubDate>Sat, 4 Oct 2014 08:40:00 +0200</pubDate>
254 <description>&lt;p&gt;The &lt;a href=&quot;https://sourceforge.net/p/lsdvd/&quot;&gt;lsdvd project&lt;/a&gt;
255 got a new set of developers a few weeks ago, after the original
256 developer decided to step down and pass the project to fresh blood.
257 This project is now maintained by Petter Reinholdtsen and Steve
258 Dibb.&lt;/p&gt;
259
260 &lt;p&gt;I just wrapped up
261 &lt;a href=&quot;https://sourceforge.net/p/lsdvd/mailman/message/32896061/&quot;&gt;a
262 new lsdvd release&lt;/a&gt;, available in git or from
263 &lt;a href=&quot;https://sourceforge.net/projects/lsdvd/files/lsdvd/&quot;&gt;the
264 download page&lt;/a&gt;. This is the changelog dated 2014-10-03 for version
265 0.17.&lt;/p&gt;
266
267 &lt;ul&gt;
268
269 &lt;li&gt;Ignore &#39;phantom&#39; audio, subtitle tracks&lt;/li&gt;
270 &lt;li&gt;Check for garbage in the program chains, which indicate that a track is
271 non-existant, to work around additional copy protection&lt;/li&gt;
272 &lt;li&gt;Fix displaying content type for audio tracks, subtitles&lt;/li&gt;
273 &lt;li&gt;Fix pallete display of first entry&lt;/li&gt;
274 &lt;li&gt;Fix include orders&lt;/li&gt;
275 &lt;li&gt;Ignore read errors in titles that would not be displayed anyway&lt;/li&gt;
276 &lt;li&gt;Fix the chapter count&lt;/li&gt;
277 &lt;li&gt;Make sure the array size and the array limit used when initialising
278 the palette size is the same.&lt;/li&gt;
279 &lt;li&gt;Fix array printing.&lt;/li&gt;
280 &lt;li&gt;Correct subsecond calculations.&lt;/li&gt;
281 &lt;li&gt;Add sector information to the output format.&lt;/li&gt;
282 &lt;li&gt;Clean up code to be closer to ANSI C and compile without warnings
283 with more GCC compiler warnings.&lt;/li&gt;
284
285 &lt;/ul&gt;
286
287 &lt;p&gt;This change bring together patches for lsdvd in use in various
288 Linux and Unix distributions, as well as patches submitted to the
289 project the last nine years. Please check it out. :)&lt;/p&gt;
290 </description>
291 </item>
292
293 </channel>
294 </rss>