Help: Add more detail for CPACK_PRODUCTBUILD_DOMAINS* variables

This commit is contained in:
Craig Scott
2022-03-21 12:25:34 +11:00
parent 66ba460810
commit bf44efadab
2 changed files with 34 additions and 13 deletions

View File

@@ -90,14 +90,15 @@ macOS using ProductBuild:
.. versionadded:: 3.23 .. versionadded:: 3.23
Adds a domains element to Distribution XML if specified. When set to true, This option enables more granular control over where the product may be
the productbuild generator creates the following XML element: installed. When it is set to true, a ``domains`` element of the following
form will be added to the productbuild Distribution XML:
.. code-block:: xml .. code-block:: xml
<domains enable_anywhere="true" enable_currentUserHome="false" enable_localSystem="true"/> <domains enable_anywhere="true" enable_currentUserHome="false" enable_localSystem="true"/>
The default values used for the attributes can be overridden with The default values are as shown above, but can be overridden with
:variable:`CPACK_PRODUCTBUILD_DOMAINS_ANYWHERE`, :variable:`CPACK_PRODUCTBUILD_DOMAINS_ANYWHERE`,
:variable:`CPACK_PRODUCTBUILD_DOMAINS_USER`, and :variable:`CPACK_PRODUCTBUILD_DOMAINS_USER`, and
:variable:`CPACK_PRODUCTBUILD_DOMAINS_ROOT`. :variable:`CPACK_PRODUCTBUILD_DOMAINS_ROOT`.
@@ -106,25 +107,43 @@ macOS using ProductBuild:
.. versionadded:: 3.23 .. versionadded:: 3.23
May be used to override the ``enable_anywhere`` attribute in the domains May be used to override the ``enable_anywhere`` attribute in the ``domains``
element in the Distribution XML when :variable:`CPACK_PRODUCTBUILD_DOMAINS` element of the Distribution XML. When set to true, the product can be
is set to ``TRUE``. installed at the root of any volume, including non-system volumes.
:variable:`CPACK_PRODUCTBUILD_DOMAINS` must be set to true for this variable
to have any effect.
.. variable:: CPACK_PRODUCTBUILD_DOMAINS_USER .. variable:: CPACK_PRODUCTBUILD_DOMAINS_USER
.. versionadded:: 3.23 .. versionadded:: 3.23
May be used to override the ``enable_currentUserHome`` attribute in the domains May be used to override the ``enable_currentUserHome`` attribute in the
element in the Distribution XML when :variable:`CPACK_PRODUCTBUILD_DOMAINS` ``domains`` element of the Distribution XML. When set to true, the product
is set to ``TRUE``. can be installed into the current user's home directory. Note that when
installing into the user's home directory, the following additional
requirements will apply:
* The installer may not write outside the user's home directory.
* The install will be performed as the current user rather than as ``root``.
This may have ramifications for :variable:`CPACK_PREFLIGHT_<COMP>_SCRIPT`
and :variable:`CPACK_POSTFLIGHT_<COMP>_SCRIPT`.
* Administrative privileges will not be needed to perform the install.
:variable:`CPACK_PRODUCTBUILD_DOMAINS` must be set to true for this variable
to have any effect.
.. variable:: CPACK_PRODUCTBUILD_DOMAINS_ROOT .. variable:: CPACK_PRODUCTBUILD_DOMAINS_ROOT
.. versionadded:: 3.23 .. versionadded:: 3.23
May be used to override the ``enable_localSystem`` attribute in the domains May be used to override the ``enable_localSystem`` attribute in the
element in the Distribution XML when :variable:`CPACK_PRODUCTBUILD_DOMAINS` ``domains`` element of the Distribution XML. When set to true, the product
is set to ``TRUE``. can be installed in the root directory. This should normally be set to true
unless the product should only be installed to the user's home directory.
:variable:`CPACK_PRODUCTBUILD_DOMAINS` must be set to true for this variable
to have any effect.
Background Image Background Image
"""""""""""""""" """"""""""""""""

View File

@@ -182,7 +182,9 @@ CPack
:variable:`CPACK_PRODUCTBUILD_DOMAINS_ANYWHERE`, :variable:`CPACK_PRODUCTBUILD_DOMAINS_ANYWHERE`,
:variable:`CPACK_PRODUCTBUILD_DOMAINS_USER`, and :variable:`CPACK_PRODUCTBUILD_DOMAINS_USER`, and
:variable:`CPACK_PRODUCTBUILD_DOMAINS_ROOT` variables for :variable:`CPACK_PRODUCTBUILD_DOMAINS_ROOT` variables for
adding the domains element to the Distribution XML. adding the domains element to the Distribution XML. With these variables,
it is now possible to install products to the user's home directory
without requiring administrative privileges.
* The :cpack_gen:`CPack productbuild Generator` gained a new variable, * The :cpack_gen:`CPack productbuild Generator` gained a new variable,
:variable:`CPACK_PRODUCTBUILD_IDENTIFIER`, used to customize the unique :variable:`CPACK_PRODUCTBUILD_IDENTIFIER`, used to customize the unique