Loading src/install.sh +6 −2 Original line number Diff line number Diff line Loading @@ -34,14 +34,19 @@ BASE=$(echo "$BASE" | sed -e 's/[^A-Za-z0-9._-]/_/g') TMP="$STORAGE/${BASE%.*}.tmp" rm -f "$TMP" MSG="Downloading $BASE as boot image..." MSG="Downloading $BASE ..." info "$MSG" && html "$MSG" /run/progress.sh "$TMP" "Downloading $BASE ([P])..." & { wget "$BOOT" -O "$TMP" -q --no-check-certificate --show-progress "$PROGRESS"; rc=$?; } || : fKill "progress.sh" (( rc != 0 )) && error "Failed to download $BOOT , reason: $rc" && exit 60 [ ! -f "$TMP" ] && error "Failed to download $BOOT" && exit 61 html "Download finished successfully..." SIZE=$(stat -c%s "$TMP") if ((SIZE<100000)); then Loading @@ -50,5 +55,4 @@ fi mv -f "$TMP" "$STORAGE/$BASE" html "Download finished successfully..." return 0 src/progress.sh 0 → 100644 +29 −0 Original line number Diff line number Diff line #!/usr/bin/env bash set -Eeuo pipefail escape () { local s s=${1//&/\&} s=${s//</\<} s=${s//>/\>} s=${s//'"'/\"} printf -- %s "$s" return 0 } file="$1" body=$(escape "$2") info="/run/shm/msg.html" if [[ "$body" == *"..." ]]; then body="<p class=\"loading\">${body/.../}</p>" fi while true do if [ -f "$file" ]; then size=$(stat -c '%s' "$file" | numfmt --to=si --suffix=B) echo "${body//(\[P\])/($size)}"> "$info" fi sleep 1 done Loading
src/install.sh +6 −2 Original line number Diff line number Diff line Loading @@ -34,14 +34,19 @@ BASE=$(echo "$BASE" | sed -e 's/[^A-Za-z0-9._-]/_/g') TMP="$STORAGE/${BASE%.*}.tmp" rm -f "$TMP" MSG="Downloading $BASE as boot image..." MSG="Downloading $BASE ..." info "$MSG" && html "$MSG" /run/progress.sh "$TMP" "Downloading $BASE ([P])..." & { wget "$BOOT" -O "$TMP" -q --no-check-certificate --show-progress "$PROGRESS"; rc=$?; } || : fKill "progress.sh" (( rc != 0 )) && error "Failed to download $BOOT , reason: $rc" && exit 60 [ ! -f "$TMP" ] && error "Failed to download $BOOT" && exit 61 html "Download finished successfully..." SIZE=$(stat -c%s "$TMP") if ((SIZE<100000)); then Loading @@ -50,5 +55,4 @@ fi mv -f "$TMP" "$STORAGE/$BASE" html "Download finished successfully..." return 0
src/progress.sh 0 → 100644 +29 −0 Original line number Diff line number Diff line #!/usr/bin/env bash set -Eeuo pipefail escape () { local s s=${1//&/\&} s=${s//</\<} s=${s//>/\>} s=${s//'"'/\"} printf -- %s "$s" return 0 } file="$1" body=$(escape "$2") info="/run/shm/msg.html" if [[ "$body" == *"..." ]]; then body="<p class=\"loading\">${body/.../}</p>" fi while true do if [ -f "$file" ]; then size=$(stat -c '%s' "$file" | numfmt --to=si --suffix=B) echo "${body//(\[P\])/($size)}"> "$info" fi sleep 1 done