guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] gnu: Add tinyproxy.


From: John Darrington
Subject: [PATCH] gnu: Add tinyproxy.
Date: Thu, 12 Jun 2014 13:06:25 +0200

* gnu/packages/web.scm (tinyproxy): New variable.
* gnu/packages/docbook.scm: Remove #select (tar)
---
 gnu/packages/docbook.scm |    3 +--
 gnu/packages/web.scm     |   62 ++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 63 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm
index f6d2009..29fa409 100644
--- a/gnu/packages/docbook.scm
+++ b/gnu/packages/docbook.scm
@@ -19,8 +19,7 @@
 (define-module (gnu packages docbook)
   #:use-module (gnu packages)
   #:use-module (gnu packages compression)
-  #:use-module ((gnu packages base)
-                #:select (tar))
+  #:use-module (gnu packages base)
   #:use-module (guix licenses)
   #:use-module (guix packages)
   #:use-module (guix download)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 4eb3906..8fd3b75 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -27,10 +27,14 @@
   #:use-module (guix build-system perl)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages apr)
+  #:use-module (gnu packages asciidoc)
+  #:use-module (gnu packages docbook)
   #:use-module (gnu packages autotools)
   #:use-module ((gnu packages compression) #:select (zlib))
   #:use-module (gnu packages openssl)
   #:use-module (gnu packages pcre)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages xml)
   #:use-module (gnu packages perl))
 
 (define-public httpd
@@ -469,3 +473,61 @@ and functions that allow you to write WWW clients. The 
library also
 contain modules that are of more general use and even classes that
 help you implement simple HTTP servers.")
     (home-page "http://search.cpan.org/~gaas/libwww-perl/";)))
+
+(define-public tinyproxy
+  (package
+    (name "tinyproxy")
+    (version "1.8.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "http://www.samba.org/~obnox/"; name "/download/" name "-" 
version ".tar.bz2"))
+              (sha256
+               (base32
+                "0vl9igw7vm924rs6d6bkib7zfclxnlf9s8rmml1sfwj7xda9nmdy"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags
+       (list
+             ;; For the log file, etc.
+             "--localstatedir=/var")
+       #:phases
+        (alist-replace
+         'build
+         (lambda* (#:key inputs #:allow-other-keys #:rest args)
+           ;; This stuff is needed, because without it, xmlint etc tries
+           ;; to download docbookx.dtd and docbook.xsl from the net
+           (let ((build (assoc-ref %standard-phases 'build))
+                 (docbook-xml (assoc-ref inputs "docbook-xml"))
+                 (docbook-xsl (assoc-ref inputs "docbook-xsl"))
+                 (our-catalog "/tmp/docbook-xml.xml"))
+             (setenv "XML_CATALOG_FILES" our-catalog)
+             (if (with-output-to-file our-catalog (lambda ()
+                         (display (string-append
+                          "<?xml version=\"1.0\"?>
+<!DOCTYPE catalog PUBLIC \"-//OASIS//DTD XML Catalogs V1.0//EN\"
+\"file:///usr/share/xml/schema/xml-core/catalog.dtd\">
+<catalog xmlns=\"urn:oasis:names:tc:entity:xmlns:xml:catalog\">
+<system systemId=\"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd\";
+uri=\"file://" docbook-xml  "/xml/dtd/docbook/docbookx.dtd\"/>
+<system 
systemId=\"http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl\";
+uri=\"file://" docbook-xsl  
"/xml/xsl/docbook-xsl-1.72.0/manpages/docbook.xsl\"/>
+</catalog>\n"))))
+                 (apply build args) #f)))
+         %standard-phases)))
+    ;; All of the below are used to generate the documentation
+    ;; (Should they be propagated inputs of asciidoc ??)
+    (native-inputs `(("asciidoc" ,asciidoc)
+                     ("libxml2" ,libxml2) 
+                     ("docbook-xml" ,docbook-xml)
+                     ("docbook-xsl" ,docbook-xsl)
+                     ("libxslt" ,libxslt) 
+                     ("python" ,python-2)))
+    (home-page "https://banu.com/tinyproxy/";)
+    (synopsis "Light-weight HTTP/HTTPS proxy daemon")
+    (description "Tinyproxy is a light-weight HTTP/HTTPS proxy
+daemon. Designed from the ground up to be fast and yet small, it is an ideal
+solution for use cases such as embedded deployments where a full featured HTTP
+proxy is required, but the system resources for a larger proxy are
+unavailable.") 
+    (license l:gpl2+)))
-- 
1.7.10.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]