From 89bb53fe82c048fc322075b67b1bc7048d4fc53d Mon Sep 17 00:00:00 2001 From: Kali Kaneko Date: Wed, 4 Jul 2018 22:25:15 +0200 Subject: [pkg] move info.plist to template --- osx/Makefile | 2 ++ osx/generate.py | 76 ++++++++++++++++++------------------------------- osx/template-info.plist | 34 ++++++++++++++++++++++ 3 files changed, 64 insertions(+), 48 deletions(-) create mode 100644 osx/Makefile create mode 100644 osx/template-info.plist (limited to 'osx') diff --git a/osx/Makefile b/osx/Makefile new file mode 100644 index 0000000..9742135 --- /dev/null +++ b/osx/Makefile @@ -0,0 +1,2 @@ +generate: + python ./generate.py diff --git a/osx/generate.py b/osx/generate.py index 8982d94..57aa11e 100644 --- a/osx/generate.py +++ b/osx/generate.py @@ -6,15 +6,20 @@ import shutil import sys import stat +from string import Template + # Variables ---------------------------- # TODO consolidate version string for all builds. VERSION = "0.0.1" APP_NAME = "RiseupVPN" BUNDLE_IDENTIFIER = "se.leap.riseupvpn" -ENTRYPOINT = "bitmask-systray" # Do not edit below -------------------- +TEMPLATE = 'template-info.plist' +ENTRYPOINT = 'bitmask-systray' +HELPER = 'bitmask_helper' + here = os.path.split(os.path.abspath(__file__))[0] APP_PATH = os.path.abspath(here + '/../dist/' + APP_NAME + ".app") @@ -22,57 +27,32 @@ STAGING = os.path.abspath(here + '/../staging/') os.makedirs(APP_PATH + "/Contents/MacOS", exist_ok=True) +INFO_PLIST = APP_PATH + '/Contents/Info.plist' + +vardict = { + 'entrypoint': ENTRYPOINT, + 'info_string': APP_NAME + " " + VERSION, + 'bundle_identifier': BUNDLE_IDENTIFIER, + 'bundle_name': APP_NAME, + 'version': VERSION +} + +template = Template(open(TEMPLATE).read()) +with open(INFO_PLIST, 'w') as output: + output.write(template.safe_substitute(vardict)) -f = open(APP_PATH + "/Contents/Info.plist", "w") -f.write(""" - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - %s - CFBundleGetInfoString - %s - CFBundleIconFile - app.icns - CFBundleIdentifier - %s - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - %s - CFBundlePackageType - APPL - CFBundleShortVersionString - %s - CFBundleSignature - ???? - CFBundleVersion - %s - NSAppleScriptEnabled - YES - NSMainNibFile - MainMenu - NSPrincipalClass - NSApplication - - -""" % ( - ENTRYPOINT, - APP_NAME + " " + VERSION, - BUNDLE_IDENTIFIER, - APP_NAME, - APP_NAME + " " + VERSION, - VERSION)) -f.close() f = open(APP_PATH + "/Contents/PkgInfo", "w") f.write("APPL????") f.close() -entrypoint_file = APP_PATH + "/Contents/MacOS/" + ENTRYPOINT -shutil.copyfile(STAGING + '/' + ENTRYPOINT, entrypoint_file) -oldmode = os.stat(entrypoint_file).st_mode -os.chmod(entrypoint_file, oldmode | stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH) +def copy_payload(filename): + destfile = APP_PATH + "/Contents/MacOS/" + filename + shutil.copyfile(STAGING + '/' + filename, destfile) + cmode = os.stat(destfile).st_mode + os.chmod(destfile, cmode | stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH) + +copy_payload(ENTRYPOINT) +copy_payload(HELPER) + diff --git a/osx/template-info.plist b/osx/template-info.plist new file mode 100644 index 0000000..e67ddcc --- /dev/null +++ b/osx/template-info.plist @@ -0,0 +1,34 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + $entrypoint + CFBundleGetInfoString + $info_string + CFBundleIconFile + app.icns + CFBundleIdentifier + $bundle_identifier + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $bundle_name + CFBundlePackageType + APPL + CFBundleShortVersionString + $info_string + CFBundleSignature + ???? + CFBundleVersion + $version + NSAppleScriptEnabled + YES + NSMainNibFile + MainMenu + NSPrincipalClass + NSApplication + + -- cgit v1.2.3