 9c839d789f
			
		
	
	
		9c839d789f
		
			
		
	
	
	
	
		
			
			Most of them are missing quotes, `` -> $(), and -o/-a usage in conditions. Also add few directives disabling checks where were too verbose.
		
			
				
	
	
		
			53 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/sh
 | |
| set -e
 | |
| read -r filename
 | |
| 
 | |
| ICON_MAXSIZE=512
 | |
| 
 | |
| if [ "${filename%%:*}" = xdgicon ]; then
 | |
|     filename="$(/usr/lib/qubes/xdg-icon "${filename#*:}" "$ICON_MAXSIZE")"
 | |
|     forcemaxsize="$ICON_MAXSIZE"
 | |
| 
 | |
|     [ -n "${filename}" ]
 | |
| elif [ "${filename}" = "-" ] || [ "${filename##*:}" = "-" ]; then
 | |
|     tmpfile="$(mktemp /tmp/qimg-XXXXXXXX)"
 | |
|     cat > "${tmpfile}"
 | |
|     if [ "${filename##*:}" = "-" ]; then
 | |
|         filename="${filename%:*}:${tmpfile}"
 | |
|     else
 | |
|         filename="${tmpfile}"
 | |
|     fi
 | |
| elif ! [ -r "${filename}" ]; then
 | |
|     exit 1
 | |
| fi
 | |
| 
 | |
| s="$(identify -format '%w %h %m' "$filename")"
 | |
| w="$(echo "$s"|cut -d " " -f 1)"
 | |
| h="$(echo "$s"|cut -d " " -f 2)"
 | |
| m="$(echo "$s"|cut -d " " -f 3)"
 | |
| if [ "$m" = SVG ]; then
 | |
|     tmpfile2="$(mktemp /tmp/qimg-XXXXXXXX.png)"
 | |
|     rsvg-convert -o "$tmpfile2" "$filename"
 | |
|     # downscale the image if necessary
 | |
|     if [ -n "$forcemaxsize" ] && \
 | |
|             ( [ "$w" -gt "$forcemaxsize" ] || [ "$h" -gt "$forcemaxsize" ] ); then
 | |
|         convert "$tmpfile2" -scale "${forcemaxsize}x${forcemaxsize}" "$tmpfile2"
 | |
|         # read the size again, because icon may not be a square
 | |
|         s="$(identify -format '%w %h' "$tmpfile2")"
 | |
|         w="$(echo "$s"|cut -d " " -f 1)"
 | |
|         h="$(echo "$s"|cut -d " " -f 2)"
 | |
|     fi
 | |
|     filename="$tmpfile2"
 | |
| fi
 | |
| echo "$w $h"
 | |
| convert -depth 8 -size "${w}x${h}" "$filename" rgba:-
 | |
| 
 | |
| if [ -n "${tmpfile}" ]; then
 | |
|     rm -f "${tmpfile}"
 | |
| fi
 | |
| if [ -n "${tmpfile2}" ]; then
 | |
|     rm -f "${tmpfile2}"
 | |
| fi
 | |
| 
 | |
| # vim: ft=sh ts=4 sw=4 et
 |