PYTHONUSERBASE
pipでinstallするとき--userオプションをつけるとユーザーディレクトリにインストールしてくれて権限の都合とかがある時便利なのだが、そのインストール先をデフォルトから変えたくなった。
pipさん曰く1、pythonのsite.USER_BASEに従っているそうなのでsite.USER_BASEの説明2とPYTHONUSERBASEの説明3を見ると、
- デフォルトでは
~/.localや~/Libraryや%APPDATA%になっている - 環境変数
PYTHONUSERBASEで設定できる
ようだ。
というわけで、PYTHONUSERBASEかsite.USER_BASEを設定すれば解決。
export PYTHONUSERBASE=/home/username/local
pip
# !/home/username/local/bin/python
# -*- coding: utf-8 -*-
import re
import sys
import site
from pip import main
if __name__ == '__main__':
site.USER_BASE = "/home/username/local"
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
sys.exit(main())