blob: f9e163e4888aee79594387df8fe1720816cfe642 (
plain)
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
|
# Maintainer: Fabio Manganiello <fabio@manganiello.tech>
pkgname=platypush-git
pkgver=1.0.5.r1.gff608966
pkgrel=1
pkgdesc="A general-purpose, event-driven, plugin-based platform for automation-as-code"
arch=('any')
license=('MIT')
backup=(
'etc/platypush/config.yaml'
)
url="https://platypush.tech"
makedepends=('git')
depends=(
'python'
'python-alembic'
'python-croniter'
'python-dateutil'
'python-docutils'
'python-flask'
'python-frozendict'
'python-magic'
'python-marshmallow'
'python-marshmallow-dataclass'
'python-pip'
'python-psutil'
'python-pytz'
'python-redis'
'python-requests'
'python-rsa'
'python-setuptools'
'python-sqlalchemy'
'python-tornado'
'python-websocket-client'
'python-websockets'
'python-wheel'
'python-yaml'
'python-zeroconf'
'redis'
'sudo'
)
optdepends=(
'ffmpeg: Audio, streaming and several camera integrations'
'libtorrent: Support for torrent download'
'opencv: Support for cameras and image processing over the OpenCV integration'
'py-trello: Trello integration'
'python-aiohttp: SmartThings support'
'python-aioxmpp: XMPP support'
'python-bleak: Bluetooth low-energy devices support'
'python-bme280: Support for the BME280 digital sensor over I2C interface'
'python-deepspeech: Mozilla Deepspeech integration'
'python-defusedxml: RSS and DBus integration support'
'python-dropbox: Dropbox integration'
'python-feedparser: RSS integration support'
'python-google-api-python-client: Support for several Google integrations'
'python-google-cloud-texttospeech: Support for Google Cloud text-to-speech integration'
'python-google-cloud-translate: Support for the Google Translate integration'
'python-gpsd-git: Support for the GPS integration and several GPS devices'
'python-graphyte: Graphite integration'
'python-icalendar: Support for calendar integrations'
'python-imapclient: Mail integrations'
'python-irc: IRC integration'
'python-inotify: Support for filesystem monitoring integrations'
'python-kafka: Kafka integration support'
'python-keras: Tensorflow integration'
'python-kodi-json: Support for the Kodi integration'
'python-linode_api4: Linode cloud integration'
'python-matrix-nio: Matrix integration'
'python-mpd2: MPD/Mopidy integration support'
'python-mpv: mpv integration'
'python-ndeflib: NFC tags integration'
'python-nfcpy: NFC tags integration'
'python-nmap: nmap integration'
'python-numpy: Strongly advised for any camera, sound, voice or ML-based integration'
'python-oauth2client: Support for several Google integrations'
'python-paho-mqtt: MQTT integrations support'
'python-pandas: Tensorflow integration'
'python-paramiko: SSH support'
'python-phue: Philips Hue (and compatible) devices support'
'python-pillow: Support for several camera integrations and QR codes'
'python-plexapi: Support for the Plex integration'
'python-py-cpuinfo: System information plugin'
'python-pybluez: Bluetooth support'
'python-pychromecast: Chromecast support'
'python-pyclip: Clipboard integration'
'python-pycups: Printers integration'
'python-pydbus: DBus and Bluetooth integration'
'python-pylast: Last.fm scrobbling support'
'python-pyotp: OTP support'
'python-pyscard: Support for the smart card integration'
'python-pyserial: Arduino/serial device support'
'python-qrcode: QR code integration'
'python-rpi-gpio: Support for GPIO integrations for Raspberry Pi (and compatible) devices'
'python-rtmidi: MIDI integration'
'python-snowboy: Snowboy integration'
'python-sounddevice: Sound integration'
'python-telegram-bot: Telegram integration'
'python-tensorflow: Tensorflow integration'
'python-todoist-python: Todoist integration'
'python-twilio: Twilio integration'
'python-vlc: VLC integration'
'python-watchdog: File monitor support'
'python-weasyprint: PDF generation support'
'pyzbar: QR code and barcodes integration'
'yt-dlp: Support for downloading/streaming YouTube videos, as well as other video platforms'
)
conflicts=('platypush')
provides=('platypush')
options=(!strip)
source=("master.tar.gz::https://git.platypush.tech/platypush/platypush/archive/master.tar.gz")
sha256sums=('SKIP')
package() {
cd "${srcdir}/platypush"
PYTHONDONTWRITEBYTECODE=1 python3 setup.py install --root="${pkgdir}/" --optimize=1
install -m750 -d "${pkgdir}/var/lib/platypush"
install -m755 -d "${pkgdir}/usr/lib/systemd/system"
install -m755 -d "${pkgdir}/usr/lib/systemd/user"
install -m750 -d "${pkgdir}/etc/platypush/scripts"
install -m755 -d "${pkgdir}/usr/lib/sysusers.d"
install -m755 -d "${pkgdir}/usr/lib/tmpfiles.d"
install -m644 "${srcdir}/platypush/platypush/config/systemd/platypush.service" "${pkgdir}/usr/lib/systemd/user/platypush.service"
install -m644 "${srcdir}/platypush/platypush/config/systemd/platypush.service" "${pkgdir}/usr/lib/systemd/system/platypush.service"
sed -i "${pkgdir}/usr/lib/systemd/system/platypush.service" -r \
-e 's/^#\s*Requires=(.*)/Requires=\1/' \
-e 's/^\[Service\]$/\[Service\]\
User=platypush\
Group=platypush\
WorkingDirectory=\/var\/lib\/platypush\
Environment="PLATYPUSH_CONFIG=\/etc\/platypush\/config.yaml"\
Environment="PLATYPUSH_WORKDIR=\/var\/lib\/platypush"/'
install -m644 "${srcdir}/platypush/platypush/config/config.yaml" "${pkgdir}/etc/platypush/config.yaml"
install -Dm644 "${srcdir}/platypush/platypush/config/systemd/platypush-sysusers.conf" "${pkgdir}/usr/lib/sysusers.d/platypush.conf"
install -Dm644 "${srcdir}/platypush/platypush/config/systemd/platypush-tmpfile.conf" "${pkgdir}/usr/lib/tmpfiles.d/platypush.conf"
}
|