diff --git a/documentation/overview-manual/overview-concepts.xml b/documentation/overview-manual/overview-concepts.xml
index 2f5c14eef6..6f9a366d5d 100644
--- a/documentation/overview-manual/overview-concepts.xml
+++ b/documentation/overview-manual/overview-concepts.xml
@@ -1258,11 +1258,15 @@
Some tasks are easier to implement when allowed to perform certain
- operations that are normally reserved for the root user.
- For example, the
- do_install
- task benefits from being able to set the UID and GID of installed
- files to arbitrary values.
+ operations that are normally reserved for the root user (e.g.
+ do_install,
+ do_package_write*,
+ do_rootfs,
+ and
+ do_image*).
+ For example, the do_install task benefits
+ from being able to set the UID and GID of installed files to
+ arbitrary values.
@@ -1281,32 +1285,34 @@
The capability to run tasks in a fake root environment is known as
- "fakeroot", which is derived from the BitBake keyword/variable
+ "fakeroot",
+ which is derived from the BitBake keyword/variable
flag that requests a fake root environment for a task.
- In current versions of the OpenEmbedded build system,
- the program that implements fakeroot is known as Pseudo.
- Pseudo overrides system calls through the
- LD_PRELOAD mechanism to give the
- illusion of running as root.
+ In the OpenEmbedded build system, the program that implements
+ fakeroot is known as Pseudo.
+ Pseudo overrides system calls by using the environment variable
+ LD_PRELOAD, which results in the illusion
+ of running as root.
To keep track of "fake" file ownership and permissions resulting
- from operations that require root permissions, an sqlite3
- database is used.
+ from operations that require root permissions, Pseudo uses
+ an SQLite 3 database.
This database is stored in
${WORKDIR}/pseudo/files.db
for individual recipes.
Storing the database in a file as opposed to in memory
- gives persistence between tasks, and even between builds.
+ gives persistence between tasks and builds, which is not
+ accomplished using fakeroot.
Caution
If you add your own task that manipulates the same files or
- directories as a fakeroot task, then that task should also run
- under fakeroot.
- Otherwise, the task will not be able to run root-only
- operations, and will not see the fake file ownership and
- permissions set by the other task.
- You should also add a dependency on
+ directories as a fakeroot task, then that task also needs to
+ run under fakeroot.
+ Otherwise, the task cannot run root-only operations, and
+ cannot see the fake file ownership and permissions set by the
+ other task.
+ You need to also add a dependency on
virtual/fakeroot-native:do_populate_sysroot,
giving the following:
@@ -1319,9 +1325,11 @@
For more information, see the
FAKEROOT*
variables in the BitBake User Manual.
- You can also reference this
- Pseudo
- article.
+ You can also reference the
+ "Pseudo"
+ and
+ "Why Not Fakeroot?"
+ articles for background information on Pseudo.