Patchwork Add libidn2

login
register
mail settings
Submitter Leo Famulari
Date Nov. 4, 2016, 3:28 p.m.
Message ID <20161104152839.GA14769@jasmine>
Download mbox | patch
Permalink /patch/17186/
State New
Headers show

Comments

Leo Famulari - Nov. 4, 2016, 3:28 p.m.
Libidn2 is a GNU internationalized domain name (IDN) processing library
implementing the IDNA2008 specification (libidn implements IDNA2003).

This library is ostensibly used by the most recent release of curl,
although the curl maintainer has suggested distributors disable IDN
support altogether for now:

https://curl.haxx.se/mail/lib-2016-11/0033.html

In any case, here is a package definition for the latest libidn2
release.
From 537645e615a9c3b10c7882cfba1311f1283d1d0a Mon Sep 17 00:00:00 2001
From: Leo Famulari <leo@famulari.name>
Date: Fri, 4 Nov 2016 11:19:45 -0400
Subject: [PATCH] gnu: Add libidn2.

* gnu/packages/libidn.scm (libidn2): New variable.
---
 gnu/packages/libidn.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)
Kei Yamashita - Nov. 4, 2016, 5:48 p.m.
Leo Famulari <leo@famulari.name> writes:

> Libidn2 is a GNU internationalized domain name (IDN) processing library
> implementing the IDNA2008 specification (libidn implements IDNA2003).
>
> This library is ostensibly used by the most recent release of curl,
> although the curl maintainer has suggested distributors disable IDN
> support altogether for now:
>
> https://curl.haxx.se/mail/lib-2016-11/0033.html
>
> In any case, here is a package definition for the latest libidn2
> release.

LGTM!
Leo Famulari - Nov. 5, 2016, 7:13 a.m.
On Fri, Nov 04, 2016 at 01:48:23PM -0400, Kei Kebreau wrote:
> Leo Famulari <leo@famulari.name> writes:
> 
> > Libidn2 is a GNU internationalized domain name (IDN) processing library
> > implementing the IDNA2008 specification (libidn implements IDNA2003).
> >
> > This library is ostensibly used by the most recent release of curl,
> > although the curl maintainer has suggested distributors disable IDN
> > support altogether for now:
> >
> > https://curl.haxx.se/mail/lib-2016-11/0033.html
> >
> > In any case, here is a package definition for the latest libidn2
> > release.
> 
> LGTM!

Thanks, pushed!

Patch

diff --git a/gnu/packages/libidn.scm b/gnu/packages/libidn.scm
index 432c1fe..141ad7a 100644
--- a/gnu/packages/libidn.scm
+++ b/gnu/packages/libidn.scm
@@ -59,3 +59,25 @@  names.  It includes native C, C# and Java libraries.")
           (sha256
            (base32
             "068fjg2arlppjqqpzd714n1lf6gxkpac9v5yyvp1qwmv6nvam9s4")))))))
+
+(define-public libidn2
+  (package
+    (name "libidn2")
+    (version "0.11")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "ftp://alpha.gnu.org/gnu/libidn/libidn2-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1zxzhzx14q2b1xkx746pz4lawvqd8d055yy84n52ndwb4pf7nfax"))))
+    (build-system gnu-build-system)
+    (synopsis "Internationalized domain name library for IDNA2008")
+    (description "Libidn2 is an internationalized domain library implementing
+the IDNA2008 specifications.   Libidn2 is believed to be a complete IDNA2008
+implementation, but has yet to be as extensively used as the original Libidn
+library.")
+    (home-page "https://www.gnu.org/software/libidn/#libidn2")
+    ;; The command-line tool 'idn2' is GPL3+, while the library is dual-licensed
+    ;; GPL2+ or LGPL3+.
+    (license (list gpl2+ gpl3+ lgpl3+))))