unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: Leo Famulari <leo@famulari.name>
To: carl hansen <carlhansen1234@gmail.com>
Cc: help-guix@gnu.org
Subject: Re: Fwd: warning: collision encountered
Date: Fri, 29 Jan 2016 02:42:48 -0500	[thread overview]
Message-ID: <20160129074248.GA4692@jasmine> (raw)
In-Reply-To: <CAHEkXCSr1JNe4o3-_bZky6tayfPQ8jn2NmKsJj_NQsiM3peMNA@mail.gmail.com>

On Thu, Jan 28, 2016 at 09:46:48PM -0800, carl hansen wrote:
> On Thu, Jan 28, 2016 at 7:44 PM, Leo Famulari <leo@famulari.name> wrote:
> 
> > On Thu, Jan 28, 2016 at 05:24:36PM -0800, carl hansen wrote:

[...]

> Yes this is a continuation of my previous question. Thanks for response. I
> didn't
> show the complete output. But I tried to show there are 13987 LINES in the
> error
> messages. It's not so much the particular cases, it's Why is this happening
> at all?
> Did I do smething wrong or is this software error? ANd, what is the proper
> procedure to
> removal of one of the options?

The cause is that you installed some packages that happen to contain
the same paths.

In your current Guix profile, there are multiple packages providing
those "colliding" files.

You could try splitting your profile up into different package manifests
[0] that are organized around specific tasks you need to do. Then, you
can create a new profile based on that manifest when you want to use
those packages. Based on the collision between gcj and gccgo, you could
create one manifest for Java programming, one for Go programming, etc.
This would reduce the chance of collisions by reducing the set of
packages in your profile at any given time, but that's it. And of
course, you may actually need to use gcj and gccgo together, in which
case this approach would not be an option.

Also, once in a while I need to use a program for a little while and I
don't expect to need it again for a long time and I don't care if it
gets garbage collected later on. In that case, I (ab)use `guix
environment --ad-hoc` to just get it momentarily in that shell.

I welcome other users' suggestions on mitigating collisions!

My understanding is that collisions are addressed on a case-by-case
basis, sometimes at the package level, or sometimes in the build system
as discussed in this thread:
https://lists.gnu.org/archive/html/guix-devel/2015-09/msg00213.html

> Is it something like:   <http://libatomic.la>
> guix package -r /gnu/store/wfvxxpdhnzd59vkad1zasm4f858giv9a-gcj-4.9.3/lib/
> libatomic.la
> or is it
> guix package -r /gnu/store/wfvxxpdhnzd59vkad1zasm4f858giv9a-gcj-4.9.3
> or is it
> guix package -r / gcj

$ guix package -r gcj

You cannot remove "components" of the gcj package as attempted in some
of those examples.

> And can it be done globally?

If you are using Guix on a "foreign distro", then there is no concept of
global packages — you only are affected by your current profile. On
GuixSD the administrator may provide global packages in the system
declaration.

> THere must be something I'm not doing correctly.

Nope! ;)

[0]
https://www.gnu.org/software/guix/manual/html_node/Invoking-guix-package.html#profile_002dmanifest

  parent reply	other threads:[~2016-01-29  7:42 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CAHEkXCQCi=TxZGDfDJMoaFcjVFmueKd9pr1CPhCvVfim-kiJOA@mail.gmail.com>
2016-01-29  1:24 ` Fwd: warning: collision encountered carl hansen
2016-01-29  3:44   ` Leo Famulari
2016-01-29  5:46     ` carl hansen
2016-01-29  6:22       ` carl hansen
2016-01-29  8:09         ` Leo Famulari
2016-01-29  7:42       ` Leo Famulari [this message]
2016-01-29  7:25   ` Ricardo Wurmus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160129074248.GA4692@jasmine \
    --to=leo@famulari.name \
    --cc=carlhansen1234@gmail.com \
    --cc=help-guix@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).