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