Skip to content
Snippets Groups Projects
user avatar
Andre Anjos authored
d9479646
History

Recipes and Scripts for Bob Maintenance

This package contains administration scripts for our wikis and the build system. Use it and update it if you must.

Basic conda installation

If you still don't have a basic conda installation, use install-conda.sh to create a new installation:

$ ./install-conda.sh /opt/conda

The single parameter defines the prefix of the installation. You'll use this prefix with the next commands. If everything is already in place, calling this script only updates your conda root environment.

From scratch

If you don't have any environment setup, or you want to have the current list of packages updated, use the from-scratch.sh script. It builds an environment pulling the latest versions of our dependencies from both the defaults and conda-forge channels:

$ ./from-scratch.sh /opt/conda bob-devel-py27 2.7

The parameters are:

  1. The base directory where the environment should be installed
  2. The name of the environment to be created
  3. The version of python to use for this environment

Once the environment is generated, you may generate the package list like this:

$ /opt/conda/bin/conda list -n bob-devel-py27 -e > linux/devel-py27.txt

Extra OS packages

Besides the dependencies encoded in from-scratch.sh, Bob development also requires the following packages, you must procure for your own operating system:

  • git (required to checkout packages via mr.developer)
  • LaTeX (required by matplotlib legends and sphinx documentation generation):
    • texlive-latex-extra
    • texlive-latex-recommended
    • texlive-fonts-recommended
    • dvipng
  • gcc/clang compiler suite + standard c++ library
    • On Linux, use gcc + libstdc++. These are normally distributed by installing the gcc and/or g++ packages of your distribution
    • On Mac OSX, use clang + libc++ (compatibility with conda-forge). Clang and libc++ are distributed with XCode
  • Docker

Use the following command line to install all required packages on a (Debian) machine:

# apt-get install build-essential cmake curl wget dvipng gdb git-core ruby-dev texlive-latex-extra texlive-fonts-recommended

Note: If you are creating a continuous integration machine for Gitlab, also install the Gitlab Runner as per instructions on their website.

Creating or updating CI runners

Run the install-conda.sh once to install a basic Conda support. To install or update our supported Python build environments, run install-ci.sh. It will make the environment up-to-date with the current requirements for Bob.