commit: 98ad49c281d28f3307e72cdfd0b3981204ec5ea9 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Mon Nov 3 19:33:13 2025 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Mon Nov 3 20:17:12 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=98ad49c2
sci-chemistry/pymol: drop 3.0.0-r1, 3.1.0 Closes: https://bugs.gentoo.org/965507 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> sci-chemistry/pymol/Manifest | 1 - .../pymol-3.0.0-SceneGetDrawFlag-indexing.patch | 22 --- .../pymol/files/pymol-3.0.0-distutils-py3.12.patch | 70 -------- .../pymol/files/pymol-3.0.0-eof-maeffplugin.patch | 22 --- .../files/pymol-3.0.0-lto-molfile-plugin.patch | 187 --------------------- sci-chemistry/pymol/files/pymol-3.0.0-numpy2.patch | 35 ---- .../pymol/files/pymol-3.0.0-py3.12-progress.patch | 26 --- sci-chemistry/pymol/pymol-3.0.0-r1.ebuild | 123 -------------- sci-chemistry/pymol/pymol-3.1.0.ebuild | 121 ------------- 9 files changed, 607 deletions(-) diff --git a/sci-chemistry/pymol/Manifest b/sci-chemistry/pymol/Manifest index 9cb6b70b1b94..c54a0cc1b0c4 100644 --- a/sci-chemistry/pymol/Manifest +++ b/sci-chemistry/pymol/Manifest @@ -1,2 +1 @@ -DIST pymol-3.0.0.tar.gz 29510174 BLAKE2B b67818e408045e386e44a203f29cd94a0ce34ec706776d29f78f1720bdc5c79d88f3b3e178882295b5a636d97fe70ff49eb1b021a9a6b96f0f4216bc392219d1 SHA512 eab05a46220339a05d8d4facdce6bfa08c6fc8a858a7b228236ef6c4054207059ef0f53a26bedebe4084a74b510015937fb4477f99612b21412cd75bf0c376a2 DIST pymol-3.1.0.tar.gz 29550866 BLAKE2B 0ad054407ac74bf2d088b1d4f7857bfd021ac283b05b95189aae7e9db2d6af8bf34d8b1ceb944af74d66a2d7b4481fa0b7dc42021d653d27d8661e00b1a44fbf SHA512 2eab9f12b0d716ae807659ebf4475f5a4748d4aa9db8266cea25059679898ce6f4c566d304ddaacf069b56baebc0f7c029c4bd1b2e983b8f7226c0d5cea5d097 diff --git a/sci-chemistry/pymol/files/pymol-3.0.0-SceneGetDrawFlag-indexing.patch b/sci-chemistry/pymol/files/pymol-3.0.0-SceneGetDrawFlag-indexing.patch deleted file mode 100644 index c23bf79d6166..000000000000 --- a/sci-chemistry/pymol/files/pymol-3.0.0-SceneGetDrawFlag-indexing.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 50be59fb4bd6706c7939a659f4477041e2f0619e Mon Sep 17 00:00:00 2001 -From: Jarrett Johnson <[email protected]> -Date: Sat, 6 Apr 2024 22:49:41 -0400 -Subject: [PATCH] PYMOL-4849: Fix SceneGetDrawFlag slot indexing - ---- - layer1/Scene.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/layer1/Scene.cpp b/layer1/Scene.cpp -index e4888db6d..ed211bdd6 100644 ---- a/layer1/Scene.cpp -+++ b/layer1/Scene.cpp -@@ -4448,7 +4448,7 @@ int SceneGetDrawFlag(GridInfo * grid, int *slot_vla, int slot) - { - if(((slot < 0) && grid->slot) || - ((slot == 0) && (grid->slot == 0)) || -- (slot_vla && (slot_vla[slot] == grid->slot))) { -+ (slot_vla && (slot >= 0 && slot_vla[slot] == grid->slot))) { - draw_flag = true; - } - } diff --git a/sci-chemistry/pymol/files/pymol-3.0.0-distutils-py3.12.patch b/sci-chemistry/pymol/files/pymol-3.0.0-distutils-py3.12.patch deleted file mode 100644 index 3ab0384bd5f6..000000000000 --- a/sci-chemistry/pymol/files/pymol-3.0.0-distutils-py3.12.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 3d3c8963798d426e70675c3c40df146e12869b0a Mon Sep 17 00:00:00 2001 -From: Branch Vincent <[email protected]> -Date: Fri, 10 May 2024 22:12:58 -0700 -Subject: [PATCH] replace distutils for python 3.12 (#362) - -Co-authored-by: Jarrett Johnson <[email protected]> ---- - create_shadertext.py | 3 +-- - modules/pymol/plugins/installation.py | 7 +++---- - testing/tests/system/pymolwin.py | 1 - - 3 files changed, 4 insertions(+), 7 deletions(-) - -diff --git a/create_shadertext.py b/create_shadertext.py -index 7bae72180..f6857087e 100644 ---- a/create_shadertext.py -+++ b/create_shadertext.py -@@ -7,7 +7,6 @@ - from collections import defaultdict - from os.path import dirname - from subprocess import Popen, PIPE --from distutils import dir_util - - def create_all(generated_dir, pymoldir="."): - ''' -@@ -30,7 +29,7 @@ def __init__(self, filename): - self.out = cStringIO.StringIO() - self.filename = filename - else: -- dir_util.mkpath(os.path.dirname(filename)) -+ os.makedirs(os.path.dirname(filename), exist_ok=True) - self.out = open(filename, "w") - self.filename = None - def close(self): -diff --git a/modules/pymol/plugins/installation.py b/modules/pymol/plugins/installation.py -index 3a980545b..2fb8f6f03 100644 ---- a/modules/pymol/plugins/installation.py -+++ b/modules/pymol/plugins/installation.py -@@ -45,8 +45,6 @@ def cmp_version(v1, v2): - ''' - Compares two version strings. An empty version string is always considered - smaller than a non-empty version string. -- -- Uses distutils.version.StrictVersion to evaluate non-empty version strings. - ''' - if v1 == v2: - return 0 -@@ -55,8 +53,9 @@ def cmp_version(v1, v2): - if v2 == '': - return 1 - try: -- from distutils.version import StrictVersion as Version -- return cmp(Version(v1), Version(v2)) -+ v1_parts = list(map(int, v1.split('.'))) -+ v2_parts = list(map(int, v2.split('.'))) -+ return (v1_parts > v2_parts) - (v1_parts < v2_parts) - except: - print(' Warning: Version parsing failed for', v1, 'and/or', v2) - return 0 -diff --git a/testing/tests/system/pymolwin.py b/testing/tests/system/pymolwin.py -index 429fd28aa..e7885bd38 100644 ---- a/testing/tests/system/pymolwin.py -+++ b/testing/tests/system/pymolwin.py -@@ -7,7 +7,6 @@ - import subprocess - import sys - import unittest --from distutils.spawn import find_executable - from pymol import cmd, CmdException, testing, stored - - @unittest.skipIf(not sys.platform.startswith('win'), 'windows only') diff --git a/sci-chemistry/pymol/files/pymol-3.0.0-eof-maeffplugin.patch b/sci-chemistry/pymol/files/pymol-3.0.0-eof-maeffplugin.patch deleted file mode 100644 index 8eb8fbde318b..000000000000 --- a/sci-chemistry/pymol/files/pymol-3.0.0-eof-maeffplugin.patch +++ /dev/null @@ -1,22 +0,0 @@ -From f005dde377e3e50b6e3f405939435c5061fa8b63 Mon Sep 17 00:00:00 2001 -From: Jarrett Johnson <[email protected]> -Date: Mon, 22 Apr 2024 11:12:21 -0400 -Subject: [PATCH] PYMOL-4869: Only compare eof token in maeffplugin parser - ---- - contrib/uiuc/plugins/molfile_plugin/src/maeffplugin.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/contrib/uiuc/plugins/molfile_plugin/src/maeffplugin.cpp b/contrib/uiuc/plugins/molfile_plugin/src/maeffplugin.cpp -index efaede65b..0547ff91b 100644 ---- a/contrib/uiuc/plugins/molfile_plugin/src/maeffplugin.cpp -+++ b/contrib/uiuc/plugins/molfile_plugin/src/maeffplugin.cpp -@@ -248,7 +248,7 @@ const char * Tokenizer::token(bool ignore_single) { - char c = peek(); - bool good = false; - ssize_t diff; -- while(state != DONE && c >= 0) { -+ while(state != DONE && c != std::char_traits<char>::eof()) { - // make sure we have space in m_token for 2 more characters - if ((diff = ptr-m_token) >= max_token_size-1) { - m_token = (char *)realloc( m_token, 2*max_token_size ); diff --git a/sci-chemistry/pymol/files/pymol-3.0.0-lto-molfile-plugin.patch b/sci-chemistry/pymol/files/pymol-3.0.0-lto-molfile-plugin.patch deleted file mode 100644 index 445fc6bc3a10..000000000000 --- a/sci-chemistry/pymol/files/pymol-3.0.0-lto-molfile-plugin.patch +++ /dev/null @@ -1,187 +0,0 @@ -From 9d3061ca58d8b69d7dad74a68fc13fe81af0ff8e Mon Sep 17 00:00:00 2001 -From: Jarrett Johnson <[email protected]> -Date: Thu, 5 Sep 2024 11:20:02 -0400 -Subject: [PATCH] Symbol renaming in molfile_plugin and internal linkage - -Fixes #395 ---- - contrib/uiuc/plugins/molfile_plugin/src/ReadPARM7.h | 10 +++++----- - .../uiuc/plugins/molfile_plugin/src/parm7plugin.cpp | 8 +++++--- - contrib/uiuc/plugins/molfile_plugin/src/parmplugin.cpp | 2 ++ - layer0/Isosurf.cpp | 6 ++++-- - layer0/Tetsurf.cpp | 6 ++++-- - ov/src/OVOneToAny.cpp | 2 ++ - ov/src/OVOneToOne.cpp | 2 ++ - 7 files changed, 24 insertions(+), 12 deletions(-) - -diff --git a/contrib/uiuc/plugins/molfile_plugin/src/ReadPARM7.h b/contrib/uiuc/plugins/molfile_plugin/src/ReadPARM7.h -index 21d967d79..6bd6ddb08 100644 ---- a/contrib/uiuc/plugins/molfile_plugin/src/ReadPARM7.h -+++ b/contrib/uiuc/plugins/molfile_plugin/src/ReadPARM7.h -@@ -59,7 +59,7 @@ - #endif - - --typedef struct parm { -+typedef struct parm7 { - char title[85]; - char version[85]; - int IfBox, Nmxrs, IfCap, -@@ -70,7 +70,7 @@ typedef struct parm { - Ipatm, Natcap,Ifpert,Nbper,Ngper,Ndper,Mbper,Mgper,Mdper, - Numextra; - _REAL Box[3], Cutcap, Xcap, Ycap, Zcap; --} parmstruct; -+} parm7struct; - - static int read_parm7_flag(FILE *file, const char *flag, const char *format) { - char buf[1024]; -@@ -359,10 +359,10 @@ static void close_parm7_file(FILE *fileptr, int popn) { - - static const char *parm7 = "%8d%8d%8d%8d%8d%8d%8d%8d%8d%8d\n"; - --static parmstruct *read_parm7_header(FILE *file) { -+static parm7struct *read_parm7_header(FILE *file) { - char sdum[512]; -- parmstruct *prm; -- prm = new parmstruct; -+ parm7struct *prm; -+ prm = new parm7struct; - - /* READ VERSION */ - fgets(sdum, 512, file); -diff --git a/contrib/uiuc/plugins/molfile_plugin/src/parm7plugin.cpp b/contrib/uiuc/plugins/molfile_plugin/src/parm7plugin.cpp -index faf2717c6..2d46553b4 100644 ---- a/contrib/uiuc/plugins/molfile_plugin/src/parm7plugin.cpp -+++ b/contrib/uiuc/plugins/molfile_plugin/src/parm7plugin.cpp -@@ -24,13 +24,15 @@ - #include "molfile_plugin.h" - #include "ReadPARM7.h" - -+namespace { - typedef struct { -- parmstruct *prm; -+ parm7struct *prm; - int popn; - FILE *fd; - int nbonds; - int *from, *to; - } parmdata; -+} - - static void *open_parm7_read(const char *filename, const char *,int *natoms) { - FILE *fd; -@@ -39,7 +41,7 @@ static void *open_parm7_read(const char *filename, const char *,int *natoms) { - fprintf(stderr, "parm7plugin) Cannot open parm file '%s'\n", filename); - return NULL; - } -- parmstruct *prm = read_parm7_header(fd); -+ parm7struct *prm = read_parm7_header(fd); - if (!prm) { - close_parm7_file(fd, popn); - return NULL; -@@ -58,7 +60,7 @@ static void *open_parm7_read(const char *filename, const char *,int *natoms) { - - static int read_parm7_structure(void *mydata, int *optflags, molfile_atom_t *atoms) { - parmdata *p = (parmdata *)mydata; -- const parmstruct *prm = p->prm; -+ const parm7struct *prm = p->prm; - FILE *file = p->fd; - char buf[85]; - char field[85]; -diff --git a/contrib/uiuc/plugins/molfile_plugin/src/parmplugin.cpp b/contrib/uiuc/plugins/molfile_plugin/src/parmplugin.cpp -index acabcb1b5..4996383e1 100644 ---- a/contrib/uiuc/plugins/molfile_plugin/src/parmplugin.cpp -+++ b/contrib/uiuc/plugins/molfile_plugin/src/parmplugin.cpp -@@ -24,12 +24,14 @@ - #include "ReadPARM.h" - #include "molfile_plugin.h" - -+namespace { - typedef struct { - ReadPARM *rp; - FILE *parm; - int natoms; - int *from, *to; - } parmdata; -+} - - static void *open_parm_read(const char *filename, const char *, - int *natoms) { -diff --git a/layer0/Isosurf.cpp b/layer0/Isosurf.cpp -index 77cf42eeb..b2dfaedd7 100644 ---- a/layer0/Isosurf.cpp -+++ b/layer0/Isosurf.cpp -@@ -44,11 +44,13 @@ Z* ------------------------------------------------------------------- - - #define I4(field,P1,P2,P3,P4) ((field)->get<int>(P1,P2,P3,P4)) - --typedef struct PointType { -+namespace { -+struct PointType { - float Point[3]; - int NLink; - struct PointType* Link[4]; --} PointType; -+}; -+} - - #define EdgePtPtr(field,P2,P3,P4,P5) ((field)->ptr(P2,P3,P4,P5)) - -diff --git a/layer0/Tetsurf.cpp b/layer0/Tetsurf.cpp -index 0d78b535e..cb2f5b37b 100644 ---- a/layer0/Tetsurf.cpp -+++ b/layer0/Tetsurf.cpp -@@ -38,12 +38,14 @@ Z* ------------------------------------------------------------------- - - #define I3(field,P1,P2,P3) ((field)->get<int>(P1,P2,P3)) - --typedef struct { -+namespace { -+struct PointType { - float Point[3]; - float Normal[3]; - int NormalFlag; - int Link; --} PointType; -+}; -+} - - typedef struct { - PointType *p[3]; -diff --git a/ov/src/OVOneToAny.cpp b/ov/src/OVOneToAny.cpp -index 1a675a51b..5dbbc498c 100644 ---- a/ov/src/OVOneToAny.cpp -+++ b/ov/src/OVOneToAny.cpp -@@ -8,11 +8,13 @@ - - /* FYI: "up" stands for UniquePair -- a precursor to OneToAny */ - -+namespace { - typedef struct { - int active; - ov_word forward_value, reverse_value; - ov_size forward_next; - } up_element; -+} - - struct _OVOneToAny { - OVHeap *heap; -diff --git a/ov/src/OVOneToOne.cpp b/ov/src/OVOneToOne.cpp -index 6dfa8f457..4e9baf9c6 100644 ---- a/ov/src/OVOneToOne.cpp -+++ b/ov/src/OVOneToOne.cpp -@@ -8,11 +8,13 @@ - - /* FYI: "up" stands for UniquePair -- a precursor to OneToOne */ - -+namespace { - typedef struct { - int active; - ov_word forward_value, reverse_value; - ov_size forward_next, reverse_next; - } up_element; -+} - - struct _OVOneToOne { - OVHeap *heap; diff --git a/sci-chemistry/pymol/files/pymol-3.0.0-numpy2.patch b/sci-chemistry/pymol/files/pymol-3.0.0-numpy2.patch deleted file mode 100644 index 7cf2884ee201..000000000000 --- a/sci-chemistry/pymol/files/pymol-3.0.0-numpy2.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 758cec338057b23007ffd14c960634ff0ee24af1 Mon Sep 17 00:00:00 2001 -From: Jarrett Johnson <[email protected]> -Date: Tue, 27 Aug 2024 20:06:57 -0400 -Subject: [PATCH] Make numpy2 compatible - ---- - layer2/ObjectMap.cpp | 1 + - modules/chempy/brick.py | 2 +- - 2 files changed, 2 insertions(+), 1 deletion(-) - -diff --git a/layer2/ObjectMap.cpp b/layer2/ObjectMap.cpp -index ada826f8a..62e3457a4 100644 ---- a/layer2/ObjectMap.cpp -+++ b/layer2/ObjectMap.cpp -@@ -5596,6 +5596,7 @@ static int ObjectMapNumPyArrayToMapState(PyMOLGlobals * G, ObjectMapState * ms, - void * ptr; - - #ifdef _PYMOL_NUMPY -+ import_array1(0); - PyArrayObject * pao = (PyArrayObject *) ary; - const int itemsize = PyArray_ITEMSIZE(pao); - #endif -diff --git a/modules/chempy/brick.py b/modules/chempy/brick.py -index fc514eb3a..e4c0f1bbb 100644 ---- a/modules/chempy/brick.py -+++ b/modules/chempy/brick.py -@@ -31,7 +31,7 @@ def from_numpy(cls, data, grid, origin=(0.0, 0.0, 0.0)): - @param range: 3f sequence - @param origin: 3f sequence - ''' -- data = numpy.asfarray(data) -+ data = numpy.asarray(data, dtype=numpy.float64) - assert len(data.shape) == 3 - - self = cls() diff --git a/sci-chemistry/pymol/files/pymol-3.0.0-py3.12-progress.patch b/sci-chemistry/pymol/files/pymol-3.0.0-py3.12-progress.patch deleted file mode 100644 index b09f36048b20..000000000000 --- a/sci-chemistry/pymol/files/pymol-3.0.0-py3.12-progress.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 11325a6014565700be9673236c9b7b6c856ea6d9 Mon Sep 17 00:00:00 2001 -From: Jarrett Johnson <[email protected]> -Date: Wed, 28 Aug 2024 22:07:15 -0400 -Subject: [PATCH] Python 3.12 TypeError: convert progress to int for progress - bar - ---- - modules/pmg_qt/pymol_qt_gui.py | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/modules/pmg_qt/pymol_qt_gui.py b/modules/pmg_qt/pymol_qt_gui.py -index f2d663204..6e935b0d6 100644 ---- a/modules/pmg_qt/pymol_qt_gui.py -+++ b/modules/pmg_qt/pymol_qt_gui.py -@@ -929,9 +929,9 @@ def command_set_cursor(self, i): - return self.lineedit.setCursorPosition(i) - - def update_progress(self): -- progress = self.cmd.get_progress() -+ progress = int(self.cmd.get_progress() * 100) - if progress >= 0: -- self.progressbar.setValue(progress * 100) -+ self.progressbar.setValue(progress) - self.progressbar.show() - self.abortbutton.show() - else: diff --git a/sci-chemistry/pymol/pymol-3.0.0-r1.ebuild b/sci-chemistry/pymol/pymol-3.0.0-r1.ebuild deleted file mode 100644 index a352b9586b22..000000000000 --- a/sci-chemistry/pymol/pymol-3.0.0-r1.ebuild +++ /dev/null @@ -1,123 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{11..13} ) -DISTUTILS_USE_PEP517="setuptools" -DISTUTILS_EXT=1 - -inherit desktop flag-o-matic xdg distutils-r1 - -DESCRIPTION="A Python-extensible molecular graphics system" -HOMEPAGE="https://www.pymol.org/" -SRC_URI="https://github.com/schrodinger/pymol-open-source/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -S="${WORKDIR}"/${PN}-open-source-${PV} - -LICENSE="BitstreamVera BSD freedist HPND OFL-1.0 public-domain UoI-NCSA" #844991 -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~x64-macos" -IUSE="+netcdf web" - -DEPEND=" - dev-cpp/msgpack-cxx - dev-libs/mmtf-cpp - dev-python/numpy[${PYTHON_USEDEP}] - sys-libs/zlib - media-libs/freetype:2 - media-libs/glew:0= - media-libs/glm - media-libs/libpng:0= - netcdf? ( sci-libs/netcdf:0= ) -" -BDEPEND="test? ( >=dev-cpp/catch-2:0 )" -RDEPEND=" - ${DEPEND} - media-video/mpeg-tools - dev-python/pyopengl[${PYTHON_USEDEP}] - dev-python/pyqt5[opengl,${PYTHON_USEDEP}] - dev-python/pmw[${PYTHON_USEDEP}] - sci-chemistry/chemical-mime-data -" - -distutils_enable_tests pytest - -# FIXME: We need to still figure out about how to make all the tests pass -# https://bugs.gentoo.org/932127 -RESTRICT="test" - -PATCHES=( - "${FILESDIR}/${P}-distutils-py3.12.patch" - "${FILESDIR}/${P}-SceneGetDrawFlag-indexing.patch" - "${FILESDIR}/${P}-eof-maeffplugin.patch" - "${FILESDIR}/${P}-numpy2.patch" - "${FILESDIR}/${P}-py3.12-progress.patch" - "${FILESDIR}/${P}-lto-molfile-plugin.patch" -) - -python_prepare_all() { - sed \ - -e "s:\"/usr:\"${EPREFIX}/usr:g" \ - -e "/ext_comp_args.*+=/s:\[.*\]$:\[\]:g" \ - -i setup.py || die - - sed \ - -e "s:/opt/local:${EPREFIX}/usr:g" \ - -e '/ext_comp_args/s:\[.*\]:[]:g' \ - -i setup.py || die - sed \ - -e "s:\['msgpackc'\]:\['msgpack'\]:g" \ - -i setup.py || die - - append-cxxflags -std=c++17 - - distutils-r1_python_prepare_all -} - -python_configure_all() { - use !netcdf && DISTUTILS_ARGS=( --no-vmd-plugins ) -} - -python_install() { - distutils-r1_python_install \ - --pymol-path="${EPREFIX}/usr/share/pymol" - - sed \ - -e '1i#!/usr/bin/env python' \ - "${D}/$(python_get_sitedir)"/pymol/__init__.py > "${T}"/${PN} || die - python_doscript "${T}"/${PN} -} - -python_test() { - "${EPYTHON}" -m pymol -ckqy testing/testing.py --offline --no-mmlibs --no-undo --run all || die -} - -python_install_all() { - distutils-r1_python_install_all - - # Move data to correct location - dodir /usr/share/pymol - mv "${D}/$(python_get_sitedir)"/pymol/pymol_path/* "${ED}/usr/share/pymol" || die - - # These environment variables should not go in the wrapper script, or else - # it will be impossible to use the PyMOL libraries from Python. - cat >> "${T}"/20pymol <<- EOF || die - PYMOL_PATH="${EPREFIX}/usr/share/pymol" - PYMOL_DATA="${EPREFIX}/usr/share/pymol/data" - PYMOL_SCRIPTS="${EPREFIX}/usr/share/pymol/scripts" - EOF - - doenvd "${T}"/20pymol - - newicon "${S}"/data/pymol/icons/icon2.svg ${PN}.svg - make_desktop_entry "${PN} %u" PyMol ${PN} \ - "Graphics;Education;Science;Chemistry;" \ - "MimeType=chemical/x-pdb;chemical/pdby;chemical/x-mdl-sdfile;chemical/x-mdl-molfile;chemical/x-mol2;chemical/seq-aa-fasta;chemical/seq-na-fasta;chemical/x-xyz;chemical/x-mdl-sdf;chemical/x-macromodel-input;chemical/x-vmd;" - - if ! use web; then - rm -rf "${D}/$(python_get_sitedir)/web" || die - fi - - rm -f "${ED}"/usr/share/${PN}/LICENSE || die -} diff --git a/sci-chemistry/pymol/pymol-3.1.0.ebuild b/sci-chemistry/pymol/pymol-3.1.0.ebuild deleted file mode 100644 index 92bf696f3d13..000000000000 --- a/sci-chemistry/pymol/pymol-3.1.0.ebuild +++ /dev/null @@ -1,121 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{11..13} ) -DISTUTILS_USE_PEP517="standalone" -DISTUTILS_EXT=1 - -inherit desktop xdg distutils-r1 - -DESCRIPTION="A Python-extensible molecular graphics system" -HOMEPAGE="https://www.pymol.org/" -SRC_URI="https://github.com/schrodinger/pymol-open-source/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -S="${WORKDIR}"/${PN}-open-source-${PV} - -LICENSE="BitstreamVera BSD freedist HPND MIT-0 OFL-1.0 public-domain UoI-NCSA" #844991 -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~x64-macos" -IUSE="+netcdf web" - -DEPEND=" - dev-cpp/msgpack-cxx - dev-libs/mmtf-cpp - dev-python/numpy[${PYTHON_USEDEP}] - >=dev-python/pillow-10.3.0[${PYTHON_USEDEP}] - sys-libs/zlib - media-libs/freetype:2 - media-libs/glew:0= - media-libs/glm - media-libs/libpng:0= - netcdf? ( sci-libs/netcdf:0= ) -" -BDEPEND="test? ( >=dev-cpp/catch-2:0 ) - dev-python/setuptools[${PYTHON_USEDEP}] - dev-python/wheel[${PYTHON_USEDEP}] -" -RDEPEND=" - ${DEPEND} - media-video/mpeg-tools - dev-python/pyopengl[${PYTHON_USEDEP}] - dev-python/pyqt5[opengl,${PYTHON_USEDEP}] - dev-python/pmw[${PYTHON_USEDEP}] - sci-chemistry/chemical-mime-data -" - -distutils_enable_tests pytest - -# FIXME: We need to still figure out about how to make all the tests pass -# https://bugs.gentoo.org/932127 -RESTRICT="test" - -python_prepare_all() { - sed \ - -e 's/no_launcher = False/no_launcher = True/' \ - -i setup.py || die - - if use !netcdf; then - sed -e 's/vmd_plugins = True/vmd_plugins = False/' \ - -i setup.py || die - fi - - sed \ - -e "s:\"/usr:\"${EPREFIX}/usr:g" \ - -e "/ext_comp_args.*+=/s:\[.*\]$:\[\]:g" \ - -i setup.py || die - - sed \ - -e "s:/opt/local:${EPREFIX}/usr:g" \ - -e '/ext_comp_args/s:\[.*\]:[]:g' \ - -i setup.py || die - sed \ - -e "s:\['msgpackc'\]:\['msgpack'\]:g" \ - -i setup.py || die - - distutils-r1_python_prepare_all -} - -python_install() { - distutils-r1_python_install \ - --pymol-path="${EPREFIX}/usr/share/pymol" - - sed \ - -e '1i#!/usr/bin/env python' \ - "${D}/$(python_get_sitedir)"/pymol/__init__.py > "${T}"/${PN} || die - python_doscript "${T}"/${PN} -} - -python_test() { - "${EPYTHON}" -m pymol -ckqy testing/testing.py --offline --no-mmlibs --no-undo --run all || die -} - -python_install_all() { - distutils-r1_python_install_all - - # Move data to correct location - dodir /usr/share/pymol - mv "${D}/$(python_get_sitedir)"/pymol/pymol_path/* "${ED}/usr/share/pymol" || die - - # These environment variables should not go in the wrapper script, or else - # it will be impossible to use the PyMOL libraries from Python. - cat >> "${T}"/20pymol <<- EOF || die - PYMOL_PATH="${EPREFIX}/usr/share/pymol" - PYMOL_DATA="${EPREFIX}/usr/share/pymol/data" - PYMOL_SCRIPTS="${EPREFIX}/usr/share/pymol/scripts" - EOF - - doenvd "${T}"/20pymol - - newicon "${S}"/data/pymol/icons/icon2.svg ${PN}.svg - make_desktop_entry "${PN} %u" PyMol ${PN} \ - "Graphics;Education;Science;Chemistry;" \ - "MimeType=chemical/x-pdb;chemical/pdby;chemical/x-mdl-sdfile;chemical/x-mdl-molfile;chemical/x-mol2;chemical/seq-aa-fasta;chemical/seq-na-fasta;chemical/x-xyz;chemical/x-mdl-sdf;chemical/x-macromodel-input;chemical/x-vmd;" - - if ! use web; then - rm -rf "${D}/$(python_get_sitedir)/web" || die - fi - - rm -f "${ED}"/usr/share/${PN}/LICENSE || die -}
