diff --git a/.config/Thunar/uca.xml b/.config/Thunar/uca.xml index 69ed618..3425fa9 100644 --- a/.config/Thunar/uca.xml +++ b/.config/Thunar/uca.xml @@ -12,4 +12,16 @@ + + gtk-convert + Degoogle + + 1685216951025684-1 + ~/.scripts/degoogle %F + Convert WebP and WebM to PNG and MP4 respectively + * + *.webp;*.webm + + + diff --git a/.scripts/degoogle b/.scripts/degoogle new file mode 100755 index 0000000..4f2840d --- /dev/null +++ b/.scripts/degoogle @@ -0,0 +1,31 @@ +#!/usr/bin/env fish + +for filename in $argv + switch $filename + case '*.webp' + set -l basename (basename $filename) + set -l dirname (dirname $filename) + set -l rootname (echo $basename | string split -f 1 -m 1 -r .) + set targetname "$dirname/$rootname.png" + + set attempt 0 + while test $attempt -le 200 + if test -f $targetname + set attempt (math $attempt + 1) + set targetname "$dirname/$rootname-$attempt.png" + continue + end + convert "$filename" "$targetname" + break + end + case '*.webm' + set -l basename (basename $filename) + set -l dirname (dirname $filename) + set -l rootname (echo $basename | string split -f 1 -m 1 -r .) + set -l targetname "$dirname/$rootname.mp4" + + ffmpeg -i $filename -c:v libx264 -crf 24 $targetname + case '*' + echo "Neither webp nor webm, skipping." + end +end