PSA: Debian Stretch, apt-listchanges, and Python 3

Matt Wheeler m at funkyhat.org
Mon Aug 29 21:58:24 EDT 2016


I think the real PSA is "don't mess with the system python(3) version".

On Mon, 29 Aug 2016 at 13:18 Chris Angelico <rosuav at gmail.com> wrote:

> If, like me, you build Python 3.6 from source and make it your default
> 'python3' binary, you may run into issues with the latest
> apt-listchanges, which has switched to using Python 3. The symptom is
>

This is a good example of the reason why it's a bad idea to mess with the
system python on any OS (and every so often people get berated on this list
for doing just that, although usually on OSX, where it's actually less of
an issue :).


> an ImportError trying to "import debconf", which is available in
> dist-packages in the system Python, but (naturally) isn't part of
> Python 3.6's install tree.
>
> My solution:
>
> sudo ln -s /usr/lib/python3/dist-packages/debconf.py
> /usr/local/lib/python3.6/site-packages/
>
> And then apt-listchanges happily sets itself up.
>

So you've managed to fix this issue, but what if there are others? I think
packages on Debian have a reasonable right to expect that the version of
python3 in the release is the version they are going to run on if they look
like `#!/usr/bin/env python3 ...`

Why not simply alias python3 to python3.6 for your user, or make use of
virtualenvs?



More information about the Python-list mailing list