Fixes previously introduced bug
[electrum-nvc.git] / setup.py
1 #!/usr/bin/python
2
3 # python setup.py sdist --format=zip,gztar
4
5 from setuptools import setup
6 import os
7 import sys
8 import platform
9 import imp
10
11
12 version = imp.load_source('version', 'lib/version.py')
13 util = imp.load_source('version', 'lib/util.py')
14
15 if sys.version_info[:3] < (2, 6, 0):
16     sys.exit("Error: Electrum requires Python version >= 2.6.0...")
17
18 usr_share = '/usr/share'
19 if not os.access(usr_share, os.W_OK):
20     usr_share = os.getenv("XDG_DATA_HOME", os.path.join(os.getenv("HOME"), ".local", "share"))
21
22 data_files = []
23 if (len(sys.argv) > 1 and (sys.argv[1] == "sdist")) or (platform.system() != 'Windows' and platform.system() != 'Darwin'):
24     print "Including all files"
25     data_files += [
26         (os.path.join(usr_share, 'applications/'), ['electrum.desktop']),
27         (os.path.join(usr_share, 'app-install', 'icons/'), ['icons/electrum.png'])
28     ]
29     if not os.path.exists('locale'):
30         os.mkdir('locale')
31     for lang in os.listdir('locale'):
32         if os.path.exists('locale/%s/LC_MESSAGES/electrum.mo' % lang):
33             data_files.append((os.path.join(usr_share, 'locale/%s/LC_MESSAGES' % lang), ['locale/%s/LC_MESSAGES/electrum.mo' % lang]))
34
35 appdata_dir = util.appdata_dir()
36 if not os.access(appdata_dir, os.W_OK):
37     appdata_dir = os.path.join(usr_share, "electrum")
38
39 data_files += [
40     (appdata_dir, ["data/README"]),
41     (os.path.join(appdata_dir, "cleanlook"), [
42         "data/cleanlook/name.cfg",
43         "data/cleanlook/style.css"
44     ]),
45     (os.path.join(appdata_dir, "sahara"), [
46         "data/sahara/name.cfg",
47         "data/sahara/style.css"
48     ]),
49     (os.path.join(appdata_dir, "dark"), [
50         "data/dark/name.cfg",
51         "data/dark/style.css"
52     ])
53 ]
54
55
56 setup(
57     name="Electrum",
58     version=version.ELECTRUM_VERSION,
59     install_requires=['slowaes', 'ecdsa>=0.9', 'pbkdf2', 'requests', 'pyasn1', 'pyasn1-modules', 'tlslite>=0.4.5', 'qrcode'],
60     package_dir={
61         'electrum': 'lib',
62         'electrum_gui': 'gui',
63         'electrum_plugins': 'plugins',
64     },
65     scripts=['electrum'],
66     data_files=data_files,
67     py_modules=[
68         'electrum.account',
69         'electrum.bitcoin',
70         'electrum.blockchain',
71         'electrum.bmp',
72         'electrum.commands',
73         'electrum.daemon',
74         'electrum.i18n',
75         'electrum.interface',
76         'electrum.mnemonic',
77         'electrum.msqr',
78         'electrum.network',
79         'electrum.paymentrequest',
80         'electrum.paymentrequest_pb2',
81         'electrum.plugins',
82         'electrum.simple_config',
83         'electrum.socks',
84         'electrum.synchronizer',
85         'electrum.transaction',
86         'electrum.util',
87         'electrum.verifier',
88         'electrum.version',
89         'electrum.wallet',
90         'electrum.wallet_bitkey',
91         'electrum.x509',
92         'electrum_gui.gtk',
93         'electrum_gui.qt.__init__',
94         'electrum_gui.qt.amountedit',
95         'electrum_gui.qt.console',
96         'electrum_gui.qt.history_widget',
97         'electrum_gui.qt.icons_rc',
98         'electrum_gui.qt.installwizard',
99         'electrum_gui.qt.lite_window',
100         'electrum_gui.qt.main_window',
101         'electrum_gui.qt.network_dialog',
102         'electrum_gui.qt.password_dialog',
103         'electrum_gui.qt.paytoedit',
104         'electrum_gui.qt.qrcodewidget',
105         'electrum_gui.qt.qrtextedit',
106         'electrum_gui.qt.receiving_widget',
107         'electrum_gui.qt.seed_dialog',
108         'electrum_gui.qt.transaction_dialog',
109         'electrum_gui.qt.util',
110         'electrum_gui.qt.version_getter',
111         'electrum_gui.stdio',
112         'electrum_gui.text',
113         'electrum_plugins.aliases',
114         'electrum_plugins.coinbase_buyback',
115         'electrum_plugins.exchange_rate',
116         'electrum_plugins.labels',
117         'electrum_plugins.pointofsale',
118         'electrum_plugins.qrscanner',
119         'electrum_plugins.virtualkeyboard',
120     ],
121     description="Lightweight Bitcoin Wallet",
122     author="Thomas Voegtlin",
123     author_email="thomasv1@gmx.de",
124     license="GNU GPLv3",
125     url="https://electrum.org",
126     long_description="""Lightweight Bitcoin Wallet"""
127 )