🔖

PyMOL を conda 環境からダブルクリック起動できるようにする手順

に公開

やりたいこと

  • PyMOL が conda activate pymol-env しないと起動できない状態を解消。
  • Nautilus で PDB/PSE/XYZ をダブルクリックすると、conda 環境の PyMOL が立ち上がるようにする。

前提

  • conda 環境名: pymol-env
  • conda 本体: /home/yt/anaconda3/bin/conda(見つからない場合は command -v conda で拾うフォールバックを入れる)

手順

1. ラッパースクリプトを用意

~/bin が PATH に入っている前提。入っていない場合は ~/.profile などで export PATH="$HOME/bin:$PATH" して再ログイン。

mkdir -p ~/bin
cat <<'EOF' > ~/bin/pymol
#!/usr/bin/env bash
CONDA_EXE="${CONDA_EXE:-}"
if [ -z "$CONDA_EXE" ]; then
  if command -v conda >/dev/null 2>&1; then
    CONDA_EXE="$(command -v conda)"
  elif [ -x "/home/yt/anaconda3/bin/conda" ]; then
    CONDA_EXE="/home/yt/anaconda3/bin/conda"
  elif [ -x "/home/yt/miniconda3/bin/conda" ]; then
    CONDA_EXE="/home/yt/miniconda3/bin/conda"
  else
    echo "conda not found; set CONDA_EXE in this script." >&2
    exit 1
  fi
fi
exec "$CONDA_EXE" run -n pymol-env pymol "$@"
EOF
chmod +x ~/bin/pymol

2. デスクトップエントリを登録

~/.local/share/applications/pymol.desktop を作る。

mkdir -p ~/.local/share/applications
cat <<'EOF' > ~/.local/share/applications/pymol.desktop
[Desktop Entry]
Type=Application
Name=PyMOL (conda)
Exec=/home/yt/bin/pymol %F
Icon=pymol
Terminal=false
Categories=Education;Science;
MimeType=chemical/x-pdb;chemical/x-xyz;application/x-pymol;
EOF
chmod +x ~/.local/share/applications/pymol.desktop

3. デスクトップ DB と MIME 関連付けを更新

update-desktop-database ~/.local/share/applications
gio mime chemical/x-pdb pymol.desktop
gio mime application/x-pymol pymol.desktop
gio mime chemical/x-xyz pymol.desktop

4. Nautilus で既定アプリにする

  • PDB/PSE/XYZ ファイルを右クリック → 「別のアプリで開く」→ “PyMOL (conda)” を選んで「デフォルトに設定」。
  • 以降ダブルクリックで pymol-env 上の PyMOL が起動する。

動作確認

  • pymol somefile.pdb をターミナルから実行して立ち上がるか。
  • Nautilus で PDB をダブルクリックして起動するか。
  • うまくいかない場合は再ログイン後にもう一度試す。

カスタマイズ

  • conda の場所が異なる場合は ~/bin/pymol 内のパス候補を追加。
  • アイコンを変えたい場合は /usr/share/pixmaps/pymol.xpm など任意のパスを Icon= に指定。

Discussion