Simplified doc-site generation
[AGL/documentation.git] / docs / ATTIC / 3_Developer_Guides / 4_X(cross)_Development_System:_User's_Guide / 4_X(cross)_Development_System:_ Internals / 3.4.4.1_Prerequisites / 3.4.4.1_Prerequisites.md
1 <!-- WARNING: This file is generated by fetch_docs.js using /home/boron/Documents/AGL/docs-webtemplate/site/_data/tocs/devguides/master/xds-docs-guides-devguides-book.yml -->
2
3 # Prerequisites
4
5 XDS is written in Go and currently only build on Linux host has been validated.
6
7 So to build XDS binaries you need to install first [Go](https://golang.org/doc/install)
8 version 1.8.1 or higher and some other tools. To build `xds-server` and `xds-agent`
9 you also need to install in addition `nodejs` and `python3` tools.
10
11 **Ubuntu:**
12
13 ```bash
14 # Install various tools
15 sudo apt-get install git make npm curl git zip unzip wget
16
17 # Install Go
18 source /etc/os-release
19 wget -O - "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x52B59B1571A79DBC054901C0F6BC817356A3D45E" | sudo apt-key add -
20 sudo bash -c "cat >> /etc/apt/sources.list.d/golang.list <<EOF
21 deb http://ppa.launchpad.net/longsleep/golang-backports/ubuntu ${VERSION_CODENAME} main
22 EOF"
23 sudo apt-get update
24 sudo apt-get install golang-go
25
26 # Install python3
27 sudo apt-get install python3
28 ```
29
30 **openSUSE:**
31
32 ```bash
33 # Install various tools
34 sudo zypper install git make npm curl zip unzip
35
36 # Install Go
37 # ( the value 'DISTRO' can be set to {openSUSE_Leap_42.2, openSUSE_Leap_42.3, openSUSE_Tumbleweed} )
38 source /etc/os-release; export DISTRO="openSUSE_Leap_$VERSION"
39 sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/go/${DISTRO}/devel:languages:go.repo
40 sudo zypper --gpg-auto-import-keys ref
41 sudo zypper install go1.9
42
43 # Install python3
44 sudo zypper install python3
45 ```
46
47 > Don't forget to open new user session after installing these packages.
48
49 **All Linux distro:**
50
51 ```bash
52 # Install nodejs LTS version (only mandatory for xds-server and xds-agent)
53 sudo npm install --global n
54 sudo n lts
55 ```
56
57 Angular developers that's plan to modify XDS Dashboard webapp (part of
58 `xds-agent` repo) may also need angular cli tool named `ng` :
59
60 ```bash
61 # Install angular cli tool (ng)
62 sudo npm install --global n @angular/cli
63 ```