Skip to content

Commit

Permalink
Updates for 3.3.0 and luks2
Browse files Browse the repository at this point in the history
  • Loading branch information
vlinkz committed Dec 28, 2023
1 parent 4cdf708 commit 556b2bd
Show file tree
Hide file tree
Showing 6 changed files with 455 additions and 108 deletions.
20 changes: 10 additions & 10 deletions branding/nixos/branding.desc
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ navigation: widget
#
# These strings support substitution from /etc/os-release
# if KDE Frameworks 5.58 are available at build-time. When
# enabled, @{var-name} is replaced by the equivalent value
# enabled, ${varname} is replaced by the equivalent value
# from os-release. All the supported var-names are in all-caps,
# and are listed on the FreeDesktop.org site,
# https://www.freedesktop.org/software/systemd/man/os-release.html
Expand All @@ -115,7 +115,7 @@ navigation: widget
# are visible as buttons there if the corresponding *show* keys
# are set to "true" (they can also be overridden).
strings:
productName: "@{NAME}"
productName: "${NAME}"
shortProductName: NixOS
version:
shortVersion:
Expand Down Expand Up @@ -164,20 +164,20 @@ images:

# Colors for text and background components.
#
# - sidebarBackground is the background of the sidebar
# - sidebarText is the (foreground) text color
# - sidebarTextHighlight sets the background of the selected (current) step.
# - SidebarBackground is the background of the sidebar
# - SidebarText is the (foreground) text color
# - SidebarBackgroundCurrent sets the background of the current step.
# Optional, and defaults to the application palette.
# - sidebarSelect is the text color of the selected step.
# - SidebarTextCurrent is the text color of the current step.
#
# These colors can **also** be set through the stylesheet, if the
# branding component also ships a stylesheet.qss. Then they are
# the corresponding CSS attributes of #sidebarApp.
style:
sidebarBackground: "#5277C3"
sidebarText: "#FFFFFF"
sidebarTextSelect: "#292F34"
sidebarTextHighlight: "#7EBAE4"
SidebarBackground: "#5277C3"
SidebarText: "#FFFFFF"
SidebarTextCurrent: "#292F34"
SidebarBackgroundCurrent: "#7EBAE4"

### SLIDESHOW
#
Expand Down
13 changes: 13 additions & 0 deletions config/modules/finished.conf
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,19 @@
# 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:
Expand Down
215 changes: 190 additions & 25 deletions config/modules/partition.conf
Original file line number Diff line number Diff line change
@@ -1,14 +1,50 @@
# SPDX-FileCopyrightText: no
# SPDX-License-Identifier: CC0-1.0
#
# 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"

# This optional setting specifies the size of the EFI system partition.
# If nothing is specified, the default size of 300MiB will be used.
efiSystemPartitionSize: 512M
# Options for EFI system partition.
#
# - *mountPoint*
# 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.
#
# Defaults to "/boot/efi", may be empty (but weird effects ensue)
# - *recommendedSize*
# This optional setting specifies the size of the EFI system partition.
# If nothing is specified, the default size of 300MiB will be used.
# When writing quantities here, M is treated as MiB, and if you really
# want one-million (10^6) bytes, use MB.
# - *minimumSize*
# This optional setting specifies the absolute minimum size of the EFI
# system partition. If nothing is specified, the *recommendedSize*
# is used instead.
# - *label*
# This optional setting specifies the name of the EFI system partition (see
# PARTLABEL; gpt only; requires KPMCore >= 4.2.0).
# If nothing is specified, the partition name is left unset.
#
# Going below the *recommended* size is allowed, but the user will
# get a warning that it might not work. Going below the *minimum*
# size is not allowed and the user will be told it will not work.
#
# Both quantities must be at least 32MiB, this is enforced by the EFI
# spec. If minimum is not specified, it defaults to the recommended
# size. Distro's that allow more user latitude can set the minimum lower.
efi:
mountPoint: "/boot"
recommendedSize: 512MiB
minimumSize: 32MiB
label: "EFI"

# Deprecated alias of efi.mountPoint
# efiSystemPartition: "/boot/efi"

