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.1 (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.1.3.tar.gz (15.7 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.1.3-py3-none-any.whl (16.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for envon-0.1.3.tar.gz
Algorithm Hash digest
SHA256 b074dd7c9e31fca8e05f818740beffdb8a6adff954323eccdfdefa4043453886
MD5 e314782b4cf18145838ee815c2ea39aa
BLAKE2b-256 0413b079908aceb805d066e357ef44dd7fa2bf8dcd35f2054fad9f0453e24f43

See more details on using hashes here.

File details

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

File metadata

  • Download URL: envon-0.1.3-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.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9ea5d17a62a552f54c833a7948f7cf356cf02af353f43bacdcea37b354a1fef5
MD5 0edab9181f80b2158460ddd94b51aeaf
BLAKE2b-256 f4169e97661f0bd1676c2bafb7b9345f19bd08c62d81c79d4cc20937478a7169

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