Skip to content
Commits on Source (8)
......@@ -15,10 +15,15 @@ cache:
- "build"
- "$HOME/.cache/pip"
python:
- "3.4"
- "3.5"
sudo: false
install:
- "source ./install_dependencies.sh"
- "autoreconf -i"
- "./configure"
script: "make check"
before_script:
- pip install codecov
script:
- autoreconf -i && ./configure --enable-maintainer-mode CFLAGS='-O0 --coverage' && make && make check
- cd python && coverage run setup.py test
after_success:
- bash <(curl -s https://codecov.io/bash)
- codecov
This diff is collapsed.
......@@ -68,6 +68,3 @@ RUN git clone https://github.com/sanger-pathogens/gubbins.git \
&& make install \
&& cd python \
&& python3 setup.py install
# Rename executable for backwards compatibility
RUN mv /usr/local/bin/run_gubbins.py /usr/local/bin/run_gubbins
Before you do anything, please have a look at the [Gubbins webpage](http://sanger-pathogens.github.io/gubbins/).
# Installation
There are a few ways to install Gubbins and its dependencies. The simpliest way is using conda.
* OSX/Linux - Bioconda
* Linux - Ubuntu Xenial (16.04) & Debian (unstable)
* OSX/Linux/Cloud/Windows - Docker
* OSX/Linux - from source
* OSX/Linux/Windows - Virtual Machine
## OSX/Linux - conda
Install conda and enable the bioconda channels.
```
conda config --add channels r
conda config --add channels defaults
conda config --add channels conda-forge
conda config --add channels bioconda
conda install gubbins
```
## Linux - Ubuntu Xenial (16.04) & Debian (unstable)
Gubbins has been packaged by the Debian Med team and is trivial to install using apt.
sudo apt-get install gubbins
## OSX/Linux/Cloud/Windows - Docker
We have a docker container which gets automatically built from the latest version of Gubbins in Debian Med. To install it:
docker pull sangerpathogens/gubbins
To use it you would use a command such as this:
docker run --rm -it -v <local_dir>:<remote_dir> sangerpathogens/gubbins run_gubbins -p <remote_dir>/<prefix> [<options>] <remote_dir>/<alignment_file>
The flag `-v` synchronizes a directory on the host machine (here denoted as `<local_dir>`) with a directory in the Docker container (here denoted as `<remote_dir>`).
`<remote_dir>` does not need to exist in the container before the run, a common choice is `/data`.
Note that both `<local_dir>` and `<remote_dir>` must be absolute paths.
The input alignment file must be present in `<local_dir>` (or in one of its subdirectories).
In order to retrieve the files produced by Gubbins, run the program with option `-p`;
the argument of this option must consist of `<remote_dir>`, followed by an arbitrary identifier (here denoted as `<prefix>`).
## OSX/Linux - from source
This is the most difficult method and is only suitable for someone with advanced computing skills. Please consider using Conda instead.
Install the dependencies and include them in your `PATH`:
* [FastTree](http://www.microbesonline.org/fasttree/#Install) ( >=2.1.4 )
* [RAxML](https://github.com/stamatak/standard-RAxML) ( >=8.0 )
* Python modules: Biopython (> 1.59), DendroPy (>=4.0), Reportlab, nose, pillow
* Standard build environment tools (e.g. python3, pip3, make, autoconf, libtool, gcc, check, etc...)
Clone or download the source code from GitHub and run the following commands to install Gubbins:
```
autoreconf -i
./configure [--prefix=$PREFIX]
make
[sudo] make install
cd python
[sudo] python3 setup.py install
```
Use `sudo` to install Gubbins system-wide. If you don't have the permissions, run `configure` with a prefix to install Gubbins in your home directory.
## OSX/Linux/Windows - Virtual Machine
Roary wont run natively on Windows but we have created a virtual machine which has all of the software setup, along with the test datasets from the paper.
It is based on [Bio-Linux 8](http://environmentalomics.org/bio-linux/). You need to first install [VirtualBox](https://www.virtualbox.org/),
then load the virtual machine, using the 'File -> Import Appliance' menu option. The root password is 'manager'.
* ftp://ftp.sanger.ac.uk/pub/pathogens/pathogens-vm/pathogens-vm.latest.ova
More importantly though, if your trying to do bioinformatics on Windows, your not going to get very far and you should seriously consider upgrading to Linux.
Please see our website for more information on [Gubbins](http://sanger-pathogens.github.io/gubbins/) or read our paper:
# Gubbins
Genealogies Unbiased By recomBinations In Nucleotide Sequences
[Croucher N. J., Page A. J., Connor T. R., Delaney A. J., Keane J. A., Bentley S. D., Parkhill J., Harris S.R.
"Rapid phylogenetic analysis of large samples of recombinant bacterial whole genome sequences using Gubbins". doi:10.1093/nar/gku1196, Nucleic Acids Research, 2014.]
(http://nar.oxfordjournals.org/content/43/3/e15)
Gubbins
=======
PLEASE NOTE: we currently do not have the resources to provide support for Gubbins, so please do not expect a reply if you flag any issue.
[![Unmaintained](http://unmaintained.tech/badge.svg)](http://unmaintained.tech/)
[![Build Status](https://travis-ci.org/sanger-pathogens/gubbins.svg?branch=master)](https://travis-ci.org/sanger-pathogens/gubbins)
[![License: GPL v2](https://img.shields.io/badge/License-GPL%20v2-brightgreen.svg)](https://github.com/sanger-pathogens/gubbins/blob/master/LICENSE)
[![status](https://img.shields.io/badge/NAR-10.1093-brightgreen.svg)](https://academic.oup.com/nar/article/43/3/e15/2410982)
[![install with bioconda](https://img.shields.io/badge/install%20with-bioconda-brightgreen.svg)](http://bioconda.github.io/recipes/gubbins/README.html)
[![Container ready](https://img.shields.io/badge/container-ready-brightgreen.svg)](https://quay.io/repository/biocontainers/gubbins)
[![Docker Build Status](https://img.shields.io/docker/build/sangerpathogens/gubbins.svg)](https://hub.docker.com/r/sangerpathogens/gubbins)
[![Docker Pulls](https://img.shields.io/docker/pulls/sangerpathogens/gubbins.svg)](https://hub.docker.com/r/sangerpathogens/gubbins)
[![codecov](https://codecov.io/gh/sanger-pathogens/gubbins/branch/master/graph/badge.svg)](https://codecov.io/gh/sanger-pathogens/gubbins)
## Contents
* [Introduction](#introduction)
* [Installation](#installation)
* [Required dependencies](#required-dependencies)
* [OSX/Linux \- conda](#osxlinux---conda)
* [Linux \- Ubuntu Xenial (16\.04) &amp; Debian (unstable)](#linux---ubuntu-xenial-1604--debian-unstable)
* [OSX/Linux/Cloud/Windows \- Docker](#osxlinuxcloudwindows---docker)
* [OSX/Linux \- from source](#osxlinux---from-source)
* [OSX/Linux/Windows \- Virtual Machine](#osxlinuxwindows---virtual-machine)
* [Running the tests](#running-the-tests)
* [Usage](#usage)
* [Generating Input files](#generating-input-files)
* [Output files](#output-files)
* [License](#license)
* [Feedback/Issues](#feedbackissues)
* [Citation](#citation)
* [Further Information](#further-information)
* [Data from the paper](#data-from-the-paper)
* [Midpoint rerooting](#midpoint-rerooting)
* [Ancestral sequence reconstruction](#ancestral-sequence-reconstruction)
## Introduction
Since the introduction of high-throughput, second-generation DNA sequencing technologies, there has been an enormous increase in the size of datasets being used for estimating bacterial population phylodynamics. Although many phylogenetic techniques are scalable to hundreds of bacterial genomes, methods which have been used for mitigating the effect of mechanisms of horizontal sequence transfer on phylogenetic reconstructions cannot cope with these new datasets. Gubbins (Genealogies Unbiased By recomBinations In Nucleotide Sequences) is an algorithm that iteratively identifies loci containing elevated densities of base substitutions while concurrently constructing a phylogeny based on the putative point mutations outside of these regions. Simulations demonstrate the algorithm generates highly accurate reconstructions under realistic models of short-term bacterial evolution, and can be run in only a few hours on alignments of hundreds of bacterial genome sequences.
Install
=======
Please see the [INSTALL](INSTALL.md) file for detailed instructions.
## Installation
Before you do anything, please have a look at the [Gubbins webpage](http://sanger-pathogens.github.io/gubbins/).
### Required dependencies
* [FastTree](http://www.microbesonline.org/fasttree/#Install) ( >=2.1.4 )
* [RAxML](https://github.com/stamatak/standard-RAxML) ( >=8.0 )
* Python modules: Biopython (> 1.59), DendroPy (>=4.0), Reportlab, nose, pillow
* Standard build environment tools (e.g. python3, pip3, make, autoconf, libtool, gcc, check, etc...)
There are a number of ways to install Gubbins and details are provided below. If you encounter an issue when installing Gubbins please contact your local system administrator.
### OSX/Linux - conda
Install conda and enable the bioconda channels.
```
conda config --add channels r
conda config --add channels defaults
conda config --add channels conda-forge
conda config --add channels bioconda
conda install gubbins
```
### Linux - Ubuntu Xenial (16.04) & Debian (unstable)
Gubbins has been packaged by the Debian Med team and is trivial to install using apt.
sudo apt-get install gubbins
### OSX/Linux/Cloud/Windows - Docker
We have a docker container which gets automatically built from the latest version of Gubbins in Debian Med. To install it:
docker pull sangerpathogens/gubbins
To use it you would use a command such as this:
docker run --rm -it -v <local_dir>:<remote_dir> sangerpathogens/gubbins run_gubbins -p <remote_dir>/<prefix> [<options>] <remote_dir>/<alignment_file>
The flag `-v` synchronizes a directory on the host machine (here denoted as `<local_dir>`) with a directory in the Docker container (here denoted as `<remote_dir>`).
`<remote_dir>` does not need to exist in the container before the run, a common choice is `/data`.
Note that both `<local_dir>` and `<remote_dir>` must be absolute paths.
The input alignment file must be present in `<local_dir>` (or in one of its subdirectories).
In order to retrieve the files produced by Gubbins, run the program with option `-p`;
the argument of this option must consist of `<remote_dir>`, followed by an arbitrary identifier (here denoted as `<prefix>`).
Running Gubbins
===============
### OSX/Linux - from source
This is the most difficult method and is only suitable for someone with advanced computing skills. Please consider using Conda instead.
Install the dependencies and include them in your `PATH`.
Clone or download the source code from GitHub and run the following commands to install Gubbins:
```
autoreconf -i
./configure [--prefix=$PREFIX]
make
[sudo] make install
cd python
[sudo] python3 setup.py install
```
Use `sudo` to install Gubbins system-wide. If you don't have the permissions, run `configure` with a prefix to install Gubbins in your home directory.
### OSX/Linux/Windows - Virtual Machine
Gubbins wont run natively on Windows but we have created a virtual machine which has all of the software setup, along with the test datasets from the paper.
It is based on [Bio-Linux 8](http://environmentalomics.org/bio-linux/). You need to first install [VirtualBox](https://www.virtualbox.org/),
then load the virtual machine, using the 'File -> Import Appliance' menu option. The root password is 'manager'.
* ftp://ftp.sanger.ac.uk/pub/pathogens/pathogens-vm/pathogens-vm.latest.ova
More importantly though, if your trying to do bioinformatics on Windows, your not going to get very far and you should seriously consider upgrading to Linux.
### Running the tests
The test can be run from the top level directory:
`make check`
## Usage
To run Gubbins with default settings:
run_gubbins.py [FASTA alignment]
......@@ -73,17 +170,12 @@ Do not remove files from intermediate iterations. This option will also keep oth
Change the model used by RAxML. The default it GTRCAT (with -V). You can set it to GTRGAMMA.
Generating Input files
======================
### Generating Input files
Any application which can generate a whole genome multi-FASTA alignment can be used with Gubbins, such as [Snippy](https://github.com/tseemann/snippy).
### Output files
Output files
==========
Prefix
------
__Prefix__
If a prefix is not defined with the –prefix option, the default prefix of the output files is:
X.Y
......@@ -91,10 +183,7 @@ where:
X = Prefix taken from the input fasta file
Y = Time stamp. NOTE: This will only be included in the output file prefix if the –u flag has been selected
Output file suffices:
---------------------
__Output file suffices:__
.recombination_predictions.embl
......@@ -132,19 +221,28 @@ Final phylogenetic tree in newick format.
Final phylogenetic tree in newick format but with internal node labels.
## License
Gubbins is free software, licensed under [GPLv2](https://github.com/sanger-pathogens/gubbins/blob/master/LICENSE).
## Feedback/Issues
We currently do not have the resources to provide support for Gubbins. However, the community might be able to help you out if you report any issues about usage of the software to the [issues page](https://github.com/sanger-pathogens/gubbins/issues).
## Citation
If you use this software please cite:
[Croucher N. J., Page A. J., Connor T. R., Delaney A. J., Keane J. A., Bentley S. D., Parkhill J., Harris S.R.
"Rapid phylogenetic analysis of large samples of recombinant bacterial whole genome sequences using Gubbins". doi:10.1093/nar/gku1196, Nucleic Acids Research, 2014.]
(http://nar.oxfordjournals.org/content/43/3/e15)
## Further Information
For more information on this software see the [Gubbins webpage](http://sanger-pathogens.github.io/gubbins/).
Data from the paper
===================
### Data from the paper
* ftp://ftp.sanger.ac.uk/pub/project/pathogens/gubbins/PMEN1.aln.gz
* ftp://ftp.sanger.ac.uk/pub/project/pathogens/gubbins/ST239.aln.gz
Midpoint rerooting
==================
### Midpoint rerooting
From version 1.3.5 (25/6/15) to version 1.4.6 (29/2/16) trees were not midpoint rerooted by default. This doesnt have any effect on the recombination detection, but the output trees may not look as expected. Users are advised to upgrade to the latest version.
Ancestral sequence reconstruction
==================
### Ancestral sequence reconstruction
From version 2.0.0 onwards, RAxML is used to reconstruction ancestral sequences instead of fastML. RAxML doesnt always produce results as you would expect so the results can be lower quaility than fastML. If you would like to stick with fastML for ancestral sequence reconstruction, please checkout and install v1.4.9.
gubbins (2.3.5-1) unstable; urgency=medium
* Team upload.
* New upstream version
* debhelper-compat 12
* Standards-Version: 4.4.1
* Secure URI in copyright format
* Set upstream metadata fields: Repository, Repository-Browse.
* Cleaner clean
* Reported autogenerated files in source tree to upstream
-- Steffen Moeller <moeller@debian.org> Sat, 21 Dec 2019 00:00:10 +0100
gubbins (2.3.4-1) unstable; urgency=medium
* New upstream version
......
......@@ -4,10 +4,10 @@ Uploaders: Andreas Tille <tille@debian.org>,
Aidan Delaney <a.j.delaney@brighton.ac.uk>
Section: science
Priority: optional
Build-Depends: debhelper (>= 11~),
Build-Depends: debhelper-compat (= 12),
dh-python,
fasttree,
raxml (>= 8),
raxml,
python3-setuptools,
zlib1g-dev,
check,
......@@ -17,7 +17,7 @@ Build-Depends: debhelper (>= 11~),
python3-reportlab,
python3-nose,
pkg-config
Standards-Version: 4.2.1
Standards-Version: 4.4.1
Vcs-Browser: https://salsa.debian.org/med-team/gubbins
Vcs-Git: https://salsa.debian.org/med-team/gubbins.git
Homepage: https://sanger-pathogens.github.io/gubbins/
......@@ -29,7 +29,7 @@ Depends: ${shlibs:Depends},
${python3:Depends},
python3,
fasttree,
raxml (>= 8)
raxml
Description: phylogenetic analysis of genome sequences
Gubbins supports rapid phylogenetic analysis of large samples of
recombinant bacterial whole genome sequences.
......
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: gubbins
Source: https://github.com/sanger-pathogens/gubbins
......
......@@ -37,3 +37,4 @@ override_dh_clean:
dh_clean
rm -rf python/*.egg-info python/build python/Makefile
find . -name "*.pyc" -delete
rm -rf python/output_alignment python/tmp*
......@@ -24,3 +24,5 @@ Registry:
Entry: NA
- Name: conda:bioconda
Entry: gubbins
Repository: https://github.com/sanger-pathogens/gubbins
Repository-Browse: https://github.com/sanger-pathogens/gubbins
v2.3.2 - 12 Jan 2018
v2.3.4 - 30 July 2018
-----
Dynamically allocate memory of arrays to circumvent segmentation faults,
which occur on alignments with a large number of SNPs and are due to stack overflow.
v2.3.3 - 26 July 2018
-----
Supply a Dockerfile independent from the Debian package.
v2.3.2 - 29 June 2018
-----
Update installation instructions to remove all reference to HomeBrew.
Improve handling of several arguments that have a fixed set of possible values.
Fix of test suite.
Remove gubbins_drawer.
v2.3.1 - 22 Sept 2017
-----
......