From: Alexander Barton Date: Wed, 8 Apr 2015 12:04:06 +0000 (+0200) Subject: New option to add an icon to the application bundle X-Git-Url: https://arthur.barton.de/gitweb/?p=appify.git;a=commitdiff_plain;h=HEAD New option to add an icon to the application bundle --- diff --git a/appify.sh b/appify.sh index a7db786..c7ffa8e 100755 --- a/appify.sh +++ b/appify.sh @@ -21,7 +21,7 @@ args=$(getopt h $*) function usage { - echo "Usage: $0 [-h] " + echo "Usage: $0 [-h] []" exit 2 } @@ -38,12 +38,13 @@ for i ; do esac done -if [ $# != 2 ]; then +if [ $# -lt 2 -o $# -gt 3 ]; then usage fi SCRIPT=$1 TARGET=$2 +ICON=$3 BASENAME=`basename "$SCRIPT"` @@ -57,6 +58,11 @@ if [ -e "$TARGET" ]; then exit 3 fi +if [ -n "$ICON" -a ! -r "$ICON" ]; then + echo "$ICON isn't readable!" 1>&2 + exit 3 +fi + SCRIPTSIZE=$(ls -l "$SCRIPT" | awk '{print $5}') if [ $SCRIPTSIZE -lt 28 ]; then @@ -90,6 +96,17 @@ cat <"$TARGET/Contents/Info.plist" ???? CFBundleVersion 1.0 +EOF + +if [ -n "$ICON" ]; then + cat <>"$TARGET/Contents/Info.plist" + CFBundleIconFile + app.icns +EOF + cp "$ICON" "$TARGET/Contents/Resources/app.icns" || exit 1 +fi + +cat <>"$TARGET/Contents/Info.plist" EOF