# storage called "packageOperations" and it is processed
# after the static list in the job configuration.
#
-#operations:
-# - install:
-# - pkg1
-# - pkg2
-# - remove:
-# - pkg3
-# - pkg4
-# - try_install: # no system install failure if a package cannot be installed
-# - pkg5
-# - try_remove: # no system install failure if a package cannot be removed
-# - pkg2
-# - pkg1
-# - install:
-# - pkgs6
-# - pkg7
-# - localInstall:
-# - /path/to/pkg8
+# Allowed package operations are:
+# - install, try_install: will call the package manager to
+# install one or more packages. The install target will
+# abort the whole installation if package-installation
+# fails, while try_install carries on. Packages may be
+# listed as (localized) names, or as (localized) package-data.
+# See below for the description of the format.
+# - localInstall: this is used to call the package manager
+# to install a package from a path-to-a-package. This is
+# useful if you have a static package archive on the install media.
+# - remove, try_remove: will call the package manager to
+# remove one or more packages. The remove target will
+# abort the whole installation if package-removal fails,
+# while try_remove carries on. Packages may be listed as
+# (localized) names.
+#
+# There are two formats for naming packages: as a name # or as package-data,
+# which is an object notation providing package-name, as well as pre- and
+# post-install scripts.
+#
+# Here are both formats, for installing vi. The first one just names the
+# package for vi (using the naming of the installed package manager), while
+# the second contains three data-items; the pre-script is run before invoking
+# the package manager, and the post-script runs once it is done.
+#
+# - install
+# - vi
+# - package: vi
+# pre-script: touch /tmp/installing-vi
+# post-script: rm -f /tmp/installing-vi
+#
+# The pre- and post-scripts are optional, but not both optional: using
+# "package: vi" with neither script option will trick Calamares into
+# trying to install a package named "package: vi", which is unlikely to work.
+#
+# Any package name may be localized; this is used to install localization
+# packages for software based on the selected system locale. By including
+# the string LOCALE in the package name, the following happens:
+#
+# - if the system locale is English (generally US English; en_GB is a valid
+# localization), then the package is not installed at all,
+# - otherwise LOCALE is replaced by the Bcp47 name of the selected system
+# locale, e.g. nl_BE.
+#
+# The following installs localizations for vi, if they are relevant; if
+# there is no localization, installation continues normally.
+#
+# - install
+# - vi-LOCALE
+# - package: vi-LOCALE
+# pre-script: touch /tmp/installing-vi
+# post-script: rm -f /tmp/installing-vi
+#
+# When installing packages, Calamares will invoke the package manager
+# with a list of package names if it can; package-data prevents this because
+# of the scripts that need to run. In other words, this:
+#
+# - install:
+# - vi
+# - binutils
+# - package: wget
+# pre-script: touch /tmp/installing-wget
+#
+# This will invoke the package manager three times, once for each package,
+# because not all of them are simple package names. You can speed up the
+# process if you have only a few pre-scriots, by using multiple install targets:
+#
+# - install:
+# - vi
+# - binutils
+# - install:
+# - package: wget
+# pre-script: touch /tmp/installing-wget
+#
+# This will call the package manager once with the package-names "vi" and
+# "binutils", and then a second time for "wget". When installing large numbers
+# of packages, this can lead to a considerable time savings.
+#
operations:
- install:
- vi