summaryrefslogtreecommitdiff
path: root/functions/defaults.sh
AgeCommit message (Collapse)Author
2018-03-22Add options to build ONIE imagesLuca Boccassi
Open Network Install Environment is an open image format used by networking vendor to ship a standardised image for networking white box switches. ONIE hardware takes this image at boot and a script to chain load into the final environment via kexec. We can support Debian and derivatives on such systems by packing an ISO which then gets unpacked, kexec'ed and live-booted. A base ONIE system can be tested in QEMU by building a VM following these instrunctions: https://github.com/opencomputeproject/onie/blob/master/machine/kvm_x86_64/INSTALL Once built, boot onie-recovery-x86_64-kvm_x86_64-r0.iso in QEMU/libvirt and on the console there will be the terminal prompt. Check the IP assigned by libvirt and then scp the live image (ssh access is enabled as root without password...). Then the .bin can be booted with: ONIE-RECOVERY:/ # onie-nos-install /tmp/live.hybrid.iso-ONIE.bin The implementation is inspired by ONIE's own scripts that can be found at: https://github.com/opencomputeproject/onie/blob/master/contrib/debian-iso/cook-bits.sh A new option, --onie (false by default) can be set to true to enable building this new format in addition to an ISO. An additional option, --onie-kernel-cmdline can be used to specify additional options that the ONIE system should use when kexec'ing the final image. Note that only iso or hybrid-iso formats are supported. For more information about the ONIE ecosystem see: http://onie.org Signed-off-by: Erik Ziegenbalg <eziegenb@Brocade.com> Signed-off-by: Luca Boccassi <bluca@debian.org>
2018-03-09UEFI: add support for Secure Boot on amd64 and arm64Luca Boccassi
Support for UEFI Secure Boot is modelled after how it currently works in Ubuntu and on how it is going to work on Debian. A minimal bootloader, shim, is used as the first-stage and it then loads grub. Both have to be signed. shim-signed is already available in Debian so the filenames are already established, and the grub2 repository and packaging is common between the 2 distros so we can already be reasonably sure of what it is going to be. So if both are available, copy /usr/lib/shim/shim[x64|aa64].efi.signed as boot[x64|aa64].efi so that UEFI loads it first, and copy /usr/lib/grub/[x86_64|arm64]-efi-signed/grub[x64|aa64].efi.signed as grub[x64|aa64].efi. This grub2 EFI monolithic image is currently hard-coded in grub2's repository to look for a config file in efi/debian, so make a copy of the previously added minimal grub.cfg that loads the real one in that directory in both the fat32 and ISO 9660 partitions. The new option --uefi-secure-boot can be set to auto (default, enable or disable. In auto, the lack of the signed EFI binaries is intentionally left as a soft failure - live-build will simply fallback to using the locally generated non-signed grub2 monolithic EFI binary as the only bootloader. Given the difficulties surrounding the Secure Boot signing infrastructure this approach gives the most flexibility and makes sure things will "just work" once the packages are available, without the need to change anything in the configuration. This will also greatly help downstream distributions and users who want to do self-signing. The enable or disable options work as expected. Closes: #821084
2017-09-18Replace "kirkwood" and "orion5x" armel flavors with the new "marvell" oneRaphaël Hertzog
As done by the linux source package since its version 4.4.
2017-08-29Update PREPARER data for consistencyRaphaël Hertzog
2017-08-29Drop all references to live-systems.org and update copyright fileRaphaël Hertzog
Also fix the version string in the manual pages. Closes: #859290
2017-02-13Drop the versatile kernel flavour on armel. It's no longer built since Linux ↵Raphaël Hertzog
4.9.
2016-12-02Drop check on configuration versionRaphaël Hertzog
The date based versioning scheme no longer allows such a check. And we don't intend to break backwards compatibility for now.
2016-12-02Default for LB_UNION_FILESYSTEM is now "overlay" just like in live-boot.Raphaël Hertzog
2016-07-31Make: syslinux,grub-efi the default bootloaders becauseAdrian Gibanel Lopez
UEFI is getting widely adopted but BIOS support is still needed.
2016-07-31defaults.sh LB_BOOTLOADER updated to be: LB_BOOTLOADERS in incompatible warningAdrian Gibanel Lopez
2016-07-31Added new multi bootloader helper functionsAdrian Gibanel Lopez
* Added: functions/bootloaders.sh . This file adds bootloader functions that are heavily used in efi scenarios where a bootloader can act as a first or an extra bootloader. Since the introduction of the new switch: --bootloaders you can setup it like this: --bootloaders=syslinux,grub-efi . This means that syslinux is the first bootloader and grub-efi is the extra bootloader. * Added new bootloader functions: Check_Non_First_Bootloader and Check_Non_Extra_Bootloader. These functions let each one of the bootloaders abort the build because they cannot perform a role either as a first bootloader or as an extra bootloader. * Added bootloader functions: Check_First_Bootloader_Role, Check_Extra_Bootloader_Role and Check_Any_Bootloader_Role These functions let bootloaders to force their default role in a single line. At the same time many binary bootloaders were rewritten to make use of the new bootloader role functions explained above. These roles were enforced: binary_grub-legacy : First bootloader binary_grub-pc : Either first or extra bootloader binary_syslinux : Either first or extra bootloader If a bootloader is tried to be used in a role that it's not meant to be used then the build fails because that might lead to a non-bootable system.
2016-07-31functions/default.sh : Define LB_PRIMARY_BOOTLOADER at the Set_defaults ↵Adrian Gibanel Lopez
function which it's the right place where to do it
2016-01-05Drop ixp4xx from available armel flavorsRaphaël Hertzog
It's gone from Debian unstable/testing since Linux 3.17. Sponsored-By: Offensive Security
2015-12-15Remove 586 flavour for i386 architecture. (Closes: #807972)Ben Armstrong
2015-08-29Multi bootloader supportAdrian Gibanel Lopez
Note: OLDIFS use makes IFS to be reset to "" instead to it being unset. Either we need to detect if old IFS was unset to unset it or we need a proper way of setting it as a local variable. Even more IFS it's not currently used in Check_package (which it's called from: binary_hdd). we should have a clean way of resetting/unsetting IFS when calling Check_package. The other approach it's to explicitly define IFS with its default value in the places inside live-build code where we implicitly suppose that it's going to have its default value.
2015-05-10Switching from http.debian.net to httpredir.debian.org as default binary mirror.Daniel Baumann
2015-05-03Dropping automagics for ubuntu.Daniel Baumann
Future live-build versions will still allow to use casper, but its configuration will be done differently by a custom config tree, rather than embedded and maintenance intensive code in live-build itself.
2015-05-03Dropping automagics for casper.Daniel Baumann
Future live-build versions will still allow to use casper, but its configuration will be done differently by hooks in the config tree, rather than embedded and maintenance intensive code in live-build itself.
2015-04-29Moving grub and grub2 templates into shared bootloader config directory.Daniel Baumann
2015-04-28Setting progress-linux default distribution to cairon.Daniel Baumann
2015-04-28Setting debian default distribution to stretch.Daniel Baumann
2015-02-04Adding linux flavours for arm64/armhf architectures.Fathi Boudra
Signed-off-by: Fathi Boudra <fabo@debian.org>
2015-01-26Switching to default to linux-image-586 on i386.Daniel Baumann
2015-01-25Enabling security and release updates for jessie.Daniel Baumann
2015-01-04Updating year in copyright notices to 2015.Daniel Baumann
2015-01-04Dropping some sparc leftovers (Closes: #774196).Daniel Baumann
2014-12-23Dropping cdebootstrap support (Closes: #773657).Daniel Baumann
debootstrap is the official tool to bootstrap debian, cdebootstrap has had the one or other bug making it broken for times during the release cycles. The extra effort of supporting both debootstrap and cdebootstrap is hardly worth it since the bootstrap stage is cached anyway.
2014-12-10Cleaning up from python removal (LIVE_IMAGE_PARENT_ARCHIVE_AREAS).Daniel Baumann
2014-12-10Updating misc settings for progress-linux.Daniel Baumann
2014-12-10Address "should check that we're building on debian through e.g. a ↵jnqnfe
'derivative-is-based-on' variable or somesuch" fixme.
2014-12-10Dropping support for wheezy.Daniel Baumann
2014-12-10Somewhat fixing sysvinit and casper legacy support, slightly improved patch ↵Daniel Baumann
from Rui Miguel P. Bernardo <rui.bernardo.pt@gmail.com> (Closes: #772522, #772651). This however will still not work properly building upstart based images but they have been broken/unsupported anyway since a long time.
2014-12-10Cleaning up from python removal (LIVE_IMAGE_ARCHIVE_AREAS).Daniel Baumann
2014-12-10Cleaning up from python removal (LIVE_IMAGE_ARCHITECTURE).Daniel Baumann
2014-12-10Update linux flavours for armhf/armel.Raphaël Hertzog
With linux 3.16 in Debian Jessie, armmp and armmp-lpae are the only armhf flavours availale. On armel, we lost the support of the iop32x flavour.
2014-04-30Updating default boot parameters for live-config 4.x.Daniel Baumann
2014-04-27Add support for making ext[234] or btrfs hdd images bootable with extlinux ↵Simon McVittie
(Closes: #745816) extlinux configuration for the bootable image is installed to /boot/extlinux, matching the extlinux-install script in Debian. From the configuration point of view it's still called "syslinux", the same as the rest of the syslinux family (pxelinux, isolinux etc.)
2014-04-27Switching default debian release to jessie.Daniel Baumann
2014-02-08Updating copyright notices for 2014.Daniel Baumann
2013-11-03Automatically symlink hooks upon creation of the configuration tree.Daniel Baumann
2013-10-23Dropping incomplete and not really supported exposed root mode.Daniel Baumann
This might come back in future if there's demand for it and the base is sufficiently cleaned up first.
2013-10-15Replacing s390 with s390x in architecture specific defaults.Daniel Baumann
2013-09-06Updating initsystem default for progress-linux releases.Daniel Baumann
2013-06-19Adding hook to remove ssl-cert-snakeoil by default.Daniel Baumann
2013-05-06Adding hook to disable 70-persistent-cd.rules udev rule to prevent udev ↵Daniel Baumann
remember the cd device name both the one of the build system and the one of the live system (Closes: #706926).
2013-05-06Renaming remove-udev-persistent-rules.chroot hook to ↵Daniel Baumann
remove-udev-persistent-net-rules.chroot for future additional udev hooks.
2013-05-06Enabling release updates (formerly known as volatile) for wheezy.Daniel Baumann
2013-05-06Updating bootstrap mirror for progress-linux.Daniel Baumann
2013-05-06Dropping now unused intermediate config/image.Daniel Baumann
2013-05-06Using LB_HDD_SIZE to determine the size of the image.Michael Stummvoll
If LB_HDD_SIZE is "auto" the size will be determined automatically as before else it will be the given size in MB. Also setting the default for this to "auto"