diff options
author | Trey Blancher | 2022-07-06 20:29:30 -0400 |
---|---|---|
committer | Trey Blancher | 2022-07-06 20:29:30 -0400 |
commit | a20c416c8aa5124ac00afc550dbb1edf05f362eb (patch) | |
tree | d317db69773961fbf6597126e0948cbc83b60876 | |
download | aur-a20c416c8aa5124ac00afc550dbb1edf05f362eb.tar.gz |
Initial commit
-rw-r--r-- | .SRCINFO | 166 | ||||
-rw-r--r-- | .gitignore | 5 | ||||
-rw-r--r-- | PKGBUILD | 230 | ||||
-rw-r--r-- | asterisk.logrotated | 10 | ||||
-rw-r--r-- | asterisk.sysusers | 1 | ||||
-rw-r--r-- | asterisk.tmpfiles | 9 |
6 files changed, 421 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..8eb03c46a502 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,166 @@ +pkgbase = asterisk-lts-18 + pkgdesc = A complete open source PBX toolkit - Long Term Support release 18 + pkgver = 18.13.0 + pkgrel = 3 + url = https://www.asterisk.org + arch = x86_64 + arch = i686 + arch = aarch64 + arch = armv7h + license = GPL + makedepends = gsm + makedepends = sqlite3 + depends = alsa-lib + depends = curl + depends = gsm + depends = imap + depends = jansson + depends = libedit + depends = libsrtp + depends = libvorbis + depends = libxml2 + depends = libvpx + depends = libx11 + depends = libxslt + depends = lua53 + depends = opus + depends = popt + depends = postgresql-libs + depends = python + depends = speex + optdepends = dahdi + optdepends = libpri + optdepends = libss7 + optdepends = openr2 + optdepends = postgresql + optdepends = sqlite3 + optdepends = unixodbc + provides = asterisk=18.13.0 + conflicts = asterisk + backup = etc/asterisk/acl.conf + backup = etc/asterisk/adsi.conf + backup = etc/asterisk/aeap.conf + backup = etc/asterisk/agents.conf + backup = etc/asterisk/alarmreceiver.conf + backup = etc/asterisk/alsa.conf + backup = etc/asterisk/amd.conf + backup = etc/asterisk/app_mysql.conf + backup = etc/asterisk/app_skel.conf + backup = etc/asterisk/ari.conf + backup = etc/asterisk/ast_debug_tools.conf + backup = etc/asterisk/asterisk.adsi + backup = etc/asterisk/asterisk.conf + backup = etc/asterisk/calendar.conf + backup = etc/asterisk/ccss.conf + backup = etc/asterisk/cdr_adaptive_odbc.conf + backup = etc/asterisk/cdr_beanstalkd.conf + backup = etc/asterisk/cdr.conf + backup = etc/asterisk/cdr_custom.conf + backup = etc/asterisk/cdr_manager.conf + backup = etc/asterisk/cdr_mysql.conf + backup = etc/asterisk/cdr_odbc.conf + backup = etc/asterisk/cdr_pgsql.conf + backup = etc/asterisk/cdr_sqlite3_custom.conf + backup = etc/asterisk/cdr_syslog.conf + backup = etc/asterisk/cdr_tds.conf + backup = etc/asterisk/cel_beanstalkd.conf + backup = etc/asterisk/cel.conf + backup = etc/asterisk/cel_custom.conf + backup = etc/asterisk/cel_odbc.conf + backup = etc/asterisk/cel_pgsql.conf + backup = etc/asterisk/cel_sqlite3_custom.conf + backup = etc/asterisk/cel_tds.conf + backup = etc/asterisk/chan_dahdi.conf + backup = etc/asterisk/chan_mobile.conf + backup = etc/asterisk/cli_aliases.conf + backup = etc/asterisk/cli.conf + backup = etc/asterisk/cli_permissions.conf + backup = etc/asterisk/codecs.conf + backup = etc/asterisk/confbridge.conf + backup = etc/asterisk/config_test.conf + backup = etc/asterisk/console.conf + backup = etc/asterisk/dbsep.conf + backup = etc/asterisk/dnsmgr.conf + backup = etc/asterisk/dsp.conf + backup = etc/asterisk/dundi.conf + backup = etc/asterisk/enum.conf + backup = etc/asterisk/extconfig.conf + backup = etc/asterisk/extensions.ael + backup = etc/asterisk/extensions.conf + backup = etc/asterisk/extensions.lua + backup = etc/asterisk/extensions_minivm.conf + backup = etc/asterisk/features.conf + backup = etc/asterisk/festival.conf + backup = etc/asterisk/followme.conf + backup = etc/asterisk/func_odbc.conf + backup = etc/asterisk/hep.conf + backup = etc/asterisk/http.conf + backup = etc/asterisk/iax.conf + backup = etc/asterisk/iaxprov.conf + backup = etc/asterisk/indications.conf + backup = etc/asterisk/logger.conf + backup = etc/asterisk/manager.conf + backup = etc/asterisk/meetme.conf + backup = etc/asterisk/mgcp.conf + backup = etc/asterisk/minivm.conf + backup = etc/asterisk/misdn.conf + backup = etc/asterisk/modules.conf + backup = etc/asterisk/motif.conf + backup = etc/asterisk/musiconhold.conf + backup = etc/asterisk/muted.conf + backup = etc/asterisk/ooh323.conf + backup = etc/asterisk/osp.conf + backup = etc/asterisk/oss.conf + backup = etc/asterisk/phone.conf + backup = etc/asterisk/phoneprov.conf + backup = etc/asterisk/pjproject.conf + backup = etc/asterisk/pjsip.conf + backup = etc/asterisk/pjsip_notify.conf + backup = etc/asterisk/pjsip_wizard.conf + backup = etc/asterisk/prometheus.conf + backup = etc/asterisk/queuerules.conf + backup = etc/asterisk/queues.conf + backup = etc/asterisk/res_config_mysql.conf + backup = etc/asterisk/res_config_sqlite3.conf + backup = etc/asterisk/res_config_sqlite.conf + backup = etc/asterisk/res_corosync.conf + backup = etc/asterisk/res_curl.conf + backup = etc/asterisk/res_fax.conf + backup = etc/asterisk/res_ldap.conf + backup = etc/asterisk/res_odbc.conf + backup = etc/asterisk/resolver_unbound.conf + backup = etc/asterisk/res_parking.conf + backup = etc/asterisk/res_pgsql.conf + backup = etc/asterisk/res_pktccops.conf + backup = etc/asterisk/res_snmp.conf + backup = etc/asterisk/res_stun_monitor.conf + backup = etc/asterisk/rtp.conf + backup = etc/asterisk/say.conf + backup = etc/asterisk/sip.conf + backup = etc/asterisk/sip_notify.conf + backup = etc/asterisk/skinny.conf + backup = etc/asterisk/sla.conf + backup = etc/asterisk/smdi.conf + backup = etc/asterisk/sorcery.conf + backup = etc/asterisk/ss7.timers + backup = etc/asterisk/stasis.conf + backup = etc/asterisk/statsd.conf + backup = etc/asterisk/stir_shaken.conf + backup = etc/asterisk/telcordia-1.adsi + backup = etc/asterisk/test_sorcery.conf + backup = etc/asterisk/udptl.conf + backup = etc/asterisk/unistim.conf + backup = etc/asterisk/users.conf + backup = etc/asterisk/voicemail.conf + backup = etc/asterisk/vpb.conf + backup = etc/asterisk/xmpp.conf + source = https://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-18.13.0.tar.gz + source = asterisk.sysusers + source = asterisk.logrotated + source = asterisk.tmpfiles + sha256sums = 92681b928b75309860ebfd192ad8d1db3df3cdaebab401a2abc666ffaea096bf + sha256sums = 38a53911647fb2308482179cba605ebf12345df37eed23eb4ea67bf0bf041486 + sha256sums = b97dc10a262621c95e4b75e024834712efd58561267b59b9171c959ecd9f7164 + sha256sums = 7b1ec60ca71699b84fa6809da38358854f200fab110f9803bce79fc8522e52d1 + +pkgname = asterisk-lts-18 diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000000..db03b549c56f --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +*.zst +*.sha256 +*.tar.gz +pkg/* +src/* diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..862267bb7996 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,230 @@ +# Maintainer: Trey Blancher <trey at blancher dot net> +# Contributor: Nigel Kukard <nkukard@lbsd.net> +# Contributor: Caleb Maclennan <caleb@alerque.com> +# Contributor: Maxim Kurnosenko <asusx2@mail.ru> +# Contributor: Xavier Devlamynck <magicrhesus@ouranos.be> +# Contributor: Alessio Biancalana <dottorblaster@gmail.com> +# Contributor: Maik Broemme <mbroemme@libmpq.org> +# Contributor: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> + +_pkg=asterisk +pkgname=${_pkg}-lts-18 +pkgver=18.13.0 +pkgrel=3 +pkgdesc='A complete open source PBX toolkit - Long Term Support release 18' +arch=(x86_64 i686 aarch64 armv7h) +url=https://www.asterisk.org +license=(GPL) +provides=("${_pkg}=${pkgver}") +conflicts=(${_pkg}) +depends=(alsa-lib + curl + gsm + imap + jansson + libedit + libsrtp + libvorbis + libxml2 + libvpx + libx11 + libxslt + lua53 + opus + popt + postgresql-libs + python + speex) +makedepends=(gsm + sqlite3) +optdepends=(dahdi + libpri + libss7 + openr2 + postgresql + sqlite3 + unixodbc) +_confs=(acl.conf + adsi.conf + aeap.conf + agents.conf + alarmreceiver.conf + alsa.conf + amd.conf + app_mysql.conf + app_skel.conf + ari.conf + ast_debug_tools.conf + asterisk.adsi + asterisk.conf + calendar.conf + ccss.conf + cdr_adaptive_odbc.conf + cdr_beanstalkd.conf + cdr.conf + cdr_custom.conf + cdr_manager.conf + cdr_mysql.conf + cdr_odbc.conf + cdr_pgsql.conf + cdr_sqlite3_custom.conf + cdr_syslog.conf + cdr_tds.conf + cel_beanstalkd.conf + cel.conf + cel_custom.conf + cel_odbc.conf + cel_pgsql.conf + cel_sqlite3_custom.conf + cel_tds.conf + chan_dahdi.conf + chan_mobile.conf + cli_aliases.conf + cli.conf + cli_permissions.conf + codecs.conf + confbridge.conf + config_test.conf + console.conf + dbsep.conf + dnsmgr.conf + dsp.conf + dundi.conf + enum.conf + extconfig.conf + extensions.ael + extensions.conf + extensions.lua + extensions_minivm.conf + features.conf + festival.conf + followme.conf + func_odbc.conf + hep.conf + http.conf + iax.conf + iaxprov.conf + indications.conf + logger.conf + manager.conf + meetme.conf + mgcp.conf + minivm.conf + misdn.conf + modules.conf + motif.conf + musiconhold.conf + muted.conf + ooh323.conf + osp.conf + oss.conf + phone.conf + phoneprov.conf + pjproject.conf + pjsip.conf + pjsip_notify.conf + pjsip_wizard.conf + prometheus.conf + queuerules.conf + queues.conf + res_config_mysql.conf + res_config_sqlite3.conf + res_config_sqlite.conf + res_corosync.conf + res_curl.conf + res_fax.conf + res_ldap.conf + res_odbc.conf + resolver_unbound.conf + res_parking.conf + res_pgsql.conf + res_pktccops.conf + res_snmp.conf + res_stun_monitor.conf + rtp.conf + say.conf + sip.conf + sip_notify.conf + skinny.conf + sla.conf + smdi.conf + sorcery.conf + ss7.timers + stasis.conf + statsd.conf + stir_shaken.conf + telcordia-1.adsi + test_sorcery.conf + udptl.conf + unistim.conf + users.conf + voicemail.conf + vpb.conf + xmpp.conf) +backup=("${_confs[@]/#/etc/$_pkg/}") +_archive="${_pkg}-$pkgver" +source=("https://downloads.asterisk.org/pub/telephony/${_pkg}/releases/$_archive.tar.gz" + "${_pkg}.sysusers" + "${_pkg}.logrotated" + "${_pkg}.tmpfiles") +sha256sums=('92681b928b75309860ebfd192ad8d1db3df3cdaebab401a2abc666ffaea096bf' + '38a53911647fb2308482179cba605ebf12345df37eed23eb4ea67bf0bf041486' + 'b97dc10a262621c95e4b75e024834712efd58561267b59b9171c959ecd9f7164' + '7b1ec60ca71699b84fa6809da38358854f200fab110f9803bce79fc8522e52d1') + +build() { + cd "$_archive" + + # Work around Cyrus bug #2629 + # https://github.com/cyrusimap/cyrus-imapd/issues/2629 + export LDFLAGS="${LDFLAGS/,--as-needed}" + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --sbindir=/usr/bin \ + --with-imap=system + + make MENUSELECT_CFLAGS= OPTIMIZE= DEBUG= ASTVARRUNDIR=/run/asterisk NOISY_BUILD=1 +} + +package(){ + cd "$_archive" + make DESTDIR="$pkgdir" install + make DESTDIR="$pkgdir" install-headers + make DESTDIR="$pkgdir" samples + + # Not entirely convinced this part is necessary, LTS releases shouldn't be + # adding features, so the _confs and backup arrays shouldn't change. + # Keeping here for posterity, need to go through a few pkgver and pkgrel + # bumps before we remove this. 2022-05-26 I was actually wrong about this, + # Asterisk 18.12 introduced a new config file, aeap.conf. New features could + # be added to Asterisk 18 until 2024-10-20, when it goes into Security Fix Only. + # From 'asterisk' PKGBUILD: Backup file list changes frequently and is hard + # to keep up to date. Check that our current meta data matches whatever just + # got packaged, else flunk with a helpful output of where the lists differ. + # We have to compare twice because cmp has a useful exit code, comm has + # useful output, neither both + local _backs=($(cd "$pkgdir/etc/${_pkg}" && echo *)) + cmp -s \ + <(IFS=$'\n'; echo "${_confs[*]}" | sort) \ + <(IFS=$'\n'; echo "${_backs[*]}" | sort) || + (comm -3 --nocheck-order \ + <(IFS=$'\n'; echo "${_confs[*]}" | sort) \ + <(IFS=$'\n'; echo "${_backs[*]}" | sort) && + exit 1) + + sed -i -e 's,/var/run,/run,' "$pkgdir/etc/asterisk/asterisk.conf" + install -Dm644 -t "$pkgdir/usr/share/doc/${_pkg}/examples" "$pkgdir/etc/asterisk/"* + + mv "$pkgdir/var/run" "$pkgdir" + + pushd contrib/systemd + install -Dm644 -t "$pkgdir/usr/lib/systemd/system/" "$pkname"*.{service,socket} + + pushd "$srcdir" + install -Dm644 "${_pkg}.sysusers" "$pkgdir/usr/lib/sysusers.d/${_pkg}.conf" + install -Dm644 "${_pkg}.logrotated" "$pkgdir/etc/logrotate.d/${_pkg}" + install -Dm644 "${_pkg}.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/${_pkg}.conf" +} diff --git a/asterisk.logrotated b/asterisk.logrotated new file mode 100644 index 000000000000..4bf367be3b21 --- /dev/null +++ b/asterisk.logrotated @@ -0,0 +1,10 @@ +/var/log/asterisk/*_log /var/log/asterisk/messages.log { + create 640 asterisk asterisk + compress + missingok + notifempty + postrotate + /usr/sbin/asterisk -rx "logger reload" 1>/dev/null || true + endscript +} + diff --git a/asterisk.sysusers b/asterisk.sysusers new file mode 100644 index 000000000000..55b15621b6db --- /dev/null +++ b/asterisk.sysusers @@ -0,0 +1 @@ +u asterisk /usr/bin/asterisk "Asterisk PBX and telephony" /run/asterisk diff --git a/asterisk.tmpfiles b/asterisk.tmpfiles new file mode 100644 index 000000000000..d4704a55866b --- /dev/null +++ b/asterisk.tmpfiles @@ -0,0 +1,9 @@ +d /run/asterisk 0750 asterisk asterisk - +z /etc/asterisk/*.adsi 0640 asterisk asterisk +z /etc/asterisk/*.ael 0640 asterisk asterisk +z /etc/asterisk/*.conf 0640 asterisk asterisk +z /etc/asterisk/*.lua 0640 asterisk asterisk +d /run/asterisk 0750 asterisk asterisk - +d /var/lib/asterisk 0750 asterisk asterisk - +d /var/log/asterisk 0750 asterisk asterisk - +d /var/spool/asterisk 0750 asterisk asterisk - |