FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Gentoo > Gentoo User

 
 
LinkBack Thread Tools
 
Old 09-16-2012, 11:21 AM
Alan McKinnon
 
Default Samba wants to downgrade my python....

On Sun, 16 Sep 2012 18:59:33 +0800
Andrew Lowe <agl@wht.com.au> wrote:

> Hi all,
> I've got a media server that I'm in the process of installing
> Samba on. When I do:
>
> emerge -NuD --pretend samba
>
> I get a list of stuff that portage wants to install, including
> Python, V2.7.3, even though the machine already has V3.2.3 installed.
> I've also stripped down the USE variables to basically "server" and
> that's all and still for some reason portage wants to bring in Python
> - the older version, V2. I've even added a "-python" to packages.use
> and it still wants python, V2. I've had a look at the USE variables
> for the packages that follow Python in the emerge list and they
> either don't want python or already have "-python" set.
>
> Having a play around with equery also didn't reveal anything.
> Does anyone have any ideas as to what's causing old Python to be
> brought in? I haven't posted the whole "emerge --info" stuff yet as
> hopefully someone has come across this problem before.
>
> Any thoughts greatly appreciated,
>
> Andrew
>

Python is slotted (see gentoo docs for more info on SLOTS).

Samba is not downgrading python, it is asking for python-2.7 to be
installed alongside python-3.2 (so you will then have both).

Just accept what portage says and let it do it;s thing - there are many
packages out there that are not ported to python-3 yet so you almost
certainly are going to need python-2.7 at some point anyway.

--
Alan McKinnon
alan.mckinnon@gmail.com
 
Old 09-16-2012, 11:30 AM
Neil Bothwick
 
Default Samba wants to downgrade my python....

On Sun, 16 Sep 2012 18:59:33 +0800, Andrew Lowe wrote:

> I've had a look at the USE variables for the packages
> that follow Python in the emerge list and they either don't want python
> or already have "-python" set.

You've already had a reply about the slotted nature of python, but you
also need to understand that USE flags are not dependency lists. USE
flags cover optional features, if a package has an option python module,
bindings or scripts, a USE flag may determine whether they are installed.
But if a package needs python2, no amount of fudging with USE flags will
change that fact.


--
Neil Bothwick

Programmer (n): A red-eyed, mumbling mammal capable of conversing
with inanimate objects.
 
Old 09-16-2012, 11:31 AM
Marc Joliet
 
Default Samba wants to downgrade my python....

Am Sun, 16 Sep 2012 18:59:33 +0800
schrieb Andrew Lowe <agl@wht.com.au>:

> Hi all,

Hi,

> I've got a media server that I'm in the process of installing Samba on.
> When I do:
>
> emerge -NuD --pretend samba
>
> I get a list of stuff that portage wants to install, including Python,
> V2.7.3, even though the machine already has V3.2.3 installed. I've also
> stripped down the USE variables to basically "server" and that's all and
> still for some reason portage wants to bring in Python - the older
> version, V2. I've even added a "-python" to packages.use and it still
> wants python, V2. I've had a look at the USE variables for the packages
> that follow Python in the emerge list and they either don't want python
> or already have "-python" set.
>
> Having a play around with equery also didn't reveal anything. Does
> anyone have any ideas as to what's causing old Python to be brought in?
> I haven't posted the whole "emerge --info" stuff yet as hopefully
> someone has come across this problem before.

First of all: Python 2 and 3 are (partly) incompatible versions of the language.
They can be installed in parallel in different slots (the emerge output will
have contained "NS" at one point, for "New Slot"). So you are not so much
downgrading python as installing an older version in addition to the current
version. Although "older" and "newer" are misleading, since they have both been
under active development in parallel since Python 3 was released.

Second: you can use the "-t" (or "--tree") option of emerge to get a tree view
of the dependencies, so that you can see what exactly is pulling in
python-2.7.3. But it sounds like some dependency of samba has a hard dependency
on Python 2, so you probably cannot control it.

> Any thoughts greatly appreciated,
>
> Andrew

HTH
--
Marc Joliet
--
"People who think they know everything really annoy those of us who know we
don't" - Bjarne Stroustrup
 
Old 09-16-2012, 11:32 AM
Andrew Lowe
 
Default Samba wants to downgrade my python....

On 09/16/12 19:19, Randolph Maaßen wrote:

On Sep 16, 2012 1:05 PM, "Andrew Lowe" <agl@wht.com.au
<mailto:agl@wht.com.au>> wrote:
>
> Hi all,
> I've got a media server that I'm in the process of installing
Samba on. When I do:
>
> emerge -NuD --pretend samba
>
> I get a list of stuff that portage wants to install, including
Python, V2.7.3, even though the machine already has V3.2.3 installed.
I've also stripped down the USE variables to basically "server" and
that's all and still for some reason portage wants to bring in Python -
the older version, V2. I've even added a "-python" to packages.use and
it still wants python, V2. I've had a look at the USE variables for the
packages that follow Python in the emerge list and they either don't
want python or already have "-python" set.
>
> Having a play around with equery also didn't reveal anything.
Does anyone have any ideas as to what's causing old Python to be brought
in? I haven't posted the whole "emerge --info" stuff yet as hopefully
someone has come across this problem before.
>
> Any thoughts greatly appreciated,
>
> Andrew
>

