Unfortunately, dnf treats it as an error if we try to remove a package
that already did not exist. This means that, e.g., if we try to remove
calamares itself, but calamares was not installed on the base image,
only in the overlay, we will fail with an error. So, as long as we do
not have a better solution, we ignore the exit code of "dnf remove"
entirely.
(yum does not show this behavior, it returns success when the package to
remove is already not installed.)
When removing packages with yum or dnf, pass the --disablerepo=*
(disable all online repositories) and -C (run from cache) arguments.
Package removals do not normally require network access, and this
measure saves time and bandwidth and prevents possible unnecessary
errors (e.g., if we do not have active network access, or if there is
some problem with the mirrors).
Having swap set at "none" makes hibernating not possible.
AFAIK, no filesystem/partition sets mountpoint as "none" nor has any other besides swap an empty mountpoint at the stage where the fstab module is called.
Tests so far show this change creates a working fstab when using a swap partition.
From Arch wiki:
--target=i386-pc instructs grub-install to install for BIOS systems only. It is recommended
to always use this option to remove ambiguity in grub-install.
If the efiBootloaderId is set, it is used as the --bootloader-id when
installing grub-efi. The rationale is pretty much the same as for the
Gummiboot case.
If the setting is not used, the --bootloader-id is determined from the
branding's bootloaderEntryName (as before).
mount: Remember the extraMounts (and extraMountsEfi, if applicable) in
the global storage (as "extraMounts").
unpackfs: Read the extra mounts from the global storage to generate the
exclude list instead of trying to detect it from the "mount" command's
output, because the latter also includes normally-mounted destination
partitions.
This makes having separate partitions for non-/ mountpoints work again.
Don't run xdg-icon-resource and update-desktop-database in the basic
setup for KDM. These tools have absolutely nothing to do with KDM. KDM
does not ship any icons in the hicolor theme, nor a .desktop file (let
alone one that handles any MIME type, the only case in which
update-desktop-database is needed).
I know the original shell script from Manjaro called these when setting
up KDM, but this is really the wrong place. If you need to call these,
they need to go into another module, and you also have to call them
independently of the selected display manager.