Skip to main content

uvenv: pipx for uv (🦀)

Project description

uvenv: pipx for uv

Inspired by:

Installation

New: uvenv is now also installable via the snap store.
The pip method is still recommended, but if you want to use snap, please check out docs/snap.md!

  1. Install via pip (or alternatives):
    pip install uvenv  
    # or `uv install uvenv`, `pipx install uvenv`
    

Note: Ubuntu 24.04+ does not allow global installation via pip by default. See docs/ubuntu_2404.md if you encounter externally-managed-environment errors.

  1. Optional (for bash users):

    uvenv setup
    

    This installs the following features:

  • Ensures ~/.local/bin/ is added to your PATH, so commands can be found (unless --skip-ensurepath). Can also be activated via uvenv ensurepath
  • Enables tab completion for uvenv (unless --skip-completions). Can also be enabled via uvenv completions --install.
  • Enables uvenv activate (unless --skip-activate) to activate uvenv-managed virtualenvs from your shell

Usage

uvenv

Run uvenv without any arguments to see all possible subcommands.

Migration from uvx

Note: The tool previously named uvx is now uvenv due to a naming collision with a new uv command. The new name better reflects its purpose, combining uv with venv.
You can run uvenv self migrate to move your environments and installed commands from uvx to uvenv.

Platform Considerations

  • Rust-Powered Performance (uvenv 2.0): Starting from version 2.0, uvenv leverages Rust for improved performance and compatibility with uv.
  • Prebuilt Binaries: Currently, prebuilt binaries are available for x86_64 (amd64) and aarch64 (ARM64) on Linux, as well as Intel (x86_64) and Apple Silicon (ARM64) on macOS.
  • Other Platforms: If you're on a different platform, you can still use uvx 1.x, which is written in pure Python. Find it at robinvandernoord/uvx.
  • Alternatively, you can Compile for Your Platform:
    • Install the Rust toolchain:
      curl https://sh.rustup.rs -sSf | sh
      
    • Clone the uvenv repo and navigate to it:
      git clone https://github.com/robinvandernoord/uvenv.git
      cd uvenv
      
    • Set up a virtual environment (choose Python or uv):
      python -m venv venv  # or `uv venv venv --seed`
      source venv/bin/activate
      
    • Install Maturin (Python with Rust package builder):
      pip install maturin  # or `uv pip install maturin`
      
    • Compile and install the uvenv binary:
      maturin develop
      
    • Now you can use uvenv:
      ./venv/bin/uvenv
      

For additional details on building and distribution, refer to maturin documentation.

License

uvenv is distributed under the terms of the MIT license.

Changelog

See CHANGELOG.md on GitHub

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

uvenv-3.7.3.tar.gz (81.8 kB view details)

Uploaded Source

Built Distributions

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

uvenv-3.7.3-py3-none-musllinux_1_2_x86_64.whl (4.2 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

uvenv-3.7.3-py3-none-musllinux_1_2_aarch64.whl (3.9 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

uvenv-3.7.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

uvenv-3.7.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.9 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

uvenv-3.7.3-py3-none-macosx_11_0_arm64.whl (3.7 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

uvenv-3.7.3-py3-none-macosx_10_12_x86_64.whl (4.0 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file uvenv-3.7.3.tar.gz.

File metadata

  • Download URL: uvenv-3.7.3.tar.gz
  • Upload date:
  • Size: 81.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.7.4

File hashes

Hashes for uvenv-3.7.3.tar.gz
Algorithm Hash digest
SHA256 43e6a9505d55ef42e4d49d04d5cd8e1ceee77b07edf6786ba0d38745bf0e4f44
MD5 a3a17aaef80bad2c974b011cdce593b6
BLAKE2b-256 d265dfd711047c40ee8a7c432e6ee07bf9c64e5471950dd579cdcd2e3a630f47

See more details on using hashes here.

File details

Details for the file uvenv-3.7.3-py3-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for uvenv-3.7.3-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 816f4dc52d32887a31a63693f23bcc9d3bcfd30fa4fb5b198f1dca5aa6d35e59
MD5 a92f1c20fe04245f0ea960f784dea6a6
BLAKE2b-256 55bffe7bf89683f2b8d5f8b38e1048509eabfd2937e59674db4e2950e87f7d88

See more details on using hashes here.

File details

Details for the file uvenv-3.7.3-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for uvenv-3.7.3-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 465f1e8f478230e1cfee8f6b6f8950973aee37c552966c95c1d5c12f9e1bdfa4
MD5 ea92d854e87fee6e8f2c38c3a971a687
BLAKE2b-256 bbe6b1404b051d033604ea8f274fd7d66d13d509d5ff563d30cc689fe9492077

See more details on using hashes here.

File details

Details for the file uvenv-3.7.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for uvenv-3.7.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 49c51278961a1f0cf55d30dc76953f2e9019214bbf9d6b82e291d787eba45dbc
MD5 86f1378a65f743c34e2e04aa8fb941a2
BLAKE2b-256 477d335a01b337c861f460cd05e2c3b902986f6f95281d1a9a08a4dfdc381959

See more details on using hashes here.

File details

Details for the file uvenv-3.7.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for uvenv-3.7.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fb4f299ba8fc12e8a396a451eee3e771298ba684182b7f92a0367cbde8944b9f
MD5 8a5378d2a3e669b90b3543aedbf289fe
BLAKE2b-256 b1961b058e458652ad42683c83c360a4787488ffab926e85d4de5db728abd93d

See more details on using hashes here.

File details

Details for the file uvenv-3.7.3-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for uvenv-3.7.3-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 071eee9cc5edd04df43bb527b1b220de866046fff3b097a27c3e6b1106bef673
MD5 30b2c918b6753ea7dc10dda71cc0d43c
BLAKE2b-256 c2558756991686b2298f2189f32b302013d3a54ca3a41575010cafc4d63ce834

See more details on using hashes here.

File details

Details for the file uvenv-3.7.3-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for uvenv-3.7.3-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 fe001d35bcc4ac90d643df23ba77ff0d70319aa29ca466ac8e1d7b5d175c3f72
MD5 9e4871bba3f582c37e5aebe6aee0ceb0
BLAKE2b-256 ee620d9823996a076fcfd9c9e264f1fcb84bf4f41eebe729ec9c48f87c623b46

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