Skip to main content

Migrating from pyenv

This guide helps pyenv users transition to OMG's unified runtime management.

Why Migrate?

FeaturepyenvOMG
Version Switch50-100ms1-2ms (50x faster)
Shell Startup50-200ms<10ms
ImplementationBash + shimsPure Rust binary
Other Runtimes✅ Node, Go, Rust, Ruby, Java, Bun

Command Mapping

pyenvOMGNotes
pyenv install 3.12omg use python 3.12Install + activate
pyenv global 3.12omg use python 3.12Set global version
pyenv versionsomg list pythonList installed
pyenv install --listomg list python --availableList available
pyenv which pythonomg which pythonShow active path

Shell Configuration

Remove pyenv

Remove from ~/.zshrc:

# Remove these lines:
export PYENV_ROOT="$HOME/.pyenv"
eval "$(pyenv init -)"

Add OMG

eval "$(omg hook zsh)"

Version File Support

OMG respects:

  • .python-version
  • .tool-versions

Next Steps