aboutsummaryrefslogtreecommitdiffstats
path: root/testing/prosody-modules/APKBUILD
blob: e8bcf4cedfbb792662e1fd45b40daae955f2d77f (plain) (blame)
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
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
# Contributor: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
# Contributor: Galen Abell <galen@galenabell.com>
# Maintainer: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
pkgname=prosody-modules
pkgver=0.11_hg20201208
_commit=2ae71126e379
pkgrel=0
pkgdesc="modules for the prosody XMPP server"
url="https://modules.prosody.im/"
arch="noarch"
license="MIT"
# Create one subpackage for every modules considered stable [1]. In addition
# the modules mod-auth-ldap, mod-auth-pam, mod-conversejs, mod-mam, mod-mam_muc
# and mod-smacks are included.
# [1]: https://modules.prosody.im/stage_stable.html
subpackages="
	prosody-mod-auth_ldap
	prosody-mod-auth_pam
	prosody-mod-auth_sql
	prosody-mod-block_registrations
	prosody-mod-bookmarks
	prosody-mod-broadcast
	prosody-mod-c2s_conn_throttle
	prosody-mod-cloud_notify
	prosody-mod-conversejs
	prosody-mod-host_guard
	prosody-mod-http_upload_external
	prosody-mod-ipcheck
	prosody-mod-log_auth
	prosody-mod-log_slow_events
	prosody-mod-mam
	prosody-mod-mam_muc
	prosody-mod-muc_cloud_notify
	prosody-mod-pastebin
	prosody-mod-register_json
	prosody-mod-register_redirect
	prosody-mod-reload_modules
	prosody-mod-require_otr
	prosody-mod-s2s_idle_timeout
	prosody-mod-saslname
	prosody-mod-server_status
	prosody-mod-smacks
	prosody-mod-stanza_counter
	prosody-mod-support_contact
	prosody-mod-vcard_muc
	prosody-mod-webpresence"
depends="prosody $subpackages"
source="$pkgname-$_commit.tar.gz::https://hg.prosody.im/prosody-modules/archive/$_commit.tar.gz"
options="!check"
builddir="$srcdir/Community-Modules-$_commit"

package() {
	mkdir -p "$pkgdir"
}

_package_mod() {
	mod="mod_${subpkgname#prosody-mod-}"
	cd "$builddir"
	if [ -f "$mod/$mod.lua" ] ; then
		# Module is a single file
		install -Dm644 "$mod/$mod.lua" "$subpkgdir/usr/lib/prosody/modules/$mod.lua"
	else
		# Module is a folder
		mkdir -p "$subpkgdir/usr/lib/prosody/modules"
		cp -R "$mod/$mod" "$subpkgdir/usr/lib/prosody/modules/"
	fi
}

auth_ldap() {
	depends="prosody lua5.2-ldap"
	pkgdesc="prosody module providing client authentication using LDAP"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

auth_pam() {
	depends="prosody"
	pkgdesc="prosody module providing client authentication using PAM"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

auth_sql() {
	depends="prosody"
	pkgdesc="prosody module providing client authentication using SQL db queries"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

block_registrations() {
	depends="prosody"
	pkgdesc="prosody module to allow restricting registration of certain users"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

bookmarks() {
	depends="prosody"
	pkgdesc="prosody module to synchronise bookmarks between Private XML and PEP"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

broadcast() {
	depends="prosody"
	pkgdesc="prosody module similiar to mod_announce, but compatible with shitty clients"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

c2s_conn_throttle() {
	depends="prosody"
	pkgdesc="prosody module limiting the frequency of login attempts"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

cloud_notify() {
	depends="prosody"
	pkgdesc="prosody module for cloud push notifications"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

conversejs() {
	depends="prosody"
	pkgdesc="prosody module to serve an HTML+JavaScript XMPP client via http"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

http_upload_external() {
	depends="prosody"
	pkgdesc="prosody module that delegates http upload handling to another service"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

host_guard() {
	depends="prosody"
	pkgdesc="prosody module configure access for each virtual host XMPP hosts"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

ipcheck() {
	depends="prosody"
	pkgdesc="prosody module implementing XEP-0279: Server IP Check"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

log_auth() {
	depends="prosody"
	pkgdesc="prosody module to log the clients IP address for failed login attempts"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

log_slow_events() {
	depends="prosody"
	pkgdesc="prosody module to log when event handlers (e.g. of modules) perform poorly"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

mam() {
	depends="prosody"
	pkgdesc="prosody module implementing XEP-0313: Message Archive Management"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

mam_muc() {
	depends="prosody"
	pkgdesc="prosody module implementing XEP-0313: Message Archive Management for group chats"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

muc_cloud_notify() {
	depends="prosody"
	pkgdesc="prosody module cloud push notifications for muc"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

pastebin() {
	depends="prosody"
	pkgdesc="prosody module moving large messages in MUCs to a build-in webserver"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

register_json() {
	depends="prosody"
	pkgdesc="prosody module to handle registrations via HTTP POST requests containg JSON"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	# This module does not follow naming conventions, package it manually :-(
	mod="mod_${subpkgname#prosody-mod-}"
	cd "$builddir"
	mkdir -p "$subpkgdir/usr/lib/prosody/modules"
	cp -R "$mod/${mod#mod_}" "$subpkgdir/usr/lib/prosody/modules/"
}

register_redirect() {
	depends="prosody"
	pkgdesc="prosody module showing instructions on how to register for out-of-band methods"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

reload_modules() {
	depends="prosody"
	pkgdesc="prosody module that reloads modules when the config file changes"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

require_otr() {
	depends="prosody"
	pkgdesc="prosody module that forces clients to use OTR encryption"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

s2s_idle_timeout() {
	depends="prosody"
	pkgdesc="prosody module that closes idle s2s connections after a while"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

saslname() {
	depends="prosody"
	pkgdesc="prosody module that implements XEP-0233 to advertise the Kerberes principal name"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

server_status() {
	depends="prosody prosody-mod-stanza_counter"
	pkgdesc="prosody module that publishes the server status as XML/JSON"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

smacks() {
	depends="prosody"
	pkgdesc="prosody module that implements XEP-0198: Stream Management"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

stanza_counter() {
	depends="prosody"
	pkgdesc="prosody module that counts in- and outgoing stanzas"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

support_contact() {
	depends="prosody"
	pkgdesc="prosody module that adds a default contact to newly registered accounts"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

vcard_muc() {
	depends="prosody"
	pkgdesc="prosody module vcard support for muc"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

webpresence() {
	depends="prosody"
	pkgdesc="prosody module that publishes the online status of jabber uses e.g. in a blog"
	url="https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html"
	_package_mod
}

sha512sums="66c4623252f0c29b1fcc11b04893c339716d27a8ca92f63d6f913e7418ac5b1cf3feadbf4ac0038ebe38a6c82a49ba82c0c8bf6ae1ff15cdc60a62aba3a0c1bc  prosody-modules-2ae71126e379.tar.gz"