Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save filipebezerra/6ffeafa89f0d16b4c5ce3d76f6f1cc20 to your computer and use it in GitHub Desktop.
Save filipebezerra/6ffeafa89f0d16b4c5ce3d76f6f1cc20 to your computer and use it in GitHub Desktop.
Add python to Windows Subsystem for Linux (WSL) [ubuntu]

Install Windows Subsystem for Linux (WSL) [ubuntu]

Follow this guide to install WSL:

https://docs.microsoft.com/en-us/windows/wsl/install-win10

Prepare WSL (ubuntu)

  1. Get your build tools and python required libraries installed:

    See: https://stackoverflow.com/questions/8097161/how-would-i-build-python-myself-from-source-code-on-ubuntu/31492697

    sudo apt update && sudo apt install -y build-essential git libexpat1-dev libssl-dev zlib1g-dev \
    libncurses5-dev libbz2-dev liblzma-dev \
    libsqlite3-dev libffi-dev tcl-dev linux-headers-generic libgdbm-dev \
    libreadline-dev tk tk-dev
    
  2. Install pyenv (which will install python):

    See: https://github.com/pyenv/pyenv-installer

    curl https://pyenv.run | bash
    
  3. After install, it tells you to add the following to your ~/.bashrc file, go do that:

    # Load pyenv automatically by adding
    # the following to ~/.bashrc:
    
    export PATH="$HOME/.pyenv/bin:$PATH"
    eval "$(pyenv init -)"
    eval "$(pyenv virtualenv-init -)"
    
    
  4. Install the latest 'common' versions of python through pyenv:

    # list available python versions
    # pyenv install --list
    pyenv install 3.6.8
    pyenv install 3.7.2
    
  5. Install/Upgrade base libraries into both versions of python:

    pyenv global 3.6.8
    pip install pip --upgrade
    pip install pipenv
    
    pyenv global 3.7.2
    pip install pip --upgrade
    pip install pipenv
    

-- Go to work!

@filipebezerra
Copy link
Author

I had an issue trying to install python through pyenv install --list

zsh: command not found: pyenv

I changed my ~/.zshrc from:

export PATH="~/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

To

export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

Original thread: pyenv/pyenv-virtualenv#233 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment