diff options
author | Gianluca Boiano | 2019-01-22 20:01:55 +0100 |
---|---|---|
committer | Gianluca Boiano | 2019-01-22 20:01:55 +0100 |
commit | 0f446d7516d97584594210b9ebb91c5ad938a43a (patch) | |
tree | 21e4177c9ce632ece3cd8b83dbc281996e4a435c | |
download | aur-0f446d7516d97584594210b9ebb91c5ad938a43a.tar.gz |
libretime-git: first commit
-rw-r--r-- | .SRCINFO | 70 | ||||
-rw-r--r-- | PKGBUILD | 139 | ||||
-rw-r--r-- | airtime-liquidsoap.service | 12 | ||||
-rw-r--r-- | airtime-media-monitor.service | 12 | ||||
-rw-r--r-- | airtime-playout.service | 13 | ||||
-rw-r--r-- | airtime.install | 42 | ||||
-rw-r--r-- | airtime.tmpfiles.conf | 1 |
7 files changed, 289 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..383bf7bf3faf --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,70 @@ +pkgbase = libretime-git + pkgdesc = Open broadcast software for scheduling and station management. + pkgver = 2.5.2.1.r84.gf1f4ab742 + pkgrel = 1 + url = http://www.libretime.org + install = airtime.install + arch = i686 + arch = x86_64 + license = AGPL + makedepends = git + makedepends = python2 + makedepends = python2-setuptools + depends = alsa-utils + depends = coreutils + depends = curl + depends = ecasound + depends = flac + depends = gzip + depends = lsof + depends = mpg123 + depends = multitail + depends = mutagen + depends = patch + depends = perl + depends = php + depends = php-gd + depends = php-pgsql + depends = portaudio + depends = postgresql + depends = pwgen + depends = python2 + depends = python2-amqp + depends = python2-anyjson + depends = python2-argparse + depends = python2-configobj + depends = python2-docopt + depends = python2-kombu + depends = python2-pip + depends = python2-poster + depends = python2-pydispatcher + depends = python2-pyinotify + depends = python2-pytz + depends = python2-virtualenv + depends = python2-wsgiref + depends = rabbitmq + depends = silan + depends = sudo + depends = tar + depends = unzip + optdepends = apache: Apache webserver (webserver needed) + optdepends = nginx: Nginx webserver (webserver needed) + provides = airtime + replaces = airtime + backup = etc/airtime/airtime.conf + backup = etc/airtime/airtime.ini + backup = etc/logrotate.d/airtime-liquidsoap + backup = etc/logrotate.d/airtime-php + source = airtime::git+https://github.com/M0Rf30/airtime + source = airtime-media-monitor.service + source = airtime-liquidsoap.service + source = airtime-playout.service + source = airtime.tmpfiles.conf + md5sums = SKIP + md5sums = f42b444b6b06268a8c8695173b55391c + md5sums = 47a2530a9f0b483d9d2bedc4a4430dec + md5sums = 93f750480f7c49d72cdcdb10cd97c089 + md5sums = d9c15aaa7b1da14acc99e047f58aac66 + +pkgname = libretime-git + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..2468547e9722 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,139 @@ +# Maintainer: robertfoster + +pkgname=libretime-git +pkgver=2.5.2.1.r84.gf1f4ab742 +pkgrel=1 +pkgdesc="Open broadcast software for scheduling and station management." +arch=('i686' 'x86_64') +url="http://www.libretime.org" +license=('AGPL') +depends=('alsa-utils' + 'coreutils' + 'curl' + 'ecasound' + 'flac' + 'gzip' + 'lsof' + 'mpg123' + 'multitail' + 'mutagen' + 'patch' + 'perl' + 'php' + 'php-gd' + 'php-pgsql' + 'portaudio' + 'postgresql' + 'pwgen' + 'python2' + 'python2-amqp' + 'python2-anyjson' + 'python2-argparse' + 'python2-configobj' + 'python2-docopt' + 'python2-kombu' + 'python2-pip' + 'python2-poster' + 'python2-pydispatcher' + 'python2-pyinotify' + 'python2-pytz' + 'python2-virtualenv' + 'python2-wsgiref' + 'rabbitmq' + 'silan' + 'sudo' + 'tar' + 'unzip' +) + +optdepends=('apache: Apache webserver (webserver needed)' + 'nginx: Nginx webserver (webserver needed)') + +makedepends=('git' 'python2' 'python2-setuptools') +provides=('airtime') +replaces=('airtime') +backup=('etc/airtime/airtime.conf' + 'etc/airtime/airtime.ini' + 'etc/logrotate.d/airtime-liquidsoap' + 'etc/logrotate.d/airtime-php') +install=airtime.install + +source=("airtime::git+https://github.com/M0Rf30/airtime" + 'airtime-media-monitor.service' + 'airtime-liquidsoap.service' + 'airtime-playout.service' + 'airtime.tmpfiles.conf') + +branch=2.5.x + +package() { + cd "$srcdir/airtime" + + web_user=http + +msg2 "Creating folders and fixing permissions..." + install -d -m755 "${pkgdir}/usr/share/airtime" + cp -r "airtime_mvc" "${pkgdir}/usr/share/airtime" + cp -r "python_apps" "${pkgdir}/usr/share/airtime" + cp -r "utils" "${pkgdir}/usr/share/airtime" + install -d -m755 "${pkgdir}/usr/share/doc/airtime/examples/" + cp -r "widgets" "${pkgdir}/usr/share/doc/airtime/examples/" + install -d -m1777 "${pkgdir}/var/tmp/" + install -d -m755 "${pkgdir}/var/tmp/airtime" + install -d -m755 "${pkgdir}/var/tmp/airtime/show-recorder/" + install -d -m755 "${pkgdir}/var/log/airtime" + install -d -m655 "${pkgdir}/etc/airtime" + install -d -m755 "${pkgdir}/usr/share/php/" + +msg2 "Installing files..." + install -D -m644 "CREDITS" "${pkgdir}/usr/share/doc/airtime/CREDITS" + install -D -m644 "README" "${pkgdir}/usr/share/doc/airtime/README" + install -D -m644 "changelog" "${pkgdir}/usr/share/doc/airtime/changelog" + install -D -m644 "LICENSE" "${pkgdir}/usr/share/doc/airtime/LICENSE" + install -D -m644 "LICENSE_3RD_PARTY" "${pkgdir}/usr/share/licenses/airtime/LICENSE_3RD_PARTY" + install -D -m644 "airtime_mvc/build/airtime.example.conf" "${pkgdir}/etc/airtime/airtime.example.conf" + install -D -m644 "airtime_mvc/build/airtime.ini" "${pkgdir}/etc/airtime/airtime.ini" + +msg2 "Setting up tmpfiles.d and logrotate.d..." + install -D -m644 ../airtime.tmpfiles.conf "${pkgdir}/usr/lib/tmpfiles.d/airtime.conf" + install -D -m644 "airtime_mvc/build/airtime-php.logrotate" "${pkgdir}/etc/logrotate.d/airtime-php" + install -D -m644 "python_apps/pypo/liquidsoap/airtime-liquidsoap.logrotate" "${pkgdir}/etc/logrotate.d/airtime-liquidsoap" + +#msg2 "Symlinking Zend Framework..." +# ln -sr /usr/share/zendframework/library/ "${pkgdir}/usr/share/php/Zend" +# ln -sr /usr/share/zendframework/library "${pkgdir}/usr/share/php/libzend-framework-php" + +msg2 "Copying Apache and Php confs..." + install -D -m644 "installer/php/airtime.ini" "${pkgdir}/etc/php/conf.d/airtime.ini" + install -D -m644 "installer/apache/airtime-vhost" "${pkgdir}/etc/httpd/conf/extra/httpd-airtime.conf" + +msg2 "Installing systemd services..." + install -D -m644 ../airtime-media-monitor.service "${pkgdir}/usr/lib/systemd/system/airtime-media-monitor.service" + install -D -m644 ../airtime-liquidsoap.service "${pkgdir}/usr/lib/systemd/system/airtime-liquidsoap.service" + install -D -m644 ../airtime-playout.service "${pkgdir}/usr/lib/systemd/system/airtime-playout.service" + +msg2 "Setting up python packages..." + python2 "python_apps/std_err_override/setup.py" install \ + --root="${pkgdir}/" --optimize=1 --install-scripts=/usr/bin + python2 "python_apps/api_clients/setup.py" install \ + --root="${pkgdir}/" --optimize=1 --install-scripts=/usr/bin + python2 "python_apps/media-monitor/setup.py" install \ + --root="${pkgdir}/" --optimize=1 --install-scripts=/usr/bin + python2 "python_apps/pypo/setup.py" install \ + --root="${pkgdir}/" --optimize=1 --install-scripts=/usr/bin + +msg2 "Fixing permissions..." + chown -R ${web_user}:${web_user} "${pkgdir}/var/tmp/airtime" + chown -R ${web_user}:${web_user} "${pkgdir}/var/log/airtime" +} + +pkgver() { + cd airtime + git describe --long --tags | cut -c 9- | sed 's/\([^-]*-g\)/r\1/;s/-/./g' +} + +md5sums=('SKIP' + 'f42b444b6b06268a8c8695173b55391c' + '47a2530a9f0b483d9d2bedc4a4430dec' + '93f750480f7c49d72cdcdb10cd97c089' + 'd9c15aaa7b1da14acc99e047f58aac66') diff --git a/airtime-liquidsoap.service b/airtime-liquidsoap.service new file mode 100644 index 000000000000..2738bfc30570 --- /dev/null +++ b/airtime-liquidsoap.service @@ -0,0 +1,12 @@ +[Unit] +Description=airtime-liquidsoap daemon +After=local-fs.target remote-fs.target network.target + +[Service] +Type=simple +User=root +ExecStart=/usr/bin/airtime-liquidsoap +ExecReload=/usr/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/airtime-media-monitor.service b/airtime-media-monitor.service new file mode 100644 index 000000000000..d2059cea61f8 --- /dev/null +++ b/airtime-media-monitor.service @@ -0,0 +1,12 @@ +[Unit] +Description=airtime-media-monitor daemon +After=local-fs.target remote-fs.target network.target + +[Service] +Type=simple +User=root +ExecStart=/usr/bin/airtime-media-monitor +ExecReload=/usr/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/airtime-playout.service b/airtime-playout.service new file mode 100644 index 000000000000..22e4bbcb7faf --- /dev/null +++ b/airtime-playout.service @@ -0,0 +1,13 @@ +[Unit] +Description=airtime-playout daemon +After=local-fs.target remote-fs.target network.target + +[Service] +Type=simple +User=http +Group=http +ExecStart=/usr/bin/airtime-playout +ExecReload=/usr/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/airtime.install b/airtime.install new file mode 100644 index 000000000000..903b3ad51b6b --- /dev/null +++ b/airtime.install @@ -0,0 +1,42 @@ +post_install() { + if type -P systemd-tmpfiles &> /dev/null; then + systemd-tmpfiles --create airtime.conf + fi + echo ">>> In order to get Airtime working, here's what to do." + echo ">>> Please refer to Arch Linux wiki for php56 and httpd basic setup." + echo "" + echo ">> In /etc/httpd/conf/httpd.conf" + echo "> uncomment" + echo "LoadModule deflate_module modules/mod_deflate.so" + echo "" + echo "> add the lines:" + echo "# Airtime" + echo "Include conf/extra/httpd-airtime.conf" + echo "" + echo ">> In /etc/php/php.ini" + echo "> enable the following modules:" + echo "bcmath pgsql pdo_pgsql gd posix" + echo "> select your timezone:" + echo "ex. date.timezone = Europe/Rome" + echo "" + echo ">> Start rabbitmq" + echo "systemctl start rabbitmq" + echo "" + echo ">> Enable airtime user and vhost on rabbitmq:" + echo "sudo -u rabbitmq rabbitmqctl add_user airtime airtime" + echo "sudo -u rabbitmq rabbitmqctl add_vhost /airtime" + echo "sudo -u rabbitmq rabbitmqctl set_permissions -p /airtime airtime \".*\" \".*\" \".*\"" + echo "" + echo ">> Start PostgreSql as described in Arch Linux Wiki and create an user for airtime" + echo "" + echo ">> Start Apache" + echo "systemctl start httpd" + echo "" + echo "Follow the steps at http://127.0.0.1:80" +} + +post_upgrade() { + if type -P systemd-tmpfiles &> /dev/null; then + systemd-tmpfiles --create airtime.conf + fi +} diff --git a/airtime.tmpfiles.conf b/airtime.tmpfiles.conf new file mode 100644 index 000000000000..d3906c7c3443 --- /dev/null +++ b/airtime.tmpfiles.conf @@ -0,0 +1 @@ +d /run/airtime 0755 http http |