]> pere.pagekite.me Git - homepage.git/blob - blog/More_flexible_firmware_handling_in_debian_installer.html
Generated.
[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>2011
82 <ul>
83
84 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
85
86 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
87
88 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
89
90 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
91
92 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
93
94 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
95
96 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
97
98 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
99
100 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
101
102 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
103
104 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
105
106 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
107
108 </ul></li>
109
110 <li>2010
111 <ul>
112
113 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
114
115 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
116
117 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
118
119 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
120
121 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
122
123 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
124
125 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
126
127 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
128
129 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
130
131 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
132
133 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
134
135 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
136
137 </ul></li>
138
139 <li>2009
140 <ul>
141
142 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
143
144 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
145
146 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
147
148 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
149
150 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
151
152 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
153
154 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
155
156 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
157
158 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
159
160 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
161
162 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
163
164 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
165
166 </ul></li>
167
168 <li>2008
169 <ul>
170
171 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
172
173 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
174
175 </ul></li>
176
177 </ul>
178
179
180
181 <h2>Tags</h2>
182 <ul>
183
184 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (13)</a></li>
185
186 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
187
188 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
189
190 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (2)</a></li>
191
192 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (12)</a></li>
193
194 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
195
196 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (54)</a></li>
197
198 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (64)</a></li>
199
200 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (7)</a></li>
201
202 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (98)</a></li>
203
204 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (13)</a></li>
205
206 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (12)</a></li>
207
208 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (11)</a></li>
209
210 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (15)</a></li>
211
212 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (8)</a></li>
213
214 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (4)</a></li>
215
216 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
217
218 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (14)</a></li>
219
220 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (141)</a></li>
221
222 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (119)</a></li>
223
224 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
225
226 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (24)</a></li>
227
228 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (46)</a></li>
229
230 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
231
232 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (2)</a></li>
233
234 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (4)</a></li>
235
236 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
237
238 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (23)</a></li>
239
240 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (3)</a></li>
241
242 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (24)</a></li>
243
244 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (1)</a></li>
245
246 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (2)</a></li>
247
248 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (9)</a></li>
249
250 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (6)</a></li>
251
252 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (22)</a></li>
253
254 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (1)</a></li>
255
256 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (17)</a></li>
257
258 </ul>
259
260
261 </div>
262 <p style="text-align: right">
263 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.4</a>
264 </p>
265
266 </body>
267 </html>