On Mon, 13 Apr 2015 07:48:25 +0200
Alan McKinnon <alan.mckin...@gmail.com> wrote:

> On 13/04/2015 03:07, »Q« wrote:
> > On Sun, 12 Apr 2015 21:35:07 +0300
> > Matti Nykyri <matti.nyk...@iki.fi> wrote:
> > 
> >>> On Apr 12, 2015, at 20:23, »Q« <boxc...@gmx.net> wrote:
> >>>
> >>> On Sun, 12 Apr 2015 11:12:38 +0200
> >>> "J. Roeleveld" <jo...@antarean.org> wrote:
> >>>   
> >>>> On Saturday, April 11, 2015 08:42:20 PM Alan Grimes wrote:  
> >>>   
> >>>>> PYTHON_TARGETS="${PYTHON_TARGETS} python2_7 python3_4"
> >>>>> PYTHON_SINGLE_TARGET="python2_7"  
> >>>>
> >>>> These are set in your profile, please do not override this.
> >>>> In other words, please remove these 2 lines.  
> >>>
> >>> I'm not the OP.  (I spend less time than him on maintaining my
> >>> system.)
> >>>
> >>> Should those variables really not be set in make.conf?  I added
> >>> them to make.conf some time back because portage complained about
> >>> them, and if I comment them out, it complains again, like so:
> > 
> >>>  The following REQUIRED_USE flag constraints are unsatisfied:
> >>>    python? ( exactly-one-of ( python_single_target_python3_3
> >>> python_single_target_python3_4 python_single_target_python2_7 ) )
> > 
> > [snip]
> > 
> >> This is because you have set the "python" use flag in your
> >> make.conf (or package.use).
> >>
> >> Remove the python useflag and the problem goes away. It is not set
> >> by the profile but by you. Do you really need it?
> > 
> > I enabled it globally (in make.conf), but I think I only need it
> > for one or two packages.  If I remove it from USE, I get portage
> > complaining about other things. 
> 
> 
> USE="python" is one of those flags that has no accurate meaning in
> real life, and the user needs to make an informed decision. It
> doesn't work like USE="sse" for example, which means packages that
> can use the sse instruction set  will compile for it. It's a fairly
> exact meaning.
> 
> USE="python" means "use python to do stuff" but stuff is not defined
> and it's usually hard to find out what it is for a given package. For
> some it means to build optional extra tools that run under python,
> for some it means to create python language bindings, and for others
> it could even mean some critical system function that is implemented
> in python and eats your kittens if not enabled. (sort of like how
> portage is implemented in python; there's no USE for it but you get
> the idea).
> 
> Usually, USE="python" should be set per-package if you need what it
> does. I had it in make.conf myself in my early days and kept getting
> into circular dependencies. Sorting that out took some effort.
> 
> Portage will almost certainly complain if you take something with
> far-reaching effects as USE="python" in make.conf and remove it.
> 
> So, take each thing it is complaining about and enable or disable it
> based on what you need. Tweak as necessary to get the result you want.

Thanks -- that all makes sense.  I'm pretty sure I have USE="python"
because I thought something like "I'm going to have python, so I might
as well let things use it", which I now see to be muddle-headed at
best.  

Since it's not causing me any troubles for now, I'll wean myself off of
USE="python" when there's some in which I can afford to fix whatever I
break during the process.


Reply via email to