summaryrefslogtreecommitdiff
path: root/distribution/yocto-advanced/pres_yocto-advanced.tex
diff options
context:
space:
mode:
authorManuel Traut <manut@linutronix.de>2014-08-26 18:44:09 +0200
committerManuel Traut <manut@linutronix.de>2014-08-26 18:44:09 +0200
commitf11482568b3e18be88bf0be335b2708247ffbdda (patch)
tree6d422d4b2fc7404e104f96d0e3dc2d0e37e1f590 /distribution/yocto-advanced/pres_yocto-advanced.tex
parenta35cc434b6da867781c03a6c598f849663b21caa (diff)
describe all tasks and a lot of variables
Signed-off-by: Manuel Traut <manut@linutronix.de>
Diffstat (limited to 'distribution/yocto-advanced/pres_yocto-advanced.tex')
-rw-r--r--distribution/yocto-advanced/pres_yocto-advanced.tex90
1 files changed, 88 insertions, 2 deletions
diff --git a/distribution/yocto-advanced/pres_yocto-advanced.tex b/distribution/yocto-advanced/pres_yocto-advanced.tex
index f249803..a3c6b41 100644
--- a/distribution/yocto-advanced/pres_yocto-advanced.tex
+++ b/distribution/yocto-advanced/pres_yocto-advanced.tex
@@ -35,8 +35,94 @@ bla
\end{frame}
\begin{frame}
-\frametitle{define an image}
-bla
+\frametitle{create bootable images for x86}
+t.b.d.
+
+The boot-directdisk class creates an image that can be placed directly onto a
+hard disk using dd and then booted. The image uses SYSLINUX.
+
+The end result is a 512 boot sector populated with a Master Boot Record (MBR)
+and partition table followed by an MSDOS FAT16 partition containing SYSLINUX
+and a Linux kernel completed by the ext2 and ext3 root filesystems.
+\end{frame}
+
+\begin{frame}[fragile]
+\frametitle {bootable image for embedded device}
+t.b.d. use IMAGE\_FEATURES
+% http://www.yoctoproject.org/docs/1.6/ref-manual/ref-manual.html#ref-features-image
+
+% http://www.yoctoproject.org/docs/1.6/dev-manual/dev-manual.html#usingpoky-extend-customimage-imagefeatures
+\end{frame}
+
+\begin{frame}[fragile]
+\frametitle{user and group configuration}
+use this in an image recipe:
+\begin{verbatim}
+inherit extrausers
+EXTRA_USERS_PARAMS = "\
+ useradd -p '' tester; \
+ groupadd developers; \
+ userdel nobody; \
+ groupdel -g video; \
+ groupmod -g 1020 developers; \
+ usermod -s /bin/sh tester; \
+ "
+\end{verbatim}
+or the useradd class, for an example see useradd-example.bb
+\end{frame}
+
+\begin{frame}[fragile]
+\frametitle{external sources}
+e.g. for a heavily customized kernel
+\begin{itemize}
+\item kernel source directory on the development machine
+\item inherit externalsrc class
+\item set EXTERNALSRC variable to point to your external source code
+\end{itemize}
+
+this local.conf extension:
+\begin{verbatim}
+INHERIT += "externalsrc"
+EXTERNALSRC_pn-myrecipe = "/some/path/to/your/source/tree"
+\end{verbatim}
+overrides the SOURCE\_URI of pn-myrecipe.bb
+\end{frame}
+
+\begin{frame}[fragile]
+\frametitle{blacklist packages}
+To blacklist a package, inherit the blacklist.bbclass globally and set
+PNBLACKLIST for each recipe you wish to blacklist.
+
+
+Specify the PN value as a variable flag (varflag) and provide a reason,
+which is reported, if the package is requested to be built as the value:
+\begin{verbatim}
+INHERIT += "blacklist"
+PNBLACKLIST[exoticware] = "Not supported by our organization."
+\end{verbatim}
+\end{frame}
+
+\begin{frame}[fragile]
+\frametitle{Providers}
+\begin{verbatim}
+--8<- -my-kernel\_3.16.bb --
+PROVIDES += "virtual/kernel"
+--8<------------------------
+\end{verbatim}
+
+PREFEREED\_PROVIDER\_virtual/kernel = "linux-yocto"
+\end{frame}
+
+\begin{frame}
+\frametitle{Preferences}
+\begin{itemize}
+\item PREFERRED\_VERSION is used to specify a particular version
+\item by default, files have a preference of "0"
+\item setting DEFAULT\_PREFERENCE to "-1" makes the recipe unlikely to be used
+ unless it is explicitly referenced.
+\item setting DEFAULT\_PREFERENCE to "1" makes it likely the recipe is used
+\item PREFERRED\_VERSION overrides any DEFAULT\_PREFERENCE setting
+\end{itemize}
\end{frame}
\input{tailpres}