aboutsummaryrefslogtreecommitdiffstats
path: root/INSTALL/tasks.d
diff options
context:
space:
mode:
authorStephane Desneux <stephane.desneux@iot.bzh>2017-05-11 01:06:09 +0200
committerStephane Desneux <stephane.desneux@iot.bzh>2017-05-11 01:06:09 +0200
commita7bf03217af780f4245af555efdbfdc7ca9e2935 (patch)
tree66698dc80d43d3ff023560bc483acf66a964212d /INSTALL/tasks.d
parentf32036a025d8ae7e6ef02aca8b080e5bca60fc11 (diff)
Introduce flavours for containers
Multiple variations over a common base must be supported when creating AGL containers. This commit introduces 'flavours' to achive this goal (see README.md for details). Current supported flavours: * generic : same image as before * xds : new image dedicated to AGL DevKit Change-Id: I0aa65a1d9e83a2d7aed43e0b135dc43c5537bc53 Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Diffstat (limited to 'INSTALL/tasks.d')
-rw-r--r--INSTALL/tasks.d/30_yocto44
-rw-r--r--INSTALL/tasks.d/31_yocto_toaster7
-rw-r--r--INSTALL/tasks.d/40_netboot15
-rw-r--r--INSTALL/tasks.d/50_sdk15
-rw-r--r--INSTALL/tasks.d/60_x11_tools13
-rw-r--r--INSTALL/tasks.d/70_doc13
-rw-r--r--INSTALL/tasks.d/80_xds16
7 files changed, 123 insertions, 0 deletions
diff --git a/INSTALL/tasks.d/30_yocto b/INSTALL/tasks.d/30_yocto
new file mode 100644
index 0000000..af21a8c
--- /dev/null
+++ b/INSTALL/tasks.d/30_yocto
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+# install prereqs for bitbake (Yocto mega-manual)
+# http://www.yoctoproject.org/docs/2.2/mega-manual/mega-manual.html#detailed-supported-distros
+apt-get install -y gawk wget git git-core diffstat unzip texinfo gcc-multilib \
+ build-essential chrpath socat
+
+# some packages are not mentioned or not pulled...
+apt-get install -y libsdl1.2-dev cpio libzip2 lsb-release python3
+
+# dev tools
+apt-get install -y make ccache
+
+# for documentation
+#apt-get install -y xsltproc docbook-utils fop dblatex xmlto
+
+# for gerrit
+apt-get install -y git-review
+
+# libncurses5-dev for kernel 'make menuconfig'
+apt-get install -y libncurses5-dev
+
+# copy meta init script in ~devel/bin:
+wget -O $DEVUSER_HOME/bin/prepare_meta https://raw.githubusercontent.com/iotbzh/agl-manifest/master/prepare_meta
+chmod +x $DEVUSER_HOME/bin/*
+
+# for image creation and compression
+apt-get install -y python-lzma python-gpgme pbzip2 pigz lzop
+
+dpkg -i \
+ $INSTDIR/tools/bmaptools/bmap-tools*.deb \
+ $INSTDIR/tools/tar/*.deb \
+ $INSTDIR/tools/xz-utils/*.deb
+
+# install specific scripts
+mkdir -p /usr/local/bin
+for x in $INSTDIR/tools/scripts_yocto/*; do
+ install --mode=755 $x /usr/local/bin/
+done
+
+# grab and install repo tool
+wget -O /usr/local/bin/repo https://storage.googleapis.com/git-repo-downloads/repo
+chmod a+x /usr/local/bin/repo
+
diff --git a/INSTALL/tasks.d/31_yocto_toaster b/INSTALL/tasks.d/31_yocto_toaster
new file mode 100644
index 0000000..9dbb698
--- /dev/null
+++ b/INSTALL/tasks.d/31_yocto_toaster
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+# for toaster
+apt-get install -y python-pip
+pip install "Django==1.6" "South==0.8.4" "argparse==1.2.1" "wsgiref==0.1.2" "beautifulsoup4>=4.4.0"
+
+
diff --git a/INSTALL/tasks.d/40_netboot b/INSTALL/tasks.d/40_netboot
new file mode 100644
index 0000000..05d6f30
--- /dev/null
+++ b/INSTALL/tasks.d/40_netboot
@@ -0,0 +1,15 @@
+#!/bin/bash
+
+# for network boot through tftp+nbd
+apt-get install -y tftpd-hpa xnbd-server
+
+# adjust config file to have the server point to bitbake images deployment dir
+sed -i -e "s#^\(TFTP_DIRECTORY=\).*\$#\1\"$XDT_BUILD/tmp/deploy/images\"#" /etc/default/tftpd-hpa
+
+# install specific scrips
+mkdir -p /usr/local/bin
+for x in $INSTDIR/tools/scripts_netboot/*; do
+ install --mode=755 $x /usr/local/bin/
+done
+
+
diff --git a/INSTALL/tasks.d/50_sdk b/INSTALL/tasks.d/50_sdk
new file mode 100644
index 0000000..1a44fd9
--- /dev/null
+++ b/INSTALL/tasks.d/50_sdk
@@ -0,0 +1,15 @@
+#!/bin/bash
+
+# install specific scripts
+mkdir -p /usr/local/bin
+for x in $INSTDIR/tools/scripts_sdk/*; do
+ install --mode=755 $x /usr/local/bin/
+done
+
+# install node.js and tools (npm, gulp, bower) if needed
+if [[ -z $(which node) ]]; then
+ curl -sL https://deb.nodesource.com/setup_6.x | bash -
+ apt-get install nodejs
+ npm install --global gulp bower
+fi
+
diff --git a/INSTALL/tasks.d/60_x11_tools b/INSTALL/tasks.d/60_x11_tools
new file mode 100644
index 0000000..5c2cd75
--- /dev/null
+++ b/INSTALL/tasks.d/60_x11_tools
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+apt-get install -y gitg vim-gtk xterm fonts-liberation
+
+# update xterm resources to have truetype fonts and utf-8
+cat <<EOF >>/etc/X11/app-defaults/XTerm
+
+!iotbzh: enable truetype fonts and UTF-8 encoding
+*VT100*faceName: mono
+*VT100*faceSize: 13
+*VT100*locale: true
+EOF
+
diff --git a/INSTALL/tasks.d/70_doc b/INSTALL/tasks.d/70_doc
new file mode 100644
index 0000000..9336de9
--- /dev/null
+++ b/INSTALL/tasks.d/70_doc
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+# install node.js and tools (npm, gulp, bower) if needed
+if [[ -z $(which node) ]]; then
+ curl -sL https://deb.nodesource.com/setup_6.x | bash -
+ apt-get install -y nodejs
+ npm install --global gulp bower
+fi
+
+# tools used to generate developer website (https://github.com/automotive-grade-linux/docs-agl)
+gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 \
+ && curl -sSL https://get.rvm.io | bash -s stable --ruby --gems=jekyll
+
diff --git a/INSTALL/tasks.d/80_xds b/INSTALL/tasks.d/80_xds
new file mode 100644
index 0000000..69d7999
--- /dev/null
+++ b/INSTALL/tasks.d/80_xds
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+# install required tools for XDS
+# TODO
+
+# clone XDS repo
+# TODO
+
+# build daemon
+# TODO
+
+# install in container
+# TODO
+
+# cleanup (remove build tools)
+# TODO