Helmut Grohne wrote: > On Sat, Apr 20, 2013 at 04:44:08AM +0300, Uoti Urpala wrote: > > 3) P runs a script using system interpreter X, and depends on the > > interpreter environment supporting functionality provided by Q. > > Q needs to work for the arch matching installed version of X. > > P (all) +--> X (any) > `--> Q (any) > > The interpreter will most likely be M-A:allowed. So all P has to do here > is not add ":any" to its dependencies. Then everything should work out > here.
But that 'not add ":any"' is completely impractical. The default system interpreter can only have one architecture - what "#!/usr/bin/python3" executes. Multiple versions of that can not be coinstallable, and so it's completely unreasonable for a foreign package containing Python scripts to demand that you change your _default_ Python interpreter to another architecture. It would immediately lead to conflicts. In a sane system scripts written in pure Python must work with the default system interpreter, whatever architecture that is. > In the light of the above I do not quite understand what is missing to > support your use cases yet (besides an implementation). Can you explain > them in more detail? Examples would be helpful. Consider a package that contains a Python script (#!/usr/bin/python) doing image manipulation using python-imaging (Depends: python, python-imaging) and an i686 binary using embedded Python (Depends: libpython2.7, python-levenshtein). As above, installing this package must not require changing your default system python to i686. So the effective dependencies are: python:any, python-imaging:<whatever python is>, libpython2.7:i686, python-levenshtein:i686. -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/1366468972.1964.44.camel@glyph.nonexistent.invalid