diff --git a/calamares/etc/calamares/modules/displaymanager.conf b/calamares/etc/calamares/modules/displaymanager.conf index 59ad061..1c30ed6 100644 --- a/calamares/etc/calamares/modules/displaymanager.conf +++ b/calamares/etc/calamares/modules/displaymanager.conf @@ -20,3 +20,7 @@ displaymanagers: #display manager are set up correctly. This is normally done by the distribution #packages, and best left to them. Therefore, it is disabled by default. basicSetup: false + +#If true, setup autologin for openSUSE. This only makes sense on openSUSE +#derivatives or other systems where /etc/sysconfig/displaymanager exists. +sysconfigSetup: false diff --git a/calamares/etc/calamares/modules/finished.conf b/calamares/etc/calamares/modules/finished.conf index b7dcd15..2af2742 100644 --- a/calamares/etc/calamares/modules/finished.conf +++ b/calamares/etc/calamares/modules/finished.conf @@ -1,4 +1,21 @@ +# Configuration for the "finished" page, which is usually shown only at +# the end of the installation (successful or not). --- +# The finished page can hold a "restart system now" checkbox. +# If this is false, no checkbox is shown and the system is not restarted +# when Calamares exits. restartNowEnabled: true + +# Initial state of the checkbox "restart now". Only relevant when the +# checkbox is shown by restartNowEnabled. restartNowChecked: false + +# If the checkbox is shown, and the checkbox is checked, then when +# Calamares exits from the finished-page it will run this command. +# If not set, falls back to "shutdown -r now". restartNowCommand: "/bin/systemctl -i reboot" + +# When the last page is (successfully) reached, send a DBus notification +# to the desktop that the installation is done. This works only if the +# user as whom Calamares is run, can reach the regular desktop session bus. +notifyOnFinished: false diff --git a/calamares/etc/calamares/modules/fstab.conf b/calamares/etc/calamares/modules/fstab.conf index 7dbf529..c3dbfc3 100644 --- a/calamares/etc/calamares/modules/fstab.conf +++ b/calamares/etc/calamares/modules/fstab.conf @@ -8,3 +8,6 @@ ssdExtraMountOptions: xfs: discard swap: discard btrfs: discard,compress=lzo +crypttabOptions: luks +# For Debian and Debian-based distributions, change the above line to: +# crypttabOptions: luks,keyscript=/bin/cat diff --git a/calamares/etc/calamares/modules/keyboard.conf b/calamares/etc/calamares/modules/keyboard.conf index a2606b9..d84f007 100644 --- a/calamares/etc/calamares/modules/keyboard.conf +++ b/calamares/etc/calamares/modules/keyboard.conf @@ -1,8 +1,16 @@ +# NOTE: you must have ckbcomp installed and runnable +# on the live system, for keyboard layout previews. --- # The name of the file to write X11 keyboard settings to # The default value is the name used by upstream systemd-localed. # Relative paths are assumed to be relative to /etc/X11/xorg.conf.d xOrgConfFileName: "/etc/X11/xorg.conf.d/00-keyboard.conf" + # The path to search for keymaps converted from X11 to kbd format # Leave this empty if the setting does not make sense on your distribution. -convertedKeymapPath: "/lib/kbd/keymaps/xkb" +convertedKeymapPath: "/usr/share/X11/xkb" + +# Write keymap configuration to /etc/default/keyboard, usually +# found on Debian-related systems. +# Defaults to true if nothing is set. +#writeEtcDefaultKeyboard: true diff --git a/calamares/etc/calamares/modules/locale.conf b/calamares/etc/calamares/modules/locale.conf index 795ceb2..79a75b5 100644 --- a/calamares/etc/calamares/modules/locale.conf +++ b/calamares/etc/calamares/modules/locale.conf @@ -1,3 +1,27 @@ --- +# This settings are used to set your default system time zone. +# Time zones are usually located under /usr/share/zoneinfo and +# provided by the 'tzdata' package of your Distribution. +# +# Distributions using systemd can list available +# time zones by using the timedatectl command. +# timedatectl list-timezones region: "Europe" -zone: "London" +zone: "Rome" + + +# System locales are detected in the following order: +# +# /usr/share/i18n/SUPPORTED +# localeGenPath (defaults to /etc/locale.gen if not set) +# 'locale -a' output +# Enable only when your Distribution is using an +# custom path for locale.gen +#localeGenPath: "PATH_TO/locale.gen" + +# GeoIP based Language settings: +# GeoIP need an working Internet connecion. +# This can be managed from welcome.conf by adding +# internet to the list of required conditions. +# Leave commented out to disable GeoIP. +#geoipUrl: "freegeoip.net" diff --git a/calamares/etc/calamares/modules/mount.conf b/calamares/etc/calamares/modules/mount.conf index 68e214e..d8f8fb8 100644 --- a/calamares/etc/calamares/modules/mount.conf +++ b/calamares/etc/calamares/modules/mount.conf @@ -12,6 +12,9 @@ extraMounts: - device: tmpfs fs: tmpfs mountPoint: /run + - device: /run/udev + mountPoint: /run/udev + options: bind extraMountsEfi: - device: efivarfs diff --git a/calamares/etc/calamares/modules/partition.conf b/calamares/etc/calamares/modules/partition.conf new file mode 100644 index 0000000..a5c428e --- /dev/null +++ b/calamares/etc/calamares/modules/partition.conf @@ -0,0 +1,62 @@ +# This setting specifies the mount point of the EFI system partition. Some +# distributions (Fedora, Debian, Manjaro, etc.) use /boot/efi, others (KaOS, +# etc.) use just /boot. +efiSystemPartition: "/boot/efi" + +# Make sure an autogenerated swap partition is big enough for hibernation in +# automated partitioning modes. Swap can be disabled through *neverCreateSwap*. +# +# When *ensureSuspendToDisk* is true, swap is never smaller than physical +# memory, follows the guideline 2 * memory until swap reaches 8GiB. +# When *ensureSuspendToDisk* is false, swap size scales up with memory +# size until 8GiB, then at roughly half of memory size. +# +# +# Default is true. +ensureSuspendToDisk: true + +# Never create swap partitions in automated partitioning modes. +# If this is true, ensureSuspendToDisk is ignored. +# Default is false. +neverCreateSwap: false + +# Correctly draw nested (e.g. logical) partitions as such. +drawNestedPartitions: false + +# Show/hide partition labels on manual partitioning page. +alwaysShowPartitionLabels: true + +# Default filesystem type, used when a "new" partition is made. +# +# When replacing a partition, the existing filesystem inside the +# partition is retained. In other cases, e.g. Erase and Alongside, +# as well as when using manual partitioning and creating a new +# partition, this filesystem type is pre-selected. Note that +# editing a partition in manual-creation mode will not automatically +# change the filesystem type to this default value -- it is not +# creating a new partition. +# +# Suggested values: ext2, ext3, ext4, reiser, xfs, jfs, btrfs +# If nothing is specified, Calamares defaults to "ext4". +defaultFileSystemType: "ext4" + +# Show/hide LUKS related functionality in automated partitioning modes. +# Disable this if you choose not to deploy early unlocking support in GRUB2 +# and/or your distribution's initramfs solution. +# +# BIG FAT WARNING: +# +# This option is unsupported, as it cuts out a crucial security feature. +# Disabling LUKS and shipping Calamares without a correctly configured GRUB2 +# and initramfs is considered suboptimal use of the Calamares software. The +# Calamares team will not provide user support for any potential issue that +# may arise as a consequence of setting this option to false. +# It is strongly recommended that system integrators put in the work to support +# LUKS unlocking support in GRUB2 and initramfs/dracut/mkinitcpio/etc. +# Support is offered to system integrators that wish to do so, through the +# Calamares bug tracker, as well as in #calamares on Freenode. +# For more information on setting up GRUB2 for Calamares with LUKS, see +# https://github.com/calamares/calamares/wiki/LUKS-Deployment +# +# If nothing is specified, LUKS is enabled in automated modes. +#enableLuksAutomatedPartitioning: true diff --git a/calamares/etc/calamares/modules/services.conf b/calamares/etc/calamares/modules/services.conf index b3d8ed9..916abd9 100644 --- a/calamares/etc/calamares/modules/services.conf +++ b/calamares/etc/calamares/modules/services.conf @@ -15,3 +15,6 @@ targets: disable: - name: "dummy" mandatory: false + +# Example to express an empty list: +# disable: [] diff --git a/calamares/etc/calamares/modules/unpackfs.conf b/calamares/etc/calamares/modules/unpackfs.conf index 5ee4fc6..5716441 100644 --- a/calamares/etc/calamares/modules/unpackfs.conf +++ b/calamares/etc/calamares/modules/unpackfs.conf @@ -1,8 +1,38 @@ +# Unsquash / unpack a filesystem. Multiple sources are supported, and +# they may be squashed or plain filesystems. +# +# Configuration: +# +# from globalstorage: rootMountPoint +# from job.configuration: the path to where to mount the source image(s) +# for copying an ordered list of unpack mappings for image file <-> +# target dir relative to rootMountPoint. + --- unpack: +# Each list item is unpacked, in order, to the target system. +# Each list item has the following attributes: +# source: path relative to the live / intstalling system to the image +# sourcefs: ext4 or squashfs (may be others if mount supports it) +# destination: path relative to rootMountPoint (so in the target +# system) where this filesystem is unpacked. + +# Usually you list a filesystem image to unpack; you can use +# squashfs or an ext4 image. +# - source: "/cdrom/LiveOS/squashfs.img" sourcefs: "squashfs" destination: "" -# - source: "/path/to/filesystem.img" -# sourcefs: "ext4" + +# You can list more than one filesystem. +# +# - source: "/path/to/another/filesystem.img" +# sourcefs: "ext4" +# destination: "" +# + +# You can list filesystem source paths relative to the Calamares run +# directory, if you use -d (this is only useful for testing, though). +# - source: ./example.sqfs +# sourcefs: squashfs # destination: "" diff --git a/calamares/etc/calamares/modules/users.conf b/calamares/etc/calamares/modules/users.conf index 6367f41..b8be1cc 100644 --- a/calamares/etc/calamares/modules/users.conf +++ b/calamares/etc/calamares/modules/users.conf @@ -1,6 +1,20 @@ +# Configuration for the one-user-system user module. +# +# Besides these settings, the user module also places the following +# keys into the globalconfig area, based on user input in the view step. +# +# - hostname +# - username +# - password (obscured) +# - autologinUser (if enabled, set to username) +# +# These globalconfig keys are set when the jobs for this module +# are created. --- -userGroup: users +# Used as default groups for the created user. +# Adjust to your Distribution defaults. defaultGroups: + - users - lp - video - audio @@ -9,6 +23,44 @@ defaultGroups: - packager - nopermfs - lpadmin + +# Some Distributions require a 'autologin' group for the user. +# Autologin causes a user to become automatically logged in to +# the desktop environment on boot. +# Disable when your Distribution does not require such a group. autologinGroup: autologin -sudoersGroup: "" +# You can control the initial state for the 'autologin checkbox' in UsersViewStep here. +# Possible values are: true to enable or false to disable the checkbox by default +doAutologin: true + +# When set to a non-empty string, Calamares creates a sudoers file for the user. +# /etc/sudoers.d/10-installer +# Remember to add sudoersGroup to defaultGroups. +# +# If your Distribution already sets up a group of sudoers in its packaging, +# remove this setting (delete or comment out the line below). Otherwise, +# the setting will be duplicated in the /etc/sudoers.d/10-installer file, +# potentially confusing users. +#sudoersGroup: wheel + +# Setting this to false , causes the root account to be disabled. setRootPassword: true +# You can control the initial state for the 'root password checkbox' in UsersViewStep here. +# Possible values are: true to enable or false to disable the checkbox by default. +# When enabled the user password is used for the root account too. +# NOTE: doReusePassword requires setRootPassword to be enabled. +doReusePassword: true + +# These are optional password-requirements that a distro can enforce +# on the user. The values given in this sample file disable each check, +# as if the check was not listed at all. +# +# Checks may be listed multiple times; each is checked separately, +# and no effort is done to ensure that the checks are consistent +# (e.g. specifying a maximum length less than the minimum length +# will annoy users). +# +# (additional checks may be implemented in UsersPage.cpp) +passwordRequirements: + minLength: -1 # Password at least this many characters + maxLength: -1 # Password at most this many characters diff --git a/calamares/etc/calamares/modules/welcome.conf b/calamares/etc/calamares/modules/welcome.conf index d1f9f64..8571b56 100644 --- a/calamares/etc/calamares/modules/welcome.conf +++ b/calamares/etc/calamares/modules/welcome.conf @@ -1,18 +1,20 @@ --- showSupportUrl: true -showKnownIssuesUrl: true -showReleaseNotesUrl: true +showKnownIssuesUrl: false +showReleaseNotesUrl: false requirements: requiredStorage: 5.0 - requiredRam: 0.5 + requiredRam: 1.0 + internetCheckUrl: http://cdn.openmamba.org check: - storage - ram - power -# - internet + - internet - root + - screen required: # - storage - - ram +# - ram - root diff --git a/calamares/etc/calamares/settings.conf b/calamares/etc/calamares/settings.conf index b13d345..3f847a9 100644 --- a/calamares/etc/calamares/settings.conf +++ b/calamares/etc/calamares/settings.conf @@ -7,72 +7,124 @@ # directory or the keyword "local". # "local" means LIBDIR/calamares/modules with settings in SHARE/calamares/modules or # /etc/calamares/modules. +# YAML: list of strings. modules-search: [ local ] -# We define the module names in the order they should show up (QtWidget view modules, -# with one or more pages) OR be executed if enqueued (all other modules). -# Pages can also enqueue jobs for delayed execution in the order specified for the -# install phase, so a viewmodule name can appear in more than one phase. +# Instances section. This section is optional, and it defines custom instances for +# modules of any kind. An instance entry has an instance name, a module name, and +# a configuration file name. +# The primary goal of this mechanism is to allow loading multiple instances of the +# same module, with different configuration. If you don't need this, the instances +# section can safely be left empty. +# Module name plus instance name makes an instance key, e.g. "webview@owncloud", +# where "webview" is the module name (for the webview viewmodule) and "owncloud" +# is the instance name, which loads a configuration file named "owncloud.conf" from +# any of the configuration file paths, including the webview module directory. +# This instance key can then be referenced in the sequence section. +# For all modules without a custom instance specification, a default instance is +# generated automatically by Calamares. Therefore a statement such as "webview" in +# the sequence section automatically implies an instance key of "webview@webview" +# even without explicitly defining this instance, and the configuration file for +# this default instance "@" is always assumed to be +# ".conf". +# For more information on running module instances, run Calamares in debug mode +# and check the Modules page in the Debug information interface. +# YAML: list of maps of string:string key-value pairs. -# Phase 1 - prepare. -# View modules are shown as UI pages, jobs from job modules are executed immediately in -# the background. -# Jobs should be executed sparingly (if at all) in this phase. -prepare: -- welcome -- locale -- keyboard -- partition -- users -- summary - -# Phase 2 - install. -# View modules are not shown. Only the view modules shown in the previous phase are -# allowed, their names should be added here as placeholders to specify the order in -# which view module jobs should be enqueued. Job modules are also allowed. -install: -#- dummyprocess -#- dummypython -- partition -- mount -- unpackfs -- machineid -- fstab -- locale -- keyboard -- localecfg -#- initcpiocfg -#- initcpio -- users -- displaymanager -- networkcfg -- hwclock -- services -- dracut -#- initramfs -- packages -- grubcfg -- bootloader -- openmamba-postinstall -- umount - -# Phase 3 - postinstall. -# View modules are shown as UI pages, jobs from job modules are executed immediately in -# the background. -# Jobs should be executed sparingly (if at all) in this phase. -postinstall: -- finished +#instances: +#- id: owncloud +# module: webview +# config: owncloud.conf +# Sequence section. This section describes the sequence of modules, both +# viewmodules and jobmodules, as they should appear and/or run. +# A jobmodule instance key (or name) can only appear in an exec phase, whereas +# a viewmodule instance key (or name) can appear in both exec and show phases. +# There is no limit to the number of show or exec phases. However, the same module +# instance key should not appear more than once per phase, and deployers should +# take notice that the global storage structure is persistent throughout the +# application lifetime, possibly influencing behavior across phases. +# A show phase defines a sequence of viewmodules (and therefore pages). These +# viewmodules can offer up jobs for the execution queue. +# An exec phase displays a progress page (with brandable slideshow). This progress +# page iterates over the modules listed in the *immediately preceding* show phase, +# and enqueues their jobs, as well as any other jobs from jobmodules, in the order +# defined in the current exec phase. +# It then executes the job queue and clears it. If a viewmodule offers up a job +# for execution, but the module name (or instance key) isn't listed in the +# immediately following exec phase, this job will not be executed. +# WARNING: when upgrading from Calamares 1.1, this section requires manual +# intervention. There are no fixed prepare/install/postinstall phases any more, +# and all limitations on the number of phases, number of pages, and number of +# instances are lifted. +# YAML: list of lists of strings. +sequence: +- show: + - welcome +# - dummypythonqt + - locale + - keyboard + - partition + - users + - summary +- exec: +# - dummycpp +# - dummyprocess +# - dummypython +# - dummypythonqt + - partition + - mount + - unpackfs + - machineid + - fstab + - locale + - keyboard + - localecfg +# - luksbootkeyfile +# - luksopenswaphookcfg +# - dracutlukscfg +# - plymouthcfg +# - initcpiocfg +# - initcpio + - users + - displaymanager + - networkcfg + - hwclock + - services + - dracut +# - initramfs + - grubcfg + - bootloader + - openmamba-postinstall + - umount +- show: +# - webview@owncloud + - finished # A branding component is a directory, either in SHARE/calamares/branding or in # /etc/calamares/branding (the latter takes precedence). The directory must contain a # YAML file branding.desc which may reference additional resources (such as images) as # paths relative to the current directory. +# A branding component can also ship a QML slideshow for execution pages, along with +# translation files. # Only the name of the branding component (directory) should be specified here, Calamares # then takes care of finding it and loading the contents. +# YAML: string. branding: openmamba -# If this is set to true, Calamares will show an "are you sure?" prompt right before the -# install phase, i.e. at the point of no return. If it's false, no prompt is shown. +# If this is set to true, Calamares will show an "Are you sure?" prompt right before +# each execution phase, i.e. at points of no return. If this is set to false, no prompt +# is shown. # Default is false. +# YAML: boolean. prompt-install: true + +# If this is set to true, Calamares will execute all target environment commands in the +# current environment, without chroot. This setting is considered experimental, and it +# should only be used when setting up Calamares as a post-install configuration tool, as +# opposed to a full operating system installer. +# Some official Calamares modules are not expected to function with this setting. +# Packagers beware, here be dragons. +# Default is false. +# YAML: boolean. +dont-chroot: false