9d7a77af7ca878e588b768f0d5894b279bddff68
[rainbowstream.git] / setup.py
1 from setuptools import setup, find_packages
2 import os
3 import os.path
4 import sys
5
6 if sys.version[0] == "2":
7 from pipes import quote
8 else:
9 from shlex import quote
10
11 # Bumped version
12 version = '1.5.0'
13
14 # Require
15 install_requires = [
16 "python-dateutil",
17 "arrow",
18 "requests==2.5.3",
19 "pyfiglet",
20 "twitter",
21 "Pillow",
22 "PySocks",
23 "pocket"
24 ]
25
26 # Default user (considers non virtualenv method)
27 user = os.environ.get('SUDO_USER', os.environ.get('USER', None))
28
29 # Copy default config if not exists
30 default = os.path.expanduser("~") + os.sep + '.rainbow_config.json'
31 if not os.path.isfile(default):
32 cmd = 'cp rainbowstream/colorset/config ' + default
33 os.system(cmd)
34 if user:
35 cmd = 'chown ' + quote(user) + ' ' + default
36 os.system(cmd)
37 cmd = 'chmod 777 ' + default
38 os.system(cmd)
39
40 # Setup
41 setup(name='rainbowstream',
42 version=version,
43 description="A smart and nice Twitter client on terminal.",
44 long_description=open("./README.rst", "r").read(),
45 classifiers=[
46 "Development Status :: 5 - Production/Stable",
47 "Environment :: Console",
48 "Intended Audience :: End Users/Desktop",
49 "Natural Language :: English",
50 "Operating System :: OS Independent",
51 "Programming Language :: Python :: 2.7",
52 "Programming Language :: Python :: 3.2",
53 "Programming Language :: Python :: 3.3",
54 "Programming Language :: Python :: 3.4",
55 "Programming Language :: Python :: 3.5",
56 "Programming Language :: Python :: 3.6",
57 "Programming Language :: Python :: 3.7",
58 "Topic :: Internet :: WWW/HTTP :: Dynamic Content :: CGI Tools/Libraries",
59 "Topic :: Utilities",
60 "License :: OSI Approved :: MIT License",
61 ],
62 keywords='twitter, command-line tools, stream API',
63 author='Vu Nhat Minh',
64 author_email='nhatminh179@gmail.com',
65 url='http://www.rainbowstream.org/',
66 license='MIT License',
67 packages=find_packages(exclude=['ez_setup', 'examples', 'tests']),
68 include_package_data=True,
69 zip_safe=True,
70 install_requires=install_requires,
71 entry_points="""
72 # -*- Entry points: -*-
73 [console_scripts]
74 rainbowstream=rainbowstream.rainbow:fly
75 """,
76 )