"cleanest" way to resolve python2/python3 recipe file install conflicts?


Robert P. J. Day
 

was recently presented with the following issue involving a
zeus-based (actually, wind river LTS19-based -- effectively much the
same) issue.

group wants to move many python2 recipes to python3, but there is
apparently a need to keep python2, including quite a number of the
same recipes that will also be installed as python3 versions, which is
causing the following problem.

as a single example, in trying to install both versions of
"python{2,3}-chardet", it's entirely unsurprising for there to be a
file install conflict as both recipes want to install the same file
"/usr/bin/chardetect":

Error: Transaction check error:

  file /usr/bin/chardetect conflicts between attempted installs of
python-chardet-3.0.4-r0.core2_64and python3-chardet-3.0.4-r0.core2_64

until now, there were very few examples of that, and it was
"resolved" by do_install_append()ing one of the recipes to simply
delete its copy of that executable, leaving the other one. yuck.

given the many more examples of that now showing up, i don't want to
have to start doing that for every recipe conflict. my initial
reaction was to grumble, "are you really, really sure you need both
versions of the same recipe? really? seriously?"

am i overlooking something here? it seems that there are going to be
many dozen examples of that shortly, and i don't want to have to
bbappend every one of them in such a hacky way.

thoughts?

rday

Join yocto@lists.yoctoproject.org to automatically receive all group messages.