]> pere.pagekite.me Git - homepage.git/blob - blog/index.rss
More cleanup.
[homepage.git] / blog / index.rss
1 <?xml version="1.0" encoding="utf-8"?>
2 <rss version='2.0' xmlns:lj='http://www.livejournal.org/rss/lj/1.0/' xmlns:atom="http://www.w3.org/2005/Atom">
3 <channel>
4 <title>Petter Reinholdtsen</title>
5 <description></description>
6 <link>http://people.skolelinux.org/pere/blog/</link>
7 <atom:link href="http://people.skolelinux.org/pere/blog/index.rss" rel="self" type="application/rss+xml" />
8
9 <item>
10 <title>Lenny-&gt;Squeeze upgrades, apt vs aptitude with the Gnome desktop</title>
11 <link>http://people.skolelinux.org/pere/blog/Lenny__Squeeze_upgrades__apt_vs_aptitude_with_the_Gnome_desktop.html</link>
12 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Lenny__Squeeze_upgrades__apt_vs_aptitude_with_the_Gnome_desktop.html</guid>
13 <pubDate>Sat, 3 Jul 2010 23:55:00 +0200</pubDate>
14 <description>
15 &lt;p&gt;Here is a short update on my &lt;a
16 href=&quot;http://people.skolelinux.org/~pere/debian-upgrade-testing/&quot;&gt;my
17 Debian Lenny-&gt;Squeeze upgrade testing&lt;/a&gt;. Here is a summary of the
18 difference for Gnome when it is upgraded by apt-get and aptitude. I&#39;m
19 not reporting the status for KDE, because the upgrade crashes when
20 aptitude try because of missing conflicts
21 (&lt;a href=&quot;http://bugs.debian.org/584861&quot;&gt;#584861&lt;/a&gt; and
22 &lt;a href=&quot;http://bugs.debian.org/585716&quot;&gt;#585716&lt;/a&gt;).&lt;/p&gt;
23
24 &lt;p&gt;At the end of the upgrade test script, dpkg -l is executed to get a
25 complete list of the installed packages. Based on this I see these
26 differences when I did a test run today. As usual, I do not really
27 know what the correct set of packages would be, but thought it best to
28 publish the difference.&lt;/p&gt;
29
30 &lt;p&gt;Installed using apt-get, missing with aptitude&lt;/p&gt;
31
32 &lt;blockquote&gt;&lt;p&gt;
33 at-spi cpp-4.3 finger gnome-spell gstreamer0.10-gnomevfs
34 libatspi1.0-0 libcupsys2 libeel2-data libgail-common libgdl-1-common
35 libgnomeprint2.2-data libgnomeprintui2.2-common libgnomevfs2-bin
36 libgtksourceview-common libpt-1.10.10-plugins-alsa
37 libpt-1.10.10-plugins-v4l libservlet2.4-java libxalan2-java
38 libxerces2-java openoffice.org-writer2latex openssl-blacklist p7zip
39 python-4suite-xml python-eggtrayicon python-gtkhtml2
40 python-gtkmozembed svgalibg1 xserver-xephyr zip
41 &lt;/p&gt;&lt;/blockquote&gt;
42
43 &lt;p&gt;Installed using apt-get, removed with aptitude&lt;/p&gt;
44
45 &lt;blockquote&gt;&lt;p&gt;
46 bluez-utils dhcdbd djvulibre-desktop epiphany-gecko
47 gnome-app-install gnome-mount gnome-vfs-obexftp gnome-volume-manager
48 libao2 libavahi-compat-libdnssd1 libavahi-core5 libbind9-50
49 libbluetooth2 libcamel1.2-11 libcdio7 libcucul0 libcurl3
50 libdirectfb-1.0-0 libdvdread3 libedata-cal1.2-6 libedataserver1.2-9
51 libeel2-2.20 libepc-1.0-1 libepc-ui-1.0-1 libexchange-storage1.2-3
52 libfaad0 libgd2-noxpm libgda3-3 libgda3-common libggz2 libggzcore9
53 libggzmod4 libgksu1.2-0 libgksuui1.0-1 libgmyth0 libgnome-desktop-2
54 libgnome-pilot2 libgnomecups1.0-1 libgnomeprint2.2-0
55 libgnomeprintui2.2-0 libgpod3 libgraphviz4 libgtkhtml2-0
56 libgtksourceview1.0-0 libgucharmap6 libhesiod0 libicu38 libisccc50
57 libisccfg50 libiw29 libkpathsea4 libltdl3 liblwres50 libmagick++10
58 libmagick10 libmalaga7 libmtp7 libmysqlclient15off libnautilus-burn4
59 libneon27 libnm-glib0 libnm-util0 libopal-2.2 libosp5
60 libparted1.8-10 libpisock9 libpisync1 libpoppler-glib3 libpoppler3
61 libpt-1.10.10 libraw1394-8 libsensors3 libsmbios2 libsoup2.2-8
62 libssh2-1 libsuitesparse-3.1.0 libswfdec-0.6-90 libtalloc1
63 libtotem-plparser10 libtrackerclient0 libvoikko1 libxalan2-java-gcj
64 libxerces2-java-gcj libxklavier12 libxtrap6 libxxf86misc1 libzephyr3
65 mysql-common swfdec-gnome totem-gstreamer wodim
66 &lt;/p&gt;&lt;/blockquote&gt;
67
68 &lt;p&gt;Installed using aptitude, missing with apt-get&lt;/p&gt;
69
70 &lt;blockquote&gt;&lt;p&gt;
71 gnome gnome-desktop-environment hamster-applet python-gnomeapplet
72 python-gnomekeyring python-wnck rhythmbox-plugins xorg
73 xserver-xorg-input-all xserver-xorg-input-evdev
74 xserver-xorg-input-kbd xserver-xorg-input-mouse
75 xserver-xorg-input-synaptics xserver-xorg-video-all
76 xserver-xorg-video-apm xserver-xorg-video-ark xserver-xorg-video-ati
77 xserver-xorg-video-chips xserver-xorg-video-cirrus
78 xserver-xorg-video-dummy xserver-xorg-video-fbdev
79 xserver-xorg-video-glint xserver-xorg-video-i128
80 xserver-xorg-video-i740 xserver-xorg-video-mach64
81 xserver-xorg-video-mga xserver-xorg-video-neomagic
82 xserver-xorg-video-nouveau xserver-xorg-video-nv
83 xserver-xorg-video-r128 xserver-xorg-video-radeon
84 xserver-xorg-video-radeonhd xserver-xorg-video-rendition
85 xserver-xorg-video-s3 xserver-xorg-video-s3virge
86 xserver-xorg-video-savage xserver-xorg-video-siliconmotion
87 xserver-xorg-video-sis xserver-xorg-video-sisusb
88 xserver-xorg-video-tdfx xserver-xorg-video-tga
89 xserver-xorg-video-trident xserver-xorg-video-tseng
90 xserver-xorg-video-vesa xserver-xorg-video-vmware
91 xserver-xorg-video-voodoo
92 &lt;/p&gt;&lt;/blockquote&gt;
93
94 &lt;p&gt;Installed using aptitude, removed with apt-get&lt;/p&gt;
95
96 &lt;blockquote&gt;&lt;p&gt;
97 deskbar-applet xserver-xorg xserver-xorg-core
98 xserver-xorg-input-wacom xserver-xorg-video-intel
99 xserver-xorg-video-openchrome
100 &lt;/p&gt;&lt;/blockquote&gt;
101
102 &lt;p&gt;I was told on IRC that the xorg-xserver package was
103 &lt;a href=&quot;http://git.debian.org/?p=pkg-xorg/xserver/xorg-server.git;a=commit;h=9c8080d06c457932d3bfec021c69ac000aa60120&quot;&gt;changed
104 in git&lt;/a&gt; today to try to get apt-get to not remove xorg completely.
105 No idea when it hits Squeeze, but when it does I hope it will reduce
106 the difference somewhat.
107 </description>
108 </item>
109
110 <item>
111 <title>Caching password, user and group on a roaming Debian laptop</title>
112 <link>http://people.skolelinux.org/pere/blog/Caching_password__user_and_group_on_a_roaming_Debian_laptop.html</link>
113 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Caching_password__user_and_group_on_a_roaming_Debian_laptop.html</guid>
114 <pubDate>Thu, 1 Jul 2010 11:40:00 +0200</pubDate>
115 <description>
116 &lt;p&gt;For a laptop, centralized user directories and password checking is
117 a bit troubling. Laptops are typically used also when not connected
118 to the network, and it is vital for a user to be able to log in or
119 unlock the screen saver also when a central server is unavailable.
120 This is possible by caching passwords and directory information (user
121 and group attributes) locally, and the packages to do so are available
122 in Debian. Here follow two recipes to set this up in Debian/Squeeze.
123 It is also possible to set up in Debian/Lenny, but require more manual
124 setup there because pam-auth-update is missing in Lenny.&lt;/p&gt;
125
126 &lt;h2&gt;LDAP/Kerberos + nscd + libpam-ccreds + libpam-mklocaluser/pam_mkhomedir&lt;/h2&gt;
127
128 This is the traditional method with a twist. The password caching is
129 provided by libpam-ccreds (version 10-4 or later is needed on
130 Squeeze), and the directory caching is done by nscd. The directory
131 lookup and password checking is done using LDAP. If one want to use
132 Kerberos for password checking the libpam-ldapd package can be
133 replaced with libpam-krb5 or libpam-heimdal. If one is happy having a
134 local home directory with the path listed in LDAP, one can use the
135 pam_mkhomedir module from pam-modules to make this happen instead of
136 using libpam-mklocaluser. A setup for pam-auth-update to enable
137 pam_mkhomedir will have to be written until a fix for
138 &lt;a href=&quot;http://bugs.debian.org/568577&quot;&gt;bug #568577&lt;/a&gt; is in the
139 archive. Because I believe it is a bad idea to have local home
140 directories using misleading paths like /site/server/partition/, I
141 prefer to create a local user with the home directory in /home/. This
142 is done using the libpam-mklocaluser package.&lt;/p&gt;
143
144 &lt;p&gt;These packages need to be installed and configured&lt;/p&gt;
145
146 &lt;blockquote&gt;&lt;pre&gt;
147 libnss-ldapd libpam-ldapd nscd libpam-ccreds libpam-mklocaluser
148 &lt;/pre&gt;&lt;/blockquote&gt;
149
150 &lt;p&gt;The ldapd packages will ask for LDAP connection information, and
151 one have to fill in the values that fits ones own site. Make sure the
152 PAM part uses encrypted connections, to make sure the password is not
153 sent in clear text to the LDAP server. I&#39;ve been unable to get TLS
154 certificate checking for a self signed certificate working, which make
155 LDAP authentication unsafe for Debian Edu (nslcd is not checking if it
156 is talking to the correct LDAP server), and very much welcome feedback
157 on how to get this working.&lt;/p&gt;
158
159 &lt;p&gt;Because nscd do not have a default configuration fit for offline
160 caching until &lt;a href=&quot;http://bugs.debian.org/485282&quot;&gt;bug #485282&lt;/a&gt;
161 is fixed, this configuration should be used instead of the one
162 currently in /etc/nscd.conf. The changes are in the fields
163 reload-count and positive-time-to-live, and is based on the
164 instructions I found in the
165 &lt;a href=&quot;http://www.flyn.org/laptopldap/&quot;&gt;LDAP for Mobile Laptops&lt;/a&gt;
166 instructions by Flyn Computing.&lt;/p&gt;
167
168 &lt;blockquote&gt;&lt;pre&gt;
169 debug-level 0
170 reload-count unlimited
171 paranoia no
172
173 enable-cache passwd yes
174 positive-time-to-live passwd 2592000
175 negative-time-to-live passwd 20
176 suggested-size passwd 211
177 check-files passwd yes
178 persistent passwd yes
179 shared passwd yes
180 max-db-size passwd 33554432
181 auto-propagate passwd yes
182
183 enable-cache group yes
184 positive-time-to-live group 2592000
185 negative-time-to-live group 20
186 suggested-size group 211
187 check-files group yes
188 persistent group yes
189 shared group yes
190 max-db-size group 33554432
191 auto-propagate group yes
192
193 enable-cache hosts no
194 positive-time-to-live hosts 2592000
195 negative-time-to-live hosts 20
196 suggested-size hosts 211
197 check-files hosts yes
198 persistent hosts yes
199 shared hosts yes
200 max-db-size hosts 33554432
201
202 enable-cache services yes
203 positive-time-to-live services 2592000
204 negative-time-to-live services 20
205 suggested-size services 211
206 check-files services yes
207 persistent services yes
208 shared services yes
209 max-db-size services 33554432
210 &lt;/pre&gt;&lt;/blockquote&gt;
211
212 &lt;p&gt;While we wait for a mechanism to update /etc/nsswitch.conf
213 automatically like the one provided in
214 &lt;a href=&quot;http://bugs.debian.org/496915&quot;&gt;bug #496915&lt;/a&gt;, the file
215 content need to be manually replaced to ensure LDAP is used as the
216 directory service on the machine. /etc/nsswitch.conf should normally
217 look like this:&lt;/p&gt;
218
219 &lt;blockquote&gt;&lt;pre&gt;
220 passwd: files ldap
221 group: files ldap
222 shadow: files ldap
223 hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
224 networks: files
225 protocols: files
226 services: files
227 ethers: files
228 rpc: files
229 netgroup: files ldap
230 &lt;/pre&gt;&lt;/blockquote&gt;
231
232 &lt;p&gt;The important parts are that ldap is listed last for passwd, group,
233 shadow and netgroup.&lt;/p&gt;
234
235 &lt;p&gt;With these changes in place, any user in LDAP will be able to log
236 in locally on the machine using for example kdm, get a local home
237 directory created and have the password as well as user and group
238 attributes cached.
239
240 &lt;h2&gt;LDAP/Kerberos + nss-updatedb + libpam-ccreds +
241 libpam-mklocaluser/pam_mkhomedir&lt;/h2&gt;
242
243 &lt;p&gt;Because nscd have had its share of problems, and seem to have
244 problems doing proper caching, I&#39;ve seen suggestions and recipes to
245 use nss-updatedb to copy parts of the LDAP database locally when the
246 LDAP database is available. I have not tested such setup, because I
247 discovered sssd.&lt;/p&gt;
248
249 &lt;h2&gt;LDAP/Kerberos + sssd + libpam-mklocaluser&lt;/h2&gt;
250
251 &lt;p&gt;A more flexible and robust setup than the nscd combination
252 mentioned earlier that has shown up recently, is the
253 &lt;a href=&quot;https://fedorahosted.org/sssd/&quot;&gt;sssd&lt;/a&gt; package from Redhat.
254 It is part of the &lt;a href=&quot;http://www.freeipa.org/&quot;&gt;FreeIPA&lt;/A&gt; project
255 to provide a Active Directory like directory service for Linux
256 machines. The sssd system combines the caching of passwords and user
257 information into one package, and remove the need for nscd and
258 libpam-ccreds. It support LDAP and Kerberos, but not NIS. Version
259 1.2 do not support netgroups, but it is said that it will support this
260 in version 1.5 expected to show up later in 2010. Because the
261 &lt;a href=&quot;http://packages.qa.debian.org/s/sssd.html&quot;&gt;sssd package&lt;/a&gt;
262 was missing in Debian, I ended up co-maintaining it with Werner, and
263 version 1.2 is now in testing.
264
265 &lt;p&gt;These packages need to be installed and configured to get the
266 roaming setup I want&lt;/p&gt;
267
268 &lt;blockquote&gt;&lt;pre&gt;
269 libpam-sss libnss-sss libpam-mklocaluser
270 &lt;/pre&gt;&lt;/blockquote&gt;
271
272 The complete setup of sssd is done by editing/creating
273 &lt;tt&gt;/etc/sssd/sssd.conf&lt;/tt&gt;.
274
275 &lt;blockquote&gt;&lt;pre&gt;
276 [sssd]
277 config_file_version = 2
278 reconnection_retries = 3
279 sbus_timeout = 30
280 services = nss, pam
281 domains = INTERN
282
283 [nss]
284 filter_groups = root
285 filter_users = root
286 reconnection_retries = 3
287
288 [pam]
289 reconnection_retries = 3
290
291 [domain/INTERN]
292 enumerate = false
293 cache_credentials = true
294
295 id_provider = ldap
296 auth_provider = ldap
297 chpass_provider = ldap
298
299 ldap_uri = ldap://ldap
300 ldap_search_base = dc=skole,dc=skolelinux,dc=no
301 ldap_tls_reqcert = never
302 ldap_tls_cacert = /etc/ssl/certs/ca-certificates.crt
303 &lt;/pre&gt;&lt;/blockquote&gt;
304
305 &lt;p&gt;I got the same problem here with certificate checking. Had to set
306 &quot;ldap_tls_reqcert = never&quot; to get it working.&lt;/p&gt;
307
308 &lt;p&gt;With the libnss-sss package in testing at the moment, the
309 nsswitch.conf file is update automatically, so there is no need to
310 modify it manually.&lt;/p&gt;
311
312 &lt;p&gt;If you want to help out with implementing this for Debian Edu,
313 please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
314 </description>
315 </item>
316
317 <item>
318 <title>LUMA, a very nice LDAP GUI</title>
319 <link>http://people.skolelinux.org/pere/blog/LUMA__a_very_nice_LDAP_GUI.html</link>
320 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/LUMA__a_very_nice_LDAP_GUI.html</guid>
321 <pubDate>Mon, 28 Jun 2010 00:30:00 +0200</pubDate>
322 <description>
323 &lt;p&gt;The last few days I have been looking into the status of the LDAP
324 directory in Debian Edu, and in the process I started to miss a GUI
325 tool to browse the LDAP tree. The only one I was able to find in
326 Debian/Squeeze and Lenny is
327 &lt;a href=&quot;http://luma.sourceforge.net/&quot;&gt;LUMA&lt;/a&gt;, which has proved to
328 be a great tool to get a overview of the current LDAP directory
329 populated by default in Skolelinux. Thanks to it, I have been able to
330 find empty and obsolete subtrees, misplaced objects and duplicate
331 objects. It will be installed by default in Debian/Squeeze. If you
332 are working with LDAP, give it a go. :)&lt;/p&gt;
333
334 &lt;p&gt;I did notice one problem with it I have not had time to report to
335 the BTS yet. There is no .desktop file in the package, so the tool do
336 not show up in the Gnome and KDE menus, but only deep down in in the
337 Debian submenu in KDE. I hope that can be fixed before Squeeze is
338 released.&lt;/p&gt;
339
340 &lt;p&gt;I have not yet been able to get it to modify the tree yet. I would
341 like to move objects and remove subtrees directly in the GUI, but have
342 not found a way to do that with LUMA yet. So in the mean time, I use
343 &lt;a href=&quot;http://www.lichteblau.com/ldapvi/&quot;&gt;ldapvi&lt;/a&gt; for that.&lt;/p&gt;
344
345 &lt;p&gt;If you have tips on other GUI tools for LDAP that might be useful
346 in Debian Edu, please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
347
348 &lt;p&gt;Update 2010-06-29: Ross Reedstrom tipped us about the
349 &lt;a href=&quot;http://packages.qa.debian.org/g/gq.html&quot;&gt;gq&lt;/a&gt; package as a
350 useful GUI alternative. It seem like a good tool, but is unmaintained
351 in Debian and got a RC bug keeping it out of Squeeze. Unless that
352 changes, it will not be an option for Debian Edu based on Squeeze.&lt;/p&gt;
353 </description>
354 </item>
355
356 <item>
357 <title>Idea for a change to LDAP schemas allowing DNS and DHCP info to be combined into one object</title>
358 <link>http://people.skolelinux.org/pere/blog/Idea_for_a_change_to_LDAP_schemas_allowing_DNS_and_DHCP_info_to_be_combined_into_one_object.html</link>
359 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Idea_for_a_change_to_LDAP_schemas_allowing_DNS_and_DHCP_info_to_be_combined_into_one_object.html</guid>
360 <pubDate>Thu, 24 Jun 2010 00:35:00 +0200</pubDate>
361 <description>
362 &lt;p&gt;A while back, I
363 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Time_for_new__LDAP_schemas_replacing_RFC_2307_.html&quot;&gt;complained
364 about the fact&lt;/a&gt; that it is not possible with the provided schemas
365 for storing DNS and DHCP information in LDAP to combine the two sets
366 of information into one LDAP object representing a computer.&lt;/p&gt;
367
368 &lt;p&gt;In the mean time, I discovered that a simple fix would be to make
369 the dhcpHost object class auxiliary, to allow it to be combined with
370 the dNSDomain object class, and thus forming one object for one
371 computer when storing both DHCP and DNS information in LDAP.&lt;/p&gt;
372
373 &lt;p&gt;If I understand this correctly, it is not safe to do this change
374 without also changing the assigned number for the object class, and I
375 do not know enough about LDAP schema design to do that properly for
376 Debian Edu.&lt;/p&gt;
377
378 &lt;p&gt;Anyway, for future reference, this is how I believe we could change
379 the
380 &lt;a href=&quot;http://tools.ietf.org/html/draft-ietf-dhc-ldap-schema-00&quot;&gt;DHCP
381 schema&lt;/a&gt; to solve at least part of the problem with the LDAP schemas
382 available today from IETF.&lt;/p&gt;
383
384 &lt;pre&gt;
385 --- dhcp.schema (revision 65192)
386 +++ dhcp.schema (working copy)
387 @@ -376,7 +376,7 @@
388 objectclass ( 2.16.840.1.113719.1.203.6.6
389 NAME &#39;dhcpHost&#39;
390 DESC &#39;This represents information about a particular client&#39;
391 - SUP top
392 + SUP top AUXILIARY
393 MUST cn
394 MAY (dhcpLeaseDN $ dhcpHWAddress $ dhcpOptionsDN $ dhcpStatements $ dhcpComments $ dhcpOption)
395 X-NDS_CONTAINMENT (&#39;dhcpService&#39; &#39;dhcpSubnet&#39; &#39;dhcpGroup&#39;) )
396 &lt;/pre&gt;
397
398 &lt;p&gt;I very much welcome clues on how to do this properly for Debian
399 Edu/Squeeze. We provide the DHCP schema in our debian-edu-config
400 package, and should thus be free to rewrite it as we see fit.&lt;/p&gt;
401
402 &lt;p&gt;If you want to help out with implementing this for Debian Edu,
403 please contact us on debian-edu@lists.debian.org.&lt;/p&gt;
404 </description>
405 </item>
406
407 <item>
408 <title>Calling tasksel like the installer, while still getting useful output</title>
409 <link>http://people.skolelinux.org/pere/blog/Calling_tasksel_like_the_installer__while_still_getting_useful_output.html</link>
410 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Calling_tasksel_like_the_installer__while_still_getting_useful_output.html</guid>
411 <pubDate>Wed, 16 Jun 2010 14:55:00 +0200</pubDate>
412 <description>
413 &lt;p&gt;A few times I have had the need to simulate the way tasksel
414 installs packages during the normal debian-installer run. Until now,
415 I have ended up letting tasksel do the work, with the annoying problem
416 of not getting any feedback at all when something fails (like a
417 conffile question from dpkg or a download that fails), using code like
418 this:
419
420 &lt;blockquote&gt;&lt;pre&gt;
421 export DEBIAN_FRONTEND=noninteractive
422 tasksel --new-install
423 &lt;/pre&gt;&lt;/blockquote&gt;
424
425 This would invoke tasksel, let its automatic task selection pick the
426 tasks to install, and continue to install the requested tasks without
427 any output what so ever.
428
429 Recently I revisited this problem while working on the automatic
430 package upgrade testing, because tasksel would some times hang without
431 any useful feedback, and I want to see what is going on when it
432 happen. Then it occured to me, I can parse the output from tasksel
433 when asked to run in test mode, and use that aptitude command line
434 printed by tasksel then to simulate the tasksel run. I ended up using
435 code like this:
436
437 &lt;blockquote&gt;&lt;pre&gt;
438 export DEBIAN_FRONTEND=noninteractive
439 cmd=&quot;$(in_target tasksel -t --new-install | sed &#39;s/debconf-apt-progress -- //&#39;)&quot;
440 $cmd
441 &lt;/pre&gt;&lt;/blockquote&gt;
442
443 &lt;p&gt;The content of $cmd is typically something like &quot;&lt;tt&gt;aptitude -q
444 --without-recommends -o APT::Install-Recommends=no -y install
445 ~t^desktop$ ~t^gnome-desktop$ ~t^laptop$ ~pstandard ~prequired
446 ~pimportant&lt;/tt&gt;&quot;, which will install the gnome desktop task, the
447 laptop task and all packages with priority standard , required and
448 important, just like tasksel would have done it during
449 installation.&lt;/p&gt;
450
451 &lt;p&gt;A better approach is probably to extend tasksel to be able to
452 install packages without using debconf-apt-progress, for use cases
453 like this.&lt;/p&gt;
454 </description>
455 </item>
456
457 <item>
458 <title>Vinmonopolet bryter loven åpenlyst - og flere planlegger å gjøre det samme</title>
459 <link>http://people.skolelinux.org/pere/blog/Vinmonopolet_bryter_loven___penlyst___og_flere_planlegger____gj__re_det_samme.html</link>
460 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Vinmonopolet_bryter_loven___penlyst___og_flere_planlegger____gj__re_det_samme.html</guid>
461 <pubDate>Wed, 16 Jun 2010 11:00:00 +0200</pubDate>
462 <description>
463 &lt;p&gt;&lt;a href=&quot;http://www.dagbladet.no/2010/06/16/nyheter/innenriks/streik/arbeidsliv/12157858/&quot;&gt;Dagbladet
464 melder&lt;/a&gt; at Vinmonopolet med bakgrunn i vekterstreiken som pågår i
465 Norge for tiden, har bestemt seg for med vitende og vilje å bryte
466 sentralbanklovens paragraf 14 ved å nekte folk å betale med
467 kontanter, og at flere butikker planlegger å følge deres eksempel.
468 Jeg synes det er hårreisende hvis de slipper unna med et slikt
469 soleklart lovbrudd, og lurer på hva slags muligheter jeg vil ha hvis
470 jeg blir nektet å handle med kontanter. Jeg handler i hovedsak med
471 kontanter selv, da jeg anser det som en borgerrett å kunne handle
472 anonymt uten at det blir registrert. For meg er det et angrep på mitt
473 personvern å nekte å ta imot kontant betaling.&lt;/p&gt;
474
475 &lt;p&gt;&lt;a href=&quot;http://www.lovdata.no/all/tl-19850524-028-003.html#14&quot;&gt;Paragrafen
476 i sentralbankloven&lt;/a&gt; lyder:&lt;/p&gt;
477
478 &lt;blockquote&gt;
479 &lt;p&gt;§ 14. Tvungent betalingsmiddel&lt;/p&gt;
480
481 &lt;p&gt;Bankens sedler og mynter er tvungent betalingsmiddel i Norge. Ingen
482 er pliktig til i én betaling å ta imot mer enn femogtyve mynter av
483 hver enhet.&lt;/p&gt;
484
485 &lt;p&gt;Sterkt skadde sedler og mynter er ikke tvungent
486 betalingsmiddel. Banken gir nærmere forskrifter om erstatning for
487 bortkomne, brente eller skadde sedler og mynter.&lt;/p&gt;
488
489 &lt;p&gt;Selv om en avtale inneholder klausul om betaling av en
490 pengeforpliktelse i gullverdi, kan skyldneren frigjøre seg med tvungne
491 betalingsmidler uten hensyn til denne klausul.&lt;/p&gt;
492 &lt;/blockquote&gt;
493
494 &lt;p&gt;Det er med bakgrunn i denne lovet ikke tillatt å nekte å ta imot
495 kontakt betaling. Det er en lov jeg har sans for, og som jeg mener må
496 håndheves strengt.&lt;/p&gt;
497 </description>
498 </item>
499
500 <item>
501 <title>Officeshots taking shape</title>
502 <link>http://people.skolelinux.org/pere/blog/Officeshots_taking_shape.html</link>
503 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Officeshots_taking_shape.html</guid>
504 <pubDate>Sun, 13 Jun 2010 11:40:00 +0200</pubDate>
505 <description>
506 &lt;p&gt;For those of us caring about document exchange and
507 interoperability, &lt;a href=&quot;http://www.officeshots.org/&quot;&gt;OfficeShots&lt;/a&gt;
508 is a great service. It is to ODF documents what
509 &lt;a href=&quot;http://browsershots.org/&quot;&gt;BrowserShots&lt;/a&gt; is for web
510 pages.&lt;/p&gt;
511
512 &lt;p&gt;A while back, I was contacted by Knut Yrvin at the part of Nokia
513 that used to be Trolltech, who wanted to help the OfficeShots project
514 and wondered if the University of Oslo where I work would be
515 interested in supporting the project. I helped him to navigate his
516 request to the right people at work, and his request was answered with
517 a spot in the machine room with power and network connected, and Knut
518 arranged funding for a machine to fill the spot. The machine is
519 administrated by the OfficeShots people, so I do not have daily
520 contact with its progress, and thus from time to time check back to
521 see how the project is doing.&lt;/p&gt;
522
523 &lt;p&gt;Today I had a look, and was happy to see that the Dell box in our
524 machine room now is the host for several virtual machines running as
525 OfficeShots factories, and the project is able to render ODF documents
526 in 17 different document processing implementation on Linux and
527 Windows. This is great.&lt;/p&gt;
528 </description>
529 </item>
530
531 <item>
532 <title>Lenny-&gt;Squeeze upgrades, removals by apt and aptitude</title>
533 <link>http://people.skolelinux.org/pere/blog/Lenny__Squeeze_upgrades__removals_by_apt_and_aptitude.html</link>
534 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Lenny__Squeeze_upgrades__removals_by_apt_and_aptitude.html</guid>
535 <pubDate>Sun, 13 Jun 2010 09:05:00 +0200</pubDate>
536 <description>
537 &lt;p&gt;My
538 &lt;a href=&quot;http://people.skolelinux.org/pere/blog/Automatic_upgrade_testing_from_Lenny_to_Squeeze.html&quot;&gt;testing
539 of Debian upgrades&lt;/a&gt; from Lenny to Squeeze continues, and I&#39;ve
540 finally made the upgrade logs available from
541 &lt;a href=&quot;http://people.skolelinux.org/pere/debian-upgrade-testing/&quot;&gt;http://people.skolelinux.org/pere/debian-upgrade-testing/&lt;/a&gt;.
542 I am now testing dist-upgrade of Gnome and KDE in a chroot using both
543 apt and aptitude, and found their differences interesting. This time
544 I will only focus on their removal plans.&lt;/p&gt;
545
546 &lt;p&gt;After installing a Gnome desktop and the laptop task, apt-get wants
547 to remove 72 packages when dist-upgrading from Lenny to Squeeze. The
548 surprising part is that it want to remove xorg and all
549 xserver-xorg-video* drivers. Clearly not a good choice, but I am not
550 sure why. When asking aptitude to do the same, it want to remove 129
551 packages, but most of them are library packages I suspect are no
552 longer needed. Both of them want to remove bluetooth packages, which
553 I do not know. Perhaps these bluetooth packages are obsolete?&lt;/p&gt;
554
555 &lt;p&gt;For KDE, apt-get want to remove 82 packages, among them kdebase
556 which seem like a bad idea and xorg the same way as with Gnome. Asking
557 aptitude for the same, it wants to remove 192 packages, none which are
558 too surprising.&lt;/p&gt;
559
560 &lt;p&gt;I guess the removal of xorg during upgrades should be investigated
561 and avoided, and perhaps others as well. Here are the complete list
562 of planned removals. The complete logs is available from the URL
563 above. Note if you want to repeat these tests, that the upgrade test
564 for kde+apt-get hung in the tasksel setup because of dpkg asking
565 conffile questions. No idea why. I worked around it by using
566 &#39;&lt;tt&gt;echo &gt;&gt; /proc/&lt;em&gt;pidofdpkg&lt;/em&gt;/fd/0&lt;/tt&gt;&#39; to tell dpkg to
567 continue.&lt;/p&gt;
568
569 &lt;p&gt;&lt;b&gt;apt-get gnome 72&lt;/b&gt;
570 &lt;br&gt;bluez-gnome cupsddk-drivers deskbar-applet gnome
571 gnome-desktop-environment gnome-network-admin gtkhtml3.14
572 iceweasel-gnome-support libavcodec51 libdatrie0 libgdl-1-0
573 libgnomekbd2 libgnomekbdui2 libmetacity0 libslab0 libxcb-xlib0
574 nautilus-cd-burner python-gnome2-desktop python-gnome2-extras
575 serpentine swfdec-mozilla update-manager xorg xserver-xorg
576 xserver-xorg-core xserver-xorg-input-all xserver-xorg-input-evdev
577 xserver-xorg-input-kbd xserver-xorg-input-mouse
578 xserver-xorg-input-synaptics xserver-xorg-input-wacom
579 xserver-xorg-video-all xserver-xorg-video-apm xserver-xorg-video-ark
580 xserver-xorg-video-ati xserver-xorg-video-chips
581 xserver-xorg-video-cirrus xserver-xorg-video-cyrix
582 xserver-xorg-video-dummy xserver-xorg-video-fbdev
583 xserver-xorg-video-glint xserver-xorg-video-i128
584 xserver-xorg-video-i740 xserver-xorg-video-imstt
585 xserver-xorg-video-intel xserver-xorg-video-mach64
586 xserver-xorg-video-mga xserver-xorg-video-neomagic
587 xserver-xorg-video-nsc xserver-xorg-video-nv
588 xserver-xorg-video-openchrome xserver-xorg-video-r128
589 xserver-xorg-video-radeon xserver-xorg-video-radeonhd
590 xserver-xorg-video-rendition xserver-xorg-video-s3
591 xserver-xorg-video-s3virge xserver-xorg-video-savage
592 xserver-xorg-video-siliconmotion xserver-xorg-video-sis
593 xserver-xorg-video-sisusb xserver-xorg-video-tdfx
594 xserver-xorg-video-tga xserver-xorg-video-trident
595 xserver-xorg-video-tseng xserver-xorg-video-v4l
596 xserver-xorg-video-vesa xserver-xorg-video-vga
597 xserver-xorg-video-vmware xserver-xorg-video-voodoo xulrunner-1.9
598 xulrunner-1.9-gnome-support&lt;/p&gt;
599
600 &lt;p&gt;&lt;b&gt;aptitude gnome 129&lt;/b&gt;
601
602 &lt;br&gt;bluez-gnome bluez-utils cpp-4.3 cupsddk-drivers dhcdbd
603 djvulibre-desktop finger gnome-app-install gnome-mount
604 gnome-network-admin gnome-spell gnome-vfs-obexftp
605 gnome-volume-manager gstreamer0.10-gnomevfs gtkhtml3.14 libao2
606 libavahi-compat-libdnssd1 libavahi-core5 libavcodec51 libbluetooth2
607 libcamel1.2-11 libcdio7 libcucul0 libcupsys2 libcurl3 libdatrie0
608 libdirectfb-1.0-0 libdvdread3 libedataserver1.2-9 libeel2-2.20
609 libeel2-data libepc-1.0-1 libepc-ui-1.0-1 libfaad0 libgail-common
610 libgd2-noxpm libgda3-3 libgda3-common libgdl-1-0 libgdl-1-common
611 libggz2 libggzcore9 libggzmod4 libgksu1.2-0 libgksuui1.0-1 libgmyth0
612 libgnomecups1.0-1 libgnomekbd2 libgnomekbdui2 libgnomeprint2.2-0
613 libgnomeprint2.2-data libgnomeprintui2.2-0 libgnomeprintui2.2-common
614 libgnomevfs2-bin libgpod3 libgraphviz4 libgtkhtml2-0
615 libgtksourceview-common libgtksourceview1.0-0 libgucharmap6
616 libhesiod0 libicu38 libiw29 libkpathsea4 libltdl3 libmagick++10
617 libmagick10 libmalaga7 libmetacity0 libmtp7 libmysqlclient15off
618 libnautilus-burn4 libneon27 libnm-glib0 libnm-util0 libopal-2.2
619 libosp5 libparted1.8-10 libpoppler-glib3 libpoppler3 libpt-1.10.10
620 libpt-1.10.10-plugins-alsa libpt-1.10.10-plugins-v4l libraw1394-8
621 libsensors3 libslab0 libsmbios2 libsoup2.2-8 libssh2-1
622 libsuitesparse-3.1.0 libswfdec-0.6-90 libtalloc1 libtotem-plparser10
623 libtrackerclient0 libxalan2-java libxalan2-java-gcj libxcb-xlib0
624 libxerces2-java libxerces2-java-gcj libxklavier12 libxtrap6
625 libxxf86misc1 libzephyr3 mysql-common nautilus-cd-burner
626 openoffice.org-writer2latex openssl-blacklist p7zip
627 python-4suite-xml python-eggtrayicon python-gnome2-desktop
628 python-gnome2-extras python-gtkhtml2 python-gtkmozembed
629 python-numeric python-sexy serpentine svgalibg1 swfdec-gnome
630 swfdec-mozilla totem-gstreamer update-manager wodim
631 xserver-xorg-video-cyrix xserver-xorg-video-imstt
632 xserver-xorg-video-nsc xserver-xorg-video-v4l xserver-xorg-video-vga
633 zip&lt;/p&gt;
634
635 &lt;p&gt;&lt;b&gt;apt-get kde 82&lt;/b&gt;
636
637 &lt;br&gt;cupsddk-drivers karm kaudiocreator kcoloredit kcontrol kde kde-core
638 kdeaddons kdeartwork kdebase kdebase-bin kdebase-bin-kde3
639 kdebase-kio-plugins kdesktop kdeutils khelpcenter kicker
640 kicker-applets knewsticker kolourpaint konq-plugins konqueror korn
641 kpersonalizer kscreensaver ksplash libavcodec51 libdatrie0 libkiten1
642 libxcb-xlib0 quanta superkaramba texlive-base-bin xorg xserver-xorg
643 xserver-xorg-core xserver-xorg-input-all xserver-xorg-input-evdev
644 xserver-xorg-input-kbd xserver-xorg-input-mouse
645 xserver-xorg-input-synaptics xserver-xorg-input-wacom
646 xserver-xorg-video-all xserver-xorg-video-apm xserver-xorg-video-ark
647 xserver-xorg-video-ati xserver-xorg-video-chips
648 xserver-xorg-video-cirrus xserver-xorg-video-cyrix
649 xserver-xorg-video-dummy xserver-xorg-video-fbdev
650 xserver-xorg-video-glint xserver-xorg-video-i128
651 xserver-xorg-video-i740 xserver-xorg-video-imstt
652 xserver-xorg-video-intel xserver-xorg-video-mach64
653 xserver-xorg-video-mga xserver-xorg-video-neomagic
654 xserver-xorg-video-nsc xserver-xorg-video-nv
655 xserver-xorg-video-openchrome xserver-xorg-video-r128
656 xserver-xorg-video-radeon xserver-xorg-video-radeonhd
657 xserver-xorg-video-rendition xserver-xorg-video-s3
658 xserver-xorg-video-s3virge xserver-xorg-video-savage
659 xserver-xorg-video-siliconmotion xserver-xorg-video-sis
660 xserver-xorg-video-sisusb xserver-xorg-video-tdfx
661 xserver-xorg-video-tga xserver-xorg-video-trident
662 xserver-xorg-video-tseng xserver-xorg-video-v4l
663 xserver-xorg-video-vesa xserver-xorg-video-vga
664 xserver-xorg-video-vmware xserver-xorg-video-voodoo xulrunner-1.9&lt;/p&gt;
665
666 &lt;p&gt;&lt;b&gt;aptitude kde 192&lt;/b&gt;
667 &lt;br&gt;bluez-utils cpp-4.3 cupsddk-drivers cvs dcoprss dhcdbd
668 djvulibre-desktop dosfstools eyesapplet fifteenapplet finger gettext
669 ghostscript-x imlib-base imlib11 indi kandy karm kasteroids
670 kaudiocreator kbackgammon kbstate kcoloredit kcontrol kcron kdat
671 kdeadmin-kfile-plugins kdeartwork-misc kdeartwork-theme-window
672 kdebase-bin-kde3 kdebase-kio-plugins kdeedu-data
673 kdegraphics-kfile-plugins kdelirc kdemultimedia-kappfinder-data
674 kdemultimedia-kfile-plugins kdenetwork-kfile-plugins
675 kdepim-kfile-plugins kdepim-kio-plugins kdeprint kdesktop kdessh
676 kdict kdnssd kdvi kedit keduca kenolaba kfax kfaxview kfouleggs
677 kghostview khelpcenter khexedit kiconedit kitchensync klatin
678 klickety kmailcvt kmenuedit kmid kmilo kmoon kmrml kodo kolourpaint
679 kooka korn kpager kpdf kpercentage kpf kpilot kpoker kpovmodeler
680 krec kregexpeditor ksayit ksim ksirc ksirtet ksmiletris ksmserver
681 ksnake ksokoban ksplash ksvg ksysv ktip ktnef kuickshow kverbos
682 kview kviewshell kvoctrain kwifimanager kwin kwin4 kworldclock
683 kxsldbg libakode2 libao2 libarts1-akode libarts1-audiofile
684 libarts1-mpeglib libarts1-xine libavahi-compat-libdnssd1
685 libavahi-core5 libavc1394-0 libavcodec51 libbluetooth2
686 libboost-python1.34.1 libcucul0 libcurl3 libcvsservice0 libdatrie0
687 libdirectfb-1.0-0 libdjvulibre21 libdvdread3 libfaad0 libfreebob0
688 libgail-common libgd2-noxpm libgraphviz4 libgsmme1c2a libgtkhtml2-0
689 libicu38 libiec61883-0 libindex0 libiw29 libk3b3 libkcal2b libkcddb1
690 libkdeedu3 libkdepim1a libkgantt0 libkiten1 libkleopatra1 libkmime2
691 libkpathsea4 libkpimexchange1 libkpimidentities1 libkscan1
692 libksieve0 libktnef1 liblockdev1 libltdl3 libmagick10 libmimelib1c2a
693 libmozjs1d libmpcdec3 libneon27 libnm-util0 libopensync0 libpisock9
694 libpoppler-glib3 libpoppler-qt2 libpoppler3 libraw1394-8 libsmbios2
695 libssh2-1 libsuitesparse-3.1.0 libtalloc1 libtiff-tools
696 libxalan2-java libxalan2-java-gcj libxcb-xlib0 libxerces2-java
697 libxerces2-java-gcj libxtrap6 mpeglib networkstatus
698 openoffice.org-writer2latex pmount poster psutils quanta quanta-data
699 superkaramba svgalibg1 tex-common texlive-base texlive-base-bin
700 texlive-common texlive-doc-base texlive-fonts-recommended
701 xserver-xorg-video-cyrix xserver-xorg-video-imstt
702 xserver-xorg-video-nsc xserver-xorg-video-v4l xserver-xorg-video-vga
703 xulrunner-1.9&lt;/p&gt;
704
705 </description>
706 </item>
707
708 <item>
709 <title>Åpne trådløsnett er et samfunnsgode</title>
710 <link>http://people.skolelinux.org/pere/blog/__pne_tr__dl__snett_er_et_samfunnsgode.html</link>
711 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/__pne_tr__dl__snett_er_et_samfunnsgode.html</guid>
712 <pubDate>Sat, 12 Jun 2010 12:45:00 +0200</pubDate>
713 <description>
714 &lt;p&gt;Veldig glad for å oppdage via
715 &lt;a href=&quot;http://yro.slashdot.org/story/10/06/11/1841256/Finland-To-Legalize-Use-of-Unsecured-Wi-Fi&quot;&gt;Slashdot&lt;/a&gt;
716 at folk i Finland har forstått at åpne trådløsnett er et samfunnsgode.
717 Jeg ser på åpne trådløsnett som et fellesgode på linje med retten til
718 ferdsel i utmark og retten til å bevege seg i strandsonen. Jeg har
719 glede av åpne trådløsnett når jeg finner dem, og deler gladelig nett
720 med andre så lenge de ikke forstyrrer min bruk av eget nett.
721 Nettkapasiteten er sjelden en begrensning ved normal browsing og enkel
722 SSH-innlogging (som er min vanligste nettbruk), og nett kan brukes til
723 så mye positivt og nyttig (som nyhetslesing, sjekke været, kontakte
724 slekt og venner, holde seg oppdatert om politiske saker, kontakte
725 organisasjoner og politikere, etc), at det for meg er helt urimelig å
726 blokkere dette for alle som ikke gjør en flue fortred. De som mener
727 at potensialet for misbruk er grunn nok til å hindre all den positive
728 og lovlydige bruken av et åpent trådløsnett har jeg dermed ingen
729 forståelse for. En kan ikke eksistensen av forbrytere styre hvordan
730 samfunnet skal organiseres. Da får en et kontrollsamfunn de færreste
731 ønsker å leve i, og det at vi har et samfunn i Norge der tilliten til
732 hverandre er høy gjør at samfunnet fungerer ganske godt. Det bør vi
733 anstrenge oss for å beholde.&lt;/p&gt;
734 </description>
735 </item>
736
737 <item>
738 <title>Automatic upgrade testing from Lenny to Squeeze</title>
739 <link>http://people.skolelinux.org/pere/blog/Automatic_upgrade_testing_from_Lenny_to_Squeeze.html</link>
740 <guid isPermaLink="true">http://people.skolelinux.org/pere/blog/Automatic_upgrade_testing_from_Lenny_to_Squeeze.html</guid>
741 <pubDate>Fri, 11 Jun 2010 22:50:00 +0200</pubDate>
742 <description>
743 &lt;p&gt;The last few days I have done some upgrade testing in Debian, to
744 see if the upgrade from Lenny to Squeeze will go smoothly. A few bugs
745 have been discovered and reported in the process
746 (&lt;a href=&quot;http://bugs.debian.org/585410&quot;&gt;#585410&lt;/a&gt; in nagios3-cgi,
747 &lt;a href=&quot;http://bugs.debian.org/584879&quot;&gt;#584879&lt;/a&gt; already fixed in
748 enscript and &lt;a href=&quot;http://bugs.debian.org/584861&quot;&gt;#584861&lt;/a&gt; in
749 kdebase-workspace-data), and to get a more regular testing going on, I
750 am working on a script to automate the test.&lt;/p&gt;
751
752 &lt;p&gt;The idea is to create a Lenny chroot and use tasksel to install a
753 Gnome or KDE desktop installation inside the chroot before upgrading
754 it. To ensure no services are started in the chroot, a policy-rc.d
755 script is inserted. To make sure tasksel believe it is to install a
756 desktop on a laptop, the tasksel tests are replaced in the chroot
757 (only acceptable because this is a throw-away chroot).&lt;/p&gt;
758
759 &lt;p&gt;A naive upgrade from Lenny to Squeeze using aptitude dist-upgrade
760 currently always fail because udev refuses to upgrade with the kernel
761 in Lenny, so to avoid that problem the file /etc/udev/kernel-upgrade
762 is created. The bug report
763 &lt;a href=&quot;http://bugs.debian.org/566000&quot;&gt;#566000&lt;/a&gt; make me suspect
764 this problem do not trigger in a chroot, but I touch the file anyway
765 to make sure the upgrade go well. Testing on virtual and real
766 hardware have failed me because of udev so far, and creating this file
767 do the trick in such settings anyway. This is a
768 &lt;a href=&quot;http://www.linuxquestions.org/questions/debian-26/failed-dist-upgrade-due-to-udev-config_sysfs_deprecated-nonsense-804130/&quot;&gt;known
769 issue&lt;/a&gt; and the current udev behaviour is intended by the udev
770 maintainer because he lack the resources to rewrite udev to keep
771 working with old kernels or something like that. I really wish the
772 udev upstream would keep udev backwards compatible, to avoid such
773 upgrade problem, but given that they fail to do so, I guess
774 documenting the way out of this mess is the best option we got for
775 Debian Squeeze.&lt;/p&gt;
776
777 &lt;p&gt;Anyway, back to the task at hand, testing upgrades. This test
778 script, which I call &lt;tt&gt;upgrade-test&lt;/tt&gt; for now, is doing the
779 trick:&lt;/p&gt;
780
781 &lt;blockquote&gt;&lt;pre&gt;
782 #!/bin/sh
783 set -ex
784
785 if [ &quot;$1&quot; ] ; then
786 desktop=$1
787 else
788 desktop=gnome
789 fi
790
791 from=lenny
792 to=squeeze
793
794 exec &amp;lt; /dev/null
795 unset LANG
796 mirror=http://ftp.skolelinux.org/debian
797 tmpdir=chroot-$from-upgrade-$to-$desktop
798 fuser -mv .
799 debootstrap $from $tmpdir $mirror
800 chroot $tmpdir aptitude update
801 cat &gt; $tmpdir/usr/sbin/policy-rc.d &amp;lt;&amp;lt;EOF
802 #!/bin/sh
803 exit 101
804 EOF
805 chmod a+rx $tmpdir/usr/sbin/policy-rc.d
806 exit_cleanup() {
807 umount $tmpdir/proc
808 }
809 mount -t proc proc $tmpdir/proc
810 # Make sure proc is unmounted also on failure
811 trap exit_cleanup EXIT INT
812
813 chroot $tmpdir aptitude -y install debconf-utils
814
815 # Make sure tasksel autoselection trigger. It need the test scripts
816 # to return the correct answers.
817 echo tasksel tasksel/desktop multiselect $desktop | \
818 chroot $tmpdir debconf-set-selections
819
820 # Include the desktop and laptop task
821 for test in desktop laptop ; do
822 echo &gt; $tmpdir/usr/lib/tasksel/tests/$test &amp;lt;&amp;lt;EOF
823 #!/bin/sh
824 exit 2
825 EOF
826 chmod a+rx $tmpdir/usr/lib/tasksel/tests/$test
827 done
828
829 DEBIAN_FRONTEND=noninteractive
830 DEBIAN_PRIORITY=critical
831 export DEBIAN_FRONTEND DEBIAN_PRIORITY
832 chroot $tmpdir tasksel --new-install
833
834 echo deb $mirror $to main &gt; $tmpdir/etc/apt/sources.list
835 chroot $tmpdir aptitude update
836 touch $tmpdir/etc/udev/kernel-upgrade
837 chroot $tmpdir aptitude -y dist-upgrade
838 fuser -mv
839 &lt;/pre&gt;&lt;/blockquote&gt;
840
841 &lt;p&gt;I suspect it would be useful to test upgrades with both apt-get and
842 with aptitude, but I have not had time to look at how they behave
843 differently so far. I hope to get a cron job running to do the test
844 regularly and post the result on the web. The Gnome upgrade currently
845 work, while the KDE upgrade fail because of the bug in
846 kdebase-workspace-data&lt;/p&gt;
847
848 &lt;p&gt;I am not quite sure what kind of extract from the huge upgrade logs
849 (KDE 167 KiB, Gnome 516 KiB) it make sense to include in this blog
850 post, so I will refrain from trying. I can report that for Gnome,
851 aptitude report 760 packages upgraded, 448 newly installed, 129 to
852 remove and 1 not upgraded and 1024MB need to be downloaded while for
853 KDE the same numbers are 702 packages upgraded, 507 newly installed,
854 193 to remove and 0 not upgraded and 1117MB need to be downloaded&lt;/p&gt;
855
856 &lt;p&gt;I am very happy to notice that the Gnome desktop + laptop upgrade
857 is able to migrate to dependency based boot sequencing and parallel
858 booting without a hitch. Was unsure if there were still bugs with
859 packages failing to clean up their obsolete init.d script during
860 upgrades, and no such problem seem to affect the Gnome desktop+laptop
861 packages.&lt;/p&gt;
862 </description>
863 </item>
864
865 </channel>
866 </rss>