52 lines
2.1 KiB
Python
52 lines
2.1 KiB
Python
import sys
|
|
import py2app
|
|
__all__ = ['infoPlistDict']
|
|
|
|
def infoPlistDict(CFBundleExecutable, plist={}):
|
|
CFBundleExecutable = CFBundleExecutable
|
|
NSPrincipalClass = ''.join(CFBundleExecutable.split())
|
|
version = sys.version[:3]
|
|
pdict = dict(
|
|
CFBundleDevelopmentRegion='English',
|
|
CFBundleDisplayName=plist.get('CFBundleName', CFBundleExecutable),
|
|
CFBundleExecutable=CFBundleExecutable,
|
|
CFBundleIconFile=CFBundleExecutable,
|
|
CFBundleIdentifier='org.pythonmac.unspecified.%s' % (NSPrincipalClass,),
|
|
CFBundleInfoDictionaryVersion='6.0',
|
|
CFBundleName=CFBundleExecutable,
|
|
CFBundlePackageType='BNDL',
|
|
CFBundleShortVersionString=plist.get('CFBundleVersion', '0.0'),
|
|
CFBundleSignature='????',
|
|
CFBundleVersion='0.0',
|
|
LSHasLocalizedDisplayName=False,
|
|
NSAppleScriptEnabled=False,
|
|
NSHumanReadableCopyright='Copyright not specified',
|
|
NSMainNibFile='MainMen',
|
|
NSPrincipalClass=NSPrincipalClass,
|
|
PyMainFileNames=['__boot__'],
|
|
PyResourcePackages=[ (s % version) for s in [
|
|
'lib/python%s',
|
|
'lib/python%s/lib-dynload',
|
|
'lib/python%s/site-packages.zip',
|
|
]] + [ 'lib/python%s.zip' % version.replace('.', '') ],
|
|
PyRuntimeLocations=[(s % version) for s in [
|
|
'@executable_path/../Frameworks/Python.framework/Versions/%s/Python',
|
|
'~/Library/Frameworks/Python.framework/Versions/%s/Python',
|
|
'/Library/Frameworks/Python.framework/Versions/%s/Python',
|
|
'/Network/Library/Frameworks/Python.framework/Versions/%s/Python',
|
|
'/System/Library/Frameworks/Python.framework/Versions/%s/Python',
|
|
]],
|
|
)
|
|
pdict.update(plist)
|
|
pythonInfo = pdict.setdefault('PythonInfoDict', {})
|
|
pythonInfo.update(dict(
|
|
PythonLongVersion=sys.version,
|
|
PythonShortVersion=sys.version[:3],
|
|
PythonExecutable=sys.executable,
|
|
))
|
|
py2appInfo = pythonInfo.setdefault('py2app', {}).update(dict(
|
|
version=py2app.__version__,
|
|
template='bundle',
|
|
))
|
|
return pdict
|