# Deprecated alias of efi.recommendedSize
# efiSystemPartitionSize: 300MiB

# Deprecated alias of efi.label
# efiSystemPartitionName: EFI

# In autogenerated partitioning, allow the user to select a swap size?
# If there is exactly one choice, no UI is presented, and the user
Expand All @@ -31,27 +67,134 @@ efiSystemPartitionSize: 512M
# In both cases, a fudge factor (usually 10% extra) is applied so that there
# is some space for administrative overhead (e.g. 8 GiB swap will allocate
# 8.8GiB on disk in the end).
#
# If *file* is enabled here, make sure to have the *fstab* module
# as well (later in the exec phase) so that the swap file is
# actually created.
userSwapChoices:
- none # Create no swap, use no swap
- small # Up to 4GB
- suspend # At least main memory size
# - reuse # Re-use existing swap, but don't create any (unsupported right now)
# - file # To swap file instead of partition (unsupported right now)
# - reuse # Re-use existing swap, but don't create any (unsupported right now)
# - file # To swap file instead of partition

# This optional setting specifies the name of the swap partition (see
# PARTLABEL; gpt only; requires KPMCore >= 4.2.0).
# If nothing is specified, the partition name is left unset.
# swapPartitionName: swap

# LEGACY SETTINGS (these will generate a warning)
# ensureSuspendToDisk: true
# neverCreateSwap: false

# This setting specifies the LUKS generation (i.e LUKS1, LUKS2) used internally by
# cryptsetup when creating an encrypted partition.
#
# This option is set to luks1 by default, as grub doesn't support LUKS2 + Argon2id
# currently. On the other hand grub does support LUKS2 with PBKDF2 and could therefore be
# also set to luks2. Also there are some patches for grub and Argon2.
# See: https://aur.archlinux.org/packages/grub-improved-luks2-git
#
# Choices: luks1, luks2 (in addition, "luks" means "luks1")
#
# The default is luks1
#
luksGeneration: luks2

# This setting determines if encryption should be allowed when using zfs. This
# setting has no effect unless zfs support is provided.
#
# This setting is to handle the fact that some bootloaders(such as grub) do not
# support zfs encryption.
#
# The default is true
#
# allowZfsEncryption: true

# Correctly draw nested (e.g. logical) partitions as such.
drawNestedPartitions: false

# Show/hide partition labels on manual partitioning page.
alwaysShowPartitionLabels: true

# Allow manual partitioning.
#
# When set to false, this option hides the "Manual partitioning" button,
# limiting the user's choice to "Erase", "Replace" or "Alongside".
# This can be useful when using a custom partition layout we don't want
# the user to modify.
#
# If nothing is specified, manual partitioning is enabled.
#allowManualPartitioning: true

# Show not encrypted boot partition warning.
#
# When set to false, this option does not show the
# "Boot partition not encrypted" warning when encrypting the
# root partition but not /boot partition.
#
# If nothing is specified, the warning is shown.
#showNotEncryptedBootMessage: true

# Initial selection on the Choice page
#
# There are four radio buttons (in principle: erase, replace, alongside, manual),
# and you can pick which of them, if any, is initially selected. For most
# installers, "none" is the right choice: it makes the user pick something specific,
# rather than accidentally being able to click past an important choice (in particular,
# "erase" is a dangerous choice).
#
# The default is "none"
#
initialPartitioningChoice: none
#
# Similarly, some of the installation choices may offer a choice of swap;
# the available choices depend on *userSwapChoices*, above, and this
# setting can be used to pick a specific one.
#
# The default is "none" (no swap) if that is one of the enabled options, otherwise
# one of the items from the options.
initialSwapChoice: none

# armInstall
#
# Leaves 16MB empty at the start of a drive when partitioning
# where usually the u-boot loader goes
#
# armInstall: false

# Default partition table type, used when a "erase" disk is made.
#
# When erasing a disk, a new partition table is created on disk.
# In other cases, e.g. Replace and Alongside, as well as when using
# manual partitioning, this partition table exists already on disk
# and it is left unmodified.
#
# Suggested values: gpt, msdos
# If nothing is specified, Calamares defaults to "gpt" if system is
# efi or "msdos".
#
# Names are case-sensitive and defined by KPMCore.
# defaultPartitionTableType: msdos

# Requirement for partition table type
#
# Restrict the installation on disks that match the type of partition
# tables that are specified.
#
# Possible values: msdos, gpt. Names are case-sensitive and defined by KPMCore.
#
# If nothing is specified, Calamares defaults to both "msdos" and "gpt".
#
# requiredPartitionTableType: gpt
# requiredPartitionTableType:
# - msdos
# - gpt

# 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,
# When replacing a partition, the new filesystem type will be from the
# defaultFileSystemType value. 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
Expand All @@ -64,6 +207,20 @@ alwaysShowPartitionLabels: true
# Names are case-sensitive and defined by KPMCore.
defaultFileSystemType: "ext4"

# Selectable filesystem type, used when "erase" is done.
#
# When erasing the disk, the *defaultFileSystemType* is used (see
# above), but it is also possible to give users a choice:
# list suitable filesystems here. A drop-down is provided
# to pick which is the filesystems will be used.
#
# The value *defaultFileSystemType* is added to this list (with a warning)
# if not present; the default pick is the *defaultFileSystemType*.
#
# If not specified at all, uses *defaultFileSystemType* without a
# warning (this matches traditional no-choice-available behavior best).
# availableFileSystemTypes: ["ext4","f2fs"]

# 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.
Expand All @@ -77,25 +234,25 @@ defaultFileSystemType: "ext4"
# 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/Deploy-LUKS
#
# If nothing is specified, LUKS is enabled in automated modes.
#enableLuksAutomatedPartitioning: true

# Allow manual partitioning.
# Partition layout.
#
# When set to false, this option hides the "Manual partitioning" button,
# limiting the user's choice to "Erase", "Replace" or "Alongside".
# This can be useful when using a custom partition layout we don't want
# the user to modify.
# This optional setting specifies a custom partition layout.
#
# If nothing is specified, manual partitioning is enabled.
#allowManualPartitioning: true

# To apply a custom partition layout, it has to be defined this way :
# If nothing is specified, the default partition layout is a single partition
# for root that uses 100% of the space and uses the filesystem defined by
# defaultFileSystemType.
#
# Note: the EFI system partition is prepend automatically to the layout if
# needed; the swap partition is appended to the layout if enabled (small of
# suspend).
#
# Otherwise, the partition layout is defined as follow:
#
# partitionLayout:
# - name: "rootfs"
Expand All @@ -105,8 +262,9 @@ defaultFileSystemType: "ext4"
# size: 20%
# minSize: 500M
# maxSize: 10G
# attributes: 0xffff000000000003
# - name: "home"
# type = "933ac7e1-2eb4-4f13-b844-0e14e2aef915"
# type: "933ac7e1-2eb4-4f13-b844-0e14e2aef915"
# filesystem: "ext4"
# mountPoint: "/home"
# size: 3G
Expand All @@ -126,9 +284,16 @@ defaultFileSystemType: "ext4"
# - name: filesystem label
# and
# partition name (gpt only; since KPMCore 4.2.0)
# - uuid: partition uuid (optional parameter; gpt only; requires KPMCore >= 4.2.0)
# - type: partition type (optional parameter; gpt only; requires KPMCore >= 4.2.0)
# - filesystem: filesystem type
# - mountPoint: partition mount point
# - attributes: partition attributes (optional parameter; gpt only; requires KPMCore >= 4.2.0)
# - filesystem: filesystem type (optional parameter)
# - if not set at all, treat as "unformatted"
# - if "unformatted", no filesystem will be created
# - if "unknown" (or an unknown FS name, like "elephant") then the
# default filesystem type, or the user's choice, will be applied instead
# of "unknown" (e.g. the user might pick ext4, or xfs).
# - mountPoint: partition mount point (optional parameter; not mounted if unset)
# - size: partition size in bytes (append 'K', 'M' or 'G' for KiB, MiB or GiB)
# or
# % of the available drive space if a '%' is appended to the value
Expand Down
Loading

0 comments on commit 556b2bd

Please sign in to comment.