Commit Graph

8034 Commits

Author SHA1 Message Date
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
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
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
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
Adriaan de Groot
2f3fb4a387 [fstab, mount] Warn when the mount options end up weird 2022-06-11 00:30:32 +02:00
Adriaan de Groot
57d978b82d
Merge pull request #1977 from calamares/issue-1974
[welcome] Show welcome-image when all requirements are satisfied
2022-06-11 00:17:01 +02:00
Adriaan de Groot
42f9f07a07 [libcalamares] The spinner doesn't support rich text 2022-06-10 01:27:37 +02:00
Adriaan de Groot
9f91b50553 [libcalamares] Use Q_EMIT instead of 'emit' 2022-06-10 01:04:43 +02:00
Adriaan de Groot
f8dd3ea133 [welcome] Extend schema to allow the debugging checks 2022-06-10 01:00:40 +02:00
Adriaan de Groot
0fd0e9a1af [welcome] Add debugging checks slow-false and slow-true 2022-06-10 01:00:27 +02:00
Adriaan de Groot
26751f2acd [welcome] After creating ResultsListWidget, update it to current model state 2022-06-10 00:52:45 +02:00
Adriaan de Groot
849b831ca4
Merge pull request #1986 from ptr1337/initcpio_fix
fix initcpio issue from 3.3 merge
2022-06-09 09:18:04 +02:00
Adriaan de Groot
4d10629acf
Merge pull request #1979 from abalfoort/issue-1963
FIXES #1963 : label encrypted partitions
2022-06-09 09:17:22 +02:00
Peter Jung
341fecd3ff fix initcpio issue from 3.3 merge
Signed-off-by: Peter Jung <admin@ptr1337.dev>
2022-06-09 04:00:18 +02:00
dalto8
056a5c29cb
Merge pull request #1981 from monetaryabyss/issue-1980
[fstab] Remove ssd_extra_mount_options from fstab module.
2022-06-08 19:35:19 +00:00
demmm
a20ab6f0c6 [keyboardq] missed keyboardq.qrc merge
fixes https://github.com/calamares/calamares/issues/1985
2022-06-08 20:26:09 +02:00
Dan Simmons
70b83f5ca6 [fstab] Remove ssd_extra_mount_options from fstab module.
This looks to be a remnant from moving this to the mount module
which left an undefined variable. The mount options are now part
of the globalstorage and consumed here as mount_options_list.

FIXES #1980
2022-06-07 22:40:13 -04:00
abalfoort
9ca763127d Fix issue 1963: label encrypted partitions 2022-06-07 17:20:56 +02:00
Adriaan de Groot
9fdae8c76f
Merge pull request #1976 from calamares/fix-color-names
[libcalamaresui] Fix color names
2022-06-07 16:06:08 +02:00
Adriaan de Groot
8b44eef002 [calamares] Make naming consistent between 'special' buttons 2022-06-07 16:02:29 +02:00
Adriaan de Groot
e6960ceec1 [calamares] Restore text on debug- and about-buttons 2022-06-07 16:02:29 +02:00
Adriaan de Groot
f958a3c2f7 [welcome] Update the results-list when a round of checks completes
When the checks were done, the widget showing the countdown-timer
and results was not being informed, so it didn't update the
display of the countdown timer or hide the list of problems
(when there are none) so that the welcome image is shown.

FIXES #1974
2022-06-07 12:12:54 +02:00
Adriaan de Groot
d4a776e759 [libcalamaresui] Adjust description of countdown spinner 2022-06-07 11:55:03 +02:00
Adriaan de Groot
1ae79fe58c [calamares] Make naming consistent between 'special' buttons 2022-06-03 12:08:41 +02:00
Adriaan de Groot
687d44859f [calamares] Restore text on debug- and about-buttons 2022-06-03 12:08:09 +02:00
Adriaan de Groot
2c07463ac6 [libcalamaresui] Check for typo's in branding keys 2022-06-03 11:53:02 +02:00
Adriaan de Groot
7356961f52 [libcalamares] Use the enum names as keys
- this uses the Qt internals to map enum values to names, making
  the separate translation table unnecessary. Adjust default branding
  to use the new names.

