# python setup.py sdist --format=zip,gztar
from distutils.core import setup
-from lib.version import ELECTRUM_VERSION as version
-import os, sys
+import os, sys, platform, imp
+
+version = imp.load_source('version', 'lib/version.py')
+util = imp.load_source('version', 'lib/util.py')
+
if sys.version_info[:3] < (2,6,0):
- print "Electrum requires Python version >= 2.6.0... exiting"
- sys.exit(1)
-
+ sys.exit("Error: Electrum requires Python version >= 2.6.0...")
+
+usr_share = '/usr/share'
+if not os.access(usr_share, os.W_OK):
+ usr_share = os.getenv("XDG_DATA_HOME",
+ os.path.join(os.getenv("HOME"), ".local", "share"))
-data_files=[
- ('/usr/share/applications/',['electrum.desktop']),
- ('/usr/share/app-install/icons/',['electrum.png'])
+data_files = []
+if (len(sys.argv) > 1 and (sys.argv[1] == "sdist")) or (platform.system() != 'Windows' and platform.system() != 'Darwin'):
+ print "Including all files"
+ data_files += [
+ (os.path.join(usr_share, 'applications/'),['electrum.desktop']),
+ (os.path.join(usr_share, 'app-install', 'icons/'),['icons/electrum.png'])
]
+ if not os.path.exists('locale'):
+ os.mkdir('locale')
+ for lang in os.listdir('locale'):
+ if os.path.exists('locale/%s/LC_MESSAGES/electrum.mo'%lang):
+ data_files.append( (os.path.join(usr_share, 'locale/%s/LC_MESSAGES'%lang), ['locale/%s/LC_MESSAGES/electrum.mo'%lang]) )
-if not os.path.exists('locale'):
- os.mkdir('locale')
+data_files += [
+ (util.appdata_dir(), ["data/README"]),
+ (os.path.join(util.appdata_dir(), "cleanlook"), [
+ "data/cleanlook/name.cfg",
+ "data/cleanlook/style.css"
+ ]),
+ (os.path.join(util.appdata_dir(), "sahara"), [
+ "data/sahara/name.cfg",
+ "data/sahara/style.css"
+ ]),
+ (os.path.join(util.appdata_dir(), "dark"), [
+ "data/dark/background.png",
+ "data/dark/name.cfg",
+ "data/dark/style.css"
+ ])
+]
-for lang in os.listdir('locale'):
- if os.path.exists('locale/%s/LC_MESSAGES/electrum.mo'%lang):
- data_files.append( ('/usr/share/locale/%s/LC_MESSAGES'%lang, ['locale/%s/LC_MESSAGES/electrum.mo'%lang]) )
setup(name = "Electrum",
- version = version,
+ version = version.ELECTRUM_VERSION,
install_requires = ['slowaes','ecdsa'],
- package_dir = {'electrum': 'lib'},
+ package_dir = {'electrum': 'lib', 'electrum_gui': 'gui', 'electrum_plugins':'plugins'},
scripts= ['electrum'],
data_files = data_files,
py_modules = ['electrum.version',
'electrum.wallet',
+ 'electrum.wallet_bitkey',
+ 'electrum.wallet_factory',
'electrum.interface',
- 'electrum.gui',
- 'electrum.gui_qt',
- 'electrum.icons_rc',
+ 'electrum.commands',
'electrum.mnemonic',
- 'electrum.pyqrnative',
- 'electrum.bmp',
+ 'electrum.simple_config',
+ 'electrum.socks',
'electrum.msqr',
- 'electrum.i18n'],
+ 'electrum.util',
+ 'electrum.account',
+ 'electrum.bitcoin',
+ 'electrum.deserialize',
+ 'electrum.verifier',
+ 'electrum_gui.gui_gtk',
+ 'electrum_gui.qt_console',
+ 'electrum_gui.gui_classic',
+ 'electrum_gui.gui_lite',
+ 'electrum_gui.gui_text',
+ 'electrum_gui.exchange_rate',
+ 'electrum_gui.icons_rc',
+ 'electrum_gui.pyqrnative',
+ 'electrum_gui.qrcodewidget',
+ 'electrum_gui.history_widget',
+ 'electrum_gui.receiving_widget',
+ 'electrum_gui.qt_util',
+ 'electrum_gui.network_dialog',
+ 'electrum_gui.bmp',
+ 'electrum_gui.i18n',
+ 'electrum_gui.plugins',
+ 'electrum_gui.amountedit',
+ 'electrum_plugins.pointofsale',
+ 'electrum_plugins.qrscanner',
+ 'electrum_plugins.aliases',
+ 'electrum_plugins.labels',
+ 'electrum_plugins.virtualkeyboard',
+ ],
description = "Lightweight Bitcoin Wallet",
- author = "thomasv",
+ author = "ecdsa",
+ author_email = "ecdsa@github",
license = "GNU GPLv3",
- url = "http://ecdsa/electrum",
+ url = "http://electrum-desktop.com",
long_description = """Lightweight Bitcoin Wallet"""
)