help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Unresolable collision between ocaml packages


From: Julien Lepiller
Subject: Re: Unresolable collision between ocaml packages
Date: Thu, 06 Jun 2019 15:16:31 +0200
User-agent: K-9 Mail for Android

Le 6 juin 2019 08:06:42 GMT+02:00, Julien Lepiller <address@hidden> a écrit :
>Le 5 juin 2019 22:21:37 GMT+02:00, Brett Gilio <address@hidden> a
>écrit :
>>Hi all,
>>
>>I like to make meta-packages that I can pass to `guix environment
>>--ad-hoc` for development. I have the following meta package for ocaml
>>
>>(define-public meta-ocaml
>>  (package
>>   (inherit %meta-base)
>>   (name "meta-ocaml")
>>   (propagated-inputs
>>    `(("meta-emacs" ,meta-emacs)
>>      ("darcs" ,darcs)
>>      ("dune" ,dune)
>>      ("emacs-tuareg" ,emacs-tuareg)
>>      ("gcc-toolchain" ,gcc-toolchain)
>>      ("m4" ,m4)
>>      ("make" ,gnu-make)
>>      ("mercurial" ,mercurial)
>>      ("ocaml" ,ocaml)
>>      ("ocaml-base" ,ocaml-base)
>>      ("ocaml-core" ,ocaml-core)
>>      ("ocaml-ctypes" ,ocaml-ctypes)
>>      ("ocaml-findlib" ,ocaml-findlib)
>>      ("ocaml-merlin" ,ocaml-merlin)
>>      ("ocaml-ounit" ,ocaml-ounit)
>>      ("oocaml-parsexp"
>>       ,ocaml-parsexp)
>>      ("ocaml-utop" ,ocaml-utop)
>>      ("opam" ,opam)
>>      ("rsync" ,rsync)))))
>>
>>
>>When trying to use that in an environment, I am getting the following
>>backtrace claiming there is a collision that I assume is not getting
>>resolved in its usual fashion.
>>
>>Backtrace:
>>           6 (primitive-load
>"/gnu/store/k45l4ph58xakp3f52kmridr9wyc…")
>>In guix/build/profiles.scm:
>>   157:2  5 (build-profile "/gnu/store/c2khaalrpy7cdyr8k4lawgqnbzs…"
>…)
>>In unknown file:
>>          4 (hash-for-each #<procedure 105c180 at guix/build/union…>
>…)
>>          3 (hash-for-each #<procedure 10b3900 at guix/build/union…>
>…)
>>          2 (hash-for-each #<procedure 110b180 at guix/build/union…>
>…)
>>          1 (hash-for-each #<procedure 14368c0 at guix/build/union…>
>…)
>>          0 (scm-error misc-error #f "~A ~S" ("union-build: col…" …)
>…)
>>
>>ERROR: In procedure scm-error:
>>union-build: collision between file and directories ((files
>>("/gnu/store/h1w5b2l1wny94cnfqm46w12nm3w8wz2k-ocaml-num-1.1/lib/ocaml/site-lib/stublibs"))
>>(dirs
>>("/gnu/store/93lp6k3d58dfc8gvx9zd70szapsb5kv6-ocaml-base-0.11.1/lib/ocaml/site-lib/stublibs"
>>"/gnu/store/7vrg8apsnl6hg9vsszpgcq4ymvz9whap-ocaml-core-0.11.3/lib/ocaml/site-lib/stublibs"
>>"/gnu/store/iz6wzz9sm4qnal2wlqi66blm8mb35zxv-ocaml-core-kernel-0.11.1/lib/ocaml/site-lib/stublibs"
>>"/gnu/store/zrpcrfrmyanhqpvhxkclpgiq2sp7k1ip-ocaml-bin-prot-0.11.0/lib/ocaml/site-lib/stublibs"
>>"/gnu/store/n70q0ypcv74vpwdd0354rjxi7mv9y1rf-ocaml-ppx-inline-test-0.12.0/lib/ocaml/site-lib/stublibs"
>>"/gnu/store/q42ayh04wy70pl2xdm2yp2i0s8yh5g7b-ocaml-ppx-expect-0.12.0/lib/ocaml/site-lib/stublibs"
>>"/gnu/store/cwijnaplps7zbby3xq21spjk4fgxpd35-ocaml-spawn-0.13.0/lib/ocaml/site-lib/stublibs"
>>"/gnu/store/09b6pfbw3n1j2qqni822wjjixh48qwfp-ocaml-lambda-term-1.13/lib/ocaml/site-lib/stublibs"
>>"/gnu/store/zlibrm9b6pa8hgwmjigzwm2cq3kb4y1r-ocaml-lwt-4.1.0/lib/ocaml/site-lib/stublibs"
>>"/gnu/store/qzkydyr8rrbpfk2lfjynnhgdbavf4kh0-ocaml-ssl-0.5.7/lib/ocaml/site-lib/stublibs"
>>"/gnu/store/sqkcaap13wgbjdqnjia8hi12rf2p5qf1-ocaml-dose3-5.0.1/lib/ocaml/site-lib/stublibs"
>>"/gnu/store/wnl6maf9s6ksvszyy9q2bz0psiy1h15j-ocaml-mccs-1.1+9/lib/ocaml/site-lib/stublibs")))
>>
>>
>>If formatting is bad in this email, here are plaintext pastes.
>>
>>meta-packages.scm : http://ix.io/1L1A
>>
>>backtrace : http://ix.io/1L1B
>
>Looks like ocaml-num's stubslib is a file, but it should be a
>directory. I'll investigate, thanks for reporting this!

This is now fixed in master. I also found a reproducibility issue in cmdliner 
while making sure my change didn't break anything and it's also fixed in Guix, 
and a patch was sent upstream :)

So you can run guix pull and enjoy your metapackage!



reply via email to

[Prev in Thread] Current Thread [Next in Thread]