summary refs log tree commit diff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2020-02-28 13:53:14 +0100
committerRicardo Wurmus <rekado@elephly.net>2020-02-28 13:55:08 +0100
commit9b17c4f7b8a7665e9c0ddce71dc5c35467c6eda1 (patch)
treefad49bbc194f76e6483a04343cc30e4ab632c175
parent6813cb3fb358829c03910345493587dc1eaee436 (diff)
downloadguix-9b17c4f7b8a7665e9c0ddce71dc5c35467c6eda1.tar.gz
gnu: Add lighttpd.
* gnu/packages/web.scm (lighttpd): New variable.
-rw-r--r--gnu/packages/web.scm65
1 files changed, 64 insertions, 1 deletions
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 1ada569834..c6e59cff44 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2013 Aljosha Papsch <misc@rpapsch.de>
 ;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2018 Raoul Jean Pierre Bonnal <ilpuccio.febo@gmail.com>
 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Eric Bavier <bavier@posteo.net>
@@ -114,12 +114,14 @@
   #:use-module (gnu packages libevent)
   #:use-module (gnu packages libidn)
   #:use-module (gnu packages libunistring)
+  #:use-module (gnu packages libunwind)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages lisp-xyz)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages markup)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages nss)
+  #:use-module (gnu packages openldap)
   #:use-module (gnu packages openstack)
   #:use-module (gnu packages base)
   #:use-module (gnu packages package-management)
@@ -548,6 +550,67 @@ supported at your website.")
                       ;; binary:
                       (package-license nginx)))))))
 
+(define-public lighttpd
+  (package
+    (name "lighttpd")
+    (version "1.4.55")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://download.lighttpd.net/lighttpd/"
+                                  "releases-" (version-major+minor version) ".x/"
+                                  "lighttpd-" version ".tar.xz"))
+              (sha256
+               (base32
+                "09z947730yjh438wrqb3z1c5hr1dbb11a8sr92g3vk6mr7lm02va"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags
+       (list "--with-krb5"
+             "--with-ldap"
+             "--with-libev"
+             "--with-libunwind"
+             "--with-openssl"
+             "--with-pam"
+             "--with-sasl")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'embed-/bin/sh-reference
+           (lambda _
+             (substitute* "src/mod_ssi.c"
+               (("/bin/sh") (which "sh")))
+             #t))
+         (add-after 'unpack 'fix-tests
+           (lambda _
+             (setenv "SHELL" (which "sh"))
+             ;; gethostbyaddr fails
+             (substitute* "tests/LightyTest.pm"
+               (("\\{HOSTNAME\\} = \\$name;")
+                "{HOSTNAME} = \"127.0.0.1\";"))
+             #t)))))
+    (inputs
+     `(("cyrus-sasl" ,cyrus-sasl)
+       ("libev" ,libev)
+       ("libunwind" ,libunwind)
+       ("linux-pam" ,linux-pam)
+       ("mit-krb5" ,mit-krb5)
+       ("openldap" ,openldap)
+       ("openssl" ,openssl)
+       ("pcre" ,pcre)
+       ("pcre:bin" ,pcre "bin")
+       ("zlib" ,zlib)))
+    (native-inputs
+     `(("perl" ,perl) ; for tests
+       ("pkg-config" ,pkg-config)
+       ("which" ,which)))
+    (home-page "https://www.lighttpd.net/")
+    (synopsis "Lightweight HTTP and reverse proxy server")
+    (description
+     "Lighttpd is a secure, fast, compliant, and very flexible web-server that
+has been optimized for high-performance environments.  It has a very low
+memory footprint compared to other webservers.  Its features include FastCGI,
+CGI, authentication, output compression, URL rewriting and many more.")
+    (license license:bsd-3)))
+
 (define-public fcgi
   (package
     (name "fcgi")