README.md 3.25 KB
Newer Older
1 2
[![Build and Test Status of Data Modelling Tools on Circle CI](https://circleci.com/gh/ttsiodras/taste-setup.svg?style=shield)](https://circleci.com/gh/ttsiodras/taste-setup/tree/master)

Maxime Perrotin's avatar
Maxime Perrotin committed
3 4 5
TASTE
=====

Maxime Perrotin's avatar
Maxime Perrotin committed
6 7 8
This is the meta package that is used to install all git modules required
to make a TASTE installation.

9 10 11 12 13 14
Installation
============

TASTE Virtual Machine
---------------------
If possible, please use the TASTE VM - it is available at [http://taste.tools](http://taste.tools)
15
(follow the 'Downloads' link and download the .ova file - that's a VirtualBox
16 17 18 19 20 21 22 23 24 25 26 27
machine that you can import via VirtualBox's *"File/Import Appliance"*).

Docker container
----------------
The repository includes a Dockerfile, that creates a fully functional "taste" Docker image,
built from the sources necessary in all the submodules.

Simply Process this Dockerfile with:

    docker build -t taste .

And we then recommend to launch a fresh TASTE container with proper X11 redirection setup, with...
Maxime Perrotin's avatar
Maxime Perrotin committed
28

29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
    ./Docker-run.sh

This script does all the necessary setup to map your local X11 socket inside the container,
allowing you to use X11 applications. In addition, your `$HOME` folder is mapped inside the
container under the `/root/work` folder, so any work you do in there will survive the
container's eventual closing. As with all Docker containers, you can also commit the 
changes you perform in your container (via `docker commit...`) and create your own
customized images.

For users where the TASTE VM is a concern for reasons of security *(e.g. uncertainty of what
exactly is included inside it)* the Docker container is a complete and clear answer: 
it is built from source, so there is full visibility on what is inside it.

In Debian-based distributions
-----------------------------
In theory,  under a modern Debian-based distribution a native install is also possible:
you would start by creating a new 'taste' user, and...
46

47
    $ git clone https://gitrepos.estec.esa.int/taste/taste-setup.git tool-src
48 49 50
    $ cd tool-src
    $ ./Update-TASTE.sh

51
You'd then have to follow the prompts to fix whatever issues are detected in your configuration.
52

53 54 55
In any native distribution offering `debootstrap`
-------------------------------------------------
Since the installation scripts depend on Debian tools, the setup process only works as-is inside environments that are Debian-based. Note however that almost all distributions offer `debootstrap` - a tool that allows the setup of a complete Debian chroot:
56

57 58 59 60 61 62 63
    # mkdir /opt/jessie-chroot
    # debootstrap jessie /opt/jessie-chroot
    # mount -t proc none /opt/jessie-chroot/proc/
    # mount -t sysfs none /opt/jessie-chroot/sys/
    # mount -o bind /dev /opt/jessie-chroot/dev/
    # mount -o bind /dev/pts /opt/jessie-chroot/dev/pts/
    # chroot /opt/jessie-chroot
64 65 66 67

At this point, you can continue with the normal process described above for Debian-based distributions - for (almost) all intents and purposes, this chroot will behave just like a native Debian install; and thus allows you to have a "sandboxed" TASTE install that will not interfere with your main distribution.

In fact, this is reason enough to employ this process even if you do have a Debian-based distribution; the chroot will contain all TASTE-related work, and will therefore leave your main distribution undisturbed.