ring-pymol
ring-pymol copied to clipboard
PyMOL RING Plugin Install Attempt (Native, Local Conda, Singularity)
HELP please !
Context
We are trying to install and run the RING PyMOL Plugin on Red Hat Enterprise Linux 8.9 with:
PyMOL 3.1.0
qt_material for PyQt styling
Miniconda environment (biotest)
NVIDIA GPU, OpenGL OK
What we did ✅ 1) Native install
Cloned the plugin repo.
Installed dependencies with conda env create -f environment.yml.
Verified PyMOL loads the plugin.
But icons in .ui refer to icon:/primary/... (Qt resource paths).
Result: PyMOL starts, but GUI reports:
qt.svg: Cannot open file '/disk/prog/ring-pymol/icon:/primary/checklist.svg'
✅ 2) Local manual fix
We created assets/primary/ and copied missing SVGs there.
We edited .ui files to point to ../assets/primary/... directly.
Partial success for some buttons — but qt_material still references icon:/... paths.
Result: PyMOL runs but many icons still missing — broken buttons.
✅ 3) Singularity/Apptainer container
Built a container with:
Bootstrap: docker From: continuumio/miniconda3:latest
%post cd /opt git clone https://github.com/BioComputingUP/ring-pymol ./ring-pymol conda env create -f environment-open-source.yml
Activated X11 (DISPLAY, XAUTHORITY) and GPU pass-through.
PyMOL launches inside the container (apptainer shell --nv ...).
Same problem: icons not found: qt.svg: Cannot open file '/disk/prog/ring-pymol/icon:/primary/checkbox_unchecked.svg'
Root cause (we suspect)
The plugin uses Qt resource prefixes (icon:/...) in .ui files or qt_material.
But no resources.qrc is provided or compiled.
So no .qrc → .py resource module exists → Qt does not find these paths.
We tried
Fixing .ui manually to hard paths → partial.
Bundling icons into assets/primary/ → partial.
Running PyMOL in container with correct X11 and OpenGL → same error.
Verified $DISPLAY and $XAUTHORITY → OK.
OpenGL and rendering otherwise work fine.
Issue
We still get broken GUI due to: qt.svg: Cannot open file '/disk/prog/ring-pymol/icon:/...'
Expected
👉 How should we package or compile the plugin so icon:/ works?
Options we see:
Provide a resources.qrc + compile with pyrcc5 → generate resources_rc.py → import it?
Re-write .ui + .qss to use relative disk paths only?
Correct qt_material style to fallback on disk icons?
Other?
System
OS: RHEL 8.9
Apptainer 1.4.1 (formerly Singularity)
PyMOL 3.1.0
OpenGL: fine
X11 forwarding: OK
Sample error qt.svg: Cannot open file '/disk/prog/ring-pymol/icon:/primary/radiobutton_checked.svg'
Request
📌 Clear instructions to:
Compile or provide a .qrc
Or correct paths for PyQt
Or official fix/workaround for qt_material
Thank you for your help!