summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLyndon Brown <jnqnfe@gmail.com>2020-05-03 01:25:55 +0100
committerLyndon Brown <jnqnfe@gmail.com>2020-05-03 01:38:17 +0100
commit7276d0213fd26ee68b62b84080261e29512871e9 (patch)
tree1854ca370feb001251d286403b5703f2e52ed2a6
parent96c797773201f60badcc7dac8b563f1dcf7ef349 (diff)
downloadvyos-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-xfrontend/lb1
-rwxr-xr-xfunctions/arguments.sh2
-rwxr-xr-xfunctions/common.sh3
-rwxr-xr-xfunctions/man.sh14
-rwxr-xr-xscripts/build/config1
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\