[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] gnu: Add varnish.
From: |
Ricardo Wurmus |
Subject: |
Re: [PATCH] gnu: Add varnish. |
Date: |
Sun, 27 Nov 2016 16:11:54 +0100 |
User-agent: |
mu4e 0.9.16; emacs 25.1.1 |
Marius Bakke <address@hidden> writes:
> * gnu/packages/web.scm (varnish): New variable.
[…]
> + (add-after 'install 'wrap-binary
> + (lambda* (#:key inputs outputs #:allow-other-keys)
> + (let* ((out (assoc-ref outputs "out"))
> + (varnishd (string-append out "/sbin/varnishd"))
> + (PATH (string-append (assoc-ref inputs "binutils")
> "/bin"))
> + (LIBRARY_PATH (string-append (assoc-ref inputs "glibc")
> "/lib")))
> + ;; Add binutils to PATH so gcc finds the 'as' executable.
> + (wrap-program varnishd
> + `("PATH" ":" prefix (,PATH)))
> + ;; Without this, we get an error such as "ld: cannot find
> crti.o"
> + ;; when compiling VCL.
> + (wrap-program varnishd
> + `("LIBRARY_PATH" ":" prefix (,LIBRARY_PATH)))
> + #t))))))
What is VCL? Is it always compiled from scratch at runtime?
> + (inputs
> + `(("binutils" ,binutils)
> + ("gcc" ,gcc)
> + ("glibc" ,glibc/linux)
These three inputs are implicitly available as native inputs when using
the gnu-build-system. Should varnish get a gcc-toolchain as a runtime
input instead of these three separate inputs?
> + ("jemalloc" ,jemalloc)
> + ("ncurses" ,ncurses)
> + ("pcre" ,pcre)
> + ("python" ,python-wrapper)
> + ("readline" ,readline)))
> + (home-page "https://www.varnish-cache.org/")
> + (synopsis "High-performance caching HTTP reverse proxy")
> + (description
> + "Varnish is a web application accelerator. It acts as a caching
> +reverse proxy and load balancer. You install it in front of any server
> +that speaks HTTP and configure it to cache the contents through an
> +extensive configuration language.")
> + (license (list l:bsd-2 ; Main distribution.
> + l:zlib ; lib/libvgz/*
> + l:public-domain ; bin/varnishncsa/as64.c,
> include/miniobj.h
> + l:bsd-3 ; include/vqueue.h,
> lib/libvarnishcompat/daemon.c
> + l:expat ; doc/html/_static/underscore.js
> + l:gpl2+)))) ; doc/html/_static/jquery.js is dual
> MIT/GPL2+
Very nice!
--
Ricardo
GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
http://elephly.net