1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149
|
#!/usr/bin/env python
#
#
target = "jsb" # BHJTW change this to /var/cache/jsb on debian
import os
try: from setuptools import setup
except: print "i need setuptools to properly install JSONBOT" ; os._exit(1)
upload = []
def uploadfiles(dir):
upl = []
if not os.path.isdir(dir): print "%s does not exist" % dir ; os._exit(1)
for file in os.listdir(dir):
if not file or file.startswith('.'):
continue
d = dir + os.sep + file
if not os.path.isdir(d):
if file.endswith(".pyc"):
continue
upl.append(d)
return upl
def uploadlist(dir):
upl = []
for file in os.listdir(dir):
if not file or file.startswith('.'):
continue
d = dir + os.sep + file
if os.path.isdir(d):
upl.extend(uploadlist(d))
else:
if file.endswith(".pyc"):
continue
upl.append(d)
return upl
setup(
name='jsb',
version='0.84.4',
url='http://jsonbot.googlecode.com/',
download_url="http://code.google.com/p/jsonbot/downloads",
author='Bart Thate',
author_email='bthate@gmail.com',
description='The bot for you!',
license='MIT',
include_package_data=True,
zip_safe=False,
scripts=['bin/jsb',
'bin/jsb-backup',
'bin/jsb-init',
'bin/jsb-irc',
'bin/jsb-fleet',
'bin/jsb-xmpp',
'bin/jsb-sed',
'bin/jsb-sleek',
'bin/jsb-stop',
'bin/jsb-tornado',
'bin/jsb-udp'],
packages=['jsb',
'jsb.api',
'jsb.lib',
'jsb.lib.rest',
'jsb.db',
'jsb.drivers',
'jsb.drivers.console',
'jsb.drivers.convore',
'jsb.drivers.irc',
'jsb.drivers.sleek',
'jsb.drivers.tornado',
'jsb.drivers.xmpp',
'jsb.utils',
'jsb.plugs',
'jsb.plugs.db',
'jsb.plugs.core',
'jsb.plugs.common',
'jsb.plugs.socket',
'jsb.plugs.myplugs',
'jsb.plugs.myplugs.socket',
'jsb.plugs.myplugs.common',
'jsb.contrib',
'jsb.contrib.simplejson',
'jsb.contrib.tornado',
'jsb.contrib.tornado.test',
'jsb.contrib.tornado.platform',
'jsb.contrib.tweepy',
'jsb/contrib/sleekxmpp',
'jsb/contrib/sleekxmpp/stanza',
'jsb/contrib/sleekxmpp/test',
'jsb/contrib/sleekxmpp/roster',
'jsb/contrib/sleekxmpp/xmlstream',
'jsb/contrib/sleekxmpp/xmlstream/matcher',
'jsb/contrib/sleekxmpp/xmlstream/handler',
'jsb/contrib/sleekxmpp/plugins',
'jsb/contrib/sleekxmpp/plugins/xep_0004',
'jsb/contrib/sleekxmpp/plugins/xep_0004/stanza',
'jsb/contrib/sleekxmpp/plugins/xep_0009',
'jsb/contrib/sleekxmpp/plugins/xep_0009/stanza',
'jsb/contrib/sleekxmpp/plugins/xep_0030',
'jsb/contrib/sleekxmpp/plugins/xep_0030/stanza',
'jsb/contrib/sleekxmpp/plugins/xep_0050',
'jsb/contrib/sleekxmpp/plugins/xep_0059',
'jsb/contrib/sleekxmpp/plugins/xep_0060',
'jsb/contrib/sleekxmpp/plugins/xep_0060/stanza',
'jsb/contrib/sleekxmpp/plugins/xep_0066',
'jsb/contrib/sleekxmpp/plugins/xep_0078',
'jsb/contrib/sleekxmpp/plugins/xep_0085',
'jsb/contrib/sleekxmpp/plugins/xep_0086',
'jsb/contrib/sleekxmpp/plugins/xep_0092',
'jsb/contrib/sleekxmpp/plugins/xep_0128',
'jsb/contrib/sleekxmpp/plugins/xep_0199',
'jsb/contrib/sleekxmpp/plugins/xep_0202',
'jsb/contrib/sleekxmpp/plugins/xep_0203',
'jsb/contrib/sleekxmpp/plugins/xep_0224',
'jsb/contrib/sleekxmpp/plugins/xep_0249',
'jsb/contrib/sleekxmpp/features',
'jsb/contrib/sleekxmpp/features/feature_mechanisms',
'jsb/contrib/sleekxmpp/features/feature_mechanisms/stanza',
'jsb/contrib/sleekxmpp/features/feature_starttls',
'jsb/contrib/sleekxmpp/features/feature_bind',
'jsb/contrib/sleekxmpp/features/feature_session',
'jsb/contrib/sleekxmpp/thirdparty',
'jsb/contrib/sleekxmpp/thirdparty/suelta',
'jsb/contrib/sleekxmpp/thirdparty/suelta/mechanisms',
],
long_description = """ JSONBOT is a remote event-driven framework for building bots that talk JSON to each other over XMPP. This distribution has IRC/Console/XMPP/WWW/Convore bots built on this framework. """,
classifiers=[
'Development Status :: 4 - Beta',
'Environment :: Console',
'Environment :: Other Environment',
'Intended Audience :: Developers',
'License :: OSI Approved :: MIT License',
'Operating System :: Unix',
'Programming Language :: Python',
'Topic :: Communications :: Chat',
'Topic :: Software Development :: Libraries :: Python Modules'],
data_files=[(target + os.sep + 'data', uploadfiles('jsb' + os.sep + 'data')),
(target + os.sep + 'data' + os.sep + 'examples', uploadlist('jsb' + os.sep + 'data' + os.sep + 'examples')),
(target + os.sep + 'data' + os.sep + 'static', uploadlist('jsb' + os.sep + 'data' + os.sep + 'static')),
(target + os.sep + 'data' + os.sep + 'templates', uploadlist('jsb' + os.sep + 'data' + os.sep + 'templates')),
(target + os.sep + 'contrib' + os.sep + 'tornado', ["jsb/contrib/tornado/ca-certificates.crt",])],
package_data={'': ["*.crt"],
},
)
|