Skip to content

Commit

Permalink
Updating Readme and installation
Browse files Browse the repository at this point in the history
  • Loading branch information
tjakobi committed Mar 14, 2023
1 parent 751cf31 commit aa43ad2
Show file tree
Hide file tree
Showing 2 changed files with 68 additions and 58 deletions.
5 changes: 1 addition & 4 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -55,20 +55,17 @@ The installation can be performed directly from Pypi:
# install R packages for circtools
circtools_install_R_dependencies
Additionally, this repository offers the latest development version:

.. code-block:: console
pip install numpy # required for HTSeq, a dependency of circtools
pip install git+https://github.com/jakobilab/circtools.git
The primer-design module as well as the exon analysis and circRNA testing module
require a working installation of `R <https://cran.r-project.org/>`__ with
`BioConductor <https://www.bioconductor.org/install/>`__. All R packages
required are automatically installed during the setup. Please see the
required can be automatically installed during the setup. Please see the
`"Installing circtools" <http://docs.circ.tools/en/latest/Installation.html>`__
chapter of the main circtools documentation for more detailed installation instructions.

Expand Down
121 changes: 67 additions & 54 deletions docs/Installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,65 @@ The default installation will install everything needed to run circtools *except

.. code-block:: bash
pip3 install circtools --user
python3 -m pip install circtools --user # will install only for the current user
Please note:

* The required R libraries will be installed in the default location in your home directory - unless you set enviromnet variable $R_LIBS_USER.
* In case want to install globally or into a dedicated 'venv' drop the --user option.



Installation via GitHub
--------------------------

The GitHub installation will install the most recent version directly from the source repository. Use this method if you want the latest fixes and features.

.. code-block:: bash
git clone https://github.com/jakobilab/circtools.git
cd circtools
python3 -m pip install . --user
Installation of R dependencies
--------------------------------

All R packages required by circtools can be automatically installed with a single command:

.. code-block:: bash
circtools_install_R_dependencies
The R packages require certain development libraries installed in order to be compiled from source.

The following libraries are required (Ubuntu/Debian package names given):

- libpng-dev
- zlib1g-dev
- libbz2-dev
- libjpeg-turbo8-dev
- libcurl4-openssl-dev
- libxml2-dev
- libblas-dev
- liblzma-dev
- libfontconfig1-dev
- liblapack-dev
- libssl-dev
- libharfbuzz-dev
- libfribidi-dev
- libfreetype6-dev
- libtiff5-dev
- libjpeg-dev

A simple command to install all of these libraries on an Ubuntu/Debian system would be:

.. code-block:: bash
apt-get install --no-install-recommends r-base python3 python3-dev make g++ gfortran libpng-dev zlib1g-dev libbz2-dev libjpeg-turbo8-dev libcurl4-openssl-dev libxml2-dev libblas-dev liblzma-dev libfontconfig1-dev liblapack-dev libssl-dev libharfbuzz-dev libfribidi-dev libfreetype6-dev libtiff5-dev libjpeg-dev
The command above only installs the minimal required packages, no other recommend packages are installed to keep the system lean.

Installation via docker
-----------------------------------

Expand All @@ -43,18 +95,6 @@ Subsequently, **circtools** can be run via
Other than the additional command `docker run circtools` vs. just `circtools` all commands remain unchanged.


Installation via GitHub
--------------------------

The GitHub installation will install the most recent version directly from the source repository. Use this method if you want the latest fixes and features.

.. code-block:: bash
git clone https://github.com/jakobilab/circtools.git
cd circtools
pip3 install . --verbose --user
Updating circtools
--------------------------

Expand All @@ -71,6 +111,19 @@ You may want to update the circtools package if new versions are published. Simi
cd circtools/
pip3 install . install --verbose --user --upgrade
Finishing up
------------------
In order for circtools to find all executables, the setup will add the folder ``/home/$USER/.local/bin/`` automatically to your ``.bashrc`` file

This closes the circtools installation. To verify that circtools has been correctly installed, try to call circtools for the first time:

.. code-block:: bash
$> circtools --help
usage: circtools [-V] <command> [<args>]
Required dependencies
---------------------

Expand All @@ -79,7 +132,7 @@ External tools

* `bedtools [>= 2.27.1] <http://bedtools.readthedocs.io/en/latest/content/installation.html>`_ required by the enrichment module

* `R [>= 4.0.0] <https://www.digitalocean.com/community/tutorials/how-to-install-r-on-ubuntu-16-04-2>`_ required by visualisation scripts and the primer design module
* `R [>= 4.0.0] <https://www.digitalocean.com/community/tutorials/how-to-install-r-on-ubuntu-20.04>`_ required by visualisation scripts and the primer design module

* `STAR [>= 2.6.0] <https://github.com/alexdobin/STAR>`_ required by the ``detect`` and ``reconstruct`` module to map RNA-seq reads against a reference genome and detect back splice junctions

Expand All @@ -100,43 +153,3 @@ Required Python packages (automatically installed)
- reportlab >= 3.3.0
- pandas >= 0.25.0
- statsmodels >= 0.9.0

Detailed manual installation
----------------------

Getting the source code
^^^^^^^^^^^^^^^^^^^^^^^

**Step 1**: Clone source code from GitHub:

.. code-block:: bash
git clone https://github.com/jakobilab/circtools.git
Installation
^^^^^^^^^^^^

**Step 2**: Install circtools using the provided installation script. The ``--user`` flag installs circtools in your home folder, thus making sure you do not require any administrative rights during the installation:

.. code-block:: bash
cd circtools
pip3 install . install --verbose --user
R environment
^^^^^^^^^^^^^^

**Step 3**: Setting up R environment. In order for the automatic installation of R packages to work we need to set the package directory to a user-writeable path. The setup automatically sets that path to ``/home/$USER/.R/``.


Finishing up
^^^^^^^^^^^^

**Step 5**: Adding installation folder to ``$PATH``. In order for circtools to find all executables, the setup will add the folder ``/home/$USER/.local/bin/`` automatically to your ``.bashrc`` file

This closes the circtools installation. To verify that circtools has been correctly installed, try to call circtools for the first time:

.. code-block:: bash
$> circtools --help
usage: circtools [-V] <command> [<args>]

0 comments on commit aa43ad2

Please sign in to comment.