unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* gnu: gnutls: Add gnutls-3.5.5 and gnutls-with-guile-next.
@ 2017-01-10 19:32 Christopher Allan Webber
  2017-01-20 21:01 ` Ludovic Courtès
  0 siblings, 1 reply; 3+ messages in thread
From: Christopher Allan Webber @ 2017-01-10 19:32 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1180 bytes --]

Hello!  I was talking in #guile and realized that even though guile-next
now includes glorious https support via gnutls, few have tried it or
know how to use it.

It turns out you need a specially packaged version of gnutls!  Or,
specially packaged until `guile-next' becomes just `guile'.

Here's a patch that will give you that package.  You can give it a shot
like so:

  $ guix environment --ad-hoc guile-next gnutls-with-guile-next --pure
  $ guile
  GNU Guile 2.1.5
  Copyright (C) 1995-2016 Free Software Foundation, Inc.

  Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
  This program is free software, and you are welcome to redistribute it
  under certain conditions; type `,show c' for details.

  Enter `,help' for help.
  scheme@(guile-user)> (use-modules (web client) (web uri))
  scheme@(guile-user)> (http-get (string->uri "https://fsf.org"))
  $1 = #<<response> a long response here>
  $2 = "the body, also long"

Have fun trying it with https://slashdot.org/ or whatever you feel like.
(Unless that thing is https://gnu.org/, which doesn't work, but
everything else seems to.  Why is that?)

Have fun hacking with https support,
 - Chris


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-gnutls-Add-gnutls-3.5.5-and-gnutls-with-guile-ne.patch --]
[-- Type: text/x-patch, Size: 2109 bytes --]

From e31e3e9784a978628655fcd7a1f3527e88d475ec Mon Sep 17 00:00:00 2001
From: Christopher Allan Webber <cwebber@dustycloud.org>
Date: Tue, 10 Jan 2017 13:25:26 -0600
Subject: [PATCH] gnu: gnutls: Add gnutls-3.5.5 and gnutls-with-guile-next.

* gnu/packages/tls.scm (gnutls-3.5.5, gnutls-with-guile-next): New variables.
---
 gnu/packages/tls.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index e577421fa..4d9d2135f 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -211,6 +211,40 @@ required structures.")
     (properties '((ftp-server . "ftp.gnutls.org")
                   (ftp-directory . "/gcrypt/gnutls")))))
 
