]> pere.pagekite.me Git - homepage.git/blob - blog/Calling_tasksel_like_the_installer__while_still_getting_useful_output.html
Generated.
[homepage.git] / blog / Calling_tasksel_like_the_installer__while_still_getting_useful_output.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: Calling tasksel like the installer, while still getting useful output</title>
7 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/vim.css" />
9 </head>
10 <body>
11 <div class="title">
12 <h1>
13 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
14
15 </h1>
16
17 </div>
18
19
20 <div class="entry">
21 <div class="title">Calling tasksel like the installer, while still getting useful output</div>
22 <div class="date">16th June 2010</div>
23 <div class="body"><p>A few times I have had the need to simulate the way tasksel
24 installs packages during the normal debian-installer run. Until now,
25 I have ended up letting tasksel do the work, with the annoying problem
26 of not getting any feedback at all when something fails (like a
27 conffile question from dpkg or a download that fails), using code like
28 this:
29
30 <blockquote><pre>
31 export DEBIAN_FRONTEND=noninteractive
32 tasksel --new-install
33 </pre></blockquote>
34
35 This would invoke tasksel, let its automatic task selection pick the
36 tasks to install, and continue to install the requested tasks without
37 any output what so ever.
38
39 Recently I revisited this problem while working on the automatic
40 package upgrade testing, because tasksel would some times hang without
41 any useful feedback, and I want to see what is going on when it
42 happen. Then it occured to me, I can parse the output from tasksel
43 when asked to run in test mode, and use that aptitude command line
44 printed by tasksel then to simulate the tasksel run. I ended up using
45 code like this:
46
47 <blockquote><pre>
48 export DEBIAN_FRONTEND=noninteractive
49 cmd="$(in_target tasksel -t --new-install | sed 's/debconf-apt-progress -- //')"
50 $cmd
51 </pre></blockquote>
52
53 <p>The content of $cmd is typically something like "<tt>aptitude -q
54 --without-recommends -o APT::Install-Recommends=no -y install
55 ~t^desktop$ ~t^gnome-desktop$ ~t^laptop$ ~pstandard ~prequired
56 ~pimportant</tt>", which will install the gnome desktop task, the
57 laptop task and all packages with priority standard , required and
58 important, just like tasksel would have done it during
59 installation.</p>
60
61 <p>A better approach is probably to extend tasksel to be able to
62 install packages without using debconf-apt-progress, for use cases
63 like this.</p>
64 </div>
65
66 <div class="tags">Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>.</div>
67
68
69 </div>
70
71
72
73
74 <div id="sidebar">
75
76
77
78 <h2>Archive</h2>
79 <ul>
80
81 <li>2012
82 <ul>
83
84 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (6)</a></li>
85
86 </ul></li>
87
88 <li>2011
89 <ul>
90
91 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
92
93 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
94
95 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
96
97 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
98
99 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
100
101 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
102
103 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
104
105 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
106
107 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
108
109 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
110
111 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
112
113 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
114
115 </ul></li>
116
117 <li>2010
118 <ul>
119
120 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
121
122 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
123
124 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
125
126 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
127
128 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
129
130 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
131
132 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
133
134 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
135
136 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
137
138 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
139
140 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
141
142 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
143
144 </ul></li>
145
146 <li>2009
147 <ul>
148
149 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
150
151 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
152
153 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
154
155 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
156
157 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
158
159 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
160
161 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
162
163 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
164
165 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
166
167 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
168
169 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
170
171 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
172
173 </ul></li>
174
175 <li>2008
176 <ul>
177
178 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
179
180 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
181
182 </ul></li>
183
184 </ul>
185
186
187
188 <h2>Tags</h2>
189 <ul>
190
191 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (13)</a></li>
192
193 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
194
195 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
196
197 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (2)</a></li>
198
199 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (12)</a></li>
200
201 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
202
203 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (54)</a></li>
204
205 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (70)</a></li>
206
207 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (7)</a></li>
208
209 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (102)</a></li>
210
211 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (13)</a></li>
212
213 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (12)</a></li>
214
215 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (12)</a></li>
216
217 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (15)</a></li>
218
219 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (8)</a></li>
220
221 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (4)</a></li>
222
223 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
224
225 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (14)</a></li>
226
227 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (143)</a></li>
228
229 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (119)</a></li>
230
231 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
232
233 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (24)</a></li>
234
235 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (46)</a></li>
236
237 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
238
239 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (2)</a></li>
240
241 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (4)</a></li>
242
243 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
244
245 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (23)</a></li>
246
247 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
248
249 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (24)</a></li>
250
251 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (1)</a></li>
252
253 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (3)</a></li>
254
255 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (9)</a></li>
256
257 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (6)</a></li>
258
259 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (22)</a></li>
260
261 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (1)</a></li>
262
263 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (18)</a></li>
264
265 </ul>
266
267
268 </div>
269 <p style="text-align: right">
270 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.4</a>
271 </p>
272
273 </body>
274 </html>