summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-03-17stagefiles: further robustify with auto filenamesLyndon Brown
as suggested by Raphaƫl rather than have fixed stagefile filename strings at all in the scripts, use `$(basename $0)` to use the name of the script (which is the same for almost all cases anyway, and the stage files are supposed to be almost exclusively unique per-script). we can thus simplify things by determining the filename for most use cases within the functions themselves. this does change the file used by a couple of scripts, affecting backwards compatibility of executing live-build upon an existing partially or fully completed build: - binary_grub-pc used "binary_grub" - chroot_includes used "includes.chroot" care had to be taken for the following cases: - there are some cases like bootstrap_cache, source_debian and bootstrap_debootstrap which are dealing with more than one file, and/or otherwise a filename that is not specific to the script itself exactly, or should not be based upon its name. - some cases like chroot_cache, bootstrap_cache and chroot_install-packages need to append something to the end of the name depending upon which pass/action mode the script is being executed with. - furthermore in the bootstrap_cache case one of the filenames is used within the bootstrap_debootstrap and thus needs very careful handling to be certain that a change in filename of bootstrap_cache does not break bootstrap_debootstrap. Gbp-Dch: Short
2020-03-17stagefiles: simplify & robustifyLyndon Brown
- avoid all need to pass ".build/" path in stage file names into the functions - add a helper to remove a stage file (required to complete the above properly) - avoid duplicating filenames within scripts which makes them prone to mistakes (some instances of which I've actually encountered and had to fix) Gbp-Dch: Short
2020-03-17exit: fix missing local scopeLyndon Brown
missed in c55eb8a0c3ca5b8ed1081e7eb8a423563288fb58 Gbp-Dch: Ignore
2020-03-17manpages: correct date & versionLyndon Brown
Gbp-Dch: Ignore
2020-03-16syslinux: apply kernel version filtering logic to multi-flavour kernel scenariosjnqnfe
2020-03-16syslinux: use more dynamic memtest menu config filejnqnfe
Fixes the following - Correct version (memtest86/memtest86+) shown instead of fixed 'memtest86+' text - Ensure correct directory path always used by using replaceable placeholder Gbp-Dch: Short
2020-03-16syslinux: add memtest menu entry only if including memtestjnqnfe
2020-03-16syslinux: add install menu entries only if including installerjnqnfe
2020-03-16syslinux: expand list of install optionsjnqnfe
2020-03-16fix another wrong stage file filenameLyndon Brown
2020-03-16use local scope for private function varsLyndon Brown
all vars affected have been carefully checked to be quite certain that they are definitely local where variable is assigned the return value of a function/command, the local "declaration" is deliberately done on a separate line, since `local FOO` is actually treated itself as a command rather than a declaration; will thus always cause $? to be zero, and thus if done on the same line as such an assignment can not only clobber $? but in doing so unintentionally blocks failure of a command from triggering the expected exit from having `set -e`. also, from testing, i have found that when assigning "${@}" this must be done on a separate line confusingly as otherwise an error occurs. Gbp-Dch: Short
2020-03-16add build & build stage success messagesLyndon Brown
2020-03-16bootloaders: add install with speech synthesis menu entriesjnqnfe
Following the official Debian install disks Gbp-Dch: Short
2020-03-16grub1: refactor install menu creationjnqnfe
This is necessary as the simplest solution to allow a single speech-synth entry to be added. Gbp-Dch: Short
2020-03-16syslinux: fix duplicate shortcut useLyndon Brown
2020-03-16syslinux: changed 'build' to 'built' in splashjnqnfe
Appears before a timestamp which reflects when the image was built, so 'built' is more correct than 'build' here. Gbp-Dch: Short
2020-03-16syslinux: fix shortcut caret appearing in menu entriesjnqnfe
also fixes the mistaken assignment of the same shortcut for both entries in live.cfg.in Gbp-Dch: Short
2020-03-16syslinux: remove replacement of unused label in menu configsjnqnfe
2020-03-16grub1: fix consistencyjnqnfe
Use the normal appended-params directly in `Grub_live_entry` calls like the failsafe ones. Gbp-Dch: Short
2020-03-16grub1/grub2/loopback: fix missing delimiter in menu kernel parameter listsjnqnfe
The '---' delimiter should appear before the final 'quiet' parameter (which is used by the debian installer I believe). This delimiter is added by live-build in syslinux configs, and is present in both grub2 and syslinux configs in an official debian 7.7 disc image, suggesting strongly that live-build grub/grub2 menu creation code is in the wrong here by missing it. update: this commit previously used -- as was correct at the time, and has since been updated to use --- per #775128; which was previously tackled in a separate later commit. the switch to --- was already done for syslinux (which was not missing the delimiter unlike grub) in ba6b9adeff634845a9ab7cbd5218257a7aa254ab Gbp-Dch: Short Closes: #775143
2020-03-16grub1/grub2/loopback: fix order of quiet kernel parameters in menusjnqnfe
I believe that the `quiet` parameter is meant for d-i not the kernel and thus should be given on the end after a delimiter, as done with syslinux. Here we switch the order to move it to the end. The addition of the missing delimiter will be done in a followup commit. (See #775143) Gbp-Dch: Short
2020-03-16grub2/loopback: fix highlight readabilityjnqnfe
Current splash makes it very difficult to read menu entries. Black as a background color is actually interpreted as transparent, so switching to something else so the highlighted menu entry can be read more easily. Gbp-Dch: Short
2020-03-16grub2/loopback: fix misapplication of quiet kernel parameterjnqnfe
When building grub2 menu entries the quiet param (meant for d-i) was excluded from the rescue menu entries instead of expert. This is the opposite to what is done in the following: - Menu entries seen in official debian 7.7 disc images (grub2 and syslinux configs) - Menu entries created for grub (legacy) - Menu entries created for syslinux The evidence strongly suggests that the grub2 menu creation was in the wrong! (See #775143) Gbp-Dch: Short
2020-03-16grub1: fix wrong variable namejnqnfe
2020-03-16split stdout & stderr auto colouringLyndon Brown
thus for some reason if one is connected to a tty and the other a file, we still get colour in the tty by default. in terms of options, --color and --no-color override both, no granular ones added since it's not worth it imo. this is backwards compatible with custom configs setting `_COLOR`. it could be argued that setting $_COLOR to "false" for the auto non-tty cases is redundant, which it is, but it doesn't hurt to do so; it ensures that if anything (inc. 3rd-party hooks and such) rely on it that it remains correct; and ensures that if anything in the future mistakenly uses $_COLOR instead of $_COLOR_OUT|$_COLOR_ERR that at least that will only be broken for the use case of only one of stdout|sdterr being a tty. Gbp-Dch: Ignore
2020-03-16turn on colour by defaultLyndon Brown
...when stdout+stderr connected to a tty (as opposed for example to being piped to a log file) very helpful to have colour such that the red/yellow of errors/warnings can draw the eye to problems. Gbp-Dch: Short
2020-03-16allow turning off colourLyndon Brown
necessary to give control when colour is default enabled Gbp-Dch: Short
2020-03-16installer: fix double slash in urlsLyndon Brown
2020-03-16installer: expand debugging outputLyndon Brown
2020-03-16installer: move an exclude removal outside of loopLyndon Brown
2020-03-16installer: tweak temp shell script constructionLyndon Brown
Gbp-Dch: Ignore
2020-03-16installer: dedup long pathsLyndon Brown
2020-03-16installer: tidy package listsLyndon Brown
`DI_PACKAGES` does not need to include `DI_REQ_PACKAGES` so long as we pass the latter to apt in the one case where it was not already being given it. in fact with it including that sub-list meant that in the other case where it was being given to apt, it actually just resulted in duplication. Gbp-Dch: Short
2020-03-16installer: misc small tweaksLyndon Brown
Gbp-Dch: Ignore
2020-03-16installer: clear large string once done withLyndon Brown
Gbp-Dch: Ignore
2020-03-16installer: restore udeb existence checkLyndon Brown
this was removed as part of b54bdd7fb18d32178094e8c4e1493b6121044c11 but is actually still needed. Gbp-Dch: Ignore
2020-03-16installer: fix broken loopLyndon Brown
Gbp-Dch: Ignore
2020-03-15fix wrong descriptionLyndon Brown
Gbp-Dch: Ignore
2020-03-15fix missing stage descriptionsLyndon Brown
Gbp-Dch: Ignore
2020-03-15source: properly fix _apt permissions warningLyndon Brown
the chown command needed running within the chroot, since apt-get is being run within the chroot and _apt might have a different UID there than on the host. Gbp-Dch: Short Closes: #953957
2020-03-15CI: deploy from the build stage, rather than rebuilding from scratchLuca Boccassi
No point in doing everything twice Gbp-Dch: ignore
2020-03-15Add autopkgtest: default image buildLuca Boccassi
2020-03-15Add grub EFI support for armhf arch.Steven Shiau
2020-03-13hide mountpoints from nautilusLyndon Brown
when building within a home directory, as /proc, /sys, etc are mounted and unmounted into the chroot at various points in the build, corresponding entries appear and disappear within the side panel of nautilus. this is obviously undesirable. use of `-o x-gvfs-hide` resolves this for the most part. i still see items occasionally pop up and having spent some time experimenting, i'm putting it down to buggy behaviour on the part of nautilus. (aside from those appearing when debootstrap is running - debootstrap also needs this fix). Gbp-Dch: Short
2020-03-13fix comment typoLyndon Brown
Gbp-Dch: Ignore
2020-03-13exit: don't convert numeric exit code to stringLyndon Brown
2020-03-13functions/bootloaders: tidy and simplifyLyndon Brown
2020-03-13locks: tidy lock acquisitionjnqnfe
Combine the check+create done in each script. (The original functions are still callable as before, but a new combined `Aquire_lockfile` function can be called instead, as now used). Note, a further simplification could be done in removing the passing of the lock filename in as a parameter since every use of the functions is with ".lock". The lock functions already have a fallback to ".build/lock" though. Checking the history, the fallback used to be for a system wide lock, which was then replaced with this config-tree specific one. As long as that is not used implicitly by 3rd-party hooks then surely we are free to change the fallback to ".lock" and further remove passing in a name as a param...? history: db5d2b0dcdae96e712661605e17bc9875e224f9f 0aa8289a3773fd8a3885090b72622c2f95ab099c Gbp-Dch: Short Closes: #952918
2020-03-13fix colouring of notice type message prefixesLyndon Brown
previously this was white+bold. the white aspect was dropped since this would not be sensible for users with a white background for their terminal. bold however does not have any effect for me at least so effectively there is no highlighting at all. here we reintroduce a colour, one that will work for both black and white backgrounds of course. purple looks good to me - significantly different to that used for errors and warnings, and works well with command highlighting (as enabled separately).
2020-03-13exit: ensure an appropriate message is printed on unexpected exitLyndon Brown
if a script exits due to a failure and `set -e`, we should ensure that an error message is printed to be clear to the user that something actually went wrong. similarly it would be good to print a suitable message should the user cancel with ctrl+c for instance. Gbp-Dch: Short