<commit_before>Installation
************

In the Sali Lab
===============

If you are working in the Sali lab, you don't need to build and install
CryptoSite - it is already set up for you as a module. Just run
``module load cryptosite`` to load it.

Dependencies
============

All dependencies listed below are expected to be found in standard
system paths. This may require setting ``PYTHONPATH``, ``PATH`` and/or
``LD_LIBRARY_PATH`` environment variables. Note that Linux is the only platform
for which all these dependencies are available, and so is the only platform
on which CryptoSite currently functions.

* `Python <https://www.python.org>`_ 2.6 or later (Python 3 should also be OK).

* `MODELLER <https://salilab.org/modeller/>`_ plus the
  `SOAP-Protein library <https://salilab.org/SOAP/>`_.
  The ``soap_protein_od.hdf5`` file needs to be placed into MODELLER's
  ``modlib`` directory.
 
* `MUSCLE <http://www.drive5.com/muscle/>`_.

* `DSSP <http://swift.cmbi.ru.nl/gv/dssp/>`_. It is expected that the
  :command:`mkdssp` binary is in the ``PATH``.

* `fpocket <http://fpocket.sourceforge.net/>`_ (version 2).

* `PatchDock <http://bioinfo3d.cs.tau.ac.il/PatchDock/>`_.

* `IMP <https://integrativemodeling.org/>`_.

* `NCBI BLAST+ <ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/>`_
  plus a local copy of the `UniProt database <ftp://ftp.uniprot.org/pub/databases/uniprot/current_release/knowledgebase/complete/>`_ for it to search against.
  To make this local database, ``gunzip`` the ``uniprot_trembl.fasta.gz``
  and ``uniprot_sprot.fasta.gz`` files available from the UniProt website
  and combine them into a single ``uniprot`` text file.

* `USEARCH <http://drive5.com/usearch/download.html>`_.

* `Biopython <http://biopython.org/>`_.

* `scikit-learn <http://scikit-learn.org/>`_. Note that precisely version 0.12
  is needed - other versions won't work.

* `AllosMod <https://github.com/salilab/allosmod-lib>`_ is needed to run part
  of the protocol.

* `nose <https://nose.readthedocs.io/en/latest/>`_ is also needed to run the
  test suite (recommended but not essential).

In the Sali lab, running 
``module load modeller muscle dssp fpocket patch_dock imp blast+ usearch``
will get all of these dependencies.

Building
========

Use ``make test`` to test the library, and ``make install`` to install it.
In most cases you will need to tell ``make`` where to install (if running on
a Linux cluster, CryptoSite will need to be installed on a network-accessible
filesystem) and where your local copy of UniProt is, with something like
``make PREFIX=/shared/cryptosite UNIPROT=/database/uniprot install``. See
``Makefile.include`` for all make variables that can be configured.<commit_msg>Note that numpy and scipy are also needed.<commit_after>Installation
************

In the Sali Lab
===============

If you are working in the Sali lab, you don't need to build and install
CryptoSite - it is already set up for you as a module. Just run
``module load cryptosite`` to load it.

Dependencies
============

All dependencies listed below are expected to be found in standard
system paths. This may require setting ``PYTHONPATH``, ``PATH`` and/or
``LD_LIBRARY_PATH`` environment variables. Note that Linux is the only platform
for which all these dependencies are available, and so is the only platform
on which CryptoSite currently functions.

* `Python <https://www.python.org>`_ 2.6 or later (Python 3 should also be OK).

* `MODELLER <https://salilab.org/modeller/>`_ plus the
  `SOAP-Protein library <https://salilab.org/SOAP/>`_.
  The ``soap_protein_od.hdf5`` file needs to be placed into MODELLER's
  ``modlib`` directory.
 
* `MUSCLE <http://www.drive5.com/muscle/>`_.

* `DSSP <http://swift.cmbi.ru.nl/gv/dssp/>`_. It is expected that the
  :command:`mkdssp` binary is in the ``PATH``.

* `fpocket <http://fpocket.sourceforge.net/>`_ (version 2).

* `PatchDock <http://bioinfo3d.cs.tau.ac.il/PatchDock/>`_.

* `IMP <https://integrativemodeling.org/>`_.

* `NCBI BLAST+ <ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/>`_
  plus a local copy of the `UniProt database <ftp://ftp.uniprot.org/pub/databases/uniprot/current_release/knowledgebase/complete/>`_ for it to search against.
  To make this local database, ``gunzip`` the ``uniprot_trembl.fasta.gz``
  and ``uniprot_sprot.fasta.gz`` files available from the UniProt website
  and combine them into a single ``uniprot`` text file.

* `USEARCH <http://drive5.com/usearch/download.html>`_.

* `Biopython <http://biopython.org/>`_.

* `NumPy <http://www.numpy.org/>`_ and `SciPy <https://scipy.org/scipylib/>`_.

* `scikit-learn <http://scikit-learn.org/>`_. Note that precisely version 0.12
  is needed - other versions won't work.

* `AllosMod <https://github.com/salilab/allosmod-lib>`_ is needed to run part
  of the protocol.

* `nose <https://nose.readthedocs.io/en/latest/>`_ is also needed to run the
  test suite (recommended but not essential).

In the Sali lab, running 
``module load modeller muscle dssp fpocket patch_dock imp blast+ usearch``
will get all of these dependencies.

Building
========

Use ``make test`` to test the library, and ``make install`` to install it.
In most cases you will need to tell ``make`` where to install (if running on
a Linux cluster, CryptoSite will need to be installed on a network-accessible
filesystem) and where your local copy of UniProt is, with something like
``make PREFIX=/shared/cryptosite UNIPROT=/database/uniprot install``. See
``Makefile.include`` for all make variables that can be configured.
{'fraction_non_alphanumeric': 0.1380858322858682, 'fraction_numerical': 0.003950439935356437, 'mean_word_length': 4.299714557564225, 'pattern_counts': {'":': 0, '<': 35, '<?xml version=': 0, '>': 35, 'https://': 13, 'lorem ipsum': 0, 'www.': 5, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1161458', 'n_tokens_mistral': 1882, 'n_tokens_neox': 1783, 'n_words': 633}