summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-05-01config: only try to load FILE.ARCH and FILE.DIST if non-empty stringsLyndon Brown
to thus avoid trying to load `FILE.` Gbp-Dch: Ignore
2020-05-01config: remove junk config loading codeLyndon Brown
support for this has not existed since v2.0~a24-1 !! until 4d22ca948ad3def3f98fd89d32bf2ba8209460fd (v2.0~a24-1), `PROGRAM` was defined as `PROGRAM="$(basename ${0})"`. then this commit simply got rid of the definition. it then flipped back and forth a bit in a few ways, but always sticking to a simple fixed "live-build" type string after that commit, as it has been ever since. the code removed here has thus been junk since then, and the documentation corrected here out of date since then. the checking of `LB_CONFIG` is also possibly junk, but i know too little about it. it was introduced in v1.0~a43-1 in commit 705a4178e75ffc190acf2fa914a6cd1519fdae87 with a changelog entry of "Centraly evaluate LH_CONFIG for custom configuration file." Gbp-Dch: Short
2020-04-30config: optimise --ignore-system-defaultsLyndon Brown
Gbp-Dch: Ignore
2020-04-30workaround checkbashisms mistakeLyndon Brown
it reported: "possible bashism in scripts/build/binary_loopback_cfg line 284 (should be '.', not 'source')" which is clearly a misidentification. Gbp-Dch: Ignore
2020-04-30syslinux: fix errors re-running under `--force`Lyndon Brown
robustification is required to not just `--force` but recovery from failure or user cancellation. Gbp-Dch: Short
2020-04-30grub2|loopback: fix theme issues for submenusLyndon Brown
also enables greater flexibility for users to override more aspects of theme separate from menu entries, and similarly the initial config details separate from the menu entries. (with the recent change to merge user files with the defaults rather than replace them, users can pick which of these individual components they wish to customise. identical to change as sent in to Kali and accepted by Raphaël. Gbp-Dch: Short
2020-04-30grub2: fix lost pre-prepared files detailLyndon Brown
partly lost in some adjustments that were made to the submitted work, which was focused on restoring the 'start installer' entry. there is no need for dynamic setting of these two `source` imports in the default file, in fact user modifications should also use the fixed import commands in future. note that the old placeholders however remain replaced, which inject precisely this string, for backwards compatibility. Gbp-Dch: Ignore
2020-04-30bootstrap_cache: fix failure conditionLyndon Brown
during testing i encountered an unexpected error resulting from the following condition: - bootstrap was cached - cache of bootstrap packages was empty (from playing with `lb clean`) - installer was not none|live everything works fine up until the main installer script, which comes to an abrupt halt with an error due to the missing cached bootstrap packages that it wants to copy. this situation is easy to unintentionally create, as i managed to do. here we catch the failure condition, correcting for it. this is done by checking for the missing cached packages when restoring the bootstrap from the cache, and skipping this if the packages were missing, thus forcing the bootstrap to be rebuilt. the packages should then be found within the cache, allowing the installer stage to complete successfully. of course the bootstrap stage will only cache the packages if caching is enabled, but if caching is disabled and installer enabled, the config validation will catch that, reporting that problem. Gbp-Dch: Short
2020-04-30init: warn if auto script exists but is not executableLyndon Brown
2020-04-29loopback: tidy formattingLyndon Brown
Gbp-Dch: Ignore
2020-04-29frontend: fix passing along global argsLyndon Brown
trying to use `lb --debug config` for instance did not output debug info unlike `lb config --debug`. Gbp-Dch: Ignore
2020-04-29selinux: fix output consistencyLyndon Brown
install mode was silent when selinux was not enabled, whilst remove mode always output a "Begin unmounting..." message. this makes both modes silent when selinux is not enabled. this also happens to fix an unintended side effect of d79c96232b40fb082233c97ac8d4f75b821ecefe whereby a warning subsequently was always emitted in remove mode when selinux was not in use, which was not ideal. Gbp-Dch: Short
2020-04-29manpages: more formatting fixesLyndon Brown
make variables and options in descriptions bold Gbp-Dch: Ignore
2020-04-29manpages: fix outdated --distribution descriptionLyndon Brown
it does not depend upon --mode, it simply defaults to 'buster'. Gbp-Dch: Ignore
2020-04-29manpages: clarify --breakpointsLyndon Brown
Gbp-Dch: Ignore
2020-04-29manpages: clarify and correct --binary-images descriptionLyndon Brown
including correction of default for all architectures being fat32 not fat16 and the sparc difference no longer being relevant. Gbp-Dch: Ignore
2020-04-29manpages: tiny clarifications and tweaksLyndon Brown
not worth listing the specifics mostly the following though: - "(comma or space separated)" -> "(a comma or space separated list)" - quoting values Gbp-Dch: Ignore
2020-04-29manpages: fix formatting mistakesLyndon Brown
shortoptions also emboldened Gbp-Dch: Ignore
2020-04-29manpages: tiny correctionLyndon Brown
"all (applicable)" -> "all" this needed adjusting after 38a5aed0dcdf71f43cecfadc6e34c659408b6a00 don't want to confuse users Gbp-Dch: Ignore
2020-04-29manpages: fix typosLyndon Brown
"whould" -> "would" "build" -> "built" Gbp-Dch: Ignore
2020-04-29manpages: fix typoLyndon Brown
"bugreport" -> "bug report" i won't bother changing the dates just for this one. Gbp-Dch: Ignore
2020-04-29a couple tiny doc fixesLyndon Brown
Gbp-Dch: Ignore
2020-04-28fix auto file handling regressionLyndon Brown
b4598b234c90b6d1c93bd64166d4aa46ce9388bb mistakenly stopped passing along options to auto files. Gbp-Dch: Ignore
2020-04-26config: remove redundant validation checkLyndon Brown
this is already covered by the check above it Gbp-Dch: Ignore
2020-04-25manpages: fix typoLyndon Brown
"Sor" -> "So" Gbp-Dch: Ignore
2020-04-25Do not overwrite splash.png if the user has provided itRaphaël Hertzog
The unconditional SVG to PNG conversion could overwrite a splash.png provided by the user. Ensure we don't overwrite such a file. But we still remove the SVG file as syslinux is not able to make use of it.
2020-04-25Make librsvg2-bin dependency unconditional for syslinuxRaphaël Hertzog
We do provide a splash.svg by default so the check will always return true unless the user has forked live-build... thus the check is pointless.
2020-04-24syslinux: deduplicate common filesjnqnfe
there are several files of which identical duplicate copies are held in: - share/bootloaders/extlinux - share/bootloaders/pxelinux - share/bootloaders/isolinux - share/bootloaders/syslinux it is a pain to maintain this from a development standpoint, having to copy modified config files into the other directories each time changes are made and mistakes have been made before due to this. this creates a new folder share/bootloaders/syslinux_common and moves them to this new directory. it also expands the binary_syslinux stage to use it, with it now constructing the installed set of bootloader files as follows: 1. copy {LB_DIR}/bootloaders/syslinux_common 2. copy {LB_DIR}/bootloaders/{syslinux|isolinux|extlinux|pxelinux} on top 3. copy config/bootloaders/syslinux_common on top 4. copy config/bootloaders/{syslinux|isolinux|extlinux|pxelinux} on top note, to explain part of the binary_syslinux change, instead of just copying the correct bootloader folder full of the files, we now make the target bootloader specific directory, then copy the contents of source directories into it. Gbp-Dch: Short
2020-04-24Synchronize syslinux menu structure with the grub-pc oneRaphaël Hertzog
* Use same menu labels * Use same hotkeys * Get rid of a nested menu that is not present in grub * Add "menu title" statement to hide the caret of the hotkey (^)
2020-04-24syslinux: fix lack of top level install optionLyndon Brown
0bf9d2d390e2d031ebe344050d8766ba7cd9ad54 expanded the set of install options, whilst also moving them all to a submenu. it has since been raised that this is not actually what is wanted, that having an entry for the most common install option is wanted at the top level, like currently with grub2. this adds such an entry. Gbp-Dch: Short
2020-04-24Use correct variable name to detect removal stepRaphaël Hertzog
Due to this mistake, the helpers were not called in reverse order during the removal step. This lead to things like "apt update" failing because a broken /etc/resolv.conf has been restored before the call to "chroot_archives remove". Gbp-Dch: Ignore
2020-04-24syslinux: fix missing hotkeysLyndon Brown
for some reason the syslinux folder one had these but not the others. probably a result of having four separate copies of the files and this part of the past change to expand the install menus failed to be duplicated. Gbp-Dch: Short
2020-04-24Replace "Help" calls with "Man" and get rid of HelpRaphaël Hertzog
2020-04-24Make "Man" function smarter to also work for "lb --help"Raphaël Hertzog
2020-04-24Improve handling of options allowed for "lb" before the sub-commandRaphaël Hertzog
2020-04-24Revert "frontend: properly handle option processing"Raphaël Hertzog
This reverts commit 6b7c8ed4bf15175299729355f04d60dcbac1aded as it's breaking multi-value space-separated parameters.
2020-04-24config: tidy directory construction and empty directory cleaningLyndon Brown
2020-04-24config: tidy config filesLyndon Brown
2020-04-23frontend: do no try to look for sub-commands in the PATHRaphaël Hertzog
This is a recipe for disaster and it actually already fails when you pass something that looks like a long option as first argument because $(which --long-option) will produce an "Illegal option" string on its standard output. $ lb --debug config --archive-areas "main contrib non-free" Illegal option -- /usr/bin/lb: 54: [: Usage:: unexpected operator E: Unknown command: --debug
2020-04-23chroot_resolve: fix broken network connectivityLyndon Brown
introduced by an issue with the implementation of 91d446d93ed717b1082bb646fbef65cd1cbc25f5 the introduced of that commit caused builds to fail doing `apt-get update` or downloading packages and such. this tweak fixes the problem. Gbp-Dch: Ignore
2020-04-23stagefiles: guard unnecessary chroot removalLyndon Brown
just as most scripts are skipped if their stagefile exists (indicating that they have already been run to completion), including chroot preparation scripts in install mode, this implements the same guard for chroot prep remove mode, such that they exit early if their stagefile does not exist, indicating that the modification has already been removed. (also override-able by --force in the same way). this basically just uses a tweaked copy of Check_stagefile(). Gbp-Dch: Short
2020-04-23config: s/LIVE_IMAGE_TYPE/LB_IMAGE_TYPE/Lyndon Brown
no backwards compatibility hack for reading the old var from existing saved config used because this was previously stored in the alternate format config/build file. Gbp-Dch: Short
2020-04-23config: s/LIVE_IMAGE_NAME/LB_IMAGE_NAME/Lyndon Brown
no backwards compatibility hack for reading the old var from existing saved config used because this was previously stored in the alternate format config/build file. Gbp-Dch: Short
2020-04-23config: s/LIVE_CONFIGURATION_VERSION/LB_CONFIGURATION_VERSION/Lyndon Brown
2020-04-23config: address fixmeLyndon Brown
these options are not internal, they are user controllable Gbp-Dch: Short
2020-04-23config: remove obsolete variableLyndon Brown
2020-04-23config: revert partial format conversionLyndon Brown
back in v4.0~a6-1 a transition process was started to move the live-build config to a new format. the new format was INI style, and required parsing functions to read/write values, compared to the existing format which was just shell script code setting variables. this partial transition is the explanation for the existence of the `New_configuration()` function, and understanding this is important to understanding the purpose of it - it is not in fact intended for creating a new configuration, it is just related to the new config format transition. the positives of the new format were that it was somewhat cleaner looking, while the negative was the terrible relative efficiency. the file `config/build` was created to hold options in this new format. the transition was only ever completed for a handful of config options: - architecture - archive areas and parent archive areas - live image name - live image type a 'configuration version' attribute was also saved, which is not used by anything. the bootstrap-mirror and parent-bootstrap-mirror attributes are pointlessly stored in it seemingly resulting from work done in v4.0~a17-1. (they are also stored in another config file from which the value is actually used). it in fact seems to have been a source of confusion for Raphaël in authoring 44b9b0a6501476de594ce3783cea5df0c141478c, since the new `[parent]-distribution-{chroot|binary}` options it introduced were stored both in `config/bootstrap` and in `config/build`, while only used from the former. i expect, understandably, that he thought that `config/build` was just an information file. Gbp-Dch: Short
2020-04-23move grub-pc specific code to actual grub-pc scriptLyndon Brown
the grub-pc image creation code has no business being in binary_iso, it should be in binary_grub-pc. it should be noted that the binary_iso script did not even have the necessary package check for grub-mkimage, while binary_grub-pc did have it, pointlessly. Gbp-Dch: Short
2020-04-23syslinux: use linux/initrd placeholdersLyndon Brown
enabling improved flexibility for any possible future path changes. Gbp-Dch: Ignore
2020-04-23Add updated directives to enable cryptsetup support in initrdRaphaël Hertzog
This fixes cryptsetup modules not being installed into initrd with warning: > cryptsetup: WARNING: The initramfs image may not contain cryptsetup binaries > nor crypto modules. If that's on purpose, you may want to uninstall the > 'cryptsetup-initramfs' package in order to disable the cryptsetup initramfs > integration and avoid this warning. Thanks-to: Marcel Partap