]> pere.pagekite.me Git - homepage.git/blob - blog/More_flexible_firmware_handling_in_debian_installer.html
Ready, go.
[homepage.git] / blog / More_flexible_firmware_handling_in_debian_installer.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: More flexible firmware handling in debian-installer</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">More flexible firmware handling in debian-installer</div>
22 <div class="date">22nd May 2010</div>
23 <div class="body"><p>After a long break from debian-installer development, I finally
24 found time today to return to the project. Having to spend less time
25 working dependency based boot in debian, as it is almost complete now,
26 definitely helped freeing some time.</p>
27
28 <p>A while back, I ran into a problem while working on Debian Edu. We
29 include some firmware packages on the Debian Edu CDs, those needed to
30 get disk and network controllers working. Without having these
31 firmware packages available during installation, it is impossible to
32 install Debian Edu on the given machine, and because our target group
33 are non-technical people, asking them to provide firmware packages on
34 an external medium is a support pain. Initially, I expected it to be
35 enough to include the firmware packages on the CD to get
36 debian-installer to find and use them. This proved to be wrong.
37 Next, I hoped it was enough to symlink the relevant firmware packages
38 to some useful location on the CD (tried /cdrom/ and
39 /cdrom/firmware/). This also proved to not work, and at this point I
40 found time to look at the debian-installer code to figure out what was
41 going to work.</p>
42
43 <p>The firmware loading code is in the hw-detect package, and a closer
44 look revealed that it would only look for firmware packages outside
45 the installation media, so the CD was never checked for firmware
46 packages. It would only check USB sticks, floppies and other
47 "external" media devices. Today I changed it to also look in the
48 /cdrom/firmware/ directory on the mounted CD or DVD, which should
49 solve the problem I ran into with Debian edu. I also changed it to
50 look in /firmware/, to make sure the installer also find firmware
51 provided in the initrd when booting the installer via PXE, to allow us
52 to provide the same feature in the PXE setup included in Debian
53 Edu.</p>
54
55 <p>To make sure firmware deb packages with a license questions are not
56 activated without asking if the license is accepted, I extended
57 hw-detect to look for preinst scripts in the firmware packages, and
58 run these before activating the firmware during installation. The
59 license question is asked using debconf in the preinst, so this should
60 solve the issue for the firmware packages I have looked at so far.</p>
61
62 <p>If you want to discuss the details of these features, please
63 contact us on debian-boot@lists.debian.org.</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/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</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 (7)</a></li>
85
86 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
87
88 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
89
90 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
91
92 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
93
94 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
95
96 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
97
98 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
99
100 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
101
102 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (4)</a></li>
103
104 </ul></li>
105
106 <li>2011
107 <ul>
108
109 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
110
111 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
112
113 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
114
115 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
116
117 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
118
119 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
120
121 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
122
123 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
124
125 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
126
127 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
128
129 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
130
131 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
132
133 </ul></li>
134
135 <li>2010
136 <ul>
137
138 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
139
140 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
141
142 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
143
144 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
145
146 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
147
148 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
149
150 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
151
152 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
153
154 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
155
156 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
157
158 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
159
160 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
161
162 </ul></li>
163
164 <li>2009
165 <ul>
166
167 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
168
169 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
170
171 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
172
173 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
174
175 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
176
177 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
178
179 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
180
181 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
182
183 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
184
185 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
186
187 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
188
189 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
190
191 </ul></li>
192
193 <li>2008
194 <ul>
195
196 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
197
198 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
199
200 </ul></li>
201
202 </ul>
203
204
205
206 <h2>Tags</h2>
207 <ul>
208
209 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (13)</a></li>
210
211 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
212
213 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
214
215 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (2)</a></li>
216
217 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (12)</a></li>
218
219 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
220
221 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (57)</a></li>
222
223 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (113)</a></li>
224
225 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (9)</a></li>
226
227 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (7)</a></li>
228
229 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
230
231 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (153)</a></li>
232
233 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (18)</a></li>
234
235 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (12)</a></li>
236
237 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (8)</a></li>
238
239 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (8)</a></li>
240
241 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (31)</a></li>
242
243 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (17)</a></li>
244
245 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (8)</a></li>
246
247 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (4)</a></li>
248
249 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
250
251 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (25)</a></li>
252
253 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (200)</a></li>
254
255 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (144)</a></li>
256
257 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (5)</a></li>
258
259 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
260
261 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (35)</a></li>
262
263 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (49)</a></li>
264
265 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (1)</a></li>
266
267 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
268
269 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (2)</a></li>
270
271 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (4)</a></li>
272
273 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
274
275 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (4)</a></li>
276
277 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
278
279 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (23)</a></li>
280
281 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
282
283 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (2)</a></li>
284
285 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (38)</a></li>
286
287 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (2)</a></li>
288
289 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (4)</a></li>
290
291 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (10)</a></li>
292
293 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (7)</a></li>
294
295 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (34)</a></li>
296
297 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (3)</a></li>
298
299 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (25)</a></li>
300
301 </ul>
302
303
304 </div>
305 <p style="text-align: right">
306 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.4</a>
307 </p>
308
309 </body>
310 </html>