diff options
Diffstat (limited to 'sci-chemistry')
-rw-r--r-- | sci-chemistry/pymol/ChangeLog | 4 | ||||
-rw-r--r-- | sci-chemistry/pymol/files/pymol-9999-tk8.6.patch | 163 | ||||
-rw-r--r-- | sci-chemistry/pymol/pymol-9999.ebuild | 21 |
3 files changed, 183 insertions, 5 deletions
diff --git a/sci-chemistry/pymol/ChangeLog b/sci-chemistry/pymol/ChangeLog index 67954f09e..15af521b6 100644 --- a/sci-chemistry/pymol/ChangeLog +++ b/sci-chemistry/pymol/ChangeLog @@ -2,6 +2,10 @@ # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 # $Header: $ + 30 Oct 2014; Justin Lecher <jlec@gentoo.org> pymol-9999.ebuild, + +files/pymol-9999-tk8.6.patch: + Make it really multi py ABI ready; use internal apbs plugin + 27 Oct 2014; Justin Lecher <jlec@gentoo.org> pymol-9999.ebuild: Add missing PYTHON_USEDEP diff --git a/sci-chemistry/pymol/files/pymol-9999-tk8.6.patch b/sci-chemistry/pymol/files/pymol-9999-tk8.6.patch new file mode 100644 index 000000000..c4fa20954 --- /dev/null +++ b/sci-chemistry/pymol/files/pymol-9999-tk8.6.patch @@ -0,0 +1,163 @@ + pymol/modules/pmg_tk/startup/apbs_tools.py | 36 +++++++++++++++--------------- + 1 file changed, 18 insertions(+), 18 deletions(-) + +diff --git a/pymol/modules/pmg_tk/startup/apbs_tools.py b/pymol/modules/pmg_tk/startup/apbs_tools.py +index 9b76070..ad82df3 100644 +--- a/pymol/modules/pmg_tk/startup/apbs_tools.py ++++ b/pymol/modules/pmg_tk/startup/apbs_tools.py +@@ -612,7 +612,7 @@ class APBSTools2: + # Set up the Main page + page = self.notebook.add('Main') + group = Pmw.Group(page,tag_text='Main options') +- group.pack(fill = 'both', expand = 1, padx = 10, pady = 5) ++ group.grid(padx = 10, pady = 5, sticky=(N, S, E, W)) + self.selection = Pmw.EntryField(group.interior(), + labelpos='w', + label_text='Selection to use: ', +@@ -658,7 +658,7 @@ class APBSTools2: + page = self.notebook.add('Configuration') + + group = Pmw.Group(page,tag_text='Dielectric Constants') +- group.pack(fill = 'both', expand = 1, padx = 4, pady = 5) ++ group.grid(padx = 4, pady = 5, sticky=(N, S, E, W)) + group.grid(column=0, row=0) + self.interior_dielectric = Pmw.EntryField(group.interior(),labelpos='w', + label_text = 'Protein Dielectric:', +@@ -677,7 +677,7 @@ class APBSTools2: + #entry.pack(side='left',fill='both',expand=1,padx=4) # side-by-side + entry.pack(fill='x',expand=1,padx=4,pady=1) # vertical + group = Pmw.Group(page,tag_text='Other') +- group.pack(fill='both',expand=1, padx=4, pady=5) ++ group.grid(padx=4, pady=5, sticky=(N, S, E, W)) + group.grid(column=1, row=1,columnspan=4) + self.max_mem_allowed = Pmw.EntryField(group.interior(),labelpos='w', + label_text = 'Maximum Memory Allowed (MB):', +@@ -735,7 +735,7 @@ class APBSTools2: + + + group = Pmw.Group(page,tag_text='Ions') +- group.pack(fill='both',expand=1, padx=4, pady=5) ++ group.grid(padx=4, pady=5, sticky=(N, S, E, W)) + group.grid(column=0, row=1, ) + self.ion_plus_one_conc = Pmw.EntryField(group.interior(), + labelpos='w', +@@ -794,7 +794,7 @@ class APBSTools2: + entry.pack(fill='x',expand=1,padx=4) + + group = Pmw.Group(page,tag_text = 'Coarse Mesh Length') +- group.pack(fill = 'both', expand = 1, padx = 4, pady = 5) ++ group.grid(padx = 4, pady = 5, sticky=(N, S, E, W)) + group.grid(column = 1, row = 0) + for coord in 'x y z'.split(): + setattr(self,'grid_coarse_%s'%coord,Pmw.EntryField(group.interior(), +@@ -809,7 +809,7 @@ class APBSTools2: + + + group = Pmw.Group(page,tag_text = 'Fine Mesh Length') +- group.pack(fill = 'both', expand = 1, padx = 4, pady = 5) ++ group.grid(padx = 4, pady = 5, sticky=(N, S, E, W)) + group.grid(column = 2, row = 0) + for coord in 'x y z'.split(): + setattr(self,'grid_fine_%s'%coord,Pmw.EntryField(group.interior(), +@@ -824,7 +824,7 @@ class APBSTools2: + + + group = Pmw.Group(page,tag_text = 'Grid Center') +- group.pack(fill = 'both', expand = 1, padx = 4, pady = 5) ++ group.grid(padx = 4, pady = 5, sticky=(N, S, E, W)) + group.grid(column = 3, row = 0) + for coord in 'x y z'.split(): + setattr(self,'grid_center_%s'%coord,Pmw.EntryField(group.interior(), +@@ -838,7 +838,7 @@ class APBSTools2: + getattr(self,'grid_center_%s'%coord).pack(fill='x', expand=1, padx=4, pady=1) + + group = Pmw.Group(page,tag_text = 'Grid Points') +- group.pack(fill = 'both', expand = 1, padx = 4, pady = 5) ++ group.grid(padx = 4, pady = 5, sticky=(N, S, E, W)) + group.grid(column = 4, row = 0) + for coord in 'x y z'.split(): + setattr(self,'grid_points_%s'%coord,Pmw.EntryField(group.interior(), +@@ -856,7 +856,7 @@ class APBSTools2: + page.grid_columnconfigure(5,weight=1) + page = self.notebook.add('Program Locations') + group = Pmw.Group(page,tag_text='Locations') +- group.pack(fill = 'both', expand = 1, padx = 10, pady = 5) ++ group.grid(padx = 10, pady = 5, sticky=(N, S, E, W)) + def quickFileValidation(s): + if s == '': return Pmw.PARTIAL + elif os.path.isfile(s): return Pmw.OK +@@ -955,7 +955,7 @@ protein residues and AMBER charges. If wish that behavior, simply delete the "p + + page = self.notebook.add('Temp File Locations') + group = Pmw.Group(page,tag_text='Locations') +- group.pack(fill = 'both', expand = 1, padx = 10, pady = 5) ++ group.grid(padx = 10, pady = 5, sticky=(N, S, E, W)) + self.pymol_generated_pqr_filename = Pmw.EntryField(group.interior(), + labelpos = 'w', + label_pyclass = FileDialogButtonClassFactory.get(self.setPymolGeneratedPqrFilename), +@@ -1003,17 +1003,17 @@ by setting the environment variable TEMP. + page = self.notebook.add('Visualization (1)') + group = VisualizationGroup(page,tag_text='Visualization',visgroup_num=1) + self.visualization_group_1 = group +- group.pack(fill = 'both', expand = 1, padx = 10, pady = 5) ++ group.grid(padx = 10, pady = 5, sticky=(N, S, E, W)) + + page = self.notebook.add('Visualization (2)') + group = VisualizationGroup(page,tag_text='Visualization',visgroup_num=2) + self.visualization_group_2 = group +- group.pack(fill = 'both', expand = 1, padx = 10, pady = 5) ++ group.grid(padx = 10, pady = 5, sticky=(N, S, E, W)) + + # Create a couple of other empty pages + page = self.notebook.add('About') + group = Pmw.Group(page, tag_text='About PyMOL APBS Tools') +- group.pack(fill = 'both', expand = 1, padx = 10, pady = 5) ++ group.grid(padx = 10, pady = 5, sticky=(N, S, E, W)) + text = """This plugin integrates PyMOL (http://PyMOL.org/) with APBS (http://www.poissonboltzmann.org/apbs/). + + Documentation may be found at +@@ -2271,7 +2271,7 @@ class VisualizationGroup(Pmw.Group): + self.update_buttonbox = Pmw.ButtonBox(self.mm_group.interior(), padx=0) + self.update_buttonbox.pack(side=LEFT) + self.update_buttonbox.add('Update',command=self.refresh) +- self.mm_group.pack(fill = 'both', expand = 1, padx = 4, pady = 5, side=TOP) ++ self.mm_group.grid(padx = 4, pady = 5, sticky=(N, S, E, W)) + + self.ms_group = Pmw.Group(self.interior(),tag_text='Molecular Surface') + self.ms_buttonbox = Pmw.ButtonBox(self.ms_group.interior(), padx=0) +@@ -2322,7 +2322,7 @@ class VisualizationGroup(Pmw.Group): + bars = (self.mol_surf_low,self.mol_surf_middle,self.mol_surf_high) + Pmw.alignlabels(bars) + for bar in bars: bar.pack(side=LEFT) +- self.ms_group.pack(fill = 'both', expand = 1, padx = 4, pady = 5, side=LEFT) ++ self.ms_group.grid(padx = 4, pady = 5, sticky=(N, S, E, W)) + + self.fl_group = Pmw.Group(self.interior(),tag_text='Field Lines') + self.fl_buttonbox = Pmw.ButtonBox(self.fl_group.interior(), padx=0) +@@ -2337,7 +2337,7 @@ class VisualizationGroup(Pmw.Group): + text = """Follows same coloring as surface.""", + ) + label.pack() +- self.fl_group.pack(fill = 'both', expand = 1, padx = 4, pady = 5, side=TOP) ++ self.fl_group.grid(padx = 4, pady = 5, sticky=(N, S, E, W)) + + self.pi_group = Pmw.Group(self.interior(),tag_text='Positive Isosurface') + self.pi_buttonbox = Pmw.ButtonBox(self.pi_group.interior(), padx=0) +@@ -2356,7 +2356,7 @@ class VisualizationGroup(Pmw.Group): + entryfield_validate = {'validator' : 'real', 'min':0} + ) + self.pos_surf_val.pack(side=LEFT) +- self.pi_group.pack(fill = 'both', expand = 1, padx = 4, pady = 5, side=LEFT) ++ self.pi_group.grid(padx = 4, pady = 5, sticky=(N, S, E, W)) + + self.ni_group = Pmw.Group(self.interior(),tag_text='Negative Isosurface') + self.ni_buttonbox = Pmw.ButtonBox(self.ni_group.interior(), padx=0) +@@ -2375,7 +2375,7 @@ class VisualizationGroup(Pmw.Group): + entryfield_validate = {'validator' : 'real', 'max':0} + ) + self.neg_surf_val.pack(side=LEFT) +- self.ni_group.pack(fill = 'both', expand = 1, padx = 4, pady = 5, side=LEFT) ++ self.ni_group.grid(padx = 4, pady = 5, sticky=(N, S, E, W)) + + + diff --git a/sci-chemistry/pymol/pymol-9999.ebuild b/sci-chemistry/pymol/pymol-9999.ebuild index cd5715317..957afd086 100644 --- a/sci-chemistry/pymol/pymol-9999.ebuild +++ b/sci-chemistry/pymol/pymol-9999.ebuild @@ -32,11 +32,13 @@ DEPEND=" apbs? ( sci-chemistry/apbs[${PYTHON_USEDEP}] sci-chemistry/pdb2pqr[${PYTHON_USEDEP}] - sci-chemistry/pymol-apbs-plugin[${PYTHON_USEDEP}] + !sci-chemistry/pymol-apbs-plugin[${PYTHON_USEDEP}] ) web? ( !dev-python/webpy[${PYTHON_USEDEP}] )" RDEPEND="${DEPEND}" +PATCHES=( "${FILESDIR}"/${P}-tk8.6.patch ) + src_unpack() { unpack ${A} subversion_src_unpack @@ -49,8 +51,6 @@ python_prepare_all() { -e "/import/s:argparse:argparseX:g" \ -i setup.py || die - rm ./modules/pmg_tk/startup/apbs_tools.py || die - sed \ -e "s:/opt/local:${EPREFIX}/usr:g" \ -e '/ext_comp_args/s:\[.*\]:[]:g' \ @@ -66,17 +66,28 @@ src_prepare() { python_install() { distutils-r1_python_install --pymol-path="${EPREFIX}/usr/share/pymol" + + sed \ + -e '1d' \ + -e "/APBS_BINARY_LOCATION/s:None:\"${EPREFIX}/usr/bin/apbs\":g" \ + -e "/APBS_PSIZE_LOCATION/s:None:\"$(python_get_sitedir)/pdb2pqr/src/\":g" \ + -e "/APBS_PDB2PQR_LOCATION/s:None:\"$(python_get_sitedir)/pdb2pqr/\":g" \ + -i "${D}/$(python_get_sitedir)"/pmg_tk/startup/apbs_tools.py || die } python_install_all() { distutils-r1_python_install_all - python_export python2_7 EPYTHON + sed \ + -e '1i#!/usr/bin/env python' \ + "${D}/$(python_get_sitedir)"/pymol/__init__.py > "${T}"/${PN} || die + + python_foreach_impl python_doscript "${T}"/${PN} # 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 - PYMOL_PATH="$(python_get_sitedir)/${PN}" + PYMOL_PATH="${EPREFIX}/usr/share/pymol" PYMOL_DATA="${EPREFIX}/usr/share/pymol/data" PYMOL_SCRIPTS="${EPREFIX}/usr/share/pymol/scripts" EOF |