summaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
2020-04-01bootstrap_cache: validate action paramLyndon Brown
2020-03-23move auto colouring decisionLyndon Brown
...from the `Set_config_defaults` function, to being done directly in `build.sh` (the component which is also responsible for loading functions, loaded at the start of every script, including the front end). thus the colouring decision will now correctly... - apply to the frontend, such as to the 'root privileges needed' error, the 'no such script' error, and the command name colouring that I want to add (the most significant issue). - apply to error messages generated by the `Arguments` and `Read_conffiles` functions, which are called before `Set_config_defaults` by scripts. as things were, due to the comparison with "false", colour would _always_ be used in these places (unless _COLOR_ERR=false or _COLOR_OUT=false wrt. the new command highlight, were set in the environment when executing a script throught the frontend). this would not be a problem for normal terminal use of course, besides being inconsistent where color were turned off, but would be a bit of a problem if redirected to a file. a re-evaluation of _COLOR is performed in `Set_config_defaults` to adjust _COLOR_OUT and _COLOR_ERR where necessary, to correctly respond to _COLOR being set in saved config files (disabled by default but a user could always enable), after the point of config files being loaded. _COLOR can still be controlled from the environment just as before, overriding both _COLOR_OUT and _COLOR_ERR. note that this does not address the fact that --color|--no-color do not work in the frontend and thus will not impact the colouring of to-be-introduced command highlighting. this needs to be addressed separately. Gbp-Dch: Short
2020-03-23args: fix a typoLyndon Brown
Gbp-Dch: Ignore
2020-03-22bootloaders: remove old "video=vesa:ywrap,mtrr" kernel param, as done in d-ijnqnfe
d-i removed this in commit 0917b2dde3ff73a204d27dd2f2fffc8a41175ddd Note: There was inconsistency between grub and syslinux in use of this, with syslinux not having it on graphical rescue and auto modes while grub entries did. The patch to fix that has been dropped since we're removing it everywhere anyway. (#395040) Gbp-Dch: Short
2020-03-20binary_iso: remove duplicate xorriso paramLyndon Brown
-J is already in the generic set defined at the start Gbp-Dch: Short
2020-03-20archives: param is requiredLyndon Brown
Gbp-Dch: Ignore
2020-03-20archives: clarify varLyndon Brown
Gbp-Dch: Ignore
2020-03-20archives: explicitly pass along _PASS to Create_apt_sources_listLyndon Brown
Gbp-Dch: Ignore
2020-03-20strip progress-linux distro hacksLyndon Brown
progress-linux, as discussed in MR #142 ([1]) is a little known distro, which appears to be little more than a personal project of the original author of live-build. given that, the expense of maintaining all of these old hacks for it cannot be justified. it is not known whether or not live-build is even used with respect to it since the author abandoned live-build some years ago. also, at least one past change in live-build possibly broke progress-linux compatibility anyway, which would have required progress-linux users of live-build to use a custom progress-linux config, or a progress-linux fork of live-build, and there is no knowing how much of the hacks in this "upstream" codebase any user of progress-linux currently relies upon. and again, progress-linux appears to just be a personal project of Daniel's, with afaik very little userbase. (Daniel seems to be the only developer working on the project which speaks to how small it is). [1]: https://salsa.debian.org/live-team/live-build/-/merge_requests/142 Gbp-Dch: Short
2020-03-20grub: remove old and unused splash codejnqnfe
The LB_GRUB_SPLASH variable is populated by the --grub-splash param but is not actually used for anything. Gbp-Dch: Short
2020-03-20config: fix backwards compatibility breakLyndon Brown
when the --fdisk and --losetup options were removed, the entries in the getopt option list should have remained for backwards compatibility such that the usage warnings can kick in instead of unknown option errors. Gbp-Dch: Ignore
2020-03-20config: fix incomplete rename of --architecturesLyndon Brown
missed the getopt data update in 8b109ffb96282a6dd1aa5d61aa935bcba69c56f1 Gbp-Dch: Ignore
2020-03-17stagefiles: s/Require_stagefile/Require_stagefiles/Lyndon Brown
this function takes one or more required stage fileS _plural_, and exits if any are missing (or at least it does now after the refactor). let's rename it to make things more clear Gbp-Dch: Short
2020-03-17stagefiles: fix doc mistakeLyndon Brown
missed in final revision of fe9195b59c9647598ecea00900edfe2678bddcac Gbp-Dch: Ignore
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-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-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: 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 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-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-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-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 instances of bad stagefile creation circumstancesLyndon Brown
theres no point in creation of stagefiles being kept within a conditional block of work. if the script completes with success then it should create its stagefile to thus avoid repeating any work that it might have done should it get re-run without being forced. Gbp-Dch: Short