Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100755 87 lines (81 sloc) 3.001 kb
04f2eab @liftoff Commit #1: The Gate One beta is about to go public.
authored
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3
4 from distutils.core import setup
5 import sys, os
6
7 version = '0.9'
8 install_path = '/opt'
9
10 def walk_data_files(path, install_path="/opt"):
11 """
12 Walks *path* and returns a list suitable for use in data_files.
13 *install_path* will be used as the base installation path of the output.
14
15 NOTE: Ignores .git directories.
16 """
17 out = []
18 for (dirpath, dirs, filenames) in os.walk(path):
19 if ".git" in dirs:
20 del dirs[dirs.index(".git")]
21 thesefiles = []
22 final_path = os.path.join(install_path, dirpath)
23 for fname in filenames:
24 file_path = os.path.join(dirpath, fname)
25 thesefiles.append(file_path)
26 out.append((final_path, thesefiles))
27 return out
28
29 # Take care of our data files
30 gateone_files=[ # Start with the basics...
31 (install_path + '/gateone', [
32 'gateone/auth.py', # Yes, we're treating Python files as data files
33 'gateone/gateone.py', # ...because Gate One is not a module.
34 'LICENSE.txt', # Why bother? Because users are familiar with
35 'gateone/logviewer.py', # the setup.py method *and* it can create .rpm
36 'gateone/sso.py', # files for us (among other things).
37 'gateone/terminal.py',
38 'gateone/termio.py',
39 'gateone/utils.py',
40 ])
41 ]
42 static_files = walk_data_files('gateone/static')
43 template_files = walk_data_files('gateone/templates')
44 docs_files = walk_data_files('gateone/docs')
45 plugin_files = walk_data_files('gateone/plugins')
46 test_files = walk_data_files('gateone/tests')
47 # Put it all together
48 data_files = (
49 gateone_files +
50 static_files +
51 template_files +
52 docs_files +
53 plugin_files +
54 test_files
55 )
56
57 setup(
58 name = 'gateone',
59 license = 'AGPLv3 or Proprietary',
60 version = version,
61 description = 'Web-based Terminal Emulator and SSH Client',
62 long_description = (
63 'Gate One is a web-based terminal emulator and SSH client with many '
64 'unique and advanced features.'),
65 classifiers = [
66 "Development Status : 4 - Beta",
67 "Operating System :: Unix",
68 "Environment :: Console",
69 "Environment :: Web Environment",
70 "Intended Audience :: End Users/Desktop",
71 "Intended Audience :: Developers",
72 "Intended Audience :: System Administrators",
73 # NOTE: Wish there was a "Tornado" framework option
74 "Programming Language :: Python :: 2.6",
75 "License :: OSI Approved :: GNU Affero General Public License v3",
76 "License :: Other/Proprietary License",
77 "Topic :: Internet :: WWW/HTTP",
78 "Topic :: Terminals"
79 ], # Get strings from http://pypi.python.org/pypi?%3Aaction=list_classifiers
80 keywords = 'web administration terminal vt100 xterm emulation',
81 url = "http:/liftoffsoftware.com/",
82 author = 'Dan McDougall',
83 author_email = 'daniel.mcdougall@liftoffsoftware.com',
84 requires=["tornado (>=2.1)"],
85 provides = ['gateone'],
86 data_files = data_files,
87 )
Something went wrong with that request. Please try again.