summaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
2021-03-29Removed filesystem.size for squashfs images.Roland Clobus
See for more details https://lists.debian.org/debian-live/2021/03/msg00008.html
2021-03-21Fixed handling of checksums in combination with the d-i installer.Roland Clobus
1) lb config rejected multiple checksum types 2) When using the installer, cdrom-checker requires a md5 checksum file, use 'Check the integrity of the installation media' in the installer 3) The comments in the first lines of the checksum files caused cdrom-checker to fail the integrity of the image
2021-02-18No mksquashfs progress bar if stdin is not a terminalRyan Finnie
Explicitly documented updated conditional, as "-t" is not a commonly seen shell test.
2021-02-17Use --apt-http-proxy/--apt-ftp-proxy for debootstrapRyan Finnie
2021-02-16mkfs.msdos needs at most 32 bits for the -i argument.Roland Clobus
Use the hexadecimal version of SOURCE_DATE_EPOCH, limited to the lower 32 bits
2021-02-14Fix build on architecture without syslinuxLuca Boccassi
Don't run xorriso with -isohybrid-mbr if LB_BOOTLOADER_BIOS is not set to syslinux Closes: #982746
2021-02-10lilo is not available any more in Bullseye (and newer), see #973850Roland Clobus
2021-02-10The local LIVE_BUILD wins over the system live-build for the list of udeb ↵Roland Clobus
exclusions
2021-02-10The local LIVE_BUILD wins over the system live-build for the list of udeb ↵Roland Clobus
inclusions. Only copy when the distribution is known
2021-01-30binary_syslinux: Do not modify grub theme.txt if grub/splash.png existsRyan Finnie
If grub/splash.png exists, assume the configuration editor intends to have a grub-specific splash.png, and do not modify theme.txt. But if syslinux has the only known splash.png, use it for both syslinux and grub. (This allows for a hybrid image where the grub side can have e.g. a 16:9 1920x1080 splash.png which gets grub is capable of automatically scaling, while the syslinux side has a 640x480 splash.png which effectively must be this fixed size.)
2021-01-21Fix a small info messageRaphaël Hertzog
2021-01-17Bugfix: do not create /dev/lock and /dev/lock-frontendRoland Clobus
2021-01-16binary_rootfs stage: slightly lower mksquashfs nice levels (19 -> 17)Marcel Partap
.. so its priority is low, but above BOINC grid computing (19).
2021-01-16binary_rootfs stage: disable mksquashfs progress bar only in quiet modeMarcel Partap
2021-01-15binary_rootfs stage: give custom MKSQUASHFS_OPTIONS precedenceMarcel Partap
courtesy of sed -i -r '/MKSQUASHFS_OPTIONS/ s/"(\$\{.*\}) ([^"]+)"/"\2 \1"/' scripts/build/binary_rootfs
2021-01-15Apply SOURCE_DATE_EPOCH to newly generated files and create a logRoland Clobus
2021-01-15Set timestamp in embedded files of the installerRoland Clobus
2021-01-15Set timestamp embedded in EFI filesRoland Clobus
2021-01-15Use SOURCE_DATE_EPOCH for the partition-id of /boot/grub/efi.imgRoland Clobus
2021-01-15Use SOURCE_DATE_EPOCH for the partition-id of /efi.imgRoland Clobus
2021-01-15Use SOURCE_DATE_EPOCH for 'now' in .disk/infoRoland Clobus
2021-01-15Use SOURCE_DATE_EPOCH for 'now' in the boot splash imageRoland Clobus
2021-01-15SOURCE_DATE_EPOCH is always setRoland Clobus
2021-01-13bootstrap_debootstrap: change debootstrap path to /usr/sbin/debootstrapJan Kot
As we're checking if debootstrap is present on the host machine, we should look for it in /usr/sbin and not ./bin
2021-01-12Don't fail if one of the package lists expands to an empty listRaphaël Hertzog
When a package lists contains only packages protected by a test that doesn't match for the current run, then Expand_package_list outputs nothing and the following "grep -v" fails because it has not filtered anything. Avoid this by protecting the "grep -v" call with "|| true".
2021-01-11Preserve timestampsRoland Clobus
2021-01-01Preserve timestampsRoland Clobus
2020-12-13Delay resolving the timestamp for the ISO volume to the moment the ISO-image ↵Roland Clobus
is created
2020-12-13Bugfix: use minutes instead of month in the time of the modification date fieldRoland Clobus
2020-12-07Bugfix: use minutes instead of month in the time of the modification date fieldRoland Clobus
2020-11-24binary_iso: Execute mkdir binary/.disk before writing to itMatthijs Kooijman
Before commit 9f3e5fe8d (Fix the way the .disk/mkisofs file is created) all these commands (`mkdir`, write to `binary/.disk/mkisofs` and `xorriso`) were in the same `binary.sh` script. Since that commit, the write was extracted, to prevent issues with quoting, but the related mkdir was left in `binary.sh`. This means that the write is now executed first, and the `mkdir` only afterwards, making the `mkdir` quite pointless. In practice, this did not break becaue binary_disk also does the same `mkdir` and runs before `binary_iso`, but if one runs commands manually and skips `binary_iso`, then this does break. Even though this is not really a supported usecase, just move the mkdir outside of `binary.sh`, so it runs *before* the write again as intended.
2020-11-18Bugfix: LB_DERIVATIVE was used the wrong way aroundRoland Clobus
2020-10-27Added the option to include files before and after package installationThore Sommer
Moved includes.chroot to includes.chroot_after_packages and added includes.chroot_before_packages. includes.chroot does still work as before. We also now use rsync for copying files if it is installed. This improves runtime and space consumption for large includes. Gbp-Dch: Short Closes: #927128
2020-10-12Option for using systemd-nspawn instead of chroot for hooks.Thore Sommer
Installation of flatpaks doesn't work with normal chroots. This patch enables support for using systemd-nspawn in hooks. Gbp-Dch: Short Closes: #965953
2020-10-12Add option to change compression algorithm and level for squashfs.Thore Sommer
2020-10-12For 32bit UEFI secure boot, the package name is grub-efi-ia32-signedMarcel Partap
avoids spitting out warning > [2020-06-07 22:30:32] lb binary_grub-efi > P: Begin preparing Grub based EFI support... > Reading package lists... > Building dependency tree... > Reading state information... > Package grub-efi-amd64-signed is not available, but is referred to by another package. > This may mean that the package is missing, has been obsoleted, or > is only available from another source > > E: Package 'grub-efi-amd64-signed' has no installation candidate > W: UEFI Secure Boot disabled due to missing signed Grub/Shim.
2020-10-08The sed -e ‘d’ commands with ‘#’ will not work, a slash is needed, ↵Roland Clobus
fix for 7ffd2288d944840937f556bd56703ba381f4edcc (2015-01-15) and 578dbee516a370935e1b2e49205c524370e1f8d0 (2015-01-29)
2020-09-14chroot_apt: fixed adding Pin-Priority (broken in da1fab11)Victor Gavro
Fixes !201
2020-06-01Enable arm64 for binary_grub_cfgRyan Finnie
Without modification, this produces a usable config for arm64 grub-efi iso-hybrid. Tested on qemu arm64 + serial console.
2020-05-30Add initial ppc64el supportRyan Finnie
Note that this does not include grub-ieee1275 support so the images will not be bootable, but it's a first step and produces ISOs without error.
2020-05-15clean: handle all common optionsLyndon Brown
support for options like `--debug` was missing. Gbp-Dch: Short
2020-05-15clean: refactorLyndon Brown
this simplifies things to avoid the messy recursion. it is also a necessary step to implementing handling of common options like --debug. we need to process all options to decide how to approach doing things (e.g. with debug messages to be output or not) before actually performing any work, in order for options like --debug to be reacted to properly. also, as things were, options like `--debug` were not being passed along in the recursive executions, while now that is no longer an issue. the order of file/folder deletions for `--all`|`--purge`|`--remove` actions is slightly changed here, but i don't see any issue with that and it's cleaner to not preserve that. Gbp-Dch: Short
2020-05-05Revert "config: catch and report unexpected arguments"Lyndon Brown
This reverts commit 665372c19d7f54b5cfb92aaf313b7df9570f6191. the kali test failed due to their script using a hack of passing along a custom option after an early terminator through to their auto/config file. the change implemented here was valuable, but i'll have to look into revising things to work with what Kali is doing. Gbp-Dch: Ignore
2020-05-05s/Remove_package/Remove_packages/Lyndon Brown
it removes one or more, so should be plural for clarity Gbp-Dch: Short
2020-05-05s/Install_package/Install_packages/Lyndon Brown
it installs one or more, so should be plural for clarity Gbp-Dch: Short
2020-05-05make temporary state of installed tools recoverableLyndon Brown
some scripts temporarily install packages to accomplish some work before then removing them. the list of packages installed is kept in memory in a variable. a weakness of this design is that if a failure occurs or the user cancels, and then following this the user re-runs `lb build`, letting it try to pick up and recover from where it left off, that list of packages that had been installed is lost, resulting in those packages that were installed then being a permanent part of the chroot. here we fix this weakness by backing up the list to a file, which is always read from on removal. thus in a recovery situation, any packages still installed from a situation like that just described, will be removed upon the next use of `Remove_package()`. this is not perfect, since we are having to wait for opportunistic execution of the remove function. we need to find a suitable place for the `Cleanup_temp_packages()` function to be used. - doing so in `Init_config_data()` would not be suitable because we don't hold the lock when that's run, even if we ignored the hijacking of that function for taking such action... - doing it in `Exit()` doesn't seem a good fit either. - putting it explicitly in every build script just seems a little messy... perhaps a local exit trap like for removing the lock...? note that `binary_rootfs` skips running the remove function after installing tooling, since it just throws the wrapper chroot away, which then leaves the file around with stale data for the next remove instance to pick up, which then does not actually remove it because it's not installed. this is not ideal either... perhaps the optimisation should be removed from that script? Gbp-Dch: Short
2020-05-05config: catch and report unexpected argumentsLyndon Brown
after handling arguments, catch and report any remaining "non-option" arguments. for instance users could make the basic mistake of using `lb config --bootloaders syslinux grub-efi`, i.e. failing to quote the multiple bootloaders (i actually encountered a user doing this who swore that "it just worked"). catching and reporting such mistakes could be valuable to users. previous behaviour: ``` $ lb config --bootloaders syslinux grub-efi P: Updating config tree for a debian/buster/amd64 system P: Symlinking hooks... ``` new behaviour: ``` $ lb config --bootloaders syslinux grub-efi [2020-05-05 18:56:07] lb config --bootloaders syslinux grub-efi E: Unexpected argument found: grub-efi ``` Gbp-Dch: Short
2020-05-05debootstrap: fix wrong param for Check_package callLyndon Brown
debootstrap must obviously exist in the host. we thus must pass 'host' not 'chroot' such that a warning about needing to install it on your host system is output, rather than it being added to a list of packages to be installed, which never occurs in this script. Gbp-Dch: Ignore
2020-05-04rename binary_loopback_cfg to binary_grub_cfgLyndon Brown
when loopback support was introduced, it initially duplicated the code for generating a grub2 config, before the duplicated code was removed from the grub-pc script, effectively thus moving grub config generation to the loopback feature script. grub-efi support was added after this. this results in a misleading filename, since the `binary_loopback_cfg` script is essential for use of grub-pc|grub-efi, and actually only has a single line of code on top that's needed for adding actual loopback support on top. (when grub-pc and grub-efi are not used, the entire script is still needed for loopback support to work). so here we rename it to make better sense, and correct/clarify bits of documentation. Gbp-Dch: Short
2020-05-04binary_iso: properly handle multiple bootloadersLyndon Brown
with LB_BOOTLOADER_BIOS and LB_BOOTLOADER_EFI introduced, we can simplify and correct things here. previously it was possible for more than one of each type to be added. Gbp-Dch: Short