Adriaan de Groot
eb840d4117
libcalamares: ditch namespace CalamaresUtils
...
- Most CalamaresUtils things go to Calamares
- YAML support to Calamares::YAML and then remove redundant "yaml"
from the function names.
2023-09-11 20:34:01 +02:00
Adriaan de Groot
f4e3964ee5
libcalamares: use namespace Calamares::Partition consistently
2023-09-11 00:09:31 +02:00
Adriaan de Groot
641e186b7c
libcalamares: use namespace Calamares::Packages consistently
2023-09-10 23:55:48 +02:00
Adriaan de Groot
a9ef587705
libcalamares: use namespace Calamares::Network consistently
2023-09-10 22:32:49 +02:00
Adriaan de Groot
d199288034
libcalamares: use namespace Calamares::GeoIP consistently
2023-09-10 22:26:32 +02:00
Adriaan de Groot
47cbcbd348
libcalamares: move all locale-related things into namespace Calamares::Locale
...
The locale bits were spread over Calamares::Locale and CalamaresUtils::Locale.
2023-09-10 22:26:32 +02:00
Adriaan de Groot
c2064124b9
libcalamares: needs to link in QtNetwork
2023-09-08 21:41:31 +02:00
demmm
07e5a3a113
[partition] start Qt6 work
...
make kpmcorehelper usable for both kf5 & 6, though no section added yet dealing with set to NOT for Qt6
adjust CalamaresConfig to not be hardcoded to kf5
one more var needed in Variant.h, used in PartitionInfo.cpp
adjust QVariant & QtConcurrent use
2023-09-07 13:03:16 +02:00
Adriaan de Groot
5f8b6ed437
dummycpp: adapt to Qt6
...
- since HashVariantType has more than one consumer, move it to header
2023-09-05 00:05:46 +02:00
Adriaan de Groot
ca9006a1bc
i18n: move translation helper-function to CMakeModules
2023-09-04 22:44:08 +02:00
Adriaan de Groot
8a8860e75c
Qt6: resolve TODOs against missing KF6
...
- On FreeBSD, no KF6 was available
- On KDE Neon Unstable, there are somewhat wonky KF6 packages available
- Adjust CMake to find the KDE Neon versions, then fix the C++ code
2023-09-04 21:51:03 +02:00
Adriaan de Groot
4b3278058b
libcalamares: repair test
...
The calamaresstyle tool reformatted a bunch of R-strings,
leading to test failures. Mark them with INDENT-OFF so
astyle doesn't break them again.
2023-09-03 23:16:54 +02:00
Adriaan de Groot
95aa8d8127
libcalamares: update maintainer and sponsor
2023-09-03 23:02:47 +02:00
Adriaan de Groot
bc9d5aae58
libcalamares: repair locale tests for Qt6 compatibility
2023-09-03 23:02:09 +02:00
Adriaan de Groot
49d449c211
i18n: enable Qt6 build of lang/ and libcalamares translations
2023-09-03 23:00:13 +02:00
Adriaan de Groot
ad8c87e5d3
libcalamares: repair tests for Qt6 compatibility
2023-09-03 23:00:13 +02:00
Adriaan de Groot
25250179da
libcalamares: handle variants in Python
...
The Python helpers need a couple of obscure QVariants,
do not add them to the "global" list of compatible variant types.
2023-09-03 23:00:13 +02:00
Adriaan de Groot
cdb2eb8b9a
libcalamares: deal with KF5 macro expansion
...
Since KF5 is not looked-for in the Qt6 build, mock up
a useless macro-expander in its place.
2023-09-03 23:00:13 +02:00
Adriaan de Groot
e0b820abbc
libcalamares: deal with QtConcurrent::run
...
In Qt5, you pass the pointer-to-object for a member-function-call
first, and in Qt6, as a regular parameter.
2023-09-03 22:58:49 +02:00
Adriaan de Groot
fe8939e745
libcalamares: deal with QRegExp
2023-09-03 22:58:49 +02:00
Adriaan de Groot
99d012c5ce
libcalamares: deal with QVariant
...
Compatibility header required, and logging was missing
a (transitively included in Qt5) include for QVariant.
2023-09-03 22:58:44 +02:00
Adriaan de Groot
27329a497a
libcalamares: deal with QMutexLocker
...
- Add a compat/ directory with support for Calamares-named
variations of Qt classes where there are relevant differences
between Qt5 and Qt6
2023-09-03 22:58:33 +02:00
Adriaan de Groot
50f2a6ad4a
libcalamares: deal with QPair
...
Use std::pair instead. Also applies to Qt5 build.
2023-09-03 22:53:43 +02:00
Adriaan de Groot
179796d598
CMake: can't mix KF5 and Qt6
...
This will fail to build because we require KDE Frameworks
CoreAddons, but I don't have one just now.
2023-09-03 22:53:43 +02:00
Adriaan de Groot
b905afb169
CMake: restrict Qt6 build
...
- build **only** libcalamares
- switch the finding and linking of Qt modules to use qtname
2023-09-03 22:53:43 +02:00
Adriaan de Groot
5ff9fcd59a
libcalamares: prevent astyle from reformatting string
2023-09-03 22:53:30 +02:00
Adriaan de Groot
3757fcf0bf
libcalamares: drop useless variable
2023-08-28 22:33:56 +02:00
Adriaan de Groot
dc666d29b8
libcalamares: suppress unused-variable warning
2023-08-28 22:33:00 +02:00
Adriaan de Groot
9c2cbf7588
[libcalamares] Repair link to Translations
2023-04-24 23:32:24 +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
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
ba96f7ddc2
CMake: build libcalamares with an internal name for KPMcore
2022-07-23 23:48:21 +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
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
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
273941f451
[libcalamares] Add convenience for building macro-expanders
2022-07-02 15:56:21 +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
1c7c0b9af8
CI: apply coding style (clang-format 13)
2022-06-27 00:37:15 +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
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
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
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
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
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
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
66682b3e84
Merge branch 'calamares' into work-3.3
2022-05-18 15:13:21 +02:00
Adriaan de Groot
874a0c1f38
CI: apply coding style globally again
2022-05-18 12:44:55 +02:00
dalto
152f99fb07
Remove useless emits
2022-05-13 17:24:07 -05:00
Adriaan de Groot
52e2c8c262
[libcalamares] Use stronger type, rather than comment
2022-05-10 00:30:35 +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
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
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
Adriaan de Groot
d7459e2bfe
CMake: modernize optional parts of libcalamares
2022-04-25 15:23:27 +02:00
Adriaan de Groot
585d06494e
CMake: fix linking with modern Python and Boost
2022-04-25 14:47:18 +02:00
Adriaan de Groot
b129cb0786
[libcalamares] Match roles from model to Qt standard roles
2022-04-20 16:25:28 +02:00
Adriaan de Groot
07f4ec529b
[libcalamares] Clean up requirements model API
...
- don't need friends
- made modify-the-model API public where it makes sense
- improve naming
2022-04-20 15:39:53 +02:00
Adriaan de Groot
7e5df42fc0
Merge branch 'issue-1924' into work-3.3
...
This is a rather clunky implementation of re-check requirements.
"Clunky" because the UI parts are re-created each time, rather
than fishing from a model of checked (or unchecked) requirements.
The Widgets parts should be updated to use a full model, rather
than the recreate-list-of-Widgets implementation they have now.
Unrelated changes pull in a bunch of improvements to the
waiting spinner widget.
2022-04-16 12:34:40 +02:00
Adriaan de Groot
a9e098b0b4
[libcalamares] Allow resetting the requirements model
...
- When a requirements checker starts, it can reset the model
to clear it of previous entries.
2022-04-13 17:08:17 +02:00
Adriaan de Groot
bbea67ecb4
[libcalamares] Add an expand() to command lines and lists
...
- While this is primarily convenient for testing (e.g. checking
that a command is expanded the way we expect), it simplifies
some of the code because it's now clear that run() uses an
expanded copy of the command-list to do the actual work.
2022-04-13 14:08:21 +02:00
Adriaan de Groot
d76dd2f8e0
[libcalamares] Use new expander in CommandList
...
- This switches @@ROOT@@ for ${ROOT} and uses standard macro-
expansion mechanisms for the commands; undefined variables
will be logged as well.
2022-04-12 16:06:42 +02:00
Adriaan de Groot
f923dedc3f
[libcalamares] Add a word-expander
...
This is a variant on KMacroExpander, which allows for
reporting of errors after expansion.
2022-04-12 15:28:07 +02:00
Adriaan de Groot
576f244d2d
*: Chase new namespace Calamares::String
2022-04-12 14:15:52 +02:00
Adriaan de Groot
d03a8acc9d
[libcalamares] Create namespace Calamares::String
...
This is a step towards getting rid of CalamaresUtils and
using more structured namespaces overall, e.g. Calamares::String
for things related to string-handling.
2022-04-12 14:14:02 +02:00
Adriaan de Groot
82b5ca8bfc
Merge branch 'calamares' into work-3.3
2022-04-12 12:44:39 +02:00
vt
73462d9214
[libcalamares] Fix file-reading from target system
...
readTargetFile was not fully reading files because of an incorrect
EOF check. This could cause /etc/openswap.conf files to be
truncated and hibernation to fail on installed systems.
2022-04-10 19:36:38 -04:00
Adriaan de Groot
9e4b2d14cb
[libcalamares] Add a path parameter when creating descriptors
...
This allows us to print the path of a descriptor file in
error messages, which in turn makes it easier to find
problems with the descriptor files.
2022-03-28 12:29:47 +02:00
Adriaan de Groot
ec3282e15d
[libcalamares] Allow checking a Once object for repeat messages
2022-03-28 12:28:07 +02:00
Adriaan de Groot
f888cb87d1
[libcalamares] Start deprecating signed sizes
2022-03-22 15:23:24 +01:00
Adriaan de Groot
97031ea3e6
[libcalamares] The amount of memory in the system cannot be negative
2022-03-22 15:23:24 +01:00
Adriaan de Groot
99b19b9539
[libcalamares] Always log to file, sometimes to terminal
2022-03-22 12:54:54 +01:00
Adriaan de Groot
aedb55ea36
[partition] Require modern KPMCore
2022-03-21 23:44:20 +01:00
Adriaan de Groot
49c56add7d
Merge branch 'calamares' into work-3.3
2022-03-21 23:21:54 +01:00
Adriaan de Groot
7aafeec2cb
[libcalamares] Fix entry-format, it was totally bogus
2022-03-01 16:14:45 +01:00
Adriaan de Groot
2f782f18c4
[libcalamares] Fix file reading
...
- atEnd() doesn't behave as expected
- drop the textstream, not needed
- rename variables to be more descriptive
2022-03-01 16:13:25 +01:00
Adriaan de Groot
60630efa6a
[partition] Log DBus calls and switch to blocking calls to ensure they happen
2022-03-01 14:03:04 +01:00
Adriaan de Groot
c5fec83f64
[libcalamares] Fix typo
2022-02-28 11:30:36 +01:00
Adriaan de Groot
f2a6736883
[libcalamares] More chatty when DBus fails
2022-02-28 11:29:45 +01:00
Adriaan de Groot
5b40f17b9c
[libcalamares] Prep-work for supporting non-Solid automounting
2022-02-28 11:26:57 +01:00
Adriaan de Groot
7f14aa6bf1
[libcalamares] Avoid warnings about KPMCore headers
2022-02-08 16:35:23 +01:00