Re: Need a Python 3.8 virtual environment

2021-03-03 Thread Steven Robbins
Thank you so much to the many folks on debian-python who responded with 
instructions and pointers!

On Wednesday, March 3, 2021 4:45:46 A.M. CST Julien Palard wrote:

> As other  told, the right way is probably to compile it yourself (or use
> pyenv, but I don't like pyenv "shims", I prefer to keep it simple).

Thank you for the detailed instructions!  I used this method to build python 
myself and now I have the virtual environment set up.

Regards,
-Steve



signature.asc
Description: This is a digitally signed message part.


Re: Need a Python 3.8 virtual environment

2021-03-03 Thread Karthik
On Wed, Mar 3, 2021 at 8:56 AM Steven Robbins  wrote:
>
> Hi,
>
> I'm trying to use a (non-Debian) python system built on python 3.8.  Debian's
> default is currently 3.9 so I am advised to use a virtual environment.   Being
> a newbie, I searched around and found a writeup covering several different
> virtualization tools [1].   Note I am using Debian 'sid'.
>
> I can use the tool "virtualenv" to create a virtual environment for default
> python:
>
> steve@riemann:/tmp$ virtualenv blah
> created virtual environment CPython3.9.1.final.0-64 in 77ms
>   creator CPython3Posix(dest=/tmp/blah, clear=False, no_vcs_ignore=False,
> global=False)
>   seeder FromAppData(download=False, pip=bundle, setuptools=bundle,
> wheel=bundle, via=copy, app_data_dir=/home/steve/.local/share/virtualenv)
> added seed packages: pip==20.1.1, pkg_resources==0.0.0,
> setuptools==44.0.0, wheel==0.34.2
>   activators
> BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator
>
>
> But not for python 3.8:
>
> steve@riemann:/tmp$ virtualenv -p python3.8 blah38
> RuntimeError: failed to find interpreter for Builtin discover of
> python_spec='python3.8'
>
>
> I have installed literally all the Debian python packages whose name contains
> 'python3.8'.   A very short list:
>
> ii  libpython3.8:amd643.8.7-1
> amd64Shared Python runtime library (version 3.8)
> ii  libpython3.8-dev:amd643.8.7-1
> amd64Header files and a static library for Python (v3.8)
> ii  libpython3.8-minimal:amd643.8.7-1
> amd64Minimal subset of the Python language (version 3.8)
> ii  libpython3.8-stdlib:amd64 3.8.7-1
> amd64Interactive high-level object-oriented language (standard
> library, version 3.8)
> ii  python3.8 3.8.7-1
> amd64Interactive high-level object-oriented language (version 3.8)
> ii  python3.8-dev 3.8.7-1
> amd64Header files and a static library for Python (v3.8)
> ii  python3.8-minimal
>
>
>
> I have also tried the module 'venv':
>
> steve@riemann:/tmp$ python3.8 -m venv v38
> The virtual environment was not created successfully because ensurepip is not
> available.  On Debian/Ubuntu systems, you need to install the python3-venv
> package using the following command.
>
> apt-get install python3-venv
>
> You may need to use sudo with that command.  After installing the python3-venv
> package, recreate your virtual environment.
>
> Failing command: ['/tmp/v38/bin/python3.8', '-Im', 'ensurepip', '--upgrade',
> '--default-pip']
>
> steve@riemann:/tmp$ python3.8 -m venv blah38
> The virtual environment was not created successfully because ensurepip is not
> available.  On Debian/Ubuntu systems, you need to install the python3-venv
> package using the following command.
>
> apt-get install python3-venv
>
> You may need to use sudo with that command.  After installing the python3-venv
> package, recreate your virtual environment.
>
> Failing command: ['/tmp/blah38/bin/python3.8', '-Im', 'ensurepip', '--
> upgrade', '--default-pip']
>
>
> Note that I do have 'python3-venv' installed, but it is the 3.9 version:
> ii  python3-venv  3.9.1-1
> amd64pyvenv-3 binary for python3 (default python3 version)
>
>
> Is there something I've missed?
>
> Thank you,
> -Steve
>
> [1] 
> https://linuxconfig.org/how-to-set-up-a-python-virtual-environment-on-debian-10-buster


try using pyenv
https://mentors.debian.net/package/pyenv/



Re: Need a Python 3.8 virtual environment

2021-03-03 Thread Matthias Klose
On 3/3/21 6:56 PM, Andrey Rahmatullin wrote:
> On Wed, Mar 03, 2021 at 05:39:04PM +, Stefano Rivera wrote:
>> You need python3.8-venv. 
> Which doesn't exist, at least in the current repos.

you rebuild it from python3-stdlib-extensions. but yes, the binaries don't exist
in the archive.



Re: Need a Python 3.8 virtual environment

2021-03-03 Thread Andrey Rahmatullin
On Wed, Mar 03, 2021 at 05:39:04PM +, Stefano Rivera wrote:
> You need python3.8-venv. 
Which doesn't exist, at least in the current repos.

-- 
WBR, wRAR


signature.asc
Description: PGP signature


Re: Need a Python 3.8 virtual environment

2021-03-03 Thread Stefano Rivera
Hi Steven (2021.03.03_03:17:36_+)
> steve@riemann:/tmp$ python3.8 -m venv blah38
> The virtual environment was not created successfully because ensurepip is not
> available.  On Debian/Ubuntu systems, you need to install the python3-venv
> package using the following command.
> 
> apt-get install python3-venv
> 
> You may need to use sudo with that command.  After installing the python3-venv
> package, recreate your virtual environment.
> 
> Failing command: ['/tmp/blah38/bin/python3.8', '-Im', 'ensurepip', '--
> upgrade', '--default-pip']
> 
> 
> Note that I do have 'python3-venv' installed, but it is the 3.9 version:
> ii  python3-venv  3.9.1-1 
> 
> amd64pyvenv-3 binary for python3 (default python3 version)
> 
> 
> Is there something I've missed?  

You need python3.8-venv. But even then you may run into a
missing/incompatible distutils (#979819):
https://bugs.debian.org/979819

You can see if you have, by running the failing ensurepip command by
hand.

Hopefully we'll make that situation better soon...

BTW: There's a deadsnakes-like archive for Debian:
https://people.debian.org/~paravoid/python-all/

SR

-- 
Stefano Rivera
  http://tumbleweed.org.za/
  +1 415 683 3272



Re: Need a Python 3.8 virtual environment

2021-03-03 Thread Jeremy Stanley
On 2021-03-03 10:45:46 + (+), Julien Palard wrote:
[...]
> I'm using a bash function [1] to easily recompile needed Pythons (I test
> some projects with Python 3.5 to 3.9), but it's not that hard without my
> bash function:
[...]

This is pretty much identical to how I tackle it too, though I build
from tags checked out of the cpython Git repository.

If you're looking for prebuilt debs, I know some folks use this,
from what I understand the packages should be compatible with
reasonably contemporary Debian releases:

https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa

-- 
Jeremy Stanley


signature.asc
Description: PGP signature


Re: Need a Python 3.8 virtual environment

2021-03-03 Thread Andrey Rahmatullin
On Wed, Mar 03, 2021 at 08:32:01AM -0500, Yaroslav Halchenko wrote:
> > I'm trying to use a (non-Debian) python system built on python 3.8.  
> > Debian's 
> > default is currently 3.9 so I am advised to use a virtual environment.   
> > Being 
> > a newbie, I searched around and found a writeup covering several different 
> > virtualization tools [1].   Note I am using Debian 'sid'.
> 
> I know that it is not a "proper" Debian answer
Sure, the only proper Debian answer would be "actually you don't need this
version".

-- 
WBR, wRAR


signature.asc
Description: PGP signature


Re: Need a Python 3.8 virtual environment

2021-03-03 Thread Yaroslav Halchenko


On Tue, 02 Mar 2021, Steven Robbins wrote:

> Hi,

> I'm trying to use a (non-Debian) python system built on python 3.8.  Debian's 
> default is currently 3.9 so I am advised to use a virtual environment.   
> Being 
> a newbie, I searched around and found a writeup covering several different 
> virtualization tools [1].   Note I am using Debian 'sid'.

I know that it is not a "proper" Debian answer, but in such cases I just
quickly install miniconda with a needed python version.  I keep a
miniconda installation with conda environments for different Pythons
for such cases.

-- 
Yaroslav O. Halchenko
Center for Open Neuroscience http://centerforopenneuroscience.org
Dartmouth College, 419 Moore Hall, Hinman Box 6207, Hanover, NH 03755
WWW:   http://www.linkedin.com/in/yarik



Re: Need a Python 3.8 virtual environment

2021-03-03 Thread Julien Palard
Le 2021-03-03 à 04:17, Steven Robbins a écrit :
> I'm trying to use a (non-Debian) python system built on python 3.8.  Debian's
> default is currently 3.9 so I am advised to use a virtual environment.

As other  told, the right way is probably to compile it yourself (or use
pyenv, but I don't like pyenv "shims", I prefer to keep it simple).

I'm using a bash function [1] to easily recompile needed Pythons (I test
some projects with Python 3.5 to 3.9), but it's not that hard without my
bash function:

 apt install make build-essential libbz2-dev liblzma-dev libssl-dev
llvm libreadline-dev libncurses5-dev libffi-dev zlib1g-dev tk-dev
libsqlite3-dev xz-utils
 wget the version you want from https://www.python.org/ftp/python
 tar -xzf it
 ./configure --prefix=$HOME/.local/
 make -j $(nproc)
 make altinstall

You'll get a `python3.8` binary in ~/.local/bin, you can create venvs
with it as:

 python3.8 -m venv the_venv_path

[1]:
https://github.com/JulienPalard/dotfiles/blob/0b5feb79b1ba648b7212162b68da5a182e0341c1/.bashrc#L196
--
[Julien Palard](https://mdk.fr)



Re: Need a Python 3.8 virtual environment

2021-03-03 Thread Nicolas Chauvat
Hi Steven,

On Tue, Mar 02, 2021 at 09:17:36PM -0600, Steven Robbins wrote:

> I'm trying to use a (non-Debian) python system built on python 3.8.  Debian's 
> ...
> Is there something I've missed?  

Do you know https://github.com/saghul/pythonz ?

I do not use it myself, but a colleague told me he uses that when he
needs to test something with every python version available.

Hope this helps.

-- 
Nicolas Chauvat

logilab.fr - services en informatique scientifique et gestion de connaissances  



Re: Need a Python 3.8 virtual environment

2021-03-02 Thread Pokoradi Balazs

Hi Steven,

i tested in a freshly installed virtualbox machine and was able to 
create a virtual environment, using the following steps:


built python3.8.7 form tarball 
(|https://www.python.org/ftp/python/3.8.7/Python-3.8.7.tar.xz)|


ran python3.8 -m venv test387

and then could activate it.

I hope this helps,

Balazs

On 03/03/2021 03:17, Steven Robbins wrote:

Hi,

I'm trying to use a (non-Debian) python system built on python 3.8.  Debian's
default is currently 3.9 so I am advised to use a virtual environment.   Being
a newbie, I searched around and found a writeup covering several different
virtualization tools [1].   Note I am using Debian 'sid'.

I can use the tool "virtualenv" to create a virtual environment for default
python:

steve@riemann:/tmp$ virtualenv blah
created virtual environment CPython3.9.1.final.0-64 in 77ms
   creator CPython3Posix(dest=/tmp/blah, clear=False, no_vcs_ignore=False,
global=False)
   seeder FromAppData(download=False, pip=bundle, setuptools=bundle,
wheel=bundle, via=copy, app_data_dir=/home/steve/.local/share/virtualenv)
 added seed packages: pip==20.1.1, pkg_resources==0.0.0,
setuptools==44.0.0, wheel==0.34.2
   activators
BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator


But not for python 3.8:

steve@riemann:/tmp$ virtualenv -p python3.8 blah38
RuntimeError: failed to find interpreter for Builtin discover of
python_spec='python3.8'


I have installed literally all the Debian python packages whose name contains
'python3.8'.   A very short list:

ii  libpython3.8:amd643.8.7-1
amd64Shared Python runtime library (version 3.8)
ii  libpython3.8-dev:amd643.8.7-1
amd64Header files and a static library for Python (v3.8)
ii  libpython3.8-minimal:amd643.8.7-1
amd64Minimal subset of the Python language (version 3.8)
ii  libpython3.8-stdlib:amd64 3.8.7-1
amd64Interactive high-level object-oriented language (standard
library, version 3.8)
ii  python3.8 3.8.7-1
amd64Interactive high-level object-oriented language (version 3.8)
ii  python3.8-dev 3.8.7-1
amd64Header files and a static library for Python (v3.8)
ii  python3.8-minimal



I have also tried the module 'venv':

steve@riemann:/tmp$ python3.8 -m venv v38
The virtual environment was not created successfully because ensurepip is not
available.  On Debian/Ubuntu systems, you need to install the python3-venv
package using the following command.

 apt-get install python3-venv

You may need to use sudo with that command.  After installing the python3-venv
package, recreate your virtual environment.

Failing command: ['/tmp/v38/bin/python3.8', '-Im', 'ensurepip', '--upgrade',
'--default-pip']

steve@riemann:/tmp$ python3.8 -m venv blah38
The virtual environment was not created successfully because ensurepip is not
available.  On Debian/Ubuntu systems, you need to install the python3-venv
package using the following command.

 apt-get install python3-venv

You may need to use sudo with that command.  After installing the python3-venv
package, recreate your virtual environment.

Failing command: ['/tmp/blah38/bin/python3.8', '-Im', 'ensurepip', '--
upgrade', '--default-pip']


Note that I do have 'python3-venv' installed, but it is the 3.9 version:
ii  python3-venv  3.9.1-1
amd64pyvenv-3 binary for python3 (default python3 version)


Is there something I've missed?

Thank you,
-Steve

[1] 
https://linuxconfig.org/how-to-set-up-a-python-virtual-environment-on-debian-10-buster


Re: Need a Python 3.8 virtual environment

2021-03-02 Thread Andrey Rahmatullin
It looks like the only sane way to use non-default Python versions is to
build them locally using pyenv. 

-- 
WBR, wRAR


signature.asc
Description: PGP signature


Re: Need a Python 3.8 virtual environment

2021-03-02 Thread Jerome Kieffer
On Tue, 02 Mar 2021 21:17:36 -0600
Steven Robbins  wrote:

> Hi,
> 
> I'm trying to use a (non-Debian) python system built on python 3.8.  Debian's 
> default is currently 3.9 so I am advised to use a virtual environment.   
> Being 
> a newbie, I searched around and found a writeup covering several different 
> virtualization tools [1].   Note I am using Debian 'sid'.
[...]
> Is there something I've missed?  


Hi Steven,

I don't think there is any simple solution for you within the debian ecosystem.
As a developper, I faced the same issue and ended in installing `conda` to
have a quick access to the various python versions (then I create
some venv from the conda environments).

I doubt our use-case is common enough to justify having multiple python (again) 
in Debian.

Cheers,

Jerome

PS: venv are about 10x smaller than conda environments !



Need a Python 3.8 virtual environment

2021-03-02 Thread Steven Robbins
Hi,

I'm trying to use a (non-Debian) python system built on python 3.8.  Debian's 
default is currently 3.9 so I am advised to use a virtual environment.   Being 
a newbie, I searched around and found a writeup covering several different 
virtualization tools [1].   Note I am using Debian 'sid'.

I can use the tool "virtualenv" to create a virtual environment for default 
python:

steve@riemann:/tmp$ virtualenv blah
created virtual environment CPython3.9.1.final.0-64 in 77ms
  creator CPython3Posix(dest=/tmp/blah, clear=False, no_vcs_ignore=False, 
global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, 
wheel=bundle, via=copy, app_data_dir=/home/steve/.local/share/virtualenv)
added seed packages: pip==20.1.1, pkg_resources==0.0.0, 
setuptools==44.0.0, wheel==0.34.2
  activators 
BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator


But not for python 3.8:

steve@riemann:/tmp$ virtualenv -p python3.8 blah38
RuntimeError: failed to find interpreter for Builtin discover of 
python_spec='python3.8'


I have installed literally all the Debian python packages whose name contains 
'python3.8'.   A very short list:

ii  libpython3.8:amd643.8.7-1   
  
amd64Shared Python runtime library (version 3.8)
ii  libpython3.8-dev:amd643.8.7-1   
  
amd64Header files and a static library for Python (v3.8)
ii  libpython3.8-minimal:amd643.8.7-1   
  
amd64Minimal subset of the Python language (version 3.8)
ii  libpython3.8-stdlib:amd64 3.8.7-1   
  
amd64Interactive high-level object-oriented language (standard 
library, version 3.8)
ii  python3.8 3.8.7-1   
  
amd64Interactive high-level object-oriented language (version 3.8)
ii  python3.8-dev 3.8.7-1   
  
amd64Header files and a static library for Python (v3.8)
ii  python3.8-minimal   



I have also tried the module 'venv':

steve@riemann:/tmp$ python3.8 -m venv v38
The virtual environment was not created successfully because ensurepip is not
available.  On Debian/Ubuntu systems, you need to install the python3-venv
package using the following command.

apt-get install python3-venv

You may need to use sudo with that command.  After installing the python3-venv
package, recreate your virtual environment.

Failing command: ['/tmp/v38/bin/python3.8', '-Im', 'ensurepip', '--upgrade', 
'--default-pip']

steve@riemann:/tmp$ python3.8 -m venv blah38
The virtual environment was not created successfully because ensurepip is not
available.  On Debian/Ubuntu systems, you need to install the python3-venv
package using the following command.

apt-get install python3-venv

You may need to use sudo with that command.  After installing the python3-venv
package, recreate your virtual environment.

Failing command: ['/tmp/blah38/bin/python3.8', '-Im', 'ensurepip', '--
upgrade', '--default-pip']


Note that I do have 'python3-venv' installed, but it is the 3.9 version:
ii  python3-venv  3.9.1-1   
  
amd64pyvenv-3 binary for python3 (default python3 version)


Is there something I've missed?  

Thank you,
-Steve

[1] 
https://linuxconfig.org/how-to-set-up-a-python-virtual-environment-on-debian-10-buster


signature.asc
Description: This is a digitally signed message part.