diff options
Diffstat (limited to 'documentation/dev-manual/custom-distribution.rst')
-rw-r--r-- | documentation/dev-manual/custom-distribution.rst | 34 |
1 files changed, 30 insertions, 4 deletions
diff --git a/documentation/dev-manual/custom-distribution.rst b/documentation/dev-manual/custom-distribution.rst index 47faed0d04..0bc386d606 100644 --- a/documentation/dev-manual/custom-distribution.rst +++ b/documentation/dev-manual/custom-distribution.rst | |||
@@ -4,10 +4,16 @@ Creating Your Own Distribution | |||
4 | ****************************** | 4 | ****************************** |
5 | 5 | ||
6 | When you build an image using the Yocto Project and do not alter any | 6 | When you build an image using the Yocto Project and do not alter any |
7 | distribution :term:`Metadata`, you are | 7 | distribution :term:`Metadata`, you are using the Poky distribution. |
8 | creating a Poky distribution. If you wish to gain more control over | 8 | Poky is explicitly a *reference* distribution for testing and |
9 | package alternative selections, compile-time options, and other | 9 | development purposes. It enables most hardware and software features |
10 | low-level configurations, you can create your own distribution. | 10 | so that they can be tested, but this also means that from a security |
11 | point of view the attack surface is very large. Additionally, at some | ||
12 | point it is likely that you will want to gain more control over package | ||
13 | alternative selections, compile-time options, and other low-level | ||
14 | configurations. For both of these reasons, if you are using the Yocto | ||
15 | Project for production use then you are strongly encouraged to create | ||
16 | your own distribution. | ||
11 | 17 | ||
12 | To create your own distribution, the basic steps consist of creating | 18 | To create your own distribution, the basic steps consist of creating |
13 | your own distribution layer, creating your own distribution | 19 | your own distribution layer, creating your own distribution |
@@ -107,3 +113,23 @@ layer. The following steps provide some more detail: | |||
107 | For information on append files, see the | 113 | For information on append files, see the |
108 | ":ref:`dev-manual/layers:appending other layers metadata with your layer`" | 114 | ":ref:`dev-manual/layers:appending other layers metadata with your layer`" |
109 | section. | 115 | section. |
116 | |||
117 | Copying and modifying the Poky distribution | ||
118 | =========================================== | ||
119 | |||
120 | Instead of creating a custom distribution from scratch as per above, you may | ||
121 | wish to start your custom distribution configuration by copying the Poky | ||
122 | distribution provided within the ``meta-poky`` layer and then modifying it. | ||
123 | This is fine, however if you do this you should keep the following in mind: | ||
124 | |||
125 | - Every reference to Poky needs to be updated in your copy so that it | ||
126 | will still apply. This includes override usage within files (e.g. ``:poky``) | ||
127 | and in directory names. This is a good opportunity to evaluate each one of | ||
128 | these customizations to see if they are needed for your use case. | ||
129 | |||
130 | - Unless you also intend to use them, the ``poky-tiny``, ``poky-altcfg`` and | ||
131 | ``poky-bleeding`` variants and any references to them can be removed. | ||
132 | |||
133 | - More generally, the Poky distribution configuration enables a lot more | ||
134 | than you likely need for your production use case. You should evaluate *every* | ||
135 | configuration choice made in your copy to determine if it is needed. | ||