nixos-config/extraFiles/scripts/convert_images.sh

38 lines
804 B
Bash
Raw Normal View History

#/usr/bin/env bash
IFS=$'\n'
change_to_webp() {
f="$1"
file="${f%.*}"
file_webp="${file}.webp"
echo "Trying to convert to $file_webp"
if convert "$f" "$file_webp"; then
if touch -r "$f" "$file_webp"; then
rm "$f"
echo "Finished converting $f"
else
echo "Failed to set old date to new file"
exit 1
fi
else
echo "Failed to convert $f"
exit 1;
fi
}
pushd $XDG_PICTURES_DIR
for f in `find "." \( -name "*.png" -type f -o -name "*.jpg" -type f -o -name "*.jpeg" -type f -o -name "*.avif" -type f \) \
-a -not \( -path "./Inne/Special/*" -o -path "./Inne/Emojis/*" -o -path "./Inne/MCSkins/*" -o -path "./Avatar/*" -o -path "./Inne/GIF/*" \)`;
do
change_to_webp "$f" &
done
for job in `jobs -p`
do
echo "Waiting for: $job"
wait $job || let "FAIL+=1"
done
popd