summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-08-09add items for grub setup and enable persistence1.3.81.3.71.3.61.3.51.3.41.3.3-epa11.3.31.3.2equuleusKim Hagen
2021-07-29create loop partitions with mknod instead of bind mounting /devKim Hagen
2021-07-23create vyos hdd imageKim Hagen
2019-03-11Close 924293 in d/changelogdebian/1%20190311Luca Boccassi
2019-03-11Update changelog for 1:20190311 releaseLuca Boccassi
2019-03-11Bump Standards-Version to 4.3.0, no changes.Luca Boccassi
2019-02-17We should add buster for releaseHideki Yamane
Building image will fail without this directory for buster
2018-10-13use deb.debian.org as defaultHideki Yamane
replace deprecated httpredir.debian.org to deb.debian.org and use it as default mirror since it is appropriate for users
2018-09-25Update changelog for 1:20180925 releasedebian/1%20180925Luca Boccassi
2018-09-20lintian: override error on dependency on e2fsprogsLuca Boccassi
It's an error on Stretch, which causes annoyances when backporting.
2018-09-20Bump Standards-Version to 4.2.1.Luca Boccassi
2018-09-20Add Rules-Requires-Root: no.Luca Boccassi
2018-09-20Build-Depend on debhelper >= 10~ to facilitate backports.Luca Boccassi
Not used at the moment, but it will be in the future when we bump it, so that we don't forget
2018-09-19UEFI: remove the EFI/debian/grub.cfg, not necessary anymoreLuca Boccassi
Turns out gcd works fine after adding /boot/grub/grub.cfg in the img, as that's the path that gets hardcoded, and adding the EFI/debian/ grub.cfg was not necessary, so remove it.
2018-09-19Use gcd{x64.aa64}.efi.signed for amd64/arm64 arch.Steven Shiau
For secured boot in binary_grub-efi, the gcdx64.efi.signed is the boot loader for removable device, like CD or USB flash drive, while grubx64.efi.signed is for hard drive. Therefore for live system, use gcdx64.efi.signed for amd64 and gcdaa64.efi.signed for arm64.
2018-09-13copy keys to /etc/apt/trusted.gpg.d with appropriate extension for them to ↵Marcel Partap
not be ignored.
2018-07-27Handle includes.chroot files installed over symlinked directoriesRaphaël Hertzog
With the merged /usr feature now enabled in debootstrap, we have /bin and /lib which are symlinks to /usr/bin and /usr/lib. If the live-build configuration provides files in config/includes.chroot/lib/ or config/includes.chroot/bin/ then lb chroot_includes will replace the /lib or /bin symlink with real directories having only the content provided in chroot.includes and problems will follow... the build will usually fail later with a cryptic error message (for example a hook failing to execute /usr/bin/env). Work around the issue by creating a tarball of the files to install and by unpacking that tarball from within the chroot with appropriate options.
2018-06-18Update changelog for 1:20180618 releasedebian/1%20180618Luca Boccassi
2018-06-18Bump Standards-Version to 4.1.4, no changes.Luca Boccassi
2018-06-07UEFI: parse vendor from Grub package metadataLuca Boccassi
When using Secure Boot, grub2 as built by Debian will now load a config file from EFI/$VENDOR instead of having EFI/debian hardcoded. $VENDOR comes from dpkg-vendor or from the user building grub2. The vendor string is stored in the control metadata as Efi-Vendor, so retrieve it when building the EFI image.
2018-06-03Avoid apt-key add and just drop the key in /etc/apt/trusted.gpg.dLuca Boccassi
Only gnupgv is part of the deboostrap set these days, but apt-key needs the full gpg (with gpg-agent) which is just a recommends. Instead just drop the key with an .asc suffix in /etc/apt/trusted.gpg.d which is supported since apt version 1.4
2018-04-17lb clean: remove ONIE imageLuca Boccassi
2018-04-11Update changelog for 1:20180411 releasedebian/1%20180411Luca Boccassi
2018-04-11Fix debian/NEWS date to match an actual releaseLuca Boccassi
The NEWS file had a temporary version so it was never shown to users. Fix it. Gbp-Dch: Ignore
2018-04-10Reconfigure bootstrapped packages after preseeding.Luca Boccassi
live-build supports preseeding configuration, but the configuration has to be installed after bootstrapping since it needs the debconf tools to be applied. But packages that have already been installed and configured in the bootstrap step will then ignore those preseeded configs. After applying each preseed file, parse the package list and manually reconfigure the relevant package(s) so that the configuration will be applied.
2018-04-10Don't recommend gzip, it's essentialLuca Boccassi
Fixes Lintian Error. Gbp-Dch: Ignore
2018-04-05Print an error and exit if a host package (dependency) is missing.Luca Boccassi
Check_package will just add a missing dependency to the LB_PACKAGES todo list if it doesn't find it, when build-with-chroot is true, even if the check was not for the chroot. Instead error out if the check is not done for the chroot, e.g. Check_package host /bin/foo foo
2018-04-05ONIE: do not use package cache, only runs on hostLuca Boccassi
Gbp-Dch: Ignore
2018-04-05ONIE: add Recommends for programs needed by binary_onieLuca Boccassi
The binary_onie script needs a few programs to run, and it uses them on the host rather than in the chroot, so add them to the Recommends list.
2018-04-04ONIE: missing dependency on fileLuca Boccassi
A very minimal build worker might not have it, so check for its presence as well.
2018-04-04ONIE: Check_package in the host, not the chrootLuca Boccassi
The binary_onie script works on the host, not in the chroot (if used), so don't check that the required packages for the script are installed in the chroot (if present) as they won't be useful. Check instead on the host.
2018-03-28Update changelog for 1:20180328 releasedebian/1%20180328Luca Boccassi
Set urgency to low to allow for more time in unstable
2018-03-28Add myself to Uploaders.Luca Boccassi
2018-03-28Bump Standards-Version to 4.1.3.Luca Boccassi
2018-03-28Use HTTPS in debian/copyright (policy 4.0.0).Luca Boccassi
2018-03-23ONIE: detect initrd compression instead of hard-codingLuca Boccassi
Instead of hard-coding the decompression and compression formats, detect them at runtime. Install the required dependencies as well - they were mistakenly left out. Gbp-Dch: Ignore
2018-03-23Add Acquire::AllowInsecureRepositories to fix apt-secure in sidLuca Boccassi
The apt-secure option does not work anymore when building a sid image, as with apt 1.6 the existing options are no longer enough to get apt to accept an unsigned repository, which is necessary when using a local cached repository (offline build). Pass Acquire::AllowInsecureRepositories "true"; together with the other options when --apt-secure false is used to fix the issue.
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-22Add NEWS file to warn users about change of live-boot mount pathsLuca Boccassi
2018-03-09UEFI: use uppercase EFI directory name for TianocoreLuca Boccassi
The Tianocore reference UEFI implementation, used for example by Qemu, wants the EFI directory name to be uppercase in the fat32 partition when Secure Boot is enabled, and will fail to load otherwise.
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
2018-03-09UEFI: add minimal grub.cfg to fat32 partitionLuca Boccassi
On some UEFI implementations, like the AMI found in the Supermicro X10SDV-TP8F development board, the fat32 partition will be loaded first and so Grub will set it the root, and then drop to the console as it cannot find any config on it. Add a minimal grub.cfg that allows Grub to find the main config on the ISO 9660 partition and load it. Closes: #892406
2018-03-02Add grub-based UEFI boot support for ARM64Steven Shiau
Closes: #885692 Fixes: !2 Signed-off-by: Raphaël Hertzog <hertzog@debian.org>
2018-02-24Update changelogRaphaël Hertzog
2018-02-24Simplify bootstrapping of foreign architectures with qemu-debootstrapRohan Garg
We already require qemu-user-static for this case, we might as well rely on the qemu-debootstrap script that this package provides. Closes: #847919
2018-02-24Run mksquashfs with nice -n 19 to not overload the systemRaphaël Hertzog
Machines tend to become unresponsive during the mksquashfs step. Avoid this by lowering the priority of the process. Thanks: Ronny Standtke for the patch. Closes: #867539
2018-02-23Merge branch 'fix_offline_repo' into 'master'Raphaël Hertzog
Fix build with local offline mirrors See merge request live-team/live-build!1
2018-02-23Fix build with local offline mirrorsLuca Boccassi
Commit a15b579652e64 (#775989) dropped an early exit from the chroot_archives remove step in case the parent mirror chroot and binary parameters are the same and introduced a regression, as with the following live-build now fails when the parent mirror is using a file:/ local apt repository (for example when the build worker is offline and uses a pre-built cache of packages). Example config: lb config --mirror-bootstrap "file:/pkgs" \ --mirror-chroot "file:/pkgs/" \ --mirror-binary "file:/pkgs" \ --parent-mirror-bootstrap "file:/pkgs" \ --parent-mirror-chroot "file:/pkgs/" \ --parent-mirror-binary "file:/pkgs" \ ... with /pkgs being a directory with the packages for the installation and the apt metadata (Packages/Sources/Release). The problem is that, with such a setup, the /pkgs directory is bind mounted inside the chroot as an optimisation in the install step, and umounted as one of the first actions in the remove step for chroot_archives. Before that fix, the script terminated immediately. But now it progresses and at the end it tries to run apt update inside the chroot which will fail since the repository directory has been umounted, and thus the packages and the apt metadata are no longer available, while still being listed in /etc/apt/sources.list. The proposed solution is to umount the local directory at the end of the remove step, rather than at the beginning. Closes: #891206
2018-02-14Fix Check_package invocation in binary_hdd for ntfs-3gRaphaël Hertzog
/sbin/mkfs.nfts -> /sbin/mkfs.ntfs
2018-02-14Add e2fsprogs to Suggests along with mtd-utils, partedRaphaël Hertzog
Closes: #887278