Commit Graph

8784 Commits

Author SHA1 Message Date
Adriaan de Groot
dc666d29b8 libcalamares: suppress unused-variable warning 2023-08-28 22:33:00 +02:00
dalto8
f804965a8d
Merge pull request #2183 from Boria138/initcpiocfg
Updated the initcpiocfg module
2023-08-27 20:54:37 +00:00
dalto8
0ddffad57c
Merge pull request #2187 from bkmo/bkmo
Update LuksBootKeyFileJob.cpp to check for unencrypted boot with encrypted root
2023-08-26 19:40:45 +00:00
dalto
b5e0ebe4c9 [luksBootKeyFile] Remove unused function hasEncryptedRoot() 2023-08-26 14:15:18 -05:00
dalto
3552691e57 [grubcfg] Add rd.luks.key for systemd-encrypt hook 2023-08-26 11:22:41 -05:00
dalto
d12e40bc34 [initcpiocfg] Fix encryption hook not being added with encrypted /boot 2023-08-26 09:55:45 -05:00
Brian Morison
ab8159a77f
Update LuksBootKeyFileJob.cpp 2023-08-20 13:28:06 -06:00
Brian Morison
f0fb39edd8
Update LuksBootKeyFileJob.cpp 2023-08-20 13:07:58 -06:00
dalto8
0eb431dd2b
Merge pull request #2181 from AsahiLinux/hello-im-a-mac
[users] Handle Device Tree platforms (e.g. Apple Silicon) for guessing the product name
2023-08-20 17:02:17 +00:00
dalto
a9547af8e2 [initcpiocfg,grubcfg,bootloader] Minor code improvements 2023-08-20 10:39:36 -05:00
Boria138
b97a5d535c Fixed a stupid typo 2023-08-19 23:08:44 +06:00
Boria138
950e9d1d0a Added setfont check in mkinitcpiocfg 2023-08-19 21:00:25 +06:00
Boria138
9f8b848631 uses_sd-encrypt was changed to uses_sd_encrypt to make it a valid variable name 2023-08-19 15:29:49 +06:00
Boria138
c0396cf28b Deleted quot 2023-08-19 14:26:36 +06:00
Boria138
bf7f5c6032 Fixed initcpiocfg 2023-08-19 12:52:35 +06:00
Boria138
7d6a04d3a8 Added the necessary edits 2023-08-17 21:14:47 +06:00
Boria138
543de65f33 Added rd.luks.name to grubcfg 2023-08-17 13:04:24 +06:00
Boria138
5769c9c6da Fixes https://github.com/calamares/calamares/issues/2182 2023-08-17 12:44:13 +06:00
Boria138
438e0c6575 Updated the initcpiocfg module
Added systemd (I took the code from CachyOS and modified it a bit)
Fixed the error "setfont: KDFONTOP: Function not implemented"
2023-08-17 11:13:19 +06:00
dalto8
3bec262d2d
Merge pull request #2176 from nintyfan/WIP/Packaging-Flatpak-2
Wip/packaging flatpak 2
2023-08-12 15:00:12 +00:00
Hector Martin
a899f76da2 [users] Clean up DMI model more for hostname
Remove anything in parentheses, and also drop the "Apple" prefix for
Apple machines. This converts:

"Apple MacBook Air (13-inch, M2, 2022)"

into:

"MacBookAir"

which is a lot more reasonable.

Other vendors could be added as needed (it's inconsistent whether DT
platforms prefix the model with the vendor or not).

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-08-12 22:48:26 +09:00
Hector Martin
17e1027ea2 [users] Read product from the device tree on DT platforms
Non-DMI platforms may have a device tree instead (e.g. many embedded
devices, Apple Silicon Macs). If we find a model string in the DT, use
that as a fallback when DMI is not available.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-08-12 22:48:26 +09:00
Hector Martin
8be65003ce [keyboard] Use the current keyboard model as the default
If there is a valid keyboard model set in the system already, keep it.
This allows distributors to preconfigure the correct model if known.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-08-12 22:09:31 +09:00
Hector Martin
6678d95a5d [keyboard] Add an option to disable layout guessing
If the system has already pre-configured a sensible keyboard layout, we
do not need to guess based on the locale. Add a config option to keep
the existing keyboard layout as the default. This should work on both
XKB/X11 and locale1 modes.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-08-12 21:42:54 +09:00
Hector Martin
9e81d7cf21 [keyboard] Do not update configs in locale1 mode when root is /
If Calamares is running with no root path and we are using locale1 to
manage the keyboard configs, then the service has already updated the
X11 and VConsole keymap configs for us. In that case, we should not
touch the config files ourselves.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-08-12 21:42:32 +09:00
Hector Martin
25bb41f549 [keyboard] Add support for getting the layout via locale1
Getter counterpart to the previous commit, to support using locale1 to
fetch the current keyboard config.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-08-12 21:42:32 +09:00
Hector Martin
812d861307 [keyboard] Add support for setting the layout via locale1
setxkbmap only works on X11/XWayland, and even on XWayland does not
correctly change the Wayland keyboard layout.

The "modern" way to control the system keyboard layout is via the
locale1 DBus interface (or the localectl frontend). On compositors like
KWin, this will update the keyboard layout on the fly, which is what we
want.

Implement support for setting the layout/model configs using locale1.
This is enabled by default when Calamares runs under Wayland, and can be
controlled via a config setting.

