WSL 自動 venv 有効化の設定と openenv エラーの解決
実施日時
2025年12月6日
問題の概要
Ubuntu WSLを開いた時に、openenv\Scripts\activate というWindows形式のパスが実行されようとしてエラーが発生していました。
実施した修正
1. .bashrc への自動有効化設定の追加
以下の設定を .bashrc に追加しました:
- cd フック:
cdコマンド実行時に、NexusCore プロジェクトディレクトリに移動した場合に自動的にvenvを有効化 - 起動時自動有効化: ターミナル起動時に、既にNexusCore プロジェクトディレクトリにいる場合に自動的に
venvを有効化
2. ワークスペース設定の更新
NexusCore.code-workspace に以下の設定を追加しました:
"python.venvPath": "${workspaceFolder}",
"python.venvFolders": [
"${workspaceFolder}"
]
これにより、Cursor IDEのPython拡張機能が正しい仮想環境を検出できるようになります。
3. 自動有効化スクリプトの確認
~/.cursor/auto_activate_venv.sh は既に venv を優先するように設定されています。
設定の有効化
設定を有効にするには、以下のいずれかを実行してください:
# 方法1: .bashrc を再読み込み(推奨)
source ~/.bashrc
# 方法2: 新しいターミナルを開く
動作確認
以下のコマンドで動作を確認できます:
# NexusCore プロジェクトディレクトリに移動
cd ~/NexusCore
# 仮想環境が自動的に有効化されているか確認
echo $VIRTUAL_ENV
which python
# プロンプトに (venv) が表示されていれば成功
openenv エラーの解決方法
原因
openenv\Scripts\activate というWindows形式のパスが実行されようとしているのは、Cursor IDEのPython拡張機能が古い仮想環境設定を参照している可能性があります。
解決手順
- Cursor IDEを再起動
- 設定変更を反映するために、Cursor IDEを完全に閉じて再起動してください
- Python拡張機能の設定を確認
Ctrl+Shift+Pでコマンドパレットを開く- 「Python: Select Interpreter」を選択
venv/bin/pythonを選択
- ワークスペース設定の確認
NexusCore.code-workspaceが正しく読み込まれているか確認- 設定が反映されていない場合は、ワークスペースを再読み込み
.bashrcの設定確認tail -30 ~/.bashrc- NexusCore の自動有効化設定が追加されているか確認
トラブルシューティング
自動有効化が動作しない場合
.bashrcに設定が追加されているか確認:grep -n "NexusCore\|auto_activate_venv" ~/.bashrc- 自動有効化スクリプトが存在するか確認:
ls -la ~/NexusCore/.cursor/auto_activate_venv.sh - スクリプトを手動で実行してテスト:
source ~/NexusCore/.cursor/auto_activate_venv.sh - 設定を再適用:
cd ~/NexusCore bash scripts/fix_wsl_venv_auto_activate.sh source ~/.bashrc
openenv エラーが続く場合
- Cursor IDEの設定をクリア:
Ctrl+Shift+P→ 「Preferences: Open User Settings (JSON)」python.venvPathやpython.defaultInterpreterPathの設定を確認・削除
- ワークスペース設定を再読み込み:
Ctrl+Shift+P→ 「Developer: Reload Window」
- Python拡張機能を再インストール:
- 拡張機能パネルで Python 拡張機能を無効化→有効化
参考ファイル
~/.bashrc- bash設定ファイル(自動有効化設定が追加済み)~/.cursor/auto_activate_venv.sh- 自動有効化スクリプトNexusCore.code-workspace- ワークスペース設定scripts/fix_wsl_venv_auto_activate.sh- 設定再適用スクリプト