unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* Unresolable collision between ocaml packages
@ 2019-06-05 20:21 Brett Gilio
  2019-06-06  6:06 ` Julien Lepiller
  0 siblings, 1 reply; 6+ messages in thread
From: Brett Gilio @ 2019-06-05 20:21 UTC (permalink / raw)
  To: help-guix

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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Unresolable collision between ocaml packages
  2019-06-05 20:21 Unresolable collision between ocaml packages Brett Gilio
@ 2019-06-06  6:06 ` Julien Lepiller
  2019-06-06 13:16   ` Julien Lepiller
  0 siblings, 1 reply; 6+ messages in thread
From: Julien Lepiller @ 2019-06-06  6:06 UTC (permalink / raw)
  To: help-guix, Brett Gilio

Le 5 juin 2019 22:21:37 GMT+02:00, Brett Gilio <brettg@posteo.net> 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!

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Unresolable collision between ocaml packages
  2019-06-06  6:06 ` Julien Lepiller
@ 2019-06-06 13:16   ` Julien Lepiller
  2019-06-07  3:56     ` Brett Gilio
  0 siblings, 1 reply; 6+ messages in thread
From: Julien Lepiller @ 2019-06-06 13:16 UTC (permalink / raw)
  To: help-guix, Brett Gilio

Le 6 juin 2019 08:06:42 GMT+02:00, Julien Lepiller <julien@lepiller.eu> a écrit :
>Le 5 juin 2019 22:21:37 GMT+02:00, Brett Gilio <brettg@posteo.net> 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!

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Unresolable collision between ocaml packages
  2019-06-06 13:16   ` Julien Lepiller
@ 2019-06-07  3:56     ` Brett Gilio
  2019-06-07  4:10       ` Viet Le
  0 siblings, 1 reply; 6+ messages in thread
From: Brett Gilio @ 2019-06-07  3:56 UTC (permalink / raw)
  To: Julien Lepiller; +Cc: help-guix


Julien Lepiller writes:

> Le 6 juin 2019 08:06:42 GMT+02:00, Julien Lepiller <julien@lepiller.eu> a écrit :
>>Le 5 juin 2019 22:21:37 GMT+02:00, Brett Gilio <brettg@posteo.net> 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!

Thanks Julien!

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Unresolable collision between ocaml packages
  2019-06-07  3:56     ` Brett Gilio
@ 2019-06-07  4:10       ` Viet Le
  2019-06-07  6:38         ` Julien Lepiller
  0 siblings, 1 reply; 6+ messages in thread
From: Viet Le @ 2019-06-07  4:10 UTC (permalink / raw)
  To: Brett Gilio; +Cc: help-guix

I did look into the cmdliner github and found the fix done 2 months ago:

https://github.com/dbuenzli/cmdliner/commit/2e395e35a40178685700d74e5d9529becdafd137

Viet

On Fri, 7 Jun 2019 at 04:56, Brett Gilio <brettg@posteo.net> wrote:

>
> Julien Lepiller writes:
>
> > Le 6 juin 2019 08:06:42 GMT+02:00, Julien Lepiller <julien@lepiller.eu>
> a écrit :
> >>Le 5 juin 2019 22:21:37 GMT+02:00, Brett Gilio <brettg@posteo.net> 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!
>
> Thanks Julien!
>
> --
Kind regards,
Viet

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Unresolable collision between ocaml packages
  2019-06-07  4:10       ` Viet Le
@ 2019-06-07  6:38         ` Julien Lepiller
  0 siblings, 0 replies; 6+ messages in thread
From: Julien Lepiller @ 2019-06-07  6:38 UTC (permalink / raw)
  To: Viet Le, Brett Gilio; +Cc: help-guix

Le 7 juin 2019 06:10:57 GMT+02:00, Viet Le <vietlq85@gmail.com> a écrit :
>I did look into the cmdliner github and found the fix done 2 months
>ago:
>
>https://github.com/dbuenzli/cmdliner/commit/2e395e35a40178685700d74e5d9529becdafd137
>
>Viet
>
>On Fri, 7 Jun 2019 at 04:56, Brett Gilio <brettg@posteo.net> wrote:
>
>>
>> Julien Lepiller writes:
>>
>> > Le 6 juin 2019 08:06:42 GMT+02:00, Julien Lepiller
><julien@lepiller.eu>
>> a écrit :
>> >>Le 5 juin 2019 22:21:37 GMT+02:00, Brett Gilio <brettg@posteo.net>
>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!
>>
>> Thanks Julien!
>>
>> --
>Kind regards,
>Viet

Indeed, I didn't look hard enough :)

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2019-06-07  6:38 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-06-05 20:21 Unresolable collision between ocaml packages Brett Gilio
2019-06-06  6:06 ` Julien Lepiller
2019-06-06 13:16   ` Julien Lepiller
2019-06-07  3:56     ` Brett Gilio
2019-06-07  4:10       ` Viet Le
2019-06-07  6:38         ` Julien Lepiller

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).