Signed-off-by: Hector Martin <marcan@marcan.st>
2023-08-12 21:18:05 +09:00
dalto8
44da0b24e5
Merge pull request #2161 from abalfoort/showbootmsg
partitioning: Show/hide "Boot partition not encrypted" warning
2023-08-05 14:05:32 +00:00
Sławomir Lach
ab7b78e9ce Newer flatpak will remove unused, so do not instruct for do that 2023-08-05 15:55:00 +02:00
Sławomir Lach
79085b5e80 - Uninstalling flatpak is possible (repair bad command) 2023-08-03 19:08:55 +02:00
Sławomir Lach
ec30fe1b61 - Force flatpak do not asks questions 2023-08-02 17:42:11 +02:00
Sławomir Lach
3666e3af7b Revert "Made possible to select flatpaks to install (fill list of netinstall)"
This reverts commit cc90dcf556.
2023-08-02 10:28:50 -04:00
Sławomir Lach
cc90dcf556 Made possible to select flatpaks to install (fill list of netinstall) 2023-08-01 08:30:05 -04:00
Sławomir Lach
d77215c227 - Made installing of flatpaks possible 2023-08-01 08:28:48 -04:00
Ivan Borzenkov
8ca841d08e refactor after review - use QStringList 2023-07-08 19:19:38 +03:00
Ivan Borzenkov
2d0940e555 fix non ascii keyboard 2023-07-08 18:41:05 +03:00
Ficelloo
39e2b527eb
Update PartUtils.cpp 2023-07-06 21:05:51 +02:00
Ficelloo
cb7258249d
Fixing partutils.cpp 2023-07-06 19:16:37 +02:00
Adriaan de Groot
e7161443d6 partition: simplify Arm code
- introduce a helper function for accessing the globalstorage value
- add consts and calculate the initial gap in a single expression
2023-06-25 22:21:01 +02:00
Adriaan de Groot
baf580f0ac partition: apply layout 2023-06-25 22:15:56 +02:00
Adriaan de Groot
e78f8840ea Merge branch 'calamares' of github.com:calamares/calamares into calamares 2023-06-25 22:05:28 +02:00
Adriaan de Groot
f00fa429bf
Merge pull request #2142 from Rippanda12/armInstall
partition: Add armInstall
2023-06-25 22:05:10 +02:00
abalfoort
48fd148b8a Handle show warning in function 2023-06-25 10:53:19 +02:00
abalfoort
240f18e5bd Show/hide "Boot partition not encrypted" warning 2023-06-23 15:56:02 +02:00
Philip Mueller
d6471d93e2 [branding] update background 2023-06-16 15:20:09 +02:00
Philip Mueller
100f408dae Merge branch 'calamares' of https://github.com/calamares/calamares into development 2023-06-15 20:05:16 +02:00
ABalfoort
20b4cefedb
Merge branch 'calamares:calamares' into luksbootkeyfile 2023-06-13 08:49:54 +02:00
Philip Mueller
9ef9e9b7fa [branding] adopt the enum names as keys 2023-06-03 18:36:35 +02:00
Philip Mueller
e99d0bc081 Revert "[branding] adopt the enum names as keys"
This reverts commit 73e4c46756.
2023-06-03 18:35:48 +02:00
Philip Mueller
73e4c46756 [branding] adopt the enum names as keys 2023-06-03 18:22:02 +02:00
abalfoort
33aeabd617 Implement requested changes 2023-05-31 18:25:16 +02:00
abalfoort
1963dd3412 Optional luks2Hash with enum 2023-05-31 18:23:00 +02:00
abalfoort
c4496ef86b Add configurable variable m_luks2Hash 2023-05-31 14:43:39 +02:00
abalfoort
1e2a51f952 Remove NO_CONFIG 2023-05-31 14:42:39 +02:00
abalfoort
06d6f217b5 Added luksbootkeyfile.conf/yaml 2023-05-31 14:42:18 +02:00
dalto8
63c3f68619
Merge pull request #2141 from Rippanda12/calamares
Initcipiocfg fix for non x86 cpus
2023-05-27 13:24:11 +00:00
Philip Müller
b419ce34ca [displaymanager] add plasma-mobile support 2023-05-26 13:20:39 +02:00
Philip Mueller
cfa2e8d25f [branding] sync with 3.2.x branch 2023-05-26 13:19:29 +02:00
Philip Müller
ca2e36b3f3
Update services-systemd.conf
- reflect that file endings are now needed in the example
2023-05-26 13:15:19 +02:00
Philip Mueller
8785180a3a [fstab] update conf 2023-05-26 11:21:00 +02:00
Philip Mueller
7621788fb2 [services-systemd] update config 2023-05-26 10:59:06 +02:00
Philip Mueller
448ebd639c [merge] with upstream 2023-05-26 10:46:16 +02:00
dalto8
2f6eb272c1
Merge pull request #2139 from Sunderland93/new_desktops
Add River and Hyprland to desktop list
2023-05-24 11:56:53 +00:00
abalfoort
e01b45f008 Check nr used slots 2023-05-23 17:18:10 +02:00
abalfoort
def9bf18d3 Revert removing check on root with unencrypted boot 2023-05-23 15:07:54 +02:00
abalfoort
5c4557e4d1 Create key file for LUKS2 devices 2023-05-23 13:47:39 +02:00
Evan Goode
7a67840c9b [packages] Call dnf-3 binary, not dnf
DNF is being replaced by a new package manager, DNF 5, in Fedora 39+.
The `dnf` binary will soon symlink to DNF 5 instead of DNF 5. The old
DNF 4 binary will still be (and always has been) available as
/usr/bin/dnf-3.

Until Calamares adds support for DNF 5, it should explicitly call the
old dnf-3 binary.
2023-05-22 12:03:22 -04:00
Panda
d662fb084d Add armInstall 2023-05-21 07:02:22 +00:00
Panda
b2c75a1af8
Fix initcpio
ARM cpus dont have vendor tag in /proc/cpuinfo
2023-05-20 09:11:47 +03:00
Sunderland93
4bf1b0fa7e Add River and Hyprland to desktop list 2023-05-17 16:25:57 +04:00
Adriaan de Groot
f385c94729 [libcalamaresui] Document 'we do not translate this' for developer-tooltip 2023-04-25 11:17:11 +02:00
Adriaan de Groot
6eff07eff2 i18n: no need to translate useless 'Form' text on UI pages 2023-04-25 11:14:55 +02:00
Adriaan de Groot
9c2cbf7588 [libcalamares] Repair link to Translations 2023-04-24 23:32:24 +02:00
Adriaan de Groot
b07f0c2857 Changes: add credit for %p
While here, add a disambiguation to help translators.
2023-04-23 11:35:48 +02:00
Emir SARI
2d118c7057
Add i18n support for percent value 2023-04-18 04:21:08 +03:00
dalto
d35e69c8a9 [mount] Warn on failure to activate swap partition 2023-03-11 10:16:20 -06:00
dalto8
9a75b68ed8
Merge pull request #2109 from Sunderland93/greetd_environment_fix
greetd: Change environments entry from desktopFile to desktopExecutable
2023-03-10 23:26:26 +00:00
dalto8
70d4512635
Merge pull request #2103 from dalto8/zfsenhance
[partition] Add support for zfs encryption
2023-03-10 23:25:49 +00:00
dalto
da295e00f9 [displaymanager] Fix bug in lightdm preferred greeter implementation 2023-03-05 19:37:33 -06:00
dalto
079f608700 [displaymanager] Fix bug with find_preferred_greeters() 2023-03-05 13:58:13 -06:00
Sunderland93
3a0cb8d1fd change environments entry from desktopFile to desktopExecutable 2023-03-05 10:40:17 +04:00
dalto
f5b974984c [partition] Remove WITH_KPMCORE42 to fix luks2 support 2023-03-03 19:05:06 -06:00
dalto
ce6f498358 [mount] Post-merge cleanup of swap enablement 2023-02-28 18:35:18 -06:00
Masato TOYOSHIMA
c296f67356
Update main.py 2023-02-26 07:48:51 +09:00
Masato TOYOSHIMA
5513ffcd1c
Update main.py 2023-02-26 07:24:12 +09:00
Masato TOYOSHIMA
0038751106
UAdded automatic enabling of swap partition before installation starts.
Mainly to suppress installer stoppages caused by oom killer.
2023-02-26 07:17:40 +09:00
Masato TOYOSHIMA
719c6f2ff1
Merge branch 'calamares:calamares' into calamares 2023-02-26 02:00:48 +09:00
Masato Toyoshima
6c25be670d
Added automatic enabling of swap partition before installation starts.
Mainly to suppress installer stoppages caused by oom killer.
2023-02-26 02:00:12 +09:00
Adriaan de Groot
92a208104b [displaymanager] lightdm: default to no-preferred-greeter
While here, drop nonsensical alternatives: if it's not a
.desktop file, it's not going to work anyway.
2023-02-24 21:10:20 +01:00
Adriaan de Groot
59fd4ee082 [displaymanager] lightdm: logging errors
Don't just use *any* file found in the xgreeters directory,
and log when no greeter was found (outside of the translated
error message).
2023-02-24 21:09:48 +01:00
Adriaan de Groot
bbc9d90888 [displaymanager] Allow configuring the preferred-greeter-list 2023-02-24 21:09:48 +01:00
Adriaan de Groot
d448be1077 [displaymanager] Handle preferred / deterministic greeter 2023-02-24 21:09:48 +01:00
Adriaan de Groot
48f61be73a [displaymanager] Factor out the find-a-greeter part 2023-02-24 21:09:48 +01:00
Paolo Dongilli
8ca6b56f56 Add detection of default lightdm-greeter 2023-02-24 21:09:48 +01:00
dalto
b7af2dd77d [partition] Add a config option for allowing zfs encryption 2023-02-23 17:17:37 -06:00
dalto8
1855e4f61e
Merge pull request #2083 from dalto8/bootloader
Add refind, bootloader selection and general improvements
2023-02-23 23:04:59 +00:00
dalto
d88d2ce92e [partition] Make EncryptWidget::setFilesystem take a FileSystem::Type 2023-02-23 16:47:39 -06:00
dalto
2f8ef8fdf3 [partition] Fix crash caused by notification storm 2023-02-22 16:42:32 -06:00
dalto
d45819d552 [partition] Check minimum password length for zfs encryption 2023-02-21 18:56:04 -06:00
dalto
f156fc3562 [partition] Enable encryption for zfs with replace partition 2023-02-21 17:24:01 -06:00
Masato TOYOSHIMA
9050566bdb
Merge branch 'calamares:calamares' into calamares 2023-02-21 21:02:13 +09:00
dalto
cea2b1e8d8 [partition] Enable zfs encryption for erase disk 2023-02-18 16:15:59 -06:00
dalto
ba33908f9f Merge branch 'calamares' into fixfsreplace 2023-02-18 15:40:46 -06:00
dalto
c54ce69e67 [partition] Fix merge error 2023-02-18 15:36:35 -06:00
dalto
ab51a2ea03 Merge branch 'calamares' into fixfsreplace 2023-02-18 15:20:51 -06:00
dalto8
35e7474284
Merge branch 'calamares' into fixup-partition 2023-02-18 21:17:13 +00:00
dalto
a1c9dedc37 [partition] Make replace partition call setDefaultFsType() so the FS is updated 2023-02-18 09:43:03 -06:00
dalto
8080adbce2 [partition] Fix issues with replace partition 2023-02-17 15:33:37 -06:00
dalto8
35cc54a6b9
Merge pull request #2087 from dalto8/encrypt-options
[partition] Restore encryption option to alongside and replace options
2023-02-17 21:08:55 +00:00
Masato Toyoshima
77e1407c51
During installation, if a swap partition exists, enable swap.
If there is no swap at all when the partition of the installation destination device is mounted,
    if a Swap partition exists, enable swap.
