aboutsummaryrefslogtreecommitdiffstats
path: root/docs/part-1
diff options
context:
space:
mode:
Diffstat (limited to 'docs/part-1')
-rw-r--r--docs/part-1/0_Abstract.md2
-rw-r--r--docs/part-1/1_install-client.md32
-rw-r--r--docs/part-1/2_install-xds-server.md60
-rw-r--r--docs/part-1/3_install-sdks.md102
4 files changed, 121 insertions, 75 deletions
diff --git a/docs/part-1/0_Abstract.md b/docs/part-1/0_Abstract.md
index 7badf42..8def883 100644
--- a/docs/part-1/0_Abstract.md
+++ b/docs/part-1/0_Abstract.md
@@ -8,7 +8,7 @@ for cross development with near-zero installation.
This documentation is available :
- online: [http://docs.automotivelinux.org/docs/devguides/en/dev/#xcross-development-system-user's-guide](http://docs.automotivelinux.org/docs/devguides/en/dev/#xcross-development-system-user's-guide)
-- PDF file: [http://iot.bzh/download/public/2017/XDS/docs/XDS_UsersGuide.pdf](http://iot.bzh/download/public/2017/XDS/docs/XDS_UsersGuide.pdf)
+- PDF file: [http://iot.bzh/download/public/XDS/docs/XDS_UsersGuide.pdf](http://iot.bzh/download/public/XDS/docs/XDS_UsersGuide.pdf)
The first goal of XDS is to provide a multi-platform cross development tool with
near-zero installation.
diff --git a/docs/part-1/1_install-client.md b/docs/part-1/1_install-client.md
index 7d0299f..304b46a 100644
--- a/docs/part-1/1_install-client.md
+++ b/docs/part-1/1_install-client.md
@@ -25,31 +25,31 @@ optional and depends of what you want to do :
```bash
# 'DISTRO' can be set to { xUbuntu_16.04, xUbuntu_16.10, xUbuntu_17.04, Debian_8.0, Debian_9.0 }
-seb@laptop ~$ export DISTRO="xUbuntu_16.04"
+export DISTRO="xUbuntu_16.04"
-seb@laptop ~$ wget -O - http://download.opensuse.org/repositories/isv:/LinuxAutomotive:/app-Development/${DISTRO}/Release.key | sudo apt-key add -
-seb@laptop ~$ sudo bash -c "cat >> /etc/apt/sources.list.d/AGL.list <<EOF
+wget -O - http://download.opensuse.org/repositories/isv:/LinuxAutomotive:/app-Development/${DISTRO}/Release.key | sudo apt-key add -
+sudo bash -c "cat >> /etc/apt/sources.list.d/AGL.list <<EOF
deb http://download.opensuse.org/repositories/isv:/LinuxAutomotive:/app-Development/${DISTRO}/ ./
EOF"
-seb@laptop ~$ sudo apt-get update
-seb@laptop ~$ sudo apt-get install agl-xds-agent
-seb@laptop ~$ sudo apt-get install agl-xds-cli
-seb@laptop ~$ sudo apt-get install agl-xds-gdb
+sudo apt-get update
+sudo apt-get install agl-xds-agent
+sudo apt-get install agl-xds-cli
+sudo apt-get install agl-xds-gdb
```
## Install packages for openSUSE distro type
```bash
# DISTRO can be set to {openSUSE_Leap_42.2, openSUSE_Leap_42.3, openSUSE_Tumbleweed}
-seb@laptop ~$ export DISTRO="openSUSE_Leap_42.2"
+export DISTRO="openSUSE_Leap_42.2"
-seb@laptop ~$ sudo zypper ar http://download.opensuse.org/repositories/isv:/LinuxAutomotive:/app-Development/${DISTRO}/isv:LinuxAutomotive:app-Development.repo
+sudo zypper ar http://download.opensuse.org/repositories/isv:/LinuxAutomotive:/app-Development/${DISTRO}/isv:LinuxAutomotive:app-Development.repo
-seb@laptop ~$ sudo zypper ref
-seb@laptop ~$ sudo zypper install agl-xds-agent
-seb@laptop ~$ sudo zypper install agl-xds-cli
-seb@laptop ~$ sudo zypper install agl-xds-gdb
+sudo zypper ref
+sudo zypper install agl-xds-agent
+sudo zypper install agl-xds-cli
+sudo zypper install agl-xds-gdb
```
## Install for other platforms (Windows / MacOS)
@@ -81,11 +81,11 @@ immediately using following commands:
```bash
# Enable xds-agent service at boot
-seb@laptop ~$ systemctl --user enable xds-agent.service
+systemctl --user enable xds-agent.service
# Manually start xds-agent service
-seb@laptop ~$ systemctl --user start xds-agent.service
+systemctl --user start xds-agent.service
# Get status and log of xds-agent service
-seb@laptop ~$ systemctl --user status xds-agent.service
+systemctl --user status xds-agent.service
```
diff --git a/docs/part-1/2_install-xds-server.md b/docs/part-1/2_install-xds-server.md
index c992f35..6c9dad7 100644
--- a/docs/part-1/2_install-xds-server.md
+++ b/docs/part-1/2_install-xds-server.md
@@ -14,7 +14,7 @@ Several installation types are supported :
| Install type | Supported OS | Section to refer |
|--------------|--------------|------------------|
| Container | Linux or MacOS | [see Installation based on Docker container](#installation-based-on-docker-container) |
-| Virtual Machine | Linux, MacOS or Windows | [see Installation based on VirtualBox appliance](#installation-based-on-virtualbox-appliance) |
+| Virtual Machine | Linux, MacOS or Windows | [see Installation based on VirtualBox appliance](#installation-based-on-virtual-machine-appliance) |
| Native | Linux | [see Native installation](#native-installation) |
## Installation based on Docker container
@@ -28,14 +28,14 @@ Docker is installed on the host machine, please refer to [Docker documentation](
Load the pre-build AGL SDK docker image including `xds-server`:
```bash
-seb@laptop ~$ wget -O - http://iot.bzh/download/public/2017/XDS/docker/docker_agl_worker-xds-latest.tar.xz | docker load
+wget -O - http://iot.bzh/download/public/XDS/docker/docker_agl_worker-xds-latest.tar.xz | docker load
```
You should get `docker.automotivelinux.org/agl/worker-xds:X.Y` image
```bash
# List image that we just load
-seb@laptop ~$ docker images "docker.automotivelinux.org/agl/worker-xds*"
+docker images "docker.automotivelinux.org/agl/worker-xds*"
docker.automotivelinux.org/agl/worker-xds 4.0 786d65b2792c 6 days ago 654MB
```
@@ -46,13 +46,13 @@ Use provided script to create a new docker container and start it:
```bash
# Get script
-seb@laptop ~$ wget https://raw.githubusercontent.com/iotbzh/xds-server/master/scripts/xds-docker-create-container.sh
+wget https://raw.githubusercontent.com/iotbzh/xds-server/master/scripts/xds-docker-create-container.sh
# Create new XDS worker container
-seb@laptop ~$ bash ./xds-docker-create-container.sh
+bash ./xds-docker-create-container.sh
# Check that new container is running
-seb@laptop ~$ docker ps | grep worker-xds
+docker ps | grep worker-xds
b985d81af40c docker.automotivelinux.org/agl/worker-xds:3.99.1 "/usr/bin/wait_for..." 6 days ago Up 4 hours 0.0.0.0:8000->8000/tcp, 0.0.0.0:69->69/udp, 0.0.0.0:10809->10809/tcp, 0.0.0.0:2222->22/tcp agl-xds-seb@laptop-0-seb
```
@@ -62,7 +62,7 @@ to use for example with Path-Mapping folder type.
```bash
# Create new XDS worker container and share extra '$HOME/my-workspace' directory
-seb@laptop ~$ bash ./xds-docker-create-container.sh --volume /my-workspace:$HOME/my-workspace
+bash ./xds-docker-create-container.sh --volume /my-workspace:$HOME/my-workspace
```
### Check if xds-server is running
@@ -75,7 +75,7 @@ web page that gives you some instructions:
```bash
# if container is running on your local host
# (else replace localhost by the name or the ip of the machine running the container)
-seb@laptop ~$ xdg-open http://localhost:8000
+xdg-open http://localhost:8000
```
`xds-server` is now up and running, you can now install AGL SDKs, please refer
@@ -99,7 +99,7 @@ inside and outside docker):
| $USER_VOLUME | $USER_VOLUME | user path, see `--volume` option of `xds-docker-create-container.sh` script |
<!-- note -->
-Please refer to [part 2 - xds-server](../part-2/1_xds-server.md) documentation
+Please refer to [part 2 - xds-server](../part-2/1_xds-server.md#sdk-cross-toolchain-management) documentation
for additional info.
<!-- endnote -->
@@ -123,20 +123,20 @@ wget http://iot.bzh/download/public/XDS/appliance/xds-vm-debian9_latest.ova
You must have one and one xds appliance only.
-So, at first remove the oldest xds appliance.
+So, first remove the oldest xds appliance if needed.
```bash
-#Get the virtual machine name
+# Get the virtual machine name
VDS_VMNAME=$(VBoxManage list vms | grep xds-vm-debian | cut -d "\"" -f2)
echo ${VDS_VMNAME}
-#Remove old XDS appliance
+# Remove old XDS appliance
[ -n ${VDS_VMNAME} ] && VBoxManage unregistervm ${VDS_VMNAME} --delete
```
### Create and start a new appliance
-Use provided script to create a new appliance or you can use the UI of VirtualBox:
+Used provided script to create a new appliance or you can use VirtualBox GUI:
```bash
# Import image into VirtualBox
@@ -152,7 +152,7 @@ echo ${VDS_VMNAME}
### Appliance settings
-This container (ID=0) exposes following ports:
+This image exposes following network ports (NAT mode):
- 8000 : `xds-server` to serve XDS basic web page
- 69 : TFTP
@@ -167,7 +167,7 @@ To check if xds-server is correctly install and running, you can access the basi
```bash
# if container/appliance is running on your local host
# (else replace localhost by the name or the ip of the machine running the container)
-seb@laptop ~$ xdg-open http://localhost:8000
+xdg-open http://localhost:8000
```
`xds-server` is now up and running, you can now install AGL SDKs, please refer
@@ -183,27 +183,27 @@ installation !
```bash
# 'DISTRO' can be set to { xUbuntu_16.04, xUbuntu_16.10, xUbuntu_17.04, Debian_8.0, Debian_9.0}
-seb@laptop ~$ export DISTRO="xUbuntu_16.04"
+export DISTRO="xUbuntu_16.04"
-seb@laptop ~$ wget -O - http://download.opensuse.org/repositories/isv:/LinuxAutomotive:/app-Development/${DISTRO}/Release.key | sudo apt-key add -
-seb@laptop ~$ sudo bash -c "cat >> /etc/apt/sources.list.d/AGL.list <<EOF
+wget -O - http://download.opensuse.org/repositories/isv:/LinuxAutomotive:/app-Development/${DISTRO}/Release.key | sudo apt-key add -
+sudo bash -c "cat >> /etc/apt/sources.list.d/AGL.list <<EOF
deb http://download.opensuse.org/repositories/isv:/LinuxAutomotive:/app-Development/${DISTRO}/ ./
EOF"
-seb@laptop ~$ sudo apt-get update
-seb@laptop ~$ sudo apt-get install agl-xds-server
+sudo apt-get update
+sudo apt-get install agl-xds-server
```
### Install packages for openSUSE distro type
```bash
# DISTRO can be set to {openSUSE_Leap_42.2, openSUSE_Leap_42.3, openSUSE_Tumbleweed}
-seb@laptop ~$ export DISTRO="openSUSE_Leap_42.2"
+export DISTRO="openSUSE_Leap_42.2"
-seb@laptop ~$ sudo zypper ar http://download.opensuse.org/repositories/isv:/LinuxAutomotive:/app-Development/${DISTRO}/isv:LinuxAutomotive:app-Development.repo
+sudo zypper ar http://download.opensuse.org/repositories/isv:/LinuxAutomotive:/app-Development/${DISTRO}/isv:LinuxAutomotive:app-Development.repo
-seb@laptop ~$ sudo zypper ref
-seb@laptop ~$ sudo zypper install agl-xds-server
+sudo zypper ref
+sudo zypper install agl-xds-server
```
### Configure xds-server
@@ -261,27 +261,27 @@ All fields are optional and example below corresponds to the default values:
```bash
# Status XDS server:
-seb@laptop ~$ systemctl --user status xds-server.service
+systemctl --user status xds-server.service
# Stop XDS server
-seb@laptop ~$ systemctl --user stop xds-server.service
+systemctl --user stop xds-server.service
# Start XDS server
-seb@laptop ~$ systemctl --user start xds-server.service
+systemctl --user start xds-server.service
# Get XDS server logs
-seb@laptop ~$ systemctl --user --unit=xds-server.service --output=cat
+systemctl --user --unit=xds-server.service --output=cat
```
To check if xds-server is correctly install and running, you can access the web
interface, using a web browser :
```bash
-seb@laptop ~$ xdg-open http://localhost:8000
+xdg-open http://localhost:8000
```
or get the current version using the following curl command:
```bash
-seb@laptop ~$ curl http://localhost:8000/api/v1/version
+curl http://localhost:8000/api/v1/version
```
diff --git a/docs/part-1/3_install-sdks.md b/docs/part-1/3_install-sdks.md
index e1cdd07..80ee010 100644
--- a/docs/part-1/3_install-sdks.md
+++ b/docs/part-1/3_install-sdks.md
@@ -4,45 +4,91 @@ To build your AGL services or AGL applications using XDS you must install a SDK
matching the target/board you want to use. A SDK is a package that includes all
tools you need to cross-build and cross-debug your service/application.
-You can generate the AGL SDK for the board you want to use or you can download
+You can generate AGL SDK for the board you want to use or you can download
a pre-packaged AGL SDK.
-## Installing SDK cross-toolchain
+## Install a new SDK from command line
-`xds-server` uses SDK cross-toolchain installed into directory pointed by
-`sdkRootDir` setting (see `xds-server` configuration chapter for more details).
+Used `sdks` command of `xds-cli` tool to managed SDKs.
-For now, you can only install SDK using a bash script but in a near future you
-will be able to manage SDKs using XDS Dashboard.
+```bash
+# List all available SDKs
+xds-cli sdks ls -a
-So to install a SDK, use provided `install-agl-sdks` script:
+List of available SDKs:
+ID NAME STATUS VERSION ARCH
+ec15afe0 AGL-release-eel-4.99.4-raspberrypi3 Not Installed 4.99.4 armv7vehf-neon-vfpv4
+944d2d5a AGL-snapshots-master-latest-intel-corei7-64 Not Installed 4.99.3+snapshot corei7-64
+cf3a4365 AGL-release-dab-4.0.2-qemux86-64 Not Installed 4.0.2 corei7-64
+d65fe750 AGL-release-eel-latest-qemux86-64 Not Installed 4.99.3 corei7-64
+a0ae663d poky-agl-corei7-64-3.99.1+snapshot Installed 3.99.1+snapshot corei7-64
+87f0400b AGL-release-dab-3.99.3-m3ulcb-nogfx Installed 3.99.3 aarch64
+8c2f2841 AGL-release-dab-4.0.2-dragonboard-410c Not Installed 4.0.2 aarch64
+...
-```bash
-# Optional - Log into the container (only necessary when xds-server is running within a docker container)
-seb@laptop ~$ ssh -p 2222 devel@localhost
+# Install a SDK (downloaded + install)
+xds-cli sdks install d65fe750
-# For example, Install ARM64 SDK (automatic download)
-devel@docker ~$ sudo /opt/AGL/xds/server/xds-utils/install-agl-sdks.sh --arch aarch64
-```
+Installation of 'AGL-release-eel-latest-qemux86-64' SDK successfully started.
+Downloading poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-corei7-64-toolchain-4.99.5.sh ...
+--2018-01-02 11:22:23-- https://download.automotivelinux.org/AGL/release/eel/latest/qemux86-64/deploy/sdk/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-corei7-64-toolchain-4.99.5.sh
+Resolving download.automotivelinux.org (download.automotivelinux.org)... 199.19.213.77
+Connecting to download.automotivelinux.org (download.automotivelinux.org)|199.19.213.77|:443... connected.
+HTTP request sent, awaiting response... 200 OK
+Length: 665996704 (635M) [application/x-sh]
+Saving to: ‘/tmp/tmp.wuQzLdImCS/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-corei7-64-toolchain-4.99.5.sh’
-You may also want to install an SDK that you built manually (see [Part 1 - SDK-compilation-installation](http://docs.automotivelinux.org/docs/devguides/en/dev/reference/sdk-devkit/docs/part-1/1_7-SDK-compilation-installation.html))
+ 0K .......... .......... .......... .......... .......... 0% 82,7K 2h11m
+ 50K .......... .......... .......... .......... .......... 0% 89,1K 2h6m
+ 100K .......... .......... .......... .......... .......... 0% 82,0K 2h8m
+...
+ 50300K .......... .......... .......... .......... .......... 99% 2,15M 0s
+ 650350K .......... .......... .......... ....... 100% 4,04M=10m35s
-```bash
-# Optional - Log into the container (only necessary when xds-server is running within a docker container)
-seb@laptop ~$ ssh -p 2222 devel@localhost
+2018-01-02 12:17:06 (1024 KB/s) - ‘/tmp/tmp.CWyEj3z76Q/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-corei7-64-toolchain-4.99.5.sh’ saved [665996704/665996704]
-# Install Intel corei7-64 SDK (using an SDK tarball that has been built or downloaded manually)
-devel@docker ~$ sudo /opt/AGL/xds/server/xds-utils/install-agl-sdks.sh --arch corei7-64 --file /tmp/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-corei7-64-toolchain-
-4.0.1.sh
-```
+Automotive Grade Linux SDK installer version 4.99.5
+===================================================
+You are about to install the SDK to "/xdt/sdk/poky-agl/4.99.5/corei7-64". Proceed[Y/n]? Y
+Extracting SDK....................................................................................................................done
+Setting it up...done
+SDK has been successfully set up and is ready to be used.
+Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
+ $ . /xdt/sdk/poky-agl/4.99.5/corei7-64/environment-setup-corei7-64-agl-linux
-<!-- warning -->
-**Warning:** due to some limitation, you need for now to restart `xds-server` in
-order to make new installed SDK visible/available.
+SDK ID d65fe750-d3a7-38f5-83d8-3d3806054f8d successfully installed.
+
+
+# Abort an installation that is in progress
+xds-cli sdks abort -id d65fe750
+
+# Install a SDK (using a local SDK package/file)
+xds-cli sdks install --file $HOME/xds-workspace/sdks/poky-agl-glibc-x86_64-agl-demo-platform-crosssdk-corei7-64-toolchain-4.99.5.sh
-```bash
-seb@laptop ~$ ssh -p 2222 devel@localhost
-devel@docker ~$ systemctl --user restart xds-server.service
```
-<!-- endwarning -->
+<!-- note -->
+Installation based on a local SDK package is only supported when SDK file package
+is located in `$HOME/xds-workspace/sdks` directory
+<!-- endnote -->
+
+## Install a new SDK from XDS Dashboard
+
+Open XDS-Dashboard in web-browser and select `SDKs` entry in left side menu.
+Then switch to `SDKs MANAGEMENT` view :
+
+![](../part-1/pictures/xds-dashboard-sdks-mgt.png){:: style="margin:auto; display:flex"}
+
+Use filter boxes to find the SDK you want to install and then click on plus
+icon (Actions column) to start installation. SDK download and installation
+process may take several minutes and output of installation script (output of
+`add` script mentioned in above chapter).
+
+![](../part-1/pictures/xds-dashboard-sdks-install.png){:: style="margin:auto; display:flex"}
+
+Note that you can abort installation by clicking on `CANCEL` button.
+
+## More info
+
+Please refer to [xds-server](../part-2/1_xds-server.md) chapter for more details
+about SDKs management.