diff --git a/docs/lorax-composer.rst b/docs/lorax-composer.rst
index d2fefcd7..750ade15 100644
--- a/docs/lorax-composer.rst
+++ b/docs/lorax-composer.rst
@@ -175,16 +175,12 @@ for selecting optional packages.
Customizations
~~~~~~~~~~~~~~
-The ``[customizations]`` section can be used to configure the hostname,
-language, and timezone of the final image. eg.::
+The ``[customizations]`` section can be used to configure the hostname of the final image. eg.::
[customizations]
hostname = "baseimage"
- timezone = "US/Eastern"
-These are all optional and may be left out to use the defaults.
-
-The values supported by ``timezone`` can be listed by running ``timedatectl list-timezones``.
+This is optional and may be left out to use the defaults.
[customizations.kernel]
@@ -250,45 +246,26 @@ Add a group to the image. ``name`` is required and ``gid`` is optional::
gid = 1130
-[[repos.git]]
-~~~~~~~~~~~~~
+[customizations.timezone]
+*************************
-The ``[[repos.git]]`` entries are used to add files from a `git repository`
-repository to the created image. The repository is cloned, the specified ``ref`` is checked out
-and an rpm is created to install the files to a ``destination`` path. The rpm includes a summary
-with the details of the repository and reference used to create it. The rpm is also included in the
-image build metadata.
+Customizing the timezone and the NTP servers to use for the system::
-To create an rpm named ``server-config-1.0-1.noarch.rpm`` you would add this to your blueprint::
+ [customizations.timezone]
+ timezone = "US/Eastern"
+ ntpservers = ["0.north-america.pool.ntp.org", "1.north-america.pool.ntp.org"]
- [[repos.git]]
- rpmname="server-config"
- rpmversion="1.0"
- rpmrelease="1"
- summary="Setup files for server deployment"
- repo="PATH OF GIT REPO TO CLONE"
- ref="v1.0"
- destination="/opt/server/"
+The values supported by ``timezone`` can be listed by running ``timedatectl list-timezones``.
-* rpmname: Name of the rpm to create, also used as the prefix name in the tar archive
-* rpmversion: Version of the rpm, eg. "1.0.0"
-* rpmrelease: Release of the rpm, eg. "1"
-* summary: Summary string for the rpm
-* repo: URL of the get repo to clone and create the archive from
-* ref: Git reference to check out. eg. origin/branch-name, git tag, or git commit hash
-* destination: Path to install the / of the git repo at when installing the rpm
+If no timezone is setup the system will default to using `UTC`. The ntp servers are also
+optional and will default to using the distribution defaults which are fine for most uses.
-An rpm will be created with the contents of the git repository referenced, with the files
-being installed under ``/opt/server/`` in this case.
+In some image types there are already NTP servers setup, eg. Google cloud image, and they
+cannot be overridden because they are required to boot in the selected environment. But the
+timezone will be updated to the one selected in the blueprint.
-``ref`` can be any valid git reference for use with ``git archive``. eg. to use the head
-of a branch set it to ``origin/branch-name``, a tag name, or a commit hash.
-Note that the repository is cloned in full each time a build is started, so pointing to a
-repository with a large amount of history may take a while to clone and use a significant
-amount of disk space. The clone is temporary and is removed once the rpm is created.
-
-[customizations.locale]
+[[customizations.locale]]
*************************
Customize the locale settings for the system::
@@ -303,6 +280,10 @@ the command line.
The values supported by ``keyboard`` can be listed by running ``localectl list-keymaps`` from
the command line.
+Multiple locale and keyboard sections can be used. The first one becomes the
+primary, and the others are added as secondary. One or the other of ``language``
+or ``keyboard`` must be included (or both).
+
[customizations.firewall]
*************************
@@ -352,6 +333,45 @@ enabled or disabled. Other releases may specify any systemd unit file, eg. ``coc
TODO -- Confirm this is still true and if not, on which releases
+[[repos.git]]
+~~~~~~~~~~~~~
+
+The ``[[repos.git]]`` entries are used to add files from a `git repository`
+repository to the created image. The repository is cloned, the specified ``ref`` is checked out
+and an rpm is created to install the files to a ``destination`` path. The rpm includes a summary
+with the details of the repository and reference used to create it. The rpm is also included in the
+image build metadata.
+
+To create an rpm named ``server-config-1.0-1.noarch.rpm`` you would add this to your blueprint::
+
+ [[repos.git]]
+ rpmname="server-config"
+ rpmversion="1.0"
+ rpmrelease="1"
+ summary="Setup files for server deployment"
+ repo="PATH OF GIT REPO TO CLONE"
+ ref="v1.0"
+ destination="/opt/server/"
+
+* rpmname: Name of the rpm to create, also used as the prefix name in the tar archive
+* rpmversion: Version of the rpm, eg. "1.0.0"
+* rpmrelease: Release of the rpm, eg. "1"
+* summary: Summary string for the rpm
+* repo: URL of the get repo to clone and create the archive from
+* ref: Git reference to check out. eg. origin/branch-name, git tag, or git commit hash
+* destination: Path to install the / of the git repo at when installing the rpm
+
+An rpm will be created with the contents of the git repository referenced, with the files
+being installed under ``/opt/server/`` in this case.
+
+``ref`` can be any valid git reference for use with ``git archive``. eg. to use the head
+of a branch set it to ``origin/branch-name``, a tag name, or a commit hash.
+
+Note that the repository is cloned in full each time a build is started, so pointing to a
+repository with a large amount of history may take a while to clone and use a significant
+amount of disk space. The clone is temporary and is removed once the rpm is created.
+
+
Adding Output Types
-------------------