2023-02-14 04:30:24 +09:00
demmm
79d796a437
Merge pull request #2091 from calamares/issue-2090
Allow overriding greetd user/group
2023-02-14 04:30:04 +09:00
Aleksey Samoilov
cc2a458bce
Merge pull request #1 from calamares/calamares
Sync
2023-02-13 19:16:48 +04:00
Sunderland93
81c316efd1 gtkgreet: disable window decoration in Cage 2023-02-06 17:12:21 +04:00
Adriaan de Groot
46a28543b9 [displaymanager] Add configuration items + schema for greetd user 2023-02-06 11:03:28 +01:00
Adriaan de Groot
f142710fee [displaymanager] Overwrite DM-instance settings with config-settings
If there are settings in the config-file, they can overwrite
settings in the DM-instance in code.
2023-02-06 10:52:25 +01:00
dalto8
f1f903ef9f
[bootloader] Add refind to the comments for efiBootLoader 2023-02-05 16:28:05 +00:00
dalto8
d8a03bb34b
Merge pull request #2069 from dalto8/grubcfg-alwaysdefault
[grubcfg] Fix bugs and add option to force defaults to update existing values
2023-01-22 16:47:10 +00:00
dalto
871651c0c1 [partition] Restore encryption option to alongside and replace partition options 2023-01-22 10:44:38 -06:00
Peter Jung
672cbc3d1a
Use kms hook after autodetect
Signed-off-by: Peter Jung <admin@ptr1337.dev>
2022-12-23 11:47:19 +01:00
dalto
a3518e88d3 [bootloader] Add refind, bootloader selection and general improvements 2022-12-22 17:13:43 -06:00
Peter Jung
56fafb8769
Add "kms" hook to initcpiocfg
The "kms" hook got added with commit¹ to the default hooks array. Follow the archlinux defaults and add it also.

1. b99eb1c0d5

Signed-off-by: Peter Jung <admin@ptr1337.dev>
2022-12-18 14:22:10 +01:00
Adriaan de Groot
61ce22338a Merge branch 'issue-1911' into calamares 2022-12-18 01:09:51 +01:00
Adriaan de Groot
93a24b65a9 [partition] (unrelated) switch types *again* to avoid compile warning 2022-12-18 01:02:08 +01:00
Adriaan de Groot
b022555198 [partition] Assign the replace-mode FS when reading the configuration 2022-12-18 00:58:44 +01:00
dalto
2ea11d4d63 [grubcfg] Minor update from PR feedback 2022-11-05 16:52:50 -05:00
dalto
152895b48c [grubcfg] Add newline to config 2022-11-05 16:50:05 -05:00
Adriaan de Groot
bca38907e6 [partition] Remove unused widget
The ReplaceWidget was mentioned only in comments,
also unused in 3.2 series.
2022-11-05 22:36:51 +01:00
Adriaan de Groot
8b29acfc59 [partition] Convert ReplaceWidget to use enum
Add a tag-class parameter, to demonstrate that the
ReplaceWidget class is never used.
2022-11-05 22:28:53 +01:00
Adriaan de Groot
8c8f2a14b6 [partition] Use config object in ChoicePage 2022-11-05 22:19:24 +01:00
Adriaan de Groot
859569e156 [partition] Convert layoutApply() 2022-11-05 22:13:30 +01:00
Adriaan de Groot
9c3f576cd2 [partition] Convert option struct to use the enum 2022-11-05 21:57:28 +01:00
dalto
a45f6a316e [grubcfg] Fix bugs and add option to force defaults to update existing values 2022-11-05 13:24:37 -05:00
Adriaan de Groot
bd3a1c5e2e [dracut] Avoid test failure
When the config file is all commented-out, then it's empty,
and that is not a valid configuration.
2022-11-05 16:58:00 +01:00
Adriaan de Groot
2ae02bedf8 [partition] Use enum values rather than strings
In the innermost APIs, use the enum value rather than
passing strings around.
2022-11-05 16:47:26 +01:00
Adriaan de Groot
5ef1af5aef [partition] Introduce helpers for Cala Luks generation to KPM generations 2022-11-05 16:28:54 +01:00
Adriaan de Groot
5c95bc49af
Merge pull request #2064 from dalto8/umountemergency
[umount] Change default config for emergency to true
2022-10-30 21:40:07 +01:00
dalto8
1ee2a2a364
Merge pull request #2057 from dalto8/dracutimagename
[dracut] Change image name terminology to match dracut
2022-10-22 17:48:44 +00:00
dalto
a4afddc4e1 [umount] Change default config for emergency to true 2022-10-22 08:23:55 -05:00
demmm
6fd1c90f23
Merge pull request #2058 from dalto8/doublesubvol
[mount] Remove duplicate subvol option
2022-10-18 20:38:56 +02:00
dalto
d13561e1c7 [dracut] Clean up error handling more 2022-10-16 09:08:42 -05:00
dalto
336a57fdf4 [dracut] Clean up error handling 2022-10-16 09:05:30 -05:00
demmm
26a9ca7a86 [zfshostid] simplify run call
required for schema.yaml seems to be for globalstorage entries, not modules
remove section
2022-10-16 14:12:27 +02:00
demmm
089d3086cc [zfshostid] adding new module
module created to copy zfs generated /etc/hostid, needed to have
hostid in zpool & initramfs in sync
2022-10-16 13:35:09 +02:00
demmm
1b96832bf7 [zfs] adding hostid
using ZFS in combination with dracut exposed a bug on system updates hostid from the Live session does not match hostid installed, thus zpool id no longer matches id created by dracut in the kernel img
to work around this, the zfs module now uses zgenhostid to create a hostid
2022-10-16 12:22:45 +02:00
dalto
5a10c58c35 [mount] Remove duplicate subvol option 2022-10-15 17:31:50 -05:00
dalto
596113c80f [dracut] Change image name terminology to match dracut 2022-10-15 07:06:26 -05:00
Adriaan de Groot
703cbb7bf3 [partition] Allow 'luks' as alias of 'luks1' 2022-10-10 21:12:28 +02:00
Adriaan de Groot
f31056faae [partition] Tidy formatting of enum tables
- the NamedEnumTable is one of the things that clang-format doesn't
  do nicely.
2022-10-10 21:09:24 +02:00
Adriaan de Groot
3344bf9439
Merge pull request #2052 from shivanandvp/calamares
[netinstall] "Noncheckable" option for netinstall package groups
2022-10-09 16:50:13 +02:00
Adriaan de Groot
2b7cc8088d
Merge pull request #2047 from jtheoof/luks2-support
[partition] Add support for LUKS2
2022-10-09 16:48:52 +02:00
shivanandvp
f2ba0929d7
feat: "Noncheckable" option for netinstall package groups
The "Noncheckable" option, when true prevents a user from checking the whole group. This does not affect whether any child subgroups or packages can be selected or not

No breaking changes
2022-09-24 21:01:38 -05:00
Peter Jung
5c87452b67
fix initcpiocfg filesystems loop
Signed-off-by: Peter Jung <admin@ptr1337.dev>
2022-09-24 13:46:44 +02:00
Johannes Kamprad
b00a2ede79
Update services-systemd.conf
removing mandatory: false from example for cups-socket as it is default same as for the other two (could confuse about may disable needs to set it? )
2022-09-18 14:43:15 +02:00
Philip Müller
b08573a500 Merge branch 'calamares' of github.com:calamares/calamares into development 2022-09-17 07:32:13 +02:00
Philip Müller
06ab34c068 Merge branch 'new-branding' into '3.2.x-stable'
New branding

See merge request applications/calamares!36
2022-09-17 07:30:21 +02:00
Jeremy Attali
9def0cb66f [partition] Add support for LUKS2
This commit adds support for LUKS2 behind a new `partition.conf` key:
`luksGeneration`.