This makes code (using enum identifiers) and configuration (using
string keys) consistent in naming.
2022-06-03 11:40:10 +02:00
Adriaan de Groot
e6d72cb23b [calamares] Correct enum-names in QML Sidebar
- previous commits did not fix up all the enum names; this means
  you get errors -- because Branding.SidebarTextSelect is not a known
  name in the enum Branding::StyleEntry -- and the colors are messed up.
2022-06-03 11:27:39 +02:00
Adriaan de Groot
dc699db5f5 [libcalamaresui] Document style-string mapping
- while here, the static array of names doesn't need to be
  a class member, it is entirely internal.
- document how names are mapped to branding keys.
2022-06-03 11:20:59 +02:00
Adriaan de Groot
c9be4c744f [partition] Use the chosen replace-filesystem type 2022-06-03 10:44:39 +02:00
Adriaan de Groot
916b87e62e [partition] (unrelated) remove compatibility code for older Qt 2022-06-02 18:36:26 +02:00
Adriaan de Groot
425901fb98 [partition] Fix up combo-box handling for replace-fs choice 2022-06-02 18:32:54 +02:00
Adriaan de Groot
3b55b65a34 [partition] Implement config-side of a replace-filesystem choice 2022-06-02 18:30:35 +02:00
Adriaan de Groot
b763087e11 [partition] Partial implementation of Config-side for storing replace-FS 2022-06-02 14:58:28 +02:00
Adriaan de Groot
e27c57f8a6 [partition] Add FS-choice box when replacing (re-use the erase-fs configuration) 2022-06-02 14:58:11 +02:00
Adriaan de Groot
821a62ffbb [libcalamares] Add missing <memory> for std::unique_ptr
SEE #1972
2022-06-02 14:38:44 +02:00
Adriaan de Groot
72240d0d59 Merge branch 'work-3.3' into calamares 2022-05-29 17:22:36 +02:00
Adriaan de Groot
fb910d7c41 [fstab] Fix schema for new tmpOptions settings 2022-05-29 17:04:24 +02:00
Adriaan de Groot
55f1df9563 [users] Just don't test restore-to-previous, too flaky 2022-05-29 17:00:37 +02:00
Adriaan de Groot
1b2d12b9a1 [calamares] Give QML-progress-panel an about-button 2022-05-29 16:12:10 +02:00
Adriaan de Groot
ce74d2fdfc [calamares] Fix QML progress highlights 2022-05-29 15:56:21 +02:00
Adriaan de Groot
d34f593562 [calamares] Migrate the about-dialog to the debug (meta) window manager
- DebugWindowManager already manages not-really-Calamares windows
  like the Debug window, add About-Dialog to its responsibilities.
- Make about() accessible to the QML progress panel.
2022-05-29 15:54:03 +02:00
Adriaan de Groot
00898b18d6 [welcomeq] Remove about-calamares button from default QML 2022-05-29 15:38:06 +02:00
Adriaan de Groot
84186babab [welcome] Remove the about-calamares button from the (widgets) UI 2022-05-29 15:34:19 +02:00
Adriaan de Groot
18363ca183 [welcome] Move about-calamares box to Calamares (main) 2022-05-29 15:31:25 +02:00
Adriaan de Groot
006c3f99e6 [calamares] Add 'about calamares' button alongside the debug-button 2022-05-29 15:22:02 +02:00
Adriaan de Groot
3e72635204 [libcalamares] Fix path-search for loading branding-translation
- log which path is actually being used
- there are two overloads for QTranslator::load(); the intention
  was to call `QTranslator::load(const QLocale&, ...)`, but the
  types of the arguments were wrong, leading to the other
  overload being called, and interpreting the locale-name
  (e.g. "nl") as a full filename.

Improve logging, call the "other" overload with the right parameters
and drop the not-needed ones.

FIXES #1961
2022-05-29 00:55:35 +02:00
Adriaan de Groot
6e8d820737 [partition] Missing space 2022-05-28 13:43:45 +02:00
Adriaan de Groot
135fce77c1 i18n: update english 2022-05-27 12:39:58 +02:00
Adriaan de Groot
af813ac95b [fstab] Don't import (unused) subprocess 2022-05-24 16:51:36 +02:00
Adriaan de Groot
bb395db9f4 Merge branch 'release-3.2.58.2' into calamares 2022-05-24 16:48:05 +02:00
Adriaan de Groot
ff7ceb2e2b [fstab] Replace two-step attribute-setting with one step 2022-05-24 15:56:34 +02:00
Adriaan de Groot
f4e5e08aa8 [fstab] Be more careful in setting up btrfs swap
- do not use subprocess module in Python bits,
- do +C (no-CoW) after turning compression off
2022-05-24 15:18:50 +02:00
abalfoort
63ee982d36 [fstab] Configure tmp on tmpfs
Adds a new option / configuration keys to `fstab.conf` to
configure how /tmp is created. The example shows how /tmp
is made *tmpfs* on an SSD, or on not-SSD, is just-a-directory.

FIXES #1818
2022-05-24 13:26:07 +02:00
abalfoort
4e5078c950 [fstab] Fix unencrypted root check
There are more ways (than not having a keyfile) for the root
partition to be unencrypted. Check it based on the settings
in the partition data.
2022-05-24 13:25:28 +02:00
abalfoort
badb1d4706 [luksbootkeyfile] Handle key-slots-are-full 2022-05-24 13:07:17 +02:00
Adriaan de Groot
fd53c090f4 [partition] Massage coding style
- some long-missing (unrelated to recent PR) braces
- remove some redundant comments
2022-05-24 12:58:02 +02:00
Adriaan de Groot
6de880c95d [partition] No need for temporary variable 2022-05-24 12:58:02 +02:00
Adriaan de Groot
de03a92a8f [partition] Move LUKS helpers code-documentation 2022-05-24 12:58:02 +02:00
abalfoort
2a7cbd2520 [partition] update LuksDevice to savePassphrase and enum 2022-05-24 12:58:02 +02:00
Adriaan de Groot
7e4fc3e4c7 [welcome] Use about-message from Config
- for QML, this is the easiest way to factor out the message
  (no convenient access to free functions, unless I bung the
  message into e.g. Branding where I don't think it fits
  very well).
2022-05-23 17:11:45 +02:00
Adriaan de Groot
f9f18e5d3b [welcome] Use welcome message from Config object 2022-05-23 17:00:56 +02:00
Adriaan de Groot
4a852facb3 [welcome] Use generated about string 2022-05-23 16:57:51 +02:00
Adriaan de Groot
09255a1d9c [libcalamares] Add a more extensible About message
- make the years easier to update without annoying translators
- make the maintainers extensible.
2022-05-23 16:45:23 +02:00
Adriaan de Groot
f8345a09a2 [netinstall] Add disambiguation to labels 2022-05-23 15:41:45 +02:00
Adriaan de Groot
cc7fe7fff7 [users] Adjust failure expectations (today, for an openSUSE development host) 2022-05-20 22:50:23 +02:00
Adriaan de Groot
0a4e6804c6 [partition] Move encryption state-calculation to state()
Previously, state() just returned a stored state, which changed
via updateState(). However, when updateState() started taking
visibility-of-the-widget into account, it became possible to
de-sync the *apparent* state of the encryption widget, from the
stored one:
- make an encryption widget, which is not visible
- show it.

Now the stored-state takes visibility into account that is
different (hidden, so we end up with a state of Unconfirmed)
from the apparent value (shown and unchecked).

Move the calculation to state() instead, so whenever queried,
it checks the current checks-and-visibility values. Restore
the previously-reverted bit for accepting LUKS partitions.

SEE #1935
SEE #1953
2022-05-20 18:10:24 +02:00
Adriaan de Groot
900700b9bc [partition] Partial revert reuse-luks merge
- a hidden checkbox should not be handled the same as a checkbox
  that is checked; if there is a setting that can be checked or
  unchecked, it can only be checked when visible.

