summaryrefslogtreecommitdiff
path: root/pcr/nginx-passenger
diff options
context:
space:
mode:
authorLuke Shumaker <LukeShu@sbcglobal.net>2014-03-02 21:50:36 -0500
committerLuke Shumaker <LukeShu@sbcglobal.net>2014-03-02 21:50:36 -0500
commitbcb7613c18d8fade15448d141e9420cdc1736787 (patch)
tree04e128ec813153f3363c5d07b62a76ac630b65af /pcr/nginx-passenger
parent46683a9da9d3c7f1e108f0eb2f429eafdeb37937 (diff)
add pcr/nginx-passenger
Diffstat (limited to 'pcr/nginx-passenger')
-rw-r--r--pcr/nginx-passenger/PKGBUILD113
-rw-r--r--pcr/nginx-passenger/logrotate9
-rw-r--r--pcr/nginx-passenger/nginx.install17
-rw-r--r--pcr/nginx-passenger/service14
4 files changed, 153 insertions, 0 deletions
diff --git a/pcr/nginx-passenger/PKGBUILD b/pcr/nginx-passenger/PKGBUILD
new file mode 100644
index 000000000..b6badd8aa
--- /dev/null
+++ b/pcr/nginx-passenger/PKGBUILD
@@ -0,0 +1,113 @@
+# Maintainer: Luke Shumaker <lukeshu@sbcglobal.net
+# Maintainer (AUR): Tom Richards <tom@tomrichards.net>
+# Maintainer (Arch): Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
+# Maintainer (Arch): Sébastien Luttringer
+# Contributor (Arch): Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor (Arch): Miroslaw Szot <mss@czlug.icis.pcz.pl>
+
+pkgname=nginx-passenger
+_nginxver=1.4.5
+_passengerver=4.0.37
+pkgver=$_nginxver
+pkgrel=1
+pkgdesc='Lightweight HTTP server and IMAP/POP3 proxy server'
+pkgdesc+=" (with Passenger module)"
+arch=('i686' 'x86_64')
+url='http://nginx.org'
+license=('custom')
+depends=('pcre' 'zlib' 'openssl')
+depends+=("passenger=$_passengerver")
+depends+=('ruby' 'ruby-rack' 'curl')
+conflicts=('nginx')
+provides=("nginx=$_nginxver")
+backup=('etc/nginx/fastcgi.conf'
+ 'etc/nginx/fastcgi_params'
+ 'etc/nginx/koi-win'
+ 'etc/nginx/koi-utf'
+ 'etc/nginx/mime.types'
+ 'etc/nginx/nginx.conf'
+ 'etc/nginx/scgi_params'
+ 'etc/nginx/uwsgi_params'
+ 'etc/nginx/win-utf'
+ 'etc/logrotate.d/nginx')
+install=nginx.install
+source=($url/download/nginx-$_nginxver.tar.gz
+ passenger-$_passengerver.tar.gz::https://github.com/phusion/passenger/archive/release-$_passengerver.tar.gz
+ service
+ logrotate)
+md5sums=('1a635e9543570f0c881b8ec9db0c6898'
+ '7040af5314fe19a420f38732c6bd4f5b'
+ 'ce9a06bcaf66ec4a3c4eb59b636e0dfd'
+ '3441ce77cdd1aab6f0ab7e212698a8a7')
+
+build() {
+ cd "$srcdir/passenger-release-$_passengerver"
+ _nginx_addon_dir=$(bin/passenger-config --nginx-addon-dir)
+
+ cd "$srcdir/nginx-$_nginxver"
+ ./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-imap \
+ --with-imap_ssl_module \
+ --with-ipv6 \
+ --with-pcre-jit \
+ --with-file-aio \
+ --with-http_dav_module \
+ --with-http_gunzip_module \
+ --with-http_gzip_static_module \
+ --with-http_realip_module \
+ --with-http_spdy_module \
+ --with-http_ssl_module \
+ --with-http_stub_status_module \
+ --with-http_addition_module \
+ --with-http_degradation_module \
+ --with-http_flv_module \
+ --with-http_mp4_module \
+ --with-http_secure_link_module \
+ --with-http_sub_module \
+ --add-module="$_nginx_addon_dir"
+
+ make
+}
+
+package() {
+ cd "$srcdir/nginx-$_nginxver"
+ 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
+
+ install -d "$pkgdir"/var/lib/nginx
+ install -dm700 "$pkgdir"/var/lib/nginx/proxy
+
+ chmod 750 "$pkgdir"/var/log/nginx
+ chown http:log "$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"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/pcr/nginx-passenger/logrotate b/pcr/nginx-passenger/logrotate
new file mode 100644
index 000000000..e0fa9ec4c
--- /dev/null
+++ b/pcr/nginx-passenger/logrotate
@@ -0,0 +1,9 @@
+/var/log/nginx/*log {
+ missingok
+ create 640 http log
+ sharedscripts
+ compress
+ postrotate
+ test ! -r /var/run/nginx.pid || kill -USR1 `cat /var/run/nginx.pid`
+ endscript
+}
diff --git a/pcr/nginx-passenger/nginx.install b/pcr/nginx-passenger/nginx.install
new file mode 100644
index 000000000..dfad9a034
--- /dev/null
+++ b/pcr/nginx-passenger/nginx.install
@@ -0,0 +1,17 @@
+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
+}
+
+# vim:set ts=4 sw=4 et:
diff --git a/pcr/nginx-passenger/service b/pcr/nginx-passenger/service
new file mode 100644
index 000000000..29d3aa877
--- /dev/null
+++ b/pcr/nginx-passenger/service
@@ -0,0 +1,14 @@
+[Unit]
+Description=A high performance web server and a reverse proxy server
+After=syslog.target network.target
+
+[Service]
+Type=forking
+PIDFile=/run/nginx.pid
+ExecStartPre=/usr/bin/nginx -t -q -g 'pid /run/nginx.pid; daemon on; master_process on;'
+ExecStart=/usr/bin/nginx -g 'pid /run/nginx.pid; daemon on; master_process on;'
+ExecReload=/usr/bin/nginx -g 'pid /run/nginx.pid; daemon on; master_process on;' -s reload
+ExecStop=/usr/bin/nginx -g 'pid /run/nginx.pid;' -s quit
+
+[Install]
+WantedBy=multi-user.target