summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorKasei Wang2021-03-23 19:18:43 +0800
committerKasei Wang2021-03-23 19:18:43 +0800
commitdfc1ce3cb170c1bbe7b6c90941ff62d7473e732b (patch)
treecabc93b95d605be28b3b2345311f01aeaa51b42e
downloadaur-dfc1ce3cb170c1bbe7b6c90941ff62d7473e732b.tar.gz
addpkg: nginx-quiche 1.16.1-1
-rw-r--r--.SRCINFO55
-rw-r--r--PKGBUILD174
-rw-r--r--logrotate10
-rw-r--r--nginx.install27
-rw-r--r--service16
5 files changed, 282 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..3d105b63b514
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,55 @@
+pkgbase = nginx
+ pkgdesc = Lightweight HTTP server and IMAP/POP3 proxy server
+ pkgver = 1.16.1
+ pkgrel = 1
+ url = https://nginx.org
+ install = nginx.install
+ arch = x86_64
+ license = custom
+ checkdepends = perl
+ checkdepends = perl-gd
+ checkdepends = perl-io-socket-ssl
+ checkdepends = perl-fcgi
+ checkdepends = perl-cache-memcached
+ checkdepends = memcached
+ checkdepends = ffmpeg
+ checkdepends = inetutils
+ makedepends = git
+ makedepends = mercurial
+ makedepends = cmake
+ makedepends = rust
+ depends = pcre
+ depends = zlib
+ depends = openssl
+ depends = geoip
+ depends = mailcap
+ backup = etc/nginx/fastcgi.conf
+ backup = etc/nginx/fastcgi_params
+ backup = etc/nginx/koi-win
+ backup = etc/nginx/koi-utf
+ backup = etc/nginx/nginx.conf
+ backup = etc/nginx/scgi_params
+ backup = etc/nginx/uwsgi_params
+ backup = etc/nginx/win-utf
+ backup = etc/logrotate.d/nginx
+ source = https://nginx.org/download/nginx-1.16.1.tar.gz
+ source = https://nginx.org/download/nginx-1.16.1.tar.gz.asc
+ source = hg+http://hg.nginx.org/nginx-tests#revision=ddbde6c5b0cd
+ source = https://github.com/cloudflare/quiche/archive/0.7.0.tar.gz
+ source = git+https://boringssl.googlesource.com/boringssl#commit=597b810379e126ae05d32c1d94b1a9464385acd0
+ source = service
+ source = logrotate
+ validpgpkeys = B0F4253373F8F6F510D42178520A9993A1C052F8
+ md5sums = 45a80f75336c980d240987badc3dcf60
+ md5sums = SKIP
+ md5sums = SKIP
+ md5sums = c308dfc84e69c14206c3cdfde92a259d
+ md5sums = SKIP
+ md5sums = ba2e3b08ce0f0fff7cced624d0ecf7cc
+ md5sums = 6a01fb17af86f03707c8ae60f98a2dc2
+
+pkgname = nginx
+
+pkgname = nginx-src
+ depends =
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..a616917e8b59
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,174 @@
+# Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
+# Contributor: Sébastien Luttringer
+# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Miroslaw Szot <mss@czlug.icis.pcz.pl>
+# Contributor: Daniel Micay <danielmicay@gmail.com>
+
+pkgbase=nginx
+pkgname=(nginx nginx-src)
+pkgver=1.16.1
+pkgrel=1
+_quichever=0.7.0
+pkgdesc='Lightweight HTTP server and IMAP/POP3 proxy server'
+arch=(x86_64)
+url='https://nginx.org'
+license=(custom)
+depends=(pcre zlib openssl geoip mailcap)
+makedepends=(git mercurial cmake rust)
+checkdepends=(perl perl-gd perl-io-socket-ssl perl-fcgi perl-cache-memcached
+ memcached ffmpeg inetutils)
+backup=(etc/nginx/fastcgi.conf
+ etc/nginx/fastcgi_params
+ etc/nginx/koi-win
+ etc/nginx/koi-utf
+ etc/nginx/nginx.conf
+ etc/nginx/scgi_params
+ etc/nginx/uwsgi_params
+ etc/nginx/win-utf
+ etc/logrotate.d/nginx)
+install=nginx.install
+source=(https://nginx.org/download/nginx-$pkgver.tar.gz{,.asc}
+ hg+http://hg.nginx.org/nginx-tests#revision=ddbde6c5b0cd
+ https://github.com/cloudflare/quiche/archive/$_quichever.tar.gz
+ git+https://boringssl.googlesource.com/boringssl#commit=597b810379e126ae05d32c1d94b1a9464385acd0
+ service
+ logrotate)
+validpgpkeys=(B0F4253373F8F6F510D42178520A9993A1C052F8) # Maxim Dounin <mdounin@mdounin.ru>
+md5sums=('45a80f75336c980d240987badc3dcf60'
+ 'SKIP'
+ 'SKIP'
+ 'c308dfc84e69c14206c3cdfde92a259d'
+ 'SKIP'
+ 'ba2e3b08ce0f0fff7cced624d0ecf7cc'
+ '6a01fb17af86f03707c8ae60f98a2dc2')
+
+_common_flags=(
+ --with-compat
+ --with-debug
+ --with-file-aio
+ --with-http_addition_module
+ --with-http_auth_request_module
+ --with-http_dav_module
+ --with-http_degradation_module
+ --with-http_flv_module
+ --with-http_geoip_module
+ --with-http_gunzip_module
+ --with-http_gzip_static_module
+ --with-http_mp4_module
+ --with-http_realip_module
+ --with-http_secure_link_module
+ --with-http_slice_module
+ --with-http_ssl_module
+ --with-http_stub_status_module
+ --with-http_sub_module
+ --with-http_v2_module
+ --with-mail
+ --with-mail_ssl_module
+ --with-pcre-jit
+ --with-stream
+ --with-stream_geoip_module
+ --with-stream_realip_module
+ --with-stream_ssl_module
+ --with-stream_ssl_preread_module
+ --with-threads
+)
+
+_stable_flags=(
+)
+
+prepare() {
+ cp -r $pkgbase-$pkgver{,-src}
+
+ #cd $srcdir/boringssl
+ #mkdir build && cd build && cmake ../ && make && cd $srcdir/boringssl
+ #mkdir -p .openssl/lib && cd .openssl && ln -s ../include . && cd ../
+ #cp $srcdir/boringssl/build/crypto/libcrypto.a $srcdir/boringssl/build/ssl/libssl.a .openssl/lib
+ #touch $srcdir/boringssl/.openssl/include/openssl/ssl.h
+
+ cd $srcdir/quiche-$_quichever/deps
+ rm -r boringssl
+ ln -s $srcdir/boringssl boringssl
+
+ cd $srcdir/$pkgbase-$pkgver
+ patch -Np1 -i $srcdir/quiche-$_quichever/extras/nginx/nginx-1.16.patch
+}
+
+build() {
+ cd $srcdir/boringssl
+ mkdir build && cd build && cmake ../ && make && cd $srcdir/boringssl
+
+ cd $srcdir/$pkgbase-$pkgver
+
+ ./configure \
+ --prefix=/etc/nginx \
+ --conf-path=/etc/nginx/nginx.conf \
+ --sbin-path=/usr/bin/nginx \
+ --pid-path=/run/nginx.pid \
+ --lock-path=/run/lock/nginx.lock \
+ --user=http \
+ --group=http \
+ --http-log-path=/var/log/nginx/access.log \
+ --error-log-path=stderr \
+ --http-client-body-temp-path=/var/lib/nginx/client-body \
+ --http-proxy-temp-path=/var/lib/nginx/proxy \
+ --http-fastcgi-temp-path=/var/lib/nginx/fastcgi \
+ --http-scgi-temp-path=/var/lib/nginx/scgi \
+ --http-uwsgi-temp-path=/var/lib/nginx/uwsgi \
+ --with-cc-opt="$CFLAGS $CPPFLAGS" \
+ --with-ld-opt="$LDFLAGS" \
+ --with-http_v3_module \
+ --with-openssl=$srcdir/boringssl \
+ --with-quiche=$srcdir/quiche-$_quichever \
+ ${_common_flags[@]} \
+ ${_stable_flags[@]}
+
+ #touch ${srcdir}/boringssl/.openssl/include/openssl/ssl.h
+ make
+}
+
+check() {
+ cd nginx-tests
+ TEST_NGINX_BINARY="$srcdir/$pkgbase-$pkgver/objs/nginx" prove .
+}
+
+package_nginx() {
+ cd $pkgbase-$pkgver
+ make DESTDIR="$pkgdir" install
+
+ sed -e 's|\<user\s\+\w\+;|user html;|g' \
+ -e '44s|html|/usr/share/nginx/html|' \
+ -e '54s|html|/usr/share/nginx/html|' \
+ -i "$pkgdir"/etc/nginx/nginx.conf
+
+ rm "$pkgdir"/etc/nginx/*.default
+ rm "$pkgdir"/etc/nginx/mime.types # in mailcap
+
+ install -d "$pkgdir"/var/lib/nginx
+ install -dm700 "$pkgdir"/var/lib/nginx/proxy
+
+ chmod 755 "$pkgdir"/var/log/nginx
+ chown root:root "$pkgdir"/var/log/nginx
+
+ install -d "$pkgdir"/usr/share/nginx
+ mv "$pkgdir"/etc/nginx/html/ "$pkgdir"/usr/share/nginx
+
+ install -Dm644 ../logrotate "$pkgdir"/etc/logrotate.d/nginx
+ install -Dm644 ../service "$pkgdir"/usr/lib/systemd/system/nginx.service
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+
+ rmdir "$pkgdir"/run
+
+ install -d "$pkgdir"/usr/share/man/man8/
+ gzip -9c man/nginx.8 > "$pkgdir"/usr/share/man/man8/nginx.8.gz
+
+ for i in ftdetect indent syntax; do
+ install -Dm644 contrib/vim/$i/nginx.vim \
+ "$pkgdir/usr/share/vim/vimfiles/$i/nginx.vim"
+ done
+}
+
+package_nginx-src() {
+ depends=()
+ install -d "$pkgdir/usr/src"
+ cp -r $pkgbase-$pkgver-src "$pkgdir/usr/src/nginx"
+}
diff --git a/logrotate b/logrotate
new file mode 100644
index 000000000000..e0afbb927021
--- /dev/null
+++ b/logrotate
@@ -0,0 +1,10 @@
+/var/log/nginx/*log {
+ missingok
+ notifempty
+ create 640 http log
+ sharedscripts
+ compress
+ postrotate
+ test ! -r /run/nginx.pid || kill -USR1 `cat /run/nginx.pid`
+ endscript
+}
diff --git a/nginx.install b/nginx.install
new file mode 100644
index 000000000000..d80514afe352
--- /dev/null
+++ b/nginx.install
@@ -0,0 +1,27 @@
+post_upgrade() {
+ if (( $(vercmp $2 1.2.7-4) <= 0 )); then
+ chmod 750 var/log/nginx
+ chown http:log var/log/nginx
+ fi
+
+ if (( $(vercmp $2 1.2.1-2) <= 0 )); then
+ echo ':: Since 1.2.1-2 several changes has been made in package:'
+ echo ' - *.conf files have been moved to /etc/nginx'
+ echo ' - /etc/conf.d/nginx has been removed'
+ echo ' Main configuration file is set to /etc/nginx/nginx.conf'
+ echo ' - access.log and error.log can be found in /var/log/nginx by default'
+ echo ' - bundled *.html files have been moved to /usr/share/nginx/html'
+ echo ' - /etc/nginx/{html,logs} symbolic links and *.default files have been removed'
+ fi
+
+ if (( $(vercmp $2 1.10.2-3) < 0)); then
+ chown root:root var/log/nginx
+ fi
+
+ if (( $(vercmp $2 1.10.3-2) < 0 )); then
+ chmod 755 var/log/nginx
+ echo ':: Security notice:'
+ echo ' - When additional log directories are used in /var/log/nginx make sure they'
+ echo ' are owned by root:root and have 755 set as permission to mitigate CVE-2016-1247'
+ fi
+}
diff --git a/service b/service
new file mode 100644
index 000000000000..6302474f3674
--- /dev/null
+++ b/service
@@ -0,0 +1,16 @@
+[Unit]
+Description=A high performance web server and a reverse proxy server
+After=network.target network-online.target nss-lookup.target
+
+[Service]
+Type=forking
+PIDFile=/run/nginx.pid
+PrivateDevices=yes
+SyslogLevel=err
+
+ExecStart=/usr/bin/nginx -g 'pid /run/nginx.pid; error_log stderr;'
+ExecReload=/usr/bin/nginx -s reload
+KillMode=mixed
+
+[Install]
+WantedBy=multi-user.target