diff mbox series

[bug#40874,93/94] gnu: Add rust-nettle-7.

Message ID 754dc70567f6058f506c6a75598c9d00685c82b8.1587919230.git.h.goebel@crazy-compilers.com
State Accepted
Headers show
Series Add sequoia pgp, rust-nettle, and 90 rust package. | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/applying patch success View Laminar job
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job

Commit Message

Hartmut Goebel April 26, 2020, 4:46 p.m. UTC
* gnu/packages/crates-io.scm (rust-nettle-7): New variable.
---
 gnu/packages/crates-io.scm | 44 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

Comments

Efraim Flashner May 4, 2020, 8:59 a.m. UTC | #1
Can we drop nettle-src? If it can't be stuck in a snippet there's also a
patch for rust-openssl-sys-0.9 that drops the vendored source crate.

https://sources.debian.org/src/rust-nettle-sys/2.0.4-3/debian/patches/disable-vendor.diff/
https://sources.debian.org/src/rust-nettle/7.0.0-1/debian/patches/disable-vendor.diff/

On Sun, Apr 26, 2020 at 06:46:12PM +0200, Hartmut Goebel wrote:
> * gnu/packages/crates-io.scm (rust-nettle-7): New variable.
> ---
>  gnu/packages/crates-io.scm | 44 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 44 insertions(+)
> 
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index cbb8290380..4c3b21f037 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -37,6 +37,7 @@
>    #:use-module (gnu packages gtk)
>    #:use-module (gnu packages jemalloc)
>    #:use-module (gnu packages llvm)
> +  #:use-module (gnu packages multiprecision)
>    #:use-module (gnu packages nettle)
>    #:use-module (gnu packages pcre)
>    #:use-module (gnu packages pkg-config)
> @@ -11943,6 +11944,49 @@ types as proposed in RFC 1158.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-nettle-7
> +  (package
> +    (name "rust-nettle")
> +    (version "7.0.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "nettle" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32 "1n6dwy9zba8853bmxzhwaashd3np0wxpx0pj43brm0hb8n2sxbxi"))))
> +    (build-system cargo-build-system)
> +    (native-inputs
> +     `(("pkg-config" ,pkg-config)))
> +    (inputs
> +     `(("clang" ,clang)
> +       ("gmp" ,gmp)
> +       ("nettle" ,nettle)))
> +    (arguments
> +     `(#:skip-build? #t ;; provides nothing, has no tests
> +       #:cargo-inputs
> +       (("rust-getrandom" ,rust-getrandom-0.1)
> +        ("rust-libc" ,rust-libc-0.2)
> +        ("rust-nettle-sys" ,rust-nettle-sys-2)
> +        ("rust-nettle-src" ,rust-nettle-src)
> +        ("rust-thiserror" ,rust-thiserror-1.0))
> +       #:cargo-development-inputs
> +       (("rust-bindgen" ,rust-bindgen-0.51)
> +        ("rust-pkg-config" ,rust-pkg-config-0.3))
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'set-missing-env-vars
> +           (lambda* (#:key inputs #:allow-other-keys)
> +             ;; FIXME: why do we need to set this?
> +             (setenv "LIBCLANG_PATH"
> +                     (string-append (assoc-ref inputs "clang") "/lib"))
> +             #t)))))
> +    (home-page "https://gitlab.com/sequoia-pgp/nettle-rs")
> +  (synopsis "Rust bindings for the Nettle cryptographic library")
> +  (description "This package provides Rust bindings for the Nettle
> +cryptographic library.")
> +  (license (list license:lgpl3 license:gpl2 license:gpl3))))
> +
>  (define-public rust-nettle-src
>    (package
>      (name "rust-nettle-src")
> -- 
> 2.21.3
> 
> 
> 
>
Hartmut Goebel May 4, 2020, 10:47 a.m. UTC | #2
Am 04.05.20 um 10:59 schrieb Efraim Flashner:
> Can we drop nettle-src? If it can't be stuck in a snippet there's also a
> patch for rust-openssl-sys-0.9 that drops the vendored source crate.
You mean applying a patch to the `(source …)`? This should be feasible.
Efraim Flashner May 4, 2020, 10:59 a.m. UTC | #3
On Mon, May 04, 2020 at 12:47:33PM +0200, Hartmut Goebel wrote:
> Am 04.05.20 um 10:59 schrieb Efraim Flashner:
> > Can we drop nettle-src? If it can't be stuck in a snippet there's also a
> > patch for rust-openssl-sys-0.9 that drops the vendored source crate.
> You mean applying a patch to the `(source …)`? This should be feasible.
> 

Yeah, something to make it so that we don't need rust-nettle-src at all.
Hartmut Goebel May 4, 2020, 3:14 p.m. UTC | #4
Am 04.05.20 um 12:59 schrieb Efraim Flashner:
> Yeah, something to make it so that we don't need rust-nettle-src at all.

See updated patches

(patch 1/1 is the (empty) nettle-src, which did not generate a patch mail)
diff mbox series

Patch

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index cbb8290380..4c3b21f037 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -37,6 +37,7 @@ 
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages jemalloc)
   #:use-module (gnu packages llvm)
+  #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages nettle)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages pkg-config)
@@ -11943,6 +11944,49 @@  types as proposed in RFC 1158.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-nettle-7
+  (package
+    (name "rust-nettle")
+    (version "7.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nettle" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1n6dwy9zba8853bmxzhwaashd3np0wxpx0pj43brm0hb8n2sxbxi"))))
+    (build-system cargo-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("clang" ,clang)
+       ("gmp" ,gmp)
+       ("nettle" ,nettle)))
+    (arguments
+     `(#:skip-build? #t ;; provides nothing, has no tests
+       #:cargo-inputs
+       (("rust-getrandom" ,rust-getrandom-0.1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-nettle-sys" ,rust-nettle-sys-2)
+        ("rust-nettle-src" ,rust-nettle-src)
+        ("rust-thiserror" ,rust-thiserror-1.0))
+       #:cargo-development-inputs
+       (("rust-bindgen" ,rust-bindgen-0.51)
+        ("rust-pkg-config" ,rust-pkg-config-0.3))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'set-missing-env-vars
+           (lambda* (#:key inputs #:allow-other-keys)
+             ;; FIXME: why do we need to set this?
+             (setenv "LIBCLANG_PATH"
+                     (string-append (assoc-ref inputs "clang") "/lib"))
+             #t)))))
+    (home-page "https://gitlab.com/sequoia-pgp/nettle-rs")
+  (synopsis "Rust bindings for the Nettle cryptographic library")
+  (description "This package provides Rust bindings for the Nettle
+cryptographic library.")
+  (license (list license:lgpl3 license:gpl2 license:gpl3))))
+
 (define-public rust-nettle-src
   (package
     (name "rust-nettle-src")