This is a read-only mirror of pymolwiki.org

Difference between revisions of "Git install scripts"

From PyMOL Wiki
Jump to navigation Jump to search
m (minor typo correction (want't --> don't feel like); linked the 'Plugin manager' page)
m (1 revision)
 
(4 intermediate revisions by 3 users not shown)
Line 7: Line 7:
 
  /home/YOURNAME/Pymol-script-repo
 
  /home/YOURNAME/Pymol-script-repo
  
Now go to: '''Adding Pymol-script-repo to PyMOL search path''' [http://www.pymolwiki.org/index.php/Git_install#Adding_Pymol-script-repo_to_PyMOL_search_path]
+
Continue with [[#Adding Pymol-script-repo to PyMOL search path]]
  
 
== Git install instructions ==
 
== Git install instructions ==
Line 41: Line 41:
 
You now have to add the "Pymol-script-repo" directory to the PyMOL search path.  
 
You now have to add the "Pymol-script-repo" directory to the PyMOL search path.  
  
PyMOL has since revision 3997 (30 April 2012) an improved plugin/script manager.
 
You have to remove old installations of plugins first, to get the automatic plugin installation to work.
 
 
=== Making a personal "pymolrc" file - for personal use ===
 
=== Making a personal "pymolrc" file - for personal use ===
 
# Open notepad/gedit and save under:
 
# Open notepad/gedit and save under:
Line 50: Line 48:
 
# Add paths to sys.path so PyMOL can find modules and scripts
 
# Add paths to sys.path so PyMOL can find modules and scripts
 
import sys, os
 
import sys, os
pymol_git = os.path.abspath(os.path.join(os.path.expanduser('~'), 'Pymol-script-repo'))
+
pymol_script_repo = os.path.abspath(os.path.join(os.path.expanduser('~'), 'Pymol-script-repo'))
os.environ['PYMOL_GIT_MOD'] = os.path.join(pymol_git,'modules')
+
pymol_script_repo_plugins = os.path.join(pymol_script_repo, "plugins")
sys.path.append(pymol_git)
+
pymol_script_repo_modules = os.path.join(pymol_script_repo, "modules")
sys.path.append(os.environ['PYMOL_GIT_MOD'])
+
sys.path.append(pymol_script_repo)
 
+
sys.path.append(pymol_script_repo_modules)
# Make starting directory and change to it.
+
os.environ['PYMOL_GIT_MOD'] = pymol_script_repo_modules
home_dir = os.path.abspath(os.path.join(os.path.expanduser('~'), 'pymol'))
 
if not os.path.exists(home_dir): os.makedirs(home_dir)
 
os.chdir(home_dir)
 
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Line 67: Line 62:
  
 
=== Making a general "run_on_startup.py" - for all users ===
 
=== Making a general "run_on_startup.py" - for all users ===
This section describes automatic loading of plugins using PyMOL's [[Plugin manager]], which is available in newer PyMOL versions (e.g. 1.7, or higher).<br>
 
  
 
If you have a shared PyMOL installation for several linux computers, you can make general wide changes for the startup of PyMOL.<br>
 
If you have a shared PyMOL installation for several linux computers, you can make general wide changes for the startup of PyMOL.<br>
 
First locate your PYMOL_PATH. Start PyMOL, and write:
 
First locate your PYMOL_PATH. Start PyMOL, and write:
import os
+
 
print os.environ['PYMOL_PATH']
+
<syntaxhighlight lang="python">
 +
import os
 +
print(os.environ['PYMOL_PATH'])
 +
</syntaxhighlight>
 +
 
 
In this folder, you place "run_on_startup.py" and the Pymol-script-repo directory.<br>
 
In this folder, you place "run_on_startup.py" and the Pymol-script-repo directory.<br>
 
Write in "run_on_startup.py" :  
 
Write in "run_on_startup.py" :  
Line 78: Line 76:
 
# Add paths to sys.path so PyMOL can find modules and scripts
 
# Add paths to sys.path so PyMOL can find modules and scripts
 
import sys, os
 
import sys, os
pymol_git = os.path.abspath(os.path.join(os.environ['PYMOL_PATH'], 'Pymol-script-repo'))
+
pymol_script_repo = os.path.abspath(os.path.join(os.environ['PYMOL_PATH'], 'Pymol-script-repo'))
os.environ['PYMOL_GIT_MOD'] = os.path.join(pymol_git,'modules')
+
pymol_script_repo_plugins = os.path.join(pymol_script_repo, "plugins")
sys.path.append(pymol_git)
+
pymol_script_repo_modules = os.path.join(pymol_script_repo, "modules")
sys.path.append(os.environ['PYMOL_GIT_MOD'])
+
sys.path.append(pymol_script_repo)
 
+
sys.path.append(pymol_script_repo_modules)
# Make starting directory and change to it.
+
os.environ['PYMOL_GIT_MOD'] = pymol_script_repo_modules
home_dir = os.path.abspath(os.path.join(os.path.expanduser('~'), 'pymol'))
 
if not os.path.exists(home_dir): os.makedirs(home_dir)
 
os.chdir(home_dir)
 
  
 
# Make setting changes to Plugin Manager
 
# Make setting changes to Plugin Manager
 
import pymol.plugins
 
import pymol.plugins
pymol.plugins.preferences = {'instantsave': False, 'verbose': False}
+
pymol.plugins.autoload['apbs_tools'] = False
pymol.plugins.autoload = {'apbs_tools': False}
+
pymol.plugins.preferences['verbose'] = False
pymol.plugins.set_startup_path([os.path.join(pymol_git, 'plugins'), os.path.join(sys.prefix, 'Lib', 'site-packages', 'pmg_tk', 'startup')])
+
_plugin_search_path = pymol.plugins.get_startup_path()
pymol.plugins.preferences = {'instantsave': True, 'verbose': False}
+
if pymol_script_repo_plugins not in _plugin_search_path: pymol.plugins.set_startup_path([pymol_script_repo_plugins] + _plugin_search_path)
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
== Test the Scripts ==
 
== Test the Scripts ==
 
Now start PyMOL, and test in PyMOL.
 
Now start PyMOL, and test in PyMOL.
print sys.path
+
 
import colorbydisplacement
+
<syntaxhighlight lang="python">
help(colorbydisplacement)
+
print(sys.path)
 +
import colorbydisplacement
 +
help(colorbydisplacement)
 +
</syntaxhighlight>
  
 
== Get latest changes to scripts ==
 
== Get latest changes to scripts ==
Line 117: Line 115:
 
= Do you want to contribute with a script? =
 
= Do you want to contribute with a script? =
 
Information how to contribute scripts to the repository. It's easy! <br>
 
Information how to contribute scripts to the repository. It's easy! <br>
http://www.pymolwiki.org/index.php/git_authors
+
[git authors]

Latest revision as of 03:24, 10 December 2018

Manual download of scripts

If you don't have the option or don't feel like installing git on your system, then go to:

https://github.com/Pymol-Scripts/Pymol-script-repo

Click the "ZIP" button, near the top left corner. Now unpack the files to a directory. For example:

C:/Users/YOURNAME/Pymol-script-repo
/home/YOURNAME/Pymol-script-repo

Continue with #Adding Pymol-script-repo to PyMOL search path

Git install instructions

For Windows users

  1. Install Git for Windows.

Use following settings in options, (You can read more here).

  • Windows Explorer Integration -> Context Menu Entries -> Git Bash Here + Git GUI here
  • Run Git and included Unix tools from Windows Command prompts
  • Checkout Windows style, commit Unix-style endings
  1. Navigate to: C:\Users\YOURNAME
  2. Right click in folder -> Select: Git Gui -> Clone Existing Repository
  3. Source Location: git://github.com/Pymol-Scripts/Pymol-script-repo.git
  4. Target Directory: C:\\Users\\YOURNAME\\Pymol-script-repo
    A backslash "\" in a string is is used for escape sequences. To get a real backslash in a string, use double backslash "\\"

You now have all the scripts available in your directory.

For Linux users

  1. Install git
# Debian/Ubuntu/Mint
sudo apt-get install git
# Fedora
su -c 'yum install git'
# openSUSE
sudo zypper in git
  1. Navigate to desired folder:
cd /home/YOURNAME/
git clone git://github.com/Pymol-Scripts/Pymol-script-repo.git

You now have all the scripts available in: /home/YOURNAME/Pymol-script-repo

Adding Pymol-script-repo to PyMOL search path

You now have to add the "Pymol-script-repo" directory to the PyMOL search path.

Making a personal "pymolrc" file - for personal use

  1. Open notepad/gedit and save under:
    1. Win: C:\Users\YOURNAME\pymolrc.pym (Set: "Save as type" to "All files")
    2. Linux: ~/.pymolrc
# Add paths to sys.path so PyMOL can find modules and scripts
import sys, os
pymol_script_repo = os.path.abspath(os.path.join(os.path.expanduser('~'), 'Pymol-script-repo'))
pymol_script_repo_plugins = os.path.join(pymol_script_repo, "plugins")
pymol_script_repo_modules = os.path.join(pymol_script_repo, "modules")
sys.path.append(pymol_script_repo)
sys.path.append(pymol_script_repo_modules)
os.environ['PYMOL_GIT_MOD'] = pymol_script_repo_modules

Then open PyMOL. Go to top menu: Plugin->Plugin Manager

  1. Installed plugins: Unclick "apbs_tools" as "load on startup". (The Pymol-script-repo has a fine-tuned version, "apbsplugin")
  2. Settings->Add new directory: Point to: /custom/path/Pymol-script-repo/plugins
  3. Restart PyMOL

Making a general "run_on_startup.py" - for all users

If you have a shared PyMOL installation for several linux computers, you can make general wide changes for the startup of PyMOL.
First locate your PYMOL_PATH. Start PyMOL, and write:

import os
print(os.environ['PYMOL_PATH'])

In this folder, you place "run_on_startup.py" and the Pymol-script-repo directory.
Write in "run_on_startup.py" :

# Add paths to sys.path so PyMOL can find modules and scripts
import sys, os
pymol_script_repo = os.path.abspath(os.path.join(os.environ['PYMOL_PATH'], 'Pymol-script-repo'))
pymol_script_repo_plugins = os.path.join(pymol_script_repo, "plugins")
pymol_script_repo_modules = os.path.join(pymol_script_repo, "modules")
sys.path.append(pymol_script_repo)
sys.path.append(pymol_script_repo_modules)
os.environ['PYMOL_GIT_MOD'] = pymol_script_repo_modules

# Make setting changes to Plugin Manager
import pymol.plugins
pymol.plugins.autoload['apbs_tools'] = False
pymol.plugins.preferences['verbose'] = False
_plugin_search_path = pymol.plugins.get_startup_path()
if pymol_script_repo_plugins not in _plugin_search_path: pymol.plugins.set_startup_path([pymol_script_repo_plugins] + _plugin_search_path)

Test the Scripts

Now start PyMOL, and test in PyMOL.

print(sys.path)
import colorbydisplacement
help(colorbydisplacement)

Get latest changes to scripts

If new scripts are available or changes have been made, then:

For windows users

  1. Navigate to C:\Users\YOURNAME\Pymol-script-repo
  2. Right click in folder -> Select: Git Bash
  3. Write in terminal
git pull origin master

For Ubuntu/Mint users

  1. Navigate to /home/YOURNAME/Pymol-script-repo
  2. Write in terminal.
git pull origin master

Do you want to contribute with a script?

Information how to contribute scripts to the repository. It's easy!
[git authors]