From 1a7b9ed2d8ad5ec37d03e3510653e76d8ad2267f Mon Sep 17 00:00:00 2001 From: Micha Glave Date: Tue, 26 May 2009 11:09:39 +0000 Subject: [PATCH] adding nginx with wsgi from https://connectical.com/ --- www-servers/nginx/Manifest | 6 + www-servers/nginx/nginx-0.7.58-r1.ebuild | 173 +++++++++++++++++++++++ 2 files changed, 179 insertions(+) create mode 100644 www-servers/nginx/Manifest create mode 100644 www-servers/nginx/nginx-0.7.58-r1.ebuild diff --git a/www-servers/nginx/Manifest b/www-servers/nginx/Manifest new file mode 100644 index 0000000..73df564 --- /dev/null +++ b/www-servers/nginx/Manifest @@ -0,0 +1,6 @@ +DIST mod_scgi-b466baa5fcdb.tar.gz 10947 RMD160 dcf8f5dae78a1ec068afcc1f0b35dca093db5ba7 SHA1 b2eae98cd08675da21ee1f58ecab50574f9ba1fe SHA256 d6172ae5ce7608d9fe0e08f0e43debf6f24857216e8c4a420a1e6b1deb0ddd3f +DIST mod_wsgi-8994b058d2db.tar.gz 52044 RMD160 e879e5a5cfe462ba4902893cdb740e0b92a23e6d SHA1 2c2c46116d1f0e2619b8b72d54297e65b1d126cd SHA256 15419c1a188d1c11f36ca460c975eba3a0cc9f25e9a8b8ab7bd0e13a5ae50cb3 +DIST nginx-0.7.58.tar.gz 592868 RMD160 d58ad06852a52b8eadae49204a4a48bd27d58b91 SHA1 ec7a3038ea3f7c6c1dc7f7f54acae652319da7f3 SHA256 9bfeb136eb28127a0cceaf1bcbf78ff0dc043371ee69470fd967a2d706a6cc42 +DIST ngx-fancyindex-0.2.tar.bz2 11404 RMD160 9558d7e4aa5954107f400afb97ff01fe3566d1e1 SHA1 8ec6f5e9239bccfe8d148ce5e8e69d43b2219193 SHA256 6de457f2433ea5d7f790163f8ae5208eff400957c1944b8686606e4532ce40e2 +DIST ngx_http_auth_pam_module-1.0.tar.gz 5097 RMD160 cea6ce3de57eb81cd77fa1abd97c1f72ba7b9fd5 SHA1 097ffb5e09fb1d5b75401d358ea04a031f08e0c4 SHA256 2b764e2468cce60ae303e29411540a861cc3ca38992e27e159cc054b2825984c +EBUILD nginx-0.7.58-r1.ebuild 5073 RMD160 bf81e79f8f6e3acc8091095c79b5b9cdd26d0a2a SHA1 7b25645600c5b1acef8c5b174d35af7ca34afd58 SHA256 b8865afd140b061a578b05b9251155c7c99847a5d6ea7e08d74f94859b86406a diff --git a/www-servers/nginx/nginx-0.7.58-r1.ebuild b/www-servers/nginx/nginx-0.7.58-r1.ebuild new file mode 100644 index 0000000..a312526 --- /dev/null +++ b/www-servers/nginx/nginx-0.7.58-r1.ebuild @@ -0,0 +1,173 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/www-servers/nginx/nginx-0.7.1.ebuild,v 1.1 2008/05/27 13:41:06 voxus Exp $ + +inherit eutils ssl-cert + +DESCRIPTION="Robust, small and high performance http and reverse proxy server" + +FANCYINDEX="ngx-fancyindex-0.2" +WSGI="mod_wsgi-8994b058d2db" +SCGI="mod_scgi-b466baa5fcdb" +PAM="ngx_http_auth_pam_module-1.0" + +HOMEPAGE="http://nginx.net/" +SRC_URI="http://sysoev.ru/nginx/${P}.tar.gz + fancyindex? ( http://files.connectical.com/gentoo/${FANCYINDEX}.tar.bz2 ) + python? ( http://files.connectical.com/gentoo/${WSGI}.tar.gz ) + scgi? ( http://files.connectical.com/gentoo/${SCGI}.tar.gz ) + pam? ( http://web.iti.upv.es/~sto/nginx/${PAM}.tar.gz )" +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" + +IUSE="addition debug fastcgi flv imap pcre perl ssl status sub webdav zlib + fancyindex python scgi gzip-static googleperf pam" + +DEPEND="dev-lang/perl + pcre? ( >=dev-libs/libpcre-4.2 ) + ssl? ( dev-libs/openssl ) + zlib? ( sys-libs/zlib ) + perl? ( >=dev-lang/perl-5.8 ) + python? ( >=dev-lang/python-2.4 ) + pam? ( virtual/pam )" + +pkg_setup() { + ebegin "Creating nginx user and group" + enewgroup nginx + enewuser nginx -1 -1 /dev/null nginx + eend ${?} +} + + +src_unpack () { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}/use_x_forwarded_host.patch" + + if use python ; then + cd "${WORKDIR}/${WSGI}" + epatch "${FILESDIR}/nginx-0.6-mod_wsgi.patch" + fi +} + + +src_compile() { + local myconf + + # threads support is broken atm. + # + # if use threads; then + # einfo + # ewarn "threads support is experimental at the moment" + # ewarn "do not use it on production systems - you've been warned" + # einfo + # myconf="${myconf} --with-threads" + # fi + + use addition && myconf="${myconf} --with-http_addition_module" + use fastcgi || myconf="${myconf} --without-http_fastcgi_module" + use fastcgi && myconf="${myconf} --with-http_realip_module" + use flv && myconf="${myconf} --with-http_flv_module" + use zlib || myconf="${myconf} --without-http_gzip_module" + use pcre || { + myconf="${myconf} --without-pcre --without-http_rewrite_module" + } + use debug && myconf="${myconf} --with-debug" + use ssl && myconf="${myconf} --with-http_ssl_module" + use imap && myconf="${myconf} --with-imap" # pop3/imap4 proxy support + use perl && myconf="${myconf} --with-http_perl_module" + use status && myconf="${myconf} --with-http_stub_status_module" + use webdav && myconf="${myconf} --with-http_dav_module" + use sub && myconf="${myconf} --with-http_sub_module" + + use googleperf && myconf="${myconf} --with-google_perftools_module" + use gzip-static && myconf="${myconf} --with-http_gzip_static_module" + use fancyindex && myconf="${myconf} --add-module=../${FANCYINDEX}" + use python && myconf="${myconf} --add-module=../${WSGI}" + use scgi && myconf="${myconf} --add-module=../${SCGI}" + use pam && myconf="${myconf} --add-module=../${PAM}" + + ./configure \ + --prefix=/usr \ + --conf-path=/etc/${PN}/${PN}.conf \ + --http-log-path=/var/log/${PN}/access_log \ + --error-log-path=/var/log/${PN}/error_log \ + --pid-path=/var/run/${PN}.pid \ + --http-client-body-temp-path=/var/tmp/${PN}/client \ + --http-proxy-temp-path=/var/tmp/${PN}/proxy \ + --http-fastcgi-temp-path=/var/tmp/${PN}/fastcgi \ + --with-md5-asm --with-md5=/usr/include \ + --with-sha1-asm --with-sha1=/usr/include \ + ${myconf} || die "configure failed" + + emake || die "failed to compile" +} + +src_install() { + keepdir /var/log/${PN} /var/tmp/${PN}/{client,proxy,fastcgi} + + dosbin objs/nginx + cp "${FILESDIR}"/nginx-r1 "${T}"/nginx + doinitd "${T}"/nginx + + cp "${FILESDIR}"/nginx.conf-r4 conf/nginx.conf + + dodir "${ROOT}"/etc/${PN} + insinto "${ROOT}"/etc/${PN} + doins conf/* + + dodoc CHANGES{,.ru} LICENSE README + + use perl && { + cd "${S}"/objs/src/http/modules/perl/ + einstall DESTDIR="${D}"|| die "failed to install perl stuff" + } + + if use fancyindex ; then + cd "${WORKDIR}/${FANCYINDEX}" + cp README.rst README.fancyindex + dodoc README.fancyindex + fi + if use python ; then + cd "${WORKDIR}/${WSGI}" + cp LICENSE LICENSE.wsgi && dodoc LICENSE.wsgi + cp README README.wsgi && dodoc README.wsgi + cp NEWS.txt NEWS.wsgi && dodoc NEWS.wsgi + cp BUGS BUGS.wsgi && dodoc BUGS.wsgi + cp TODO TODO.wsgi && dodoc TODO.wsgi + + insinto /usr/share/doc/${PF}/wsgi_examples + doins examples/* + + insinto /etc/nginx + doins conf/wsgi_vars + + dosbin bin/* + fi + if use scgi ; then + cd "${WORKDIR}/${SCGI}" + cp LICENSE LICENSE.scgi && dodoc LICENSE.scgi + cp README README.scgi && dodoc README.scgi + + insinto /etc/nginx + doins conf/scgi_vars + fi + if use pam ; then + cd "${WORKDIR}/${PAM}" + cp LICENSE LICENSE.pam && dodoc LICENSE.pam + cp README README.pam && dodoc README.pam + cp ChangLog NEWS.pam && dodoc NEWS.pam + fi +} + +pkg_postinst() { + use ssl && { + if [ ! -f "${ROOT}"/etc/ssl/${PN}/${PN}.key ]; then + dodir "${ROOT}"/etc/ssl/${PN} + insinto "${ROOT}"etc/ssl/${PN}/ + insopts -m0644 -o nginx -g nginx + install_cert /etc/ssl/nginx/nginx + fi + } +}