realpython / realpython/python-guide

Expand on direnv section

Open
#1,027 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Batchfile
Stars
29.8k
Forks
5.9k
PR merge metrics
No merged PRs in 30d

Description

The direnv section simply refers the reader to direnv.net for Linux installation instructions (by the the site is not linked on the page). Since there are different ways to get direnv working depending on if you're using pyenv, virtualenv, or virtualenvwrapper, it seems reasonable to direct them to the site. However, after struggling with this myself I found the instructions not straightforward, especially for a new user.
Since the direnv section directly follows the virtualenvwrapper section, I suggest updating with the following instructions to get direnv working with virtualenvwrapper:

  1. Add the following to ~/.config/direnv/direnvrc
layout_virtualenv {
    local venv_path="$1"
    source ${venv_path}/bin/activate
}
layout_virtualenvwrapper {
    local venv_path="${WORKON_HOME}/$1"
    layout_virtualenv $venv_path
}
  1. Add the following to an .envrc file in the root directory of your project
    layout virtualenvwrapper _name_of_virtual_environment_

Now, the virtual environment will activate when you enter the project directory and deactivate when you leave.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Locate the direnv section immediately after the virtualenvwrapper section and check how the surrounding documentation links external installation guidance. Add the direnv.net link and the provided virtualenvwrapper setup steps, then verify the rendered guide clearly explains activation on entering and leaving a project directory.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux, python, shell
Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
50/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.