Na maioria das situações, a melhor solução é confiar no local chamado "site do usuário" (consulte o PEP para obter detalhes) executando:
pip install --user package_name
Abaixo está uma maneira mais "manual" da minha resposta original, você não precisa lê-la se a solução acima funcionar para você.
Com o easy_install, você pode:
easy_install --prefix=$HOME/local package_name
que será instalado no
$HOME/local/lib/pythonX.Y/site-packages
(a pasta 'local' é um nome típico que muitas pessoas usam, mas é claro que você pode especificar qualquer pasta na qual tenha permissão para gravar).
Você precisará criar manualmente
$HOME/local/lib/pythonX.Y/site-packages
e adicione-o à sua PYTHONPATH
variável de ambiente (caso contrário, o easy_install irá reclamar - execute o comando acima uma vez para encontrar o valor correto para XY).
Se você não estiver usando easy_install
, procure uma opção de prefixo, a maioria dos scripts de instalação permite especificar um.
Com o pip, você pode usar:
pip install --install-option="--prefix=$HOME/local" package_name