A bit of context, LUKS2 is the default encryption operating mode since
cryptsetup >= 2.1.0 (See [Arch
wiki](https://wiki.archlinux.org/title/dm-crypt/Device_encryption#Encryption_options_with_dm-crypt).
It is considered more secured and allows additional extensions. It also
comes with Argon2id as the default Password Based Key Derivation
Function (`--pbkdf` option). So it's important to provide this as an
option for Calamares in order to make Linux installs more secure, for
those who wish to encrypt their system.

This commit was tested on a custom Manjaro installer with:

- grub bootloader with the [argon patches](https://aur.archlinux.org/packages/grub-improved-luks2-git).
- [rEFInd](https://wiki.archlinux.org/title/REFInd) bootloader with
  unencrypted `/boot` partition because rEFInd [doesn't support booting
  from an encrypted volume](https://sourceforge.net/p/refind/discussion/general/thread/400418ac/)

**Important consideration for distribution maintainers**:

- You need to have compile flag `WITH_KPMCORE4API` on
- If you are shipping with grub by default please note that you need to
  ship it with the Argon patches. Example on Arch Linux: [grub-improved-luks2-git](https://aur.archlinux.org/packages/grub-improved-luks2-git)
- If `luksGeneration` is not found in partition.conf, it will default to
  luks1
- Please test this on your own distribution as this was only tested on
  Manjaro installer (see above).
2022-09-09 20:41:12 -04:00
Jeremy Attali
ddf65a2437 [partition] Apply format
This part was not formated properly. Fixed using clang-format
2022-09-09 20:31:57 -04:00
Adriaan de Groot
1821eb1b39 [libcalamaresui] Branding uses $-substitution
Replace @{name} with ${name} to be consistent with the rest
of the replacement-code in Calamares.
2022-09-09 22:04:49 +02:00
Adriaan de Groot
d1664f3502 [services-systemd] Correct Python key-checking
`has_key()` is a Python2-era form; use the `in` operator insteda.
2022-09-09 09:56:58 +02:00
Adriaan de Groot
6235e04ded
Merge pull request #2046 from calamares/dracut_conf
[dracut] add option to make the kernel name configurable
2022-09-08 23:14:15 +02:00
demmm
26166e8f51 [dracut] add asked for schema.yaml
corrected if statement
2022-09-03 14:36:45 +02:00
demmm
f16da0fde7 [dracut] add option to make the kernel name configurable 2022-09-02 21:53:42 +02:00
demmm
abdfeaa96c [localeq] move to using Drawer for fine tuning options
i18n.qml no longer needed
add color setting options to localeq.qml
Offline.qml updated to be inline with keyboardq UI, set index number according to default
America/New York
2022-08-26 15:43:47 +02:00
Philip Müller
3d986c95ea Merge branch 'calamares' of https://github.com/calamares/calamares into development 2022-08-25 16:11:12 +02:00
demmm
7e737977cb [keyboardq] add missing image license 2022-08-25 12:05:07 +02:00
demmm
7876cdc71a [keyboardq] Move to using a Drawer
no longer use a ComboBox or stack view
if accepted, other QML models using a ComboBox will move to Drawer too
2022-08-23 18:56:49 +02:00
Adriaan de Groot
065647154e [displaymanager] Skip greetd test if there's no toml
toml is needed for greetd, but that shouldn't stop the tests
from running.
2022-08-23 16:04:24 +02:00
Adriaan de Groot
6558cd5150 CMake: add .so-version
This is basically PR #2002, from Undef-a.
2022-08-23 15:45:20 +02:00
Adriaan de Groot
66cc1a74ec CMake: apply gersemi to libcalamares
Since this CMakeLists.txt writes out a C program, the formatting
is a bit weird; just start the written TU with a blank line to
make gersemi happy and keep the C-code aligned.
2022-08-23 12:23:13 +02:00
Adriaan de Groot
8de565f269 CMake: apply gersemi formatting 2022-08-23 12:22:09 +02:00
Adriaan de Groot
7a262362df Merge branch 'issue-2008a' into calamares
This fixes all the **tests** of locale-detection. Now we can
test for user interaction.
2022-08-23 02:07:33 +02:00
Adriaan de Groot
9a4d992778 [locale] Repair tests
- Esperanto now doesn't quite self-match because it has no country
- sr prefers RS as country over ME
2022-08-23 02:06:06 +02:00
Adriaan de Groot
fb3112b75d [locale] Repair tests
- prefers language default country (ca_ES over ca_AD)
- prefers non-empty country match
2022-08-23 02:02:54 +02:00
Adriaan de Groot
3540121449 [locale] Prefer non-empty country matches
Prefer "en_US" over "en" even when asking for "en".
2022-08-23 02:02:24 +02:00
Adriaan de Groot
a422fd80d9 [locale] Refactor matching some more
- find the best score and match relative to a specific
  set of parts; make it easy to update the country-setting
- look for a complete match, or best match, with three
  country settings
2022-08-23 00:46:40 +02:00
Adriaan de Groot
6cbf2d7e32 [locale] Factor out the guess-language part 2022-08-23 00:03:04 +02:00
Adriaan de Groot
40527ffd4e [locale] Be more chatty while matching locales 2022-08-22 23:48:21 +02:00
Adriaan de Groot
eb242168bf [locale] Log what we matched with (for language) 2022-08-14 21:45:45 +02:00
Adriaan de Groot
cfb8ef9f65 [locale] Use locale-similarity for searching 2022-08-14 17:16:31 +02:00
Adriaan de Groot
a988298a65 [localeq] Needs more shared sources from locale 2022-08-14 17:16:12 +02:00
Adriaan de Groot
78e216fedb [locale] Introduce a similarity-score for locales 2022-08-14 16:26:46 +02:00
Adriaan de Groot
115f493676 [bootloader] Repair Python 3.6 compatibility
Argument *text* is an addition in 3.7, while the Calamares 3.3
branch supports Python 3.6 and later. Use the 'backwards compatibility'
name of the parameter, *universal_newlines*.

Cherry-picked from 33961ff6f (in the 3.2 branch, though, Python 3.3
is supported).
2022-08-07 14:44:31 +02:00
Philip Müller
16dc879080 [merge] with upstream 2022-07-30 08:03:38 +02:00
Vitor Lopes
8c873e0f49
add HDPI support 2022-07-29 18:03:44 +01:00
demmm
42386c520d [calamares] fix for https://github.com/calamares/calamares/issues/2030
adjust CalamaresWindow.cpp so About & Debug buttons pick needd translation for widget sidebar
2022-07-28 17:50:05 +02:00
Adriaan de Groot
fd56b5bdc4 [locale] Approach matching from a different angle
- add struct that splits a locale name into parts
- add tests that the splitting and joining works
2022-07-26 22:10:46 +02:00
Adriaan de Groot
be54cd24de [partition] Factor out visibility of encryption widget
- Put this in a method of its own even though it's used
  only once, so we can put a good name on it.
- If there are no FS choices (e.g. the sample settings file)
  then there is no combo-box, and the check was crashing.

FIXES #2029
2022-07-26 17:33:39 +02:00
Adriaan de Groot
ba96f7ddc2 CMake: build libcalamares with an internal name for KPMcore 2022-07-23 23:48:21 +02:00
Adriaan de Groot
84c0da2186 [locale] Test KDE neon and FreeBSD separately, same data
- wrangle the test framework so it hands the same data to
  two different collections of tests; do KDE neon and FreeBSD
  separately so it's clearer which lookups are being done
  (and a failure in one doesn't prevent the test of the other).
2022-07-19 18:56:50 +02:00
Adriaan de Groot
d52d1bfeee [locale] Add FreeBSD test data for locale-mapping 2022-07-19 18:48:32 +02:00
Adriaan de Groot
73628b13ea [locale] Add test for language-mapping
Adds specific data from KDE neon and expected mappings.
The test fails right now because the mapping is incorrect.
2022-07-19 18:19:19 +02:00
Adriaan de Groot
8cefb59efb [packagechooser] Repair namespace-changed build error
FIXES #2021
2022-07-19 12:00:05 +02:00
Adriaan de Groot
97cbebc0f7 [libcalamares] Move KPMcore-dependencies
- FileSystem.h depends on KPMcore and only compiles when
  KPMcore is present; it can use KPMcore identifiers.
- Global.h doesn't.
- Move the few functions introduced into Global.h that need
  KPMcore, to FileSystem.h instead.
2022-07-19 11:46:57 +02:00
Adriaan de Groot
04e93f513c [libcalamares] Always use the calamares::kpmcore library
When KPMcore is present, the calamares::kpmcore wraps that
and provides suitable API detection. If KPMcore is not
present, the same interface library provides -DWITHOUT_KPMcore.
2022-07-19 11:41:01 +02:00
Adriaan de Groot
eef3bb19d3
Merge pull request #2011 from calamares/improve-kpmcore
Fix kpmcore detection and compilation on Debian-11
2022-07-18 23:23:32 +02:00
Adriaan de Groot
10da2c257d
Merge pull request #2009 from calamares/issue-1940
[libcalamares] Remove translation-languages define
2022-07-18 23:03:22 +02:00
Adriaan de Groot
c49d520d3d
Merge pull request #2020 from dalto8/zfsfix3
[partition] Fix encryption being shown when not available
2022-07-17 23:08:26 +02:00
Adriaan de Groot
650bddae63
Merge pull request #2007 from calamares/issue-1438
Use `${}` everywhere instead of `@@`
2022-07-17 23:01:25 +02:00
dalto
250678627a [partition] Apply format 2022-07-17 14:53:11 -05:00
dalto
56e37d0abb [partition] Fix encryption being shown when not available 2022-07-17 14:16:42 -05:00
Adriaan de Groot
eccfdbd986 [libcalamares] Mark a TODO that is causing build failures 2022-07-10 13:38:48 +02:00
Adriaan de Groot
3360ad612e [libcalamares] Use Calamares interface-library to kpmcore 2022-07-10 13:38:48 +02:00
Adriaan de Groot
ab813b607f CMake: move kpmcore support into the helper-CMake-module
- find the dependencies just once
- fix the interface for kpmcore so it can find its own
  includes (this is mostly relevant for Debian)
2022-07-10 13:38:48 +02:00
shivanandvp
27c187084b
fix: Check for name key based on comments on PR 2022-07-06 20:01:50 -05:00
shivanandvp
781ced1a59
feat: feat: Ungroup systemd units in services-systemd module 2022-07-05 23:08:43 -05:00
Adriaan de Groot
170a5a8697 [libcalamares] Factor out the list of translations
The list of translation codes lives in one place, make it accessible
through a function in Calamares::Locale.
2022-07-03 00:05:40 +02:00
Adriaan de Groot
18a3092aa1 [libcalamares] Use namespace Calamares
The distinction CalamaresUtils and Calamares is old-fashioned,
since we can use nested namespaces (and already do) for a lot
of things; make libcalamares/locale/ a bit more consistent
by using namespace Calamares::Locale for everything.
2022-07-02 23:19:44 +02:00
Adriaan de Groot
d7e35d2ad2 [libcalamares] Use newly-generated table of language names 2022-07-02 23:19:44 +02:00
Adriaan de Groot
f53f83be56 CMake: create header with available languages 2022-07-02 23:19:44 +02:00
Adriaan de Groot
2322f12b59 [libcalamares] Remove translation-languages define
This doesn't compile, since it doesn't provide any replacement
for the translations define.
2022-07-02 17:42:02 +02:00
Adriaan de Groot
66002f375c [bootloader] Don't use @@ replacements
SEE #1438
2022-07-02 16:49:19 +02:00
Adriaan de Groot
3d901637d1 [preservefiles] Use ${} expansion instead of @@
SEE #1438
2022-07-02 16:49:05 +02:00
Adriaan de Groot
a7b3ccf198 [oemid] Use consistent ${} substitution
SEE #1438
2022-07-02 16:08:48 +02:00
Adriaan de Groot
f8a845d996 [users] Use DictionaryExpander instead of raw KMacroExpander 2022-07-02 15:56:59 +02:00
Adriaan de Groot
273941f451 [libcalamares] Add convenience for building macro-expanders 2022-07-02 15:56:21 +02:00
demmm
2d9d65f33c [webview] remove broken & unused module
adjust settings.conf to replace webview example & entries
this fixes https://github.com/calamares/calamares/issues/2003
2022-07-01 18:00:21 +02:00
Adriaan de Groot
b4c23b8b70 [users] In tests, adjust failure expectations
Some distro's let the user change the hostname at will;
others don't, and yet others don't have systemd to change
the hostname with at all. Check if we **can** change the
hostname (as a non-root user), before setting expectations.
2022-06-28 23:50:56 +02:00
Adriaan de Groot
6a9d9700d4 [grubcfg] Avoid crashes in tests
- remove "bogus" key when it's not needed
- check for existence of "branding" key in GS before
  subscripting it (this happens in tests, where no
  GS contents are loaded, but not in regular use,
  where startup loads the branding data into GS)
2022-06-28 23:41:17 +02:00
demmm
f30d568f10 [luksopenswaphookcfg] fix for https://github.com/calamares/calamares/issues/1659 2022-07-20 20:22:04 +02:00
Adriaan de Groot
ee848e2367 [libcalamares] About box should show extended version if available 2022-06-27 23:48:03 +02:00
Adriaan de Groot
9d593a2a90 [services-systemd] Repair schema
No # in IDs (see *netinstall* schema for explanation).
2022-06-27 23:19:26 +02:00
Adriaan de Groot
208e7736e6 [welcome] Repair example config file
Needs quotes for boolean values that are really names.
2022-06-27 23:19:07 +02:00
Adriaan de Groot
bb05deca33 [netinstall] Repair schema IDs
The schema is considered invalid by **some** versions of
configvalidator (or rather, the underlying jsonschema):

```
128: '#definitions/groups' does not match '^[^#]*#?$'
128:
128: Failed validating 'pattern' in metaschema['properties']['definitions']['additionalProperties']['$dynamicRef']['allOf'][0]['properties']['$id']:
128:     {'$comment': 'Non-empty fragments not allowed.',
128:      '$ref': '#/$defs/uriReferenceString',
128:      'pattern': '^[^#]*#?$'}
```

Remove the `#` from the IDs.
2022-06-27 23:12:31 +02:00
Adriaan de Groot
cdbc7fffca [mount] Repair test-config files against schema
- can't use *bogus* as a key unless that's allowed by
  the schema -- and it is not.
- can't supply empty config if there is supposed to be
  an object there.

This makes it a little difficult to allow a config-file
that is actually no-configuration-at-all (or only-defaults).
Put in values for *btrfsSwapSubvol* since it isn't a fragile
setting.
2022-06-27 23:04:12 +02:00
Adriaan de Groot
d797aea311 [grubcfg] Repair typo in schema key 2022-06-27 23:00:13 +02:00
Adriaan de Groot
873d5e3522 [fstab] Remove schema-entry for mountOptions
These were removed from the module in commit
	03f2e45605
but later restored by a botched merge.
2022-06-27 22:57:14 +02:00
Adriaan de Groot
ef4980448a [bootloader] Repair schema file
Looks like clang-format was applied to this JSON schema
file in 5a14c3c76f, which is
completely borked. Restore from earlier revision, now
with just `machineid` removed.
2022-06-27 22:50:37 +02:00
Adriaan de Groot
1c7c0b9af8 CI: apply coding style (clang-format 13) 2022-06-27 00:37:15 +02:00
Adriaan de Groot
5a14c3c76f [bootloader] Fix schema file for config
A stray "machineid" was added, without a type definition,
so the config file -- which doesn't mention machineid at all
-- was considered invalid. Drop it because the key isn't mentioned
anywhere else.
2022-06-27 00:36:20 +02:00
Adriaan de Groot
96fb97d53a Changes: pre-release housekeeping
- this would be the first 3.3 release, scripts still needed
  cleanup to handle all the changes in 3.3
- support "-alpha1" kinds of designation
- support more versioning information in the headers
2022-06-26 23:49:14 +02:00
Adriaan de Groot
20d96f9ea3 [libcalamaresui] More constness 2022-06-26 23:24:32 +02:00
Adriaan de Groot
86d3932a16 [calamares] Hook up to KDSAG again (instead of DBus activation) 2022-06-26 23:06:31 +02:00
Sunderland93
464a9ac503 greetd: fix typo in gtkgreet path 2022-06-22 11:52:14 +04:00
Sunderland93
136ec3df58 greetd: remove autologin copied from the Live ISO (fixes #1995) 2022-06-22 11:49:21 +04:00
Adriaan de Groot
d9b4562076 Style: remove trailing ; after namespace 2022-06-20 21:48:22 +02:00
Adriaan de Groot
3a0b75a006 Merge branch '3.2.x-stable' into calamares 2022-06-19 16:05:17 +02:00
Adriaan de Groot
b11ee3abc5 [libcalamares] Add alternatives ca@valencia and ca_ES@valencia 2022-06-19 15:34:20 +02:00
Adriaan de Groot
82b19a6314 [locale] Fix up handling of regional variants, country-specifics
- expand tests to include Serbian variants
- massage detection code to do better filtering based on
  country-selection (so "American English" doesn't later
  pick "English" with Antigua and Barbados for locale)
2022-06-19 15:25:23 +02:00
Adriaan de Groot
18626901d3 [locale] Improve regional variant lookup 2022-06-19 14:49:46 +02:00
Adriaan de Groot
40d8e1e0f6 [locale] Expand tests for matching-valencia locales 2022-06-19 14:39:12 +02:00
Adriaan de Groot
b8b7b10bfd [locale] Be more chatty when loading locales 2022-06-19 14:17:12 +02:00
Adriaan de Groot
b7dcf55d4c [locale] Add debug while mapping language+country 2022-06-19 11:51:38 +02:00
Adriaan de Groot
7f7e4aa1ae [locale] Expand tests to language-matching 2022-06-18 12:33:02 +02:00
Adriaan de Groot
79db04dc2e [locale] Defer to the locale-service idea of LANG
- Using QLocale().name() loses some special locales that
  Calamares understands but Qt does not (e.g. sr@latn, ca@valencia)
  so do it in two steps.
2022-06-18 11:48:50 +02:00
Adriaan de Groot
2478570deb [libcalamares, keyboard] Use convenience for getting current locale 2022-06-18 00:40:26 +02:00
Adriaan de Groot
d80661211c [libcalamares] Introduce convenience for reading Locale map 2022-06-18 00:23:21 +02:00
demmm
0257c9d31e [welcomeq] set needed Text id 2022-06-15 19:52:27 +02:00
demmm
e4729b8dc3 [welcomeq] adjust Requirements.qml
starting with 217e4ab4f7
the messages have expanded, no longer fitting in the used ListView model
set the text blocks to expand with text size, add a scrollbar
reduce top spacing so underlying image won't show
set the full requirements listing as default
2022-06-15 18:26:35 +02:00
demmm
8461571fbd [bootloader] bootLoader GS is always empty for EFI
with e15e57600e (diff-91818b0ce02fc61c3ff4b136101ee5f632a3a1febc46632dcd1dc4dc4ddc8594L801) the bootloader module will never run for EFI systems. Option to select to install or not install a bootloader is only visible on BIOS systems at this point.
Go back to only using bootLoader value for BIOS systems. This fixes https://github.com/calamares/calamares/issues/1990
2022-06-13 11:04:00 +02:00
Adriaan de Groot
700f2a6af3 [fstab] Warn when the mount options end up weird
Cherry-picked from 3.3, but only half of it applies.
2022-06-12 14:50:51 +02:00