build: store SOURCE_DATE_EPOCH in JSON info files
[openwrt/openwrt.git] / scripts / env
index 563f39c1cfb3a66258e06edb2e6c1aeac6b96e09..df8b486bfece2a3385400a241e902a20915b717a 100755 (executable)
@@ -22,7 +22,7 @@ Commands:
 Options:
 
 EOF
-       exit ${1:-1}
+       exit "${1:-1}"
 }
 
 error() {
@@ -42,7 +42,7 @@ ask_bool() {
                local VAL
 
                echo -n "$* ($defstr): "
-               read VAL
+               read -r VAL
                case "$VAL" in
                        y*|Y*) val=0;;
                        n*|N*) val=1;;
@@ -57,7 +57,7 @@ env_init() {
        if [ -z "$CREATE" ]; then
                [ -d "$ENVDIR" ] || exit 0
        fi
-       command -v git || error "Git is not installed"
+       command -v git >/dev/null || error "Git is not installed"
        mkdir -p "$ENVDIR" || error "Failed to create the environment directory"
        cd "$ENVDIR" || error "Failed to switch to the environment directory"
        [ -d .git ] || { 
@@ -73,7 +73,7 @@ env_init() {
 }
 
 env_sync_data() {
-       [ \! -L "$BASEDIR/.config" ] && [ -f "$BASEDIR/.config" ] && mv "$BASEDIR/.config" "$ENVDIR"
+       [ ! -L "$BASEDIR/.config" ] && [ -f "$BASEDIR/.config" ] && mv "$BASEDIR/.config" "$ENVDIR"
        git add .
        git add -u
 }
@@ -147,7 +147,7 @@ env_clear() {
        else
                rm -rf "$BASEDIR/files" "$BASEDIR/.config"
        fi
-       cd "$BASEDIR"
+       cd "$BASEDIR" || exit 1
        rm -rf "$ENVDIR"
 }
 
@@ -195,7 +195,7 @@ env_new() {
        git checkout -b "$1" "$from"
        if [ -f "$BASEDIR/.config" ] || [ -d "$BASEDIR/files" ]; then
                if ask_bool 1 "Do you want to start your configuration repository with the current configuration?"; then
-                       if [ -d "$BASEDIR/files" ] && [ \! -L "$BASEDIR/files" ]; then
+                       if [ -d "$BASEDIR/files" ] && [ ! -L "$BASEDIR/files" ]; then
                                mkdir -p "$ENVDIR/files"
                                shopt -s dotglob
                                mv "$BASEDIR/files/"* "$ENVDIR/files/" 2>/dev/null