summaryrefslogtreecommitdiff
path: root/pcr/prosody-modules/PKGBUILD
blob: adc15cfeb1a5fbfbf14075ddde97e28131fbb58b (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
# Copyright (C) 2022 Wael Karram <wael@waelk.tech>
# SPDX-License-Identifier: CC0-1.0
# Maintainer: Parabola hackers <dev@lists.parabola.nu>

# The prosody-modules repository doesn't have tags that correspond to
# the prosody releases. In the prosody source code we have:
# $ hg tags | grep "^0.12.1"
# 0.12.1                         12526:252ed01896dd
# $ hg log
# [...]
# changeset:   12543:cf29bdb74c15
# branch:      0.12
# parent:      12526:252ed01896dd
# user:        Matthew Wild <mwild1@gmail.com>
# date:        Thu Jun 09 12:42:57 2022 +0100
# summary:     Added tag 0.12.1 for changeset 252ed01896dd
# [...]
# changeset:   12526:252ed01896dd
# branch:      0.12
# tag:         0.12.1
# user:        Kim Alvefur <zash@zash.se>
# date:        Fri May 27 14:45:35 2022 +0200
# summary:     mod_smacks: Bounce unhandled stanzas from local origin (fix #1759)
# So we used the revision 4959:0989dea9b356
# and in prosody-modules we have:
# $ hg log
# changeset:   4960:59bedf167910
# user:        Kim Alvefur <zash@zash.se>
# date:        Mon Jun 13 14:25:39 2022 +0200
# summary:     mod_muc_ping: Remove since Prosody mod_muc 0.11+ covers this natively
#
# changeset:   4959:0989dea9b356
# user:        Kim Alvefur <zash@zash.se>
# date:        Sun Jun 05 21:59:17 2022 +0200
# summary:     mod_rest: Add various things to openapi spec
# So we used the commit right before June 09 to correspond to the prosody release

pkgname=prosody-modules
pkgver=0.12.1
pkgrel=1
pkgdesc="Prosody community modules, includes experimental ones."
arch=('any')
url="https://modules.prosody.im/"
license=('MIT')
depends=('prosody')
makedepends=('mercurial')
mksource=("${pkgname}-${pkgver}::hg+https://hg.prosody.im/prosody-modules/#revision=4959:0989dea9b356")
source=("https://repo.parabola.nu/other/${pkgname}-libre/${pkgname}-libre-${pkgver}")
mksha1sums=('SKIP')
sha1sums=('SKIP')

mksource() {
	cd "${srcdir}/${pkgname}-${pkgver}/"
	# Clean up mercurial files.
	# Remove broken, unmaintained and unlicensed modules:
	# Note that only mod_admin_web seems to downloand nonfree dependencies through a script, and needs better inspection.
	# The rest are unlicensed, unmaintained or invasive to user privacy.
	local nonfree_files=( \.hg \.hgtags mod_admin_web mod_auth_external_insecure mod_bookmarks mod_captcha_registrations mod_compression_unsafe mod_couchdb mod_easy_invite mod_graceful_shutdown mod_pubsub_feeds mod_s2s_auth_monkeysphere mod_twitter mod_aws_profile mod_conversejs mod_pubsub_github mod_pubsub_twitter mod_s2s_auth_posh mod_sentry mod_slack_webhooks mod_sms_free mod_sms_clickatel mod_tweet_data )
	for nonfree_file in "${nonfree_files[@]}"
	do if [[ -d ${nonfree_file} || -f ${nonfree_file} ]]
		then
			echo "deleting ${nonfree_file}"
			rm -rf ${nonfree_file}
		else
			echo "cannot delete '${nonfree_file}' - mksource() needs re-working"
			return 1
		fi
	done
}

package() {
	# Make sure that the modules path exists.
	mkdir -p "${pkgdir}/usr/lib/prosody/modules/"
	# Copy the modules.
	cp -r "${srcdir}/${pkgname}-${pkgver}/" "${pkgdir}/usr/lib/prosody/modules/"
}