Skip to content

Shark no longer buildsΒ #71

@mdales

Description

@mdales

Shark no longer builds due to issues with mirage-crypto-rng-eio:

If I try to install this package I get:

File "vendor/obuilder/vendor/container-image/src/dune", line 19, characters 2-23:
19 |   mirage-crypto-rng-eio))
       ^^^^^^^^^^^^^^^^^^^^^
Error: Library "mirage-crypto-rng-eio" not found.
-> required by library "container-image" in
   _build/default/vendor/obuilder/vendor/container-image/src
-> required by executable main in src/bin/dune:2
-> required by _build/default/src/bin/main.exe
-> required by _build/install/default/bin/shark

And if you try too install mirage-crypto-rng-eio you get:

[ERROR] Package conflict!
  * Missing dependency:
    - mirage-crypto-rng-eio β†’ mirage-crypto-rng (= 0.11.3 | = 1.2.0)
    not available because the package is pinned to version 0.11.2

No solution found, exiting

This is because we pin mirage-crypto-rng to 0.11.2. According to @patricoferris :

unfortunately they removed mirage-crypto-rng-eio in later versions

So we need this pinning, but trying to pin all of mirage-crypto gets me to this error:

opam install mirage-crypto-rng-eio                                                                                                                                                                                       13:10

<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><>  🐫
[mirage-crypto-rng-eio.0.11.2] synchronised (no changes)

The following actions will be performed:
=== downgrade 1 package
  β†˜ mirage-crypto         1.2.0 to 0.11.2 (pinned) [required by mirage-crypto-rng]
=== install 2 packages
  βˆ— mirage-crypto-rng     0.11.2 (pinned)          [required by mirage-crypto-rng-eio]
  βˆ— mirage-crypto-rng-eio 0.11.2 (pinned)

Proceed with β†˜ 1 downgrade and βˆ— 2 installations? [y/n] y

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><>  🐫
⬇ retrieved mirage-crypto-rng.0.11.2  (no changes)
⬇ retrieved mirage-crypto.0.11.2  (no changes)
⬇ retrieved mirage-crypto-rng-eio.0.11.2  (no changes)
[ERROR] The compilation of mirage-crypto.0.11.2 failed at "dune build -p mirage-crypto -j 15".

#=== ERROR while compiling mirage-crypto.0.11.2 ===============================#
# context     2.3.0 | macos/arm64 | ocaml-base-compiler.5.3.0 | pinned(git+https://github.com/dinosaure/mirage-crypto.git#parallel#c0e29117be2d081b50a5f1a789b16c77585324a3)
# path        ~/.opam/blah/.opam-switch/build/mirage-crypto.0.11.2
# command     ~/.opam/opam-init/hooks/sandbox.sh build dune build -p mirage-crypto -j 15
# exit-code   1
# env-file    ~/.opam/log/mirage-crypto-87153-dc5a89.env
# output-file ~/.opam/log/mirage-crypto-87153-dc5a89.out
### output ###
# File "src/dune", line 4, characters 20-32:
# 4 |  (libraries cstruct eqaf.cstruct)
#                         ^^^^^^^^^^^^
# Error: Library "eqaf.cstruct" not found.
# -> required by library "mirage-crypto" in _build/default/src
# -> required by _build/default/META.mirage-crypto
# -> required by _build/install/default/lib/mirage-crypto/META
# -> required by _build/default/mirage-crypto.install
# -> required by alias install



<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><>  🐫
β”Œβ”€ The following actions failed
β”‚ Ξ» build mirage-crypto 0.11.2
└─
╢─ No changes have been performed

But I have eqaf-cstruct installed, just it claims not to find it.

The tl;dr is that shark has bit rotted due to unpinned updates, and so doesn't build.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions