Re: The python command in Debian

2020-07-13 Thread Hans-Christoph Steiner



Ondrej Novy:
> Hi,
> 
> čt 9. 7. 2020 v 15:27 odesílatel Matthias Klose  napsal:
> 
>> Describing here a solution which is implemented for Ubuntu focal (20.04
>> LTS).  A
>> new source package what-is-python (-perl-dont-hurt-me) ships binary
>> packages
>> python-is-python2, python-dev-is-python2, python-is-python3 and
>> python-dev-is-python3.  The python-is-python2 package provides the python
>> package, such that packages that still depend on python are not removed on
>> a
>> distro upgrade.  On new installs, python-is-python3 is not installed by
>> default,
>> but the user gets a hint from command-not-found to install the package if
>> he
>> tries to run python.  Package dependencies on the new four binary packages
>> have
>> to be disallowed in the Python policy.  Note that such a package including
>> the
>> Provides should only be uploaded once all dependencies on the unversioned
>> python
>> packages are gone.
>>
> 
> I like this solution in Ubuntu and I have:
> onovy@jupiter:~$ dpkg -l | grep python-is-python3
> ii  python-is-python3  3.8.2-4
>   all  symlinks /usr/bin/python to python3
> 
> What I think is good idea:
> * keep "python" command pointing to python2.7 if I'm upgrading
> buster->bullseye with python2.7 installed. We are going to keep python2.7
> interpreter for bullseye, so don't break old "python" command for
> third-parties apps/scripts/etc. (install python-is-python2 during
> buster->bullseye upgrade)
> * allow users to choose if they want python=python3 (apt install
> python-is-python3)
> * (maybe?) python=python3 in new installs, because why not? (install
> python-is-python3 by default in clean install)
> 

I like this overall plan as laid out by Matthias.  And the above points
seem good, except I think it is a bad idea to keep 'python' pointing to
python2.7 on upgrade.  Python 2.7 is no longer maintained, and as
Matthias said, it should only be used as a Build-Depends for very
specific cases.  I think users should either be prompted with a
question, or should have to manually install python-is-python2.  We want
to help users leave Python 2.x behind, not pretend its still OK to use it.

.hc



Re: The python command in Debian

2020-07-13 Thread Fabrice BAUZAC-STEHLY
Hi,

Another solution would be to simply use the update-alternatives system
to manage /usr/bin/python.  python3 would have a higher priority than
python2.  Users would still have the possibility to switch
/usr/bin/python to python2 explicitly if they require it...

--
Fabrice BAUZAC-STEHLY
PGP 015AE9B25DCB0511D200A75DE5674DEA514C891D



Re: The python command in Debian

2020-07-13 Thread Matthias Klose
On 7/13/20 6:23 PM, Fabrice BAUZAC-STEHLY wrote:
> Hi,
> 
> Another solution would be to simply use the update-alternatives system
> to manage /usr/bin/python.  python3 would have a higher priority than
> python2.  Users would still have the possibility to switch
> /usr/bin/python to python2 explicitly if they require it...

No, never ever. update-alternatives cannot be used because it breaks the
dependency system.