diff --git a/build-docker.sh b/build-docker.sh index 45b0d5d..c969ba2 100755 --- a/build-docker.sh +++ b/build-docker.sh @@ -1,11 +1,10 @@ #!/bin/bash -e -BUILD_OPTS="$@" +BUILD_OPTS="$*" DOCKER="docker" set +e -$DOCKER ps >/dev/null 2>&1 -if [ $? != 0 ]; then +if ! $DOCKER ps >/dev/null 2>&1; then DOCKER="sudo docker" fi if ! $DOCKER ps >/dev/null; then @@ -23,8 +22,11 @@ while getopts "c:" flag do case "$flag" in c) + # shellcheck disable=SC1090 source "$OPTARG" ;; + *) + ;; esac done @@ -53,7 +55,7 @@ fi $DOCKER build -t pi-gen . if [ "$CONTAINER_EXISTS" != "" ]; then - trap "echo 'got CTRL+C... please wait 5s'; $DOCKER stop -t 5 ${CONTAINER_NAME}_cont" SIGINT SIGTERM + trap 'echo "got CTRL+C... please wait 5s"; $DOCKER stop -t 5 ${CONTAINER_NAME}_cont' SIGINT SIGTERM time $DOCKER run --rm --privileged \ --volumes-from="${CONTAINER_NAME}" --name "${CONTAINER_NAME}_cont" \ pi-gen \ @@ -62,7 +64,7 @@ if [ "$CONTAINER_EXISTS" != "" ]; then rsync -av work/*/build.log deploy/" & wait "$!" else - trap "echo 'got CTRL+C... please wait 5s'; $DOCKER stop -t 5 ${CONTAINER_NAME}" SIGINT SIGTERM + trap 'echo "got CTRL+C... please wait 5s"; $DOCKER stop -t 5 ${CONTAINER_NAME}' SIGINT SIGTERM time $DOCKER run --name "${CONTAINER_NAME}" --privileged \ pi-gen \ bash -e -o pipefail -c "dpkg-reconfigure qemu-user-static && @@ -76,7 +78,7 @@ ls -lah deploy # cleanup if [ "$PRESERVE_CONTAINER" != "1" ]; then - $DOCKER rm -v $CONTAINER_NAME + $DOCKER rm -v "$CONTAINER_NAME" fi echo "Done! Your image(s) should be in deploy/" diff --git a/build.sh b/build.sh index 5c3539f..22d3a90 100755 --- a/build.sh +++ b/build.sh @@ -1,5 +1,5 @@ #!/bin/bash -e -# shellcheck disable=SC2119,SC1091 +# shellcheck disable=SC2119 run_sub_stage() { log "Begin ${SUB_STAGE_DIR}" @@ -102,7 +102,7 @@ run_stage(){ ./prerun.sh log "End ${STAGE_DIR}/prerun.sh" fi - for SUB_STAGE_DIR in ${STAGE_DIR}/*; do + for SUB_STAGE_DIR in "${STAGE_DIR}"/*; do if [ -d "${SUB_STAGE_DIR}" ] && [ ! -f "${SUB_STAGE_DIR}/SKIP" ]; then run_sub_stage @@ -124,6 +124,7 @@ fi if [ -f config ]; then + # shellcheck disable=SC1091 source config fi @@ -132,8 +133,11 @@ do case "$flag" in c) EXTRA_CONFIG="$OPTARG" + # shellcheck disable=SC1090 source "$EXTRA_CONFIG" ;; + *) + ;; esac done @@ -206,8 +210,8 @@ log "Begin ${BASE_DIR}" STAGE_LIST=${STAGE_LIST:-${BASE_DIR}/stage*} -for STAGE_DIR_ in $STAGE_LIST; do - STAGE_DIR=`realpath "${STAGE_DIR_}"` +for STAGE_DIR in $STAGE_LIST; do + STAGE_DIR=$(realpath "${STAGE_DIR}") run_stage done diff --git a/export-noobs/00-release/files/partition_setup.sh b/export-noobs/00-release/files/partition_setup.sh index e41a9d3..0f45f20 100644 --- a/export-noobs/00-release/files/partition_setup.sh +++ b/export-noobs/00-release/files/partition_setup.sh @@ -3,6 +3,7 @@ set -ex +# shellcheck disable=SC2154 if [ -z "$part1" ] || [ -z "$part2" ]; then printf "Error: missing environment variable part1 or part2\n" 1>&2 exit 1 @@ -17,7 +18,8 @@ sed /tmp/1/cmdline.txt -i -e "s|root=[^ ]*|root=${part2}|" sed /tmp/2/etc/fstab -i -e "s|^[^#].* / |${part2} / |" sed /tmp/2/etc/fstab -i -e "s|^[^#].* /boot |${part1} /boot |" -if [ -z $restore ]; then +# shellcheck disable=SC2154 +if [ -z "$restore" ]; then if [ -f /mnt/ssh ]; then cp /mnt/ssh /tmp/1/ fi diff --git a/stage2/02-net-tweaks/01-run.sh b/stage2/02-net-tweaks/01-run.sh index 6180ebc..ce5c73f 100755 --- a/stage2/02-net-tweaks/01-run.sh +++ b/stage2/02-net-tweaks/01-run.sh @@ -6,13 +6,11 @@ install -v -m 644 files/wait.conf "${ROOTFS_DIR}/etc/systemd/system/dhcpcd.serv install -v -d "${ROOTFS_DIR}/etc/wpa_supplicant" install -v -m 600 files/wpa_supplicant.conf "${ROOTFS_DIR}/etc/wpa_supplicant/" -if [ -v WPA_COUNTRY ] -then +if [ -v WPA_COUNTRY ]; then echo "country=${WPA_COUNTRY}" >> "${ROOTFS_DIR}/etc/wpa_supplicant/wpa_supplicant.conf" fi -if [ -v WPA_ESSID -a -v WPA_PASSWORD ] -then +if [ -v WPA_ESSID ] && [ -v WPA_PASSWORD ]; then on_chroot <> "/etc/wpa_supplicant/wpa_supplicant.conf" EOF