Merge remote-tracking branch 'origin/build-pymol'
This commit is contained in:
+46
-11
@@ -1,17 +1,52 @@
|
||||
# pymol
|
||||
|
||||
Installation Remarks:
|
||||
Molecular visualization system. This module ships the **incentive**
|
||||
(official Schrodinger) Linux bundle, not the open-source build.
|
||||
|
||||
1.)
|
||||
If installed on RH7 (merlin6 nodes), a library is missing for RH8 nodes (RA) :
|
||||
- Upstream: https://pymol.org/ (support: https://www.pymol.org/support.html)
|
||||
- License: Schrodinger incentive license required for full features
|
||||
|
||||
## How it is built
|
||||
|
||||
Per pymol.org support page for Linux (RHEL 8+ supported since v2.5.10):
|
||||
download the `PyMOL-<ver>_<build>-Linux-x86_64-py310.tar.bz2` bundle,
|
||||
unpack, run `./pymol`. The recipe downloads the bundle from the public
|
||||
pymol-storage GCS bucket (sha256-verified), unpacks it and moves the
|
||||
bundle contents into `$PREFIX`; the `pymol` launcher sits at the PREFIX
|
||||
root, so the modulefile does `prepend-path PATH $PREFIX` (the bundle's
|
||||
private `bin/` with its own python is deliberately NOT on PATH).
|
||||
|
||||
Versions before 3.1.8 in this module's git history were open-source
|
||||
builds (git clone + setup.py) against merlin-era psi-python modules;
|
||||
see https://github.com/schrodinger/pymol-open-source/blob/master/INSTALL
|
||||
if that route is ever needed again.
|
||||
|
||||
### License file
|
||||
|
||||
The bundle runs unlicensed with limited features. Site-wide: drop the
|
||||
SLM license file at `$PREFIX/share/pymol/license.lic`. Per user: PyMOL
|
||||
prompts on first start (get the file from https://pymol.org/dsc/ip/license/).
|
||||
|
||||
## Building on Ra
|
||||
|
||||
```sh
|
||||
module use unstable && module load modbuild/2.1.2
|
||||
cd pymol
|
||||
modbuild build 3.1.8
|
||||
module use MX unstable && module load pymol/3.1.8
|
||||
```
|
||||
libGLEW.so.1.10
|
||||
|
||||
## Verifying the install
|
||||
|
||||
```sh
|
||||
which pymol # -> /opt/psi/MX/pymol/3.1.8/pymol
|
||||
pymol -cq # headless no-op: exits 0 without X
|
||||
pymol # GUI check, needs X
|
||||
```
|
||||
To overcome this, copy this library from /usr/lib64/libGLEW.so.1.10.0 to the pmodules lib folder and link accordingly to the right name if neccessary.
|
||||
|
||||
## Adding a new version
|
||||
|
||||
2.)
|
||||
Installed with the options --no-vmd-plugins --use-msgpackc=no, if these options should be available, probably other dependencies needed.
|
||||
Description from https://github.com/schrodinger/pymol-open-source/blob/master/INSTALL:
|
||||
- msgpack-c 2.1.5+ (optional, for fast MMTF loading and export, disable with --use-msgpackc=no)
|
||||
- mmtf-cpp (for fast MMTF export, disable with --use-msgpackc=no)
|
||||
- libnetcdf (optional, disable with --no-vmd-plugins)
|
||||
Check the exact bundle filename on https://pymol.org (the `_0` build
|
||||
number and `py310` tag change between releases), update `urls:` if
|
||||
needed, add the version + tarball sha256 in `files/config.yaml`, then
|
||||
`modbuild build <version>` (modbuild/2.1.2) on a Ra login node.
|
||||
|
||||
+10
-16
@@ -1,23 +1,17 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
|
||||
|
||||
pbuild::prep() {
|
||||
git clone --depth 1 --branch "v${V_PKG}" https://github.com/schrodinger/pymol-open-source.git
|
||||
}
|
||||
# Incentive PyMOL: prebuilt Linux bundle from pymol.org, no compile.
|
||||
# Default pbuild::prep downloads + sha-verifies + unpacks (urls/shasums in
|
||||
# files/config.yaml); the bundle unpacks to pymol/ with the launcher at its root.
|
||||
|
||||
pbuild::configure() {
|
||||
#NEEDS GML
|
||||
git clone -b 0.9.9.8 https://github.com/g-truc/glm.git $SRC_DIR/glm/
|
||||
cp -r $SRC_DIR/glm/glm/ $SRC_DIR/pymol-open-source/include/
|
||||
}
|
||||
|
||||
pbuild::compile() {
|
||||
cd "$SRC_DIR/pymol-open-source/"
|
||||
python3 setup.py install --prefix "$PREFIX/" --no-vmd-plugins --use-msgpackc=no
|
||||
}
|
||||
|
||||
pbuild::install(){
|
||||
:
|
||||
}
|
||||
|
||||
pbuild::compile() {
|
||||
:
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
mv "${SRC_DIR}/pymol/"* "${PREFIX}/"
|
||||
}
|
||||
|
||||
@@ -1,13 +1,17 @@
|
||||
---
|
||||
format: 1
|
||||
pymol:
|
||||
defaults:
|
||||
group: MX
|
||||
overlay: base
|
||||
relstage: unstable
|
||||
urls:
|
||||
# _0 build number and py310 tag are release-specific; check
|
||||
# https://pymol.org/ #download for the exact filename when bumping
|
||||
- url: https://storage.googleapis.com/pymol-storage/installers/PyMOL-${V_PKG}_0-Linux-x86_64-py310.tar.bz2
|
||||
shasums:
|
||||
PyMOL-3.1.8_0-Linux-x86_64-py310.tar.bz2: 69ba3492d6d7c4b6cc3d89d47320fb49ed5fdc2bda1a373b73ce11aad3225a7f
|
||||
versions:
|
||||
2.5.0:
|
||||
3.1.8:
|
||||
config:
|
||||
build_requires: ["psi-python38/2020.11", "gcc/9.3.0", "cuda/11.0.3"]
|
||||
3.0.0:
|
||||
config:
|
||||
build_requires: ["psi-python39/2021.11", "gcc/9.3.0", "cuda/11.0.3"]
|
||||
relstage: unstable
|
||||
|
||||
+11
-6
@@ -1,10 +1,15 @@
|
||||
#%Module1.0
|
||||
|
||||
module-whatis "PyMol - molecular visualization system"
|
||||
module-url "https://github.com/schrodinger/pymol-open-source"
|
||||
module-license "-"
|
||||
module-maintainer "Greta Assmann <greta.assmann@psi.ch>"
|
||||
|
||||
module-help "https://pymol.org/2/"
|
||||
module-whatis "PyMOL - molecular visualization system (incentive build)"
|
||||
module-url "https://pymol.org/"
|
||||
module-license "Schrodinger incentive PyMOL - needs license.lic (see module-help)"
|
||||
module-maintainer "MX Data <jiaxin.duan@psi.ch>"
|
||||
|
||||
module-help "
|
||||
PyMOL molecular visualization system, official Schrodinger Linux
|
||||
bundle. Full features need a license file: place it at
|
||||
\$PREFIX/share/pymol/license.lic (site-wide) or let PyMOL prompt
|
||||
for it on first start (per user).
|
||||
"
|
||||
|
||||
prepend-path PATH $PREFIX
|
||||
|
||||
Reference in New Issue
Block a user