diff options
author | Lyndon Brown <jnqnfe@gmail.com> | 2020-05-03 01:25:55 +0100 |
---|---|---|
committer | Lyndon Brown <jnqnfe@gmail.com> | 2020-05-03 01:38:17 +0100 |
commit | 7276d0213fd26ee68b62b84080261e29512871e9 (patch) | |
tree | 1854ca370feb001251d286403b5703f2e52ed2a6 | |
parent | 96c797773201f60badcc7dac8b563f1dcf7ef349 (diff) | |
download | vyos-live-build-7276d0213fd26ee68b62b84080261e29512871e9.tar.gz vyos-live-build-7276d0213fd26ee68b62b84080261e29512871e9.zip |
fix usage/help/man bugs
- the definition of $PROGRAM as used in $USAGE strings defined in each
script has been broken for a long time, being simply "lb" when it needs
to be "lb COMMAND".
- `config` changed $PROGRAM to "lb config" thus its output was correct in
this regard unlike everything else, but with the switch to a more
"intelligent" `Man()` function recently, it means that instead of
`man lb config`, what was actually run was `man lb config config`,
which displayed the manpage, then on exiting with `q`, it showed some
sort of index line todo with a "config" search (no exact manpage
match?), for which you had to enter `ctrl+c` to get rid of.
this revises things to fix the issues, minimising change by changing
$PROGRAM to "lb COMMAND", with the frontend overriding this.
Gbp-Dch: Ignore
-rwxr-xr-x | frontend/lb | 1 | ||||
-rwxr-xr-x | functions/arguments.sh | 2 | ||||
-rwxr-xr-x | functions/common.sh | 3 | ||||
-rwxr-xr-x | functions/man.sh | 14 | ||||
-rwxr-xr-x | scripts/build/config | 1 |
5 files changed, 6 insertions, 15 deletions
diff --git a/frontend/lb b/frontend/lb index dc3c93395..4617e3e5a 100755 --- a/frontend/lb +++ b/frontend/lb @@ -15,6 +15,7 @@ set -e [ -n "${LIVE_BUILD}" ] && [ -e "${LIVE_BUILD}/scripts/build.sh" ] && . "${LIVE_BUILD}/scripts/build.sh" || . /usr/lib/live/build.sh # Setting static variables +PROGRAM="${FRONTEND}" DESCRIPTION="Utility to build live systems" HELP="" USAGE="lb {clean|config|build}" diff --git a/functions/arguments.sh b/functions/arguments.sh index 676925858..94e785f0e 100755 --- a/functions/arguments.sh +++ b/functions/arguments.sh @@ -16,7 +16,7 @@ Arguments () local ARGUMENTS local ERR=0 - ARGUMENTS="$(getopt --shell sh --name ${PROGRAM} --longoptions $LONGOPTS --options $SHORTOPTS -- "${@}")" || ERR=$? + ARGUMENTS="$(getopt --shell sh --name "${PROGRAM}" --longoptions $LONGOPTS --options $SHORTOPTS -- "${@}")" || ERR=$? if [ $ERR -eq 1 ]; then Echo_error "invalid argument(s)" diff --git a/functions/common.sh b/functions/common.sh index edfd4ef58..3dbc76b82 100755 --- a/functions/common.sh +++ b/functions/common.sh @@ -10,7 +10,8 @@ PROGRAM_NAME="live-build" -PROGRAM="lb" +FRONTEND="lb" +PROGRAM="${FRONTEND} $(basename "${0}")" VERSION="$(if [ -e ${LIVE_BUILD}/debian/changelog ]; then sed -e 's/.*(\(.*\)).*/\1/; s/^[0-9]://; q' ${LIVE_BUILD}/debian/changelog; else cat /usr/share/live/build/VERSION; fi)" LIVE_BUILD_VERSION="${VERSION}" diff --git a/functions/man.sh b/functions/man.sh index 472d20663..f14858b97 100755 --- a/functions/man.sh +++ b/functions/man.sh @@ -11,18 +11,8 @@ Man () { - local BASENAME - BASENAME=$(basename ${0}) - if command -v man >/dev/null - then - case $BASENAME in - $PROGRAM) - man ${PROGRAM} - ;; - *) - man ${PROGRAM} $(basename ${0}) - ;; - esac + if command -v man >/dev/null; then + man ${PROGRAM} else Echo_warning "man is not installed, falling back to usage output." Usage diff --git a/scripts/build/config b/scripts/build/config index 426838f9f..d2fe66bcf 100755 --- a/scripts/build/config +++ b/scripts/build/config @@ -15,7 +15,6 @@ set -e [ -e "${LIVE_BUILD}/scripts/build.sh" ] && . "${LIVE_BUILD}/scripts/build.sh" || . /usr/lib/live/build.sh # Setting static variables -PROGRAM="lb config" DESCRIPTION="Create configuration for live-build(7)" USAGE="${PROGRAM} [--apt apt|apt-get|aptitude]\n\ \t [--apt-ftp-proxy URL]\n\ |