Any python programmers out there know how to set up pyenv-virtualenv?

Following this guide

https://www.freecodecamp.org/news/manage-multiple-python-versions-and-virtual-environments-venv-pyenv-pyvenv-a29fb00c296f/

Have upgraded pip as recommended.
Added the python Factory repo for 15.1.
Installed pyenv from the openSUSE repositories.

Have verified all the above seems to be working fine, have created virtual environments using venv and pyenv.

But, as is well documented, pyenv by itself and venv support only Python 3.3 and later.
To support earlier python including python2, the recommended procedure is to install a pyenv-virtualenv plugin for pyenv as described next.

https://github.com/pyenv/pyenv-virtualenv

Although undocumented, I found the pyenv plugin directory at

/usr/lib/pyenv/plugins/

so as described I cloned the github repository for pyenv-virtualenv into a named subdirectory in this location. There is a minor descrepancy in that the documentation describes a user directory but because pyenv is installed from the openSUSE repositories, it’s in a system directory.

git clone https://github.com/pyenv/pyenv-virtualenv.git /usr/lib/pyenv/plugins/pyenv-virtualenv

But, when attempting to create a virtual environment using this plugin, it doesn’t work, saying that “virtualenv” is not a recognized command

 pyenv virtualenv 2.7 testproject-2.7pyenv: no such command `virtualenv'

I understand that if I cannot get this to work, I use the fallback of using the legacy virtualenv, but am trying to set up according to current recommended “Best Practices”

TIA,
TSU

Hi
Going forward it will be python 3, wouldn’t it be better to look forward? Treat anything python2 as legacy (as well as deprecated) and port the code? Some that I’ve come across recently have just required parentheses around the print statements to fix…

There’s still a ton of projects that are written in python2 or have python2 dependecies.

At the moment, am trying to deploy/install Sylkserver on openSUSE. The OBS buiilds have an unmet python2 dependency which is available in certain python versions, hence my need to set up a very specific python 2 environment. The dependency (python-klein) is not available in a package anywhere I can find except Arch or PyPi.

The alternative is to deploy a pre-built docker container, but I have reasons for wanting to set it up in a native install instead.

TSU

Hi
Python 3 only version… Likely missing ‘Requires’ based on setup.py…

https://build.opensuse.org/package/show/home:malcolmlewis:TESTING/python-klein

I’ll have to take another look at whether Sylkserver is available anywhere as a python3 app…
My earlier lookaround suggested no one has created source to build using Python3.
And, there may be good reason that discourages refactoring… Sylkserver is just one piece of maybe 5 major pieces that handle a variety of teleconferencing capabilities.
There’s another project looks like it was forked a couple years ago but is heavily dependent on DEB packages.

Reason why I’m putting in some effort is that this looks like one of the more promising FOSS platforms for fully featured teleconferencing.

TSU