summaryrefslogtreecommitdiff
path: root/pcr/asterisk
diff options
context:
space:
mode:
Diffstat (limited to 'pcr/asterisk')
-rw-r--r--pcr/asterisk/PKGBUILD95
-rw-r--r--pcr/asterisk/asterisk.install15
-rw-r--r--pcr/asterisk/asterisk.logrotated10
-rw-r--r--pcr/asterisk/asterisk.service20
-rw-r--r--pcr/asterisk/asterisk.tmpfile1
5 files changed, 141 insertions, 0 deletions
diff --git a/pcr/asterisk/PKGBUILD b/pcr/asterisk/PKGBUILD
new file mode 100644
index 000000000..01bc1ae6e
--- /dev/null
+++ b/pcr/asterisk/PKGBUILD
@@ -0,0 +1,95 @@
+# Maintainer : Xavier Devlamynck <magicrhesus@ouranos.be>
+# Contributor: Alessio Biancalana <dottorblaster@gmail.com>
+# Contributor: Maik Broemme <mbroemme@libmpq.org>
+
+pkgname=asterisk
+pkgver=11.5.0
+pkgrel=2
+pkgdesc="A complete PBX solution"
+arch=('i686' 'x86_64')
+backup=('etc/asterisk/acl.conf' 'etc/asterisk/adsi.conf'
+'etc/asterisk/agents.conf' 'etc/asterisk/alarmreceiver.conf'
+'etc/asterisk/alsa.conf' 'etc/asterisk/amd.conf'
+'etc/asterisk/app_mysql.conf' 'etc/asterisk/app_skel.conf'
+'etc/asterisk/asterisk.conf' 'etc/asterisk/calendar.conf'
+'etc/asterisk/ccss.conf' 'etc/asterisk/cdr.conf'
+'etc/asterisk/cdr_adaptive_odbc.conf' 'etc/asterisk/cdr_custom.conf'
+'etc/asterisk/cdr_manager.conf' 'etc/asterisk/cdr_mysql.conf'
+'etc/asterisk/cdr_odbc.conf' 'etc/asterisk/cdr_pgsql.conf'
+'etc/asterisk/cdr_sqlite3_custom.conf' 'etc/asterisk/cdr_syslog.conf'
+'etc/asterisk/cdr_tds.conf' 'etc/asterisk/cel.conf'
+'etc/asterisk/cel_custom.conf' 'etc/asterisk/cel_odbc.conf'
+'etc/asterisk/cel_pgsql.conf' 'etc/asterisk/cel_sqlite3_custom.conf'
+'etc/asterisk/cel_tds.conf' 'etc/asterisk/chan_dahdi.conf'
+'etc/asterisk/chan_mobile.conf' 'etc/asterisk/cli.conf'
+'etc/asterisk/cli_aliases.conf' 'etc/asterisk/cli_permissions.conf'
+'etc/asterisk/codecs.conf' 'etc/asterisk/confbridge.conf'
+'etc/asterisk/config_test.conf' 'etc/asterisk/console.conf'
+'etc/asterisk/dbsep.conf' 'etc/asterisk/dnsmgr.conf'
+'etc/asterisk/dsp.conf' 'etc/asterisk/dundi.conf'
+'etc/asterisk/enum.conf' 'etc/asterisk/extconfig.conf'
+'etc/asterisk/extensions.conf' 'etc/asterisk/extensions_minivm.conf'
+'etc/asterisk/features.conf' 'etc/asterisk/festival.conf'
+'etc/asterisk/followme.conf' 'etc/asterisk/func_odbc.conf'
+'etc/asterisk/gtalk.conf' 'etc/asterisk/h323.conf'
+'etc/asterisk/http.conf' 'etc/asterisk/iax.conf'
+'etc/asterisk/iaxprov.conf' 'etc/asterisk/indications.conf'
+'etc/asterisk/jabber.conf' 'etc/asterisk/jingle.conf'
+'etc/asterisk/logger.conf' 'etc/asterisk/manager.conf'
+'etc/asterisk/meetme.conf' 'etc/asterisk/mgcp.conf'
+'etc/asterisk/minivm.conf' 'etc/asterisk/misdn.conf'
+'etc/asterisk/modules.conf' 'etc/asterisk/motif.conf'
+'etc/asterisk/musiconhold.conf' 'etc/asterisk/muted.conf'
+'etc/asterisk/ooh323.conf' 'etc/asterisk/osp.conf'
+'etc/asterisk/oss.conf' 'etc/asterisk/phone.conf'
+'etc/asterisk/phoneprov.conf' 'etc/asterisk/queuerules.conf'
+'etc/asterisk/queues.conf' 'etc/asterisk/res_config_mysql.conf'
+'etc/asterisk/res_config_sqlite.conf'
+'etc/asterisk/res_config_sqlite3.conf' 'etc/asterisk/res_corosync.conf'
+'etc/asterisk/res_curl.conf' 'etc/asterisk/res_fax.conf'
+'etc/asterisk/res_ldap.conf' 'etc/asterisk/res_odbc.conf'
+'etc/asterisk/res_pgsql.conf' 'etc/asterisk/res_pktccops.conf'
+'etc/asterisk/res_snmp.conf' 'etc/asterisk/res_stun_monitor.conf'
+'etc/asterisk/rtp.conf' 'etc/asterisk/say.conf' 'etc/asterisk/sip.conf'
+'etc/asterisk/sip_notify.conf' 'etc/asterisk/skinny.conf'
+'etc/asterisk/sla.conf' 'etc/asterisk/smdi.conf'
+'etc/asterisk/udptl.conf' 'etc/asterisk/unistim.conf'
+'etc/asterisk/users.conf' 'etc/asterisk/voicemail.conf'
+'etc/asterisk/vpb.conf' 'etc/asterisk/xmpp.conf')
+url="http://www.asterisk.org"
+license=('GPL')
+depends=('alsa-lib' 'speex' 'popt' 'libvorbis' 'curl')
+makedepends=('postgresql' 'unixodbc' 'sqlite3')
+optdepends=('libpri' 'libss7' 'openr2' 'iksemel' 'radiusclient-ng' 'dahdi')
+source=(http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-${pkgver}.tar.gz \
+ ${pkgname}.service \
+ ${pkgname}.logrotated \
+ ${pkgname}.tmpfile)
+install=${pkgname}.install
+sha256sums=('a82c1ddd9fb1d98f0dab6e0255a127fb7c7eaa687b3d515182458244062b4194'
+ '74e0b278d553499f0c648a6e3d55c0dbb11b0c6dc93a85b020a21eafadb83783'
+ 'caa24cfec5c6b4f8cea385269e39557362acad7e2a552994c3bc24080e3bdd4e'
+ '673c0c55bce8068c297f9cdd389402c2d5d5a25e2cf84732cb071198bd6fa78a')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --sbindir=/usr/bin
+ make
+}
+
+package(){
+ cd ${srcdir}/${pkgname}-${pkgver}
+ make DESTDIR=${pkgdir} install
+ make DESTDIR=${pkgdir} samples
+
+ sed -i -e "s/\/var\/run/\/run/" ${pkgdir}/etc/asterisk/asterisk.conf
+
+ mkdir -p ${pkgdir}/usr/share/doc/asterisk/examples
+ for i in ${pkgdir}/etc/asterisk/*; do install -D -m 644 $i ${pkgdir}/usr/share/doc/asterisk/examples/; done
+
+ mv ${pkgdir}/var/run ${pkgdir}
+
+ install -D -m 644 ${srcdir}/asterisk.logrotated ${pkgdir}/etc/logrotate.d/asterisk
+ install -D -m 644 ${srcdir}/asterisk.service ${pkgdir}/usr/lib/systemd/system/asterisk.service
+ install -D -m 644 ${srcdir}/asterisk.tmpfile ${pkgdir}/usr/lib/tmpfiles.d/asterisk.conf
+ }
diff --git a/pcr/asterisk/asterisk.install b/pcr/asterisk/asterisk.install
new file mode 100644
index 000000000..b7c1a71f7
--- /dev/null
+++ b/pcr/asterisk/asterisk.install
@@ -0,0 +1,15 @@
+post_install() {
+ groupadd -r asterisk
+ useradd -MNr -s /bin/false -d /run/asterisk -g asterisk asterisk && passwd -l asterisk &>/dev/null
+
+ chown -R asterisk:asterisk /etc/asterisk
+ chown -R asterisk:asterisk /var/lib/asterisk
+ chown -R asterisk:asterisk /var/log/asterisk
+ chown -R asterisk:asterisk /run/asterisk
+ chown -R asterisk:asterisk /var/spool/asterisk
+}
+
+post_remove() {
+ userdel asterisk &>/dev/null
+ groupdel asterisk &>/dev/null
+}
diff --git a/pcr/asterisk/asterisk.logrotated b/pcr/asterisk/asterisk.logrotated
new file mode 100644
index 000000000..f03d0acd3
--- /dev/null
+++ b/pcr/asterisk/asterisk.logrotated
@@ -0,0 +1,10 @@
+/var/log/asterisk/*_log /var/log/asterisk/messages {
+ create 640 asterisk asterisk
+ compress
+ missingok
+ notifempty
+ postrotate
+ /usr/sbin/asterisk -rx "logger reload" 1>/dev/null || true
+ endscript
+}
+
diff --git a/pcr/asterisk/asterisk.service b/pcr/asterisk/asterisk.service
new file mode 100644
index 000000000..789a1adda
--- /dev/null
+++ b/pcr/asterisk/asterisk.service
@@ -0,0 +1,20 @@
+[Unit]
+Description=Asterisk PBX and telephony daemon
+Documentation=man:asterisk(8)
+Wants=network.target
+After=network.target
+
+[Service]
+Type=simple
+User=asterisk
+Group=asterisk
+ExecStart=/usr/bin/asterisk -f -C /etc/asterisk/asterisk.conf
+ExecStop=/usr/bin/asterisk -rx 'core stop now'
+ExecReload=/usr/bin/asterisk -rx 'core reload'
+
+# safe_asterisk emulation
+Restart=always
+RestartSec=10
+
+[Install]
+WantedBy=multi-user.target
diff --git a/pcr/asterisk/asterisk.tmpfile b/pcr/asterisk/asterisk.tmpfile
new file mode 100644
index 000000000..6f1042e8a
--- /dev/null
+++ b/pcr/asterisk/asterisk.tmpfile
@@ -0,0 +1 @@
+d /run/asterisk 0755 asterisk asterisk -