FIXES #1953
2022-05-20 13:49:32 +02:00
Adriaan de Groot
e7f6ead038 [partition] When changing encryption-widget visibility, re-check next 2022-05-20 12:02:25 +02:00
Adriaan de Groot
51e3ac0ded [partition] Polish up debugging when checking for next-enabled
- Improve the messages a bit
- Remove useless variable (it is checking that the switch(choice)
  statement covers all the cases; let's leave that to the compiler)
2022-05-20 11:56:08 +02:00
Adriaan de Groot
2a42084af4 [partition, users] Fix merge artifacts 2022-05-18 15:16:30 +02:00
Adriaan de Groot
66682b3e84 Merge branch 'calamares' into work-3.3 2022-05-18 15:13:21 +02:00
Adriaan de Groot
17814410e9 [users] always-forbidden-names should be set in the Config constructor 2022-05-18 14:40:35 +02:00
Adriaan de Groot
cebafcf869 [users] Make test more expressive 2022-05-18 14:37:02 +02:00
Adriaan de Groot
7d5a4eafa2 [partition] Support KPMCore3 API (no testPassphrase in FS::luks) 2022-05-18 14:06:00 +02:00
Adriaan de Groot
874a0c1f38 CI: apply coding style globally again 2022-05-18 12:44:55 +02:00
Adriaan de Groot
8fea6f71ab [partition] Apply coding style 2022-05-18 12:26:19 +02:00
Adriaan de Groot
62f3055e5a [netinstall] Implement a special "blank" item
- If the name of an item is empty, treat it as a
  "separator line", do not paint it like a regular
  item. The branches of the tree just pass it by.
2022-05-18 00:25:04 +02:00
Adriaan de Groot
9e2728bcb7 [netinstall] Polish up SPDX headers 2022-05-17 14:40:36 +02:00
Adriaan de Groot
6bf710bed3 [netinstall] Introduce a custom class for the Tree Widget 2022-05-17 14:38:44 +02:00
Adriaan de Groot
9d6bb2ee2a
Merge pull request #1952 from abalfoort/#1935
#1935 - Reuse luks partitions
2022-05-17 10:35:51 +02:00
Adriaan de Groot
a63c474d93
Merge pull request #1948 from dalto8/zfsencryption
[partition] Don't offer whole disk encryption when zfs is selected
2022-05-17 10:31:48 +02:00
abalfoort
f67df577db Fix compilation warning 2022-05-16 15:08:11 +02:00
abalfoort
25a6a5ee53 Fix crypttab 2022-05-16 15:06:59 +02:00
abalfoort
cd4b8d4179 Reuse luks partitions 2022-05-16 15:06:33 +02:00
dalto
31c8123677 [partition] Remove no longer needed setChecked() in the encryption widget 2022-05-14 10:38:27 -05:00
Adriaan de Groot
d318778f53
Merge pull request #1949 from dalto8/removeemits
Remove unneeded emits
2022-05-14 17:24:48 +02:00
dalto
152f99fb07 Remove useless emits 2022-05-13 17:24:07 -05:00
dalto
42841a217c [partition] Don't offer whole disk encryption when zfs is selected 2022-05-13 16:24:15 -05:00
demmm
7937cd625d [localeq]Map.qml needed fixes
esri has several bugs, not showing for all locations, zooming on Americas broken
use osm as default, set preferred, so esri can be fallback
remove Label section for mouse movement, showing coordinates not really useful,
issue with mouse grabbing is back with it
2022-05-13 13:17:19 +02:00
Adriaan de Groot
52e2c8c262 [libcalamares] Use stronger type, rather than comment 2022-05-10 00:30:35 +02:00
Adriaan de Groot
a9df841770 CMake: fix Python3-executable uses 2022-05-10 00:07:41 +02:00
Adriaan de Groot
7096ee760e [libcalamaresui] Remove unused image-transformation function 2022-05-10 00:07:41 +02:00
Adriaan de Groot
880c367d64 [libcalamaresui] Remove under-used function 2022-05-10 00:07:41 +02:00
Adriaan de Groot
704e250664 [libcalamaresui] Remove under-used function
- there was one consumer of this function, and it was over-engineered
  for what was needed (removing a list of widgets). Just drop it.
2022-05-10 00:07:41 +02:00
Adriaan de Groot
928b46f18e [libcalamaresui] Use namespace Calamares::Widgets 2022-05-10 00:07:41 +02:00
Adriaan de Groot
9196f696ea [users] Ensure the basic forbidden-names are always forbidden by the constructor 2022-05-09 15:25:14 +02:00
Adriaan de Groot
824d706a20 [users] Fix tests
- in 3.3, the legacy values are ignored, so all the old-style
  tests behave as if nothing is set at all.
- Some tests used old-style settings, adapt to newer ones.
2022-05-09 15:24:43 +02:00
Adriaan de Groot
f4e9b3689d [users] Remove legacy settings 2022-05-09 15:06:21 +02:00
Adriaan de Groot
bbeba5c9ab Merge branch 'calamares' into work-3.3 2022-05-09 15:03:41 +02:00
Adriaan de Groot
d0db56e964 [users] Simplify code: use contains() instead of a for-loop 2022-05-09 14:58:46 +02:00
Adriaan de Groot
ef9bf2650c [users] Allow a configurable list of forbidden names
- forbidden login names
- forbidden host names
2022-05-09 14:51:13 +02:00
Adriaan de Groot
7473462125 [users] Introduce forbidden_names settings 2022-05-09 14:51:13 +02:00
Adriaan de Groot
40c5ef1c35 [users] Add new structured setting to example file 2022-05-09 14:33:39 +02:00
Adriaan de Groot
fe04ae3ac1 [users] Introduce new structure for users-settings 2022-05-09 14:33:39 +02:00
Adriaan de Groot
1bf5206bd7 [users] Apply code-style to test-code 2022-05-09 14:33:39 +02:00
dalto
85c67113b7 [mount] Update schema to use arrays 2022-05-09 06:50:33 -05:00
Adriaan de Groot
3bc3b352d8 [displaymanager] Add LF after last line of greetd configuration
FIXES #1937
2022-05-06 11:47:44 +02:00
Adriaan de Groot
21aa608ce2 Merge branch 'calamares' into work-3.3 2022-05-05 23:35:53 +02:00
Adriaan de Groot
091eb9683b [libcalamares] Give Occitan a native name 2022-05-05 15:23:54 +02:00
Adriaan de Groot
4be25e2f70 [libcalamares] Special-case the regions through the lookup-table as well 2022-05-05 15:20:29 +02:00
Adriaan de Groot
2de7736291 [libcalamares] Replace locale special-cases by a table
Replace the function with a table-driven approach,
since that is somewhat easier to extend to more
languages.
2022-05-05 14:42:12 +02:00
Lt-Henry
a8857e51f4 Improving special-case language detection 2022-05-05 11:12:29 +02:00
Adriaan de Groot
4713f0be42 Merge branch 'calamares' into work-3.3 2022-05-04 11:59:46 +02:00
Adriaan de Groot
8407d39109 [welcome] Remove superfluous moc include (automoc handles this) 2022-05-04 11:39:58 +02:00
Adriaan de Groot
1f7b2a3d2d [libcalamares] Remove CommandList destructor
The destructor was just the default one, but declaring it
blocks the default copy constructor.
2022-05-04 11:38:42 +02:00
Adriaan de Groot
a7cf1b18ce [webview] reduce #defines 2022-05-04 11:31:25 +02:00
Adriaan de Groot
f26ff07046 [webview] Fix build
Some QPainter enum values were deprecated in 5.14, and since we
require 5.15 now, we hit some old code paths with now-deprecated
values; this only shows up when actually enforcing deprecations.
2022-05-04 11:25:05 +02:00
Adriaan de Groot
8aa8597ab0 [welcome] Start up in more-specific system language
Because of the way Qt interprets the environment variable
LANG, using `sr@latin` or `sr@latn` or `ca@valencia` would
get you `sr` or `ca`, respectively, which isn't an exact
match. Now that Translation has special-handling for
those values of LANG, match with the ID first.

This allows starting Calamares in Serbian (Latin script)
or Catalan (Valencia) for locales that need it. (Qt doesn't
recognize ca@valencia as a variant, since that's a region-
based locale, not country- or script-based)
2022-05-04 10:49:57 +02:00
Adriaan de Groot
792c4914b0 [libcalamares] Compare translation IDs, extend find()
Allow naive comparison of translation IDs (e.g. "ca@valencia"
against other IDs) and make it easier to find one.
2022-05-04 10:35:43 +02:00
Adriaan de Groot
5307976179 [libcalamares] Special-case startup for some languages 2022-05-04 10:10:35 +02:00