Manage python installations in your $HOME
Project description
Deprecated
This project is no longer under active development.
You are encouraged to try out pyenv instead.
Overview
pythonbrew is a program to automate the building and installation of Python in the users $HOME.
Installation
The recommended way to download and install pythonbrew is to run these statements in your shell:
curl -kL http://xrl.us/pythonbrewinstall | bash
After that, pythonbrew installs itself to ~/.pythonbrew.
Please add the following line to the end of your ~/.bashrc:
[[ -s $HOME/.pythonbrew/etc/bashrc ]] && source $HOME/.pythonbrew/etc/bashrc
If you need to install pythonbrew into somewhere else, you can do that by setting a PYTHONBREW_ROOT environment variable:
export PYTHONBREW_ROOT=/path/to/pythonbrew curl -kLO http://xrl.us/pythonbrewinstall chmod +x pythonbrewinstall ./pythonbrewinstall
Readline Support
Python uses a library called readline to allow line editing and command history. If you use Python interactively, it is recommended to install both the readline library and its headers. Otherwise, the arrow keys won’t work in the Python interactive shell.
On Debian and Ubuntu systems, the required package is called libreadline-dev. On Fedora, Red Hat, and CentOS, the package is called readline-devel. No extra packages are required on Arch or Gentoo.
The readline support package must be installed before Python in order to work properly.
For Systemwide(Multi-User) installation
If the install script is run as root, pythonbrew will automatically install into /usr/local/pythonbrew.
The pythonbrew will be automatically configured for every user on the system if you install as root.
After installation, where you would normally use sudo, non-root users will need to use sudopybrew:
sudopybrew install -v -j2 2.7.2
Usage
pythonbrew command [options]
Install some pythons:
pythonbrew install 2.7.2 pythonbrew install --verbose 2.7.2 pythonbrew install --test 2.7.2 pythonbrew install --test --force 2.7.2 pythonbrew install --configure="CC=gcc_4.1" 2.7.2 pythonbrew install --no-setuptools 2.7.2 pythonbrew install http://www.python.org/ftp/python/2.7/Python-2.7.2.tgz pythonbrew install /path/to/Python-2.7.2.tgz pythonbrew install /path/to/Python-2.7.2 pythonbrew install 2.7.2 3.2
Permanently use the specified python:
pythonbrew switch 2.7.2 pythonbrew switch 3.2
Use the specified python in current shell:
pythonbrew use 2.7.2
Runs a named python file against specified and/or all pythons:
pythonbrew py test.py pythonbrew py -v test.py # Show verbose output pythonbrew py -p 2.7.2 -p 3.2 test.py # Use the specified pythons
List the installed pythons:
pythonbrew list
List the available installation pythons:
pythonbrew list -k
Uninstall the specified python:
pythonbrew uninstall 2.7.2 pythonbrew uninstall 2.7.2 3.2
Remove stale source folders and archives:
pythonbrew cleanup
Upgrades pythonbrew to the latest version:
pythonbrew update pythonbrew update --master pythonbrew update --develop
Disable pythonbrew:
pythonbrew off
Create/Remove a symbolic link to python (in a directory on your $PATH):
pythonbrew symlink # Create a symbolic link, like "py2.7.2", for each installed version pythonbrew symlink -p 2.7.2 pythonbrew symlink pip # Create a symbolic link to the specified script in bin directory pythonbrew symlink -r # Remove a symbolic link pythonbrew symlink -v foo # Create a symbolic link to the specified virtual environment python in bin directory
Runs the buildout with specified or current using python:
pythonbrew buildout pythonbrew buildout -p 2.6.6
Create isolated python environments (uses virtualenv):
pythonbrew venv init pythonbrew venv create proj pythonbrew venv list pythonbrew venv use proj pythonbrew venv delete proj pythonbrew venv rename proj proj2
Show version:
pythonbrew version
COMMANDS
- install <version>
Build and install the given version of python. Install setuptools and pip automatically.
- switch <version>
Permanently use the specified python as default.
- use <version>
Use the specified python in current shell.
- py <python file>
Runs a named python file against specified and/or all pythons.
- list
List the installed all pythons.
- list -k <version>
List the available install pythons.
- uninstall <version>
Uninstall the given version of python.
- cleanup
Remove stale source folders and archives.
- update
Upgrades pythonbrew to the latest version.
- off
Disable pythonbrew.
- symlink
Create/Remove a symbolic link to python (in a directory on your $PATH)
- buildout
Runs the buildout with specified or current using python.
- venv
Create isolated python environments (uses virtualenv)
- version
Show version.
- See more details below
pythonbrew help <command>
Changelog
1.3.6 (2015-06-20)
Fixed issue #145 Fix setuptools url and updated for new pythons
1.3.5 (2014-07-05)
Fixed issue #140 Add Python 2.7.6 as latest 2.x release
Fixed issue #142 fix syntax error in pythonbrew/etc/bashrc
1.3.4 (2013-07-14)
Fixed issue #107 Fix curl version incompatibilities
Fixed issue #109 Remove bogus -n command line arg
Fixed issue #118 Fix compilation of Python 2.6.2 and earlier.
Fixed issue #120 remove venv create -n option; add a venv create -g option
Fixed issue #122 Support Python 2.7.4
Fixed issue #123 Updated for new pythons
Fixed issue #124 Add Python 2.7.4 and Fix No module named _sqlite3 for 2.7.4
Fixed issue #126 fishshell equivalent of etc/bashrc
Fixed issue #133 Python-2.7.5 added to pythonbrew/etc/config.cfg
1.3.3 (2013-01-02)
Fixed bug: venv rename
develop option removed from update command
1.3.2 (2012-12-30)
Improved venv command.
1.3.1 (2012-12-25)
Fixed issue #80 Python 2.5: Undefine _POSIX_C_SOURCE on Lion to fix 8-byte strings from socket.inet_aton()
Fixed issue #86 Fix for #85: Python 2.6.5’s SSL Module fails to build on Ubuntu 11.10+
Fixed issue #87 Documentation for getting libreadline to work
Fixed issue #88 Add Python 2.6.8 to config.cfg
Fixed issue #90 Create pythonbrew_systemwide script entrypoint
Fixed issue #94 Fix No module named _sqlite3 on CentOS 5
Fixed issue #96 Added Python-3.3.0 to config.cfg.
Fixed issue #98 Enhancement: cloning a virtual environment
1.3 (2012-04-21)
Fixed issue #62,#70 Pythonbrew’s bashrc $PATH error
Fixed issue #74,#76 pythonbrew does not update $PYTHONPATH when changing environments
Fixed issue #75 Replace the absolute path of the user’s home with $HOME
Fixed issue #68 update to 1.2 fails on OS X 10.7.3
1.2 (2012-04-15)
Fixed issue #54 pythonbrew off` doesn’t deactivate the virtualenv (unset the VIRTUAL_ENV env. variable)
Added 2.7.3, 3.2.2, 3.2.3
Added rename and print_activate command for venv (issue #50)
Fixed issue #52 Apply patch for 2.6.5 and earlier
Skip tests by default
Added –test option for install
Removed –no-test option for install
1.1 (2011-08-29)
Added –framework, –universal and –static options to install command.
More
see the pythonbrew/Changelog
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.