+(define-public gnutls-3.5.5
+  (package
+    (inherit gnutls)
+    (source
+      (let ((version "3.5.5"))
+        (origin
+          (method url-fetch)
+          (uri (string-append "mirror://gnupg/gnutls/v"
+                              (version-major+minor version)
+                              "/gnutls-" version ".tar.xz"))
+          (sha256
+           (base32
+            "0ag5q3dfxzv0dmqy7q0a8y74yc3m5yzvjrp324l6vqafh3klz6c6")))))))
+
+(define-public gnutls-with-guile-next
+  (package
+    (inherit gnutls-3.5.5)  ; 3.5.5 introduces guile 2.1 / 2.2 support
+    (name "gnutls-with-guile-next")
+    (build-system gnu-build-system)
+    ;; Unfortunately we're inheriting this whole thing just to
+    (arguments
+     (substitute-keyword-arguments (package-arguments gnutls)
+       ;; change the guile-site-dir to 2.2
+       ((#:configure-flags configure-flags)
+        '(list (string-append "--with-guile-site-dir="
+                              (assoc-ref %outputs "out")
+                              "/share/guile/site/2.2")
+               ;; See the gnutls definition for explaination of these.
+               "--with-default-trust-store-dir=/etc/ssl/certs"
+               "--without-p11-kit"))))
+    (inputs
+     `(("guile" ,guile-next)  ; we want guile-next
+       ("perl" ,perl)))))
+
 (define-public openssl
   (package
    (name "openssl")
-- 
2.11.0


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

* Re: gnu: gnutls: Add gnutls-3.5.5 and gnutls-with-guile-next.
  2017-01-10 19:32 gnu: gnutls: Add gnutls-3.5.5 and gnutls-with-guile-next Christopher Allan Webber
@ 2017-01-20 21:01 ` Ludovic Courtès
  2017-01-25  0:28   ` Christopher Allan Webber
  0 siblings, 1 reply; 3+ messages in thread
From: Ludovic Courtès @ 2017-01-20 21:01 UTC (permalink / raw)
  To: Christopher Allan Webber; +Cc: guix-devel

Hello!

Christopher Allan Webber <cwebber@dustycloud.org> skribis:

> Hello!  I was talking in #guile and realized that even though guile-next
> now includes glorious https support via gnutls, few have tried it or
> know how to use it.
>
> It turns out you need a specially packaged version of gnutls!  Or,
> specially packaged until `guile-next' becomes just `guile'.
>
> Here's a patch that will give you that package.  You can give it a shot
> like so:
>
>   $ guix environment --ad-hoc guile-next gnutls-with-guile-next --pure

Good idea!  I ended up pushing a slightly different patch, calling the
package ‘guile2.2-gnutls’ to match what ‘package-for-guile-2.2’ does:

  http://git.savannah.gnu.org/cgit/guix.git/commit/?id=079f013be2a3601518a67d65f4e39f7fabddb053

Let me know if anything’s wrong!

> Have fun hacking with https support,

BTW, it would be nice :-) to port this to Guile as well:

  http://git.savannah.gnu.org/cgit/guix.git/commit/?id=bc3c41ce36349ed4ec758c70b48a7059e363043a
  http://git.savannah.gnu.org/cgit/guix.git/commit/?id=580deec5b44d623e994e59ef07e9e0c5496762fd

Anyway, thanks for the heads-up!

Ludo’.

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

* Re: gnu: gnutls: Add gnutls-3.5.5 and gnutls-with-guile-next.
  2017-01-20 21:01 ` Ludovic Courtès
@ 2017-01-25  0:28   ` Christopher Allan Webber
  0 siblings, 0 replies; 3+ messages in thread
From: Christopher Allan Webber @ 2017-01-25  0:28 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

Ludovic Courtès writes:

> Hello!
>
> Christopher Allan Webber <cwebber@dustycloud.org> skribis:
>
>> Hello!  I was talking in #guile and realized that even though guile-next
>> now includes glorious https support via gnutls, few have tried it or
>> know how to use it.
>>
>> It turns out you need a specially packaged version of gnutls!  Or,
>> specially packaged until `guile-next' becomes just `guile'.
>>
>> Here's a patch that will give you that package.  You can give it a shot
>> like so:
>>
>>   $ guix environment --ad-hoc guile-next gnutls-with-guile-next --pure
>
> Good idea!  I ended up pushing a slightly different patch, calling the
> package ‘guile2.2-gnutls’ to match what ‘package-for-guile-2.2’ does:
>
>   http://git.savannah.gnu.org/cgit/guix.git/commit/?id=079f013be2a3601518a67d65f4e39f7fabddb053
>
> Let me know if anything’s wrong!

Yay!  Thanks for the push.  I'll test shortly.

>> Have fun hacking with https support,
>
> BTW, it would be nice :-) to port this to Guile as well:
>
>   http://git.savannah.gnu.org/cgit/guix.git/commit/?id=bc3c41ce36349ed4ec758c70b48a7059e363043a
>   http://git.savannah.gnu.org/cgit/guix.git/commit/?id=580deec5b44d623e994e59ef07e9e0c5496762fd
>
> Anyway, thanks for the heads-up!
>
> Ludo’.

Oh, those look important.  I've made a TODO item and I'll try to get to
them soon, but who knows if I will...

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

end of thread, other threads:[~2017-01-25  0:28 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-10 19:32 gnu: gnutls: Add gnutls-3.5.5 and gnutls-with-guile-next Christopher Allan Webber
2017-01-20 21:01 ` Ludovic Courtès
2017-01-25  0:28   ` Christopher Allan Webber

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).