platypush/setup.py

108 lines
4.2 KiB
Python
Raw Normal View History

2017-11-03 12:41:15 +01:00
#!/usr/bin/env python
2017-11-03 15:06:29 +01:00
import errno
import os
from setuptools import setup, find_packages
def read(fname):
return open(os.path.join(os.path.dirname(__file__), fname)).read()
2017-11-03 15:06:29 +01:00
def pkg_files(dir):
paths = []
for (path, dirs, files) in os.walk(dir):
for file in files:
paths.append(os.path.join('..', path, file))
return paths
def create_etc_dir():
2017-12-11 20:30:57 +01:00
path = '/etc/platypush'
2017-11-03 15:06:29 +01:00
try:
os.makedirs(path)
except OSError as e:
2017-11-03 23:14:19 +01:00
if isinstance(e, PermissionError):
2017-12-11 20:30:57 +01:00
print('WARNING: Could not create /etc/platypush')
2017-11-03 23:14:19 +01:00
elif e.errno == errno.EEXIST and os.path.isdir(path):
2017-11-03 15:06:29 +01:00
pass
else:
raise
2017-12-11 20:30:57 +01:00
plugins = pkg_files('platypush/plugins')
backend = pkg_files('platypush/backend')
# create_etc_dir()
2017-11-03 15:06:29 +01:00
setup(
2017-12-11 20:30:57 +01:00
name = "platypush",
2019-02-24 19:04:07 +01:00
version = "0.9.6",
author = "Fabio Manganiello",
author_email = "info@fabiomanganiello.com",
2017-12-11 20:30:57 +01:00
description = ("Platypush service"),
2017-11-03 18:06:58 +01:00
license = "MIT",
2017-11-03 22:54:08 +01:00
python_requires = '>= 3',
keywords = "pushbullet notifications automation",
2017-12-11 20:30:57 +01:00
url = "https://github.com/BlackLight/platypush",
packages = find_packages(),
include_package_data = True,
2017-11-03 22:54:08 +01:00
entry_points = {
'console_scripts': [
2018-01-04 16:11:54 +01:00
'platypush=platypush:main',
'pusher=platypush.pusher:main',
'platydock=platypush.platydock:main',
2017-11-03 22:54:08 +01:00
],
},
scripts = ['bin/platyvenv'],
# data_files = [
# ('/etc/platypush', ['platypush/config.example.yaml'])
# ],
2017-11-03 15:06:29 +01:00
long_description = read('README.md'),
classifiers = [
"Topic :: Utilities",
2017-11-03 23:09:19 +01:00
"License :: OSI Approved :: MIT License",
2017-11-03 22:54:08 +01:00
"Development Status :: 3 - Alpha",
],
2017-11-03 15:06:29 +01:00
install_requires = [
'pyyaml',
'redis',
'requests',
2017-11-03 22:54:08 +01:00
],
extras_require = {
'Support for custom thread and process names': ['python-prctl'],
'Support for Apache Kafka backend': ['kafka-python'],
2018-12-27 02:30:34 +01:00
'Support for Pushbullet backend': ['requests', 'pushbullet.py'],
'Support for HTTP backend': ['flask','websockets', 'python-dateutil'],
2018-01-09 18:44:45 +01:00
'Support for HTTP poll backend': ['frozendict'],
'Support for external web server': ['uwsgi'],
'Support for database plugin': ['sqlalchemy'],
'Support for RSS feeds': ['feedparser'],
'Support for PDF generation': ['weasyprint'],
'Support for Philips Hue plugin': ['phue'],
2017-12-16 02:27:51 +01:00
'Support for MPD/Mopidy music server plugin': ['python-mpd2'],
'Support for Belkin WeMo Switch plugin': ['ouimeaux'],
2017-12-27 00:39:06 +01:00
'Support for text2speech plugin': ['mplayer'],
'Support for OMXPlayer plugin': ['omxplayer'],
'Support for YouTube in the OMXPlayer plugin': ['youtube-dl'],
'Support for torrents download': ['python-libtorrent'],
2018-01-09 18:44:45 +01:00
'Support for Google Assistant': ['google-assistant-library'],
'Support for the Google APIs': ['google-api-python-client'],
2018-01-11 19:31:44 +01:00
'Support for most of the HTTP poll backends': ['python-dateutil'],
'Support for Last.FM scrobbler plugin': ['pylast'],
'Support for custom hotword detection': ['snowboy'],
'Support for real-time MIDI events': ['rtmidi'],
'Support for GPIO pins access': ['RPi.GPIO'],
'Support for MCP3008 analog-to-digital converter plugin': ['adafruit-mcp3008'],
2018-05-27 10:50:48 +02:00
'Support for smart cards detection': ['pyscard'],
'Support for ICal calendars': ['icalendar', 'python-dateutil'],
2018-09-18 18:58:19 +02:00
'Support for joystick backend': ['inputs'],
2018-11-12 16:50:20 +01:00
'Support for Kodi plugin': ['kodi-json'],
'Support for Plex plugin': ['plexapi'],
'Support for Chromecast plugin': ['pychromecast'],
2018-12-15 01:18:45 +01:00
'Support for sound devices': ['sounddevice', 'soundfile', 'numpy'],
2019-02-12 22:54:53 +01:00
'Support for web media subtitles': ['webvtt-py'],
'Support for mopidy backend': ['websocket-client'],
2019-02-19 00:15:03 +01:00
'Support for mpv player plugin': ['python-mpv'],
# 'Support for Leap Motion backend': ['git+ssh://git@github.com:BlackLight/leap-sdk-python3.git'],
# 'Support for Flic buttons': ['git+https://@github.com/50ButtonsEach/fliclib-linux-hci.git']
# 'Support for media subtitles': ['git+https://github.com/agonzalezro/python-opensubtitles#egg=python-opensubtitles']
},
)