From 78822ccf26644d773e4d44ec2d1a27731e57cf72 Mon Sep 17 00:00:00 2001 From: Doychin Atanasov Date: Sun, 4 Feb 2018 20:32:26 +0200 Subject: [PATCH] Add an OSX build script for creating an `.app` bundle --- .gitignore | 1 + build_osx | 6 +++ etc/icon.icns | Bin 0 -> 124674 bytes etc/osx-builder/create_icns | 47 ++++++++++++++++++ etc/osx-builder/create_osx_app | 86 --------------------------------- etc/osx-builder/launcher | 2 +- 6 files changed, 55 insertions(+), 87 deletions(-) create mode 100755 build_osx create mode 100644 etc/icon.icns create mode 100755 etc/osx-builder/create_icns delete mode 100755 etc/osx-builder/create_osx_app diff --git a/.gitignore b/.gitignore index d5636f1..5fb2c65 100755 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ dist/* build/* **/.DS_Store app.spec +tank4eta.spec diff --git a/build_osx b/build_osx new file mode 100755 index 0000000..1627e1d --- /dev/null +++ b/build_osx @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +pyinstaller --add-data data:data -n tank4eta --noconsole --osx-bundle-identifier com.doycho.tank4eta -i etc/icon.icns app.py +cp etc/osx-builder/launcher dist/tank4eta.app/Contents/MacOS/ +sed -i 's/MacOS\/tank4eta/MacOS\/launcher/' dist/tank4eta.app/Contents/Info.plist + diff --git a/etc/icon.icns b/etc/icon.icns new file mode 100644 index 0000000000000000000000000000000000000000..7480380b1e424e1fb365a1423214c9f70809b70e GIT binary patch literal 124674 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 K?b?4r|NaM9I}i8( literal 0 HcmV?d00001 diff --git a/etc/osx-builder/create_icns b/etc/osx-builder/create_icns new file mode 100755 index 0000000..81329f4 --- /dev/null +++ b/etc/osx-builder/create_icns @@ -0,0 +1,47 @@ +#!/usr/bin/env bash + +function die { + echo "ERROR: $1" > /dev/null 1>&2 + exit 1 +} + +if [ "$#" -ne 1 ]; then + die "Usage: `basename $0` icon-file.svg" +fi + +ICONNAME=$1 + +if [ ! -f $ICONNAME ]; then + die "Image file for icon not found" +fi + +fileName=$ICONNAME +postfix=${fileName##*.} + +if [[ $postfix == 'svg' ]]; then + qlmanage -z -t -s 1024 -o ./ "$fileName" + fileName=${fileName}.png +fi + +echo $fileName + +mkdir icon.iconset + +sips -z 16 16 "$fileName" --out icon.iconset/icon_16x16.png +sips -z 32 32 "$fileName" --out icon.iconset/icon_16x16@2x.png +cp icon.iconset/icon_16x16@2x.png icon.iconset/icon_32x32.png +sips -z 64 64 "$fileName" --out icon.iconset/icon_32x32@2x.png +sips -z 128 128 "$fileName" --out icon.iconset/icon_128x128.png +sips -z 256 256 "$fileName" --out icon.iconset/icon_128x128@2x.png +cp icon.iconset/icon_128x128@2x.png icon.iconset/icon_256x256.png +sips -z 512 512 "$fileName" --out icon.iconset/icon_256x256@2x.png +cp icon.iconset/icon_256x256@2x.png icon.iconset/icon_512x512.png +sips -z 1024 1024 "$fileName" --out icon.iconset/icon_512x512@2x.png + +# Create .icns file +iconutil -c icns icon.iconset + +# Cleanup +rm -R icon.iconset +rm $fileName + diff --git a/etc/osx-builder/create_osx_app b/etc/osx-builder/create_osx_app deleted file mode 100755 index 8b45d49..0000000 --- a/etc/osx-builder/create_osx_app +++ /dev/null @@ -1,86 +0,0 @@ -#!/bin/bash - -# Mac OSX .app builder - -function die { - echo "ERROR: $1" > /dev/null 1>&2 - exit 1 -} - -if [ "$#" -ne 2 ]; then - die "Usage: `basename $0` AppNameHere icon-file.svg" -fi - -APPNAME=$1 -ICONNAME=$2 - -if [ ! -f $ICONNAME ]; then - die "Image file for icon not found" -fi - -mkdir -p "$APPNAME.app/Contents/"{MacOS,Resources} - -cat > "$APPNAME.app/Contents/Info.plist" < - - - - CFBundleGetInfoString - $APPNAME - CFBundleExecutable - $APPNAME - CFBundleIdentifier - com.example.www - CFBundleName - $APPNAME - CFBundleIconFile - icon.icns - CFBundleShortVersionString - 0.01 - CFBundleInfoDictionaryVersion - 6.0 - CFBundlePackageType - APPL - IFMajorVersion - 0 - IFMinorVersion - 1 - NSHighResolutionCapable - NSSupportsAutomaticGraphicsSwitching - - -END - -cp $ICONNAME "$APPNAME.app/Contents/Resources/" -cd "$APPNAME.app/Contents/Resources/" - -fileName=$ICONNAME -postfix=${fileName##*.} - -if [[ $postfix == 'svg' ]]; then - qlmanage -z -t -s 1024 -o ./ "$fileName" - fileName=${fileName}.png -fi - -echo $fileName - -mkdir icon.iconset - -sips -z 16 16 "$fileName" --out icon.iconset/icon_16x16.png -sips -z 32 32 "$fileName" --out icon.iconset/icon_16x16@2x.png -cp icon.iconset/icon_16x16@2x.png icon.iconset/icon_32x32.png -sips -z 64 64 "$fileName" --out icon.iconset/icon_32x32@2x.png -sips -z 128 128 "$fileName" --out icon.iconset/icon_128x128.png -sips -z 256 256 "$fileName" --out icon.iconset/icon_128x128@2x.png -cp icon.iconset/icon_128x128@2x.png icon.iconset/icon_256x256.png -sips -z 512 512 "$fileName" --out icon.iconset/icon_256x256@2x.png -cp icon.iconset/icon_256x256@2x.png icon.iconset/icon_512x512.png -sips -z 1024 1024 "$fileName" --out icon.iconset/icon_512x512@2x.png - -# Create .icns file -iconutil -c icns icon.iconset - -# Cleanup -rm -R icon.iconset -rm $fileName - diff --git a/etc/osx-builder/launcher b/etc/osx-builder/launcher index e3514de..e853c80 100755 --- a/etc/osx-builder/launcher +++ b/etc/osx-builder/launcher @@ -1,4 +1,4 @@ #!/usr/bin/env bash cd "${0%/*}" -./app +./tank4eta