mirror of
https://github.com/onionshare/onionshare.git
synced 2024-10-01 01:35:40 -04:00
82 lines
3.3 KiB
Python
82 lines
3.3 KiB
Python
#!/usr/bin/env python
|
|
# -*- coding: utf-8 -*-
|
|
|
|
import os, sys, platform
|
|
from glob import glob
|
|
|
|
try:
|
|
from setuptools import setup
|
|
except ImportError:
|
|
from distutils.core import setup
|
|
|
|
def file_list(path):
|
|
files = []
|
|
for filename in os.listdir(path):
|
|
if os.path.isfile(path+'/'+filename):
|
|
files.append(path+'/'+filename)
|
|
return files
|
|
|
|
version = open('version').read().strip()
|
|
args = {}
|
|
|
|
if platform.system() == 'Darwin':
|
|
args['data_files'] = ['LICENSE', 'README.md', 'version']
|
|
args['app'] = ['setup/onionshare-launcher.py']
|
|
args['options'] = {
|
|
'py2app': {
|
|
'argv_emulation': True,
|
|
'packages': ['flask', 'stem', 'jinja2', 'onionshare_gui', 'onionshare'],
|
|
'includes': ['PyQt4'],
|
|
'excludes': ['PyQt4.QtDesigner', 'PyQt4.QtOpenGL', 'PyQt4.QtScript', 'PyQt4.QtSql', 'PyQt4.QtTest', 'PyQt4.QtXml', 'PyQt4.phonon'],
|
|
'iconfile': 'setup/onionshare.icns',
|
|
'qt_plugins': 'imageformats',
|
|
'site_packages': True,
|
|
'plist': {
|
|
'CFBundleName': 'OnionShare',
|
|
}
|
|
}
|
|
}
|
|
args['setup_requires'] = 'py2app'
|
|
|
|
elif platform.system() == 'Windows':
|
|
import py2exe
|
|
args['windows'] = [{'script':'setup/onionshare-launcher.py'}]
|
|
args['data_files'] = [
|
|
('', ['LICENSE', 'README.md', 'version']),
|
|
('onionshare', ['onionshare/index.html', 'onionshare/404.html', 'onionshare/strings.json']),
|
|
('onionshare_gui', ['onionshare_gui/onionshare-icon.png']),
|
|
('onionshare_gui/templates', glob('onionshare_gui/templates/*')),
|
|
('onionshare_gui/static', glob('onionshare_gui/static/*'))
|
|
]
|
|
args['options'] = {
|
|
'py2exe': {
|
|
'includes': ['sip', 'PyQt4', 'PyQt4.QtNetwork'],
|
|
'dll_excludes': ['MSVCP90.dll'],
|
|
'packages': ['jinja2', 'flask', 'stem'],
|
|
'skip_archive': True
|
|
}
|
|
}
|
|
|
|
else:
|
|
args['packages'] = ['onionshare', 'onionshare_gui']
|
|
args['include_package_data'] = True
|
|
args['scripts'] = ['bin/onionshare', 'bin/onionshare-gui']
|
|
args['data_files'] = [
|
|
('/usr/share/applications', ['setup/onionshare.desktop']),
|
|
('/usr/share/pixmaps', ['setup/onionshare80.xpm'])
|
|
]
|
|
|
|
setup(
|
|
name='onionshare',
|
|
version=version,
|
|
description='OnionShare lets you securely and anonymously share a file of any size with someone. It works by starting a web server, making it accessible as a Tor hidden service, and generating an unguessable URL to access and download the file.',
|
|
long_description="""OnionShare lets you securely and anonymously share a file of any size with someone. It works by starting a web server, making it accessible as a Tor hidden service, and generating an unguessable URL to access and download the file. It doesn't require setting up a server on the internet somewhere or using a third party filesharing service. You host the file on your own computer and use a Tor hidden service to make it temporarily accessible over the internet. The other user just needs to use Tor Browser to download the file from you.""",
|
|
author='Micah Lee',
|
|
author_email='micah@micahflee.com',
|
|
url='https://github.com/micahflee/onionshare',
|
|
license="GPL v3",
|
|
keywords='onion, share, onionshare, tor, anonymous, web server',
|
|
**args
|
|
)
|
|
|