From mboxrd@z Thu Jan 1 00:00:00 1970 From: Brett Gilio Subject: Re: Unresolable collision between ocaml packages Date: Thu, 06 Jun 2019 22:56:36 -0500 Message-ID: <877e9y1217.fsf@posteo.net> References: <87k1dz6awe.fsf@posteo.net> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:59704) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hZ5zk-0004uI-4B for help-guix@gnu.org; Thu, 06 Jun 2019 23:56:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hZ5zi-0004MD-KG for help-guix@gnu.org; Thu, 06 Jun 2019 23:56:48 -0400 Received: from mout02.posteo.de ([185.67.36.66]:46123) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hZ5zi-0004GD-31 for help-guix@gnu.org; Thu, 06 Jun 2019 23:56:46 -0400 Received: from submission (posteo.de [89.146.220.130]) by mout02.posteo.de (Postfix) with ESMTPS id 2B00C2400E5 for ; Fri, 7 Jun 2019 05:56:42 +0200 (CEST) In-reply-to: List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: Julien Lepiller Cc: help-guix@gnu.org Julien Lepiller writes: > Le 6 juin 2019 08:06:42 GMT+02:00, Julien Lepiller a= =C3=A9crit : >>Le 5 juin 2019 22:21:37 GMT+02:00, Brett Gilio a >>=C3=A9crit : >>>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=E2=80=A6") >>>In guix/build/profiles.scm: >>> 157:2 5 (build-profile "/gnu/store/c2khaalrpy7cdyr8k4lawgqnbzs=E2=80= =A6" >>=E2=80=A6) >>>In unknown file: >>> 4 (hash-for-each # >>=E2=80=A6) >>> 3 (hash-for-each # >>=E2=80=A6) >>> 2 (hash-for-each # >>=E2=80=A6) >>> 1 (hash-for-each # >>=E2=80=A6) >>> 0 (scm-error misc-error #f "~A ~S" ("union-build: col=E2=80=A6= " =E2=80=A6) >>=E2=80=A6) >>> >>>ERROR: In procedure scm-error: >>>union-build: collision between file and directories ((files >>>("/gnu/store/h1w5b2l1wny94cnfqm46w12nm3w8wz2k-ocaml-num-1.1/lib/ocaml/si= te-lib/stublibs")) >>>(dirs >>>("/gnu/store/93lp6k3d58dfc8gvx9zd70szapsb5kv6-ocaml-base-0.11.1/lib/ocam= l/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/li= b/ocaml/site-lib/stublibs" >>>"/gnu/store/zrpcrfrmyanhqpvhxkclpgiq2sp7k1ip-ocaml-bin-prot-0.11.0/lib/o= caml/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/ocam= l/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/s= ite-lib/stublibs" >>>"/gnu/store/qzkydyr8rrbpfk2lfjynnhgdbavf4kh0-ocaml-ssl-0.5.7/lib/ocaml/s= ite-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 cmdl= iner 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!