it* Simple Justified Gallery Err codevoid.de 70 i Err codevoid.de 70 hgit clone git://git.codevoid.de/mkpicindex URL:git://git.codevoid.de/mkpicindex codevoid.de 70 1Log /git/mkpicindex/log.gph codevoid.de 70 1Files /git/mkpicindex/files.gph codevoid.de 70 1Refs /git/mkpicindex/refs.gph codevoid.de 70 1README /git/mkpicindex/file/README.gph codevoid.de 70 i--- Err codevoid.de 70 1commit d43406f172963643aa1e4b3f02f5d7a2da0cf7a0 /git/mkpicindex/commit/d43406f172963643aa1e4b3f02f5d7a2da0cf7a0.gph codevoid.de 70 1parent fc32da5f774e4e54895562c4d336495149b5177a /git/mkpicindex/commit/fc32da5f774e4e54895562c4d336495149b5177a.gph codevoid.de 70 hAuthor: Stefan Hagen URL:mailto:sh+git[at]codevoid[dot]de codevoid.de 70 iDate: Sat, 26 Oct 2019 16:37:23 +0200 Err codevoid.de 70 i Err codevoid.de 70 iNicer BG check Err codevoid.de 70 i Err codevoid.de 70 iDiffstat: Err codevoid.de 70 i M mkpicindex-static.sh | 52 ++++++++----------------------- Err codevoid.de 70 i Err codevoid.de 70 i1 file changed, 13 insertions(+), 39 deletions(-) Err codevoid.de 70 i--- Err codevoid.de 70 1diff --git a/mkpicindex-static.sh b/mkpicindex-static.sh /git/mkpicindex/file/mkpicindex-static.sh.gph codevoid.de 70 it@@ -24,13 +24,6 @@ G_ROW_FILES="" # pipe separated files < WIDTH Err codevoid.de 70 i MORE=1 # trigger next loop Err codevoid.de 70 i Err codevoid.de 70 i ### ZE PROGAM STARTZ HERE ############################################## Err codevoid.de 70 i-cleanup() { Err codevoid.de 70 i- # DELETE BROKEN IMAGES Err codevoid.de 70 i- printf '%s\n' "Removing incomplete thumbnails." >&2 Err codevoid.de 70 i- find "$THUMB_PATH" -name "*_tmp.*" -exec rm -v "{}" \; Err codevoid.de 70 i- exit 1 Err codevoid.de 70 i-} Err codevoid.de 70 i-trap cleanup 1 2 3 6 Err codevoid.de 70 i Err codevoid.de 70 i # CREATE THUMBNAIL DIRECTORY Err codevoid.de 70 i mkdir -p "$THUMB_PATH" Err codevoid.de 70 it@@ -60,9 +53,8 @@ get_height_by_width() { Err codevoid.de 70 i } Err codevoid.de 70 i Err codevoid.de 70 i bg_check() { Err codevoid.de 70 i- T=$(pgrep convert | wc -l | awk '{ print $1 }'); Err codevoid.de 70 i- debug "Threads: $T"; Err codevoid.de 70 i- printf "$T" Err codevoid.de 70 i+ while [ $(pgrep convert | wc -l | awk '{ print $1 }') -gt 4 ]; Err codevoid.de 70 i+ do debug "Too many Threads, sleeping."; sleep 2; done Err codevoid.de 70 i } Err codevoid.de 70 i Err codevoid.de 70 i # CREATE THUMBNAIL Err codevoid.de 70 it@@ -75,38 +67,20 @@ create_thumb() { Err codevoid.de 70 i local W="$2" # width Err codevoid.de 70 i local H="$3" # height Err codevoid.de 70 i local T="${F%%.*}-$H" Err codevoid.de 70 i- if ! [ -f "$THUMB_PATH/$T.gif" ] || [ -f "$THUMB_PATH/$T.jpeg" ]; Err codevoid.de 70 i+ if ! [ -f "$THUMB_PATH/$T.gif" ] && ! [ -f "$THUMB_PATH/$T.jpeg" ]; Err codevoid.de 70 i+ bg_check Err codevoid.de 70 i then Err codevoid.de 70 i case $(printf '%s' "${F##*.}" | tr '[:upper:]' '[:lower:]') in Err codevoid.de 70 i- gif) if [ "$(bg_check)" -gt "4" ]; then Err codevoid.de 70 i- console "Creating Thumbnail (FG): $THUMB_PATH/$T.gif" Err codevoid.de 70 i- convert -quality $THUMB_QUALITY -sharpen 2x2 \ Err codevoid.de 70 i- -coalesce -resize 6000x$H\> \ Err codevoid.de 70 i- -deconstruct "$F" \ Err codevoid.de 70 i- "$THUMB_PATH/${T}_tmp.gif" && \ Err codevoid.de 70 i- mv "$THUMB_PATH/${T}_tmp.gif" "$THUMB_PATH/$T.gif" Err codevoid.de 70 i- else Err codevoid.de 70 i- console "Creating Thumbnail (BG): $THUMB_PATH/$T.gif" Err codevoid.de 70 i- convert -quality $THUMB_QUALITY -sharpen 2x2 \ Err codevoid.de 70 i- -coalesce -resize 6000x$H\> \ Err codevoid.de 70 i- -deconstruct "$F" \ Err codevoid.de 70 i- "$THUMB_PATH/${T}_tmp.gif" && \ Err codevoid.de 70 i- mv "$THUMB_PATH/${T}_tmp.gif" "$THUMB_PATH/$T.gif" & Err codevoid.de 70 i- fi Err codevoid.de 70 i+ gif) console "Creating Thumbnail: $THUMB_PATH/$T.gif" Err codevoid.de 70 i+ nohup convert -quality $THUMB_QUALITY -sharpen 2x2 \ Err codevoid.de 70 i+ -coalesce -resize 6000x$H\> \ Err codevoid.de 70 i+ -deconstruct "$F" \ Err codevoid.de 70 i+ "$THUMB_PATH/$T.gif" >/dev/null 2>&1 & Err codevoid.de 70 i printf '%s' "$THUMB_PATH/$T.gif" ;; Err codevoid.de 70 i- *) if [ "$(bg_check)" -gt "4" ]; then Err codevoid.de 70 i- console "Creating Thumbnail (FG): $THUMB_PATH/$T.jpeg" Err codevoid.de 70 i- convert -quality $THUMB_QUALITY -sharpen 2x2 \ Err codevoid.de 70 i- -resize 6000x$H\> "$F" \ Err codevoid.de 70 i- "$THUMB_PATH/${T}_tmp.jpeg" && \ Err codevoid.de 70 i- mv "$THUMB_PATH/${T}_tmp.jpeg" "$THUMB_PATH/$T.jpeg" Err codevoid.de 70 i- else Err codevoid.de 70 i- console "Creating Thumbnail (BG): $THUMB_PATH/$T.jpeg" Err codevoid.de 70 i- convert -quality $THUMB_QUALITY -sharpen 2x2 \ Err codevoid.de 70 i- -resize 6000x$H\> "$F" \ Err codevoid.de 70 i- "$THUMB_PATH/${T}_tmp.jpeg" && \ Err codevoid.de 70 i- mv "$THUMB_PATH/${T}_tmp.jpeg" "$THUMB_PATH/$T.jpeg" & Err codevoid.de 70 i- fi Err codevoid.de 70 i+ *) console "Creating Thumbnail: $THUMB_PATH/$T.jpeg" Err codevoid.de 70 i+ nohup convert -quality $THUMB_QUALITY -sharpen 2x2 \ Err codevoid.de 70 i+ -resize 6000x$H\> "$F" \ Err codevoid.de 70 i+ "$THUMB_PATH/$T.jpeg" >/dev/null 2>&1 & Err codevoid.de 70 i printf '%s' "$THUMB_PATH/$T.jpeg" ;; Err codevoid.de 70 i esac Err codevoid.de 70 i fi Err codevoid.de 70 .