summaryrefslogtreecommitdiff
path: root/testing/lighttpd
diff options
context:
space:
mode:
Diffstat (limited to 'testing/lighttpd')
-rw-r--r--testing/lighttpd/PKGBUILD71
-rw-r--r--testing/lighttpd/lighttpd.conf12
-rw-r--r--testing/lighttpd/lighttpd.logrotate.d9
-rw-r--r--testing/lighttpd/lighttpd.rc.d127
-rw-r--r--testing/lighttpd/lighttpd.service11
-rw-r--r--testing/lighttpd/lighttpd.tmpfiles1
6 files changed, 231 insertions, 0 deletions
diff --git a/testing/lighttpd/PKGBUILD b/testing/lighttpd/PKGBUILD
new file mode 100644
index 000000000..90702eaa0
--- /dev/null
+++ b/testing/lighttpd/PKGBUILD
@@ -0,0 +1,71 @@
+# $Id: PKGBUILD 160014 2012-05-28 01:48:30Z pierre $
+# Maintainer: Pierre Schmitz <pierre@archlinux.de>
+
+pkgname=lighttpd
+pkgver=1.4.30
+pkgrel=4
+pkgdesc='A secure, fast, compliant and very flexible web-server'
+license=('custom')
+arch=('i686' 'x86_64')
+url="http://www.lighttpd.net/"
+depends=('pcre' 'bzip2' 'libldap' 'util-linux')
+makedepends=('fcgi' 'libmysqlclient' 'lua' 'libxml2' 'e2fsprogs' 'sqlite' 'gdbm' 'pkgconfig')
+optdepends=('libxml2: mod_webdav'
+ 'lua: mod_cml/mod_magnet'
+ 'libmysqlclient: mod_mysql_vhost'
+ 'sqlite: mod_webdav')
+backup=('etc/lighttpd/lighttpd.conf' 'etc/logrotate.d/lighttpd')
+options=('!libtool' 'emptydirs')
+source=("http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-${pkgver}.tar.xz"
+ "http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-${pkgver}.tar.xz.asc"
+ 'lighttpd.rc.d' 'lighttpd.logrotate.d' 'lighttpd.conf' 'lighttpd.tmpfiles' 'lighttpd.service')
+sha256sums=('c237692366935b19ef8a6a600b2f3c9b259a9c3107271594c081a45902bd9c9b'
+ '941ab747aeb97ca111fb670d21eefecdf745debc5e139bc5bd6881ee66b2742a'
+ 'dacfa1d748e5ac38c2d51d8310acad76d85ba5c1fe02a93534cf032400429257'
+ '6df18675691384c48b9137c8f18ca238055001f1077baf05cb8322247b475a77'
+ 'ee56422fe48f2683ccb5ca2e3dc6bad79ea8e1cbd043b21d2ea73b87018e35aa'
+ 'ce214a5fdf81085c35cce0faa2e2b5712a70ba15896ef5fa90e6d674d5bdcd89'
+ 'd6c302d190b53c85f69b48ce7ca15cab5f6a097af5f3af495bd3dc3ef52a5776')
+
+build() {
+ cd $srcdir/$pkgname-$pkgver
+
+ ./configure --prefix=/usr \
+ --libexecdir=/usr/lib/lighttpd/modules \
+ --sysconfdir=/etc/lighttpd \
+ --with-mysql \
+ --with-ldap \
+ --with-attr \
+ --with-openssl \
+ --with-kerberos5 \
+ --without-fam \
+ --with-webdav-props \
+ --with-webdav-locks \
+ --with-gdbm \
+ --with-memcache \
+ --with-lua
+ make
+}
+
+check() {
+ cd $srcdir/$pkgname-$pkgver
+ make check
+}
+
+package() {
+ cd $srcdir/$pkgname-$pkgver
+ make DESTDIR=$pkgdir install
+
+ install -D -m755 $srcdir/lighttpd.rc.d $pkgdir/etc/rc.d/lighttpd
+ install -D -m644 $srcdir/lighttpd.logrotate.d $pkgdir/etc/logrotate.d/lighttpd
+ install -D -m644 $srcdir/lighttpd.conf $pkgdir/etc/lighttpd/lighttpd.conf
+ install -d -m755 -o http -g http $pkgdir/var/{log,cache}/lighttpd/
+ install -D -m644 ${srcdir}/lighttpd.tmpfiles ${pkgdir}/etc/tmpfiles.d/lighttpd.tmpfiles
+ install -D -m644 ${srcdir}/lighttpd.service ${pkgdir}/usr/lib/systemd/system/lighttpd.service
+
+ pushd doc/config >/dev/null
+ find . -type f ! -name 'Makefile*' -exec install -D -m644 {} ${pkgdir}/usr/share/doc/lighttpd/config/{} \;
+ popd >/dev/null
+
+ install -D -m644 COPYING $pkgdir/usr/share/licenses/$pkgname/COPYING
+}
diff --git a/testing/lighttpd/lighttpd.conf b/testing/lighttpd/lighttpd.conf
new file mode 100644
index 000000000..ed192352a
--- /dev/null
+++ b/testing/lighttpd/lighttpd.conf
@@ -0,0 +1,12 @@
+# This is a minimal example config
+# See /usr/share/doc/lighttpd
+# and http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions
+
+server.port = 80
+server.username = "http"
+server.groupname = "http"
+server.document-root = "/srv/http"
+server.errorlog = "/var/log/lighttpd/error.log"
+dir-listing.activate = "enable"
+index-file.names = ( "index.html" )
+mimetype.assign = ( ".html" => "text/html", ".txt" => "text/plain", ".jpg" => "image/jpeg", ".png" => "image/png", "" => "application/octet-stream" )
diff --git a/testing/lighttpd/lighttpd.logrotate.d b/testing/lighttpd/lighttpd.logrotate.d
new file mode 100644
index 000000000..76f98785c
--- /dev/null
+++ b/testing/lighttpd/lighttpd.logrotate.d
@@ -0,0 +1,9 @@
+/var/log/lighttpd/*log {
+ missingok
+ copytruncate
+ notifempty
+ sharedscripts
+ postrotate
+ /usr/bin/killall -HUP lighttpd-angel &>/dev/null || true
+ endscript
+}
diff --git a/testing/lighttpd/lighttpd.rc.d b/testing/lighttpd/lighttpd.rc.d
new file mode 100644
index 000000000..7b16cba63
--- /dev/null
+++ b/testing/lighttpd/lighttpd.rc.d
@@ -0,0 +1,127 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+
+pid_file='/var/run/lighttpd/lighttpd-angel.pid'
+
+get_pid() {
+ if [ -r "${pid_file}" ]; then
+ cat "${pid_file}"
+ else
+ pgrep -f /usr/sbin/lighttpd-angel
+ fi
+}
+
+test_config() {
+ stat_busy 'Checking configuration'
+ if [ $(id -u) -ne 0 ]; then
+ stat_append '(This script must be run as root)'
+ stat_die
+ fi
+
+ if [ ! -r /etc/lighttpd/lighttpd.conf ]; then
+ stat_append '(/etc/lighttpd/lighttpd.conf not found)'
+ stat_die
+ fi
+
+ /usr/sbin/lighttpd -t -f /etc/lighttpd/lighttpd.conf >/dev/null 2>&1
+ if [ $? -gt 0 ]; then
+ stat_append '(error in /etc/lighttpd/lighttpd.conf)'
+ stat_die
+ fi
+
+ stat_done
+}
+
+start() {
+ stat_busy 'Starting lighttpd'
+
+ local PID=$(get_pid)
+ if [ -z "$PID" ]; then
+ nohup /usr/sbin/lighttpd-angel -D -f /etc/lighttpd/lighttpd.conf >>/var/log/lighttpd/lighttpd-angel.log 2>&1 &
+ if [ $? -gt 0 ]; then
+ stat_die
+ else
+ echo $! > "${pid_file}"
+ add_daemon lighttpd
+ stat_done
+ fi
+ else
+ stat_die
+ fi
+}
+
+stop() {
+ stat_busy 'Stopping lighttpd'
+ local PID=$(get_pid)
+ [ -n "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ [ -f "${pid_file}" ] && rm -f "${pid_file}"
+ rm_daemon lighttpd
+ stat_done
+ fi
+}
+
+gracefull-stop() {
+ stat_busy 'Stopping lighttpd gracefully'
+ local PID=$(get_pid)
+ [ -n "$PID" ] && kill -INT $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ [ -f "${pid_file}" ] && rm -f "${pid_file}"
+ rm_daemon lighttpd
+ stat_done
+ fi
+}
+
+reload() {
+ stat_busy 'Reloading lighttpd'
+ local PID=$(get_pid)
+ [ -n "$PID" ] && kill -HUP $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_die
+ else
+ stat_done
+ fi
+}
+
+
+case "$1" in
+ start)
+ test_config
+ start
+ ;;
+ stop)
+ test_config
+ stop
+ ;;
+ gracefull-stop)
+ test_config
+ stop
+ ;;
+ reload)
+ test_config
+ reload
+ ;;
+ restart)
+ test_config
+ stop
+ while [ -n "$(get_pid)" ]; do
+ sleep 1
+ done
+ start
+ ;;
+ status)
+ stat_busy 'Checking lighttpd status'
+ ck_status lighttpd
+ ;;
+ *)
+ echo "usage: $0 {start|stop|gracefull-stop|reload|restart|status}"
+esac
+
+exit 0
diff --git a/testing/lighttpd/lighttpd.service b/testing/lighttpd/lighttpd.service
new file mode 100644
index 000000000..af427063e
--- /dev/null
+++ b/testing/lighttpd/lighttpd.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=A secure, fast, compliant and very flexible web-server
+After=syslog.target network.target
+
+[Service]
+ExecStart=/usr/sbin/lighttpd-angel -D -f /etc/lighttpd/lighttpd.conf
+ExecReload=/bin/kill -HUP $MAINPID
+KillSignal=SIGINT
+
+[Install]
+WantedBy=multi-user.target
diff --git a/testing/lighttpd/lighttpd.tmpfiles b/testing/lighttpd/lighttpd.tmpfiles
new file mode 100644
index 000000000..cb72b68c8
--- /dev/null
+++ b/testing/lighttpd/lighttpd.tmpfiles
@@ -0,0 +1 @@
+d /var/run/lighttpd 755 http http