This repository offers unofficial binary wheels for the open-source version of PyMOL.
PyMOL™ is a powerful visualization software for rendering and animating 3D molecular structures. PyMOL is a trademark of Schrödinger, LLC.
Please note that the files provided here are unofficial. They are informal, unrecognized, and unsupported, offered for testing and evaluation purposes only. No warranty or liability is provided, and the software is made available "as-is."
All PyMOL sources are directly from the pymol-open-source GitHub repository and are only cloned during the setup process. A stable version is also checked out to avoid build failures due to development code.
There are two Python scripts that are used for building PyMOL specific shader files and for freezing the Python environment using cx_freeze.
To enable the direct build of a ready-to-use wheel file, a pre-built
_cmd
module is already compiled and will be used in the wheel build process
if no self built one can be found.
Furthermore, the libGL library is also provided to make the build process
easier and less error-prone.
To make the build process of the _cmd
module as easy and convenient as
possible, the vcpkg package manager is used. The package manager should
handle all build dependencies PyMOL needs.
To honor Warren L. DeLano the original creator of PyMOL an alternative logo can be used as well as an alternate splash screen. The logo is only altered in its color and the splash screen is inspired by early PyMOL versions of Warren himself.
To build the wheel file (based on the provided pre-built _cmd
module), follow these steps (the working directory is the repository root directory):
-
Set up a Python virtual environment under the project root directory.
-
Install all requirements using the requirements.txt:
pip install -r requirements.txt
-
Set up the build environment by running:
./run_automation.sh setup-dev-env
-
Build the wheel file using the pre-built
_cmd
module./run_automation.sh build-wheel
After a successful build the wheel file can be found under the
dist/
folder.
After you have built the _cmd
module yourself you can run the following command
to build the wheel file:
./run_automation.sh build-wheel
After a successful build the wheel file can be found under the dist/
folder.
Feel free to contribute or test the files as needed.
- CMake
- Be aware: Add the cmake to your PATH variable. Check by running
cmake --version
- Be aware: Add the cmake to your PATH variable. Check by running
- Ubuntu:
sudo apt update -y && sudo apt-get install git build-essential python3.11-dev libglew-dev libpng-dev libfreetype6-dev libxml2-dev libmsgpack-dev python3-pyqt5.qtopengl libglm-dev libnetcdf-dev autoconf
- Load the CMake project (e.g. in PyCharm right-click on the CMakeLists.txt file
and select
Load CMake Project
) - Create a
Release
CMake build profile (e.g. in PyCharm click on the CMake icon in the bottom left panel and click on theGear icon > CMake Settings
) - Add the following line to your CMake build profile:
-DCMAKE_TOOLCHAIN_FILE=$CMakeProjectDir$/vendor/vcpkg/scripts/buildsystems/vcpkg.cmake
- Build the project.
- Optional: If you now run
./run_automation.sh build-wheel
the new wheel file will automatically use your self built_cmd
module.
Until now the build wheel file can only be used with Python 3.11. The plan for the future is to support multiple different Python versions.
Schrödinger for being the driving force behind the continued development of PyMOL after Warren's passing, ensuring that the open-source version remained alive and well.
NOTE: the following list has not been updated since Fall 2003.
Since then, the PyMOL effort has grown to such an extent that it is no longer
practical to recognize everyone individually. Fortunately, a public
record of participation exists and can be appreciated on the internet,
and especially via the PyMOL mailing list archives. Suffice it to say
that the PyMOL user community now numbers well into the thousands and
includes scientists, students, and educators worldwide, spread
throughout academia and the biotechnology and pharmaceutical
industries. Though DeLano Scientific LLC specifically supports and
maintains the PyMOL code base, the project can only continue to
succeed through the sponsorship and participation of the broader
community.
Founder and Principal Author:
Warren L. DeLano
Major Authors (5000+ lines of code):
Ralf W. Grosse-Kunstleve (SGLite Module)
Minor Authors (500+ lines of code):
Scott Dixon (Metaphorics CEX support)
Filipe Maia (Slice Objects)
Other Contributors: These are the people who have gone out of their way to help the project with their ideas, actions, advice, hardware donations, testing, information, sponsorship, peer support, or code snippets.
Daan van Aalten
Paul Adams
Stephen Adler
Jun Aishima
Dennis Allison
Ricardo Aparicio
Daniel Appelman
Diosdado "Rey" Banatao
Michael Banck
Ulrich Baumann
Joseph Becker
Balaji Bhyravbhatla
Jeff Bizzaro
Jeff Blaney
Juergen Bosch
Michael Bower
Sarina Bromberg
Axel Brunger
Robert Campbell
Bronwyn Carlisle
Duilio Cascio
Julien Chiron
Shawn Christensen
Scott Classen
David Cooper
Larry Coopet
Jacob Corn
Ben Cornett
Andrew Dalke
Koen van der Drift
Harry Dailey
Byron DeLaBarre
Bill DeGrado
Thomas Earnest
Nathaniel Echols
John Eksterowicz
Erik Evensen
David Fahrney
Tim Fenn
Thierry Fischmann
Michael Ford
Esben Peter Friis
Kevin Gardner
R. Michael Garavito
John Gerig
Jonathan Greene
Michael Goodman
Joel Harp
Reece Hart
Richard Hart
Peter Haebel
Matt Henderson
Douglas Henry
Possu Huang
Uwe Hoffmann
Jenny Hinshaw
Carly Huitema
Bjorn Kauppi
Greg Landrum
Robert Lawrence Kehrer
Tom Lee
Eugen Leitl
Ken Lind
Jules Jacobsen
Luca Jovine
Andrey Khavryuchenko
David Konerding
Greg Landrum
Michael Love
Tadashi Matsushita
Genevieve Matthews
Gerry McDermott
Robert McDowell
Gustavo Mercier
Naveen Michaud-Agrawal
Aaron Miller
Holly Miller
Tim Moore
Kelley Moremen
Hideaki Moriyama
Nigel Moriarty
Geoffrey Mueller
Cameron Mura
Florian Nachon
Hanspeter Niederstrasser
Michael Nilges
Hoa Nguyen
Shoichiro Ono
Chris Oubridge
Andre Padilla
Jay Pandit
Ezequiel "Zac" Panepucci
Robert Phillips
Hans Purkey
Rama Ranganathan
Michael Randal
Daniel Ricklin
Ian Robinson
Eric Ross
Kristian Rother
Marc Saric
Bill Scott
Keana Scott
Denis Shcherbakov
Goede Schueler
Paul Sherwood
Ward Smith
John Somoza
David van der Spoel
Paul Sprengeler
Matt Stephenson
Peter Stogios
John Stone
Charlie Strauss
Michael Summers
Brian Sutton
Hanna and Abraham Szoke
Rod Tweten
Andras Varadi
Scott Walsh
Pat Walters
Mark White
Michael Wilson
Dave Weininger
Chris Wiesmann
Charles Wolfus
Richard Xie
Miscellaneous Code Snippets Lifted From:
Thomas Malik (fast matrix-multiply code)
John E. Grayson (Author of "Python and Tkinter")
Doug Hellmann (Wrote code that JEG later modified.)
Open-Source "Enablers" (essential, but not directly involved):
Brian Paul (Mesa)
Mark Kilgard (GLUT)
Guido van Rossum (Python)
Linus Torvalds (Linux Kernel)
Precision Insight (DRI)
The XFree86 Project (Free Windowing System)
VA Linux (CVS Hosting)
Richard Stallman/Free Software Foundation (GNU Suite)
The unknown authors of EISPACK (Linear Algebra)
Graphics Technology "Enablers" (essential!)
3dfx (RIP)
nVidia
ATI
-
Thanks to Joni W. Lam for making the business work.
-
Thanks to John Stone and John Furr for being such excellent colleagues.
-
Thanks to Ragu Bharadwaj and Marcin Joachimiak for Java expertise and encouragement.
-
Thanks to Apple Computer for continued encouragement, assistance, and HLAs in support of Mac development. Thanks especially to Robert Kehrer for creating so many fun opportunities over the years.
-
Thanks to Aaron Miller (GlaxoSmithKline) for a continuous stream of thoughtful opinions and suggestions.
-
Thanks to Dave Weininger for suggesting the "roving" feature and for being such an inspirational friend and mentor.
-
Thanks to Matt Hahn and Dave Rogers for proving that it can also be done, again.
-
Thanks to Mick Savage for providing experienced practical advice on the marketing of scientific software.
-
Thanks to Ian Matthew for 3D experience and perspective.
-
Thanks for Jeff Blaney for numerous insightful discussions.
-
Thanks to Elizabeth Pehrson for making this a team effort.
-
Thanks to Erin Bradley for schooling in focus and vision.
-
Thanks to Vera Povolona for catalytic clarity and introspection.
-
Thanks to Anthony Nichols for proving that it can be done, yet again.
-
Thanks to Thompson Doman for timely Open-Source validation.
-
Thanks to Manfred Sippl for making it all seem so simple.
-
Thanks to Kristian Rother for all his excellent work building on the PyMOL foundation, and in helping others learn to use the software.
-
Thanks to Dave Weininger, Scott Dixon, Roger Sayle, Andrew Dalke, Anthony Nichols, Dick Cramer, and David Miller, as well as rest of the Daylight and OpenEye teams for thoughtful discussions on PyMOL and open-source software during my 2002 pilgrimage to Sante Fe, NM.
-
Thanks to Ralf Grosse-Kunstleve for his contribution of the "sglite" space group and symmetry handling module.
-
Thanks to the scientists and management of Sunesis Pharmaceuticals for supporting PyMOL development since program inception.
-
Thanks to the Computational Crystallography Initiative (LBNL) developers for their encouragement, ideas, and support.
-
Thanks to Scott Walsh for being the first individual to provide financial support for PyMOL.
-
Thanks to the hundreds of individuals, companies, and institutions that have provided financial support for the project.
-
Thanks to Brian Paul and the Precision Insight team for development of Mesa/DRI which greatly assisted in the early development of PyMOL.
-
Thanks to Michael Love for the first major outside port of PyMOL (to GNU-Darwin/OSX) and for believing in the cause.
-
Thanks for Paul Sherwood for making a concerted effort to develop using PyMOL long before the software and vision had matured.
-
Thanks to Jay Ponder for thoughtful email discussions on Tinker and the role of open-source scientific software.
-
Thanks to hundreds of PyMOL users for the many forms of feedback, bug sightings, and encouragement they've provided.