# Contributor: Marian <marian.buschsieweke@ovgu.de>
# Maintainer: Marian <marian.buschsieweke@ovgu.de>
setvar pkgname = 'prosody-modules'
setvar pkgver = '0.9.20170828'
setvar _commit = '595d9d68fd11'
setvar pkgrel = '0'
setvar pkgdesc = ""modules for the prosody XMPP server""
setvar url = ""https://modules.prosody.im/""
setvar arch = ""noarch""
setvar license = ""MIT""
setvar makedepends = """"
# Create one subpackage for every modules considered stable [1]. In addition
# the modules mod-auth-ldap, mod-auth-pam, mod-carbons, mod-mam and mod-smacks
# are included.
# [1]: https://modules.prosody.im/stage_stable.html
setvar subpackages = ""
	prosody-mod-auth_ldap
	prosody-mod-auth_pam
	prosody-mod-auth_sql
	prosody-mod-broadcast
	prosody-mod-carbons
	prosody-mod-c2s_conn_throttle
	prosody-mod-host_guard
	prosody-mod-ipcheck
	prosody-mod-log_auth
	prosody-mod-mam
	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-webpresence""
setvar depends = ""prosody $subpackages""
setvar source = ""${pkgname}-${_commit}.tar.gz::https://hg.prosody.im/prosody-modules/archive/${_commit}.tar.gz""
setvar options = ""!check""
setvar builddir = ""${srcdir}/prosody-modules-${_commit}""

proc package {
	mkdir -p $pkgdir
}

proc _package_mod {
	setvar mod = ""mod_${subpkgname#prosody-mod-}""
	cd $builddir
	if test -f "$mod/$mod.lua"  {
		# 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/"
	}
}

proc auth_ldap {
	setvar depends = ""prosody<0.10 lua5.1-ldap""
	setvar pkgdesc = ""prosody module providing client authentication using LDAP""
	setvar url = ""https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html""
	_package_mod
}

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

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

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

proc carbons {
	setvar depends = ""prosody<0.10""
	setvar pkgdesc = ""prosody module limiting the frequency of login attempts""
	setvar url = ""https://modules.prosody.im/mod_${subpkgname#prosody-mod-}.html""
	_package_mod
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

setvar sha512sums = ""fba8311f4b718b613435536bef36c0c01c62c663d8093ac6710eab9b784a08d4f689658c800f58fe4148bd43d9e0c6a5d56be3f2cff4ead6555a623860cb0825  prosody-modules-595d9d68fd11.tar.gz""