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