unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: gnunet: Add gnurl-7.34.0.
@ 2014-01-29 12:59 Sree Harsha Totakura
  2014-01-29 22:13 ` Ludovic Courtès
  0 siblings, 1 reply; 2+ messages in thread
From: Sree Harsha Totakura @ 2014-01-29 12:59 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/gnunet.scm (gnurl): New variable. Thanks to Zerwas for the initial recipe.
---
 gnu/packages/gnunet.scm |   64 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)

diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 52a434a..e0ddc30 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -25,11 +25,15 @@
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages gnutls)
+  #:use-module (gnu packages groff)
   #:use-module (gnu packages gstreamer)
+  #:use-module (gnu packages libidn)
   #:use-module (gnu packages libjpeg)
   #:use-module (gnu packages libtiff)
   #:use-module (gnu packages openssl)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages perl)
+  #:use-module (gnu packages python)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xiph)
   #:use-module ((guix licenses)
@@ -123,3 +127,63 @@ also features security features such as basic and digest authentication
 and support for SSL3 and TLS.")
    (license license:lgpl2.1+)
    (home-page "http://www.gnu.org/software/libmicrohttpd/")))
+
+(define-public gnurl
+  (package
+   (name "gnurl")
+   (version "7.34.0")
+   (source (origin
+            (method url-fetch)
+            (uri (string-append "https://gnunet.org/sites/default/files/gnurl-"
+                                version ".tar.bz2"))
+            (sha256
+             (base32
+              "0kpi9wx9lg938b982smjg54acdwswdshs2bzf10sj5r6zmb05ygp"))))
+   (build-system gnu-build-system)
+   (inputs `(("gnutls" ,gnutls)
+             ("libidn" ,libidn)
+             ("zlib" ,zlib)))
+   (native-inputs
+    `(("perl" ,perl)
+      ("groff" ,groff)
+      ("python" ,python-2)))
+   (arguments
+    `(#:configure-flags '("--enable-ipv6" "--with-gnutls" "--without-libssh2"
+                          "--without-libmetalink" "--without-winidn"
+                          "--without-librtmp" "--without-nghttp2"
+                          "--without-nss" "--without-cyassl"
+                          "--without-polarssl" "--without-ssl"
+                          "--without-winssl" "--without-darwinssl"
+                          "--disable-sspi" "--disable-ntlm-wb"
+                          "--disable-ldap" "--disable-rtsp" "--disable-dict"
+                          "--disable-telnet" "--disable-tftp" "--disable-pop3"
+                          "--disable-imap" "--disable-smtp" "--disable-gopher"
+                          "--disable-file" "--disable-ftp")
+     #:test-target "test"
+     #:parallel-tests? #f
+     ;; We have to patch runtests.pl in tests/ directory and add a failing
+     ;; test due to curl->gnurl name change to tests/data/DISABLED
+     #:phases
+      (alist-cons-before
+       'check
+       'patch-runtests
+       (lambda* (#:rest args)
+         (begin (chdir "tests")
+                (let* ((path (search-path-as-string->list (getenv "PATH")))
+                       (sh (search-path path "sh"))
+                       (exp (string-append "s@/bin/sh@" sh "@g"))
+                       (f (open-file "data/DISABLED" "a")))
+                  (system* "sed" "-i" exp "runtests.pl")
+                  (newline f)
+                  (display "1022" f)
+                  (close f))
+                (chdir "../")))
+       %standard-phases)))
+   (synopsis "Microfork of cURL with support for the HTTP/HTTPS/GnuTLS subset of cURL")
+   (description
+    "Gnurl is a microfork of cURL, a command line tool for transferring data
+with URL syntax. While cURL supports many crypto backends, libgnurl only
+supports HTTPS, HTTPS and GnuTLS.")
+   (license (license:bsd-style "file://COPYING"
+                       "See COPYING in the distribution."))
+   (home-page "https://gnunet.org/gnurl")))
-- 
1.7.10.4

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] gnu: gnunet: Add gnurl-7.34.0.
  2014-01-29 12:59 [PATCH] gnu: gnunet: Add gnurl-7.34.0 Sree Harsha Totakura
@ 2014-01-29 22:13 ` Ludovic Courtès
  0 siblings, 0 replies; 2+ messages in thread
From: Ludovic Courtès @ 2014-01-29 22:13 UTC (permalink / raw)
  To: Sree Harsha Totakura; +Cc: guix-devel

Sree Harsha Totakura <sreeharsha@totakura.in> skribis:

> * gnu/packages/gnunet.scm (gnurl): New variable. Thanks to Zerwas for the initial recipe.

Thanks, applied, with this phase:

> +       (lambda* (#:rest args)
> +         (begin (chdir "tests")
> +                (let* ((path (search-path-as-string->list (getenv "PATH")))
> +                       (sh (search-path path "sh"))
> +                       (exp (string-append "s@/bin/sh@" sh "@g"))
> +                       (f (open-file "data/DISABLED" "a")))
> +                  (system* "sed" "-i" exp "runtests.pl")
> +                  (newline f)
> +                  (display "1022" f)
> +                  (close f))
> +                (chdir "../")))
> +       %standard-phases)))

changed to the more idiomatic (and hopefully more elegant too):

       (lambda _
         (with-directory-excursion "tests"  ; <- like “cd tests; ...; cd ..”
           (substitute* "runtests.pl"       ; <- like sed
             (("/bin/sh")
              (which "sh")))                ; <- like ‘search-path’ etc.
           (let* ((port (open-file "data/DISABLED" "a")))
             (newline port)
             (display "1022" port)
             (close port))))

Ludo’.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-01-29 22:18 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-01-29 12:59 [PATCH] gnu: gnunet: Add gnurl-7.34.0 Sree Harsha Totakura
2014-01-29 22:13 ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).