Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Jas Condley
171 lines (120 sloc) 4.841 kb
#!/usr/bin/env python
Peregrine makes use of the following packages:
- `Python <>`_ 2.6 or 2.7
- `Numpy <>`_ 1.6 or later
- `FFTW3 <>`_
- `pyFFTW <>`_ 0.8.2 or later
Peregrine can also be used interactively with `IPython <>`_
and requires an additional two packages:
- [Optional] `progressbar <>`_ to
display a progress indication in the terminal whilst running.
- [Optional] `matplotlib <>`_ to support generation
of plots.
On Ubuntu these can be installed from the repositories::
$ sudo apt-get install python-numpy python-fftw python-matplotlib \
$ pip install git+
.. note::
Peregrine makes use of some extensions to the progressbar library that are
not yet merged upstream. For now you can install our `development version
<>`_ as shown in the command
Additionally, Peregrine depends on the libswiftnav libraries and Python
bindings, see each of the packages for installation instructions:
- `libswiftnav <>`_
- `libswiftnav-python <>`_
Installing Peregrine
Obtaining the source
The peregrine source and release tarballs are available from GitHub,
The latest development version of peregrine can be cloned from GitHub
using this command::
$ git clone git://
Building and Installing
.. note::
`pyFFTW <>`_ requires `FFTW3
<>`_ which should be available through your operating
system package manager. For Mac OS X we recommend using `Homebrew
.. note::
Installation requires `Distribute <>`_,
if your python installation doesn't provide this it will automatically be
To install Peregrine (from the root of the source tree)::
$ python install
This will download and install any required python modules from `PyPI
Peregrine also supports a developer mode that creates a symbolic link from the
source location to the install location. This enables you to modify Peregrine
without having to `install` it every time. It can be installed by::
$ python develop
Building documentation
.. note::
The latest version of Peregrine's documentation should be available online
Building the documentation requires the Peregrine source code and some
additional packages:
- `Sphinx <>`_ (and its dependencies) 1.0 or later
- `numpydoc <>`_ 0.4 or later
- `matplotlib <>`_ 1.1 or later
- `ipython <>`_ 0.13.1 or later
- `Latex <>`_
- `dvipng <>`_ 1.14 or later
These packages can be installed on Ubuntu 12.04 or later::
$ sudo apt-get install python-sphinx python-matplotlib ipython \
texlive-full dvipng
$ sudo pip install numpydoc
To build the Peregrine documentation, execute the following commands::
$ cd docs
$ make html
The documentation will be built in the ``docs/_build/html`` directory, and can
be read by pointing a web browser to ``docs/_build/html/index.html``.
from version import get_git_version
setup_args = dict(
name = 'Peregrine',
version = get_git_version(),
description = 'Peregrine software GNSS receiver',
license = 'GPLv3',
url = '',
author = 'Swift Navigation Inc.',
maintainer = 'Fergus Noble',
maintainer_email = '',
packages = [
entry_points = {
'console_scripts': [
'peregrine =',
'peregrine-analyze-samples = peregrine.analysis.samples:main',
'peregrine-show-acq = peregrine.analysis.acquisition:main',
install_requires = [
'pyFFTW >= 0.8.2',
'numpy >= 1.6',
extras_require = {
'progress': ['progressbar >= 2.3'],
'plot': ['matplotlib >= 1.1'],
if __name__ == "__main__":
# Bootstrap Distribute if the user doesn't have it
from distribute_setup import use_setuptools
from setuptools import setup
Jump to Line
Something went wrong with that request. Please try again.