Skip to main content

Emit the activation command for the nearest Python virtual environment and install shell bootstrap wrappers.

Project description

envon

Emit the activation command for the nearest or specified Python virtual environment, and install shell bootstrap wrappers for seamless activation in your favorite shell.

Features

  • Auto-detects and activates Python virtual environments in your project.
  • Supports multiple shells: bash, zsh, sh, fish, powershell, pwsh, nushell, cmd, csh/tcsh/cshell.
  • Installs a shell bootstrap function for one-command activation.
  • Flexible CLI flags for advanced usage.

Supported Shells

  • bash (full auto-activation)
  • zsh (full auto-activation)
  • sh (full auto-activation)
  • fish (full auto-activation)
  • powershell, pwsh (full auto-activation)
  • cmd, batch, bat (prints command for manual activation)
  • nushell, nu (prints command for manual activation)
  • csh, tcsh, cshell (prints command for manual activation)

For detailed shell support and limitations, see docs/user_guide.md.

Installation

Recommended: Install with pipx for isolated environments:

pipx install envon

Alternative: Install with pip (may fail on some distros like Ubuntu or Windows due to PEP 668):

python3 -m pip install envon

After installation, run:

envon --install

This detects your shell and sets up the bootstrap for auto-activation.

For more detailed installation instructions, see docs/installation.md.

Usage

After installation and bootstrap setup, run:

envon

This will activate the nearest virtual environment in your project.

Supported flags: --emit [SHELL], --print-path, --install [SHELL].

For advanced usage, examples, and all flags, see docs/user_guide.md.

Development

For development setup, building, and project structure, see docs/development.md.

Contributor Note

envon is in its early phase. Basic functionality is solid, but we welcome help!

  • TCSH/cshell and Nushell support need improvement (auto-activation, overlays).
  • If you find issues, please raise an issue.
  • If you'd like to contribute, fork and submit a PR—contributions are very welcome!

Let's make envon the best Python venv activator for every shell!

Release Notes

Version 0.1.0 (First Release)
This is the initial release of envon. A lot of work is still ongoing, especially in the testing, CI, and adding support for missing shells (e.g., full auto-activation for Nushell and csh/tcsh).

If you see any issues, feel free to open an issue. If you're interested in contributing, feel free to submit a PR. If you have ideas or anything regarding the project, feel free to open a discussion or feature request in an issue.

Check out the project on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

envon-0.0.1.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

envon-0.0.1-py3-none-any.whl (16.2 kB view details)

Uploaded Python 3

File details

Details for the file envon-0.0.1.tar.gz.

File metadata

  • Download URL: envon-0.0.1.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for envon-0.0.1.tar.gz
Algorithm Hash digest
SHA256 0c358c9b77ecdebafb481bd23d78e42f05371c12fe54cb7e9b67426004b6a121
MD5 83e88a27d67e05b8bb463f4b94e416c1
BLAKE2b-256 a3daa48df2196c889e40a571a0c63f2c2bc2d3a2cfebb4a7f20b3220c12220a3

See more details on using hashes here.

File details

Details for the file envon-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: envon-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 16.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for envon-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f244562f95752fe5324528503dd82c06b94698e26e42a5d79a41a97229bf44cd
MD5 32779990678bd33d67e3dbca37b9d3a3
BLAKE2b-256 68ee94d0a04ab43e17a85126d799a789f658e70e11e1347c3d78b8107c6c0b35

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page