Debian default Python interpreter version is 2.7, but it's possible to install a Python 3 interpreter from the base repository. With this change, if we set DIB_PYTHON_VERSION to 3, we install the python3 package from base, with python3-libs, python3-pip and python3-setuptools, and redefine python_path, effectively allowing Python 3 interpreter to be used in Debian. See a result of the job for building the ipa image here: https://review.opendev.org/705773 Change-Id: Idabfa94c2bff6e0de6daa0866084d5db14d7dcb0
dib-python
Adds a symlink to /usr/local/bin/dib-python
which points
at either a python2
or python3
executable as
appropriate.
In-chroot scripts should use this as their interpreter
(#!/usr/local/bin/dib-python
) to make scripts that are
compatible with both python2
and python3
. We
can not assume /usr/bin/python
exists, as some platforms
have started shipping with only Python 3.
DIB_PYTHON
will be exported as the python interpreter.
You should use this instead of python script.py
(e.g.
${DIB_PYTHON} script.py
). Note you can also call
/usr/local/bin/dib-python script.py
but in some
circumstances, such as creating a virtualenv
, it can create
somewhat confusing references to dib-python
that remain in
the built image.
This does not install a python if one does not exist, and instead fails.
This also exports a variable DIB_PYTHON_VERSION
which
will either be '2' or '3' depending on the python version which
dib-python points to.
Note
The dib-python
interpreter will be removed in
cleanup.d
. It is only intended for build scripts.