Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Review support for virtual environments #35

Closed
8 tasks done
frgomes opened this issue May 2, 2020 · 1 comment
Closed
8 tasks done

Review support for virtual environments #35

frgomes opened this issue May 2, 2020 · 1 comment

Comments

@frgomes
Copy link
Owner

frgomes commented May 2, 2020

Related: #23 #36

Background

Virtual environments is an interesting concept, heavily used by Python programmers. Since I usually use several versions of Java and Scala, I borrowed the concept from the Python ecosystem given that in reality, the benefits apply equally to several other ecosystems, not only Python.

Some time ago, my preferred virtual environments were part of the codebase and were initialized (if necessary) when a new terminal window was opened. The reasons for that are explained in Design Concept below.

Since this project started to become more popular, it became clear that I should never push my virtual environments to users of this project. For this reason, I've moved my virtual environments to somewhere else. However, there are still leftovers around here and, in particular, I'm still forcing a "default" (let's put this way) virtual environment called p3 to users of this project.

Design Concept

Starting from a brand new laptop with only the base operating system installed, I would like to be able to quickly have my environment setup. I would like to download a shell script from the Internet which sets up everything for me. Then I open a new terminal window, all remaining bits and pieces are automagically configured and I'm ready to go.

Requirements

  • Support for virtual environments is enable only if there's support for Python in the underlying distribution. Even though the vast majority of distributions have some sort of Python version pre-installed, some small distributions don't. And we should accommodate for that.
  • Given that Python is supported but pip is not available, we should download pip from the Internet and install it.
  • Given that pip was successfully installed, we then install/upgrade virtualenv and virtualenvwrapper.
  • Given that virtualenvwrapper was successfully installed, we should source virtualenvwrapper.sh in order to make commands workon and mkvirtualenv available, among other commands.

Additional tasks:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant