From c76ffde6823b802851e1d478131fbedad4610fdb Mon Sep 17 00:00:00 2001 From: William Galvin <90012279+william-galvin@users.noreply.github.com> Date: Wed, 16 Oct 2024 13:31:16 -0700 Subject: [PATCH] Update README.md --- README.md | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/README.md b/README.md index 380d629..0ccc490 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,6 @@ This installs zernikegrams (our package) and it's dependencies in an existing co ### Requirements Zernikegrams is distributed through the anaconda package manager, which provides most dependencies in most cases. Notable exceptions include: - `foldcomp`, which is optional and only necessary if using `--foldcomp` with `structural-info`. If you are, you probably already have it installed, but you can install it with `pip install foldcomp` if not. -- `DSSP`, which is optional and only necessary if using `--DSSP` with `structural-info`. On Mac, this can be installed with `brew install brewsci/bio/dssp`; on Linux, use `conda install dssp -c salilab`. - A modern GCC compiler. Most machines have one already, but if you see cryptic messages referencing "GLIBCXX_3.4.30 not found", try `conda install libstdcxx-ng -conda-forge` (if on Linux). - `argparse`, which comes with almost all Python distributions, but (apparently) not all and is (apparently) not installable with conda. Try `pip install argparse`. @@ -64,10 +63,8 @@ temporary files live. pip install -e . -vv ``` `-e` is for editable mode (changes take effect without reinstalling) and `-vv` is very verbose. Either can be changed. - -6. Optionally, install DSSP. This is only necessary for calculating secondary structure, but is needed for some tests. Use `conda install dssp -c salilab` or `brew install brewsci/bio/dssp` depending on your OS. -7. Run `pytest` from the root directory--if everything passes, you're good to go! +6. Run `pytest` from the root directory--if everything passes, you're good to go! ### Testing Tests should be run with `pytest` from the root directory. It is polite to include new tests with new code (if it can be reasonably tested) and to ensure that new code doesn't break old tests. Bug fixes should include at least one test that fails without the fix and passes with it. @@ -97,8 +94,6 @@ Most Anaconda packages distribute compiled binaries, not source code. Due to lim Currently, the only example of this is Reduce. Our approach is to put the build-from-source code in `devtools/conda-build/post-link.sh`, which conda automatically runs on every local machine when zernikegrams is installed. -Another great candidate for build-from-source would be DSSP (currently, users are responsible for getting it themselves), probably from the [PDB-REDO implementation](https://github.com/PDB-REDO/dssp). Note: I (William) have never been able to build this package from source--you'll know you're successful when you have a DSSP executable and can run ` path-to-pdb-file` and the output looks reasonable. If you can do that, then in `structural_info_core`, find the call to `dssp_dict_from_pdb_file` and pass `DSSP=` as a key-word argument. - In general: all of the binaries we compile should be installed in the same, **non-root**, location. Currently, `$HOME/local` seems reasonable. If the code we're compiling uses `cmake`, then `-DCMAKE_INSTALL_PREFIX=$HOME/local` should do that. ### Roadmap