mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-25 22:08:16 -05:00
gnu: rust-ring-0.14: Build all the files from source.
* gnu/packages/crates-io.scm (rust-ring-0.14-sources): New variable. (rust-ring-0.14)[source]: Use rust-ring-0.14-sources. Remove snippet. [arguments]: Don't skip build. Remove phase generating curve25519 tables. [native-inputs]: Remove field. (rust-adblock-0.7, rust-boxxy-0.12, rust-ct-logs-0.8, rust-fetch-unroll-0.3, rust-h2-0.3, rust-h2-0.2, rust-h3-0.0.3, rust-hyper-rustls-0.24, rust-quinn-0.10, rust-quinn-proto-0.10, rust-rcgen-0.11, rust-rustls-0.21, rust-rustls-0.15, rust-rustls-ffi-0.8, rust-rustls-native-certs-0.6, rust-rustls-native-certs-0.4, rust-rustls-webpki-0.101, rust-sct-0.7, rust-sct-0.5, rust-tokio-rustls-0.24, rust-tokio-rustls-0.9, rust-trust-dns-https-0.19, rust-trust-dns-https-0.3, rust-trust-dns-rustls-0.19, rust-trust-dns-rustls-0.6, rust-ureq-2, rust-webpki-0.22, rust-webpki-0.19, rust-webpki-roots-0.25, rust-webpki-roots-0.16): Adjust for changes in rust-ring-0.14. Change-Id: I047a6ea9d672dd1f9b084d87732337f6b36ca75b
This commit is contained in:
parent
eeaead0d2e
commit
467f670d21
1 changed files with 218 additions and 111 deletions
|
@ -1820,8 +1820,6 @@ (define-public rust-adblock-0.7
|
||||||
("rust-serde-json" ,rust-serde-json-1)
|
("rust-serde-json" ,rust-serde-json-1)
|
||||||
("rust-sha2" ,rust-sha2-0.9)
|
("rust-sha2" ,rust-sha2-0.9)
|
||||||
("rust-tokio" ,rust-tokio-1))))
|
("rust-tokio" ,rust-tokio-1))))
|
||||||
(native-inputs
|
|
||||||
(list perl))
|
|
||||||
(home-page "https://github.com/brave/adblock-rust/")
|
(home-page "https://github.com/brave/adblock-rust/")
|
||||||
(synopsis "Adblock Plus syntax filter parsing and matching")
|
(synopsis "Adblock Plus syntax filter parsing and matching")
|
||||||
(description "This package provides native Rust module for Adblock Plus
|
(description "This package provides native Rust module for Adblock Plus
|
||||||
|
@ -9802,8 +9800,6 @@ (define-public rust-boxxy-0.12
|
||||||
("rust-env-logger" ,rust-env-logger-0.9)
|
("rust-env-logger" ,rust-env-logger-0.9)
|
||||||
("rust-rustls" ,rust-rustls-0.16)
|
("rust-rustls" ,rust-rustls-0.16)
|
||||||
("rust-sha2" ,rust-sha2-0.9))))
|
("rust-sha2" ,rust-sha2-0.9))))
|
||||||
(native-inputs
|
|
||||||
(list perl))
|
|
||||||
(home-page "https://github.com/kpcyrd/boxxy-rs")
|
(home-page "https://github.com/kpcyrd/boxxy-rs")
|
||||||
(synopsis "Linkable sandbox explorer")
|
(synopsis "Linkable sandbox explorer")
|
||||||
(description
|
(description
|
||||||
|
@ -19364,10 +19360,8 @@ (define-public rust-ct-logs-0.8
|
||||||
(base32 "1j5as2h789c2gazq3drl5i58xk8zzx6sxd1wdr19x3d6dwc1da61"))))
|
(base32 "1j5as2h789c2gazq3drl5i58xk8zzx6sxd1wdr19x3d6dwc1da61"))))
|
||||||
(build-system cargo-build-system)
|
(build-system cargo-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:skip-build? #t
|
`(#:cargo-inputs
|
||||||
#:cargo-inputs
|
|
||||||
(("rust-sct" ,rust-sct-0.6))))
|
(("rust-sct" ,rust-sct-0.6))))
|
||||||
(native-inputs (list perl))
|
|
||||||
(home-page "https://github.com/ctz/ct-logs")
|
(home-page "https://github.com/ctz/ct-logs")
|
||||||
(synopsis "Google's list of Certificate Transparency logs")
|
(synopsis "Google's list of Certificate Transparency logs")
|
||||||
(description
|
(description
|
||||||
|
@ -27015,8 +27009,6 @@ (define-public rust-fetch-unroll-0.3
|
||||||
#:cargo-inputs `(("rust-libflate" ,rust-libflate-1)
|
#:cargo-inputs `(("rust-libflate" ,rust-libflate-1)
|
||||||
("rust-tar" ,rust-tar-0.4)
|
("rust-tar" ,rust-tar-0.4)
|
||||||
("rust-ureq" ,rust-ureq-2))))
|
("rust-ureq" ,rust-ureq-2))))
|
||||||
; perl required for building rust-ring
|
|
||||||
(inputs (list perl))
|
|
||||||
(home-page "https://github.com/katyo/fetch_unroll")
|
(home-page "https://github.com/katyo/fetch_unroll")
|
||||||
(synopsis "Simple utilities for fetching and unrolling .tar.gz archives")
|
(synopsis "Simple utilities for fetching and unrolling .tar.gz archives")
|
||||||
(description
|
(description
|
||||||
|
@ -34533,7 +34525,6 @@ (define-public rust-h2-0.3
|
||||||
("rust-tokio-rustls" ,rust-tokio-rustls-0.23)
|
("rust-tokio-rustls" ,rust-tokio-rustls-0.23)
|
||||||
("rust-walkdir" ,rust-walkdir-2)
|
("rust-walkdir" ,rust-walkdir-2)
|
||||||
("rust-webpki-roots" ,rust-webpki-roots-0.22))))
|
("rust-webpki-roots" ,rust-webpki-roots-0.22))))
|
||||||
(native-inputs (list perl))
|
|
||||||
(home-page "https://github.com/hyperium/h2")
|
(home-page "https://github.com/hyperium/h2")
|
||||||
(synopsis "HTTP/2.0 client and server")
|
(synopsis "HTTP/2.0 client and server")
|
||||||
(description "This package provides an HTTP/2.0 client and server.")
|
(description "This package provides an HTTP/2.0 client and server.")
|
||||||
|
@ -34579,8 +34570,7 @@ (define-public rust-h2-0.2
|
||||||
("rust-tokio-rustls" ,rust-tokio-rustls-0.12)
|
("rust-tokio-rustls" ,rust-tokio-rustls-0.12)
|
||||||
("rust-walkdir" ,rust-walkdir-1)
|
("rust-walkdir" ,rust-walkdir-1)
|
||||||
("rust-webpki" ,rust-webpki-0.21)
|
("rust-webpki" ,rust-webpki-0.21)
|
||||||
("rust-webpki-roots" ,rust-webpki-roots-0.17))))
|
("rust-webpki-roots" ,rust-webpki-roots-0.17))))))
|
||||||
(native-inputs (list perl))))
|
|
||||||
|
|
||||||
(define-public rust-h2-0.1
|
(define-public rust-h2-0.1
|
||||||
(package
|
(package
|
||||||
|
@ -34655,7 +34645,6 @@ (define-public rust-h3-0.0.3
|
||||||
("rust-tokio" ,rust-tokio-1)
|
("rust-tokio" ,rust-tokio-1)
|
||||||
("rust-tokio-util" ,rust-tokio-util-0.7)
|
("rust-tokio-util" ,rust-tokio-util-0.7)
|
||||||
("rust-tracing-subscriber" ,rust-tracing-subscriber-0.3))))
|
("rust-tracing-subscriber" ,rust-tracing-subscriber-0.3))))
|
||||||
(native-inputs (list perl))
|
|
||||||
(home-page "https://github.com/hyperium/h3")
|
(home-page "https://github.com/hyperium/h3")
|
||||||
(synopsis "Async HTTP/3 implementation")
|
(synopsis "Async HTTP/3 implementation")
|
||||||
(description "This package provides an async HTTP/3 implementation.")
|
(description "This package provides an async HTTP/3 implementation.")
|
||||||
|
@ -37112,7 +37101,6 @@ (define-public rust-hyper-rustls-0.24
|
||||||
("rust-rustls" ,rust-rustls-0.21)
|
("rust-rustls" ,rust-rustls-0.21)
|
||||||
("rust-rustls-pemfile" ,rust-rustls-pemfile-1)
|
("rust-rustls-pemfile" ,rust-rustls-pemfile-1)
|
||||||
("rust-tokio" ,rust-tokio-1))))
|
("rust-tokio" ,rust-tokio-1))))
|
||||||
(native-inputs (list perl))
|
|
||||||
(home-page "https://github.com/rustls/hyper-rustls")
|
(home-page "https://github.com/rustls/hyper-rustls")
|
||||||
(synopsis "Rustls+Hyper integration for pure Rust HTTPS")
|
(synopsis "Rustls+Hyper integration for pure Rust HTTPS")
|
||||||
(description
|
(description
|
||||||
|
@ -61018,7 +61006,6 @@ (define-public rust-quinn-0.10
|
||||||
("rust-tracing-futures" ,rust-tracing-futures-0.2)
|
("rust-tracing-futures" ,rust-tracing-futures-0.2)
|
||||||
("rust-tracing-subscriber" ,rust-tracing-subscriber-0.3)
|
("rust-tracing-subscriber" ,rust-tracing-subscriber-0.3)
|
||||||
("rust-url" ,rust-url-2))))
|
("rust-url" ,rust-url-2))))
|
||||||
(native-inputs (list perl))
|
|
||||||
(home-page "https://github.com/quinn-rs/quinn")
|
(home-page "https://github.com/quinn-rs/quinn")
|
||||||
(synopsis "Versatile QUIC transport protocol implementation")
|
(synopsis "Versatile QUIC transport protocol implementation")
|
||||||
(description "Versatile QUIC transport protocol implementation.")
|
(description "Versatile QUIC transport protocol implementation.")
|
||||||
|
@ -61097,7 +61084,6 @@ (define-public rust-quinn-proto-0.10
|
||||||
("rust-lazy-static" ,rust-lazy-static-1)
|
("rust-lazy-static" ,rust-lazy-static-1)
|
||||||
("rust-rcgen" ,rust-rcgen-0.10)
|
("rust-rcgen" ,rust-rcgen-0.10)
|
||||||
("rust-tracing-subscriber" ,rust-tracing-subscriber-0.3))))
|
("rust-tracing-subscriber" ,rust-tracing-subscriber-0.3))))
|
||||||
(native-inputs (list perl))
|
|
||||||
(home-page "https://github.com/quinn-rs/quinn")
|
(home-page "https://github.com/quinn-rs/quinn")
|
||||||
(synopsis "State machine for the QUIC transport protocol")
|
(synopsis "State machine for the QUIC transport protocol")
|
||||||
(description "State machine for the QUIC transport protocol.")
|
(description "State machine for the QUIC transport protocol.")
|
||||||
|
@ -62606,7 +62592,7 @@ (define-public rust-rcgen-0.11
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list pkg-config))
|
(list pkg-config))
|
||||||
(inputs
|
(inputs
|
||||||
(list botan openssl perl))
|
(list botan openssl))
|
||||||
(home-page "https://github.com/rustls/rcgen")
|
(home-page "https://github.com/rustls/rcgen")
|
||||||
(synopsis "Rust X.509 certificate generator")
|
(synopsis "Rust X.509 certificate generator")
|
||||||
(description "Rust X.509 certificate generator.")
|
(description "Rust X.509 certificate generator.")
|
||||||
|
@ -64389,53 +64375,211 @@ (define-public rust-ring-0.16
|
||||||
(supported-systems (list "aarch64-linux" "armhf-linux"
|
(supported-systems (list "aarch64-linux" "armhf-linux"
|
||||||
"i686-linux" "x86_64-linux"))))
|
"i686-linux" "x86_64-linux"))))
|
||||||
|
|
||||||
|
(define rust-ring-0.14-sources
|
||||||
|
(let* ((version "0.14.6")
|
||||||
|
(upstream-source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/briansmith/ring")
|
||||||
|
(commit "ef85df478152aa3fe06c811309379efa08f8a529")))
|
||||||
|
(file-name (git-file-name "rust-ring" version))
|
||||||
|
(sha256
|
||||||
|
(base32 "12dgw2spvmkdypgzymw3bxpv4bbpnlq8s10sdggral31x597n6xx")))))
|
||||||
|
(origin
|
||||||
|
(method computed-origin-method)
|
||||||
|
(file-name (string-append "rust-ring-" version ".tar.gz"))
|
||||||
|
(sha256 #f)
|
||||||
|
(uri
|
||||||
|
(delay
|
||||||
|
(with-imported-modules '((guix build utils))
|
||||||
|
#~(begin
|
||||||
|
(use-modules (guix build utils))
|
||||||
|
(set-path-environment-variable
|
||||||
|
"PATH" '("bin")
|
||||||
|
(list #+(canonical-package gzip)
|
||||||
|
#+(canonical-package tar)
|
||||||
|
#+perl
|
||||||
|
#+yasm
|
||||||
|
#+go
|
||||||
|
#+clang ; clang-format
|
||||||
|
#+python2-minimal))
|
||||||
|
(setenv "HOME" (getcwd))
|
||||||
|
(copy-recursively #+upstream-source
|
||||||
|
(string-append "ring-" #$version))
|
||||||
|
(with-directory-excursion (string-append "ring-" #$version)
|
||||||
|
(begin
|
||||||
|
;; It turns out Guix's yasm works just fine here.
|
||||||
|
(substitute* "build.rs"
|
||||||
|
(("yasm.exe") "yasm"))
|
||||||
|
;; Files which would be deleted in a snippet:
|
||||||
|
(delete-file "third_party/fiat/curve25519_tables.h")
|
||||||
|
(delete-file "crypto/fipsmodule/ec/ecp_nistz256_table.inl")
|
||||||
|
(delete-file "util/ar/testdata/linux/libsample.a")
|
||||||
|
(delete-file "util/ar/testdata/mac/libsample.a")
|
||||||
|
(delete-file "util/ar/testdata/windows/sample.lib")
|
||||||
|
;; Fix the doc tests.
|
||||||
|
(substitute* "src/ec/curve25519/ed25519/verification.rs"
|
||||||
|
((";;") ";"))
|
||||||
|
;; Files to be generated in the sources:
|
||||||
|
(format #t "Generating the missing files ...~%")
|
||||||
|
(force-output)
|
||||||
|
(with-directory-excursion "third_party/fiat"
|
||||||
|
(with-output-to-file "curve25519_tables.h"
|
||||||
|
(lambda _ (invoke "python" "make_curve25519_tables.py"))))
|
||||||
|
(with-directory-excursion "crypto/fipsmodule/ec"
|
||||||
|
;; This one seems to have been changed elsewhere in the
|
||||||
|
;; sources but not in the script generating the definition.
|
||||||
|
(substitute* "make_p256-x86_64-table.go"
|
||||||
|
(("ecp_nistz256_precomputed") "GFp_nistz256_precomputed"))
|
||||||
|
(with-output-to-file "ecp_nistz256_table.inl"
|
||||||
|
(lambda _ (invoke "go" "run" "make_p256-x86_64-table.go"))))
|
||||||
|
(format #t "Generating the pregenerated files ...~%")
|
||||||
|
(force-output)
|
||||||
|
(mkdir-p "pregenerated/tmp")
|
||||||
|
|
||||||
|
;; We generate all the files which upstream would normally be
|
||||||
|
;; generate by using '(cd pregenerate_asm && cargo clean &&
|
||||||
|
;; cargo build) ./pregenerate_asm/target/debug/pregenerate_asm'
|
||||||
|
;; in order to not include a dependency on cargo when
|
||||||
|
;; generating the sources.
|
||||||
|
(define (prefix script)
|
||||||
|
(string-append
|
||||||
|
"pregenerated/"
|
||||||
|
(string-drop-right
|
||||||
|
(string-drop script
|
||||||
|
(string-index-right script #\/)) 3)))
|
||||||
|
|
||||||
|
(for-each
|
||||||
|
(lambda (script)
|
||||||
|
(invoke "perl" script "elf"
|
||||||
|
(string-append (prefix script) "-elf.S"))
|
||||||
|
(invoke "perl" script "macosx"
|
||||||
|
(string-append (prefix script) "-macosx.S"))
|
||||||
|
(invoke "perl" script "nasm"
|
||||||
|
(string-append
|
||||||
|
"pregenerated/tmp/"
|
||||||
|
(string-drop (prefix script) 13) "-nasm.asm")))
|
||||||
|
'("crypto/fipsmodule/aes/asm/aes-x86_64.pl"
|
||||||
|
"crypto/fipsmodule/aes/asm/aesni-x86_64.pl"
|
||||||
|
"crypto/fipsmodule/aes/asm/vpaes-x86_64.pl"
|
||||||
|
"crypto/fipsmodule/bn/asm/x86_64-mont.pl"
|
||||||
|
"crypto/fipsmodule/bn/asm/x86_64-mont5.pl"
|
||||||
|
"crypto/chacha/asm/chacha-x86_64.pl"
|
||||||
|
"crypto/fipsmodule/ec/asm/p256-x86_64-asm.pl"
|
||||||
|
"crypto/fipsmodule/modes/asm/aesni-gcm-x86_64.pl"
|
||||||
|
"crypto/fipsmodule/modes/asm/ghash-x86_64.pl"
|
||||||
|
"crypto/poly1305/asm/poly1305-x86_64.pl"
|
||||||
|
"crypto/fipsmodule/sha/asm/sha512-x86_64.pl"))
|
||||||
|
|
||||||
|
(invoke "perl" "crypto/fipsmodule/sha/asm/sha512-x86_64.pl"
|
||||||
|
"elf" "pregenerated/sha256-x86_64-elf.S")
|
||||||
|
|
||||||
|
(invoke "perl" "crypto/fipsmodule/sha/asm/sha512-x86_64.pl"
|
||||||
|
"macosx" "pregenerated/sha256-x86_64-macosx.S")
|
||||||
|
|
||||||
|
(invoke "perl" "crypto/fipsmodule/sha/asm/sha512-x86_64.pl"
|
||||||
|
"nasm" "pregenerated/tmp/sha256-x86_64-nasm.asm")
|
||||||
|
|
||||||
|
(for-each
|
||||||
|
(lambda (script)
|
||||||
|
(invoke "yasm" "-X" "vc" "--dformat=cv8"
|
||||||
|
"--oformat=win64" "--machine=amd64" "-o"
|
||||||
|
(string-append (prefix script) "obj") script))
|
||||||
|
(find-files "pregenerated/tmp" "\\.asm"))
|
||||||
|
|
||||||
|
(for-each
|
||||||
|
(lambda (script)
|
||||||
|
(invoke "perl" script "ios64"
|
||||||
|
(string-append (prefix script) "-ios64.S"))
|
||||||
|
(invoke "perl" script "linux64"
|
||||||
|
(string-append (prefix script) "-linux64.S")))
|
||||||
|
'("crypto/fipsmodule/aes/asm/aesv8-armx.pl"
|
||||||
|
"crypto/fipsmodule/modes/asm/ghashv8-armx.pl"
|
||||||
|
"crypto/fipsmodule/bn/asm/armv8-mont.pl"
|
||||||
|
"crypto/chacha/asm/chacha-armv8.pl"
|
||||||
|
"crypto/fipsmodule/ec/asm/ecp_nistz256-armv8.pl"
|
||||||
|
"crypto/poly1305/asm/poly1305-armv8.pl"
|
||||||
|
"crypto/fipsmodule/sha/asm/sha512-armv8.pl"))
|
||||||
|
|
||||||
|
(invoke "perl" "crypto/fipsmodule/sha/asm/sha512-armv8.pl"
|
||||||
|
"ios64" "pregenerated/sha256-armv8-ios64.S")
|
||||||
|
|
||||||
|
(invoke "perl" "crypto/fipsmodule/sha/asm/sha512-armv8.pl"
|
||||||
|
"linux64" "pregenerated/sha256-armv8-linux64.S")
|
||||||
|
|
||||||
|
(for-each
|
||||||
|
(lambda (script)
|
||||||
|
(invoke "perl" script "elf"
|
||||||
|
"-fPIC" "-DOPENSSL_IA32_SSE2"
|
||||||
|
(string-append (prefix script) "-elf.S"))
|
||||||
|
(invoke "perl" script "macosx"
|
||||||
|
"-fPIC" "-DOPENSSL_IA32_SSE2"
|
||||||
|
(string-append (prefix script) "-macosx.S"))
|
||||||
|
(invoke "perl" script "win32n"
|
||||||
|
"-fPIC" "-DOPENSSL_IA32_SSE2"
|
||||||
|
(string-append
|
||||||
|
"pregenerated/tmp/"
|
||||||
|
(string-drop (prefix script) 13) "-win32n.asm")))
|
||||||
|
'("crypto/fipsmodule/aes/asm/aes-586.pl"
|
||||||
|
"crypto/fipsmodule/aes/asm/aesni-x86.pl"
|
||||||
|
"crypto/fipsmodule/aes/asm/vpaes-x86.pl"
|
||||||
|
"crypto/fipsmodule/bn/asm/x86-mont.pl"
|
||||||
|
"crypto/chacha/asm/chacha-x86.pl"
|
||||||
|
"crypto/fipsmodule/ec/asm/ecp_nistz256-x86.pl"
|
||||||
|
"crypto/fipsmodule/modes/asm/ghash-x86.pl"
|
||||||
|
"crypto/poly1305/asm/poly1305-x86.pl"
|
||||||
|
"crypto/fipsmodule/sha/asm/sha256-586.pl"
|
||||||
|
"crypto/fipsmodule/sha/asm/sha512-586.pl"))
|
||||||
|
|
||||||
|
(for-each
|
||||||
|
(lambda (script)
|
||||||
|
(invoke "yasm" "-X" "vc" "--dformat=cv8"
|
||||||
|
"--oformat=win32" "--machine=x86" "-o"
|
||||||
|
(string-append (prefix script) "obj") script))
|
||||||
|
(find-files "pregenerated/tmp" "-win32n\\.asm"))
|
||||||
|
|
||||||
|
(for-each
|
||||||
|
(lambda (script)
|
||||||
|
(invoke "perl" script "ios32"
|
||||||
|
(string-append (prefix script) "-ios32.S"))
|
||||||
|
(invoke "perl" script "linux32"
|
||||||
|
(string-append (prefix script) "-linux32.S")))
|
||||||
|
'("crypto/fipsmodule/aes/asm/aesv8-armx.pl"
|
||||||
|
"crypto/fipsmodule/modes/asm/ghashv8-armx.pl"
|
||||||
|
"crypto/fipsmodule/aes/asm/aes-armv4.pl"
|
||||||
|
"crypto/fipsmodule/aes/asm/bsaes-armv7.pl"
|
||||||
|
"crypto/fipsmodule/bn/asm/armv4-mont.pl"
|
||||||
|
"crypto/chacha/asm/chacha-armv4.pl"
|
||||||
|
"crypto/fipsmodule/ec/asm/ecp_nistz256-armv4.pl"
|
||||||
|
"crypto/fipsmodule/modes/asm/ghash-armv4.pl"
|
||||||
|
"crypto/poly1305/asm/poly1305-armv4.pl"
|
||||||
|
"crypto/fipsmodule/sha/asm/sha256-armv4.pl"
|
||||||
|
"crypto/fipsmodule/sha/asm/sha512-armv4.pl"))
|
||||||
|
|
||||||
|
(format #t "Creating the tarball ...~%")
|
||||||
|
(force-output)
|
||||||
|
;; The other option is to use cargo package --allow-dirty
|
||||||
|
(with-directory-excursion "../"
|
||||||
|
(invoke "tar" "czf" #$output
|
||||||
|
;; avoid non-determinism in the archive
|
||||||
|
"--sort=name" "--mtime=@0"
|
||||||
|
"--owner=root:0" "--group=root:0"
|
||||||
|
(string-append "ring-" #$version))))))))))))
|
||||||
(define-public rust-ring-0.14
|
(define-public rust-ring-0.14
|
||||||
(package
|
(package
|
||||||
(inherit rust-ring-0.16)
|
(inherit rust-ring-0.16)
|
||||||
(name "rust-ring")
|
(name "rust-ring")
|
||||||
(version "0.14.6")
|
(version "0.14.6")
|
||||||
(source
|
(source rust-ring-0.14-sources)
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (crate-uri "ring" version))
|
|
||||||
(file-name
|
|
||||||
(string-append name "-" version ".tar.gz"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0g091akf4dpg9qj05z3gc4nlrs57mjj2bqab98gaqp79wf3c2ss2"))
|
|
||||||
(modules '((guix build utils)))
|
|
||||||
(snippet
|
|
||||||
'(begin
|
|
||||||
;; Fix the doc tests.
|
|
||||||
(substitute* "src/ec/curve25519/ed25519/verification.rs"
|
|
||||||
((";;") ";"))
|
|
||||||
;; Remove some generated files.
|
|
||||||
;; Regenerating the curve25519_tables requires python2 and clang-format.
|
|
||||||
(delete-file "third_party/fiat/curve25519_tables.h")
|
|
||||||
(delete-file-recursively "pregenerated")
|
|
||||||
;; Pretend this isn't a relase tarball.
|
|
||||||
(with-output-to-file ".git"
|
|
||||||
(lambda _
|
|
||||||
(format #t "")))))))
|
|
||||||
(arguments
|
(arguments
|
||||||
`(#:skip-build? #t ; TODO: Fix build
|
`(#:cargo-inputs
|
||||||
#:cargo-inputs
|
(("rust-cc" ,rust-cc-1)
|
||||||
(("rust-lazy-static" ,rust-lazy-static-1)
|
("rust-lazy-static" ,rust-lazy-static-1)
|
||||||
("rust-libc" ,rust-libc-0.2)
|
("rust-libc" ,rust-libc-0.2)
|
||||||
("rust-spin" ,rust-spin-0.5)
|
("rust-spin" ,rust-spin-0.5)
|
||||||
("rust-untrusted" ,rust-untrusted-0.6)
|
("rust-untrusted" ,rust-untrusted-0.6)
|
||||||
("rust-winapi" ,rust-winapi-0.3)
|
("rust-winapi" ,rust-winapi-0.3))))))
|
||||||
("rust-cc" ,rust-cc-1))
|
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'generate-curve25519-tables
|
|
||||||
(lambda _
|
|
||||||
(with-directory-excursion "third_party/fiat"
|
|
||||||
(with-output-to-file "curve25519_tables.h"
|
|
||||||
(lambda _
|
|
||||||
(invoke "python" "make_curve25519_tables.py")))))))))
|
|
||||||
(native-inputs
|
|
||||||
(list clang perl python-2))))
|
|
||||||
|
|
||||||
(define-public rust-ring-0.13
|
(define-public rust-ring-0.13
|
||||||
(package
|
(package
|
||||||
|
@ -64478,7 +64622,9 @@ (define-public rust-ring-0.13
|
||||||
(with-directory-excursion "third_party/fiat"
|
(with-directory-excursion "third_party/fiat"
|
||||||
(with-output-to-file "curve25519_tables.h"
|
(with-output-to-file "curve25519_tables.h"
|
||||||
(lambda _
|
(lambda _
|
||||||
(invoke "python" "make_curve25519_tables.py")))))))))))
|
(invoke "python" "make_curve25519_tables.py")))))))))
|
||||||
|
(native-inputs
|
||||||
|
(list clang perl python-2))))
|
||||||
|
|
||||||
(define-public rust-ringbuf-0.2
|
(define-public rust-ringbuf-0.2
|
||||||
(package
|
(package
|
||||||
|
@ -67256,7 +67402,6 @@ (define-public rust-rustls-0.21
|
||||||
("rust-log" ,rust-log-0.4)
|
("rust-log" ,rust-log-0.4)
|
||||||
("rust-rustls-pemfile" ,rust-rustls-pemfile-1)
|
("rust-rustls-pemfile" ,rust-rustls-pemfile-1)
|
||||||
("rust-webpki-roots" ,rust-webpki-roots-0.25))))
|
("rust-webpki-roots" ,rust-webpki-roots-0.25))))
|
||||||
(native-inputs (list perl))
|
|
||||||
(home-page "https://github.com/rustls/rustls")
|
(home-page "https://github.com/rustls/rustls")
|
||||||
(synopsis "Modern TLS library written in Rust")
|
(synopsis "Modern TLS library written in Rust")
|
||||||
(description
|
(description
|
||||||
|
@ -67411,8 +67556,10 @@ (define-public rust-rustls-0.15
|
||||||
(base32
|
(base32
|
||||||
"0vh93fhqfbn4ysw4xzkpkpqdz36xixz4mhs1qllgldfq5iay6wgj"))))
|
"0vh93fhqfbn4ysw4xzkpkpqdz36xixz4mhs1qllgldfq5iay6wgj"))))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:skip-build? #t ; TODO: Fix building rust-ring-0.14
|
`(#:tests? #f ; API tests panic
|
||||||
#:tests? #f ;; 1/111 tests fail (test file not found)
|
#:cargo-test-flags
|
||||||
|
'("--release" "--"
|
||||||
|
"--skip=msgs::message_test::test_read_fuzz_corpus")
|
||||||
#:cargo-inputs
|
#:cargo-inputs
|
||||||
(("rust-base64" ,rust-base64-0.10)
|
(("rust-base64" ,rust-base64-0.10)
|
||||||
("rust-log" ,rust-log-0.4)
|
("rust-log" ,rust-log-0.4)
|
||||||
|
@ -67478,8 +67625,6 @@ (define-public rust-rustls-ffi-0.8
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "Cargo.toml"
|
(substitute* "Cargo.toml"
|
||||||
(("0\\.19\\.0") "*")))))))
|
(("0\\.19\\.0") "*")))))))
|
||||||
(native-inputs
|
|
||||||
(list perl))
|
|
||||||
(home-page "https://github.com/rustls/rustls-ffi")
|
(home-page "https://github.com/rustls/rustls-ffi")
|
||||||
(synopsis "Rustls bindings for non-Rust languages")
|
(synopsis "Rustls bindings for non-Rust languages")
|
||||||
(description "Rustls bindings for non-Rust languages")
|
(description "Rustls bindings for non-Rust languages")
|
||||||
|
@ -67512,7 +67657,6 @@ (define-public rust-rustls-native-certs-0.6
|
||||||
("rust-untrusted" ,rust-untrusted-0.7)
|
("rust-untrusted" ,rust-untrusted-0.7)
|
||||||
("rust-webpki-roots" ,rust-webpki-roots-0.23)
|
("rust-webpki-roots" ,rust-webpki-roots-0.23)
|
||||||
("rust-x509-parser" ,rust-x509-parser-0.15))))
|
("rust-x509-parser" ,rust-x509-parser-0.15))))
|
||||||
(native-inputs (list perl))
|
|
||||||
(home-page "https://github.com/ctz/rustls-native-certs")
|
(home-page "https://github.com/ctz/rustls-native-certs")
|
||||||
(synopsis "Use the platform native certificate store with rustls")
|
(synopsis "Use the platform native certificate store with rustls")
|
||||||
(description "@code{rustls-native-certs} allows rustls to use the platform
|
(description "@code{rustls-native-certs} allows rustls to use the platform
|
||||||
|
@ -67565,8 +67709,7 @@ (define-public rust-rustls-native-certs-0.4
|
||||||
(("rust-ring" ,rust-ring-0.16)
|
(("rust-ring" ,rust-ring-0.16)
|
||||||
("rust-untrusted" ,rust-untrusted-0.7)
|
("rust-untrusted" ,rust-untrusted-0.7)
|
||||||
("rust-webpki" ,rust-webpki-0.21)
|
("rust-webpki" ,rust-webpki-0.21)
|
||||||
("rust-webpki-roots" ,rust-webpki-roots-0.20))))
|
("rust-webpki-roots" ,rust-webpki-roots-0.20))))))
|
||||||
(native-inputs (list perl))))
|
|
||||||
|
|
||||||
(define-public rust-rustls-pemfile-2
|
(define-public rust-rustls-pemfile-2
|
||||||
(package
|
(package
|
||||||
|
@ -67667,8 +67810,6 @@ (define-public rust-rustls-webpki-0.101
|
||||||
("rust-rcgen" ,rust-rcgen-0.11)
|
("rust-rcgen" ,rust-rcgen-0.11)
|
||||||
("rust-serde" ,rust-serde-1)
|
("rust-serde" ,rust-serde-1)
|
||||||
("rust-serde-json" ,rust-serde-json-1))))
|
("rust-serde-json" ,rust-serde-json-1))))
|
||||||
(native-inputs
|
|
||||||
(list perl))
|
|
||||||
(home-page "https://github.com/rustls/webpki")
|
(home-page "https://github.com/rustls/webpki")
|
||||||
(synopsis "Web PKI X.509 Certificate Verification")
|
(synopsis "Web PKI X.509 Certificate Verification")
|
||||||
(description "Web PKI X.509 Certificate Verification.")
|
(description "Web PKI X.509 Certificate Verification.")
|
||||||
|
@ -69163,7 +69304,6 @@ (define-public rust-sct-0.7
|
||||||
`(#:cargo-inputs
|
`(#:cargo-inputs
|
||||||
(("rust-ring" ,rust-ring-0.16)
|
(("rust-ring" ,rust-ring-0.16)
|
||||||
("rust-untrusted" ,rust-untrusted-0.7))))
|
("rust-untrusted" ,rust-untrusted-0.7))))
|
||||||
(native-inputs (list perl))
|
|
||||||
(home-page "https://github.com/ctz/sct.rs")
|
(home-page "https://github.com/ctz/sct.rs")
|
||||||
(synopsis "Certificate transparency SCT verification library")
|
(synopsis "Certificate transparency SCT verification library")
|
||||||
(description "Certificate transparency SCT verification library.")
|
(description "Certificate transparency SCT verification library.")
|
||||||
|
@ -69203,21 +69343,9 @@ (define-public rust-sct-0.5
|
||||||
(base32
|
(base32
|
||||||
"1fb9ym5bwswx01yyggn7v2vfryih4vnqpp4r4ssv3qaqpn7xynig"))))
|
"1fb9ym5bwswx01yyggn7v2vfryih4vnqpp4r4ssv3qaqpn7xynig"))))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:skip-build? #t ; TODO: Fix building rust-ring-0.14
|
`(#:cargo-inputs
|
||||||
#:cargo-inputs
|
|
||||||
(("rust-ring" ,rust-ring-0.14)
|
(("rust-ring" ,rust-ring-0.14)
|
||||||
("rust-untrusted" ,rust-untrusted-0.6))
|
("rust-untrusted" ,rust-untrusted-0.6))))))
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(add-before 'build 'build-curve25519-tables
|
|
||||||
(lambda* (#:key vendor-dir #:allow-other-keys)
|
|
||||||
(with-directory-excursion
|
|
||||||
(dirname (car (find-files vendor-dir "make_curve25519_tables.py")))
|
|
||||||
(with-output-to-file "curve25519_tables.h"
|
|
||||||
(lambda _
|
|
||||||
(invoke "python" "make_curve25519_tables.py")))))))))
|
|
||||||
(native-inputs
|
|
||||||
(list clang perl python-2))))
|
|
||||||
|
|
||||||
(define-public rust-sct-0.4
|
(define-public rust-sct-0.4
|
||||||
(package
|
(package
|
||||||
|
@ -82651,8 +82779,6 @@ (define-public rust-tokio-rustls-0.24
|
||||||
("rust-rustls-webpki" ,rust-rustls-webpki-0.100)
|
("rust-rustls-webpki" ,rust-rustls-webpki-0.100)
|
||||||
("rust-tokio" ,rust-tokio-1)
|
("rust-tokio" ,rust-tokio-1)
|
||||||
("rust-webpki-roots" ,rust-webpki-roots-0.23))))
|
("rust-webpki-roots" ,rust-webpki-roots-0.23))))
|
||||||
(native-inputs
|
|
||||||
(list perl))
|
|
||||||
(home-page "https://github.com/tokio-rs/tls")
|
(home-page "https://github.com/tokio-rs/tls")
|
||||||
(synopsis "Asynchronous TLS/SSL streams for Tokio")
|
(synopsis "Asynchronous TLS/SSL streams for Tokio")
|
||||||
(description
|
(description
|
||||||
|
@ -82807,7 +82933,7 @@ (define-public rust-tokio-rustls-0.9
|
||||||
"1jd63sl177sxacnksaxhazzmamwds98xk3niprh2qib75a1rk8cm"))))
|
"1jd63sl177sxacnksaxhazzmamwds98xk3niprh2qib75a1rk8cm"))))
|
||||||
(build-system cargo-build-system)
|
(build-system cargo-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:skip-build? #t ; TODO: Fix building rust-ring-0.14
|
`(#:tests? #f ; Bundled test certificates expired
|
||||||
#:cargo-inputs
|
#:cargo-inputs
|
||||||
(("rust-bytes" ,rust-bytes-0.4)
|
(("rust-bytes" ,rust-bytes-0.4)
|
||||||
("rust-futures" ,rust-futures-0.1)
|
("rust-futures" ,rust-futures-0.1)
|
||||||
|
@ -85003,8 +85129,7 @@ (define-public rust-trust-dns-https-0.19
|
||||||
("rust-webpki-roots" ,rust-webpki-roots-0.19))
|
("rust-webpki-roots" ,rust-webpki-roots-0.19))
|
||||||
#:cargo-development-inputs
|
#:cargo-development-inputs
|
||||||
(("rust-env-logger" ,rust-env-logger-0.7)
|
(("rust-env-logger" ,rust-env-logger-0.7)
|
||||||
("rust-futures" ,rust-futures-0.3))))
|
("rust-futures" ,rust-futures-0.3))))))
|
||||||
(native-inputs (list perl))))
|
|
||||||
|
|
||||||
(define-public rust-trust-dns-https-0.18
|
(define-public rust-trust-dns-https-0.18
|
||||||
(package
|
(package
|
||||||
|
@ -85054,8 +85179,7 @@ (define-public rust-trust-dns-https-0.3
|
||||||
(base32 "14ps1fxngm8d3ynp9jf86zrqbyzjzh62v5grwrqb1q0xhbz98vv1"))))
|
(base32 "14ps1fxngm8d3ynp9jf86zrqbyzjzh62v5grwrqb1q0xhbz98vv1"))))
|
||||||
(build-system cargo-build-system)
|
(build-system cargo-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:skip-build? #t ; TODO: Fix building rust-ring-0.14
|
`(#:tests? #false ;network unreachable
|
||||||
#:tests? #false ;network unreachable
|
|
||||||
#:cargo-inputs
|
#:cargo-inputs
|
||||||
(("rust-bytes" ,rust-bytes-0.4)
|
(("rust-bytes" ,rust-bytes-0.4)
|
||||||
("rust-data-encoding" ,rust-data-encoding-2)
|
("rust-data-encoding" ,rust-data-encoding-2)
|
||||||
|
@ -85840,7 +85964,7 @@ (define-public rust-trust-dns-rustls-0.19
|
||||||
#:cargo-development-inputs
|
#:cargo-development-inputs
|
||||||
(("rust-openssl" ,rust-openssl-0.10))))
|
(("rust-openssl" ,rust-openssl-0.10))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list perl pkg-config))
|
(list pkg-config))
|
||||||
(inputs
|
(inputs
|
||||||
(list openssl))))
|
(list openssl))))
|
||||||
|
|
||||||
|
@ -85889,8 +86013,7 @@ (define-public rust-trust-dns-rustls-0.6
|
||||||
(inputs
|
(inputs
|
||||||
(list openssl))
|
(list openssl))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:skip-build? #t ; TODO: Fix building rust-ring-0.14
|
`(#:cargo-test-flags
|
||||||
#:cargo-test-flags
|
|
||||||
'("--release" "--" "--skip=tests::test_tls_client_stream_ipv4")
|
'("--release" "--" "--skip=tests::test_tls_client_stream_ipv4")
|
||||||
#:cargo-inputs
|
#:cargo-inputs
|
||||||
(("rust-futures" ,rust-futures-0.1)
|
(("rust-futures" ,rust-futures-0.1)
|
||||||
|
@ -87868,7 +87991,6 @@ (define-public rust-ureq-2
|
||||||
("rust-rustls" ,rust-rustls-0.21)
|
("rust-rustls" ,rust-rustls-0.21)
|
||||||
("rust-rustls-pemfile" ,rust-rustls-pemfile-1)
|
("rust-rustls-pemfile" ,rust-rustls-pemfile-1)
|
||||||
("rust-serde" ,rust-serde-1))))
|
("rust-serde" ,rust-serde-1))))
|
||||||
(native-inputs (list perl))
|
|
||||||
(home-page "https://github.com/algesten/ureq")
|
(home-page "https://github.com/algesten/ureq")
|
||||||
(synopsis "Simple, safe HTTP client")
|
(synopsis "Simple, safe HTTP client")
|
||||||
(description "This package provides minimal request library in Rust.")
|
(description "This package provides minimal request library in Rust.")
|
||||||
|
@ -90007,8 +90129,6 @@ (define-public rust-webpki-0.22
|
||||||
("rust-untrusted" ,rust-untrusted-0.7))
|
("rust-untrusted" ,rust-untrusted-0.7))
|
||||||
#:cargo-development-inputs
|
#:cargo-development-inputs
|
||||||
(("rust-base64" ,rust-base64-0.9))))
|
(("rust-base64" ,rust-base64-0.9))))
|
||||||
(native-inputs
|
|
||||||
(list perl))
|
|
||||||
(home-page "https://github.com/briansmith/webpki")
|
(home-page "https://github.com/briansmith/webpki")
|
||||||
(synopsis "Web PKI X.509 Certificate Verification")
|
(synopsis "Web PKI X.509 Certificate Verification")
|
||||||
(description "This package provides Web PKI X.509 Certificate
|
(description "This package provides Web PKI X.509 Certificate
|
||||||
|
@ -90050,24 +90170,12 @@ (define-public rust-webpki-0.19
|
||||||
(base32
|
(base32
|
||||||
"10nhyxlqsa4caxlxrijm5h79rdg6ld8hqy78ldjnnfhaj3biqzjg"))))
|
"10nhyxlqsa4caxlxrijm5h79rdg6ld8hqy78ldjnnfhaj3biqzjg"))))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:skip-build? #t ; TODO: Fix building rust-ring-0.14
|
`(#:tests? #f ; tests fail to build "missing file tests/ed25519/ee.der"
|
||||||
#:tests? #f ; tests fail to build "missing file tests/ed25519/ee.der"
|
|
||||||
#:cargo-inputs
|
#:cargo-inputs
|
||||||
(("rust-ring" ,rust-ring-0.14)
|
(("rust-ring" ,rust-ring-0.14)
|
||||||
("rust-untrusted" ,rust-untrusted-0.6))
|
("rust-untrusted" ,rust-untrusted-0.6))
|
||||||
#:cargo-development-inputs
|
#:cargo-development-inputs
|
||||||
(("rust-base64" ,rust-base64-0.9))
|
(("rust-base64" ,rust-base64-0.9))))))
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(add-before 'build 'build-curve25519-tables
|
|
||||||
(lambda* (#:key vendor-dir #:allow-other-keys)
|
|
||||||
(with-directory-excursion
|
|
||||||
(dirname (car (find-files vendor-dir "make_curve25519_tables.py")))
|
|
||||||
(with-output-to-file "curve25519_tables.h"
|
|
||||||
(lambda _
|
|
||||||
(invoke "python" "make_curve25519_tables.py")))))))))
|
|
||||||
(native-inputs
|
|
||||||
(list clang perl python-2))))
|
|
||||||
|
|
||||||
(define-public rust-webpki-0.18
|
(define-public rust-webpki-0.18
|
||||||
(package
|
(package
|
||||||
|
@ -90124,7 +90232,7 @@ (define-public rust-webpki-roots-0.25
|
||||||
("rust-rustls-webpki" ,rust-rustls-webpki-0.101)
|
("rust-rustls-webpki" ,rust-rustls-webpki-0.101)
|
||||||
("rust-tokio" ,rust-tokio-1))))
|
("rust-tokio" ,rust-tokio-1))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list perl pkg-config))
|
(list pkg-config))
|
||||||
(inputs
|
(inputs
|
||||||
(list openssl))
|
(list openssl))
|
||||||
(home-page "https://github.com/rustls/webpki-roots")
|
(home-page "https://github.com/rustls/webpki-roots")
|
||||||
|
@ -90254,8 +90362,7 @@ (define-public rust-webpki-roots-0.16
|
||||||
(base32
|
(base32
|
||||||
"03ny02mwqdgd2ff23k03kbwr2rrcaymxhp7jcjjikfh340hs83y1"))))
|
"03ny02mwqdgd2ff23k03kbwr2rrcaymxhp7jcjjikfh340hs83y1"))))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:skip-build? #t ; TODO: Fix building rust-ring-0.14
|
`(#:cargo-inputs
|
||||||
#:cargo-inputs
|
|
||||||
(("rust-untrusted" ,rust-untrusted-0.6)
|
(("rust-untrusted" ,rust-untrusted-0.6)
|
||||||
("rust-webpki" ,rust-webpki-0.19))))))
|
("rust-webpki" ,rust-webpki-0.19))))))
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue