Commit c6834d0e authored by K900's avatar K900
Browse files

calamares-nixos-extensions: clean up config files

- remove inline comments from upstream, link to upstream files instead
- remove settings that match upstream defaults
- reformat
parent 1a2137da
Loading
Loading
Loading
Loading
+1 −41
Original line number Diff line number Diff line
# Configuration for the "finished" page, which is usually shown only at
# the end of the installation (successful or not).
---
# DEPRECATED
#
# 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

# DEPRECATED
#
# Initial state of the checkbox "restart now". Only relevant when the
# checkbox is shown by restartNowEnabled.
# restartNowChecked: false

# Behavior of the "restart system now" button.
#
# There are four usable values:
#   - never
#       Does not show the button and does not restart.
#       This matches the old behavior with restartNowEnabled=false.
#   - user-unchecked
#       Shows the button, defaults to unchecked, restarts if it is checked.
#       This matches the old behavior with restartNowEnabled=true and restartNowChecked=false.
#   - user-checked
#       Shows the button, defaults to checked, restarts if it is checked.
#       This matches the old behavior with restartNowEnabled=true and restartNowChecked=true.
#   - always
#       Shows the button, checked, but the user cannot change it.
#       This is new behavior.
#
# The three combinations of legacy values are still supported.
# https://codeberg.org/Calamares/calamares/src/branch/calamares/src/modules/finished/finished.conf
restartNowMode: user-unchecked

# 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: "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: true
+3 −12
Original line number Diff line number Diff line
# 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
# https://codeberg.org/Calamares/calamares/src/branch/calamares/src/modules/keyboard/keyboard.conf
xOrgConfFileName: "/etc/X11/xorg.conf.d/00-keyboard.conf"

# Write keymap configuration to /etc/default/keyboard, usually
# found on Debian-related systems.
# Defaults to true if nothing is set.
writeEtcDefaultKeyboard: false

# Use special code path to configure GNOME keyboard settings
configure:
    # Configure keyboard when using Wayland with Gnome on Ubuntu 24.10+
    gnome: true
+6 −92
Original line number Diff line number Diff line
---
# 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
#
# The starting timezone (e.g. the pin-on-the-map) when entering
# the locale page can be set through keys *region* and *zone*.
# If either is not set, defaults to America/New_York.
#
region:                     "America"
zone:                       "New_York"
# https://codeberg.org/Calamares/calamares/src/branch/calamares/src/modules/locale/locale.conf
useSystemTimezone: true

# Isn't supported on NixOS
adjustLiveTimezone: false

# 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: @glibcLocales@/share/i18n/SUPPORTED

# GeoIP based Language settings: Leave commented out to disable GeoIP.
#
# GeoIP needs a working Internet connection.
# This can be managed from `welcome.conf` by adding
# internet to the list of required conditions.
#
# The configuration
# is in three parts: a *style*, which can be "json" or "xml"
# depending on the kind of data returned by the service, and
# a *url* where the data is retrieved, and an optional *selector*
# to pick the right field out of the returned data (e.g. field
# name in JSON or element name in XML).
#
# The default selector (when the setting is blank) is picked to
# work with existing JSON providers (which use "time_zone") and
# Ubiquity's XML providers (which use "TimeZone").
#
# If the service configured via *url* uses
# a different attribute name (e.g. "timezone") in JSON or a
# different element tag (e.g. "<Time_Zone>") in XML, set this
# string to the name or tag to be used.
#
# In JSON:
#  - if the string contains "." characters, this is used as a
#    multi-level selector, e.g. "a.b" will select the timezone
#    from data "{a: {b: "Europe/Amsterdam" } }".
#  - each part of the string split by "." characters is used as
#    a key into the JSON data.
# In XML:
#  - all elements with the named tag (e.g. all TimeZone) elements
#    from the document are checked; the first one with non-empty
#    text value is used.
#
#
# An HTTP(S) request is made to *url*. The request should return
# valid data in a suitable format, depending on *style*;
# generally this includes a string value with the timezone
# in <region>/<zone> format. For services that return data which
# does not follow the conventions of "suitable data" described
# below, *selector* may be used to pick different data.
#
# Note that this example URL works, but the service is shutting
# down in June 2018.
#
# Suitable JSON data looks like
# ```
#    {"time_zone":"America/New_York"}
# ```
# Suitable XML data looks like
# ```
#    <Response><TimeZone>Europe/Brussels</TimeZone></Response>
# ```
#
# To accommodate providers of GeoIP timezone data with peculiar timezone
# naming conventions, the following cleanups are performed automatically:
#  - backslashes are removed
#  - spaces are replaced with _
#
# Legacy settings "geoipStyle", "geoipUrl" and "geoipSelector"
# in the top-level are still supported, but I'd advise against.
#
# To disable GeoIP checking, either comment-out the entire geoip section,
# or set the *style* key to an unsupported format (e.g. `none`).
# Also, note the analogous feature in src/modules/welcome/welcome.conf.
#
geoip:
    style: "json"
    url: "https://geoip.kde.org/v1/calamares"
    selector: ""  # leave blank for the default
+3 −35
Original line number Diff line number Diff line
# Mount filesystems in the target (generally, before treating the
# target as a usable chroot / "live" system). Filesystems are
# automatically mounted from the partitioning module. Filesystems
# listed here are **extra**. The filesystems listed in *extraMounts*
# are mounted in all target systems.
---
# Extra filesystems to mount. The key's value is a list of entries; each
# entry has five keys:
#   - device    The device node to mount
#   - fs (optional) The filesystem type to use
#   - mountPoint Where to mount the filesystem
#   - options (optional) An array of options to pass to mount
#   - efi (optional) A boolean that when true is only mounted for UEFI installs
#
# The device is not mounted if the mountPoint is unset or if the fs is
# set to unformatted.
#
# https://codeberg.org/Calamares/calamares/src/branch/calamares/src/modules/mount/mount.conf
extraMounts:
    - device: proc
      fs: proc
@@ -36,24 +20,8 @@ extraMounts:
      mountPoint: /sys/firmware/efi/efivars
      efi: true

# The mount options used to mount each filesystem.
#
# filesystem contains the name of the filesystem or on of three special
# values, "default", efi" and "btrfs_swap".  The logic is applied in this manner:
#   - If the partition is the EFI partition, the "efi" entry will be used
#   - If the fs is btrfs and the subvolume is for the swapfile,
#     the "btrfs_swap" entry is used
#   - If the  filesystem is an exact match for filesystem, that entry is used
#   - If no match is found in the above, the default entry is used
#   - If there is no match and no default entry, "defaults" is used
#   - If the mountOptions key is not present, "defaults" is used
#
# Each filesystem entry contains 3 keys, all of which are optional
#   options - An array of mount options that is used on all disk types
#   ssdOptions - An array of mount options combined with options for ssds
#   hddOptions - An array of mount options combined with options for hdds
# If combining these options results in an empty array, "defaults" is used
#
# Ensure the right fmask/dmask is set on the ESP, as it will be
# picked up by nixos-generate-config later
mountOptions:
    - filesystem: efi
      options: [ fmask=0077, dmask=0077 ]
+2 −137
Original line number Diff line number Diff line
# Configuration for the low-density software chooser
---
# Software selection mode, to set whether the software packages
# can be chosen singly, or multiply.
#
# Possible modes are "optional", "required" (for zero-or-one or exactly-one)
# or "optionalmultiple", "requiredmultiple" (for zero-or-more
# or one-or-more).
# https://codeberg.org/Calamares/calamares/src/branch/calamares/src/modules/packagechooser/packagechooser.conf
mode: required

# Software installation method:
#
# - "legacy" or "custom" or "contextualprocess"
#   When set to "legacy", writes a GlobalStorage value for the choice that
#   has been made. The key is *packagechooser_<id>*. The module's
#   instance name is used; see the *instances* section of `settings.conf`.
#   If there is just one packagechooser module, and no special instance is set,
#   resulting GS key is probably *packagechooser_packagechooser*.
#
#   The GS value is a comma-separated list of the IDs of the selected
#   packages, or an empty string if none is selected.
#
#   With "legacy" installation, you should have a contextualprocess or similar
#   module somewhere in the `exec` phase to process the GlobalStorage key
#   and actually **do** something for the packages.
#
# - "packages"
#   When set to "packages", writes GlobalStorage values suitable for
#   consumption by the *packages* module (which should appear later
#   in the `exec` section. These package settings will then be handed
#   off to whatever package manager is configured there.
#
# - "netinstall-select"
#   When this is set, the id(s) selected are passed to the netinstall module.
#   Any id that matches a group name in that module is set to checked
#
# - "netinstall-add"
#   With this method, the packagechooser module is used to add groups to the
#   netinstall module.  For this to hav=e any effect.  You must set netinstall,
#   which is described below.
#
# There is no need to put this module in the `exec` section. There
# are no jobs that this module provides. You should put **other**
# modules, either *contextualprocess* or *packages* or some custom
# module, in the `exec` section to do the actual work.
# FIXME: what's the correct way of doing this now?
method: legacy


# Human-visible strings in this module. These are all optional.
# The following translated keys are used:
#  - *step*, used in the overall progress view (left-hand pane)
#
# Each key can have a [locale] added to it, which is used as
# the translated string for that locale. For the strings
# associated with the "no-selection" item, see *items*, below
# with the explicit item-*id* "".
#
labels:
    step: "Desktop"

# (Optional) item-*id* of pre-selected list-view item.
# Pre-selects one of the items below.
default: gnome

# Items to display in the chooser. In general, this should be a
# pretty short list to avoid overwhelming the UI. This is a list
# of objects, and the items are displayed in list order.
#
# Either provide the data for an item in the list (using the keys
# below), or use existing AppData XML files, or use AppStream cache
# as a source for the data.
#
# For data provided by the list: the item has an id, which is used in
# setting the value of *packagechooser_<module-id>*. The following field
# is mandatory:
#
#  - *id*
#       ID for the product. The ID "" is special, and is used for
#       "no package selected". Only include this if the mode allows
#       selecting none. The name and description given for the "no package
#       selected" item are displayed when the module starts.
#
# Each item must adhere to one of three "styles" of item. Which styles
# are supported depends on compile-time dependencies of Calamares.
# Both AppData and AppStream may **optionally** be available.
#
# # Generic Items #
#
# These items are always supported. They require the most configuration
# **in this file** and duplicate information that may be available elsewhere
# (e.g. in AppData or AppStream), but do not require any additional
# dependencies. These items have the following **mandatory** fields:
#
#  - *name*
#       Human-readable name of the product. To provide translations,
#       add a *[lang]* decoration as part of the key name, e.g. `name[nl]`
#       for Dutch. The list of usable languages can be found in
#       `CMakeLists.txt` or as part of the debug output of Calamares.
#  - *description*
#       Human-readable description. These can be translated as well.
#  - *screenshot*
#       Path to a single screenshot of the product. May be a filesystem
#       path or a QRC path, e.g. ":/images/no-selection.png". If the path
#       is not found (e.g. is a non-existent absolute path, or is a relative
#       path that does not exist in the current working directory) then
#       an additional attempt is made to load the image from the **branding**
#       directory.
#
# The following fields are **optional** for an item:
#
#  - *packages* :
#       List of package names for the product. If using the *method*
#       "packages", consider this item mandatory (because otherwise
#       selecting the item would install no packages).
#
#  - *netinstall* :
#       The data in this field should follow the format of a group
#       from the netinstall module documented in
#       src/modules/netinstall/netinstall.conf.  This is only used
#       when method is set to "netinstall-add"
#
# # AppData Items #
#
# For data provided by AppData XML: the item has an *appdata*
# key which points to an AppData XML file in the local filesystem.
# This file is parsed to provide the id (from AppData id), name
# (from AppData name), description (from AppData description paragraphs
# or the summary entries), and a screenshot (the default screenshot
# from AppData). No package is set (but that is unused anyway).
#
# AppData may contain IDs that are not useful inside Calamares,
# and the screenshot URL may be remote -- a remote URL will not
# be loaded and the screenshot will be missing. An item with *appdata*
# **may** specify an ID or screenshot path, as above. This will override
# the settings from AppData.
#
# # AppStream Items #
#
# For data provided by AppStream cache: the item has an *appstream*
# key which matches the AppStream identifier in the cache (e.g.
# *org.kde.kwrite.desktop*). Data is retrieved from the AppStream
# cache for that ID. The package name is set from the AppStream data.
#
# An item for AppStream may also contain an *id* and a *screenshot*
# key which will override the data from AppStream.
items:

    - id: gnome
      packages: [ gnome ]
      name: GNOME
Loading