2018-01-20 19:33:16 -08:00
|
|
|
"""
|
|
|
|
py2app build script for Electrum Bitcoin Private
|
|
|
|
|
|
|
|
Usage (Mac OS X):
|
|
|
|
python setup.py py2app
|
|
|
|
"""
|
|
|
|
|
|
|
|
from setuptools import setup
|
|
|
|
from plistlib import Plist
|
|
|
|
import requests
|
|
|
|
import os
|
|
|
|
import shutil
|
|
|
|
|
|
|
|
from lib.version import ELECTRUM_VERSION as version
|
|
|
|
|
2018-01-23 23:59:47 -08:00
|
|
|
CERT_PATH = requests.certs.where()
|
2018-01-20 19:33:16 -08:00
|
|
|
|
|
|
|
name = "Electrum"
|
2018-01-23 23:59:47 -08:00
|
|
|
mainscript = 'electrum'
|
2018-01-20 19:33:16 -08:00
|
|
|
|
|
|
|
plist = Plist.fromFile('Info.plist')
|
2018-01-25 23:23:30 -08:00
|
|
|
plist.update(dict(CFBundleIconFile='icons/electrum.icns'))
|
2018-01-20 19:33:16 -08:00
|
|
|
|
|
|
|
|
2018-01-23 23:59:47 -08:00
|
|
|
os.environ["REQUESTS_CA_BUNDLE"] = "cacert.pem"
|
2018-01-20 19:33:16 -08:00
|
|
|
shutil.copy(mainscript, mainscript + '.py')
|
|
|
|
mainscript += '.py'
|
|
|
|
extra_options = dict(
|
|
|
|
setup_requires=['py2app'],
|
|
|
|
app=[mainscript],
|
|
|
|
packages=[
|
|
|
|
'electrum',
|
|
|
|
'electrum_gui',
|
|
|
|
'electrum_gui.qt',
|
|
|
|
'electrum_plugins',
|
|
|
|
'electrum_plugins.audio_modem',
|
|
|
|
'electrum_plugins.cosigner_pool',
|
|
|
|
'electrum_plugins.email_requests',
|
|
|
|
'electrum_plugins.greenaddress_instant',
|
|
|
|
'electrum_plugins.hw_wallet',
|
|
|
|
'electrum_plugins.keepkey',
|
|
|
|
'electrum_plugins.labels',
|
|
|
|
'electrum_plugins.ledger',
|
|
|
|
'electrum_plugins.trezor',
|
|
|
|
'electrum_plugins.digitalbitbox',
|
|
|
|
'electrum_plugins.trustedcoin',
|
|
|
|
'electrum_plugins.virtualkeyboard',
|
|
|
|
|
|
|
|
],
|
|
|
|
package_dir={
|
|
|
|
'electrum': 'lib',
|
|
|
|
'electrum_gui': 'gui',
|
|
|
|
'electrum_plugins': 'plugins'
|
|
|
|
},
|
|
|
|
data_files=[CERT_PATH],
|
|
|
|
options=dict(py2app=dict(argv_emulation=False,
|
|
|
|
includes=['sip'],
|
|
|
|
packages=['lib', 'gui', 'plugins'],
|
2018-01-25 23:23:30 -08:00
|
|
|
iconfile='icons/electrum.icns',
|
2018-01-20 19:33:16 -08:00
|
|
|
plist=plist,
|
|
|
|
resources=["icons"])),
|
|
|
|
)
|
|
|
|
|
|
|
|
setup(
|
|
|
|
name=name,
|
|
|
|
version=version,
|
|
|
|
**extra_options
|
|
|
|
)
|
|
|
|
|
|
|
|
# Remove the copied py file
|
|
|
|
os.remove(mainscript)
|