On 7/4/22 22:04, William Kenworthy wrote:
> I synced portage a couple of days now and now my systems are rebuilding
> python modules for 3.10 without any input from me (prior to this 3.10
> was on the system but wasn't picked up by applications.)  This is
> breaking non portage apps like homeassistant which are still not fully
> 3.10 safe - ok that's sort of expected and in this case will be fixed,
> but I cant find anything definitive on the task of "I want to control
> which python is used" and when to update.

As Nikos mentioned in another reply, you should pay attention to the
eselect news items as python upgrades are usually announced weeks in
advance.

> 
> I eventually found that changing the order in python-exec.conf helped on
> the homeassistant system.

> There is a LOT of out of date documentation
> out there, particularly with eselect being used but is actually not used
> with python anymore (why? - from a user point of view having consistent
> access to configuration is a no brainer!)

I don't see any deprecation notice on
https://packages.gentoo.org/packages/app-eselect/eselect-python, but
someone could correct me.

> - so how can one get python to
> behave reliably and override its automatic get things wrong installation
> system?  Is manually editing python-exec.conf the way (which seems to
> get overwritten - shouldn't that be a protected config file then?)

The python package supports installing multiple versions to different
slots.  The easiest way I've found to run python software that depends
on a specific version, without mucking around with global python
settings, is to install the relevant version (e.g. emerge python:3.8)
and then use venv to run that software in a virtual environment
(python3.8 -m venv .env; .env/bin/python something.py).

> 
> BillK


Reply via email to