[FE training-materials-updates] yocto: slides: enhance the distro slides
Antoine Ténart
antoine.tenart at free-electrons.com
Mon Sep 5 14:08:28 CEST 2016
Repository : git://git.free-electrons.com/training-materials.git
On branch : master
Link : http://git.free-electrons.com/training-materials/commit/?id=a4fb8888c94292b241f38bf040a2e92902fea711
>---------------------------------------------------------------
commit a4fb8888c94292b241f38bf040a2e92902fea711
Author: Antoine Tenart <antoine.tenart at free-electrons.com>
Date: Mon Sep 5 14:05:28 2016 +0200
yocto: slides: enhance the distro slides
Signed-off-by: Antoine Tenart <antoine.tenart at free-electrons.com>
>---------------------------------------------------------------
a4fb8888c94292b241f38bf040a2e92902fea711
slides/yocto-layer-distro/yocto-layer-distro.tex | 68 ++++++++++++++++++++++++
1 file changed, 68 insertions(+)
diff --git a/slides/yocto-layer-distro/yocto-layer-distro.tex b/slides/yocto-layer-distro/yocto-layer-distro.tex
index f0df5ec..e8405ee 100644
--- a/slides/yocto-layer-distro/yocto-layer-distro.tex
+++ b/slides/yocto-layer-distro/yocto-layer-distro.tex
@@ -79,3 +79,71 @@ MAINTAINER = "..."
\item Toolchains can be built by the build system or external.
\end{itemize}
\end{frame}
+
+\begin{frame}
+ \frametitle{Sample files}
+ \begin{itemize}
+ \item A distro layer often contains \code{sample files}, used as
+ templates to build key configurations files.
+ \item Example of \code{sample files}:
+ \begin{itemize}
+ \item \code{bblayers.conf.sample}
+ \item \code{local.conf.sample}
+ \end{itemize}
+ \item In \code{Poky}, they are in \code{meta-poky/conf/}.
+ \item The \code{TEMPLATECONF} variable controls where to find the
+ samples.
+ \item It is set in \code{${OEROOT}/.templateconf}.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Distribute the distribution}
+ \begin{itemize}
+ \item A good way to distribute a distribution (Poky, custom
+ layers, BSP, \code{.templateconf}\dots) is to use Google's
+ \code{repo}.
+ \item \code{Repo} is used in Android to distribute its source
+ code, which is split into many \code{git} repositories. It's a
+ wrapper to handle several \code{git} repositories at once.
+ \item The only requirement is to use \code{git}.
+ \item The \code{repo} configuration is stored in \code{manifest}
+ file, usually available in its own \code{git} repository.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}[fragile]
+ \frametitle{Manifest example}
+ \begin{minted}[fontsize=\small]{xml}
+<?xml version="1.0" encoding="UTF-8"?>
+<manifest>
+ <remote name="yocto-project" fetch="git.yoctoproject.org" />
+ <remote name="private" fetch="git.example.net" />
+
+ <default revision="krogoth" remote="private" />
+
+ <project name="poky" remote="yocto-project" />
+ <project name="meta-ti" remote="yocto-project" />
+ <project name="meta-custom" />
+ <project name="meta-custom-bsp" />
+ <project path="meta-custom-distro" name="distro">
+ <copyfile src="templateconf" dest="poky/.templateconf" />
+ </project>
+</manifest>
+ \end{minted}
+\end{frame}
+
+\begin{frame}[fragile]
+ \frametitle{Retrieve the project using \code{repo}}
+ \begin{minted}{sh}
+$ mkdir my-project; cd my-project
+$ repo init -u https://git.example.net/manifest.git
+$ repo sync -j4
+ \end{minted}
+ \begin{itemize}
+ \item \code{repo init} uses the \code{default.xml} manifest in the
+ repository, unless specified otherwise.
+ \item You can see the full \code{repo} documentation at
+ \url{https://source.android.com/source/using-repo.html}.
+ \end{itemize}
+\end{frame}
More information about the training-materials-updates
mailing list