X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=utils%2Fcreate_iconfiles.sh;fp=utils%2Fcreate_iconfiles.sh;h=241c19508f92923bbf3f952d0dea696b723d3c6d;hb=41129d3894c16b009f58d6ad81848b82315b0025;hp=0000000000000000000000000000000000000000;hpb=09796fae6f999e5fb68a8d2fed46aa4447235b12;p=jalview.git diff --git a/utils/create_iconfiles.sh b/utils/create_iconfiles.sh new file mode 100755 index 0000000..241c195 --- /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 -a x$NUM != x38 ]; then + ICNSARGS="${ICNSARGS} $ARG" + fi +done +png2icns ${ICNSFILE} ${ICNSARGS}