* [bug#49867] [PATCH 00/29] gnu: Add ocaml-cohttp-lwt-unix.
@ 2021-08-04 7:10 pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (2 more replies)
0 siblings, 3 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:10 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
Hi,
These patches add ocaml-cohttp-lwt-unix - an OCaml HTTP library - and dependencies.
Some known rough edges:
- ocaml-eqaf: Tests are disabled for now as I am not able to build ocaml-afl-persistent which is a dependency for ocaml-crowbar which is required to run ocaml-eqaf tests. There is ongoing work to port ocaml-afl-persistent to dune (https://github.com/stedolan/ocaml-afl-persistent/pull/7) with that it should be much easier to build it and enable tests for ocaml-eqaf.
- ocaml-mirage-crypto-ec: Contains generated code from Fiat-Crypto (https://github.com/mit-plv/fiat-crypto). It would be nicer to generate the C code from the Coq sources during Guix build, but that seems like a lot more work.
- ocaml-ca-certs: Tests requie access to `/etc/ssl/certs/*` which does not seem to be available during tests. Any ways to allow this in the test environment?
- ocaml-cohttp-lwt-unix: Seems to require network during tests. Can someone confirm this?
Thanks,
pukkamustard
pukkamustard (29):
gnu: Add ocaml-cohttp-lwt.
gnu: Add ocaml-domain-name.
gnu: Add ocaml-macaddr.
gnu: Add ocaml-ipaddr.
gnu: Add ocaml-ipaddr-cstruct.
gnu: Add ocaml-ipaddr-sexp.
gnu: Add ocaml-conduit.
gnu: Add ocaml-conduit-lwt.
gnu: Add ocaml-eqaf.
gnu: Add ocaml-mirage-crypto.
gnu: Add ocaml-duration.
gnu: Add ocaml-randomconv.
gnu: Add ocaml-mirage-crypto-rng.
gnu: Add ocaml-mirage-crypto-pk.
gnu: Add ocaml-ptime.
gnu: Add ocaml-asn1-combinators.
gnu: Add ocaml-ppx-deriving.
gnu: Add ocaml-ppx-deriving-yojson.
gnu: Add ocaml-mirage-crypto-ec.
gnu: Add ocaml-gmap.
gnu: Add ocaml-pbkdf.
gnu: Add ocaml-cstruct-unix.
gnu: Add ocaml-x509.
gnu: Add ocaml-ca-certs.
gnu: Add ocaml-lwt-log.
gnu: Add ocaml-lwt-ssl.
gnu: Add ocaml-conduit-lwt-unix.
gnu: Add ocaml-magic-mime.
gnu: Add ocaml-cohttp-lwt-unix
gnu/packages/ocaml.scm | 787 ++++++++++++++++++++++++++++++++++++++++-
1 file changed, 786 insertions(+), 1 deletion(-)
--
2.32.0
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt.
2021-08-04 7:10 [bug#49867] [PATCH 00/29] gnu: Add ocaml-cohttp-lwt-unix pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 02/29] gnu: Add ocaml-domain-name pukkamustard
` (27 more replies)
2021-08-05 15:38 ` [bug#49867] [PATCH 00/29] " Xinglu Chen
2021-11-15 13:23 ` bug#49867: " pukkamustard
2 siblings, 28 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-cohttp-lwt): New variable.
---
gnu/packages/ocaml.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index bf9242410d..a33ae85c3a 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7148,6 +7148,30 @@ HTTP parser, and implementations using various asynchronous programming
libraries.")
(license license:isc)))
+(define-public ocaml-cohttp-lwt
+ (package
+ (inherit ocaml-cohttp)
+ (name "ocaml-cohttp-lwt")
+ (arguments `(#:package "cohttp-lwt"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cohttp" ,ocaml-cohttp)
+ ("ocaml-lwt" ,ocaml-lwt)
+ ("ocaml-sexplib0" ,ocaml-sexplib0)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-uri" ,ocaml-uri)))
+ (synopsis "OCaml library for HTTP clients and servers using the Lwt
+concurrency library")
+ (description "This is a portable implementation of HTTP that uses the Lwt
+concurrency library to multiplex IO. It implements as much of the logic in an
+OS-independent way as possible, so that more specialised modules can be
+tailored for different targets. For example, you can install
+@code{ocaml-cohttp-lwt-unix} or @code{ocaml-cohttp-lwt-jsoo} for a Unix or
+JavaScript backend, or @code{ocaml-cohttp-mirage} for the MirageOS unikernel
+version of the library. All of these implementations share the same IO logic
+from this module.")))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 02/29] gnu: Add ocaml-domain-name.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 03/29] gnu: Add ocaml-macaddr pukkamustard
` (26 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-domain-name): New variable.
---
gnu/packages/ocaml.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index a33ae85c3a..7acc3bcf6d 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7172,6 +7172,35 @@ JavaScript backend, or @code{ocaml-cohttp-mirage} for the MirageOS unikernel
version of the library. All of these implementations share the same IO logic
from this module.")))
+(define-public ocaml-domain-name
+ (package
+ (name "ocaml-domain-name")
+ (version "0.3.0")
+ (home-page "https://github.com/hannesm/domain-name")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "06l82k27wa446k0sd799i73rrqwwmqfm542blkx6bbm2xpxaz2cm"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-fmt" ,ocaml-fmt)
+ ("ocaml-astring" ,ocaml-astring)))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)))
+ (synopsis "OCaml library for RFC 1035 Internet domain names")
+ (description "This OCaml library provides functions for working with
+Internet domain names (RFC 1035). For example, it provides functions for
+comparing domain names or checking if one domain name is a sub-domain of
+another.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 03/29] gnu: Add ocaml-macaddr.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 02/29] gnu: Add ocaml-domain-name pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 04/29] gnu: Add ocaml-ipaddr pukkamustard
` (25 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-macaddr): New variable.
---
gnu/packages/ocaml.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 7acc3bcf6d..46adb95b93 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7201,6 +7201,34 @@ comparing domain names or checking if one domain name is a sub-domain of
another.")
(license license:isc)))
+(define-public ocaml-macaddr
+ (package
+ (name "ocaml-macaddr")
+ (version "5.1.0")
+ (home-page "https://github.com/mirage/ocaml-ipaddr")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "02pan5b8s4j5r68znjdb5mln3nffccdfsh4rw71x31b6qsrlqzgg"))))
+ (build-system dune-build-system)
+ (arguments `(#:package "macaddr"
+ #:test-target "."))
+ (native-inputs
+ `(("ocaml-ounit" ,ocaml-ounit)
+ ("ocaml-domain-name" ,ocaml-domain-name)
+ ("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)))
+ (synopsis "OCaml library for manipulation of MAC address representations")
+ (description "This OCaml library provides functions for manipulating MAC
+address representations.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 04/29] gnu: Add ocaml-ipaddr.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 02/29] gnu: Add ocaml-domain-name pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 03/29] gnu: Add ocaml-macaddr pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 05/29] gnu: Add ocaml-ipaddr-cstruct pukkamustard
` (24 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ipaddr): New variable.
---
gnu/packages/ocaml.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 46adb95b93..08c45f46a7 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7229,6 +7229,25 @@ another.")
address representations.")
(license license:isc)))
+(define-public ocaml-ipaddr
+ (package
+ (inherit ocaml-macaddr)
+ (name "ocaml-ipaddr")
+ (arguments `(#:package "ipaddr"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-macaddr" ,ocaml-macaddr)
+ ("ocaml-stdlib-shims" ,ocaml-stdlib-shims)
+ ("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-domain-name" ,ocaml-domain-name)))
+ (native-inputs
+ `(("ocaml-ounit" ,ocaml-ounit)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)))
+ (synopsis "OCaml library for manipulation of IP address representations")
+ (description "This OCaml library provides functions for manipulating IP
+address representations. It supports IPv4 and IPv6.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 05/29] gnu: Add ocaml-ipaddr-cstruct.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (2 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 04/29] gnu: Add ocaml-ipaddr pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 06/29] gnu: Add ocaml-ipaddr-sexp pukkamustard
` (23 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ipaddr-cstruct): New variable.
---
gnu/packages/ocaml.scm | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 08c45f46a7..668299e89c 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7248,6 +7248,19 @@ address representations.")
address representations. It supports IPv4 and IPv6.")
(license license:isc)))
+(define-public ocaml-ipaddr-cstruct
+ (package
+ (inherit ocaml-macaddr)
+ (name "ocaml-ipaddr-cstruct")
+ (arguments `(#:package "ipaddr-cstruct"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-ipaddr" ,ocaml-ipaddr)
+ ("ocaml-cstruct" ,ocaml-cstruct)))
+ (synopsis "OCaml library for manipulation of IP addresses as C-like structres")
+ (description "This OCaml library provides functions for manipulating as
+C-like structures using the @code{ocaml-cstruct} library.")))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 06/29] gnu: Add ocaml-ipaddr-sexp.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (3 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 05/29] gnu: Add ocaml-ipaddr-cstruct pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 07/29] gnu: Add ocaml-conduit pukkamustard
` (22 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ipaddr-sexp): New variable.
---
gnu/packages/ocaml.scm | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 668299e89c..7e3abcacb1 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7261,6 +7261,23 @@ address representations. It supports IPv4 and IPv6.")
(description "This OCaml library provides functions for manipulating as
C-like structures using the @code{ocaml-cstruct} library.")))
+(define-public ocaml-ipaddr-sexp
+ (package
+ (inherit ocaml-macaddr)
+ (name "ocaml-ipaddr-sexp")
+ (arguments `(#:package "ipaddr-sexp"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-ipaddr" ,ocaml-ipaddr)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-sexplib0" ,ocaml-sexplib0)))
+ (native-inputs
+ `(("ocaml-ipaddr-cstruct" ,ocaml-ipaddr-cstruct)
+ ("ocaml-ounit" ,ocaml-ounit)))
+ (synopsis "OCaml library for manipulation of IP addresses as S-expressions")
+ (description "This OCaml library provides functions for manipulating as
+S-expressions using the @code{ocaml-sexp} library.")))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 07/29] gnu: Add ocaml-conduit.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (4 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 06/29] gnu: Add ocaml-ipaddr-sexp pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 08/29] gnu: Add ocaml-conduit-lwt pukkamustard
` (21 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-conduit): New variable.
---
gnu/packages/ocaml.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 7e3abcacb1..f5723bdf09 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7278,6 +7278,38 @@ C-like structures using the @code{ocaml-cstruct} library.")))
(description "This OCaml library provides functions for manipulating as
S-expressions using the @code{ocaml-sexp} library.")))
+(define-public ocaml-conduit
+ (package
+ (name "ocaml-conduit")
+ (version "4.0.0")
+ (home-page "https://github.com/mirage/ocaml-conduit")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0ipm6fkmvgsyfj5f5p057av8kykli5rh8qzw7ycdrakdk7gzvhi0"))))
+ (build-system dune-build-system)
+ (arguments `(#:package "conduit"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-sexplib" ,ocaml-sexplib)
+ ("ocaml-astring" ,ocaml-astring)
+ ("ocaml-uri" ,ocaml-uri)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-ipaddr" ,ocaml-ipaddr)
+ ("ocaml-ipaddr-sexp" ,ocaml-ipaddr-sexp)))
+ (synopsis "OCaml library for establishing TCP and SSL/TLS connections")
+ (description "This OCaml library provides an abstraction for establishing
+TCP and SSL/TLS connections. This allows using the same type signatures
+regardless of the SSL library or platform being used.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 08/29] gnu: Add ocaml-conduit-lwt.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (5 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 07/29] gnu: Add ocaml-conduit pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 09/29] gnu: Add ocaml-eqaf pukkamustard
` (20 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-conduit-lwt): New variable.
---
gnu/packages/ocaml.scm | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index f5723bdf09..c29a272214 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7310,6 +7310,24 @@ TCP and SSL/TLS connections. This allows using the same type signatures
regardless of the SSL library or platform being used.")
(license license:isc)))
+(define-public ocaml-conduit-lwt
+ (package
+ (inherit ocaml-conduit)
+ (name "ocaml-conduit-lwt")
+ (arguments `(#:package "conduit-lwt"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-sexplib" ,ocaml-sexplib)
+ ("ocaml-conduit" ,ocaml-conduit)
+ ("ocaml-lwt" ,ocaml-lwt)))
+ (synopsis "OCaml library for establishing TCP and SSL/TLS connections
+using Lwt")
+ (description "This OCaml library provides the abstractions for
+establishing TCP and SSL/TLS connections from @code{ocaml-conduit} using
+@code{ocaml-lwt}.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 09/29] gnu: Add ocaml-eqaf.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (6 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 08/29] gnu: Add ocaml-conduit-lwt pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 10/29] gnu: Add ocaml-mirage-crypto pukkamustard
` (19 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-eqaf): New variable.
---
gnu/packages/ocaml.scm | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index c29a272214..04240b560b 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7328,6 +7328,39 @@ establishing TCP and SSL/TLS connections from @code{ocaml-conduit} using
@code{ocaml-lwt}.")
(license license:isc)))
+(define-public ocaml-eqaf
+ (package
+ (name "ocaml-eqaf")
+ (version "0.7")
+ (home-page "https://github.com/mirage/eqaf")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "06hsnnjax1kb3qsi3cj0nyyz8c2hj2gbw3h517gpjinpnwy2fr85"))))
+ (build-system dune-build-system)
+ (arguments
+ ;; Tests require ocaml-crowbar which depends on
+ ;; ocaml-afl-persistent. ocaml-afl-persistent uses a non-standard build system
+ ;; and I have not yet managed to build it with Guix. There is an on-going effort
+ ;; to port the build system to dune
+ ;; (https://github.com/stedolan/ocaml-afl-persistent/pull/7). With that it should
+ ;; be easy to add ocaml-afl-persistent and ocaml-crowbar and enable these tests.
+ `(#:tests? #f))
+ (propagated-inputs
+ ;; required to build the eqaf.cstruct library (see https://github.com/mirage/eqaf/pull/27)
+ `(("ocaml-bigarray-compat" ,ocaml-bigarray-compat)
+ ("ocaml-cstruct" ,ocaml-cstruct)))
+ (synopsis "OCaml library for constant-time equal function on string")
+ (description "This OCaml library provides an equal function on string in
+constant-time to avoid timing-attack with crypto stuff.")
+ (license license:expat)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 10/29] gnu: Add ocaml-mirage-crypto.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (7 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 09/29] gnu: Add ocaml-eqaf pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 11/29] gnu: Add ocaml-duration pukkamustard
` (18 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-mirage-crypto): New variable.
---
gnu/packages/ocaml.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 04240b560b..aa1129e5f3 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7361,6 +7361,37 @@ establishing TCP and SSL/TLS connections from @code{ocaml-conduit} using
constant-time to avoid timing-attack with crypto stuff.")
(license license:expat)))
+(define-public ocaml-mirage-crypto
+ (package
+ (name "ocaml-mirage-crypto")
+ (version "0.10.3")
+ (home-page "https://github.com/mirage/mirage-crypto")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0j7x07c8xy8bmqp9ad1cib6j69dy7acjg9m1d7pn0dnmbkrl8fiz"))))
+ (build-system dune-build-system)
+ (arguments `(#:package "mirage-crypto"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-eqaf" ,ocaml-eqaf)
+ ("ocaml-bigarray-compat" ,ocaml-bigarray-compat)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("ocaml-ounit" ,ocaml-ounit)))
+ (synopsis "OCaml library provding cryptographic primitives")
+ (description "This OCaml library provides symmetric ciphers (DES, AES,
+RC4, ChaCha20/Poly1305), and hashes (MD5, SHA-1, SHA-2). This library can be
+used from MirageOS unikernels.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 11/29] gnu: Add ocaml-duration.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (8 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 10/29] gnu: Add ocaml-mirage-crypto pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 12/29] gnu: Add ocaml-randomconv pukkamustard
` (17 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-duration): New variable.
---
gnu/packages/ocaml.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index aa1129e5f3..11458d0039 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7392,6 +7392,31 @@ RC4, ChaCha20/Poly1305), and hashes (MD5, SHA-1, SHA-2). This library can be
used from MirageOS unikernels.")
(license license:isc)))
+(define-public ocaml-duration
+ (package
+ (name "ocaml-duration")
+ (version "0.1.3")
+ (home-page "https://github.com/hannesm/duration")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0ka4cv9581iaa6q1k02ddrpz7f53k3wk7rpq43j1lrdm4vl2jk4w"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)))
+ (synopsis "OCaml library providing conversions between various time units")
+ (description "This OCaml library provides functions for representing a
+time duration as an usigned 64 bit integer. This can be used for conversions
+between various time units.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 12/29] gnu: Add ocaml-randomconv.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (9 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 11/29] gnu: Add ocaml-duration pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 13/29] gnu: Add ocaml-mirage-crypto-rng pukkamustard
` (16 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-randomconv): New variable.
---
gnu/packages/ocaml.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 11458d0039..f7956fe216 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7417,6 +7417,31 @@ time duration as an usigned 64 bit integer. This can be used for conversions
between various time units.")
(license license:isc)))
+(define-public ocaml-randomconv
+ (package
+ (name "ocaml-randomconv")
+ (version "0.1.3")
+ (home-page "https://github.com/hannesm/randomconv")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0pzq2zqz5bpy2snsvmn82hg79wfd0lmbbbhmhdvc8k20km86jqy7"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)))
+ (synopsis "OCaml library for converting random byte vectors to random numer")
+ (description
+ "This Ocaml library provides functions for converting random byte vectors
+as (C-like structures using @code{ocaml-cstruct}) to OCaml native numbers.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 13/29] gnu: Add ocaml-mirage-crypto-rng.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (10 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 12/29] gnu: Add ocaml-randomconv pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-05 15:42 ` Xinglu Chen
2021-08-04 7:15 ` [bug#49867] [PATCH 14/29] gnu: Add ocaml-mirage-crypto-pk pukkamustard
` (15 subsequent siblings)
27 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-mirage-crypto-rng): New variable.
---
gnu/packages/ocaml.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index f7956fe216..6af9bedc65 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7442,6 +7442,26 @@ between various time units.")
as (C-like structures using @code{ocaml-cstruct}) to OCaml native numbers.")
(license license:isc)))
+(define-public ocaml-mirage-crypto-rng
+ (package
+ (inherit ocaml-mirage-crypto)
+ (name "ocaml-mirage-crypto-rng")
+ (arguments `(#:package "mirage-crypto-rng"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-duration" ,ocaml-duration)
+ ("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-mirage-crypto" ,ocaml-mirage-crypto)
+ ("ocaml-mtime" ,ocaml-mtime)
+ ("ocaml-lwt" ,ocaml-lwt)))
+ (native-inputs
+ `(("ocaml-ounit" ,ocaml-ounit)
+ ("ocaml-randomconv" ,ocaml-randomconv)))
+ (synopsis "OCaml library providing a cryptographically secure pseudorandom number generator")
+ (description "@code{ocaml-mirage-crypto-rng} provides an OCaml random
+number generator interface, and implementations.")))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 14/29] gnu: Add ocaml-mirage-crypto-pk.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (11 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 13/29] gnu: Add ocaml-mirage-crypto-rng pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 15/29] gnu: Add ocaml-ptime pukkamustard
` (14 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-mirage-crypto-pk): New variable.
---
gnu/packages/ocaml.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 6af9bedc65..a34c844059 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7462,6 +7462,31 @@ as (C-like structures using @code{ocaml-cstruct}) to OCaml native numbers.")
(description "@code{ocaml-mirage-crypto-rng} provides an OCaml random
number generator interface, and implementations.")))
+(define-public ocaml-mirage-crypto-pk
+ (package
+ (inherit ocaml-mirage-crypto)
+ (name "ocaml-mirage-crypto-pk")
+ (arguments `(#:package "mirage-crypto-pk"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-mirage-crypto" ,ocaml-mirage-crypto)
+ ("ocaml-mirage-crypto-rng" ,ocaml-mirage-crypto-rng)
+ ("ocaml-mtime" ,ocaml-mtime)
+ ("ocaml-sexplib" ,ocaml-sexplib)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-zarith" ,ocaml-zarith)
+ ("ocaml-eqaf" ,ocaml-eqaf)
+ ("ocaml-rresult" ,ocaml-rresult)))
+ (native-inputs
+ `(("ocaml-ounit" ,ocaml-ounit)
+ ("ocaml-randomconv" ,ocaml-randomconv)))
+ (inputs `(("gmp" ,gmp)))
+ (synopsis "OCaml library providing public-key cryptography")
+ (description "@code{ocaml-mirage-crypto-pk} provides public-key
+cryptography (RSA, DSA, DH) for OCaml.")))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 15/29] gnu: Add ocaml-ptime.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (12 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 14/29] gnu: Add ocaml-mirage-crypto-pk pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-05 15:48 ` Xinglu Chen
2021-08-04 7:15 ` [bug#49867] [PATCH 16/29] gnu: Add ocaml-asn1-combinators pukkamustard
` (13 subsequent siblings)
27 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ptime): New variable.
---
gnu/packages/ocaml.scm | 42 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index a34c844059..ab385eb26f 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7487,6 +7487,48 @@ number generator interface, and implementations.")))
(description "@code{ocaml-mirage-crypto-pk} provides public-key
cryptography (RSA, DSA, DH) for OCaml.")))
+(define-public ocaml-ptime
+ (package
+ (name "ocaml-ptime")
+ (version "0.8.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri "https://erratique.ch/software/ptime/releases/ptime-0.8.5.tbz")
+ (sha256
+ (base32
+ "1fxq57xy1ajzfdnvv5zfm7ap2nf49znw5f9gbi4kb9vds942ij27"))))
+ (build-system ocaml-build-system)
+ (arguments
+ `(#:tests? #f
+ #:build-flags (list "build" "--with-js_of_ocaml" "false")
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))))
+ (propagated-inputs
+ `(("ocaml-result" ,ocaml-result)))
+ (native-inputs
+ `(("ocamlbuild" ,ocamlbuild)
+ ("ocaml-topkg" ,ocaml-topkg)
+ ("opam" ,opam)))
+ (home-page "https://erratique.ch/software/ptime")
+ (synopsis "POSIX time for OCaml")
+ (description "Ptime has platform independent POSIX time support in pure
+OCaml. It provides a type to represent a well-defined range of POSIX
+timestamps with picosecond precision, conversion with date-time values,
+conversion with RFC 3339 timestamps and pretty printing to a human-readable,
+locale-independent representation.
+
+The additional Ptime_clock library provides access to a system POSIX clock and
+to the system's current time zone offset.
+
+Ptime is not a calendar library.
+
+Ptime depends on the @code{ocaml-result} compatibility package. Ptime_clock
+depends on your system library. Ptime_clock's optional JavaScript support
+depends on @code{js-of-ocaml}.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 16/29] gnu: Add ocaml-asn1-combinators.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (13 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 15/29] gnu: Add ocaml-ptime pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 17/29] gnu: Add ocaml-ppx-deriving pukkamustard
` (12 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-asn1-combinators): New variable.
---
gnu/packages/ocaml.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index ab385eb26f..3c8d6fb5df 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7529,6 +7529,41 @@ depends on your system library. Ptime_clock's optional JavaScript support
depends on @code{js-of-ocaml}.")
(license license:isc)))
+(define-public ocaml-asn1-combinators
+ (package
+ (name "ocaml-asn1-combinators")
+ (version "0.2.5")
+ (home-page "https://github.com/mirleft/ocaml-asn1-combinators")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0n7afzyqc3b7g7rl54ccw31431h6g145zvpzg34q0y4m5gzjv5h5"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-zarith" ,ocaml-zarith)
+ ("ocaml-bigarray-compat" ,ocaml-bigarray-compat)
+ ("ocaml-stdlib-shims" ,ocaml-stdlib-shims)
+ ("ocaml-ptime" ,ocaml-ptime)))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)))
+ (inputs `(("gmp" ,gmp)))
+ (synopsis "OCaml library for embedding typed ASN.1 grammars")
+ (description "@{ocaml-asn1-combinators} is an OCaml library for expressing
+ASN.1 in OCaml. This allows you to skip the notation part of ASN.1, and embed
+the abstract syntax directly in the language. These abstract syntax
+representations can be used for parsing, serialization, or random testing.
+
+The only ASN.1 encodings currently supported are BER and DER.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 17/29] gnu: Add ocaml-ppx-deriving.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (14 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 16/29] gnu: Add ocaml-asn1-combinators pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 18/29] gnu: Add ocaml-ppx-deriving-yojson pukkamustard
` (11 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ppx-deriving): New variable.
---
gnu/packages/ocaml.scm | 33 ++++++++++++++++++++++++++++++++-
1 file changed, 32 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 3c8d6fb5df..f385aa2a94 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -4528,7 +4528,38 @@ speedup, polymorphic variants and optional syntax for tuples and variants.
yojson package. The program @code{atdgen} can be used to derive OCaml-JSON
serializers and deserializers from type definitions.")
(license license:bsd-3)))
-
+
+(define-public ocaml-ppx-deriving
+ (package
+ (name "ocaml-ppx-deriving")
+ (version "5.2.1")
+ (home-page "https://github.com/ocaml-ppx/ppx_deriving")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1wqcnw4wi6pfjjhixpakckm03dpj990259za432804471a6spm2j"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-ppx-derivers" ,ocaml-ppx-derivers)
+ ("ocaml-ppxlib" ,ocaml-ppxlib)
+ ("ocaml-result" ,ocaml-result)))
+ (native-inputs
+ `(("ocaml-cppo" ,ocaml-cppo)
+ ("ocaml-ounit2" ,ocaml-ounit2)))
+ (properties `((upstream-name . "ppx_deriving")))
+ (synopsis "Type-driven code generation for OCaml")
+ (description "This OCaml library provides common infrastructure for
+generating code based on type definitions, and a set of useful plugins for
+common tasks.")
+ (license license:expat)))
+
(define-public ocaml-craml
(package
(name "ocaml-craml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 18/29] gnu: Add ocaml-ppx-deriving-yojson.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (15 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 17/29] gnu: Add ocaml-ppx-deriving pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 19/29] gnu: Add ocaml-mirage-crypto-ec pukkamustard
` (10 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ppx-deriving-yojson): New variable.
---
gnu/packages/ocaml.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index f385aa2a94..2cc91ea2c0 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -4560,6 +4560,35 @@ generating code based on type definitions, and a set of useful plugins for
common tasks.")
(license license:expat)))
+(define-public ocaml-ppx-deriving-yojson
+ (package
+ (name "ocaml-ppx-deriving-yojson")
+ (version "3.6.1")
+ (home-page "https://github.com/ocaml-ppx/ppx_deriving_yojson")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1icz5h6p3pfj7my5gi7wxpflrb8c902dqa17f9w424njilnpyrbk"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-yojson" ,ocaml-yojson)
+ ("ocaml-result" ,ocaml-result)
+ ("ocaml-ppx-deriving" ,ocaml-ppx-deriving)
+ ("ocaml-ppxlib" ,ocaml-ppxlib)))
+ (native-inputs `(("ocaml-ounit" ,ocaml-ounit)))
+ (properties `((upstream-name . "ppx_deriving_yojson")))
+ (synopsis "JSON codec generator for OCaml")
+ (description "@code{ocaml-ppx-deriving-yojson} is an OCaml ppx_deriving
+plugin that provides a JSON codec generator.")
+ (license license:expat)))
+
(define-public ocaml-craml
(package
(name "ocaml-craml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 19/29] gnu: Add ocaml-mirage-crypto-ec.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (16 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 18/29] gnu: Add ocaml-ppx-deriving-yojson pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 20/29] gnu: Add ocaml-gmap pukkamustard
` (9 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-mirage-crypto-ec): New variable.
---
gnu/packages/ocaml.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 2cc91ea2c0..8463682e79 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7624,6 +7624,40 @@ representations can be used for parsing, serialization, or random testing.
The only ASN.1 encodings currently supported are BER and DER.")
(license license:isc)))
+(define-public ocaml-mirage-crypto-ec
+ ;; FIXME: This package contains generated code (see
+ ;; https://github.com/mirage/mirage-crypto/blob/main/ec/native/README.md). These
+ ;; should be re-generated during the build process.
+ (package
+ (inherit ocaml-mirage-crypto)
+ (name "ocaml-mirage-crypto-ec")
+ (arguments `(#:package "mirage-crypto-ec"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-eqaf" ,ocaml-eqaf)
+ ("ocaml-mirage-crypto" ,ocaml-mirage-crypto)
+ ("ocaml-mirage-crypto-rng" ,ocaml-mirage-crypto-rng)
+ ("gmp" ,gmp)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("ocaml-randomconv" ,ocaml-randomconv)
+ ("ocaml-ounit" ,ocaml-ounit)
+ ("ocaml-mirage-crypto-pk" ,ocaml-mirage-crypto-pk)
+ ("ocaml-hex" ,ocaml-hex)
+ ("ocaml-alcotest" ,ocaml-alcotest)
+ ("ocaml-asn1-combinators" ,ocaml-asn1-combinators)
+ ("ocaml-ppx-deriving-yojson" ,ocaml-ppx-deriving-yojson)
+ ("ocaml-ppx-deriving" ,ocaml-ppx-deriving)
+ ("ocaml-yojson" ,ocaml-yojson)))
+ (synopsis "OCaml library providing Elliptic Curve Cryptography")
+ (description "This OCaml library provides an implementation of key exchange
+(ECDH) and digital signature (ECDSA/EdDSA) algorithms. The curves P224
+(SECP224R1), P256 (SECP256R1), P384 (SECP384R1),P521 (SECP521R1), and 25519
+(X25519, Ed25519) are implemented by this package.")
+ ;; See https://github.com/mirage/mirage-crypto/blob/main/ec/LICENSE.md
+ (license license:expat)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 20/29] gnu: Add ocaml-gmap.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (17 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 19/29] gnu: Add ocaml-mirage-crypto-ec pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 21/29] gnu: Add ocaml-pbkdf pukkamustard
` (8 subsequent siblings)
27 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-gmap): New variable.
---
gnu/packages/ocaml.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 8463682e79..e520151adf 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7658,6 +7658,32 @@ The only ASN.1 encodings currently supported are BER and DER.")
;; See https://github.com/mirage/mirage-crypto/blob/main/ec/LICENSE.md
(license license:expat)))
+(define-public ocaml-gmap
+ (package
+ (name "ocaml-gmap")
+ (version "0.3.0")
+ (home-page "https://github.com/hannesm/gmap")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0880mhcybr662k6wnahx5mwbialh878kkzxacn47qniadd21x411"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)
+ ("ocaml-fmt" ,ocaml-fmt)))
+ (synopsis "OCaml library for heterogenous maps over a Generalized
+Algebraic Data Type")
+ (description "@code{ocaml-gmap} exposes an OCaml functor which can be used
+to create a type-safe heterogenous maps.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 21/29] gnu: Add ocaml-pbkdf.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (18 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 20/29] gnu: Add ocaml-gmap pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-05 15:55 ` Xinglu Chen
2021-08-04 7:15 ` [bug#49867] [PATCH 22/29] gnu: Add ocaml-cstruct-unix pukkamustard
` (7 subsequent siblings)
27 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-pbkdf): New variable.
---
gnu/packages/ocaml.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index e520151adf..6effe1ff12 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7684,6 +7684,32 @@ Algebraic Data Type")
to create a type-safe heterogenous maps.")
(license license:isc)))
+(define-public ocaml-pbkdf
+ (package
+ (name "ocaml-pbkdf")
+ (version "1.1.0")
+ (home-page "https://github.com/abeaumont/ocaml-pbkdf")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0scq1i7hiy8dgjdfrcaca3k7wzys35k1g2cdg7v4kfdqr6q1scb3"))))
+ (build-system dune-build-system)
+ (propagated-inputs
+ `(("ocaml-mirage-crypto" ,ocaml-mirage-crypto)))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)))
+ (synopsis "OCaml library for password based key derivation functions
+(PBKDF) from PKCS#5")
+ (description "An OCaml implementation of PBKDF 1 and 2 as defined by
+PKCS#5 using @code{ocaml-mirage-crypto}.")
+ (license license:bsd-2)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 22/29] gnu: Add ocaml-cstruct-unix.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (19 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 21/29] gnu: Add ocaml-pbkdf pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-05 16:02 ` Xinglu Chen
2021-08-04 7:15 ` [bug#49867] [PATCH 23/29] gnu: Add ocaml-x509 pukkamustard
` (6 subsequent siblings)
27 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-cstruct-unix): New variable.
---
gnu/packages/ocaml.scm | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 6effe1ff12..a9a4c8a684 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3412,6 +3412,22 @@ to access C-like structures directly from OCaml. It supports both reading and
writing to these structures, and they are accessed via the Bigarray module.")
(license license:isc)))
+(define-public ocaml-cstruct-unix
+ (package
+ (inherit ocaml-cstruct)
+ (name "ocaml-cstruct-unix")
+ (build-system dune-build-system)
+ (arguments
+ `(#:package "cstruct-unix"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)))
+ (synopsis "Unix variation of the @code{ocaml-cstruct} library for accessing C-like structures directly from OCaml")
+ (description "Cstruct is a library and syntax extension to make it easier to access C-like
+structures directly from OCaml. It supports both reading and writing to these
+structures, and they are accessed via the `Bigarray` module.")
+ (license license:isc)))
+
(define-public ocaml-hex
(package
(name "ocaml-hex")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 23/29] gnu: Add ocaml-x509.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (20 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 22/29] gnu: Add ocaml-cstruct-unix pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-05 16:04 ` Xinglu Chen
2021-08-04 7:15 ` [bug#49867] [PATCH 24/29] gnu: Add ocaml-ca-certs pukkamustard
` (5 subsequent siblings)
27 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-x509): New variable.
---
gnu/packages/ocaml.scm | 46 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index a9a4c8a684..3ce07057f5 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7726,6 +7726,52 @@ to create a type-safe heterogenous maps.")
PKCS#5 using @code{ocaml-mirage-crypto}.")
(license license:bsd-2)))
+(define-public ocaml-x509
+ (package
+ (name "ocaml-x509")
+ (version "0.14.0")
+ (home-page "https://github.com/mirleft/ocaml-x509")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0b51vzyxxkhwgx12dg55clb1lb971cxlmsk4wlxzs5h115j5hcy7"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-asn1-combinators" ,ocaml-asn1-combinators)
+ ("ocaml-ptime" ,ocaml-ptime)
+ ("ocaml-base64" ,ocaml-base64)
+ ("ocaml-mirage-crypto" ,ocaml-mirage-crypto)
+ ("ocaml-mirage-crypto-pk" ,ocaml-mirage-crypto-pk)
+ ("ocaml-mirage-crypto-ec" ,ocaml-mirage-crypto-ec)
+ ("ocaml-mirage-crypto-rng" ,ocaml-mirage-crypto-rng)
+ ("ocaml-rresult" ,ocaml-rresult)
+ ("ocaml-fmt" ,ocaml-fmt)
+ ("ocaml-gmap" ,ocaml-gmap)
+ ("ocaml-domain-name" ,ocaml-domain-name)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-pbkdf" ,ocaml-pbkdf)))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)
+ ("ocaml-cstruct-unix" ,ocaml-cstruct-unix)))
+ (synopsis "Public Key Infrastructure (RFC 5280, PKCS) purely in OCaml")
+ (description "X.509 is a public key infrastructure used mostly on the
+Internet. It consists of certificates which include public keys and
+identifiers, signed by an authority. Authorities must be exchanged over a
+second channel to establish the trust relationship. This OCaml library
+implements most parts of RFC5280 and RFC6125. The Public Key Cryptography
+Standards (PKCS) defines encoding and decoding (in ASN.1 DER and PEM format),
+which is also implemented by this library - namely PKCS 1, PKCS 5, PKCS 7,
+PKCS 8, PKCS 9, PKCS 10, and PKCS 12.")
+ (license license:bsd-2)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 24/29] gnu: Add ocaml-ca-certs.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (21 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 23/29] gnu: Add ocaml-x509 pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
[not found] ` <87fsvnkgzk.fsf@yoctocell.xyz>
2021-08-04 7:15 ` [bug#49867] [PATCH 25/29] gnu: Add ocaml-lwt-log pukkamustard
` (4 subsequent siblings)
27 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ca-certs): New variable.
---
gnu/packages/ocaml.scm | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 3ce07057f5..e832adc069 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7772,6 +7772,44 @@ which is also implemented by this library - namely PKCS 1, PKCS 5, PKCS 7,
PKCS 8, PKCS 9, PKCS 10, and PKCS 12.")
(license license:bsd-2)))
+(define-public ocaml-ca-certs
+ (package
+ (name "ocaml-ca-certs")
+ (version "0.2.1")
+ (home-page "https://github.com/mirage/ca-certs")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0qkxdrqyah24fz80hwkycdj50nybfjfz9b04qscv01r2ifb0kqy5"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."
+ ;; Tests are failing as they require certificates to be in /etc/ssl/certs
+ #:tests? #f))
+ (propagated-inputs
+ `(("ocaml-astring" ,ocaml-astring)
+ ("ocaml-bos" ,ocaml-bos)
+ ("ocaml-fpath" ,ocaml-fpath)
+ ("ocaml-rresult" ,ocaml-rresult)
+ ("ocaml-ptime" ,ocaml-ptime)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-mirage-crypto" ,ocaml-mirage-crypto)
+ ("ocaml-x509" ,ocaml-x509)))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)))
+ (synopsis
+ "Detect root CA certificates from the operating system")
+ (description
+ "TLS requires a set of root anchors (Certificate Authorities) to
+authenticate servers. This library exposes this list so that it can be
+registered with ocaml-tls.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 25/29] gnu: Add ocaml-lwt-log.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (22 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 24/29] gnu: Add ocaml-ca-certs pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-05 16:18 ` Xinglu Chen
2021-08-04 7:15 ` [bug#49867] [PATCH 26/29] gnu: Add ocaml-lwt-ssl pukkamustard
` (3 subsequent siblings)
27 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-lwt-log): New variable.
---
gnu/packages/ocaml.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index e832adc069..d475b75287 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7404,6 +7404,30 @@ establishing TCP and SSL/TLS connections from @code{ocaml-conduit} using
@code{ocaml-lwt}.")
(license license:isc)))
+(define-public ocaml-lwt-log
+ (package
+ (name "ocaml-lwt-log")
+ (version "1.1.1")
+ (home-page "https://github.com/ocsigen/lwt_log")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1n12i1rmn9cjn6p8yr6qn5dwbrwvym7ckr7bla04a1xnq8qlcyj7"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs `(("ocaml-lwt" ,ocaml-lwt)))
+ (properties `((upstream-name . "lwt_log")))
+ (synopsis "OCaml/Lwt logging library (deprecated)")
+ (description "This OCaml library provides helpers for logging is
+deprecated for @code{ocaml-logs}.")
+ (license license:lgpl2.1)))
+
(define-public ocaml-eqaf
(package
(name "ocaml-eqaf")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 26/29] gnu: Add ocaml-lwt-ssl.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (23 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 25/29] gnu: Add ocaml-lwt-log pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-05 16:20 ` Xinglu Chen
2021-08-04 7:15 ` [bug#49867] [PATCH 27/29] gnu: Add ocaml-conduit-lwt-unix pukkamustard
` (2 subsequent siblings)
27 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-lwt-ssl): New variable.
---
gnu/packages/ocaml.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index d475b75287..cadd22cb9c 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7428,6 +7428,32 @@ establishing TCP and SSL/TLS connections from @code{ocaml-conduit} using
deprecated for @code{ocaml-logs}.")
(license license:lgpl2.1)))
+(define-public ocaml-lwt-ssl
+ (package
+ (name "ocaml-lwt-ssl")
+ (version "1.1.3")
+ (home-page "https://github.com/ocsigen/lwt_ssl")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0v417ch5zn0yknj156awa5mrq3mal08pbrvsyribbn63ix6f9y3p"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-lwt" ,ocaml-lwt)
+ ("ocaml-ssl" ,ocaml-ssl)))
+ (properties `((upstream-name . "lwt_ssl")))
+ (synopsis "OpenSSL binding for OCaml with concurrent I/O")
+ (description "An Lwt-enabled wrapper around @code{ocaml-ssl}, that
+performs I/O concurrently.")
+(license license:lgpl2.1+))) ; with linking exception
+
(define-public ocaml-eqaf
(package
(name "ocaml-eqaf")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 27/29] gnu: Add ocaml-conduit-lwt-unix.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (24 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 26/29] gnu: Add ocaml-lwt-ssl pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-05 16:20 ` Xinglu Chen
2021-08-04 7:15 ` [bug#49867] [PATCH 28/29] gnu: Add ocaml-magic-mime pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 29/29] gnu: Add ocaml-cohttp-lwt-unix pukkamustard
27 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-conduit-lwt-unix): New variable.
---
gnu/packages/ocaml.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index cadd22cb9c..8904f2df19 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7454,6 +7454,31 @@ deprecated for @code{ocaml-logs}.")
performs I/O concurrently.")
(license license:lgpl2.1+))) ; with linking exception
+(define-public ocaml-conduit-lwt-unix
+ (package
+ (inherit ocaml-conduit)
+ (name "ocaml-conduit-lwt-unix")
+ (arguments `(#:package "conduit-lwt-unix"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-logs" ,ocaml-logs)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-conduit-lwt" ,ocaml-conduit-lwt)
+ ("ocaml-lwt" ,ocaml-lwt)
+ ("ocaml-uri" ,ocaml-uri)
+ ("ocaml-ipaddr" ,ocaml-ipaddr)
+ ("ocaml-ipaddr-sexp" ,ocaml-ipaddr-sexp)
+ ("ocaml-ca-certs" ,ocaml-ca-certs)))
+ (native-inputs
+ `(("ocaml-lwt-log" ,ocaml-lwt-log)
+ ("ocaml-ssl" ,ocaml-ssl)
+ ("ocaml-lwt-ssl" ,ocaml-lwt-ssl)))
+ (synopsis "OCaml library for establishing TCP and SSL/TLC connections using Lwt_unix")
+ (description "This OCaml library provides an implementation for
+establishing TCP and SSL/TLS connections for the @code{ocaml-conduit}
+signatures using Lwt_unix.")
+ (license license:isc)))
+
(define-public ocaml-eqaf
(package
(name "ocaml-eqaf")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 28/29] gnu: Add ocaml-magic-mime.
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (25 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 27/29] gnu: Add ocaml-conduit-lwt-unix pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-05 16:22 ` Xinglu Chen
2021-08-04 7:15 ` [bug#49867] [PATCH 29/29] gnu: Add ocaml-cohttp-lwt-unix pukkamustard
27 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-magic-mime): New variable.
---
gnu/packages/ocaml.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 8904f2df19..d9e84cd7ad 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7248,6 +7248,31 @@ JavaScript backend, or @code{ocaml-cohttp-mirage} for the MirageOS unikernel
version of the library. All of these implementations share the same IO logic
from this module.")))
+(define-public ocaml-magic-mime
+ (package
+ (name "ocaml-magic-mime")
+ (version "1.2.0")
+ (home-page "https://github.com/mirage/ocaml-magic-mime")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1pmwxw5n0lxbp7b9z1wplkn0cfl816cbacx3cdj2912n5zyjpjnk"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (synopsis "OCaml library for mapping filenames to common MIME types")
+ (description "This library contains a database of MIME types that maps
+filename extensions into MIME types suitable for use in many Internet
+protocols such as HTTP or e-mail. It is generated from the `mime.types` file
+found in Unix systems, but has no dependency on a filesystem since it includes
+the contents of the database as an ML datastructure.")
+ (license license:isc)))
+
(define-public ocaml-domain-name
(package
(name "ocaml-domain-name")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 29/29] gnu: Add ocaml-cohttp-lwt-unix
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
` (26 preceding siblings ...)
2021-08-04 7:15 ` [bug#49867] [PATCH 28/29] gnu: Add ocaml-magic-mime pukkamustard
@ 2021-08-04 7:15 ` pukkamustard
2021-08-05 16:25 ` Xinglu Chen
27 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-04 7:15 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-cohttp-lwt-unix): New variable.
---
gnu/packages/ocaml.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index d9e84cd7ad..db195996c9 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7248,6 +7248,29 @@ JavaScript backend, or @code{ocaml-cohttp-mirage} for the MirageOS unikernel
version of the library. All of these implementations share the same IO logic
from this module.")))
+(define-public ocaml-cohttp-lwt-unix
+ (package
+ (inherit ocaml-cohttp)
+ (name "ocaml-cohttp-lwt-unix")
+ (arguments `(#:package "cohttp-lwt-unix"
+ ;; tests require network
+ #:tests? #f))
+ (propagated-inputs
+ `(("ocaml-conduit-lwt" ,ocaml-conduit-lwt)
+ ("ocaml-conduit-lwt-unix" ,ocaml-conduit-lwt-unix)
+ ("ocaml-cmdliner" ,ocaml-cmdliner)
+ ("ocaml-magic-mime" ,ocaml-magic-mime)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-fmt" ,ocaml-fmt)
+ ("ocaml-cohttp-lwt" ,ocaml-cohttp-lwt)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-lwt" ,ocaml-lwt)
+ ("ocaml-lwt-ssl" ,ocaml-lwt-ssl)))
+ (native-inputs `(("ocaml-ounit" ,ocaml-ounit)))
+ (synopsis "OCaml HTTP implementation for Unix and Windows using Lwt")
+ (description "An OCaml implementation of an HTTP client and server for
+Unix and Windows using the Lwt concurrency library.")))
+
(define-public ocaml-magic-mime
(package
(name "ocaml-magic-mime")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 00/29] gnu: Add ocaml-cohttp-lwt-unix.
2021-08-04 7:10 [bug#49867] [PATCH 00/29] gnu: Add ocaml-cohttp-lwt-unix pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
@ 2021-08-05 15:38 ` Xinglu Chen
2021-08-09 6:55 ` pukkamustard
2021-11-15 13:23 ` bug#49867: " pukkamustard
2 siblings, 1 reply; 99+ messages in thread
From: Xinglu Chen @ 2021-08-05 15:38 UTC (permalink / raw)
To: pukkamustard, 49867; +Cc: pukkamustard
[-- Attachment #1.1: Type: text/plain, Size: 789 bytes --]
On Wed, Aug 04 2021, pukkamustard wrote:
> Hi,
>
> These patches add ocaml-cohttp-lwt-unix - an OCaml HTTP library - and dependencies.
>
> Some known rough edges:
>
> - ocaml-eqaf: Tests are disabled for now as I am not able to build
> ocaml-afl-persistent which is a dependency for ocaml-crowbar which is
> required to run ocaml-eqaf tests. There is ongoing work to port
> ocaml-afl-persistent to dune
> (https://github.com/stedolan/ocaml-afl-persistent/pull/7) with that it
> should be much easier to build it and enable tests for ocaml-eqaf.
I managed to package ‘ocaml-afl-persistent’ with the attached patch,
but it doesn’t respect the ‘--without-tests’ transformation since the
tests are run as part of the build phase.
Thanks for working on this!
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: 0001-gnu-Add-ocaml-afl-persistent.patch --]
[-- Type: text/x-patch, Size: 2203 bytes --]
From 49918dee551c9fa9acddfcf1162007d26f0bdff6 Mon Sep 17 00:00:00 2001
Message-Id: <49918dee551c9fa9acddfcf1162007d26f0bdff6.1628177652.git.public@yoctocell.xyz>
From: Xinglu Chen <public@yoctocell.xyz>
Date: Thu, 5 Aug 2021 17:33:51 +0200
Subject: [PATCH] gnu: Add ocaml-afl-persistent.
* gnu/packages/ocaml.scm (ocaml-afl-persistent): New variable.
---
gnu/packages/ocaml.scm | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index bb42003de2..321908f8ba 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7183,6 +7183,39 @@ It makes it possible to run pure OCaml programs in JavaScript environment like
browsers and Node.js.")
(license license:lgpl2.1+)))
+(define-public ocaml-afl-persistent
+ (package
+ (name "ocaml-afl-persistent")
+ (version "1.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/stedolan/ocaml-afl-persistent")
+ (commit (string-append "v" version))))
+ (sha256
+ (base32
+ "06yyds2vcwlfr2nd3gvyrazlijjcrd1abnvkfpkaadgwdw3qam1i"))))
+ (build-system ocaml-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (replace 'build
+ (lambda _
+ (invoke "./build.sh")))
+ ;; XXX: The tests are already run in the build.sh script.
+ (delete 'check))))
+ (native-inputs
+ `(("opam" ,opam)))
+ (home-page "https://github.com/stedolan/ocaml-afl-persistent")
+ (synopsis "Use afl-fuzz in persistent mode")
+ (description
+ "afl-fuzz normally works by repeatedly forking the program being tested.
+Using this package, you can run afl-fuzz in ``persistent mode'', which avoids
+repeated forking and is much faster.")
+ (license license:expat)))
+
(define-public ocaml-bibtex2html
(package
(name "ocaml-bibtex2html")
base-commit: ead6cc03c66ed31f0ab7300fab11cef3a1e459f0
prerequisite-patch-id: 13039007a822f956c10ede72109a6a74e5bb2b08
--
2.32.0
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 13/29] gnu: Add ocaml-mirage-crypto-rng.
2021-08-04 7:15 ` [bug#49867] [PATCH 13/29] gnu: Add ocaml-mirage-crypto-rng pukkamustard
@ 2021-08-05 15:42 ` Xinglu Chen
2021-08-08 11:04 ` pukkamustard
0 siblings, 1 reply; 99+ messages in thread
From: Xinglu Chen @ 2021-08-05 15:42 UTC (permalink / raw)
To: pukkamustard, 49867; +Cc: pukkamustard
[-- Attachment #1: Type: text/plain, Size: 1450 bytes --]
On Wed, Aug 04 2021, pukkamustard wrote:
> * gnu/packages/ocaml.scm (ocaml-mirage-crypto-rng): New variable.
> ---
> gnu/packages/ocaml.scm | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index f7956fe216..6af9bedc65 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -7442,6 +7442,26 @@ between various time units.")
> as (C-like structures using @code{ocaml-cstruct}) to OCaml native numbers.")
> (license license:isc)))
>
> +(define-public ocaml-mirage-crypto-rng
> + (package
> + (inherit ocaml-mirage-crypto)
> + (name "ocaml-mirage-crypto-rng")
> + (arguments `(#:package "mirage-crypto-rng"
> + #:test-target "."))
> + (propagated-inputs
> + `(("ocaml-duration" ,ocaml-duration)
> + ("ocaml-cstruct" ,ocaml-cstruct)
> + ("ocaml-logs" ,ocaml-logs)
> + ("ocaml-mirage-crypto" ,ocaml-mirage-crypto)
> + ("ocaml-mtime" ,ocaml-mtime)
> + ("ocaml-lwt" ,ocaml-lwt)))
> + (native-inputs
> + `(("ocaml-ounit" ,ocaml-ounit)
> + ("ocaml-randomconv" ,ocaml-randomconv)))
> + (synopsis "OCaml library providing a cryptographically secure pseudorandom number generator")
Keep lines at ~80 characters. To keep the synopsis slighty shorter,
maybe
"Cryptographically secure pseudo-random number generator in OCaml"
WDYT?
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 15/29] gnu: Add ocaml-ptime.
2021-08-04 7:15 ` [bug#49867] [PATCH 15/29] gnu: Add ocaml-ptime pukkamustard
@ 2021-08-05 15:48 ` Xinglu Chen
2021-08-08 11:13 ` pukkamustard
0 siblings, 1 reply; 99+ messages in thread
From: Xinglu Chen @ 2021-08-05 15:48 UTC (permalink / raw)
To: pukkamustard, 49867; +Cc: pukkamustard
[-- Attachment #1: Type: text/plain, Size: 2717 bytes --]
On Wed, Aug 04 2021, pukkamustard wrote:
> * gnu/packages/ocaml.scm (ocaml-ptime): New variable.
> ---
> gnu/packages/ocaml.scm | 42 ++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 42 insertions(+)
>
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index a34c844059..ab385eb26f 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -7487,6 +7487,48 @@ number generator interface, and implementations.")))
> (description "@code{ocaml-mirage-crypto-pk} provides public-key
> cryptography (RSA, DSA, DH) for OCaml.")))
>
> +(define-public ocaml-ptime
> + (package
> + (name "ocaml-ptime")
> + (version "0.8.5")
> + (source
> + (origin
> + (method url-fetch)
> + (uri "https://erratique.ch/software/ptime/releases/ptime-0.8.5.tbz")
Use (string-append "https://erratique.ch..." version ".tbz") to make it
easier to update the package in the future.
> + (sha256
> + (base32
> + "1fxq57xy1ajzfdnvv5zfm7ap2nf49znw5f9gbi4kb9vds942ij27"))))
> + (build-system ocaml-build-system)
> + (arguments
> + `(#:tests? #f
What’s the reason for disabling tests?
> + #:build-flags (list "build" "--with-js_of_ocaml" "false")
> + #:phases
> + (modify-phases %standard-phases
> + (delete 'configure))))
> + (propagated-inputs
> + `(("ocaml-result" ,ocaml-result)))
> + (native-inputs
> + `(("ocamlbuild" ,ocamlbuild)
> + ("ocaml-topkg" ,ocaml-topkg)
> + ("opam" ,opam)))
> + (home-page "https://erratique.ch/software/ptime")
> + (synopsis "POSIX time for OCaml")
> + (description "Ptime has platform independent POSIX time support in pure
> +OCaml. It provides a type to represent a well-defined range of POSIX
^
Double spacing. :-)
> +timestamps with picosecond precision, conversion with date-time values,
> +conversion with RFC 3339 timestamps and pretty printing to a human-readable,
> +locale-independent representation.
> +
> +The additional Ptime_clock library provides access to a system POSIX clock and
> +to the system's current time zone offset.
> +
> +Ptime is not a calendar library.
Not really sure if this sentence is necessary. I think the previous
sentences has hade it pretty clear that it a time and date library.
> +Ptime depends on the @code{ocaml-result} compatibility package. Ptime_clock
> +depends on your system library. Ptime_clock's optional JavaScript support
> +depends on @code{js-of-ocaml}.")
This two sentences are probably also not necessary for users of the
package. It should be the packager’s job to specify the dependencies. :-)
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 21/29] gnu: Add ocaml-pbkdf.
2021-08-04 7:15 ` [bug#49867] [PATCH 21/29] gnu: Add ocaml-pbkdf pukkamustard
@ 2021-08-05 15:55 ` Xinglu Chen
2021-08-08 11:21 ` pukkamustard
0 siblings, 1 reply; 99+ messages in thread
From: Xinglu Chen @ 2021-08-05 15:55 UTC (permalink / raw)
To: pukkamustard, 49867; +Cc: pukkamustard
[-- Attachment #1: Type: text/plain, Size: 1536 bytes --]
On Wed, Aug 04 2021, pukkamustard wrote:
> * gnu/packages/ocaml.scm (ocaml-pbkdf): New variable.
> ---
> gnu/packages/ocaml.scm | 26 ++++++++++++++++++++++++++
> 1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index e520151adf..6effe1ff12 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -7684,6 +7684,32 @@ Algebraic Data Type")
> to create a type-safe heterogenous maps.")
> (license license:isc)))
>
> +(define-public ocaml-pbkdf
> + (package
> + (name "ocaml-pbkdf")
> + (version "1.1.0")
> + (home-page "https://github.com/abeaumont/ocaml-pbkdf")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url home-page)
> + (commit version)))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "0scq1i7hiy8dgjdfrcaca3k7wzys35k1g2cdg7v4kfdqr6q1scb3"))))
> + (build-system dune-build-system)
> + (propagated-inputs
> + `(("ocaml-mirage-crypto" ,ocaml-mirage-crypto)))
> + (native-inputs
> + `(("ocaml-alcotest" ,ocaml-alcotest)))
> + (synopsis "OCaml library for password based key derivation functions
> +(PBKDF) from PKCS#5")
> + (description "An OCaml implementation of PBKDF 1 and 2 as defined by
> +PKCS#5 using @code{ocaml-mirage-crypto}.")
The description should contain full sentences, maybe
"This package provides an OCaml implementation of …"
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 22/29] gnu: Add ocaml-cstruct-unix.
2021-08-04 7:15 ` [bug#49867] [PATCH 22/29] gnu: Add ocaml-cstruct-unix pukkamustard
@ 2021-08-05 16:02 ` Xinglu Chen
2021-08-08 11:24 ` pukkamustard
0 siblings, 1 reply; 99+ messages in thread
From: Xinglu Chen @ 2021-08-05 16:02 UTC (permalink / raw)
To: pukkamustard, 49867; +Cc: pukkamustard
[-- Attachment #1: Type: text/plain, Size: 1418 bytes --]
On Wed, Aug 04 2021, pukkamustard wrote:
> * gnu/packages/ocaml.scm (ocaml-cstruct-unix): New variable.
> ---
> gnu/packages/ocaml.scm | 16 ++++++++++++++++
> 1 file changed, 16 insertions(+)
>
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index 6effe1ff12..a9a4c8a684 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -3412,6 +3412,22 @@ to access C-like structures directly from OCaml. It supports both reading and
> writing to these structures, and they are accessed via the Bigarray module.")
> (license license:isc)))
>
> +(define-public ocaml-cstruct-unix
> + (package
> + (inherit ocaml-cstruct)
> + (name "ocaml-cstruct-unix")
> + (build-system dune-build-system)
> + (arguments
> + `(#:package "cstruct-unix"
> + #:test-target "."))
> + (propagated-inputs
> + `(("ocaml-cstruct" ,ocaml-cstruct)))
> + (synopsis "Unix variation of the @code{ocaml-cstruct} library for accessing C-like structures directly from OCaml")
Keep lines at around ~80 characters (applies to the description too).
Maybe drop the second half of the synopsis, so
"Unix variation of the @code{ocaml-cstruct} library"
The desciption already mentions “access C-like structures directly from
OCaml.”; the synopsis of ‘ocaml-cstruct’ also mentions “Access C
structures via a camlp4 extension”.
WDYT?
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 23/29] gnu: Add ocaml-x509.
2021-08-04 7:15 ` [bug#49867] [PATCH 23/29] gnu: Add ocaml-x509 pukkamustard
@ 2021-08-05 16:04 ` Xinglu Chen
2021-08-08 11:29 ` pukkamustard
0 siblings, 1 reply; 99+ messages in thread
From: Xinglu Chen @ 2021-08-05 16:04 UTC (permalink / raw)
To: pukkamustard, 49867; +Cc: pukkamustard
[-- Attachment #1: Type: text/plain, Size: 2731 bytes --]
On Wed, Aug 04 2021, pukkamustard wrote:
> * gnu/packages/ocaml.scm (ocaml-x509): New variable.
> ---
> gnu/packages/ocaml.scm | 46 ++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 46 insertions(+)
>
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index a9a4c8a684..3ce07057f5 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -7726,6 +7726,52 @@ to create a type-safe heterogenous maps.")
> PKCS#5 using @code{ocaml-mirage-crypto}.")
> (license license:bsd-2)))
>
> +(define-public ocaml-x509
> + (package
> + (name "ocaml-x509")
> + (version "0.14.0")
> + (home-page "https://github.com/mirleft/ocaml-x509")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url home-page)
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "0b51vzyxxkhwgx12dg55clb1lb971cxlmsk4wlxzs5h115j5hcy7"))))
> + (build-system dune-build-system)
> + (arguments `(#:test-target "."))
> + (propagated-inputs
> + `(("ocaml-cstruct" ,ocaml-cstruct)
> + ("ocaml-asn1-combinators" ,ocaml-asn1-combinators)
> + ("ocaml-ptime" ,ocaml-ptime)
> + ("ocaml-base64" ,ocaml-base64)
> + ("ocaml-mirage-crypto" ,ocaml-mirage-crypto)
> + ("ocaml-mirage-crypto-pk" ,ocaml-mirage-crypto-pk)
> + ("ocaml-mirage-crypto-ec" ,ocaml-mirage-crypto-ec)
> + ("ocaml-mirage-crypto-rng" ,ocaml-mirage-crypto-rng)
> + ("ocaml-rresult" ,ocaml-rresult)
> + ("ocaml-fmt" ,ocaml-fmt)
> + ("ocaml-gmap" ,ocaml-gmap)
> + ("ocaml-domain-name" ,ocaml-domain-name)
> + ("ocaml-logs" ,ocaml-logs)
> + ("ocaml-pbkdf" ,ocaml-pbkdf)))
> + (native-inputs
> + `(("ocaml-alcotest" ,ocaml-alcotest)
> + ("ocaml-cstruct-unix" ,ocaml-cstruct-unix)))
> + (synopsis "Public Key Infrastructure (RFC 5280, PKCS) purely in OCaml")
> + (description "X.509 is a public key infrastructure used mostly on the
> +Internet. It consists of certificates which include public keys and
> +identifiers, signed by an authority. Authorities must be exchanged over a
> +second channel to establish the trust relationship. This OCaml library
> +implements most parts of RFC5280 and RFC6125. The Public Key Cryptography
> +Standards (PKCS) defines encoding and decoding (in ASN.1 DER and PEM format),
> +which is also implemented by this library - namely PKCS 1, PKCS 5, PKCS 7,
Nit: Use ‘---’ instead of just ‘-’, see the fifth bullet point in “2.1
General Syntactic Conventions” in the Texinfo manual.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 25/29] gnu: Add ocaml-lwt-log.
2021-08-04 7:15 ` [bug#49867] [PATCH 25/29] gnu: Add ocaml-lwt-log pukkamustard
@ 2021-08-05 16:18 ` Xinglu Chen
2021-08-08 13:01 ` pukkamustard
0 siblings, 1 reply; 99+ messages in thread
From: Xinglu Chen @ 2021-08-05 16:18 UTC (permalink / raw)
To: pukkamustard, 49867; +Cc: pukkamustard
[-- Attachment #1: Type: text/plain, Size: 1828 bytes --]
On Wed, Aug 04 2021, pukkamustard wrote:
> * gnu/packages/ocaml.scm (ocaml-lwt-log): New variable.
> ---
> gnu/packages/ocaml.scm | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index e832adc069..d475b75287 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -7404,6 +7404,30 @@ establishing TCP and SSL/TLS connections from @code{ocaml-conduit} using
> @code{ocaml-lwt}.")
> (license license:isc)))
>
> +(define-public ocaml-lwt-log
> + (package
> + (name "ocaml-lwt-log")
> + (version "1.1.1")
> + (home-page "https://github.com/ocsigen/lwt_log")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url home-page)
> + (commit version)))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "1n12i1rmn9cjn6p8yr6qn5dwbrwvym7ckr7bla04a1xnq8qlcyj7"))))
> + (build-system dune-build-system)
> + (arguments `(#:test-target "."))
> + (propagated-inputs `(("ocaml-lwt" ,ocaml-lwt)))
> + (properties `((upstream-name . "lwt_log")))
> + (synopsis "OCaml/Lwt logging library (deprecated)")
> + (description "This OCaml library provides helpers for logging is
> +deprecated for @code{ocaml-logs}.")
This sentence is a bit weird, maybe
This OCaml library provides helpers for logging; it has been
deprecated in favor of @code{ocaml-logs}.
> + (license license:lgpl2.1)))
COPYING[1] say lgpgl2.1+, and “with the additional exemption that
compiling, linking, and/or using OpenSSL is allowed”. You can probably
put a comment that mentions the exemption.
[1]: <https://github.com/ocsigen/lwt_log/blob/master/COPYING>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 26/29] gnu: Add ocaml-lwt-ssl.
2021-08-04 7:15 ` [bug#49867] [PATCH 26/29] gnu: Add ocaml-lwt-ssl pukkamustard
@ 2021-08-05 16:20 ` Xinglu Chen
2021-08-08 13:04 ` pukkamustard
0 siblings, 1 reply; 99+ messages in thread
From: Xinglu Chen @ 2021-08-05 16:20 UTC (permalink / raw)
To: pukkamustard, 49867; +Cc: pukkamustard
[-- Attachment #1: Type: text/plain, Size: 1546 bytes --]
On Wed, Aug 04 2021, pukkamustard wrote:
> * gnu/packages/ocaml.scm (ocaml-lwt-ssl): New variable.
> ---
> gnu/packages/ocaml.scm | 26 ++++++++++++++++++++++++++
> 1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index d475b75287..cadd22cb9c 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -7428,6 +7428,32 @@ establishing TCP and SSL/TLS connections from @code{ocaml-conduit} using
> deprecated for @code{ocaml-logs}.")
> (license license:lgpl2.1)))
>
> +(define-public ocaml-lwt-ssl
> + (package
> + (name "ocaml-lwt-ssl")
> + (version "1.1.3")
> + (home-page "https://github.com/ocsigen/lwt_ssl")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url home-page)
> + (commit version)))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "0v417ch5zn0yknj156awa5mrq3mal08pbrvsyribbn63ix6f9y3p"))))
> + (build-system dune-build-system)
> + (arguments `(#:test-target "."))
> + (propagated-inputs
> + `(("ocaml-lwt" ,ocaml-lwt)
> + ("ocaml-ssl" ,ocaml-ssl)))
> + (properties `((upstream-name . "lwt_ssl")))
> + (synopsis "OpenSSL binding for OCaml with concurrent I/O")
> + (description "An Lwt-enabled wrapper around @code{ocaml-ssl}, that
> +performs I/O concurrently.")
Write a complete sentence, maybe
This OCaml library provides an Lwt-enabled…
?
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 27/29] gnu: Add ocaml-conduit-lwt-unix.
2021-08-04 7:15 ` [bug#49867] [PATCH 27/29] gnu: Add ocaml-conduit-lwt-unix pukkamustard
@ 2021-08-05 16:20 ` Xinglu Chen
2021-08-08 13:06 ` pukkamustard
0 siblings, 1 reply; 99+ messages in thread
From: Xinglu Chen @ 2021-08-05 16:20 UTC (permalink / raw)
To: pukkamustard, 49867; +Cc: pukkamustard
[-- Attachment #1: Type: text/plain, Size: 1433 bytes --]
On Wed, Aug 04 2021, pukkamustard wrote:
> * gnu/packages/ocaml.scm (ocaml-conduit-lwt-unix): New variable.
> ---
> gnu/packages/ocaml.scm | 25 +++++++++++++++++++++++++
> 1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index cadd22cb9c..8904f2df19 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -7454,6 +7454,31 @@ deprecated for @code{ocaml-logs}.")
> performs I/O concurrently.")
> (license license:lgpl2.1+))) ; with linking exception
>
> +(define-public ocaml-conduit-lwt-unix
> + (package
> + (inherit ocaml-conduit)
> + (name "ocaml-conduit-lwt-unix")
> + (arguments `(#:package "conduit-lwt-unix"
> + #:test-target "."))
> + (propagated-inputs
> + `(("ocaml-logs" ,ocaml-logs)
> + ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
> + ("ocaml-conduit-lwt" ,ocaml-conduit-lwt)
> + ("ocaml-lwt" ,ocaml-lwt)
> + ("ocaml-uri" ,ocaml-uri)
> + ("ocaml-ipaddr" ,ocaml-ipaddr)
> + ("ocaml-ipaddr-sexp" ,ocaml-ipaddr-sexp)
> + ("ocaml-ca-certs" ,ocaml-ca-certs)))
> + (native-inputs
> + `(("ocaml-lwt-log" ,ocaml-lwt-log)
> + ("ocaml-ssl" ,ocaml-ssl)
> + ("ocaml-lwt-ssl" ,ocaml-lwt-ssl)))
> + (synopsis "OCaml library for establishing TCP and SSL/TLC connections using Lwt_unix")
Keep lines at ~80 characters. :-)
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 28/29] gnu: Add ocaml-magic-mime.
2021-08-04 7:15 ` [bug#49867] [PATCH 28/29] gnu: Add ocaml-magic-mime pukkamustard
@ 2021-08-05 16:22 ` Xinglu Chen
2021-08-08 13:07 ` pukkamustard
0 siblings, 1 reply; 99+ messages in thread
From: Xinglu Chen @ 2021-08-05 16:22 UTC (permalink / raw)
To: pukkamustard, 49867; +Cc: pukkamustard
[-- Attachment #1: Type: text/plain, Size: 1611 bytes --]
On Wed, Aug 04 2021, pukkamustard wrote:
> * gnu/packages/ocaml.scm (ocaml-magic-mime): New variable.
> ---
> gnu/packages/ocaml.scm | 25 +++++++++++++++++++++++++
> 1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index 8904f2df19..d9e84cd7ad 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -7248,6 +7248,31 @@ JavaScript backend, or @code{ocaml-cohttp-mirage} for the MirageOS unikernel
> version of the library. All of these implementations share the same IO logic
> from this module.")))
>
> +(define-public ocaml-magic-mime
> + (package
> + (name "ocaml-magic-mime")
> + (version "1.2.0")
> + (home-page "https://github.com/mirage/ocaml-magic-mime")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url home-page)
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "1pmwxw5n0lxbp7b9z1wplkn0cfl816cbacx3cdj2912n5zyjpjnk"))))
> + (build-system dune-build-system)
> + (arguments `(#:test-target "."))
> + (synopsis "OCaml library for mapping filenames to common MIME types")
> + (description "This library contains a database of MIME types that maps
> +filename extensions into MIME types suitable for use in many Internet
> +protocols such as HTTP or e-mail. It is generated from the `mime.types` file
^^^^^^^^^^
Nit: @file{mime.types}
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 29/29] gnu: Add ocaml-cohttp-lwt-unix
2021-08-04 7:15 ` [bug#49867] [PATCH 29/29] gnu: Add ocaml-cohttp-lwt-unix pukkamustard
@ 2021-08-05 16:25 ` Xinglu Chen
2021-08-08 13:14 ` pukkamustard
0 siblings, 1 reply; 99+ messages in thread
From: Xinglu Chen @ 2021-08-05 16:25 UTC (permalink / raw)
To: pukkamustard, 49867; +Cc: pukkamustard
[-- Attachment #1: Type: text/plain, Size: 1849 bytes --]
On Wed, Aug 04 2021, pukkamustard wrote:
> * gnu/packages/ocaml.scm (ocaml-cohttp-lwt-unix): New variable.
> ---
> gnu/packages/ocaml.scm | 23 +++++++++++++++++++++++
> 1 file changed, 23 insertions(+)
>
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index d9e84cd7ad..db195996c9 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -7248,6 +7248,29 @@ JavaScript backend, or @code{ocaml-cohttp-mirage} for the MirageOS unikernel
> version of the library. All of these implementations share the same IO logic
> from this module.")))
>
> +(define-public ocaml-cohttp-lwt-unix
> + (package
> + (inherit ocaml-cohttp)
> + (name "ocaml-cohttp-lwt-unix")
> + (arguments `(#:package "cohttp-lwt-unix"
> + ;; tests require network
> + #:tests? #f))
> + (propagated-inputs
> + `(("ocaml-conduit-lwt" ,ocaml-conduit-lwt)
> + ("ocaml-conduit-lwt-unix" ,ocaml-conduit-lwt-unix)
> + ("ocaml-cmdliner" ,ocaml-cmdliner)
> + ("ocaml-magic-mime" ,ocaml-magic-mime)
> + ("ocaml-logs" ,ocaml-logs)
> + ("ocaml-fmt" ,ocaml-fmt)
> + ("ocaml-cohttp-lwt" ,ocaml-cohttp-lwt)
> + ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
> + ("ocaml-lwt" ,ocaml-lwt)
> + ("ocaml-lwt-ssl" ,ocaml-lwt-ssl)))
> + (native-inputs `(("ocaml-ounit" ,ocaml-ounit)))
> + (synopsis "OCaml HTTP implementation for Unix and Windows using Lwt")
> + (description "An OCaml implementation of an HTTP client and server for
> +Unix and Windows using the Lwt concurrency library.")))
Full sentence, maybe
This OCaml library provides an implementation of an HTTP…
Also, I don’t think Windows support should be mentioned since it’s
not supported by Guix, and it’s non-free software. :-)
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 13/29] gnu: Add ocaml-mirage-crypto-rng.
2021-08-05 15:42 ` Xinglu Chen
@ 2021-08-08 11:04 ` pukkamustard
0 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-08 11:04 UTC (permalink / raw)
To: Xinglu Chen; +Cc: 49867
Xinglu Chen <public@yoctocell.xyz> writes:
> Keep lines at ~80 characters. To keep the synopsis slighty
> shorter,
> maybe
>
> "Cryptographically secure pseudo-random number generator in
> OCaml"
>
> WDYT?
Sounds good! Fixed in V2.
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 15/29] gnu: Add ocaml-ptime.
2021-08-05 15:48 ` Xinglu Chen
@ 2021-08-08 11:13 ` pukkamustard
0 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-08 11:13 UTC (permalink / raw)
To: Xinglu Chen; +Cc: 49867
Xinglu Chen <public@yoctocell.xyz> writes:
> Use (string-append "https://erratique.ch..." version ".tbz") to
> make it
> easier to update the package in the future.
Done.
>> + (sha256
>> + (base32
>> +
>> "1fxq57xy1ajzfdnvv5zfm7ap2nf49znw5f9gbi4kb9vds942ij27"))))
>> + (build-system ocaml-build-system)
>> + (arguments
>> + `(#:tests? #f
>
> What’s the reason for disabling tests?
>
Laziness, I guess.. :)
Enabled in V2.
>> + (description "Ptime has platform independent POSIX time
>> support in pure
>> +OCaml. It provides a type to represent a well-defined range of
>> POSIX
> ^
> Double spacing. :-)
>
Thanks!
>> +Ptime is not a calendar library.
>
> Not really sure if this sentence is necessary. I think the
> previous
> sentences has hade it pretty clear that it a time and date
> library.
>
Agree, removed sentence.
>> +Ptime depends on the @code{ocaml-result} compatibility
>> package. Ptime_clock
>> +depends on your system library. Ptime_clock's optional
>> JavaScript support
>> +depends on @code{js-of-ocaml}.")
>
> This two sentences are probably also not necessary for users of
> the
> package. It should be the packager’s job to specify the
> dependencies. :-)
Also agree. Removed sentences.
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 21/29] gnu: Add ocaml-pbkdf.
2021-08-05 15:55 ` Xinglu Chen
@ 2021-08-08 11:21 ` pukkamustard
2021-08-09 9:53 ` Xinglu Chen
0 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-08 11:21 UTC (permalink / raw)
To: Xinglu Chen; +Cc: 49867
Xinglu Chen <public@yoctocell.xyz> writes:
>> + (description "An OCaml implementation of PBKDF 1 and 2 as
>> defined by
>> +PKCS#5 using @code{ocaml-mirage-crypto}.")
>
> The description should contain full sentences, maybe
>
> "This package provides an OCaml implementation of …"
Changed to: "This package provides an OCaml implementation of
PBKDF 1 and 2 as defined by PKCS#5 using
@code{ocaml-mirage-crypto}."
Note: A version 1.2.0 was released recently. However, it requires
CStruct 6.0.0. I will submit a patch to update ocaml-cstruct and
then ocaml-pbkdf can be updated to 1.2.0.
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 22/29] gnu: Add ocaml-cstruct-unix.
2021-08-05 16:02 ` Xinglu Chen
@ 2021-08-08 11:24 ` pukkamustard
0 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-08 11:24 UTC (permalink / raw)
To: Xinglu Chen; +Cc: 49867
Xinglu Chen <public@yoctocell.xyz> writes:
>> + (synopsis "Unix variation of the @code{ocaml-cstruct}
>> library for accessing C-like structures directly from OCaml")
>
> Keep lines at around ~80 characters (applies to the description
> too).
> Maybe drop the second half of the synopsis, so
>
> "Unix variation of the @code{ocaml-cstruct} library"
>
> The desciption already mentions “access C-like structures
> directly from
> OCaml.”; the synopsis of ‘ocaml-cstruct’ also mentions “Access C
> structures via a camlp4 extension”.
>
> WDYT?
I agree. Fixed in V2.
Also fixed a missing double-space in the description.
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 23/29] gnu: Add ocaml-x509.
2021-08-05 16:04 ` Xinglu Chen
@ 2021-08-08 11:29 ` pukkamustard
0 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-08 11:29 UTC (permalink / raw)
To: Xinglu Chen; +Cc: 49867
Xinglu Chen <public@yoctocell.xyz> writes:
>> + (description "X.509 is a public key infrastructure used
>> mostly on the
>> +Internet. It consists of certificates which include public
>> keys and
>> +identifiers, signed by an authority. Authorities must be
>> exchanged over a
>> +second channel to establish the trust relationship. This OCaml
>> library
>> +implements most parts of RFC5280 and RFC6125. The Public Key
>> Cryptography
>> +Standards (PKCS) defines encoding and decoding (in ASN.1 DER
>> and PEM format),
>> +which is also implemented by this library - namely PKCS 1,
>> PKCS 5, PKCS 7,
>
> Nit: Use ‘---’ instead of just ‘-’, see the fifth bullet point
> in “2.1
> General Syntactic Conventions” in the Texinfo manual.
Thanks! Done in V2.
Note: This has also been updated to 0.14.1 which requires Cstruct
6.0.0.
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 24/29] gnu: Add ocaml-ca-certs.
[not found] ` <87fsvnkgzk.fsf@yoctocell.xyz>
@ 2021-08-08 12:36 ` pukkamustard
2021-08-09 9:30 ` Xinglu Chen
0 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-08 12:36 UTC (permalink / raw)
To: Xinglu Chen; +Cc: 49867
Xinglu Chen <public@yoctocell.xyz> writes:
>> + ;; Tests are failing as they require
>> certificates to be in /etc/ssl/certs
>> + #:tests? #f))
>
> The same issue has been mentioned by NixOS people on their bug
> tracker[1], they solved[2] it by reading the NIX_SSL_CERT_FILE
> environment variable, which automatically gets set in the build
> environment if the ‘cacert’ package is specified as an input. I
> don’t
> know if Guix does something similar.
>
> [1]: <https://github.com/mirage/ca-certs/issues/16>
> [2]: <https://github.com/mirage/ca-certs/pull/17>
>
Thanks for the pointers.
Inspired by the package definition for curl, I tried setting
NIX_SSL_CERT_FILE with native-search-paths:
```
(native-search-paths
(list
(search-path-specification
(variable "NIX_SSL_CERT_FILE")
(file-type 'regular)
(separator #f) ;single entry
(files '("/etc/ssl/certs/ca-certificates.crt")))))
```
and adding `nss-certs` to the native-inputs.
However, this does not work. Some observations/questions:
- The NIX_SSL_CERT_FILE does not appear in the
`environment-variables` file when running `guix build -K`. I
would have expected it to be set there.
- `nss-certs` does not provide the `ca-certificates.crt` file. It
is built when creating a profile with the
`ca-certificate-bundle` hook. Is this run when creating a build
environment?
I seem to be not understanding a lot of things about the build
environment ... Pointers very welcome!
>> + (propagated-inputs
>> + `(("ocaml-astring" ,ocaml-astring)
>> + ("ocaml-bos" ,ocaml-bos)
>> + ("ocaml-fpath" ,ocaml-fpath)
>> + ("ocaml-rresult" ,ocaml-rresult)
>> + ("ocaml-ptime" ,ocaml-ptime)
>> + ("ocaml-logs" ,ocaml-logs)
>> + ("ocaml-mirage-crypto" ,ocaml-mirage-crypto)
>> + ("ocaml-x509" ,ocaml-x509)))
>> + (native-inputs
>> + `(("ocaml-alcotest" ,ocaml-alcotest)))
>> + (synopsis
>> + "Detect root CA certificates from the operating system")
>> + (description
>> + "TLS requires a set of root anchors (Certificate
>> Authorities) to
>> +authenticate servers. This library exposes this list so that
>> it can be
> ^
> Double spacing.
Fixed in V2.
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 25/29] gnu: Add ocaml-lwt-log.
2021-08-05 16:18 ` Xinglu Chen
@ 2021-08-08 13:01 ` pukkamustard
0 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-08 13:01 UTC (permalink / raw)
To: Xinglu Chen; +Cc: 49867
Xinglu Chen <public@yoctocell.xyz> writes:
> This sentence is a bit weird, maybe
>
> This OCaml library provides helpers for logging; it has been
> deprecated in favor of @code{ocaml-logs}.
>
>> + (license license:lgpl2.1)))
>
> COPYING[1] say lgpgl2.1+, and “with the additional exemption
> that
> compiling, linking, and/or using OpenSSL is allowed”. You can
> probably
> put a comment that mentions the exemption.
>
> [1]: <https://github.com/ocsigen/lwt_log/blob/master/COPYING>
While fixing the package definition, I notice that ocaml-lwt-log
already existed. V2 removes my patch for adding ocaml-lwt-log.
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 26/29] gnu: Add ocaml-lwt-ssl.
2021-08-05 16:20 ` Xinglu Chen
@ 2021-08-08 13:04 ` pukkamustard
0 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-08 13:04 UTC (permalink / raw)
To: Xinglu Chen; +Cc: 49867
Xinglu Chen <public@yoctocell.xyz> writes:
>> + (description "An Lwt-enabled wrapper around
>> @code{ocaml-ssl}, that
>> +performs I/O concurrently.")
>
> Write a complete sentence, maybe
>
> This OCaml library provides an Lwt-enabled…
>
> ?
Perfect. Using description as suggested in V2.
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 27/29] gnu: Add ocaml-conduit-lwt-unix.
2021-08-05 16:20 ` Xinglu Chen
@ 2021-08-08 13:06 ` pukkamustard
0 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-08 13:06 UTC (permalink / raw)
To: Xinglu Chen; +Cc: 49867
Xinglu Chen <public@yoctocell.xyz> writes:
>> + (synopsis "OCaml library for establishing TCP and SSL/TLC
>> connections using Lwt_unix")
>
> Keep lines at ~80 characters. :-)
Thanks! Fixed in V2.
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 28/29] gnu: Add ocaml-magic-mime.
2021-08-05 16:22 ` Xinglu Chen
@ 2021-08-08 13:07 ` pukkamustard
0 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-08 13:07 UTC (permalink / raw)
To: Xinglu Chen; +Cc: 49867
Xinglu Chen <public@yoctocell.xyz> writes:
>> + (description "This library contains a database of MIME
>> types that maps
>> +filename extensions into MIME types suitable for use in many
>> Internet
>> +protocols such as HTTP or e-mail. It is generated from the
>> `mime.types` file
> ^^^^^^^^^^
> Nit: @file{mime.types}
Fixed in V2.
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 29/29] gnu: Add ocaml-cohttp-lwt-unix
2021-08-05 16:25 ` Xinglu Chen
@ 2021-08-08 13:14 ` pukkamustard
0 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-08 13:14 UTC (permalink / raw)
To: Xinglu Chen; +Cc: 49867
Xinglu Chen <public@yoctocell.xyz> writes:
> Full sentence, maybe
>
> This OCaml library provides an implementation of an HTTP…
>
> Also, I don’t think Windows support should be mentioned since
> it’s
> not supported by Guix, and it’s non-free software. :-)
:) done and done (in V2).
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 00/29] gnu: Add ocaml-cohttp-lwt-unix.
2021-08-05 15:38 ` [bug#49867] [PATCH 00/29] " Xinglu Chen
@ 2021-08-09 6:55 ` pukkamustard
2021-08-09 6:59 ` [bug#49867] [PATCH 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (2 more replies)
0 siblings, 3 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 6:55 UTC (permalink / raw)
To: Xinglu Chen; +Cc: 49867
Xinglu Chen <public@yoctocell.xyz> writes:
> I managed to package ‘ocaml-afl-persistent’ with the attached
> patch,
> but it doesn’t respect the ‘--without-tests’ transformation
> since the
> tests are run as part of the build phase.
Fantastic! With your patch I've added ocaml-crowbar and enabled
tests for ocaml-eqaf in V2.
Tests for ocaml-crowbar are currently disabled as they require
ocaml-xmldiff which requires OCaml 4.12.0.
> Thanks for working on this!
Thank you for your comments!
V2 follows.
-pukkamustard
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 01/31] gnu: Add ocaml-cohttp-lwt.
2021-08-09 6:55 ` pukkamustard
@ 2021-08-09 6:59 ` pukkamustard
2021-08-09 6:59 ` [bug#49867] [PATCH 02/31] gnu: Add ocaml-domain-name pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
2021-08-09 9:55 ` [bug#49867] [PATCH 00/29] " Xinglu Chen
2 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-09 6:59 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-cohttp-lwt): New variable.
---
gnu/packages/ocaml.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 112751ddec..6518f21f5e 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7323,6 +7323,30 @@ HTTP parser, and implementations using various asynchronous programming
libraries.")
(license license:isc)))
+(define-public ocaml-cohttp-lwt
+ (package
+ (inherit ocaml-cohttp)
+ (name "ocaml-cohttp-lwt")
+ (arguments `(#:package "cohttp-lwt"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cohttp" ,ocaml-cohttp)
+ ("ocaml-lwt" ,ocaml-lwt)
+ ("ocaml-sexplib0" ,ocaml-sexplib0)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-uri" ,ocaml-uri)))
+ (synopsis "OCaml library for HTTP clients and servers using the Lwt
+concurrency library")
+ (description "This is a portable implementation of HTTP that uses the Lwt
+concurrency library to multiplex IO. It implements as much of the logic in an
+OS-independent way as possible, so that more specialised modules can be
+tailored for different targets. For example, you can install
+@code{ocaml-cohttp-lwt-unix} or @code{ocaml-cohttp-lwt-jsoo} for a Unix or
+JavaScript backend, or @code{ocaml-cohttp-mirage} for the MirageOS unikernel
+version of the library. All of these implementations share the same IO logic
+from this module.")))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 02/31] gnu: Add ocaml-domain-name.
2021-08-09 6:59 ` [bug#49867] [PATCH 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
@ 2021-08-09 6:59 ` pukkamustard
0 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 6:59 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-domain-name): New variable.
---
gnu/packages/ocaml.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 6518f21f5e..56e3c39c2d 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7347,6 +7347,35 @@ JavaScript backend, or @code{ocaml-cohttp-mirage} for the MirageOS unikernel
version of the library. All of these implementations share the same IO logic
from this module.")))
+(define-public ocaml-domain-name
+ (package
+ (name "ocaml-domain-name")
+ (version "0.3.0")
+ (home-page "https://github.com/hannesm/domain-name")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "06l82k27wa446k0sd799i73rrqwwmqfm542blkx6bbm2xpxaz2cm"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-fmt" ,ocaml-fmt)
+ ("ocaml-astring" ,ocaml-astring)))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)))
+ (synopsis "OCaml library for RFC 1035 Internet domain names")
+ (description "This OCaml library provides functions for working with
+Internet domain names (RFC 1035). For example, it provides functions for
+comparing domain names or checking if one domain name is a sub-domain of
+another.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt.
2021-08-09 6:55 ` pukkamustard
2021-08-09 6:59 ` [bug#49867] [PATCH 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
@ 2021-08-09 7:00 ` pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 02/31] gnu: Add ocaml-domain-name pukkamustard
` (29 more replies)
2021-08-09 9:55 ` [bug#49867] [PATCH 00/29] " Xinglu Chen
2 siblings, 30 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:00 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-cohttp-lwt): New variable.
---
gnu/packages/ocaml.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 112751ddec..6518f21f5e 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7323,6 +7323,30 @@ HTTP parser, and implementations using various asynchronous programming
libraries.")
(license license:isc)))
+(define-public ocaml-cohttp-lwt
+ (package
+ (inherit ocaml-cohttp)
+ (name "ocaml-cohttp-lwt")
+ (arguments `(#:package "cohttp-lwt"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cohttp" ,ocaml-cohttp)
+ ("ocaml-lwt" ,ocaml-lwt)
+ ("ocaml-sexplib0" ,ocaml-sexplib0)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-uri" ,ocaml-uri)))
+ (synopsis "OCaml library for HTTP clients and servers using the Lwt
+concurrency library")
+ (description "This is a portable implementation of HTTP that uses the Lwt
+concurrency library to multiplex IO. It implements as much of the logic in an
+OS-independent way as possible, so that more specialised modules can be
+tailored for different targets. For example, you can install
+@code{ocaml-cohttp-lwt-unix} or @code{ocaml-cohttp-lwt-jsoo} for a Unix or
+JavaScript backend, or @code{ocaml-cohttp-mirage} for the MirageOS unikernel
+version of the library. All of these implementations share the same IO logic
+from this module.")))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 02/31] gnu: Add ocaml-domain-name.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
@ 2021-08-09 7:00 ` pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 03/31] gnu: Add ocaml-macaddr pukkamustard
` (28 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:00 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-domain-name): New variable.
---
gnu/packages/ocaml.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 6518f21f5e..56e3c39c2d 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7347,6 +7347,35 @@ JavaScript backend, or @code{ocaml-cohttp-mirage} for the MirageOS unikernel
version of the library. All of these implementations share the same IO logic
from this module.")))
+(define-public ocaml-domain-name
+ (package
+ (name "ocaml-domain-name")
+ (version "0.3.0")
+ (home-page "https://github.com/hannesm/domain-name")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "06l82k27wa446k0sd799i73rrqwwmqfm542blkx6bbm2xpxaz2cm"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-fmt" ,ocaml-fmt)
+ ("ocaml-astring" ,ocaml-astring)))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)))
+ (synopsis "OCaml library for RFC 1035 Internet domain names")
+ (description "This OCaml library provides functions for working with
+Internet domain names (RFC 1035). For example, it provides functions for
+comparing domain names or checking if one domain name is a sub-domain of
+another.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 03/31] gnu: Add ocaml-macaddr.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 02/31] gnu: Add ocaml-domain-name pukkamustard
@ 2021-08-09 7:00 ` pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 04/31] gnu: Add ocaml-ipaddr pukkamustard
` (27 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:00 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-macaddr): New variable.
---
gnu/packages/ocaml.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 56e3c39c2d..34be7e5497 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7376,6 +7376,34 @@ comparing domain names or checking if one domain name is a sub-domain of
another.")
(license license:isc)))
+(define-public ocaml-macaddr
+ (package
+ (name "ocaml-macaddr")
+ (version "5.1.0")
+ (home-page "https://github.com/mirage/ocaml-ipaddr")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "02pan5b8s4j5r68znjdb5mln3nffccdfsh4rw71x31b6qsrlqzgg"))))
+ (build-system dune-build-system)
+ (arguments `(#:package "macaddr"
+ #:test-target "."))
+ (native-inputs
+ `(("ocaml-ounit" ,ocaml-ounit)
+ ("ocaml-domain-name" ,ocaml-domain-name)
+ ("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)))
+ (synopsis "OCaml library for manipulation of MAC address representations")
+ (description "This OCaml library provides functions for manipulating MAC
+address representations.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 04/31] gnu: Add ocaml-ipaddr.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 02/31] gnu: Add ocaml-domain-name pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 03/31] gnu: Add ocaml-macaddr pukkamustard
@ 2021-08-09 7:00 ` pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 05/31] gnu: Add ocaml-ipaddr-cstruct pukkamustard
` (26 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:00 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ipaddr): New variable.
---
gnu/packages/ocaml.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 34be7e5497..c167836db5 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7404,6 +7404,25 @@ another.")
address representations.")
(license license:isc)))
+(define-public ocaml-ipaddr
+ (package
+ (inherit ocaml-macaddr)
+ (name "ocaml-ipaddr")
+ (arguments `(#:package "ipaddr"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-macaddr" ,ocaml-macaddr)
+ ("ocaml-stdlib-shims" ,ocaml-stdlib-shims)
+ ("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-domain-name" ,ocaml-domain-name)))
+ (native-inputs
+ `(("ocaml-ounit" ,ocaml-ounit)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)))
+ (synopsis "OCaml library for manipulation of IP address representations")
+ (description "This OCaml library provides functions for manipulating IP
+address representations. It supports IPv4 and IPv6.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 05/31] gnu: Add ocaml-ipaddr-cstruct.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (2 preceding siblings ...)
2021-08-09 7:00 ` [bug#49867] [PATCH v2 04/31] gnu: Add ocaml-ipaddr pukkamustard
@ 2021-08-09 7:00 ` pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 06/31] gnu: Add ocaml-ipaddr-sexp pukkamustard
` (25 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:00 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ipaddr-cstruct): New variable.
---
gnu/packages/ocaml.scm | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index c167836db5..e47512ec18 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7423,6 +7423,19 @@ address representations.")
address representations. It supports IPv4 and IPv6.")
(license license:isc)))
+(define-public ocaml-ipaddr-cstruct
+ (package
+ (inherit ocaml-macaddr)
+ (name "ocaml-ipaddr-cstruct")
+ (arguments `(#:package "ipaddr-cstruct"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-ipaddr" ,ocaml-ipaddr)
+ ("ocaml-cstruct" ,ocaml-cstruct)))
+ (synopsis "OCaml library for manipulation of IP addresses as C-like structres")
+ (description "This OCaml library provides functions for manipulating as
+C-like structures using the @code{ocaml-cstruct} library.")))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 06/31] gnu: Add ocaml-ipaddr-sexp.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (3 preceding siblings ...)
2021-08-09 7:00 ` [bug#49867] [PATCH v2 05/31] gnu: Add ocaml-ipaddr-cstruct pukkamustard
@ 2021-08-09 7:00 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 07/31] gnu: Add ocaml-conduit pukkamustard
` (24 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:00 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ipaddr-sexp): New variable.
---
gnu/packages/ocaml.scm | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index e47512ec18..880b4d7836 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7436,6 +7436,23 @@ address representations. It supports IPv4 and IPv6.")
(description "This OCaml library provides functions for manipulating as
C-like structures using the @code{ocaml-cstruct} library.")))
+(define-public ocaml-ipaddr-sexp
+ (package
+ (inherit ocaml-macaddr)
+ (name "ocaml-ipaddr-sexp")
+ (arguments `(#:package "ipaddr-sexp"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-ipaddr" ,ocaml-ipaddr)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-sexplib0" ,ocaml-sexplib0)))
+ (native-inputs
+ `(("ocaml-ipaddr-cstruct" ,ocaml-ipaddr-cstruct)
+ ("ocaml-ounit" ,ocaml-ounit)))
+ (synopsis "OCaml library for manipulation of IP addresses as S-expressions")
+ (description "This OCaml library provides functions for manipulating as
+S-expressions using the @code{ocaml-sexp} library.")))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 07/31] gnu: Add ocaml-conduit.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (4 preceding siblings ...)
2021-08-09 7:00 ` [bug#49867] [PATCH v2 06/31] gnu: Add ocaml-ipaddr-sexp pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 08/31] gnu: Add ocaml-conduit-lwt pukkamustard
` (23 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-conduit): New variable.
---
gnu/packages/ocaml.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 880b4d7836..efd21d56e6 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7453,6 +7453,38 @@ C-like structures using the @code{ocaml-cstruct} library.")))
(description "This OCaml library provides functions for manipulating as
S-expressions using the @code{ocaml-sexp} library.")))
+(define-public ocaml-conduit
+ (package
+ (name "ocaml-conduit")
+ (version "4.0.0")
+ (home-page "https://github.com/mirage/ocaml-conduit")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0ipm6fkmvgsyfj5f5p057av8kykli5rh8qzw7ycdrakdk7gzvhi0"))))
+ (build-system dune-build-system)
+ (arguments `(#:package "conduit"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-sexplib" ,ocaml-sexplib)
+ ("ocaml-astring" ,ocaml-astring)
+ ("ocaml-uri" ,ocaml-uri)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-ipaddr" ,ocaml-ipaddr)
+ ("ocaml-ipaddr-sexp" ,ocaml-ipaddr-sexp)))
+ (synopsis "OCaml library for establishing TCP and SSL/TLS connections")
+ (description "This OCaml library provides an abstraction for establishing
+TCP and SSL/TLS connections. This allows using the same type signatures
+regardless of the SSL library or platform being used.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 08/31] gnu: Add ocaml-conduit-lwt.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (5 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 07/31] gnu: Add ocaml-conduit pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 09/31] gnu: Add ocaml-afl-persistent pukkamustard
` (22 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-conduit-lwt): New variable.
---
gnu/packages/ocaml.scm | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index efd21d56e6..6591841e33 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7485,6 +7485,24 @@ TCP and SSL/TLS connections. This allows using the same type signatures
regardless of the SSL library or platform being used.")
(license license:isc)))
+(define-public ocaml-conduit-lwt
+ (package
+ (inherit ocaml-conduit)
+ (name "ocaml-conduit-lwt")
+ (arguments `(#:package "conduit-lwt"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-sexplib" ,ocaml-sexplib)
+ ("ocaml-conduit" ,ocaml-conduit)
+ ("ocaml-lwt" ,ocaml-lwt)))
+ (synopsis "OCaml library for establishing TCP and SSL/TLS connections
+using Lwt")
+ (description "This OCaml library provides the abstractions for
+establishing TCP and SSL/TLS connections from @code{ocaml-conduit} using
+@code{ocaml-lwt}.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 09/31] gnu: Add ocaml-afl-persistent.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (6 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 08/31] gnu: Add ocaml-conduit-lwt pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 10/31] gnu: Add ocaml-pprint pukkamustard
` (21 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: Xinglu Chen
From: Xinglu Chen <public@yoctocell.xyz>
* gnu/packages/ocaml.scm (ocaml-afl-persistent): New variable.
---
gnu/packages/ocaml.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 6591841e33..9cb03d94ac 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7543,6 +7543,40 @@ It makes it possible to run pure OCaml programs in JavaScript environment like
browsers and Node.js.")
(license license:lgpl2.1+)))
+(define-public ocaml-afl-persistent
+ (package
+ (name "ocaml-afl-persistent")
+ (version "1.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/stedolan/ocaml-afl-persistent")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "06yyds2vcwlfr2nd3gvyrazlijjcrd1abnvkfpkaadgwdw3qam1i"))))
+ (build-system ocaml-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (replace 'build
+ (lambda _
+ (invoke "./build.sh")))
+ ;; XXX: The tests are already run in the build.sh script.
+ (delete 'check))))
+ (native-inputs
+ `(("opam" ,opam)))
+ (home-page "https://github.com/stedolan/ocaml-afl-persistent")
+ (synopsis "Use afl-fuzz in persistent mode")
+ (description
+ "afl-fuzz normally works by repeatedly forking the program being tested.
+Using this package, you can run afl-fuzz in ``persistent mode'', which avoids
+repeated forking and is much faster.")
+ (license license:expat)))
+
(define-public ocaml-bibtex2html
(package
(name "ocaml-bibtex2html")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 10/31] gnu: Add ocaml-pprint.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (7 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 09/31] gnu: Add ocaml-afl-persistent pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 11/31] gnu: Add ocaml-crowbar pukkamustard
` (20 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-pprint): New variable.
---
gnu/packages/ocaml.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 9cb03d94ac..5a7acb4ba8 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7503,6 +7503,31 @@ establishing TCP and SSL/TLS connections from @code{ocaml-conduit} using
@code{ocaml-lwt}.")
(license license:isc)))
+(define-public ocaml-pprint
+ (package
+ (name "ocaml-pprint")
+ (version "20200410")
+ (home-page "https://github.com/fpottier/pprint")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "16xc0rd4yj1y9rrs9fbhidd08icy4pc1plx48hp0xs6vnkh1wxjm"))))
+ (build-system dune-build-system)
+ (synopsis "OCaml pretty-printing combinator library and rendering
+engine")
+ (description "This OCaml library offers a set of combinators for building
+so-called documents as well as an efficient engine for converting documents to
+a textual, fixed-width format. The engine takes care of indentation and line
+breaks, while respecting the constraints imposed by the structure of the
+document and by the text width.")
+ (license license:lgpl2.0)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 11/31] gnu: Add ocaml-crowbar.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (8 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 10/31] gnu: Add ocaml-pprint pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 9:51 ` Xinglu Chen
2021-08-09 7:01 ` [bug#49867] [PATCH v2 12/31] gnu: Add ocaml-eqaf pukkamustard
` (19 subsequent siblings)
29 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-crowbar): New variable.
---
gnu/packages/ocaml.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 5a7acb4ba8..dba715d2f5 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7528,6 +7528,42 @@ breaks, while respecting the constraints imposed by the structure of the
document and by the text width.")
(license license:lgpl2.0)))
+(define-public ocaml-crowbar
+ (package
+ (name "ocaml-crowbar")
+ (version "0.2")
+ (home-page "https://github.com/stedolan/crowbar")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0wjfc9irvirfkic32ivvj6qb7r838w08b0d3vmngigbjpjyc9b14"))))
+ (build-system dune-build-system)
+ (arguments
+ ;; Tests require ocaml-xmldiff which requires OCaml 4.12.0
+ `(#:tests? #f))
+ (propagated-inputs
+ `(("ocaml-ocplib-endian" ,ocaml-ocplib-endian)
+ ("ocaml-cmdliner" ,ocaml-cmdliner)
+ ("ocaml-afl-persistent" ,ocaml-afl-persistent)))
+ (native-inputs
+ `(("ocaml-calendar" ,ocaml-calendar)
+ ("ocaml-fpath" ,ocaml-fpath)
+ ("ocaml-uucp" ,ocaml-uucp)
+ ("ocaml-uunf" ,ocaml-uunf)
+ ("ocaml-uutf" ,ocaml-uutf)
+ ("ocaml-pprint" ,ocaml-pprint)))
+ (synopsis "Ocaml library for tests, let a fuzzer find failing cases")
+ (description "Crowbar is a library for testing code, combining QuickCheck-style
+property-based testing and the magical bug-finding powers of
+[afl-fuzz](http://lcamtuf.coredump.cx/afl/).")
+ (license license:expat)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 12/31] gnu: Add ocaml-eqaf.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (9 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 11/31] gnu: Add ocaml-crowbar pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 13/31] gnu: Add ocaml-mirage-crypto pukkamustard
` (18 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-eqaf): New variable.
---
gnu/packages/ocaml.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index dba715d2f5..7101cc6c2f 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7564,6 +7564,34 @@ property-based testing and the magical bug-finding powers of
[afl-fuzz](http://lcamtuf.coredump.cx/afl/).")
(license license:expat)))
+(define-public ocaml-eqaf
+ (package
+ (name "ocaml-eqaf")
+ (version "0.7")
+ (home-page "https://github.com/mirage/eqaf")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "06hsnnjax1kb3qsi3cj0nyyz8c2hj2gbw3h517gpjinpnwy2fr85"))))
+ (build-system dune-build-system)
+ (propagated-inputs
+ ;; required to build the eqaf.cstruct library (see https://github.com/mirage/eqaf/pull/27)
+ `(("ocaml-bigarray-compat" ,ocaml-bigarray-compat)
+ ("ocaml-cstruct" ,ocaml-cstruct)))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)
+ ("ocaml-crowbar" ,ocaml-crowbar)))
+ (synopsis "OCaml library for constant-time equal function on string")
+ (description "This OCaml library provides an equal function on string in
+constant-time to avoid timing-attack with crypto stuff.")
+ (license license:expat)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 13/31] gnu: Add ocaml-mirage-crypto.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (10 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 12/31] gnu: Add ocaml-eqaf pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-21 14:01 ` Julien Lepiller
2021-08-09 7:01 ` [bug#49867] [PATCH v2 14/31] gnu: Add ocaml-duration pukkamustard
` (17 subsequent siblings)
29 siblings, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-mirage-crypto): New variable.
---
gnu/packages/ocaml.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 7101cc6c2f..c6cdd3a318 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7592,6 +7592,37 @@ property-based testing and the magical bug-finding powers of
constant-time to avoid timing-attack with crypto stuff.")
(license license:expat)))
+(define-public ocaml-mirage-crypto
+ (package
+ (name "ocaml-mirage-crypto")
+ (version "0.10.3")
+ (home-page "https://github.com/mirage/mirage-crypto")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0j7x07c8xy8bmqp9ad1cib6j69dy7acjg9m1d7pn0dnmbkrl8fiz"))))
+ (build-system dune-build-system)
+ (arguments `(#:package "mirage-crypto"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-eqaf" ,ocaml-eqaf)
+ ("ocaml-bigarray-compat" ,ocaml-bigarray-compat)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("ocaml-ounit" ,ocaml-ounit)))
+ (synopsis "OCaml library provding cryptographic primitives")
+ (description "This OCaml library provides symmetric ciphers (DES, AES,
+RC4, ChaCha20/Poly1305), and hashes (MD5, SHA-1, SHA-2). This library can be
+used from MirageOS unikernels.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 14/31] gnu: Add ocaml-duration.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (11 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 13/31] gnu: Add ocaml-mirage-crypto pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 15/31] gnu: Add ocaml-randomconv pukkamustard
` (16 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-duration): New variable.
---
gnu/packages/ocaml.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index c6cdd3a318..53c7c3cc7b 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7623,6 +7623,31 @@ RC4, ChaCha20/Poly1305), and hashes (MD5, SHA-1, SHA-2). This library can be
used from MirageOS unikernels.")
(license license:isc)))
+(define-public ocaml-duration
+ (package
+ (name "ocaml-duration")
+ (version "0.1.3")
+ (home-page "https://github.com/hannesm/duration")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0ka4cv9581iaa6q1k02ddrpz7f53k3wk7rpq43j1lrdm4vl2jk4w"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)))
+ (synopsis "OCaml library providing conversions between various time units")
+ (description "This OCaml library provides functions for representing a
+time duration as an usigned 64 bit integer. This can be used for conversions
+between various time units.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 15/31] gnu: Add ocaml-randomconv.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (12 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 14/31] gnu: Add ocaml-duration pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 16/31] gnu: Add ocaml-mirage-crypto-rng pukkamustard
` (15 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-randomconv): New variable.
---
gnu/packages/ocaml.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 53c7c3cc7b..669faf9729 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7648,6 +7648,31 @@ time duration as an usigned 64 bit integer. This can be used for conversions
between various time units.")
(license license:isc)))
+(define-public ocaml-randomconv
+ (package
+ (name "ocaml-randomconv")
+ (version "0.1.3")
+ (home-page "https://github.com/hannesm/randomconv")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0pzq2zqz5bpy2snsvmn82hg79wfd0lmbbbhmhdvc8k20km86jqy7"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)))
+ (synopsis "OCaml library for converting random byte vectors to random numer")
+ (description
+ "This Ocaml library provides functions for converting random byte vectors
+as (C-like structures using @code{ocaml-cstruct}) to OCaml native numbers.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 16/31] gnu: Add ocaml-mirage-crypto-rng.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (13 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 15/31] gnu: Add ocaml-randomconv pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 17/31] gnu: Add ocaml-mirage-crypto-pk pukkamustard
` (14 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-mirage-crypto-rng): New variable.
---
gnu/packages/ocaml.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 669faf9729..b6cf98b82f 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7673,6 +7673,27 @@ between various time units.")
as (C-like structures using @code{ocaml-cstruct}) to OCaml native numbers.")
(license license:isc)))
+(define-public ocaml-mirage-crypto-rng
+ (package
+ (inherit ocaml-mirage-crypto)
+ (name "ocaml-mirage-crypto-rng")
+ (arguments `(#:package "mirage-crypto-rng"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-duration" ,ocaml-duration)
+ ("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-mirage-crypto" ,ocaml-mirage-crypto)
+ ("ocaml-mtime" ,ocaml-mtime)
+ ("ocaml-lwt" ,ocaml-lwt)))
+ (native-inputs
+ `(("ocaml-ounit" ,ocaml-ounit)
+ ("ocaml-randomconv" ,ocaml-randomconv)))
+ (synopsis "Cryptographically secure pseudo-random number generator in
+OCaml")
+ (description "@code{ocaml-mirage-crypto-rng} provides an OCaml random
+number generator interface, and implementations.")))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 17/31] gnu: Add ocaml-mirage-crypto-pk.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (14 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 16/31] gnu: Add ocaml-mirage-crypto-rng pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 18/31] gnu: Add ocaml-ptime pukkamustard
` (13 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-mirage-crypto-pk): New variable.
---
gnu/packages/ocaml.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index b6cf98b82f..82786922b2 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7694,6 +7694,31 @@ OCaml")
(description "@code{ocaml-mirage-crypto-rng} provides an OCaml random
number generator interface, and implementations.")))
+(define-public ocaml-mirage-crypto-pk
+ (package
+ (inherit ocaml-mirage-crypto)
+ (name "ocaml-mirage-crypto-pk")
+ (arguments `(#:package "mirage-crypto-pk"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-mirage-crypto" ,ocaml-mirage-crypto)
+ ("ocaml-mirage-crypto-rng" ,ocaml-mirage-crypto-rng)
+ ("ocaml-mtime" ,ocaml-mtime)
+ ("ocaml-sexplib" ,ocaml-sexplib)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-zarith" ,ocaml-zarith)
+ ("ocaml-eqaf" ,ocaml-eqaf)
+ ("ocaml-rresult" ,ocaml-rresult)))
+ (native-inputs
+ `(("ocaml-ounit" ,ocaml-ounit)
+ ("ocaml-randomconv" ,ocaml-randomconv)))
+ (inputs `(("gmp" ,gmp)))
+ (synopsis "OCaml library providing public-key cryptography")
+ (description "@code{ocaml-mirage-crypto-pk} provides public-key
+cryptography (RSA, DSA, DH) for OCaml.")))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 18/31] gnu: Add ocaml-ptime.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (15 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 17/31] gnu: Add ocaml-mirage-crypto-pk pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 19/31] gnu: Add ocaml-asn1-combinators pukkamustard
` (12 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ptime): New variable.
---
gnu/packages/ocaml.scm | 39 +++++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 82786922b2..7af276a517 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7719,6 +7719,45 @@ number generator interface, and implementations.")))
(description "@code{ocaml-mirage-crypto-pk} provides public-key
cryptography (RSA, DSA, DH) for OCaml.")))
+(define-public ocaml-ptime
+ (package
+ (name "ocaml-ptime")
+ (version "0.8.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "https://erratique.ch/software/ptime/releases/ptime-"
+ version ".tbz"))
+ (sha256
+ (base32
+ "1fxq57xy1ajzfdnvv5zfm7ap2nf49znw5f9gbi4kb9vds942ij27"))))
+ (build-system ocaml-build-system)
+ (arguments
+ `(#:build-flags (list "build" "--with-js_of_ocaml" "false"
+ "--tests" "true")
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))))
+ (propagated-inputs
+ `(("ocaml-result" ,ocaml-result)))
+ (native-inputs
+ `(("ocamlbuild" ,ocamlbuild)
+ ("ocaml-topkg" ,ocaml-topkg)
+ ("opam" ,opam)))
+ (properties `((upstream-name . "ptime")))
+ (home-page "https://erratique.ch/software/ptime")
+ (synopsis "POSIX time for OCaml")
+ (description "Ptime has platform independent POSIX time support in pure
+OCaml. It provides a type to represent a well-defined range of POSIX
+timestamps with picosecond precision, conversion with date-time values,
+conversion with RFC 3339 timestamps and pretty printing to a human-readable,
+locale-independent representation.
+
+The additional Ptime_clock library provides access to a system POSIX clock and
+to the system's current time zone offset.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 19/31] gnu: Add ocaml-asn1-combinators.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (16 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 18/31] gnu: Add ocaml-ptime pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 20/31] gnu: Add ocaml-ppx-deriving pukkamustard
` (11 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-asn1-combinators): New variable.
---
gnu/packages/ocaml.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 7af276a517..de3ae3eb9d 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7758,6 +7758,41 @@ The additional Ptime_clock library provides access to a system POSIX clock and
to the system's current time zone offset.")
(license license:isc)))
+(define-public ocaml-asn1-combinators
+ (package
+ (name "ocaml-asn1-combinators")
+ (version "0.2.5")
+ (home-page "https://github.com/mirleft/ocaml-asn1-combinators")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0n7afzyqc3b7g7rl54ccw31431h6g145zvpzg34q0y4m5gzjv5h5"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-zarith" ,ocaml-zarith)
+ ("ocaml-bigarray-compat" ,ocaml-bigarray-compat)
+ ("ocaml-stdlib-shims" ,ocaml-stdlib-shims)
+ ("ocaml-ptime" ,ocaml-ptime)))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)))
+ (inputs `(("gmp" ,gmp)))
+ (synopsis "OCaml library for embedding typed ASN.1 grammars")
+ (description "@{ocaml-asn1-combinators} is an OCaml library for expressing
+ASN.1 in OCaml. This allows you to skip the notation part of ASN.1, and embed
+the abstract syntax directly in the language. These abstract syntax
+representations can be used for parsing, serialization, or random testing.
+
+The only ASN.1 encodings currently supported are BER and DER.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 20/31] gnu: Add ocaml-ppx-deriving.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (17 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 19/31] gnu: Add ocaml-asn1-combinators pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 21/31] gnu: Add ocaml-ppx-deriving-yojson pukkamustard
` (10 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ppx-deriving): New variable.
---
gnu/packages/ocaml.scm | 33 ++++++++++++++++++++++++++++++++-
1 file changed, 32 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index de3ae3eb9d..92562d1c3a 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -4523,7 +4523,38 @@ speedup, polymorphic variants and optional syntax for tuples and variants.
yojson package. The program @code{atdgen} can be used to derive OCaml-JSON
serializers and deserializers from type definitions.")
(license license:bsd-3)))
-
+
+(define-public ocaml-ppx-deriving
+ (package
+ (name "ocaml-ppx-deriving")
+ (version "5.2.1")
+ (home-page "https://github.com/ocaml-ppx/ppx_deriving")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1wqcnw4wi6pfjjhixpakckm03dpj990259za432804471a6spm2j"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-ppx-derivers" ,ocaml-ppx-derivers)
+ ("ocaml-ppxlib" ,ocaml-ppxlib)
+ ("ocaml-result" ,ocaml-result)))
+ (native-inputs
+ `(("ocaml-cppo" ,ocaml-cppo)
+ ("ocaml-ounit2" ,ocaml-ounit2)))
+ (properties `((upstream-name . "ppx_deriving")))
+ (synopsis "Type-driven code generation for OCaml")
+ (description "This OCaml library provides common infrastructure for
+generating code based on type definitions, and a set of useful plugins for
+common tasks.")
+ (license license:expat)))
+
(define-public ocaml-craml
(package
(name "ocaml-craml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 21/31] gnu: Add ocaml-ppx-deriving-yojson.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (18 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 20/31] gnu: Add ocaml-ppx-deriving pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 22/31] gnu: Add ocaml-mirage-crypto-ec pukkamustard
` (9 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ppx-deriving-yojson): New variable.
---
gnu/packages/ocaml.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 92562d1c3a..0a431b2563 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -4555,6 +4555,35 @@ generating code based on type definitions, and a set of useful plugins for
common tasks.")
(license license:expat)))
+(define-public ocaml-ppx-deriving-yojson
+ (package
+ (name "ocaml-ppx-deriving-yojson")
+ (version "3.6.1")
+ (home-page "https://github.com/ocaml-ppx/ppx_deriving_yojson")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1icz5h6p3pfj7my5gi7wxpflrb8c902dqa17f9w424njilnpyrbk"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-yojson" ,ocaml-yojson)
+ ("ocaml-result" ,ocaml-result)
+ ("ocaml-ppx-deriving" ,ocaml-ppx-deriving)
+ ("ocaml-ppxlib" ,ocaml-ppxlib)))
+ (native-inputs `(("ocaml-ounit" ,ocaml-ounit)))
+ (properties `((upstream-name . "ppx_deriving_yojson")))
+ (synopsis "JSON codec generator for OCaml")
+ (description "@code{ocaml-ppx-deriving-yojson} is an OCaml ppx_deriving
+plugin that provides a JSON codec generator.")
+ (license license:expat)))
+
(define-public ocaml-craml
(package
(name "ocaml-craml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 22/31] gnu: Add ocaml-mirage-crypto-ec.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (19 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 21/31] gnu: Add ocaml-ppx-deriving-yojson pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 23/31] gnu: Add ocaml-gmap pukkamustard
` (8 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-mirage-crypto-ec): New variable.
---
gnu/packages/ocaml.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 0a431b2563..7ef2468d9a 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7853,6 +7853,40 @@ representations can be used for parsing, serialization, or random testing.
The only ASN.1 encodings currently supported are BER and DER.")
(license license:isc)))
+(define-public ocaml-mirage-crypto-ec
+ ;; FIXME: This package contains generated code (see
+ ;; https://github.com/mirage/mirage-crypto/blob/main/ec/native/README.md). These
+ ;; should be re-generated during the build process.
+ (package
+ (inherit ocaml-mirage-crypto)
+ (name "ocaml-mirage-crypto-ec")
+ (arguments `(#:package "mirage-crypto-ec"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-eqaf" ,ocaml-eqaf)
+ ("ocaml-mirage-crypto" ,ocaml-mirage-crypto)
+ ("ocaml-mirage-crypto-rng" ,ocaml-mirage-crypto-rng)
+ ("gmp" ,gmp)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("ocaml-randomconv" ,ocaml-randomconv)
+ ("ocaml-ounit" ,ocaml-ounit)
+ ("ocaml-mirage-crypto-pk" ,ocaml-mirage-crypto-pk)
+ ("ocaml-hex" ,ocaml-hex)
+ ("ocaml-alcotest" ,ocaml-alcotest)
+ ("ocaml-asn1-combinators" ,ocaml-asn1-combinators)
+ ("ocaml-ppx-deriving-yojson" ,ocaml-ppx-deriving-yojson)
+ ("ocaml-ppx-deriving" ,ocaml-ppx-deriving)
+ ("ocaml-yojson" ,ocaml-yojson)))
+ (synopsis "OCaml library providing Elliptic Curve Cryptography")
+ (description "This OCaml library provides an implementation of key exchange
+(ECDH) and digital signature (ECDSA/EdDSA) algorithms. The curves P224
+(SECP224R1), P256 (SECP256R1), P384 (SECP384R1),P521 (SECP521R1), and 25519
+(X25519, Ed25519) are implemented by this package.")
+ ;; See https://github.com/mirage/mirage-crypto/blob/main/ec/LICENSE.md
+ (license license:expat)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 23/31] gnu: Add ocaml-gmap.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (20 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 22/31] gnu: Add ocaml-mirage-crypto-ec pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 24/31] gnu: Add ocaml-pbkdf pukkamustard
` (7 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-gmap): New variable.
---
gnu/packages/ocaml.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 7ef2468d9a..d37a40d22e 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7887,6 +7887,32 @@ The only ASN.1 encodings currently supported are BER and DER.")
;; See https://github.com/mirage/mirage-crypto/blob/main/ec/LICENSE.md
(license license:expat)))
+(define-public ocaml-gmap
+ (package
+ (name "ocaml-gmap")
+ (version "0.3.0")
+ (home-page "https://github.com/hannesm/gmap")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0880mhcybr662k6wnahx5mwbialh878kkzxacn47qniadd21x411"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)
+ ("ocaml-fmt" ,ocaml-fmt)))
+ (synopsis "OCaml library for heterogenous maps over a Generalized
+Algebraic Data Type")
+ (description "@code{ocaml-gmap} exposes an OCaml functor which can be used
+to create a type-safe heterogenous maps.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 24/31] gnu: Add ocaml-pbkdf.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (21 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 23/31] gnu: Add ocaml-gmap pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 25/31] gnu: Add ocaml-cstruct-unix pukkamustard
` (6 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-pbkdf): New variable.
---
gnu/packages/ocaml.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index d37a40d22e..df825d1ec3 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7913,6 +7913,32 @@ Algebraic Data Type")
to create a type-safe heterogenous maps.")
(license license:isc)))
+(define-public ocaml-pbkdf
+ (package
+ (name "ocaml-pbkdf")
+ (version "1.1.0")
+ (home-page "https://github.com/abeaumont/ocaml-pbkdf")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0scq1i7hiy8dgjdfrcaca3k7wzys35k1g2cdg7v4kfdqr6q1scb3"))))
+ (build-system dune-build-system)
+ (propagated-inputs
+ `(("ocaml-mirage-crypto" ,ocaml-mirage-crypto)))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)))
+ (synopsis "OCaml library for password based key derivation functions
+(PBKDF) from PKCS#5")
+ (description "This package provides an OCaml implementation of PBKDF 1 and
+2 as defined by PKCS#5 using @code{ocaml-mirage-crypto}.")
+ (license license:bsd-2)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 25/31] gnu: Add ocaml-cstruct-unix.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (22 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 24/31] gnu: Add ocaml-pbkdf pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 26/31] gnu: Add ocaml-x509 pukkamustard
` (5 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-cstruct-unix): New variable.
---
gnu/packages/ocaml.scm | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index df825d1ec3..e358042e41 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3412,6 +3412,23 @@ to access C-like structures directly from OCaml. It supports both reading and
writing to these structures, and they are accessed via the Bigarray module.")
(license license:isc)))
+(define-public ocaml-cstruct-unix
+ (package
+ (inherit ocaml-cstruct)
+ (name "ocaml-cstruct-unix")
+ (build-system dune-build-system)
+ (arguments
+ `(#:package "cstruct-unix"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)))
+ (synopsis "Unix variation of the @code{ocaml-cstruct} library")
+ (description "Cstruct is a library and syntax extension to make it easier
+to access C-like structures directly from OCaml. It supports both reading and
+writing to these structures, and they are accessed via the `Bigarray`
+module.")
+ (license license:isc)))
+
(define-public ocaml-hex
(package
(name "ocaml-hex")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 26/31] gnu: Add ocaml-x509.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (23 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 25/31] gnu: Add ocaml-cstruct-unix pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 27/31] gnu: Add ocaml-ca-certs pukkamustard
` (4 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-x509): New variable.
---
gnu/packages/ocaml.scm | 46 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index e358042e41..b7bdc8c711 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7956,6 +7956,52 @@ to create a type-safe heterogenous maps.")
2 as defined by PKCS#5 using @code{ocaml-mirage-crypto}.")
(license license:bsd-2)))
+(define-public ocaml-x509
+ (package
+ (name "ocaml-x509")
+ (version "0.14.0")
+ (home-page "https://github.com/mirleft/ocaml-x509")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0b51vzyxxkhwgx12dg55clb1lb971cxlmsk4wlxzs5h115j5hcy7"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-asn1-combinators" ,ocaml-asn1-combinators)
+ ("ocaml-ptime" ,ocaml-ptime)
+ ("ocaml-base64" ,ocaml-base64)
+ ("ocaml-mirage-crypto" ,ocaml-mirage-crypto)
+ ("ocaml-mirage-crypto-pk" ,ocaml-mirage-crypto-pk)
+ ("ocaml-mirage-crypto-ec" ,ocaml-mirage-crypto-ec)
+ ("ocaml-mirage-crypto-rng" ,ocaml-mirage-crypto-rng)
+ ("ocaml-rresult" ,ocaml-rresult)
+ ("ocaml-fmt" ,ocaml-fmt)
+ ("ocaml-gmap" ,ocaml-gmap)
+ ("ocaml-domain-name" ,ocaml-domain-name)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-pbkdf" ,ocaml-pbkdf)))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)
+ ("ocaml-cstruct-unix" ,ocaml-cstruct-unix)))
+ (synopsis "Public Key Infrastructure (RFC 5280, PKCS) purely in OCaml")
+(description "X.509 is a public key infrastructure used mostly on the
+Internet. It consists of certificates which include public keys and
+identifiers, signed by an authority. Authorities must be exchanged over a
+second channel to establish the trust relationship. This OCaml library
+implements most parts of RFC5280 and RFC6125. The Public Key Cryptography
+Standards (PKCS) defines encoding and decoding (in ASN.1 DER and PEM format),
+which is also implemented by this library --- namely PKCS 1, PKCS 5, PKCS 7,
+PKCS 8, PKCS 9, PKCS 10, and PKCS 12.")
+ (license license:bsd-2)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 27/31] gnu: Add ocaml-ca-certs.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (24 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 26/31] gnu: Add ocaml-x509 pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 28/31] gnu: Add ocaml-lwt-ssl pukkamustard
` (3 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-ca-certs): New variable.
---
gnu/packages/ocaml.scm | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index b7bdc8c711..b3becac967 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -8002,6 +8002,44 @@ which is also implemented by this library --- namely PKCS 1, PKCS 5, PKCS 7,
PKCS 8, PKCS 9, PKCS 10, and PKCS 12.")
(license license:bsd-2)))
+(define-public ocaml-ca-certs
+ (package
+ (name "ocaml-ca-certs")
+ (version "0.2.1")
+ (home-page "https://github.com/mirage/ca-certs")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0qkxdrqyah24fz80hwkycdj50nybfjfz9b04qscv01r2ifb0kqy5"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."
+ ;; Tests are failing as they require certificates to be in /etc/ssl/certs
+ #:tests? #f))
+ (propagated-inputs
+ `(("ocaml-astring" ,ocaml-astring)
+ ("ocaml-bos" ,ocaml-bos)
+ ("ocaml-fpath" ,ocaml-fpath)
+ ("ocaml-rresult" ,ocaml-rresult)
+ ("ocaml-ptime" ,ocaml-ptime)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-mirage-crypto" ,ocaml-mirage-crypto)
+ ("ocaml-x509" ,ocaml-x509)))
+ (native-inputs
+ `(("ocaml-alcotest" ,ocaml-alcotest)))
+ (synopsis
+ "Detect root CA certificates from the operating system")
+ (description
+ "TLS requires a set of root anchors (Certificate Authorities) to
+authenticate servers. This library exposes this list so that it can be
+registered with ocaml-tls.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 28/31] gnu: Add ocaml-lwt-ssl.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (25 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 27/31] gnu: Add ocaml-ca-certs pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 29/31] gnu: Add ocaml-conduit-lwt-unix pukkamustard
` (2 subsequent siblings)
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-lwt-ssl): New variable.
---
gnu/packages/ocaml.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index b3becac967..3a0cc08c1e 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7580,6 +7580,32 @@ establishing TCP and SSL/TLS connections from @code{ocaml-conduit} using
@code{ocaml-lwt}.")
(license license:isc)))
+(define-public ocaml-lwt-ssl
+ (package
+ (name "ocaml-lwt-ssl")
+ (version "1.1.3")
+ (home-page "https://github.com/ocsigen/lwt_ssl")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0v417ch5zn0yknj156awa5mrq3mal08pbrvsyribbn63ix6f9y3p"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (propagated-inputs
+ `(("ocaml-lwt" ,ocaml-lwt)
+ ("ocaml-ssl" ,ocaml-ssl)))
+ (properties `((upstream-name . "lwt_ssl")))
+ (synopsis "OpenSSL binding for OCaml with concurrent I/O")
+ (description "This OCaml library provides an Lwt-enabled wrapper around
+@code{ocaml-ssl}, that performs I/O concurrently.")
+ (license license:lgpl2.1+))) ; with linking exception
+
(define-public ocaml-pprint
(package
(name "ocaml-pprint")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 29/31] gnu: Add ocaml-conduit-lwt-unix.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (26 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 28/31] gnu: Add ocaml-lwt-ssl pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 30/31] gnu: Add ocaml-magic-mime pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 31/31] gnu: Add ocaml-cohttp-lwt-unix pukkamustard
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-conduit-lwt-unix): New variable.
---
gnu/packages/ocaml.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 3a0cc08c1e..b35994231d 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7606,6 +7606,32 @@ establishing TCP and SSL/TLS connections from @code{ocaml-conduit} using
@code{ocaml-ssl}, that performs I/O concurrently.")
(license license:lgpl2.1+))) ; with linking exception
+(define-public ocaml-conduit-lwt-unix
+ (package
+ (inherit ocaml-conduit)
+ (name "ocaml-conduit-lwt-unix")
+ (arguments `(#:package "conduit-lwt-unix"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-logs" ,ocaml-logs)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-conduit-lwt" ,ocaml-conduit-lwt)
+ ("ocaml-lwt" ,ocaml-lwt)
+ ("ocaml-uri" ,ocaml-uri)
+ ("ocaml-ipaddr" ,ocaml-ipaddr)
+ ("ocaml-ipaddr-sexp" ,ocaml-ipaddr-sexp)
+ ("ocaml-ca-certs" ,ocaml-ca-certs)))
+ (native-inputs
+ `(("ocaml-lwt-log" ,ocaml-lwt-log)
+ ("ocaml-ssl" ,ocaml-ssl)
+ ("ocaml-lwt-ssl" ,ocaml-lwt-ssl)))
+ (synopsis "OCaml library for establishing TCP and SSL/TLC connections
+using Lwt_unix")
+ (description "This OCaml library provides an implementation
+for establishing TCP and SSL/TLS connections for the @code{ocaml-conduit}
+signatures using Lwt_unix.")
+ (license license:isc)))
+
(define-public ocaml-pprint
(package
(name "ocaml-pprint")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 30/31] gnu: Add ocaml-magic-mime.
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (27 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 29/31] gnu: Add ocaml-conduit-lwt-unix pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 31/31] gnu: Add ocaml-cohttp-lwt-unix pukkamustard
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-magic-mime): New variable.
---
gnu/packages/ocaml.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index b35994231d..42e6fd2e94 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7424,6 +7424,31 @@ JavaScript backend, or @code{ocaml-cohttp-mirage} for the MirageOS unikernel
version of the library. All of these implementations share the same IO logic
from this module.")))
+(define-public ocaml-magic-mime
+ (package
+ (name "ocaml-magic-mime")
+ (version "1.2.0")
+ (home-page "https://github.com/mirage/ocaml-magic-mime")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1pmwxw5n0lxbp7b9z1wplkn0cfl816cbacx3cdj2912n5zyjpjnk"))))
+ (build-system dune-build-system)
+ (arguments `(#:test-target "."))
+ (synopsis "OCaml library for mapping filenames to common MIME types")
+ (description "This library contains a database of MIME types that maps
+filename extensions into MIME types suitable for use in many Internet
+protocols such as HTTP or e-mail. It is generated from the @file{mime.types}
+file found in Unix systems, but has no dependency on a filesystem since it
+includes the contents of the database as an ML datastructure.")
+ (license license:isc)))
+
(define-public ocaml-domain-name
(package
(name "ocaml-domain-name")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 31/31] gnu: Add ocaml-cohttp-lwt-unix
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
` (28 preceding siblings ...)
2021-08-09 7:01 ` [bug#49867] [PATCH v2 30/31] gnu: Add ocaml-magic-mime pukkamustard
@ 2021-08-09 7:01 ` pukkamustard
29 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-09 7:01 UTC (permalink / raw)
To: 49867; +Cc: pukkamustard
* gnu/packages/ocaml.scm (ocaml-cohttp-lwt-unix): New variable.
---
gnu/packages/ocaml.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 42e6fd2e94..8965f5920d 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7424,6 +7424,29 @@ JavaScript backend, or @code{ocaml-cohttp-mirage} for the MirageOS unikernel
version of the library. All of these implementations share the same IO logic
from this module.")))
+(define-public ocaml-cohttp-lwt-unix
+ (package
+ (inherit ocaml-cohttp)
+ (name "ocaml-cohttp-lwt-unix")
+ (arguments `(#:package "cohttp-lwt-unix"
+ ;; tests require network
+ #:tests? #f))
+ (propagated-inputs
+ `(("ocaml-conduit-lwt" ,ocaml-conduit-lwt)
+ ("ocaml-conduit-lwt-unix" ,ocaml-conduit-lwt-unix)
+ ("ocaml-cmdliner" ,ocaml-cmdliner)
+ ("ocaml-magic-mime" ,ocaml-magic-mime)
+ ("ocaml-logs" ,ocaml-logs)
+ ("ocaml-fmt" ,ocaml-fmt)
+ ("ocaml-cohttp-lwt" ,ocaml-cohttp-lwt)
+ ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
+ ("ocaml-lwt" ,ocaml-lwt)
+ ("ocaml-lwt-ssl" ,ocaml-lwt-ssl)))
+ (native-inputs `(("ocaml-ounit" ,ocaml-ounit)))
+ (synopsis "OCaml HTTP implementation for Unix using Lwt")
+ (description "This Ocaml package provides an implementation of an HTTP
+client and server for Unix using the Lwt concurrency library.")))
+
(define-public ocaml-magic-mime
(package
(name "ocaml-magic-mime")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 24/29] gnu: Add ocaml-ca-certs.
2021-08-08 12:36 ` pukkamustard
@ 2021-08-09 9:30 ` Xinglu Chen
0 siblings, 0 replies; 99+ messages in thread
From: Xinglu Chen @ 2021-08-09 9:30 UTC (permalink / raw)
To: pukkamustard; +Cc: 49867
[-- Attachment #1: Type: text/plain, Size: 2258 bytes --]
On Sun, Aug 08 2021, pukkamustard wrote:
> Xinglu Chen <public@yoctocell.xyz> writes:
>
>>> + ;; Tests are failing as they require
>>> certificates to be in /etc/ssl/certs
>>> + #:tests? #f))
>>
>> The same issue has been mentioned by NixOS people on their bug
>> tracker[1], they solved[2] it by reading the NIX_SSL_CERT_FILE
>> environment variable, which automatically gets set in the build
>> environment if the ‘cacert’ package is specified as an input. I
>> don’t
>> know if Guix does something similar.
>>
>> [1]: <https://github.com/mirage/ca-certs/issues/16>
>> [2]: <https://github.com/mirage/ca-certs/pull/17>
>>
>
> Thanks for the pointers.
>
> Inspired by the package definition for curl, I tried setting
> NIX_SSL_CERT_FILE with native-search-paths:
>
> ```
> (native-search-paths
> (list
> (search-path-specification
> (variable "NIX_SSL_CERT_FILE")
> (file-type 'regular)
> (separator #f) ;single entry
> (files '("/etc/ssl/certs/ca-certificates.crt")))))
> ```
>
> and adding `nss-certs` to the native-inputs.
>
> However, this does not work. Some observations/questions:
>
> - The NIX_SSL_CERT_FILE does not appear in the
> `environment-variables` file when running `guix build -K`. I
> would have expected it to be set there.
> - `nss-certs` does not provide the `ca-certificates.crt` file. It
> is built when creating a profile with the
> `ca-certificate-bundle` hook. Is this run when creating a build
> environment?
>
> I seem to be not understanding a lot of things about the build
> environment ... Pointers very welcome!
Maybe the environment variables in ‘native-search-paths’ are only set if
the package is installed in a profile (in ~/.guix-profile/etc/profile)?
I don’t think profile hooks are run in the build environment, so that’s
probably why.
In Nix, the bundle is created during the build phase[1], not sure if we
should do this too.
I think it’s fine to disable tests for now, but it would be great to see
what other people think too.
[1]: https://github.com/nixos/nixpkgs/blob/master/pkgs/data/misc/cacert/default.nix#L53
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 11/31] gnu: Add ocaml-crowbar.
2021-08-09 7:01 ` [bug#49867] [PATCH v2 11/31] gnu: Add ocaml-crowbar pukkamustard
@ 2021-08-09 9:51 ` Xinglu Chen
2021-08-09 11:13 ` Julien Lepiller
2021-08-10 8:00 ` pukkamustard
0 siblings, 2 replies; 99+ messages in thread
From: Xinglu Chen @ 2021-08-09 9:51 UTC (permalink / raw)
To: pukkamustard, 49867; +Cc: pukkamustard
[-- Attachment #1: Type: text/plain, Size: 2138 bytes --]
On Mon, Aug 09 2021, pukkamustard wrote:
> * gnu/packages/ocaml.scm (ocaml-crowbar): New variable.
> ---
> gnu/packages/ocaml.scm | 36 ++++++++++++++++++++++++++++++++++++
> 1 file changed, 36 insertions(+)
>
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index 5a7acb4ba8..dba715d2f5 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -7528,6 +7528,42 @@ breaks, while respecting the constraints imposed by the structure of the
> document and by the text width.")
> (license license:lgpl2.0)))
>
> +(define-public ocaml-crowbar
> + (package
> + (name "ocaml-crowbar")
> + (version "0.2")
> + (home-page "https://github.com/stedolan/crowbar")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url home-page)
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "0wjfc9irvirfkic32ivvj6qb7r838w08b0d3vmngigbjpjyc9b14"))))
> + (build-system dune-build-system)
> + (arguments
> + ;; Tests require ocaml-xmldiff which requires OCaml 4.12.0
> + `(#:tests? #f))
> + (propagated-inputs
> + `(("ocaml-ocplib-endian" ,ocaml-ocplib-endian)
> + ("ocaml-cmdliner" ,ocaml-cmdliner)
> + ("ocaml-afl-persistent" ,ocaml-afl-persistent)))
> + (native-inputs
> + `(("ocaml-calendar" ,ocaml-calendar)
> + ("ocaml-fpath" ,ocaml-fpath)
> + ("ocaml-uucp" ,ocaml-uucp)
The ‘ocaml-uucp’ package hasn’t been packaged yet.
> + ("ocaml-uunf" ,ocaml-uunf)
> + ("ocaml-uutf" ,ocaml-uutf)
> + ("ocaml-pprint" ,ocaml-pprint)))
> + (synopsis "Ocaml library for tests, let a fuzzer find failing cases")
> + (description "Crowbar is a library for testing code, combining QuickCheck-style
> +property-based testing and the magical bug-finding powers of
> +[afl-fuzz](http://lcamtuf.coredump.cx/afl/).")
Texinfo formatting:
@uref{http://lcamtuf.coredump.cx/afl/, afl-fuzz}
The rest of v2 looks good. :-)
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 21/29] gnu: Add ocaml-pbkdf.
2021-08-08 11:21 ` pukkamustard
@ 2021-08-09 9:53 ` Xinglu Chen
0 siblings, 0 replies; 99+ messages in thread
From: Xinglu Chen @ 2021-08-09 9:53 UTC (permalink / raw)
To: pukkamustard; +Cc: 49867
[-- Attachment #1: Type: text/plain, Size: 708 bytes --]
On Sun, Aug 08 2021, pukkamustard wrote:
> Xinglu Chen <public@yoctocell.xyz> writes:
>
>>> + (description "An OCaml implementation of PBKDF 1 and 2 as
>>> defined by
>>> +PKCS#5 using @code{ocaml-mirage-crypto}.")
>>
>> The description should contain full sentences, maybe
>>
>> "This package provides an OCaml implementation of …"
>
> Changed to: "This package provides an OCaml implementation of
> PBKDF 1 and 2 as defined by PKCS#5 using
> @code{ocaml-mirage-crypto}."
>
> Note: A version 1.2.0 was released recently. However, it requires
> CStruct 6.0.0. I will submit a patch to update ocaml-cstruct and
> then ocaml-pbkdf can be updated to 1.2.0.
Cool, sounds good.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH 00/29] gnu: Add ocaml-cohttp-lwt-unix.
2021-08-09 6:55 ` pukkamustard
2021-08-09 6:59 ` [bug#49867] [PATCH 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
@ 2021-08-09 9:55 ` Xinglu Chen
2 siblings, 0 replies; 99+ messages in thread
From: Xinglu Chen @ 2021-08-09 9:55 UTC (permalink / raw)
To: pukkamustard; +Cc: 49867
[-- Attachment #1: Type: text/plain, Size: 773 bytes --]
On Mon, Aug 09 2021, pukkamustard wrote:
> Xinglu Chen <public@yoctocell.xyz> writes:
>
>> I managed to package ‘ocaml-afl-persistent’ with the attached
>> patch,
>> but it doesn’t respect the ‘--without-tests’ transformation
>> since the
>> tests are run as part of the build phase.
>
> Fantastic! With your patch I've added ocaml-crowbar and enabled
> tests for ocaml-eqaf in V2.
>
> Tests for ocaml-crowbar are currently disabled as they require
> ocaml-xmldiff which requires OCaml 4.12.0.
>
>> Thanks for working on this!
>
> Thank you for your comments!
>
> V2 follows.
Great, thank you for the update!
I noticed that the ‘ocaml-uucp’ package, which is an input for ‘ocaml-crowbar’, is
missing. Otherwise v2 LGTM!
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 11/31] gnu: Add ocaml-crowbar.
2021-08-09 9:51 ` Xinglu Chen
@ 2021-08-09 11:13 ` Julien Lepiller
2021-08-09 12:39 ` Xinglu Chen
2021-08-10 8:00 ` pukkamustard
1 sibling, 1 reply; 99+ messages in thread
From: Julien Lepiller @ 2021-08-09 11:13 UTC (permalink / raw)
To: 49867, public, pukkamustard
Le 9 août 2021 05:51:58 GMT-04:00, Xinglu Chen <public@yoctocell.xyz> a écrit :
>On Mon, Aug 09 2021, pukkamustard wrote:
>
>> * gnu/packages/ocaml.scm (ocaml-crowbar): New variable.
>> ---
>> gnu/packages/ocaml.scm | 36 ++++++++++++++++++++++++++++++++++++
>> 1 file changed, 36 insertions(+)
>>
>> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
>> index 5a7acb4ba8..dba715d2f5 100644
>> --- a/gnu/packages/ocaml.scm
>> +++ b/gnu/packages/ocaml.scm
>> @@ -7528,6 +7528,42 @@ breaks, while respecting the constraints imposed by the structure of the
>> document and by the text width.")
>> (license license:lgpl2.0)))
>>
>> +(define-public ocaml-crowbar
>> + (package
>> + (name "ocaml-crowbar")
>> + (version "0.2")
>> + (home-page "https://github.com/stedolan/crowbar")
>> + (source
>> + (origin
>> + (method git-fetch)
>> + (uri (git-reference
>> + (url home-page)
>> + (commit (string-append "v" version))))
>> + (file-name (git-file-name name version))
>> + (sha256
>> + (base32
>> + "0wjfc9irvirfkic32ivvj6qb7r838w08b0d3vmngigbjpjyc9b14"))))
>> + (build-system dune-build-system)
>> + (arguments
>> + ;; Tests require ocaml-xmldiff which requires OCaml 4.12.0
>> + `(#:tests? #f))
>> + (propagated-inputs
>> + `(("ocaml-ocplib-endian" ,ocaml-ocplib-endian)
>> + ("ocaml-cmdliner" ,ocaml-cmdliner)
>> + ("ocaml-afl-persistent" ,ocaml-afl-persistent)))
>> + (native-inputs
>> + `(("ocaml-calendar" ,ocaml-calendar)
>> + ("ocaml-fpath" ,ocaml-fpath)
>> + ("ocaml-uucp" ,ocaml-uucp)
>
>The ‘ocaml-uucp’ package hasn’t been packaged yet.
It has, I just pushed it yesterday :)
>
>> + ("ocaml-uunf" ,ocaml-uunf)
>> + ("ocaml-uutf" ,ocaml-uutf)
>> + ("ocaml-pprint" ,ocaml-pprint)))
>> + (synopsis "Ocaml library for tests, let a fuzzer find failing cases")
>> + (description "Crowbar is a library for testing code, combining QuickCheck-style
>> +property-based testing and the magical bug-finding powers of
>> +[afl-fuzz](http://lcamtuf.coredump.cx/afl/).")
>
>Texinfo formatting:
>
> @uref{http://lcamtuf.coredump.cx/afl/, afl-fuzz}
>
>The rest of v2 looks good. :-)
>
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 11/31] gnu: Add ocaml-crowbar.
2021-08-09 11:13 ` Julien Lepiller
@ 2021-08-09 12:39 ` Xinglu Chen
0 siblings, 0 replies; 99+ messages in thread
From: Xinglu Chen @ 2021-08-09 12:39 UTC (permalink / raw)
To: Julien Lepiller, 49867, pukkamustard
[-- Attachment #1: Type: text/plain, Size: 1911 bytes --]
On Mon, Aug 09 2021, Julien Lepiller wrote:
> Le 9 août 2021 05:51:58 GMT-04:00, Xinglu Chen <public@yoctocell.xyz> a écrit :
>>On Mon, Aug 09 2021, pukkamustard wrote:
>>
>>> * gnu/packages/ocaml.scm (ocaml-crowbar): New variable.
>>> ---
>>> gnu/packages/ocaml.scm | 36 ++++++++++++++++++++++++++++++++++++
>>> 1 file changed, 36 insertions(+)
>>>
>>> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
>>> index 5a7acb4ba8..dba715d2f5 100644
>>> --- a/gnu/packages/ocaml.scm
>>> +++ b/gnu/packages/ocaml.scm
>>> @@ -7528,6 +7528,42 @@ breaks, while respecting the constraints imposed by the structure of the
>>> document and by the text width.")
>>> (license license:lgpl2.0)))
>>>
>>> +(define-public ocaml-crowbar
>>> + (package
>>> + (name "ocaml-crowbar")
>>> + (version "0.2")
>>> + (home-page "https://github.com/stedolan/crowbar")
>>> + (source
>>> + (origin
>>> + (method git-fetch)
>>> + (uri (git-reference
>>> + (url home-page)
>>> + (commit (string-append "v" version))))
>>> + (file-name (git-file-name name version))
>>> + (sha256
>>> + (base32
>>> + "0wjfc9irvirfkic32ivvj6qb7r838w08b0d3vmngigbjpjyc9b14"))))
>>> + (build-system dune-build-system)
>>> + (arguments
>>> + ;; Tests require ocaml-xmldiff which requires OCaml 4.12.0
>>> + `(#:tests? #f))
>>> + (propagated-inputs
>>> + `(("ocaml-ocplib-endian" ,ocaml-ocplib-endian)
>>> + ("ocaml-cmdliner" ,ocaml-cmdliner)
>>> + ("ocaml-afl-persistent" ,ocaml-afl-persistent)))
>>> + (native-inputs
>>> + `(("ocaml-calendar" ,ocaml-calendar)
>>> + ("ocaml-fpath" ,ocaml-fpath)
>>> + ("ocaml-uucp" ,ocaml-uucp)
>>
>>The ‘ocaml-uucp’ package hasn’t been packaged yet.
>
> It has, I just pushed it yesterday :)
Ah, forgot to pull :-)
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 11/31] gnu: Add ocaml-crowbar.
2021-08-09 9:51 ` Xinglu Chen
2021-08-09 11:13 ` Julien Lepiller
@ 2021-08-10 8:00 ` pukkamustard
2021-08-10 12:04 ` Xinglu Chen
1 sibling, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-10 8:00 UTC (permalink / raw)
To: Xinglu Chen; +Cc: 49867
[-- Attachment #1: Type: text/plain, Size: 274 bytes --]
Xinglu Chen <public@yoctocell.xyz> writes:
>
> Texinfo formatting:
>
> @uref{http://lcamtuf.coredump.cx/afl/, afl-fuzz}
>
> The rest of v2 looks good. :-)
D'oh! Thanks!
The fixed patch is attached. I can also send the entire series
again as v3 if that is easier...
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: v3-0011-gnu-Add-ocaml-crowbar.patch --]
[-- Type: text/x-patch, Size: 2098 bytes --]
From c573ec927e8fd6ed99a05b3995144ff1c0cfb0b3 Mon Sep 17 00:00:00 2001
From: pukkamustard <pukkamustard@posteo.net>
Date: Mon, 9 Aug 2021 08:06:12 +0200
Subject: [PATCH v3 11/31] gnu: Add ocaml-crowbar.
* gnu/packages/ocaml.scm (ocaml-crowbar): New variable.
---
gnu/packages/ocaml.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 5a7acb4ba8..3c7a40d923 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7528,6 +7528,42 @@ breaks, while respecting the constraints imposed by the structure of the
document and by the text width.")
(license license:lgpl2.0)))
+(define-public ocaml-crowbar
+ (package
+ (name "ocaml-crowbar")
+ (version "0.2")
+ (home-page "https://github.com/stedolan/crowbar")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0wjfc9irvirfkic32ivvj6qb7r838w08b0d3vmngigbjpjyc9b14"))))
+ (build-system dune-build-system)
+ (arguments
+ ;; Tests require ocaml-xmldiff which requires OCaml 4.12.0
+ `(#:tests? #f))
+ (propagated-inputs
+ `(("ocaml-ocplib-endian" ,ocaml-ocplib-endian)
+ ("ocaml-cmdliner" ,ocaml-cmdliner)
+ ("ocaml-afl-persistent" ,ocaml-afl-persistent)))
+ (native-inputs
+ `(("ocaml-calendar" ,ocaml-calendar)
+ ("ocaml-fpath" ,ocaml-fpath)
+ ("ocaml-uucp" ,ocaml-uucp)
+ ("ocaml-uunf" ,ocaml-uunf)
+ ("ocaml-uutf" ,ocaml-uutf)
+ ("ocaml-pprint" ,ocaml-pprint)))
+ (synopsis "Ocaml library for tests, let a fuzzer find failing cases")
+ (description "Crowbar is a library for testing code, combining
+QuickCheck-style property-based testing and the magical bug-finding powers of
+@uref{http://lcamtuf.coredump.cx/afl/, afl-fuzz}.")
+ (license license:expat)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.32.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 11/31] gnu: Add ocaml-crowbar.
2021-08-10 8:00 ` pukkamustard
@ 2021-08-10 12:04 ` Xinglu Chen
0 siblings, 0 replies; 99+ messages in thread
From: Xinglu Chen @ 2021-08-10 12:04 UTC (permalink / raw)
To: pukkamustard; +Cc: 49867
[-- Attachment #1: Type: text/plain, Size: 466 bytes --]
On Tue, Aug 10 2021, pukkamustard wrote:
> Xinglu Chen <public@yoctocell.xyz> writes:
>
>>
>> Texinfo formatting:
>>
>> @uref{http://lcamtuf.coredump.cx/afl/, afl-fuzz}
>>
>> The rest of v2 looks good. :-)
>
> D'oh! Thanks!
>
> The fixed patch is attached. I can also send the entire series
> again as v3 if that is easier...
The patch looks good, but I don’t have commit access, so you will have
to wait for someone else to merge it. :-)
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 13/31] gnu: Add ocaml-mirage-crypto.
2021-08-09 7:01 ` [bug#49867] [PATCH v2 13/31] gnu: Add ocaml-mirage-crypto pukkamustard
@ 2021-08-21 14:01 ` Julien Lepiller
2021-08-23 14:27 ` pukkamustard
2021-09-08 8:53 ` pukkamustard
0 siblings, 2 replies; 99+ messages in thread
From: Julien Lepiller @ 2021-08-21 14:01 UTC (permalink / raw)
To: pukkamustard; +Cc: 49867
Trying to build ocaml-mirage-crypto, I get errors during the tests:
ocamlopt tests/test_symmetric_runner.exe (exit 2)
Error: Files
/gnu/store/id3dchcsw5gijsnn73kw5sn9ymjj90ai-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/bigstring/eqaf_bigstring.cmxa
and
/gnu/store/id3dchcsw5gijsnn73kw5sn9ymjj90ai-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/eqaf.cmxa
make inconsistent assumptions over implementation Eqaf
this seems to indicate Eqaf did not build properly? Does it build for
you?
also, minor but there's a typo in the synopsis "provding" ->
"providing".
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 13/31] gnu: Add ocaml-mirage-crypto.
2021-08-21 14:01 ` Julien Lepiller
@ 2021-08-23 14:27 ` pukkamustard
2021-08-23 16:52 ` pukkamustard
2021-09-08 8:53 ` pukkamustard
1 sibling, 1 reply; 99+ messages in thread
From: pukkamustard @ 2021-08-23 14:27 UTC (permalink / raw)
To: Julien Lepiller; +Cc: 49867
Julien Lepiller <julien@lepiller.eu> writes:
> Trying to build ocaml-mirage-crypto, I get errors during the
> tests:
>
> ocamlopt tests/test_symmetric_runner.exe (exit 2)
>
> Error: Files
> /gnu/store/id3dchcsw5gijsnn73kw5sn9ymjj90ai-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/bigstring/eqaf_bigstring.cmxa
> and
> /gnu/store/id3dchcsw5gijsnn73kw5sn9ymjj90ai-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/eqaf.cmxa
> make inconsistent assumptions over implementation Eqaf
>
> this seems to indicate Eqaf did not build properly? Does it
> build for
> you?
Negative. Can confirm that ocaml-mirage-crypto does not build when
rebased on master. I will investigate.
> also, minor but there's a typo in the synopsis "provding" ->
> "providing".
Oops. Will fix.
-pukkamustard
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 13/31] gnu: Add ocaml-mirage-crypto.
2021-08-23 14:27 ` pukkamustard
@ 2021-08-23 16:52 ` pukkamustard
0 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-08-23 16:52 UTC (permalink / raw)
To: pukkamustard; +Cc: 49867, Julien Lepiller
pukkamustard <pukkamustard@posteo.net> writes:
> Julien Lepiller <julien@lepiller.eu> writes:
>
>> Trying to build ocaml-mirage-crypto, I get errors during the
>> tests:
>>
>> ocamlopt tests/test_symmetric_runner.exe (exit 2)
>>
>> Error: Files
>> /gnu/store/id3dchcsw5gijsnn73kw5sn9ymjj90ai-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/bigstring/eqaf_bigstring.cmxa
>> and
>> /gnu/store/id3dchcsw5gijsnn73kw5sn9ymjj90ai-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/eqaf.cmxa
>> make inconsistent assumptions over implementation Eqaf
>>
>> this seems to indicate Eqaf did not build properly? Does it
>> build for
>> you?
>
> Negative. Can confirm that ocaml-mirage-crypto does not build
> when rebased on
> master. I will investigate.
This seems to be related to the recently added dune profile
parameter (https://issues.guix.gnu.org/49868).
The installed eqaf.cmxa seems to be the one built by using the
"dev" profile, whereas eqaf_bigstring.cmxa is expecting the Eqaf
module built with the "release" profile:
```
$ ocamlobjinfo
/gnu/store/id3dchcsw5gijsnn73kw5sn9ymjj90ai-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/bigstring/eqaf_bigstring.cmxa
[..]
Implementations imported:
193f160ab58c2c455f4e1fe1425b8971 Eqaf
[..]
$ ocamlobjinfo
/gnu/store/id3dchcsw5gijsnn73kw5sn9ymjj90ai-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/eqaf.cmxa
[..]
CRC of implementation: f693310ffd4f92f54cd1fde8271782b8
[..]
```
With (arguments `(#:profile "dev")):
```
$ ocamlobjinfo
/gnu/store/v2s1h1is0ci2ij2h8k5fbna3j8ycrw9y-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/bigstring/eqaf_bigstring.cmxa
[..]
Implementations imported:
[..]
-------------------------------- Eqaf
$ ocamlobjinfo
/gnu/store/v2s1h1is0ci2ij2h8k5fbna3j8ycrw9y-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/eqaf.cmxa
[..]
CRC of implementation: f693310ffd4f92f54cd1fde8271782b8
[..]
```
When using the "dev" profile the ocaml-eqaf and
ocaml-mirage-crypto build and pass the checks.
(I assume that the missing CRC in eqaf_bigstring.cmxa means it
does not check the CRC of the Eqaf implementation.)
If I set (arguments `(#:package "eqaf")), then also everything
builds fine and the hashes seem to be right:
```
$ ocamlobjinfo
/gnu/store/cyw1n07cqdh25w5awww185s44yzbcyss-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/bigstring/eqaf_bigstring.cmxa
Implementations imported:
193f160ab58c2c455f4e1fe1425b8971 Eqaf
$ ocamlobjinfo
/gnu/store/cyw1n07cqdh25w5awww185s44yzbcyss-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/eqaf.cmxa
CRC of implementation: 193f160ab58c2c455f4e1fe1425b8971
```
This seems weird. I don't understand why dune installs the
eqaf.cmxa built with "dev" profile but eqaf_bigstring.cmxa with
"release" profile. Maybe this is a bug in dune?
It does seem that using the dune "--profile" options on its own is
not very common. Opam uses the dune "-p" option. This sets the
profile to "release" and does a couple of other things
(https://dune.readthedocs.io/en/stable/opam.html?highlight=build%20profile#invocation-from-opam).
I don't think many people use the "--profile" option on its own.
For our dune-build-system I think it makes more sense to always
use the "-p" flag. This requires adding the explicit OCaml
package(s) to many specifications in Guix. I also think the
"profile" parameter should be removed as the interactions with the
"package" parameter (dune "-p") are not as expected. Sorry for not
doing this research before submitting the patch that added the
"profile" parameter.
Thoughts?
-pukkamustard
^ permalink raw reply [flat|nested] 99+ messages in thread
* [bug#49867] [PATCH v2 13/31] gnu: Add ocaml-mirage-crypto.
2021-08-21 14:01 ` Julien Lepiller
2021-08-23 14:27 ` pukkamustard
@ 2021-09-08 8:53 ` pukkamustard
1 sibling, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-09-08 8:53 UTC (permalink / raw)
To: Julien Lepiller; +Cc: 49867
[-- Attachment #1: Type: text/plain, Size: 821 bytes --]
Julien Lepiller <julien@lepiller.eu> writes:
> Trying to build ocaml-mirage-crypto, I get errors during the tests:
>
> ocamlopt tests/test_symmetric_runner.exe (exit 2)
>
> Error: Files
> /gnu/store/id3dchcsw5gijsnn73kw5sn9ymjj90ai-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/bigstring/eqaf_bigstring.cmxa
> and
> /gnu/store/id3dchcsw5gijsnn73kw5sn9ymjj90ai-ocaml-eqaf-0.7/lib/ocaml/site-lib/eqaf/eqaf.cmxa
> make inconsistent assumptions over implementation Eqaf
>
> this seems to indicate Eqaf did not build properly? Does it build for
> you?
This seems to be fixed with the patch for using dune release mode
(https://issues.guix.gnu.org/49868#17).
> also, minor but there's a typo in the synopsis "provding" ->
> "providing".
Attached fixed patch for ocaml-mirage. I can resubmit the entire series
if that is easier.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0013-gnu-Add-ocaml-mirage-crypto.patch --]
[-- Type: text/x-patch, Size: 1936 bytes --]
From e5430a30e9f228963537cb5fe0dc8184252c2f1e Mon Sep 17 00:00:00 2001
From: pukkamustard <pukkamustard@posteo.net>
Date: Tue, 3 Aug 2021 12:03:23 +0200
Subject: [PATCH 13/31] gnu: Add ocaml-mirage-crypto.
* gnu/packages/ocaml.scm (ocaml-mirage-crypto): New variable.
---
gnu/packages/ocaml.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 75f6a24a84..8d00d6cb01 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -7635,6 +7635,37 @@ QuickCheck-style property-based testing and the magical bug-finding powers of
constant-time to avoid timing-attack with crypto stuff.")
(license license:expat)))
+(define-public ocaml-mirage-crypto
+ (package
+ (name "ocaml-mirage-crypto")
+ (version "0.10.3")
+ (home-page "https://github.com/mirage/mirage-crypto")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0j7x07c8xy8bmqp9ad1cib6j69dy7acjg9m1d7pn0dnmbkrl8fiz"))))
+ (build-system dune-build-system)
+ (arguments `(#:package "mirage-crypto"
+ #:test-target "."))
+ (propagated-inputs
+ `(("ocaml-cstruct" ,ocaml-cstruct)
+ ("ocaml-eqaf" ,ocaml-eqaf)
+ ("ocaml-bigarray-compat" ,ocaml-bigarray-compat)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("ocaml-ounit" ,ocaml-ounit)))
+ (synopsis "OCaml library providing cryptographic primitives")
+ (description "This OCaml library provides symmetric ciphers (DES, AES,
+RC4, ChaCha20/Poly1305), and hashes (MD5, SHA-1, SHA-2). This library can be
+used from MirageOS unikernels.")
+ (license license:isc)))
+
(define-public js-of-ocaml
(package
(name "js-of-ocaml")
--
2.33.0
^ permalink raw reply related [flat|nested] 99+ messages in thread
* bug#49867: [PATCH 00/29] gnu: Add ocaml-cohttp-lwt-unix.
2021-08-04 7:10 [bug#49867] [PATCH 00/29] gnu: Add ocaml-cohttp-lwt-unix pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
2021-08-05 15:38 ` [bug#49867] [PATCH 00/29] " Xinglu Chen
@ 2021-11-15 13:23 ` pukkamustard
2 siblings, 0 replies; 99+ messages in thread
From: pukkamustard @ 2021-11-15 13:23 UTC (permalink / raw)
To: 49867-done; +Cc: pukkamustard
Closing this issue for the moment as I'm no longer using
ocaml-cohttp-lwt-unix, it is a considerable series and effort is
probably better spent elsewhere.
Feel free to reopen or recycle if interested in the packages.
pukkamustard <pukkamustard@posteo.net> writes:
> Hi,
>
> These patches add ocaml-cohttp-lwt-unix - an OCaml HTTP library - and dependencies.
>
> Some known rough edges:
>
> - ocaml-eqaf: Tests are disabled for now as I am not able to build ocaml-afl-persistent which is a dependency for ocaml-crowbar which is required to run ocaml-eqaf tests. There is ongoing work to port ocaml-afl-persistent to dune (https://github.com/stedolan/ocaml-afl-persistent/pull/7) with that it should be much easier to build it and enable tests for ocaml-eqaf.
> - ocaml-mirage-crypto-ec: Contains generated code from Fiat-Crypto (https://github.com/mit-plv/fiat-crypto). It would be nicer to generate the C code from the Coq sources during Guix build, but that seems like a lot more work.
> - ocaml-ca-certs: Tests requie access to `/etc/ssl/certs/*` which does not seem to be available during tests. Any ways to allow this in the test environment?
> - ocaml-cohttp-lwt-unix: Seems to require network during tests. Can someone confirm this?
>
> Thanks,
> pukkamustard
>
>
> pukkamustard (29):
> gnu: Add ocaml-cohttp-lwt.
> gnu: Add ocaml-domain-name.
> gnu: Add ocaml-macaddr.
> gnu: Add ocaml-ipaddr.
> gnu: Add ocaml-ipaddr-cstruct.
> gnu: Add ocaml-ipaddr-sexp.
> gnu: Add ocaml-conduit.
> gnu: Add ocaml-conduit-lwt.
> gnu: Add ocaml-eqaf.
> gnu: Add ocaml-mirage-crypto.
> gnu: Add ocaml-duration.
> gnu: Add ocaml-randomconv.
> gnu: Add ocaml-mirage-crypto-rng.
> gnu: Add ocaml-mirage-crypto-pk.
> gnu: Add ocaml-ptime.
> gnu: Add ocaml-asn1-combinators.
> gnu: Add ocaml-ppx-deriving.
> gnu: Add ocaml-ppx-deriving-yojson.
> gnu: Add ocaml-mirage-crypto-ec.
> gnu: Add ocaml-gmap.
> gnu: Add ocaml-pbkdf.
> gnu: Add ocaml-cstruct-unix.
> gnu: Add ocaml-x509.
> gnu: Add ocaml-ca-certs.
> gnu: Add ocaml-lwt-log.
> gnu: Add ocaml-lwt-ssl.
> gnu: Add ocaml-conduit-lwt-unix.
> gnu: Add ocaml-magic-mime.
> gnu: Add ocaml-cohttp-lwt-unix
>
> gnu/packages/ocaml.scm | 787 ++++++++++++++++++++++++++++++++++++++++-
> 1 file changed, 786 insertions(+), 1 deletion(-)
^ permalink raw reply [flat|nested] 99+ messages in thread
end of thread, other threads:[~2021-11-15 13:36 UTC | newest]
Thread overview: 99+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-08-04 7:10 [bug#49867] [PATCH 00/29] gnu: Add ocaml-cohttp-lwt-unix pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 01/29] gnu: Add ocaml-cohttp-lwt pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 02/29] gnu: Add ocaml-domain-name pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 03/29] gnu: Add ocaml-macaddr pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 04/29] gnu: Add ocaml-ipaddr pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 05/29] gnu: Add ocaml-ipaddr-cstruct pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 06/29] gnu: Add ocaml-ipaddr-sexp pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 07/29] gnu: Add ocaml-conduit pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 08/29] gnu: Add ocaml-conduit-lwt pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 09/29] gnu: Add ocaml-eqaf pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 10/29] gnu: Add ocaml-mirage-crypto pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 11/29] gnu: Add ocaml-duration pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 12/29] gnu: Add ocaml-randomconv pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 13/29] gnu: Add ocaml-mirage-crypto-rng pukkamustard
2021-08-05 15:42 ` Xinglu Chen
2021-08-08 11:04 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 14/29] gnu: Add ocaml-mirage-crypto-pk pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 15/29] gnu: Add ocaml-ptime pukkamustard
2021-08-05 15:48 ` Xinglu Chen
2021-08-08 11:13 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 16/29] gnu: Add ocaml-asn1-combinators pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 17/29] gnu: Add ocaml-ppx-deriving pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 18/29] gnu: Add ocaml-ppx-deriving-yojson pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 19/29] gnu: Add ocaml-mirage-crypto-ec pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 20/29] gnu: Add ocaml-gmap pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 21/29] gnu: Add ocaml-pbkdf pukkamustard
2021-08-05 15:55 ` Xinglu Chen
2021-08-08 11:21 ` pukkamustard
2021-08-09 9:53 ` Xinglu Chen
2021-08-04 7:15 ` [bug#49867] [PATCH 22/29] gnu: Add ocaml-cstruct-unix pukkamustard
2021-08-05 16:02 ` Xinglu Chen
2021-08-08 11:24 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 23/29] gnu: Add ocaml-x509 pukkamustard
2021-08-05 16:04 ` Xinglu Chen
2021-08-08 11:29 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 24/29] gnu: Add ocaml-ca-certs pukkamustard
[not found] ` <87fsvnkgzk.fsf@yoctocell.xyz>
2021-08-08 12:36 ` pukkamustard
2021-08-09 9:30 ` Xinglu Chen
2021-08-04 7:15 ` [bug#49867] [PATCH 25/29] gnu: Add ocaml-lwt-log pukkamustard
2021-08-05 16:18 ` Xinglu Chen
2021-08-08 13:01 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 26/29] gnu: Add ocaml-lwt-ssl pukkamustard
2021-08-05 16:20 ` Xinglu Chen
2021-08-08 13:04 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 27/29] gnu: Add ocaml-conduit-lwt-unix pukkamustard
2021-08-05 16:20 ` Xinglu Chen
2021-08-08 13:06 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 28/29] gnu: Add ocaml-magic-mime pukkamustard
2021-08-05 16:22 ` Xinglu Chen
2021-08-08 13:07 ` pukkamustard
2021-08-04 7:15 ` [bug#49867] [PATCH 29/29] gnu: Add ocaml-cohttp-lwt-unix pukkamustard
2021-08-05 16:25 ` Xinglu Chen
2021-08-08 13:14 ` pukkamustard
2021-08-05 15:38 ` [bug#49867] [PATCH 00/29] " Xinglu Chen
2021-08-09 6:55 ` pukkamustard
2021-08-09 6:59 ` [bug#49867] [PATCH 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
2021-08-09 6:59 ` [bug#49867] [PATCH 02/31] gnu: Add ocaml-domain-name pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 01/31] gnu: Add ocaml-cohttp-lwt pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 02/31] gnu: Add ocaml-domain-name pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 03/31] gnu: Add ocaml-macaddr pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 04/31] gnu: Add ocaml-ipaddr pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 05/31] gnu: Add ocaml-ipaddr-cstruct pukkamustard
2021-08-09 7:00 ` [bug#49867] [PATCH v2 06/31] gnu: Add ocaml-ipaddr-sexp pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 07/31] gnu: Add ocaml-conduit pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 08/31] gnu: Add ocaml-conduit-lwt pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 09/31] gnu: Add ocaml-afl-persistent pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 10/31] gnu: Add ocaml-pprint pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 11/31] gnu: Add ocaml-crowbar pukkamustard
2021-08-09 9:51 ` Xinglu Chen
2021-08-09 11:13 ` Julien Lepiller
2021-08-09 12:39 ` Xinglu Chen
2021-08-10 8:00 ` pukkamustard
2021-08-10 12:04 ` Xinglu Chen
2021-08-09 7:01 ` [bug#49867] [PATCH v2 12/31] gnu: Add ocaml-eqaf pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 13/31] gnu: Add ocaml-mirage-crypto pukkamustard
2021-08-21 14:01 ` Julien Lepiller
2021-08-23 14:27 ` pukkamustard
2021-08-23 16:52 ` pukkamustard
2021-09-08 8:53 ` pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 14/31] gnu: Add ocaml-duration pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 15/31] gnu: Add ocaml-randomconv pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 16/31] gnu: Add ocaml-mirage-crypto-rng pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 17/31] gnu: Add ocaml-mirage-crypto-pk pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 18/31] gnu: Add ocaml-ptime pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 19/31] gnu: Add ocaml-asn1-combinators pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 20/31] gnu: Add ocaml-ppx-deriving pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 21/31] gnu: Add ocaml-ppx-deriving-yojson pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 22/31] gnu: Add ocaml-mirage-crypto-ec pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 23/31] gnu: Add ocaml-gmap pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 24/31] gnu: Add ocaml-pbkdf pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 25/31] gnu: Add ocaml-cstruct-unix pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 26/31] gnu: Add ocaml-x509 pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 27/31] gnu: Add ocaml-ca-certs pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 28/31] gnu: Add ocaml-lwt-ssl pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 29/31] gnu: Add ocaml-conduit-lwt-unix pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 30/31] gnu: Add ocaml-magic-mime pukkamustard
2021-08-09 7:01 ` [bug#49867] [PATCH v2 31/31] gnu: Add ocaml-cohttp-lwt-unix pukkamustard
2021-08-09 9:55 ` [bug#49867] [PATCH 00/29] " Xinglu Chen
2021-11-15 13:23 ` bug#49867: " pukkamustard
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).