diff options
author | Bennett Goble <nivardus@gmail.com> | 2015-07-03 14:10:12 -0400 |
---|---|---|
committer | Bartłomiej Piotrowski <b@bpiotrowski.pl> | 2015-07-04 19:10:18 +0200 |
commit | faa11c327beef4f2ce95e635399e3a459cc58c53 (patch) | |
tree | ac50cb53cf673d74a4c31d311b3310c0f37130d7 | |
parent | aaa28b17629cf8def22c010ecc7f20e9cc842e38 (diff) | |
download | aports-faa11c327beef4f2ce95e635399e3a459cc58c53.tar.bz2 aports-faa11c327beef4f2ce95e635399e3a459cc58c53.tar.xz |
testing/h2o: new aport
https://h2o.examp1e.net
An optimized HTTP/1, HTTP/2 server written in C
-rw-r--r-- | testing/h2o/APKBUILD | 70 | ||||
-rw-r--r-- | testing/h2o/h2o.conf | 13 | ||||
-rw-r--r-- | testing/h2o/h2o.initd | 45 | ||||
-rw-r--r-- | testing/h2o/h2o.logrotate | 8 | ||||
-rwxr-xr-x | testing/h2o/h2o.pre-install | 7 |
5 files changed, 143 insertions, 0 deletions
diff --git a/testing/h2o/APKBUILD b/testing/h2o/APKBUILD new file mode 100644 index 0000000000..2d644f5aa2 --- /dev/null +++ b/testing/h2o/APKBUILD @@ -0,0 +1,70 @@ +# Contributor: Bennett Goble <nivardus@gmail.com> +# Maintainer: Bennett Goble <nivardus@gmail.com> + +pkgname=h2o +pkgver=1.3.1 +pkgrel=0 +pkgdesc="An optimized HTTP/1, HTTP/2 server written in C" +url="https://h2o.examp1e.net" +arch="all" +license="MIT" +depends="perl" +makedepends="cmake wslay-dev openssl-dev libuv-dev libyaml-dev" +install="" +subpackages="$pkgname-dev $pkgname-doc" +source="saveas-https://github.com/h2o/h2o/archive/v$pkgver.tar.gz/$pkgname-$pkgver.tar.gz + h2o.conf + h2o.initd + h2o.logrotate + h2o.pre-install" + +_builddir="$srcdir/$pkgname-$pkgver" +_logdir=/var/log/$pkgname +_confdir=/etc + +prepare() { + cd "$_builddir" + sed -i 's@__linux__@__GLIBC__@g' src/main.c + cmake -DBUILD_SHARED_LIBS=on -DCMAKE_INSTALL_PREFIX=/usr . || return 1 +} + +build() { + cd "$_builddir" + make -j1 || return 1 + make libh2o || return 1 +} + +package() { + cd "$_builddir" + make DESTDIR="$pkgdir" install || return 1 + + install -m755 -D "$srcdir"/$pkgname.initd \ + "$pkgdir/etc/init.d/$pkgname" || return 1 + + install -m644 -D "$srcdir"/$pkgname.logrotate \ + "$pkgdir"/etc/logrotate.d/$pkgname || return 1 + + install -m644 -D "$srcdir"/$pkgname.conf \ + "$pkgdir"/$_confdir/$pkgname.conf || return 1 + + install -m644 -D "$_builddir"/examples/doc_root/index.html \ + "$pkgdir"/var/www/index.html || return 1 + + install -m700 -d "$pkgdir"/$_logdir || return 1 +} + +md5sums="5d47658e1199a9a3fdd63c38279a6727 h2o-1.3.1.tar.gz +7d986844504a8106732d0128063faea0 h2o.conf +a1ad5f38f26603bd673106e7d6848469 h2o.initd +bb8f7d3d7589b6fca65b563f984cddda h2o.logrotate +1668a90bef913eb64fd8b146c20e191b h2o.pre-install" +sha256sums="8668a7c70cdb59eef4e67889569a45e0cf75b95eec133bd30435879cbdb77fba h2o-1.3.1.tar.gz +05a712800b959aa3440307afdcd7a3a6ab8c17f48e1bfa3751a87cc67baf8737 h2o.conf +707c02f7f47590e5bbea5688e2a5ca014a861dfdd4e0013f64094cb45d3ac397 h2o.initd +43c3bacfddd1fc6c3c9a985e915bfd555e6282b27bb8da8862272d187490832e h2o.logrotate +f91a270890603ccadaa9baaaf4ea94408ebe9c46bca04f730e22f194ea11cd91 h2o.pre-install" +sha512sums="47710de9854d6652f80be5ae87e2b6888cb0081c343fa9f0b0bd1a37b97c73454db5d51135c7a4ad29a384098a54252327e549089f9a33b58757bfcf611b3aa5 h2o-1.3.1.tar.gz +444f55c3eaae1f349223036086e45c983ea8be89e793068537ec25488c4065174bc509d0987ddc65a0357cb8acfec272e90d13ea7cdadf9cf112953d857aa574 h2o.conf +e93e66a6b00b1bff94e37489c5fdf99d9d657adc63975ec54be30f8da23dafe7d7389f02a6452ed819efc9d8398aa716782a7fd6d8509621a975ed954b73bef9 h2o.initd +3d2c9e36c48cbb974d0691e4af8e9eb8f13e3bebb98a30417cdc87e76a4b5cddc4e4f665ebea26b95174287b95d002fdc3363f30ffcf15247fcd0530fe1abfcc h2o.logrotate +de19a71edf333df19fe10f9e0a4c417039cacab21e17c5b771af53efbed645998d0d02accc3498e3107eddf4c00becdc2f304d08e425b16b7f1fe2e20a08cc86 h2o.pre-install" diff --git a/testing/h2o/h2o.conf b/testing/h2o/h2o.conf new file mode 100644 index 0000000000..448709c67a --- /dev/null +++ b/testing/h2o/h2o.conf @@ -0,0 +1,13 @@ +user: h2o +pid-file: /var/run/h2o.pid +error-log: /var/log/h2o/error.log +access-log: /var/log/h2o/access.log + +listen: + port: 80 +hosts: + "Default": + paths: + /: + file.dir: /var/www + diff --git a/testing/h2o/h2o.initd b/testing/h2o/h2o.initd new file mode 100644 index 0000000000..47e301d334 --- /dev/null +++ b/testing/h2o/h2o.initd @@ -0,0 +1,45 @@ +#!/sbin/openrc-run + +extra_started_commands="reload" +extra_commands="configtest" +conffile=/etc/h2o.conf +pidfile=/var/run/h2o.pid +command=/usr/bin/h2o +command_args="-c $conffile -m master" + +depend() { + need net + after sshd + use dns logger netmount +} + +start_pre() { + configtest || return 1 +} + +start() { + ebegin "Starting h2o" + start-stop-daemon --start \ + --background \ + --pidfile ${pidfile} \ + --exec ${command} \ + -- ${command_args} + eend $? +} + +reload() { + configtest || return 1 + ebegin "Refreshing h2o configuration" + kill -HUP `cat $pidfile` &>/dev/null + eend $? "Failed to reload h2o" +} + +configtest() { + ebegin "Checking h2o configuration" + + if [ ! -f "${conffile}" ]; then + ewarn "${conffile} does not exist." + return 1 + fi +} + diff --git a/testing/h2o/h2o.logrotate b/testing/h2o/h2o.logrotate new file mode 100644 index 0000000000..5139fa4a03 --- /dev/null +++ b/testing/h2o/h2o.logrotate @@ -0,0 +1,8 @@ +/var/log/h2o/*.log { + missingok + sharedscripts + delaycompress + postrotate + /etc/init.d/h2o reload > /dev/null + endscript +} diff --git a/testing/h2o/h2o.pre-install b/testing/h2o/h2o.pre-install new file mode 100755 index 0000000000..11474f5afe --- /dev/null +++ b/testing/h2o/h2o.pre-install @@ -0,0 +1,7 @@ +#!/bin/sh + +adduser -s /sbin/nologin -h /var/www -D -S -H h2o 2>/dev/null +addgroup -g 82 -S www-data 2>/dev/null +addgroup h2o www-data 2/dev/null + +exit 0 |