Hi, when you are dealing with python always remember that the API has
changed between version 2 and 3 so python 3 can't handle python 2 scripts.

So what I think emerge is doing here is installing python 2.7 beside 3.2.

When you add the verbose flag to the emerge command, you will probably
see something like [ NS ] or [ uS ] at the beginning of the python line.
The S stands for new slot, so both version will be installedbecause
samba or one of it's dependency is using python 2 scripts.


Randolph,
You have guessed correctly, I get NS. But to me, the question is why do
I even need python at all for something that is a file sharing daemon?
I've turned off CUPS etc etc, I just want file sharing to the M$ world,
not all the other fluff. I suppose I'll have to have a look at the
ebuild to try and work out why this thingy wants Python, any python, in
the first place.


Andrew
 
Old 09-16-2012, 11:53 AM
Neil Bothwick
 
Default Samba wants to downgrade my python....

On Sun, 16 Sep 2012 19:32:11 +0800, Andrew Lowe wrote:

> I suppose I'll have to have a look at the
> ebuild to try and work out why this thingy wants Python, any python, in
> the first place.

Portage is written in Python, which raises the question of why you didn't
have python:2 installed in the first place. The samba ebuild doesn't
include a dependency on python, so you'll need to do and emerge -t to see
which packages do pull it in, but I suspect it is required by an eclass
inherited by one of the ebuilds.

If so, Samba itself does not need Python to do it's job, but portage
needs Python in order to install Samba. that would make it a build
dependency which could be uninstalled after Samba was merged, but I'd be
nervous about removing Python from any Gentoo system that uses portage.

--
Neil Bothwick

Top Oxymorons Number 47: Act naturally
 
Old 09-16-2012, 01:33 PM
Andrew Lowe
 
Default Samba wants to downgrade my python....

On 09/16/12 19:53, Neil Bothwick wrote:

On Sun, 16 Sep 2012 19:32:11 +0800, Andrew Lowe wrote:


I suppose I'll have to have a look at the
ebuild to try and work out why this thingy wants Python, any python, in
the first place.


Portage is written in Python, which raises the question of why you didn't
have python:2 installed in the first place. The samba ebuild doesn't
include a dependency on python, so you'll need to do and emerge -t to see
which packages do pull it in, but I suspect it is required by an eclass
inherited by one of the ebuilds.

If so, Samba itself does not need Python to do it's job, but portage
needs Python in order to install Samba. that would make it a build
dependency which could be uninstalled after Samba was merged, but I'd be
nervous about removing Python from any Gentoo system that uses portage.


Neil,
Looks like you've hit the nail on the head. The media machine has just
had a new install of Gentoo done and according to "eselect python list",
I only have V3.2. Nothing has been removed, just a few things added so
it looks like the default "install" only does V3.2. Looks like I'll have
to put up with it, the compile time on the little machine is a killer,
and let the install happen.


Thanks for the feedback everyone,

Andrew
 
Old 09-16-2012, 04:56 PM
Kerin Millar
 
Default Samba wants to downgrade my python....

Andrew Lowe wrote:

On 09/16/12 19:53, Neil Bothwick wrote:

On Sun, 16 Sep 2012 19:32:11 +0800, Andrew Lowe wrote:


I suppose I'll have to have a look at the
ebuild to try and work out why this thingy wants Python, any python, in
the first place.


Portage is written in Python, which raises the question of why you didn't
have python:2 installed in the first place. The samba ebuild doesn't
include a dependency on python, so you'll need to do and emerge -t to see
which packages do pull it in, but I suspect it is required by an eclass
inherited by one of the ebuilds.

If so, Samba itself does not need Python to do it's job, but portage
needs Python in order to install Samba. that would make it a build
dependency which could be uninstalled after Samba was merged, but I'd be
nervous about removing Python from any Gentoo system that uses portage.


Neil,
Looks like you've hit the nail on the head. The media machine has just
had a new install of Gentoo done and according to "eselect python list",
I only have V3.2. Nothing has been removed, just a few things added so
it looks like the default "install" only does V3.2. Looks like I'll have
to put up with it, the compile time on the little machine is a killer,
and let the install happen.


Portage works with either instance of python and its ebuild has
"python2" and "python3" USE flags. Alas, the build system of
sys-libs/talloc seems to require python:2.6 or python:2.7. I would
suggest adding dev-lang/python:2.7 to the world file so as to protect it
from being reaped by emerge --depclean, only to be required again for
future builds.


Incidentally, one of the first things I do on a Gentoo system is mask
>=dev-lang/python-3.0 and rebuild affected packages against python-2.7.
I have yet to find a single instance where having both installed is
helpful. Even major applications such as Django still don't support Py3k.


Regarding the increase in compilation time, you could get a head start
by grabbing a binary package from tinderbox.dev.gentoo.org.


Cheers,

--Kerin
 

Thread Tools




All times are GMT. The time now is 03:10 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright ©2007 - 2008, www.linux-archive.org