diff options
Diffstat (limited to 'bin/live-reconfigure')
| -rwxr-xr-x | bin/live-reconfigure | 80 |
1 files changed, 49 insertions, 31 deletions
diff --git a/bin/live-reconfigure b/bin/live-reconfigure index 4e29768..565bdea 100755 --- a/bin/live-reconfigure +++ b/bin/live-reconfigure @@ -1,40 +1,57 @@ #! /bin/sh set -e + export PATH=/usr/bin:/usr/sbin:/sbin:/bin frontend=noninteractive -findcommandinroot() { - ROOT="$1/" - shift - while [ "$#" -ge 1 ]; do - P="$PATH" - while [ "$P" ]; do - D=${P%%:*} - P=${P#*:} - if [ "$D" = "$P" ]; then - P= - fi - if [ -z "$D" ]; then - D=. - fi - if [ -x "$ROOT$D/$1" ]; then - echo "$D/$1" - return 0 - fi - done - shift - done - return 1 +findcommandinroot () +{ + ROOT="$1/" + shift + + while [ "$#" -ge 1 ] + do + P="$PATH" + + while [ "$P" ] + do + D=${P%%:*} + P=${P#*:} + + if [ "$D" = "$P" ] + then + P= + fi + + if [ -z "$D" ] + then + D=. + fi + + if [ -x "$ROOT$D/$1" ] + then + echo "$D/$1" + return 0 + fi + done + + shift + done + + return 1 } -runcommandinroot() { - C=$(findcommandinroot "$1" "$2") - ROOT="$1" - shift - shift - [ -n "$C" ] && chroot "$ROOT" "$C" "$@" +runcommandinroot () +{ + C=$(findcommandinroot "$1" "$2") + ROOT="$1" + + shift + shift + + [ -n "$C" ] && chroot "$ROOT" "$C" "$@" } root="$1" @@ -42,9 +59,10 @@ package="$2" version=$(runcommandinroot "$root" dpkg-query -W --showformat='${Version}' "$package" 2>/dev/null) || version="" -if [ -z "$version" ]; then - echo >&2 "$0: package '$package' is not installed" - exit 0 +if [ -z "$version" ] +then + echo >&2 "$0: package '$package' is not installed" + exit 0 fi runcommandinroot "$root" dpkg-reconfigure -fnoninteractive --no-reload "$package" |
