From 38002cf23ee6b42f32e22429600ed901a5093908 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cccb63=E2=80=9D?= <charles.ballard@stfc.ac.uk> Date: Fri, 16 Aug 2024 12:35:57 +0100 Subject: [PATCH 1/6] [#3944] phaser_voyager code has been rearranged --- patches/cctbx-auto.patch | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/patches/cctbx-auto.patch b/patches/cctbx-auto.patch index eabea784..e3d64c5b 100644 --- a/patches/cctbx-auto.patch +++ b/patches/cctbx-auto.patch @@ -109,6 +109,15 @@ link: bool If True, symbolic links are used instead of copying. +@@ -269,7 +259,7 @@ + if module == 'boost' and src.endswith('boost'): + continue + # copy subdirectories for some modules +- elif module in ['phenix', 'phaser_voyager']: ++ elif module in ['phenix']: + if module == 'phenix': + src_root = dist_path + subdirs = ['phenix', 'wxGUI2'] @@ -296,6 +301,20 @@ print(' destination: ' + dst) copy_cmd(src, dst, link) -- GitLab From d68d93d06dcb75dc506f40701e60d28339a47482 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cccb63=E2=80=9D?= <charles.ballard@stfc.ac.uk> Date: Fri, 16 Aug 2024 12:41:11 +0100 Subject: [PATCH 2/6] rm all current ar archive .lib-files --- misc/del-dev.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/misc/del-dev.sh b/misc/del-dev.sh index c37021f7..f5e88e02 100755 --- a/misc/del-dev.sh +++ b/misc/del-dev.sh @@ -274,6 +274,9 @@ rmdir $inst/_jhbuild # large, autogenerated, unused file $RM $inst/lib/python3.9/site-packages/cctbx_project/scitbx/math/fliege_mayer_900_ylm.py +# .lib files from msvs build +$RM -f $(find $inst -name '*.lib' | file -f - | sed -nE 's/^([^ ]*): *current ar archive/\1/p') + #tidy some library softlinks to take out clashes find $inst/lib -not \( -path $inst/lib/python3.9/site-packages -prune \) -type l -name '*.so' -exec $RM {} \; -- GitLab From 982cbadbb437aa496aa5f9e3657881f88512d6b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cccb63=E2=80=9D?= <charles.ballard@stfc.ac.uk> Date: Fri, 16 Aug 2024 12:42:12 +0100 Subject: [PATCH 3/6] phaser_voyager, more phenix -> phaser --- patches/phaser-voyager-command-line.patch | 98 +++++++++++++++++++++++ 1 file changed, 98 insertions(+) diff --git a/patches/phaser-voyager-command-line.patch b/patches/phaser-voyager-command-line.patch index ae75eb4e..49b08b88 100644 --- a/patches/phaser-voyager-command-line.patch +++ b/patches/phaser-voyager-command-line.patch @@ -83,3 +83,101 @@ sys.path.append(src) from iotbx.cli_parser import run_program +--- phaser_voyager/README.md 2024-06-18 13:39:56.465221100 +0100 ++++ phaser_voyager/README.md 2024-06-18 13:44:01.763286800 +0100 +@@ -11,44 +11,44 @@ + wget https://raw.githubusercontent.com/cctbx/cctbx_project/master/libtbx/auto_build/bootstrap.py + ``` + +-2) Create a directory for the phenix_voyager ++2) Create a directory for the phaser_voyager + + ``` +-mkdir phenix_voyager +-mv bootstrap.py phenix_voyager +-cd phenix_voyager ++mkdir phaser_voyager ++mv bootstrap.py phaser_voyager ++cd phaser_voyager + ``` + + +-3) Install phenix_voyager with bootstrap.py ++3) Install phaser_voyager with bootstrap.py + + ``` +-python bootstrap.py --builder=phenix_voyager --use-conda --cciuser=myuser --nproc=6 --python=37 ++python bootstrap.py --builder=phaser_voyager --use-conda --cciuser=myuser --nproc=6 --python=37 + ``` + +-3.5) The first time you build phenix_voyager from scratch you should also: ++3.5) The first time you build phaser_voyager from scratch you should also: + - ```cd ../phaser_voyager``` + - ```git checkout master``` #the default branch for voyager is distribution which comntain the last distributed version (not the one with the recents commits) +- - As you have changed some branches you need to tell phenix to recreate the links for the new programs eg.: phenix.voyager.data_driven_ensembler . +- If you do not know how to do that you can just redo: ``` python bootstrap.py --builder=phenix_voyager --use-conda --cciuser=myuser --nproc=6 --python=38 ``` ++ - As you have changed some branches you need to tell phaser to recreate the links for the new programs eg.: phaser_voyager.data_driven_ensembler . ++ If you do not know how to do that you can just redo: ``` python bootstrap.py --builder=phaser_voyager --use-conda --cciuser=myuser --nproc=6 --python=38 ``` + from now on (if you do not remove directories or change branches) bootstrap will update the branches and you have checkout + + 4) Run Voyager as following: + + ``` +-phenix.phaser.voyager --show-defaults=3 ++phaser_voyager.voyager --show-defaults=3 + ``` + + 5) When you have chosen a strategy you can: + + ``` +-phenix.voyager.strategyname --show-defaults=3 ++phaser_voyager.strategyname --show-defaults=3 + ``` + + 6) When you have created a .phil configuration file you can: + + ``` +-phenix.voyager.strategyname input.phil ++phaser_voyager.strategyname input.phil + ``` + + 7) Voyager assumes that the current directory is the working directory so run Voyager in the place where you want it can write +@@ -58,11 +58,11 @@ + Strategies that should be deployed are: + + ``` +-phenix.voyager.isostructure +-phenix.voyager.sculptor_ensembler +-phenix.voyager.homologs +-phenix.voyager.casp_rel_ellg +-phenix.voyager.xtricorder ++phaser_voyager.isostructure ++phaser_voyager.sculptor_ensembler ++phaser_voyager.homologs ++phaser_voyager.casp_rel_ellg ++phaser_voyager.xtricorder + ``` + + +--- phaser_voyager/src/New_Voyager/programs/em_placement_program.py 2024-06-18 13:39:56.453352100 +0100 ++++ phaser_voyager/src/New_Voyager/programs/em_placement_program.py 2024-06-18 13:44:42.276566400 +0100 +@@ -11,7 +11,7 @@ + + # Datatypes expected by program + datatypes = ['sequence','phil', 'model', 'real_map',] +- program_name = 'phenix.voyager.em_placement' ++ program_name = 'phaser_voyager.em_placement' + + description = ''' EM Placement: Dock a model in a cryo EM map with a likelihood target''' + +--- phaser_voyager/src/New_Voyager/programs/emplace_local.py 2024-06-18 13:39:56.450341600 +0100 ++++ phaser_voyager/src/New_Voyager/programs/emplace_local.py 2024-06-18 13:44:21.762661500 +0100 +@@ -79,7 +79,7 @@ + # Class variables are used to define basic program properties + description = """ + Program to dock a model within a sphere cut out from input half-maps +- Usage: phenix.voyager.emplace_local map1=halfmap1.map map2=halfmap2.map ++ Usage: phaser_voyager.emplace_local map1=halfmap1.map map2=halfmap2.map + model_file=model.pdb sphere_center=150,140,160 d_min=3.5 + Note: d_min is optional + -- GitLab From 53b7e4a351c3cff21c2e05a240ac48bfa816e063 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cccb63=E2=80=9D?= <charles.ballard@stfc.ac.uk> Date: Fri, 16 Aug 2024 12:43:04 +0100 Subject: [PATCH 4/6] jscofe_v1.7.021 --- ccp4.xml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/ccp4.xml b/ccp4.xml index 1a6cb546..426810a8 100644 --- a/ccp4.xml +++ b/ccp4.xml @@ -3065,10 +3065,17 @@ install intltool libfontconfig1-dev libxrender-dev <cmake id="jscofe"> <branch repo="gitlab" - module="CCP4/jsCoFE.git" + module="CCP4/jsCoFE.git" revision="release" checkoutdir="jscofe" - /> + tag="jscofe_v1.7.021.1" + version="1.7.021" + /> + <!--branch repo="gitlab" + module="CCP4/jsCoFE.git" + revision="release" + checkoutdir="jscofe" + / --> <dependencies> <dep package="nodejs"/> </dependencies> -- GitLab From 990b63db38d21b751bf4af89a028f542f6f70a6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cccb63=E2=80=9D?= <charles.ballard@stfc.ac.uk> Date: Fri, 16 Aug 2024 12:43:52 +0100 Subject: [PATCH 5/6] cctbx, use ccp4-python for tests --- ccp4.xml | 2 ++ patches/cctbx-libtbx-test-utils.patch | 12 ++++++++++++ 2 files changed, 14 insertions(+) create mode 100644 patches/cctbx-libtbx-test-utils.patch diff --git a/ccp4.xml b/ccp4.xml index 426810a8..f08713ec 100644 --- a/ccp4.xml +++ b/ccp4.xml @@ -1151,6 +1151,7 @@ <patch file="cctbx-dials-SConscript-no-autocomplete.patch" strip="0" /> <!-- @rpath issue on osx patch --> </if> <patch file="cctbx-auto.patch" strip="0" /> <!-- test--> + <patch file="cctbx-libtbx-test-utils.patch" strip="0" /> <!-- test--> </branch> <dependencies> <dep package="boost"/> @@ -1265,6 +1266,7 @@ <patch file="cctbx-dials-SConscript-no-autocomplete.patch" strip="0" /> <!-- @rpath issue on osx patch --> </if> <patch file="cctbx-auto.patch" strip="0" /> <!-- test--> + <patch file="cctbx-libtbx-test-utils.patch" strip="0" /> <!-- test--> </branch> <dependencies> <dep package="boost"/> diff --git a/patches/cctbx-libtbx-test-utils.patch b/patches/cctbx-libtbx-test-utils.patch new file mode 100644 index 00000000..df5a6862 --- /dev/null +++ b/patches/cctbx-libtbx-test-utils.patch @@ -0,0 +1,12 @@ +--- cctbx_project/libtbx/test_utils/__init__.py 2024-06-19 13:52:04.290736700 +0100 ++++ cctbx_project/libtbx/test_utils/__init__.py 2024-06-19 13:56:16.169962100 +0100 +@@ -226,6 +226,9 @@ + cmd=cmd.replace("libtbx.python","libtbx.python %s" %( + co.python_keyword_text)) + ++ if (os.getenv('CCP4',None) is not None): ++ cmd=cmd.replace("libtbx.python","ccp4-python") ++ + if test_class and test_name: + # If the passed object contains test class and name information + # then attach that information to the string object. -- GitLab From d64167b887b1e63e32e17c697f584dc042c3e4f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cccb63=E2=80=9D?= <charles.ballard@stfc.ac.uk> Date: Fri, 16 Aug 2024 12:44:50 +0100 Subject: [PATCH 6/6] phaser_voyager, horrible hack to get New_Voyager on modules path --- patches/phaser-voyager-command-line.patch | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/patches/phaser-voyager-command-line.patch b/patches/phaser-voyager-command-line.patch index 49b08b88..7aba2665 100644 --- a/patches/phaser-voyager-command-line.patch +++ b/patches/phaser-voyager-command-line.patch @@ -181,3 +181,24 @@ model_file=model.pdb sphere_center=150,140,160 d_min=3.5 Note: d_min is optional +--- phaser_voyager/__init__.py 2024-04-04 11:54:51.000000000 +0100 ++++ phaser_voyager/__init__.py 2024-06-19 16:04:21.240524500 +0100 +@@ -15,7 +15,10 @@ + from __future__ import print_function + from __future__ import division + from future.standard_library import install_aliases +- ++import os,sys ++module_path = os.path.dirname(os.path.abspath(__file__)) ++src = os.path.join(module_path, "src/") ++sys.path.append(src) + install_aliases() + + __license__ = "(c) 2000-2020 Cambridge University Technical Services Ltd" +@@ -29,4 +32,4 @@ + __email__ = "mds83@cam.ac.uk" + __status__ = "Prototype" + +-__all__ = ["src"] +\ No newline at end of file ++__all__ = ["src"] -- GitLab