> The current python eclass also uses some vars to specify the supported slots, > yes, but it is more > complex and harder to maintain in addition to the fact, that the dependency > part is hidden from the > package manager. > > I dont think, that you can tell portage with the current implementation, that > it should only install > python modules for python-2.6 by default and additionally python modules for > python-3.1 for selected > packages. Portage will also install newer slots of python, even when the user > does not request them > and no package requires them, which will result in unneeded and unused > versions on disk.
Beg my pardon, but that is untrue AFAIK. Portage will install packages only for active python version, unless USE_PYTHON is set. > And if you add a python slot or remove one, portage currently is not able to > see that and to > reinstall packages, which had modules installed for that slot. You need > another tool > (python-updater) to check that and to call the needed reinstalls. I agree with this fact, user should not be required to read additional documenation for portage to function as wanted. I'm very unfamiliar with inner workings of portage, but using python-updater implementation, USE_PYTHON behaviour shouldn't be that hard to implement? > > With my solution, there are only modules installed for selected slots. And if > you have selected a > slot, the related python version is pulled in by portage. If you disable that > slot, you can > reinstall those packages with --newuse option and then can remove that python > slot with --depclean. > No need for another tool, simple handling by the package manager Explicit is **** than implicit:) Cheers, Domen
signature.asc
Description: This is a digitally signed message part