Live-Build
Attachment '0002-live-build-installer-enablement-for-ppc64el.patch'
Download 1 From 6b179246575f55fc6eb95439f869e4ce708bc304 Mon Sep 17 00:00:00 2001
2 From: Deb McLemore <debmc@linux.vnet.ibm.com>
3 Date: Thu, 23 Feb 2017 17:42:32 -0600
4 Subject: [PATCH 2/2] live-build installer enablement for ppc64el
5
6 This patch enables the building of installer images for live and normal images.
7
8 Signed-off-by: Deb McLemore <debmc@linux.vnet.ibm.com>
9 ---
10 scripts/build/binary_disk | 21 ++++-
11 scripts/build/binary_grub-efi | 2 +
12 scripts/build/binary_hdd | 4 +-
13 scripts/build/binary_linux-image | 30 ++++++++
14 scripts/build/binary_loopback_cfg | 61 +++++++++++----
15 scripts/build/binary_netboot | 11 ++-
16 scripts/build/binary_syslinux | 6 ++
17 scripts/build/chroot_hacks | 56 +++++++++-----
18 scripts/build/config | 13 ++++
19 scripts/build/installer_debian-installer | 128 ++++++++++++++++++++++++-------
20 10 files changed, 266 insertions(+), 66 deletions(-)
21
22 diff --git a/scripts/build/binary_disk b/scripts/build/binary_disk
23 index 7175a54..d525be5 100755
24 --- a/scripts/build/binary_disk
25 +++ b/scripts/build/binary_disk
26 @@ -97,6 +97,23 @@ then
27 esac
28 fi
29
30 +case "${LB_MODE}" in
31 + ubuntu)
32 + _DEBIAN_PARENT="stretch"
33 + ;;
34 + *)
35 + _DEBIAN_PARENT=${LB_PARENT_DISTRIBUTION}
36 + ;;
37 +esac
38 +case "${LB_ARCHITECTURES}" in
39 + ppc*)
40 + _LB_ARCH="powerpc"
41 + ;;
42 + *)
43 + _LB_ARCH=${LB_ARCHITECTURES}
44 + ;;
45 +esac
46 +
47 case "${LB_DEBIAN_INSTALLER}" in
48 cdrom)
49 echo "main" > binary/.disk/base_components
50 @@ -111,7 +128,7 @@ case "${LB_DEBIAN_INSTALLER}" in
51 do
52 if [ -e "${LOCATION}" ]
53 then
54 - cp "${LOCATION}/${LB_PARENT_DISTRIBUTION}/${LB_ARCHITECTURES}_udeb_include" binary/.disk/udeb_include
55 + cp "${LOCATION}/${_DEBIAN_PARENT}/${_LB_ARCH}_udeb_include" binary/.disk/udeb_include
56
57 continue
58 fi
59 @@ -136,7 +153,7 @@ case "${LB_DEBIAN_INSTALLER}" in
60 do
61 if [ -e "${LOCATION}" ]
62 then
63 - cp "${LOCATION}/${LB_PARENT_DISTRIBUTION}/${LB_ARCHITECTURES}_netinst_udeb_include" binary/.disk/udeb_include
64 + cp "${LOCATION}/${_DEBIAN_PARENT}/${_LB_ARCH}_netinst_udeb_include" binary/.disk/udeb_include
65
66 continue
67 fi
68 diff --git a/scripts/build/binary_grub-efi b/scripts/build/binary_grub-efi
69 index 7301a48..bb4ee7e 100755
70 --- a/scripts/build/binary_grub-efi
71 +++ b/scripts/build/binary_grub-efi
72 @@ -105,6 +105,7 @@ case "${LIVE_IMAGE_TYPE}" in
73 case "${LB_INITRAMFS}" in
74 live-boot)
75 DESTDIR_LIVE="binary/live"
76 + # Debs not sure this is used anywhere
77 ;;
78
79 *) # this case as placeholder to work on non-live-boot path
80 @@ -113,6 +114,7 @@ case "${LIVE_IMAGE_TYPE}" in
81 esac
82
83 DESTDIR_INSTALL="binary/install"
84 + # Debs not sure this is used anywhere
85 ;;
86
87 hdd*|netboot)
88 diff --git a/scripts/build/binary_hdd b/scripts/build/binary_hdd
89 index bb7f307..08084f6 100755
90 --- a/scripts/build/binary_hdd
91 +++ b/scripts/build/binary_hdd
92 @@ -122,9 +122,9 @@ Restore_cache cache/packages.binary
93 Install_package
94
95 # Remove old binary
96 -if [ -f ${LIVE_iMAGE_NAME}.img ]
97 +if [ -f ${LIVE_IMAGE_NAME}.img ]
98 then
99 - rm -f ${LIVE_iMAGE_NAME}.img
100 + rm -f ${LIVE_IMAGE_NAME}.img
101 fi
102
103 case "${LB_BINARY_FILESYSTEM}" in
104 diff --git a/scripts/build/binary_linux-image b/scripts/build/binary_linux-image
105 index f13cc52..f630210 100755
106 --- a/scripts/build/binary_linux-image
107 +++ b/scripts/build/binary_linux-image
108 @@ -53,6 +53,7 @@ case "${LB_INITRAMFS}" in
109 DESTDIR="binary/boot"
110 ;;
111 esac
112 +DESTDIR_INSTALL="binary/install"
113
114 case "${LB_ARCHITECTURES}" in
115 powerpc|ppc64el)
116 @@ -69,10 +70,39 @@ Check_multiarchitectures
117 # Creating directory
118 mkdir -p "${DESTDIR}"
119
120 +if [ -n "${LB_CHROOT_PAYLOAD_PATH}" ]
121 +then
122 + case "${LB_CHROOT_FILESYSTEM}" in
123 + none)
124 + # do nothing
125 + ;;
126 + *)
127 + # DESTDIR holds the rootfs we want to include in the INITRD
128 +
129 + rm -rf chroot${LB_CHROOT_PAYLOAD_PATH}
130 + mkdir -p chroot${LB_CHROOT_PAYLOAD_PATH}
131 +
132 + cp "${DESTDIR}/filesystem"* chroot${LB_CHROOT_PAYLOAD_PATH}
133 + chmod 0644 chroot${LB_CHROOT_PAYLOAD_PATH}/*
134 + Chroot chroot "update-initramfs -k all -t -u"
135 + ;;
136 + esac
137 +fi
138 +
139 # Installing linux-image
140 cp chroot/boot/"${LINUX}"-* "${DESTDIR}"
141 cp chroot/boot/initrd.img-* "${DESTDIR}"
142
143 +case "${LB_DEBIAN_INSTALLER}" in
144 + true)
145 + mkdir -p "${DESTDIR_INSTALL}"
146 + for KERNEL in chroot/boot/${LINUX}-*; do
147 + cp "${KERNEL}" "${DESTDIR_INSTALL}/${LINUX}"
148 + done
149 + ;;
150 +esac
151 +
152 +
153 case "${LB_INITRAMFS}" in
154 live-boot)
155 if [ -e chroot/usr/share/doc/live-boot/parameters.txt ]
156 diff --git a/scripts/build/binary_loopback_cfg b/scripts/build/binary_loopback_cfg
157 index 07bf122..26f98f9 100755
158 --- a/scripts/build/binary_loopback_cfg
159 +++ b/scripts/build/binary_loopback_cfg
160 @@ -211,8 +211,30 @@ then
161 fi
162
163 # Default entries
164 -DEFAULT_FLAVOUR="$(echo ${LB_LINUX_FLAVOURS} | awk '{ print $1 }')"
165 -DEFAULT_KERNEL="$(basename chroot/boot/${LINUX}-*${DEFAULT_FLAVOUR})"
166 +
167 +if [ -z "${LB_MENU_FLAVOURS}" ]
168 +then
169 + DEFAULT_FLAVOUR="$(echo ${LB_LINUX_FLAVOURS} | awk '{ print $1 }')"
170 + LB_MENU_FLAVOURS=${LB_LINUX_FLAVOURS}
171 +else
172 + DEFAULT_FLAVOUR="$(echo ${LB_MENU_FLAVOURS} | awk '{ print $1 }')"
173 +fi
174 +
175 +DEFAULT_KERNEL=$(find chroot/boot -name ${LINUX}-*${DEFAULT_FLAVOUR} -type f | sort -V | tail -n 1)
176 +DEFAULT_KERNEL=$(basename "${DEFAULT_KERNEL}")
177 +
178 +if [ "${DEFAULT_KERNEL}" = "" ]
179 +then
180 + DEFAULT_KERNEL=$(find chroot/boot -name ${LINUX}-*${LB_LINUX_FLAVOURS} -type f | sort -V | tail -n 1)
181 + DEFAULT_KERNEL=$(basename "${DEFAULT_KERNEL}")
182 + Echo_message "WARNING: binary_loopback_cfg There was no default kernel found, so going to use DEFAULT_FLAVOR of LB_LINUX_FLAVOURS \"${LB_LINUX_FLAVOURS}\""
183 + if [ "${DEFAULT_KERNEL}" = "" ]
184 + then
185 + Echo_message "ERROR: binary_loopback_cfg There was No default kernel found, so check LB_LINUX_FLAVOURS and LB_MENU_FLAVOURS and maybe reorder the list to pick up the first flavour to find."
186 + exit 1
187 + fi
188 +fi
189 +
190 DEFAULT_INITRD="initrd.img-$(echo ${DEFAULT_KERNEL} | sed -e "s|${LINUX}-||")"
191
192 KERNEL_LIVE="/${INITFS}/${DEFAULT_KERNEL}"
193 @@ -253,18 +275,27 @@ fi
194
195 _COUNT=0
196 for KERNEL in chroot/boot/${LINUX}-*; do
197 - _COUNT=$(( $COUNT + 1 ))
198 + _COUNT=$(( $_COUNT + 1 ))
199 done
200
201 -if [ $_COUNT -gt 1 ]; then
202 +if [ "$_COUNT" -gt "1" ]; then
203 for KERNEL in chroot/boot/${LINUX}-*
204 do
205 VERSION="$(basename ${KERNEL} | sed -e "s|${LINUX}-||")"
206
207 - Grub_live_entry "Live system, kernel ${VERSION}" "/${INITFS}/$(basename ${KERNEL})" "/${INITFS}/initrd.img-${VERSION}" "${APPEND_LIVE}"
208 -
209 - if [ "${LB_BOOTAPPEND_LIVE_FAILSAFE}" != "none" ]; then
210 - Grub_live_entry "Live system, kernel ${VERSION} (fail-safe mode)" "/${INITFS}/$(basename ${KERNEL})" "/${INITFS}/initrd.img-${VERSION}" "${LB_BOOTAPPEND_LIVE_FAILSAFE}"
211 + if [ "${KERNEL}" != "${DEFAULT_KERNEL}" ]
212 + then
213 + for _SPECIAL in ${LB_MENU_FLAVOURS}
214 + do
215 + if echo "${KERNEL}" | grep -qs "${_SPECIAL}"
216 + then
217 + Grub_live_entry "Live system, kernel ${VERSION}" "/${INITFS}/$(basename ${KERNEL})" "/${INITFS}/initrd.img-${VERSION}" "${APPEND_LIVE}"
218 +
219 + if [ "${LB_BOOTAPPEND_LIVE_FAILSAFE}" != "none" ]; then
220 + Grub_live_entry "Live system, kernel ${VERSION} (fail-safe mode)" "/${INITFS}/$(basename ${KERNEL})" "/${INITFS}/initrd.img-${VERSION}" "${LB_BOOTAPPEND_LIVE_FAILSAFE}"
221 + fi
222 + fi
223 + done
224 fi
225 done
226 fi
227 @@ -280,15 +311,19 @@ then
228 INITRD_GI="/install/gtk/initrd.gz"
229 APPEND_GI="video=vesa:ywrap,mtrr vga=788 quiet ${LB_BOOTAPPEND_INSTALL}"
230
231 - Grub_install_entry "Start installer" "installgui" "${KERNEL_GI}" "${INITRD_GI}" "${APPEND_GI}"
232
233 - Grub_install_entry "Install in graphical mode" "installgui" "${KERNEL_GI}" "${INITRD_GI}" "${APPEND_GI}"
234 + if [ "${LB_DEBIAN_INSTALLER_GUI}" != "false" ]
235 + then
236 + Grub_install_entry "Start installer" "installgui" "${KERNEL_GI}" "${INITRD_GI}" "${APPEND_GI}"
237 + Grub_install_entry "Expert install in graphical mode" "expertgui" "${KERNEL_GI}" "${INITRD_GI}" "priority=low ${APPEND_GI}"
238 + Grub_install_entry "Install in graphical mode" "installgui" "${KERNEL_GI}" "${INITRD_GI}" "${APPEND_GI}"
239 + Grub_install_entry "Automatic install in graphical mode" "autogui" "${KERNEL_GI}" "${INITRD_GI}" "auto=true priority=critical ${APPEND_GI}"
240 + Grub_install_entry "Rescue system in graphical mode" "rescuegui" "${KERNEL_GI}" "${INITRD_GI}" "rescue/enable=true ${APPEND_GI}"
241 + fi
242 +
243 Grub_install_entry "Install in text mode" "install" "${KERNEL_DI}" "${INITRD_DI}" "${APPEND_DI}"
244 - Grub_install_entry "Expert install in graphical mode" "expertgui" "${KERNEL_GI}" "${INITRD_GI}" "priority=low ${APPEND_GI}"
245 Grub_install_entry "Expert install in text mode" "expert" "${KERNEL_DI}" "${INITRD_DI}" "priority=low ${APPEND_DI}"
246 - Grub_install_entry "Automatic install in graphical mode" "autogui" "${KERNEL_GI}" "${INITRD_GI}" "auto=true priority=critical ${APPEND_GI}"
247 Grub_install_entry "Automatic install in text mode" "auto" "${KERNEL_DI}" "${INITRD_DI}" "auto=true priority=critical ${APPEND_DI}"
248 - Grub_install_entry "Rescue system in graphical mode" "rescuegui" "${KERNEL_GI}" "${INITRD_GI}" "rescue/enable=true ${APPEND_GI}"
249 Grub_install_entry "Rescue system in text mode" "rescue" "${KERNEL_DI}" "${INITRD_DI}" "rescue/enable=true ${APPEND_DI}"
250 fi
251
252 diff --git a/scripts/build/binary_netboot b/scripts/build/binary_netboot
253 index e244e22..014cf48 100755
254 --- a/scripts/build/binary_netboot
255 +++ b/scripts/build/binary_netboot
256 @@ -50,7 +50,7 @@ Check_lockfile .lock
257 Create_lockfile .lock
258
259 # Check architectures
260 -Check_architectures amd64 i386
261 +Check_architectures amd64 i386 ppc64el
262 Check_crossarchitectures
263
264 # Remove old binary
265 @@ -59,6 +59,11 @@ rm -f ${LIVE_IMAGE_NAME}-${LB_ARCHITECTURES}.netboot.tar ${LIVE_IMAGE_NAME}-${LB
266 # Creating image file
267 ROOT_DIR=$(basename ${LB_NET_ROOT_PATH})
268
269 +if [ ! -d tftpboot ]
270 +then
271 + mkdir tftpboot
272 +fi
273 +
274 if [ "${ROOT_DIR}" = "chroot" ]
275 then
276 mv chroot chroot.tmp
277 @@ -73,9 +78,9 @@ mkdir binary.tmp
278 mv ${ROOT_DIR} tftpboot binary.tmp
279 cd binary.tmp
280
281 -# Moving kernel and initrd image arround
282 +# Moving kernel and initrd image around
283 mkdir tftpboot/live
284 -mv */live/vmlinuz* */live/initrd* tftpboot/live
285 +mv */live/vmlinu* */live/initrd* tftpboot/live
286
287 tar cf ../${LIVE_IMAGE_NAME}-${LB_ARCHITECTURES}.netboot.tar *
288
289 diff --git a/scripts/build/binary_syslinux b/scripts/build/binary_syslinux
290 index 1c50dae..24b691c 100755
291 --- a/scripts/build/binary_syslinux
292 +++ b/scripts/build/binary_syslinux
293 @@ -113,6 +113,12 @@ esac
294
295 Check_package host /usr/lib/ISOLINUX/isolinux.bin isolinux
296
297 +case "${_BOOTLOADER}" in
298 + pxelinux)
299 + Check_package host /usr/lib/PXELINUX/pxelinux.0 pxelinux
300 + ;;
301 +esac
302 +
303 # Internal system copy
304 if [ -e "config/bootloaders/${_BOOTLOADER}" ]
305 then
306 diff --git a/scripts/build/chroot_hacks b/scripts/build/chroot_hacks
307 index 888fdbe..4c80fbc 100755
308 --- a/scripts/build/chroot_hacks
309 +++ b/scripts/build/chroot_hacks
310 @@ -40,26 +40,42 @@ Create_lockfile .lock
311
312 case "${LIVE_IMAGE_TYPE}" in
313 netboot)
314 - if [ ! -f chroot/sbin/mount.cifs ]
315 - then
316 - Apt chroot install cifs-utils
317 - fi
318 -
319 - if [ ! -d chroot/etc/initramfs-tools ]
320 - then
321 - mkdir chroot/etc/initramfs-tools
322 - fi
323 -
324 - # Configuring initramfs for NFS
325 - if ! grep -qs "BOOT=nfs" chroot/etc/initramfs-tools/initramfs.conf
326 - then
327 - echo "BOOT=nfs" >> chroot/etc/initramfs-tools/initramfs.conf
328 - fi
329 -
330 - if ! grep -qs "NFSROOT=auto" chroot/etc/initramfs-tools/initramfs.conf
331 - then
332 - echo "NFSROOT=auto" >> chroot/etc/initramfs-tools/initramfs.conf
333 - fi
334 + case "${LB_ARCHITECTURES}" in
335 + ppc*)
336 + # Future case for enabling nfs for ppc
337 + if ! grep -qs "MODULES=netboot" chroot/etc/initramfs-tools/initramfs.conf
338 + then
339 + echo "MODULES=netboot" >> chroot/etc/initramfs-tools/initramfs.conf
340 + fi
341 + ;;
342 + *)
343 + if [ ! -f chroot/sbin/mount.cifs ]
344 + then
345 + Apt chroot install cifs-utils
346 + fi
347 +
348 + if [ ! -d chroot/etc/initramfs-tools ]
349 + then
350 + mkdir chroot/etc/initramfs-tools
351 + fi
352 +
353 + # Configuring initramfs for NFS
354 + if ! grep -qs "BOOT=nfs" chroot/etc/initramfs-tools/initramfs.conf
355 + then
356 + echo "BOOT=nfs" >> chroot/etc/initramfs-tools/initramfs.conf
357 + fi
358 +
359 + if ! grep -qs "NFSROOT=auto" chroot/etc/initramfs-tools/initramfs.conf
360 + then
361 + echo "NFSROOT=auto" >> chroot/etc/initramfs-tools/initramfs.conf
362 + fi
363 +
364 + if ! grep -qs "MODULES=netboot" chroot/etc/initramfs-tools/initramfs.conf
365 + then
366 + echo "MODULES=netboot" >> chroot/etc/initramfs-tools/initramfs.conf
367 + fi
368 + ;;
369 + esac
370 ;;
371 esac
372
373 diff --git a/scripts/build/config b/scripts/build/config
374 index 83b9e9c..d3f7bd3 100755
375 --- a/scripts/build/config
376 +++ b/scripts/build/config
377 @@ -459,6 +459,11 @@ Local_arguments ()
378 shift 2
379 ;;
380
381 + --linux-menu-flavours)
382 + LB_MENU_FLAVOURS="${2}"
383 + shift 2
384 + ;;
385 +
386 --linux-packages)
387 LB_LINUX_PACKAGES="${2}"
388 shift 2
389 @@ -1147,6 +1152,14 @@ LB_KEYRING_PACKAGES="${LB_KEYRING_PACKAGES}"
390 # (Default: autodetected)
391 LB_LINUX_FLAVOURS="${LB_LINUX_FLAVOURS}"
392
393 +# \$LB_MENU_FLAVOURS: set menu flavour to use
394 +# this will build grub menu with only tags for desired
395 +# kernels, i.e. 4.12.0-1-custom, so put "custom"
396 +# if you only want auto-generated menu items with "custom"
397 +# otherwise it will pick up LB_LINUX_FLAVOURS
398 +# (Default: autodetected)
399 +LB_MENU_FLAVOURS="${LB_MENU_FLAVOURS}"
400 +
401 # \$LB_LINUX_PACKAGES: set kernel packages to use
402 # (Default: autodetected)
403 LB_LINUX_PACKAGES="${LB_LINUX_PACKAGES}"
404 diff --git a/scripts/build/installer_debian-installer b/scripts/build/installer_debian-installer
405 index 2c1927b..12e8f6e 100755
406 --- a/scripts/build/installer_debian-installer
407 +++ b/scripts/build/installer_debian-installer
408 @@ -2,7 +2,6 @@
409
410 ## live-build(7) - System Build Scripts
411 ## Copyright (C) 2006-2015 Daniel Baumann <mail@daniel-baumann.ch>
412 -## Copyright (C) 2017 Deb McLemore <debmc@linux.vnet.ibm.com>
413 ##
414 ## This program comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
415 ## This is free software, and you are welcome to redistribute it
416 @@ -74,10 +73,23 @@ Restore_cache cache/packages.binary
417 # Installing depends
418 Install_package
419
420 +# _TFTPBOOT_DIR can be any string
421 +# _DERIVATIVE_INSTALLER needs to match the download URL of the distribution
422 +case "${LB_MODE}" in
423 + ubuntu)
424 + _TFTPBOOT_DIR="ubuntu-installer"
425 + _DERIVATIVE_INSTALLER="ubuntu-installer"
426 + ;;
427 + *)
428 + _TFTPBOOT_DIR="debian-install"
429 + _DERIVATIVE_INSTALLER="debian-installer"
430 + ;;
431 +esac
432 +
433 # Setting destination directory
434 case "${LIVE_IMAGE_TYPE}" in
435 netboot)
436 - DESTDIR="tftpboot/debian-install/${LB_ARCHITECTURES}"
437 + DESTDIR="tftpboot/${_TFTPBOOT_DIR}/${LB_ARCHITECTURES}"
438 ;;
439
440 hdd*|tar)
441 @@ -108,6 +120,16 @@ case "${LB_DEBIAN_INSTALLER}" in
442 esac
443
444 # Set architecture-specific variables
445 +
446 +case "${LB_ARCHITECTURES}" in
447 + powerpc|ppc64el)
448 + VMLINUX="vmlinux"
449 + ;;
450 + *)
451 + VMLINUX="vmlinuz"
452 + ;;
453 +esac
454 +
455 case "${LB_ARCHITECTURES}" in
456 armel)
457 DEFAULT_FLAVOUR="$(echo ${LB_LINUX_FLAVOURS} | awk '{ print $1 }')"
458 @@ -121,37 +143,77 @@ case "${LB_ARCHITECTURES}" in
459 ;;
460 esac
461
462 - DI_REMOTE_KERNEL="vmlinuz"
463 + DI_REMOTE_KERNEL="${VMLINUX}"
464 DI_REMOTE_BASE_GTK="${DI_REMOTE_BASE}/gtk"
465 ;;
466
467 - powerpc|ppc64el)
468 + powerpc)
469 case "${DI_IMAGE_TYPE}" in
470 cdrom)
471 DI_REMOTE_BASE="${LB_ARCHITECTURES}/cdrom"
472 + # GTK currently not supported, so just use text version
473 + DI_REMOTE_BASE_GTK="${DI_REMOTE_BASE}"
474 ;;
475
476 netboot)
477 DI_REMOTE_BASE="${LB_ARCHITECTURES}/netboot"
478 + # GTK currently not supported, so just use text version
479 + DI_REMOTE_BASE_GTK="${DI_REMOTE_BASE}"
480 ;;
481 esac
482
483 - DI_REMOTE_KERNEL="vmlinux"
484 - DI_REMOTE_BASE_GTK="${DI_REMOTE_BASE}/gtk"
485 + DI_REMOTE_KERNEL="${VMLINUX}"
486 +
487 + ;;
488 +
489 + ppc64el)
490 + case "${DI_IMAGE_TYPE}" in
491 + cdrom)
492 + DI_REMOTE_BASE="cdrom"
493 + # GTK currently not supported, so just use text version
494 + DI_REMOTE_BASE_GTK="${DI_REMOTE_BASE}"
495 + ;;
496 +
497 + netboot)
498 + DI_REMOTE_BASE="netboot/${_DERIVATIVE_INSTALLER}/${LB_ARCHITECTURES}"
499 + # GTK currently not supported, so just use text version
500 + DI_REMOTE_BASE_GTK="${DI_REMOTE_BASE}"
501 + ;;
502 + esac
503 +
504 + DI_REMOTE_KERNEL="${VMLINUX}"
505 +
506 ;;
507
508 *)
509 case "${DI_IMAGE_TYPE}" in
510 netboot)
511 - DI_REMOTE_BASE="netboot/debian-installer/${LB_ARCHITECTURES}"
512 - DI_REMOTE_BASE_GTK="netboot/gtk/debian-installer/${LB_ARCHITECTURES}"
513 + DI_REMOTE_BASE="netboot/${_DERIVATIVE_INSTALLER}/${LB_ARCHITECTURES}"
514 DI_REMOTE_KERNEL="linux"
515 + case "${LB_MODE}" in
516 + ubuntu)
517 + # GTK currently not supported, so just use text version
518 + DI_REMOTE_BASE_GTK="${DI_REMOTE_BASE}"
519 + ;;
520 + *)
521 + DI_REMOTE_BASE_GTK="netboot/gtk/${_DERIVATIVE_INSTALLER}/${LB_ARCHITECTURES}"
522 + ;;
523 + esac
524 +
525 ;;
526
527 cdrom)
528 DI_REMOTE_BASE="cdrom"
529 - DI_REMOTE_BASE_GTK="cdrom/gtk"
530 - DI_REMOTE_KERNEL="vmlinuz"
531 + DI_REMOTE_KERNEL="${VMLINUX}"
532 + case "${LB_MODE}" in
533 + ubuntu)
534 + # GTK currently not supported, so just use text version
535 + DI_REMOTE_BASE_GTK="${DI_REMOTE_BASE}"
536 + ;;
537 + *)
538 + DI_REMOTE_BASE_GTK="${DI_REMOTE_BASE}/gtk"
539 + ;;
540 + esac
541 ;;
542 esac
543 ;;
544 @@ -213,6 +275,7 @@ Download_file () {
545
546 _LB_CACHE_FILE="${_LB_CACHE_DIR}/$(echo "${_LB_URL}" | sed 's|/|_|g')"
547
548 +
549 if [ ! -f "${_LB_CACHE_FILE}" ]
550 then
551 mkdir -p ${_LB_CACHE_DIR}
552 @@ -233,12 +296,11 @@ Download_file () {
553 cp -f ${CP_OPTIONS} -- "${_LB_CACHE_FILE}" "${_LB_TARGET}"
554 }
555
556 -VMLINUZ_DI="vmlinuz"
557 +LINUX_DI="${VMLINUX}"
558 +LINUX_GI="gtk/${VMLINUX}"
559 INITRD_DI="initrd.gz"
560 -DESTDIR_DI="${DESTDIR}"
561 -
562 -VMLINUZ_GI="gtk/vmlinuz"
563 INITRD_GI="gtk/initrd.gz"
564 +DESTDIR_DI="${DESTDIR}"
565 DESTDIR_GI="${DESTDIR}/gtk"
566
567 case "${LB_DERIVATIVE}" in
568 @@ -278,8 +340,9 @@ esac
569 mkdir -p "${DESTDIR_DI}"
570
571 # Downloading debian-installer
572 -Download_file "${DESTDIR}"/"${VMLINUZ_DI}" ${URL}/${DI_REMOTE_BASE}/${DI_REMOTE_KERNEL}
573 -Download_file "${DESTDIR}"/"${INITRD_DI}" ${URL}/${DI_REMOTE_BASE}/initrd.gz
574 +Download_file "${DESTDIR}"/"${LINUX_DI}" ${URL}${DI_REMOTE_BASE}/${DI_REMOTE_KERNEL}
575 +
576 +Download_file "${DESTDIR}"/"${INITRD_DI}" ${URL}${DI_REMOTE_BASE}/initrd.gz
577
578 # Downloading graphical-installer
579 DOWNLOAD_GTK_INSTALLER=0
580 @@ -287,22 +350,30 @@ if [ "${LB_DEBIAN_INSTALLER_GUI}" = "true" ]
581 then
582 case "${LB_ARCHITECTURES}" in
583 amd64|i386)
584 - DOWNLOAD_GTK_INSTALLER=1
585 + case "${LB_MODE}" in
586 + ubuntu)
587 + Echo_warning "LB_DEBIAN_INSTALLER_GUI is NOT supported for LB_ARCHITECTURES of ${LB_ARCHITECTURES} and LB_MODE of ${LB_MODE}, proceeding without GUI."
588 + ;;
589 + *)
590 + DOWNLOAD_GTK_INSTALLER=1
591 + ;;
592 + esac
593 ;;
594
595 - powerpc|ppc64el)
596 - if [ "${LB_DEBIAN_INSTALLER}" = "netboot" ]
597 - then
598 - DOWNLOAD_GTK_INSTALLER=1
599 - fi
600 + powerpc)
601 + Echo_warning "LB_DEBIAN_INSTALLER_GUI is NOT supported for LB_ARCHITECTURES of ${LB_ARCHITECTURES} and LB_MODE of ${LB_MODE}, proceeding without GUI."
602 ;;
603 - esac
604 +
605 + ppc64el)
606 + Echo_warning "LB_DEBIAN_INSTALLER_GUI is NOT supported for LB_ARCHITECTURES of ${LB_ARCHITECTURES} and LB_MODE of ${LB_MODE}, proceeding without GUI."
607 + ;;
608 + esac
609 fi
610
611 if [ ${DOWNLOAD_GTK_INSTALLER} -eq 1 ]
612 then
613 mkdir -p "${DESTDIR_GI}"
614 - Download_file "${DESTDIR}"/"${VMLINUZ_GI}" ${URL}/${DI_REMOTE_BASE_GTK}/${DI_REMOTE_KERNEL}
615 + Download_file "${DESTDIR}"/"${LINUX_GI}" ${URL}/${DI_REMOTE_BASE_GTK}/${DI_REMOTE_KERNEL}
616 Download_file "${DESTDIR}"/"${INITRD_GI}" ${URL}/${DI_REMOTE_BASE_GTK}/initrd.gz
617 fi
618
619 @@ -318,12 +389,12 @@ then
620 case "${LB_ARCHITECTURES}" in
621 amd64)
622 DI_REQ_PACKAGES="lilo grub-pc"
623 - DI_PACKAGES="${DI_REQ_PACKAGES} linux-image-amd64"
624 + DI_PACKAGES="${DI_REQ_PACKAGES} linux-image-$(uname -r)"
625 ;;
626
627 i386)
628 DI_REQ_PACKAGES="lilo grub-pc"
629 - DI_PACKAGES="${DI_REQ_PACKAGES} linux-image-686-pae"
630 + DI_PACKAGES="${DI_REQ_PACKAGES} linux-image-$(uname -r)"
631 ;;
632
633 powerpc)
634 @@ -331,6 +402,11 @@ then
635 DI_PACKAGES="${DI_REQ_PACKAGES} linux-image-powerpc linux-image-powerpc64 linux-image-powerpc-smp"
636 ;;
637
638 + ppc64el)
639 + DI_REQ_PACKAGES="grub2"
640 + DI_PACKAGES="${DI_REQ_PACKAGES} linux-image-generic"
641 + ;;
642 +
643 esac
644
645 DI_PACKAGES="${DI_PACKAGES} busybox cryptsetup mdadm lvm2 xfsprogs jfsutils"
646 --
647 2.7.4
Attached Files
To refer to attachments on a page, use attachment:filename, as shown below in the list of files. Do NOT use the URL of the [get] link, since this is subject to change and can break easily.You are not allowed to attach a file to this page.