X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=utils%2Fcreate_iconfiles.sh;fp=utils%2Fcreate_iconfiles.sh;h=2eb3ff06e27d8cf40677b5c6ebc2cc9afba1fff8;hb=12d3249a11f8ad086f310290f06eb475f6ac0424;hp=0000000000000000000000000000000000000000;hpb=6ec80cb56464b563ac9e35e85d50726b6633d7db;p=jalview.git diff --git a/utils/create_iconfiles.sh b/utils/create_iconfiles.sh new file mode 100755 index 0000000..2eb3ff0 --- /dev/null +++ b/utils/create_iconfiles.sh @@ -0,0 +1,32 @@ +#!/usr/bin/env bash + +# given a list of differently sized png files with the size in the filename like this: +# myiconfile-16.png myiconfile-32.png myiconfile-48.png myiconfile-64.png myiconfile-128.png myiconfile-256.png myiconfile-512.png +# run +# create_iconfiles.sh myiconfile-*.png +# to create an ICO file (for Windows) myiconfile.ico and an ICNS file (for macOS) myiconfile.icns + +BASENAME=${1%-*} +if [ x$BASENAME = x ]; then + echo "Could not calculate basename from '${1}'" + exit 1 +fi + +ICOFILE=${BASENAME}.ico +echo "Creating ${ICOFILE}" +convert $* ${ICOFILE} + +ICNSFILE=${BASENAME}.icns +echo "Creating ${ICNSFILE}" +# dont' include 64x64 icon (for some reason they're not allowed in icns file) +ICNSARGS="" +for ARG in $*; do + NUM=${ARG##*-} + NUM=${NUM%px*} + NUM=${NUM%x*} + NUM=${NUM%.*} + if [ x$NUM != x64 ]; then + ICNSARGS="${ICNSARGS} $ARG" + fi +done +png2icns ${ICNSFILE} ${ICNSARGS}