Commit Graph

8034 Commits

Author SHA1 Message Date
Adriaan de Groot
1c3817ad65 [welcome] Fix displayed (user-visible) copyright years 2022-05-04 00:54:01 +02:00
Adriaan de Groot
a7d3630e42 [libcalamaresui] Improve naming, resolve TODO 2022-05-04 00:51:50 +02:00
Adriaan de Groot
992d2d3be0 [displaymanager] kdm is no longer relevant 2022-05-04 00:24:43 +02:00
Adriaan de Groot
ee1232b10a Merge branch 'calamares' into work-3.3 2022-05-04 00:18:44 +02:00
Adriaan de Groot
1ef2fff03e [displaymanager] For greetd, write the desktop file name
See #1937
2022-05-03 11:41:53 +02:00
demmm
ade0fc7e19 [usersq] add close button to all inline messages 2022-04-27 12:59:02 +02:00
demmm
b80fde365b [localeq] Offline.qml, setting line height needed 2022-04-27 12:55:18 +02:00
demmm
01cec2e361 [keybaordq] setting line height needed 2022-04-27 12:52:42 +02:00
Adriaan de Groot
f302bd8854 Merge branch 'calamares' into work-3.3 2022-04-27 10:44:42 +02:00
Adriaan de Groot
5bff26e1e0 [partition] Display partition label and path if set
Setting labels (e.g. in manual partitioning) landed some time
ago, but the progress display still shows a raw device path.
Make it more expressive.

FIXES #449
FIXES #540
2022-04-25 16:06:24 +02:00
Adriaan de Groot
eefe65ad0e CMake: chase changed linking in libcalamares 2022-04-25 15:34:39 +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
e15e57600e Merge branch 'pr-1632' into work-3.3
- merge in recent *calamares* branch

FIXES #1632 (PR from Anubhav)
FIXES #1886
FIXES #1456
FIXES #517
2022-04-25 13:50:42 +02:00
Adriaan de Groot
d02afa20b8 [partition] Factor out creating-bootloader-panel
- this makes createBootloaderComboBox obsolete, since that was
  an implementation detail for creating the panel.
- add the panel also when doing an alongside install.
- credits to Anubhav, whose PR started this code.
2022-04-25 12:17:10 +02:00
Adriaan de Groot
d70d1ebfcd [partition] Always offer a 'no bootloader' item
- this branch is importing parts of a PR from Anubhav, so add
  relevant SPDX tag as well.
2022-04-25 12:17:10 +02:00
Adriaan de Groot
eb5be9cd34 [bootloader] Allow skipping an EFI bootloader, too
- while here, remove C-style if()
2022-04-25 11:11:40 +02:00
Adriaan de Groot
287e89e760
Merge pull request #1932 from vlinkz/packagesq_label
[packagechooserq]: allow changing step name
2022-04-23 21:19:24 +02:00
Victor Fuentes
1aee8401db
[packagechooserq]: allow changing step name 2022-04-23 13:51:02 -04:00
Adriaan de Groot
70911b9275 [luksbootkeyfile] Flesh out the tests some more 2022-04-23 14:51:15 +02:00
Adriaan de Groot
4613386863 [luksbootkeyfile] fix test for empty mount point 2022-04-23 14:33:25 +02:00
Adriaan de Groot
4466e360e1 [luksbootkeyfile] Start adding tests 2022-04-23 14:29:10 +02:00
Adriaan de Groot
1752dd573b [luksbootkeyfile] Modernize and refactor C++ finding-a-partition 2022-04-23 14:07:00 +02:00
Adriaan de Groot
19af46faea [luksbootkeyfile] Apply coding style 2022-04-23 13:35:06 +02:00
Adriaan de Groot
9374daca64
Merge pull request #1931 from abalfoort/unencrypted-boot
Support unencrypted `/boot`
2022-04-23 13:29:14 +02:00
abalfoort
fae515c3a2 Improve todo comment 2022-04-23 13:21:27 +02:00
abalfoort
5d1b024237 Implement comments
- Unencrypted /boot check moved to generate_crypttab_line_info.
- has_luks in class FstabGenerator changed to luks_mapper_name.
2022-04-23 12:44:39 +02:00
Adriaan de Groot
a3bd0d8091 Docs: update GS key overviews 2022-04-22 12:46:19 +02:00
Adriaan de Groot
03f755d168 Merge branch 'calamares' into work-3.3 2022-04-22 11:17:59 +02:00
abalfoort
dcbb83ebe5 Replace tabs with 4 spaces 2022-04-21 17:13:50 +02:00
Adriaan de Groot
807dee54fd [locale]: fix display of timezone for Dhaka
FIXES #1929
2022-04-21 17:12:02 +02:00
abalfoort
73d09977fc Support unencrypted boot partition 2022-04-21 16:39:07 +02:00
Adriaan de Groot
47016765b3 [welcome] Fill backgrounds of failed requirements 2022-04-20 17:04:24 +02:00
Adriaan de Groot
217e4ab4f7 [welcome] Start improving the tooltips for missing requirements 2022-04-20 16:36: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
e102e2630e [welcome] Rip out the "details" dialog for requirements
- The dialog gave very little extra information
- The text descriptions from the dialog are already available
  as tooltips in the existing list view.
2022-04-20 16:19:34 +02:00
Adriaan de Groot
7650795f48 [welcome] Give the result-display somre more space 2022-04-20 16:16:20 +02:00
Adriaan de Groot
e5036da084 [welcome] Draw an icon for requirement-status 2022-04-20 16:03:42 +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
0b2af86ec9 [welcome] Remove compensating-for-model-reset code
The model was emptied-and-refilled when re-checked, which
meant we needed to have some special handling when messages
changed to avoid re-creating widgets. Since we use a model
view now, we don't need the extra machinery.
2022-04-20 15:15:06 +02:00
Adriaan de Groot
8b917ace4d [welcome] Replace widgets in dialog with model+listview
While here, remove unused vars and functions, tidy code.
2022-04-20 15:09:54 +02:00
Adriaan de Groot
ab1c78ca23 [welcome] Allow delegate to pick the text role to display 2022-04-20 13:29:19 +02:00
Adriaan de Groot
3679bb45f0 [welcome] Give the countdown a tooltip 2022-04-20 13:16:10 +02:00
Adriaan de Groot
15b4660d3e [welcome] Rip out rest of ResultWidget
- this breaks the dialog showing details, but we'll switch
  that to the delegate as well.
2022-04-20 13:12:02 +02:00
Adriaan de Groot
e457d099d8 [welcome] Replace manual widgets-creation by a listview with model 2022-04-20 12:00:21 +02:00
Adriaan de Groot
7686b89cd6 [welcome] Very basic model delegate for results / requirements 2022-04-20 12:00:21 +02:00
Adriaan de Groot
e757639669 [calamares] A progresstree isn't a tree 2022-04-20 12:00:21 +02:00
Adriaan de Groot
7b22546b14 [calamares] Don't need a method for painting, reduce API 2022-04-20 12:00:21 +02:00
Adriaan de Groot
7db14cb5cf [libcalamaresui] Fix build for ::ceil 2022-04-20 12:00:21 +02:00
Adriaan de Groot
33b4fd3a20 [localecfg] It's ok to have a missing /etc/locale.gen for reading 2022-04-19 08:25:34 +02:00
Adriaan de Groot
87ff7ae0da [libcalamaresui] Use Qt max, min, bound 2022-04-16 12:51:11 +02:00
Adriaan de Groot
58306de28a [libcalamaresui] Private static methods can be hidden 2022-04-16 12:48:12 +02:00
Adriaan de Groot
56c27c4255 [libcalamaresui] Warnings-- 2022-04-16 12:45:58 +02:00
Adriaan de Groot
18fef8dfe5 [libcalamaresui] Apply coding style 2022-04-16 12:39:21 +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
e11a0ee448 [libcalamaresui] Use delegating-constructor, drop initialize() 2022-04-16 12:25:28 +02:00
Adriaan de Groot
18f8633dd9 [libcalamaresui] Also modern-style initialize center and disable flags
- All constructors explicitly initialize these, so there's no
  real change here.
2022-04-16 12:20:02 +02:00
Adriaan de Groot
497422e72c [libcalamaresui] Don't disable parent while waiting 2022-04-16 12:18:49 +02:00
Adriaan de Groot
78a8993f38 [libcalamaresui] Move to more modern-style initializations 2022-04-16 12:11:52 +02:00
Adriaan de Groot
1f7dd2fcd5 [libcalamaresui] Convenience API 2022-04-16 12:02:56 +02:00
Adriaan de Groot
2ccd59e90b [libcalamaresui] Move waitingspinnerwidget.* into calamaresui
Although this is 3rd-party code, it now diverges -- by merging the
stale PR from upstream, and from adding features of our own --
enough that we should not pretend that it is the original 3rdparty
code.

Chase a couple of include paths that called this from 3rdparty/
2022-04-16 11:59:31 +02:00
Adriaan de Groot
3bd610a838 [libcalamaresui] Port Countdown to spinner widget alone 2022-04-16 11:53:03 +02:00
Adriaan de Groot
5060a66d4e [locale] Remove unused include 2022-04-16 11:29:49 +02:00
Adriaan de Groot
3c5ac535f1 [libcalamaresui] The waiting spinner now supports text, no need for extra label 2022-04-16 11:28:10 +02:00
Adriaan de Groot
82d721f455 [libcalamaresui] Display countdown 2022-04-16 00:05:01 +02:00
Adriaan de Groot
e351b1dafa [libcalamaresui] Drop the countdown label 2022-04-15 12:50:18 +02:00
Adriaan de Groot
075185547a [welcome] Display a countdown while (re)checking requirements 2022-04-15 12:47:12 +02:00
Adriaan de Groot
514b728449 [libcalamaresui] Tweak widget display for countdown 2022-04-15 12:41:29 +02:00
Adriaan de Groot
9a3d9feb30 [libcalamaresui] Add a countdown widget for limited waiting. 2022-04-15 12:13:16 +02:00
Adriaan de Groot
fcb893cd12 [welcome] Avoid growing more spacers
Insert spacers only once; avoid crashing when all the requirements
are satisfied immediately.
2022-04-14 22:06:36 +02:00
Adriaan de Groot
e79f29dc0e [welcome] Update the explanation only when all the results are in. 2022-04-14 21:51:43 +02:00
Adriaan de Groot
11d7870d68 [welcome] Factor out check for a filled requirements-model 2022-04-14 21:48:55 +02:00
Adriaan de Groot
fc653adcc0 [welcome] Don't duplicate result widgets 2022-04-13 18:15:21 +02:00
Adriaan de Groot
ee925492d4 [welcome] Don't duplicate widgets 2022-04-13 17:12:25 +02:00
Adriaan de Groot
6348309936 [libcalamaresui] If requirements are not satisfied, recheck in 5 seconds 2022-04-13 17:09:43 +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
8f5c3fa302 [welcome] Improve messages a little for bogus-checks.
Follow the guidelines for checker-messages, even though these
should never be displayed to real users.
2022-04-13 16:51:21 +02:00
Adriaan de Groot
cbd4bd9bbe [welcome] Factor out is-this-check-required
While here, make it possible for the "screen" (screen-size) check
to be mandatory; there's no reason it shouldn't follow the same
logic as all the others (although denying users an install because
they have a VGA monitor seems a bit weak).
2022-04-13 16:47:54 +02:00
Adriaan de Groot
f4117881cd [welcome] Add some more development-only checks 2022-04-13 16:45:32 +02:00
Adriaan de Groot
b0837b1a98 Docs: reformat table of GS keys
- add fullname key
- make table a little easier-on-the-eyes in text mode

While here, merge some 3.3 updates; just don't talk about PythonQt
any more.
2022-04-13 14:40:00 +02:00
Adriaan de Groot
f6b65b3b93 [shellprocess] CommandLine now quotes properly in variable expansion 2022-04-13 14:16:57 +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
Victor Fuentes
cc3ab110ee
[users] add fullname to global storage 2022-04-12 23:38:51 -04: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
2c0d9396e2 [users] Link to CoreAddons for KMacroExpander in config 2022-04-12 14:10:12 +02:00
Adriaan de Groot
bb278c7ba9 [shellprocess] Migrate towards 'standard' variable substitutions 2022-04-12 13:13:01 +02:00
Adriaan de Groot
82b5ca8bfc Merge branch 'calamares' into work-3.3 2022-04-12 12:44:39 +02:00
Adriaan de Groot
baf8ef2c33 [bootloader] Document Debian GRUB 2022-04-12 12:38:20 +02:00
Adriaan de Groot
30139107de
Merge pull request #1918 from vtriolet/fix-readtargetfile
[libcalamares] Fix file-reading from target system
2022-04-11 16:22:10 +02:00
Adriaan de Groot
9c58f49c49 Merge branch 'issue-1654' into calamares
FIXES #1654
2022-04-11 15:08:33 +02:00
Adriaan de Groot
3b02115f8e [users] Expand test to demo other template-keys 2022-04-11 15:03:48 +02:00
Adriaan de Groot
dad12a0e02 [users] Simplify test, fewer magic numbers 2022-04-11 14:55:05 +02:00
Adriaan de Groot
c28ba5ffb2 [users] Fix up test to match new strings written to /etc/hosts 2022-04-11 14:51:52 +02:00
Adriaan de Groot
9ca6d3c715 [users] Document new template setting for hostname 2022-04-11 14:26:29 +02:00
Adriaan de Groot
b95eb55994 [users] Add a template for hostname suggestion 2022-04-11 14:12:05 +02:00
Adriaan de Groot
1a8fc1feec [users] Settle on 'hostname' as a single word for camel-casing 2022-04-11 12:16:03 +02:00
Adriaan de Groot
92b1341730 [users] Document new hostname.location setting
- add to schema
- add to tests
- mention in CHANGES
2022-04-11 12:05:00 +02:00
Adriaan de Groot
3524d4a0d0 [users] Add "transient" for hostname-location 2022-04-11 11:47:47 +02:00
Adriaan de Groot
3b0aa69ad3 [users] Write 127.0.1.1 entry only if there is a hostname 2022-04-11 11:39:14 +02:00
Adriaan de Groot
9299bedd7e [users] Hostname is empty if it will not be set 2022-04-11 11:37:56 +02:00
Adriaan de Groot
a12c6de2ef [users] Don't set GS hostname if hostname.location is None 2022-04-11 11:29:23 +02:00
Adriaan de Groot
2f78a37426 [welcome] Use cDebug() for logging 2022-04-11 11:19:38 +02:00
Adriaan de Groot
c5c546d290 [users] Warnings-- about unreachable code 2022-04-11 11:13:45 +02:00
Adriaan de Groot
854c711ac6 [users] Untangle setting-hostname from writing-/etc/hosts
Exactly one kind of setting-hostname is done, and that's
entirely independent of writing /etc/hosts. Don't make it
a set of flags, use an enum and a bool.
2022-04-11 11:10:40 +02:00
Adriaan de Groot
6a6aa8867b [users] hostname.X takes precedence over legacy settings 2022-04-11 10:49:16 +02:00
Adriaan de Groot
b653b13002 [users] Hide hostname box when set to None
If the hostname will not be written, hide the input box.
While here, improve some naming in the designer file.
2022-04-11 10:42:00 +02:00
Adriaan de Groot
99bf5497ca [users] Document change to config, document TODO:3.3 2022-04-11 10:14:32 +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
8a8ac4fe2b [users]: update config schema 2022-04-08 16:35:47 +02:00
Adriaan de Groot
4494a4b35a [users] Expand tests with some legacy-settings 2022-04-08 11:30:57 +02:00
Adriaan de Groot
04f38ea661 [users] Put hostname settings in a *hostname* key
Move settings into a structured setting for *hostname*, with suitable
sub-keys. Legacy settings remain supported, produce a warning.
2022-04-08 11:30:57 +02: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
f64938cb3f [partition] Remove unnecessary methods
- _find and _each Doesn't need to be part of the class API
- Rename to *Transform() because that's more in-line with what it
  does, applying an operation to the tree.
2022-03-22 18:47:27 +01:00
Adriaan de Groot
9b0ef5fce5 [partition] Use unsigned sizes
Reduce warnings by using unsigned consistently; this fights
the KPMCore API (which uses signed sizes for, e.g. sectorSize)
a little, but states more clearly that a disk cannot have a
negative size.
2022-03-22 15:23:24 +01:00
Adriaan de Groot
8ce92d450c [partition] Warnings-- for int / double / size_t confusions 2022-03-22 15:23:24 +01:00
Adriaan de Groot
982f9c8458 [partition] Hide implementation function 2022-03-22 15:23:24 +01: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
a303efb174 [users] Warnings--
Remove unreachable code.
2022-03-22 13:12:23 +01:00
Adriaan de Groot
029bb3efdd [calamares] Warnings--
The widget name is used (by moc) to inform the name of the
member variable storing the widget; having a :: in the name
yields a member variable with __ in it. Two _ is reserverd
to the implementation.
2022-03-22 13:08:07 +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
db3160145e Merge remote-tracking branch 'origin/issue-1904' into calamares
This is mostly a confirmation that the subsequent changes
to #1905 were correct; the "name" key set in a partition
configuration is applied to the partition.

FIXES #1904
2022-03-21 15:09:50 +01:00
Adriaan de Groot
6f28120401 [partition] Fix typo in example configuration 2022-03-21 14:16:54 +01:00
Adriaan de Groot
1ee82e390b [users] Adjust test to expect root to succeed 2022-03-21 14:15:15 +01:00
Adriaan de Groot
88d392f612 [users] Explain why the second setting-hostname test succeeds. 2022-03-21 14:12:18 +01:00
Adriaan de Groot
9b651b4f00 [users] Don't mangle the hostname with a test 2022-03-21 14:08:17 +01:00
Adriaan de Groot
f4a10a313c [partition] Address default-labeling issues 2022-03-18 14:35:35 +01:00
Adriaan de Groot
7d89643146 [partition] More const in getters 2022-03-18 14:30:31 +01:00
Adriaan de Groot
fa28999561
Merge pull request #1905 from santoshmahto7/santo/avoid-root-naming
Avoid setting rootfs partition name to "root" by default.
2022-03-18 13:51:33 +01:00
Decator
b2aa5d8dea
Added spaces and line-breaks to fix formatting.
Fixes a formatting issue by adding some spaces and a line-break. Increases readability
2022-03-15 10:43:10 -04:00
Adriaan de Groot
b44091b4e3 SPDX: tag forgotten files 2022-03-15 14:59:05 +01:00
Adriaan de Groot
05468016a1 Merge branch 'work/adridg/improve-log-window' into calamares 2022-03-15 14:45:34 +01:00
Adriaan de Groot
f0d4788e6d [libcalamaresui] SPDX-tagging for Bob 2022-03-15 14:42:27 +01:00
Adriaan de Groot
28bf8478c4 [libcalamaresui] Simplify log-window
Scrolling explicitly to the bottom isn't needed; leaving it
up to appendPlainText() has the following behavior:

- if the text is scrolled all the way down, follows the text
  and scrolls further down (tailing)
- if it is not scrolled all the way down, keeps current position.
2022-03-15 14:39:59 +01:00
Adriaan de Groot
d998c9e24b [libcalamaresui] Try to improve 'tailing' experience 2022-03-15 14:02:24 +01:00
Adriaan de Groot
26a613fff1 Merge branch 'issue-1894' into calamares
FIXES #1894
2022-03-15 13:30:40 +01:00
Adriaan de Groot
1a3f41ff33 [libcalamaresui] Allow more options for icon 2022-03-15 12:45:19 +01:00
Adriaan de Groot
d5e0fca490 [libcalamaresui] Allow starting and stopping the log-follower. 2022-03-15 12:45:19 +01:00
Adriaan de Groot
87c8c3e6ee [libcalamaresui] Convenience for 'give-me-one-of-these-icons' 2022-03-15 12:44:19 +01:00
Adriaan de Groot
20c44ff99a [partition] Obtain flag name from KPMCore
- makes the displayed flag name consistent between dialog and
  pop-up and debug-messages.
2022-03-14 16:45:56 +01:00
Adriaan de Groot
1a6fb1c3d2 [libcalamaresui] Polish on LogWidget
- apply coding style
- reduce shadowed variables
- use Q_EMIT to mark signals
2022-03-14 16:14:40 +01:00
Adriaan de Groot
d89955f4b3
Merge pull request #1899 from bobvanderlinden/pr-log
allow viewing live log during execution
2022-03-14 14:19:43 +01:00
Adriaan de Groot
f60def5ecc [partition] Don't reinitialize partition layout
Existing code reinitialized the layout, losing whatever
layout was set in the config. Refactor so that you can
access the partition-layout API, and change the default
FS through that -- which is the point of the code block
here in `doAutopartition()`, to look up the currently-
selected default FS.

Inspired by Santosh's work in #1903, #1759.
2022-03-14 11:27:00 +01:00
Santosh Mahto
4b905d5b52 Avoid setting rootfs partition name to "root" by default.
By default, calamares renames the label of root partition
to "root" overriding the name specified in partiton.conf

Signed-off-by: Santosh Mahto <santosh.mahto@collabora.com>
2022-03-14 12:01:06 +05:30
dalto
b5faf1be9b [fstab] Fix empty UUID detection 2022-03-12 15:47:54 -06:00
Bob van der Linden
ea061ae239
destruct LogThread correctly 2022-03-10 20:33:22 +01:00
Bob van der Linden
9e522eddf8
replace text widget with log widget 2022-03-10 20:08:13 +01:00
Bob van der Linden
923379def6
use terminal icon for log toggle button 2022-03-10 20:07:16 +01:00
Bob van der Linden
53d3fcb2fd
introduce widget that shows logs 2022-03-10 20:06:37 +01:00
Bob van der Linden
a6afb6be7c
add log widget to ExecutionViewStep 2022-03-06 12:33:06 +01:00
Adriaan de Groot
569db7c018 [packages] Disable pacman progress-reporting, it is crashy 2022-03-04 14:28:07 +01:00
Huang Jia Wen
dca5d9b52b [bootloader] Add loongarch64 support for bootloader 2022-03-04 10:57:38 +01:00
Adriaan de Groot
827d06df85
Merge pull request #1895 from loongarch64/la64/dev-work-3.3
[bootloader] Add loongarch64 support for bootloader
2022-03-03 22:14:30 +01:00
Huang Jia Wen
1793c627cd [bootloader] Add loongarch64 support for bootloader 2022-03-03 14:11:32 +08: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
53c4bbe4e0 [umount] Log briefly what is going to be unmounted 2022-03-01 16:03:28 +01:00
Adriaan de Groot
4fe55533d7 [partition] Log in more human-readable form 2022-03-01 14:37:52 +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
7e51731167 [partititon] Slightly better debug-logging for automount 2022-03-01 13:52:50 +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
Calamares CI
05991c9ee9 i18n: [dummypythonqt] Automatic merge of Transifex translations 2022-02-25 14:11:58 +01:00
Adriaan de Groot
c3224e60d6 [users] Add a switch to write different styles of sudo file 2022-02-21 15:49:10 +01:00
Adriaan de Groot
c1f1934c27 Merge branch 'issue-1883' into calamares
FIXES #1883
2022-02-21 15:07:58 +01:00
Adriaan de Groot
23f501c071 [fstab] Recognize mmc and nvme disks correctly
- basename() returns the last path component, so never includes
  the leading '/dev/'
- the check for mmc and nvme looked for device names starting
  with '/dev/mmc' .. but '/dev/' has just been stripped away
  by the call to basename, so this never matched
- stripped the trailing digits rather than trailing 'p[0-9]',
  so 'nvme0n1p2' became 'nvme0n1p' which isn't a useful
  device name.

FIXES #1883
2022-02-21 15:03:51 +01:00
Adriaan de Groot
92f4ab30ea [partition] Add a note and an icon about unusually-configured partition module 2022-02-21 13:00:40 +01:00
Adriaan de Groot
682ae24b7d [partition] Introduce skipping-partitioning-jobs
Don't do the actual KPM work, but pretend that they were done.
This can be useful -- independently of the existing unsafe-
options and failing partitioning entirely -- for testing
partition layouts in modules following the *partition* one.
2022-02-21 12:39:56 +01:00
Adriaan de Groot
7129a2239c [partition] Tidy up description in prettyStatus
- the length parameter to diskDescription() is worse than
  useless, because it doesn't say anything about what will
  be done if there's more than one disk.
2022-02-21 12:30:34 +01:00
Adriaan de Groot
f04f0a7e1d [partition] Remove unused text 2022-02-21 12:13:11 +01:00
Adriaan de Groot
99d11f754f [partition] Tighten up determining job labels for description 2022-02-21 12:12:20 +01:00
Adriaan de Groot
62888f7984 [partition] Rename setting to BAIL_OUT
- unsafe partitioning will bail out (and end the installation)
  if BAIL_OUT is set (previously _LAME).
2022-02-21 11:56:41 +01:00
Adriaan de Groot
240c89c585
[luksbootkeyfile] Merge pull request #1888 from dalto8/trailingslash
Ensure that a trailing slash doesn't cause issues with an unencrypted /boot
2022-02-21 11:43:11 +01:00
Adriaan de Groot
b1742876fd [zfs] Correct user-visible spelling of ZFS
In Camel-cased source code, Zfs, but for user-visible strings,
ZFS (or zfs, but needs to be consistent).
2022-02-17 15:51:15 +01:00
dalto
f34008b518 [LuksBootKeyFile] Remove trailing slashes when matching mountpoint 2022-02-16 16:21:52 -06:00
Adriaan de Groot
03291fb726 [partition] Don't set empty labels 2022-02-08 19:01:41 +01:00
Adriaan de Groot
0be88f1453 [partition] Use signed sizes 2022-02-08 16:42:31 +01:00
Adriaan de Groot
a59c45d869 [users] Rename macro to avoid reserved-to-the-implementation names 2022-02-08 16:35:50 +01:00
Adriaan de Groot
7f14aa6bf1 [libcalamares] Avoid warnings about KPMCore headers 2022-02-08 16:35:23 +01:00
Adriaan de Groot
c7cc599a19 [umount] Remove/mark unused parameters 2022-02-08 16:35:04 +01:00
Adriaan de Groot
cf097850de CMake: apply gersemi styling 2022-02-08 16:18:47 +01:00
Adriaan de Groot
b167d8da03 [libcalamares,ui] Make KF5::CoreAddons explicit
- libcalamares doesn't need it anymore, because it ported away
  from KPluginLoader,
- libcalamaresui does need it, because of KMacroExpander.
2022-02-08 16:13:40 +01:00
Adriaan de Groot
e507a23795 Modules: make use of KF5::CoreAddons explicit 2022-02-08 16:12:25 +01:00
Adriaan de Groot
5160fdc26a [libcalamares] Port away from KPluginFactory 2022-02-08 15:50:17 +01:00
Adriaan de Groot
8f769006d6 Merge branch 'calamares' into work-3.3 2022-02-08 13:28:20 +01:00
Adriaan de Groot
9f6f82405b [libcalamaresui] Avoid crash if modules-list is empty
If there are no modules at all before an exec: section is
reached (e.g. right now due to a bug in module-loading)
then the last() call would crash. Instead, use a nullptr
for the last-module-loaded.

While here, apply code-formatting.
2022-02-07 19:05:55 +01:00
Adriaan de Groot
932ab17c9a [libcalamares] Avoid parameter name 'stdin' 2022-02-07 12:54:16 +01:00
Adriaan de Groot
ebdcb15703 [libcalamares] Don't use reserved identifiers 2022-02-07 12:51:22 +01:00
Adriaan de Groot
660b198da0 [libcalamares] Avoid more moc warnings with recent Clang 2022-02-07 12:51:06 +01:00
Adriaan de Groot
fa7394723c [users] Don't mess up cursor position when typing hostname
If the hostname changes while the field has focus, that means
that the user is typing in the field, and we shouldn't mess
with the cursor position.

FIXES #1884
2022-02-07 11:51:48 +01:00
Adriaan de Groot
3ea25a901e [libcalamares] Avoid compiler warnings when stdin is defined to something else 2022-02-07 11:32:22 +01:00
Adriaan de Groot
d5c6a70442 [libcalamares] Use signed sizes 2022-02-07 11:22:13 +01:00
Adriaan de Groot
0fff01e36e [partition] Use signed sizes
Unfortunate effect of having ints in some parts of the API
is that signedness trickles down everywhere; either cast
all over, or stick to signed ints.
2022-02-07 11:21:53 +01:00
Adriaan de Groot
d98027ad2f
Merge pull request #1865 from dalto8/mount-mount
Changes to mount module for 3.3
2022-02-02 16:24:34 +01:00
Adriaan de Groot
2bf43ffbf2 [unpackfs] Fix test validation (and document what the test is for) 2022-02-02 16:19:51 +01:00
Adriaan de Groot
0c7f06137a CMake: validate all the test-configurations as well 2022-02-02 15:57:49 +01:00
Adriaan de Groot
a352bd946e [grubcfg] snake-case one configuration key
This makes all the keys in grubcfg consistently
snake-case (rather than one being a camel).
2022-02-02 15:02:58 +01:00
Adriaan de Groot
d1e4740e70 Merge branch 'calamares' into work-3.3 2022-02-02 14:41:58 +01:00
Adriaan de Groot
9127b76e5f [bootloader] Fix typo's 2022-02-01 16:49:18 +01:00
Adriaan de Groot
cf913b87ff [partition] Apply coding style
This applies the new(er) style to the whole module,
rather than just the files that recently changed.
2022-02-01 16:35:19 +01:00
Adriaan de Groot
7f90b99388 [partition Simplify mountpoint-input
- if nothing is selected (index -1, which now shows the placeholder), the text is empty
- if something has been entered, return it (e.g. if the user is typing)
- if something is selected, the text gets set to that anyway
2022-02-01 16:01:04 +01:00
Adriaan de Groot
f4720ae02c [partition] <pre> formatting is block-oriented 2022-02-01 14:54:49 +01:00
Adriaan de Groot
45fff23499 [partition] Move message closer to input field
The warning about the mount point -- that it was in-use or
invalid -- had been separated from the drop-down by the
FSLabel field. Move it back, rename the variable for
clarity while we're at it.
2022-02-01 14:50:53 +01:00
Adriaan de Groot
82dcc1b57b [partition] Refactor common validate-the-mount-point logic 2022-02-01 14:42:18 +01:00
Adriaan de Groot
d8be9a9443 [partition] Mount points should start with a / 2022-02-01 14:07:38 +01:00
Adriaan de Groot
fbcd1ffbbe [partition] Make the "no mount point" a placeholder 2022-02-01 14:06:30 +01:00
Adriaan de Groot
d8c875f351 [partition] UI-tweak mount-point and fs-label boxes
- make the boxes expand, rather than stick to a minimum
  size that doesn't align with other boxes in the dialog,
  and which may be too small to contain the text they display.
2022-02-01 13:13:29 +01:00
Adriaan de Groot
6f738813a6 [fstab] GS configuration for a btrfs setup 2022-02-01 12:15:49 +01:00
Adriaan de Groot
4a30aae9bb [calamares] Tighten logging in 'loadmodule' test-executable 2022-02-01 12:15:49 +01:00
Adriaan de Groot
e9899d0345 [packagechooser,netinstall] Apply coding style 2022-01-31 23:42:20 +01:00
Adriaan de Groot
ffeab32403 [libcalamares] Apply coding style 2022-01-31 23:41:37 +01:00
Adriaan de Groot
80300e412c [libcalamares] When logging extra lines to warning or error, suppress label
Avoid logs like

23:29:57 [2]: void Config::setConfigurationMap(const QVariantMap&)
    WARNING: Configuration for *initialSwapChoice* is not one of the *userSwapChoices*
WARNING:    .. Choice "small" added.

where the label is duplicated.
2022-01-31 23:27:35 +01:00
Adriaan de Groot
51f67f6c3e [partition] If initialSwapChoice can't be satisfied, add it
There is a mismatch between how the configuration interprets
*initialSwapChoice* when it is not a valid choice, and how
the UI interprets it. If you e.g. do not have a *userSwapChoices*
setting at all, whatever *initialSwapChoice* is set is interpreted
by the UI as "suspend".

Avoid that by putting the choice in the configuration and
warning the user (which ought to be a warning to the distro).

FIXES #1881
2022-01-31 23:15:04 +01:00
Adriaan de Groot
cf2899b1e6 [netinstall] Avoid negative row indexes 2022-01-31 12:59:03 +01:00
Adriaan de Groot
c0f4b80cbe [netinstall] Tighten up comments and code
- comment wandered away from the function it applies to
- use overloaded name for recursive helpers
- document this new feature
2022-01-31 12:55:54 +01:00
Adriaan de Groot
19afa46978 [netinstall] Match comment to code (casing of the identifier) 2022-01-31 12:51:56 +01:00
Adriaan de Groot
6a2e80a0b7
Merge pull request #1879 from dalto8/pkgchooser-netinstall
Allow the packagechooser module to modify the netinstall module
2022-01-31 12:44:02 +01:00
Adriaan de Groot
5b994f85c9 [grubcfg] Keep kernel_params as 'quiet' by default
- mark some TODO
- tighten up the YAML schema a little bit
- when unset, use 'quiet' rather than empty, to preserve compatibility
  with existing configuration files.

SEE #1882
2022-01-31 12:38:20 +01:00
Adriaan de Groot
37e189992e
Merge pull request #1882 from dalto8/grub-defaults
[grubcfg] Add configuration for default kernel_params
2022-01-31 12:12:06 +01:00
dalto
e597998021 [packagechooser,netinstall] Clean up duplication and pruning logic for netinstall-add 2022-01-27 19:31:34 -06:00
dalto
f65feedcce [grubcfg] Add configuration for default kernel_params 2022-01-27 15:53:34 -06:00
dalto
6be1208488 Document global storage keys 2022-01-25 17:52:45 -06:00
dalto
63ed2e5fb8 [packagechooser,netinstall] Change globalstorage keys to camel case 2022-01-25 17:43:19 -06:00
dalto
22c9d888b4 [packagechooser,netinstall] Proper implementation of source field 2022-01-24 17:01:16 -06:00
dalto
1db217931b [netinstall] Minor changes from code review 2022-01-24 15:39:14 -06:00
dalto
a657d7388c [packagechooser] Remove obsolete functionality from netinstall-add 2022-01-23 14:47:14 -06:00
dalto
f4c2db7f21 [packagechooser,netinstall] Fix issues where going back and forth between pkgchooser and netinstall produced unexpected behavior 2022-01-23 13:58:10 -06:00
Adriaan de Groot
95122fdcf5 [partition] Warn if the system won't support encryption in a useful way
This is the infrastructure bit; if someone can come up with a way
of **meaningfully** detecting support, the detection function can
be given a better implementation.

FIXES #1725
2022-01-22 22:52:50 +01:00
dalto
2aa8c2f0e0 [packagechooser] Ensure multiple instances don't override the GS values 2022-01-19 16:48:56 -06:00
Adriaan de Groot
929496552e [bootloader] Optionally generate unique suffix for bootloader 2022-01-18 15:09:44 +01:00
Adriaan de Groot
c9156d41b1 [bootloader] Extend tests and docs with a few more error cases 2022-01-18 14:31:13 +01:00
Adriaan de Groot
7a462f4522 [bootloader] Fix issues identified by tests
- expectation derp11 was wrong, there were only 10 calls to next()
- using whole name instead of the not-the-suffix-bit was wrong
- phrase generator wrong length
2022-01-18 13:32:24 +01:00
Adriaan de Groot
ed5c4c9c87 [bootloader] Add generators for various suffix-flavors 2022-01-18 13:32:24 +01:00
Adriaan de Groot
b4b7deac2d [bootloader] Document intentions
It may be easiest to modify the efiBootloaderId, since that does not
normally show up in the UI. I cannot quickly come up with a way to
do the same kind of suffixing on the user-visible name.

SEE #1820
2022-01-18 13:32:24 +01:00
Adriaan de Groot
c587145bdd [umount] Drop all mention of removed configuration keys 2022-01-18 13:25:58 +01:00
dalto
4d5ae96db6 [umount] Add support for umount to be an emergency module 2022-01-18 13:25:00 +01:00
Adriaan de Groot
6034feb69d [umount] Complete C++ implementation
- as a design decision, the deprecated "save some files" functionality
  has been dropped from this implementation.
2022-01-18 13:22:45 +01:00
Adriaan de Groot
afa5e75d76 [umount] Start C++ port 2022-01-18 13:22:42 +01:00
Adriaan de Groot
5e4866c439 [partition] Simplify ClearTempMounts
- use the shared function for reading mtab entries
2022-01-18 13:22:20 +01:00
Adriaan de Groot
0070dd2c01 [libcalamares] Add a convenience for reading mtab
- used by umount and cleartempmounts (in future)
2022-01-18 13:22:20 +01:00
Adriaan de Groot
546780d7a8 Merge branch 'issue-1864' into calamares
FIXES #1864
2022-01-18 12:39:46 +01:00
Adriaan de Groot
da2612d2d9 [locale] Update language even if there is a current location
- the first time we arrive at locale, there isn't a current location
  and the setCurrentLocation(...) method ends up calling setLanguage(),
  usually. The second time, this call is skipped (not called from
  the overloaded setCurrentLocation() which is called from onActivate),
  so the language didn't update.
- now call setLanguage() unless there has been one set explicitly.
2022-01-18 12:28:57 +01:00
dalto
4811c59e33 [packages] Make pacman output more verbose 2022-01-17 16:24:56 -06:00
Adriaan de Groot
11f3f938d8
Merge pull request #1875 from dalto8/pacman-logs
[packages] Ensure all pacman output is available in debug log
2022-01-17 15:20:55 +01:00
Adriaan de Groot
6101dd9079 [locale] Code style 2022-01-17 14:51:42 +01:00
tjpark88
79a91b486a [locale] Update language always
onActivate of locale updates the language only when currentLocation changed
or when onActivate of locale is called for the first time.
However, It is irrelevant solution since the language is set by the welcome.
So language should be updated always.
The language is used by keyboard module to guessing a layout of keyboard.
Once you face the locale, you can't change language in the welcome
if you don't change the timezone.
2022-01-17 14:51:42 +01:00
Adriaan de Groot
2aaaabe152 [partition] Set bigtime on XFS filesystems
FIXES #1874
2022-01-17 14:50:43 +01:00
Adriaan de Groot
a93126a6d0 [libcalamares] More meaningful name for JobResult success 2022-01-17 14:19:28 +01:00
dalto
112d0b2e90 [packages] Ensure all pacman output is available in debug log 2022-01-17 07:07:09 -06:00
Adriaan de Groot
e6813949af [libcalamares] Hook up Python's error() to error, rather than warning 2022-01-17 13:47:47 +01:00
Adriaan de Groot
4be932ff9d [umount] Now mark deprecated use as an error 2022-01-17 13:42:36 +01:00
dalto
b4ac6b73c8 [packagechooser,netinstall] Add documentation for packagechooser/netinstall integration 2022-01-15 11:13:17 -06:00
dalto
2eda55d3af [packagechooser,netinstall] Add support for packagechooser to drive netinstall 2022-01-15 09:41:23 -06:00
Adriaan de Groot
a8f6596d38 Merge branch 'issue-1870' into calamares
- Improve the error messages in general
- Warn specifically if there isn't an *unpack* key

FIXES #1870
2022-01-12 14:39:54 +01:00
Adriaan de Groot
b227419f01
Merge pull request #1871 from dalto8/zfsfix-initcpiocfg
[initcpiocfg] Only add zfs hook if zfs is enabled
2022-01-12 11:31:53 +01:00
Adriaan de Groot
da03e12b7b
Merge pull request #1869 from dalto8/initramfs-fix
[initramfs] Fix condition when call to uname fails
2022-01-12 11:31:13 +01:00
Adriaan de Groot
624bb13736
Merge pull request #1868 from dalto8/fix-initcpio
initcpio module fixes
2022-01-12 11:19:36 +01:00
Adriaan de Groot
94bca61491 Docs: be a little more explicit about emergency mode 2022-01-12 11:16:42 +01:00
Adriaan de Groot
ee2fea74df
Merge pull request #1866 from dalto8/umount-emergency
[umount] Add support for umount to be an emergency module
2022-01-12 11:11:20 +01:00
dalto
1f9ae6cae6 [initcpiocfg] Only add zfshook if zfs is enabled 2022-01-07 14:49:26 -06:00
Adriaan de Groot
e14fa5de75 [unpackfs] Improve error messages
- the module is 'unpackfs', not 'unsquash'
- add a warning + specific error if there is no unpack key in the config
- the 'doing nothing' part isn't true: the module errors out instead
  of doing nothing.

SEE #1870
2022-01-06 23:51:18 +01:00
dalto
626ab98949 [initramfs] Fix condition when call to uname fails 2022-01-02 08:41:47 -06:00
dalto
3be6946d93 [initcpio] Minor documentation updates 2022-01-01 12:14:42 -06:00
dalto
475c0d21a1 [initcpio] Spell mkinitcpio properly 2022-01-01 10:48:48 -06:00
dalto
c2ae5fad96 [initcpio] Make implementation match config description and remove broken uname option 2022-01-01 10:05:00 -06:00
dalto
4fe5f1c06f [umount] Add support for umount to be an emergency module 2021-12-31 08:06:13 -06:00
dalto
5b483ab26f [mount] Fix typo in mount.conf comments 2021-12-30 10:01:03 -06:00
dalto
3e1bc6cb22 [partition] Revert change to partition.conf 2021-12-30 09:36:54 -06:00
dalto
bb1d3022e0 [mount] Add additional documentation in mount.conf and main.py 2021-12-30 09:07:51 -06:00
dalto
a50ffa74e1 [mount,fstab] Fix bugs in moving mount options to the mount module 2021-12-30 09:07:51 -06:00
dalto
03f2e45605 [mount,fstab] Move mounting logic to the mount module 2021-12-30 09:07:51 -06:00
Adriaan de Groot
4e61f24960 [partition] Tidy up iso9660 detection 2021-12-25 18:27:13 +01:00
Adriaan de Groot
24a881ad75 Merge branch 'calamares' into work-3.3 2021-12-24 17:01:08 +01:00
demmm
7cfa654a68 [luksopenswaphookcfg] set plugin name according to module name
either this, or have all distros adjust settings.conf from luksopenswaphookcfg to luksopenswaphook
2021-12-22 22:17:13 +01:00
dalto
f0aba5db96 Update modules readme for Python emergency modules support 2021-12-19 15:29:42 -06:00
Adriaan de Groot
da72e815dc [luksopenswaphookcfg] Fix build, missing include 2021-12-18 00:43:30 +01:00
Adriaan de Groot
7fc2859f23
[luksopenswaphookcfg] Port to C++
Merge pull request #1845 from calamares/issue-1659

FIXES #1659
FIXES #1644
2021-12-17 20:31:05 +01:00
Adriaan de Groot
587a18a6fa [partition] Use runCommand() for future-proofing 2021-12-14 12:50:27 +01:00
Adriaan de Groot
f04394d014 [partition] Improve rendering of KPMCore errors 2021-12-13 20:02:52 +01:00
Adriaan de Groot
07354a26a9 [partition] Simplify debug calls to executables
- Use the Calamares support-functions for running lsblk and mount
  (these might need to have privilege support if Cala is not
  running as root, so this is future-proofing)
2021-12-13 20:02:52 +01:00
Adriaan de Groot
fdf0f208f0 [partition] Use lvalue-overload of execute() convenience
- These jobs may take a long time, and report progress; we need
  the operation around to be able to connect the signals and slots
2021-12-13 20:02:52 +01:00
Adriaan de Groot
6680584724 [partition] Use convenience function execute()
This job needs the lvalue-overload of execute() because it needs to
call a method on the operation after execute() finishes successfully.
2021-12-13 20:02:52 +01:00
Adriaan de Groot
c5573a1997 [partition] Add non-const lvalue overload for execute() 2021-12-13 20:02:52 +01:00
Adriaan de Groot
b8ce21d572 [partition] Use convenience function for running operations 2021-12-13 20:02:52 +01:00
Adriaan de Groot
1356012fb4 [partition] With rvalue, code becomes even more compact 2021-12-13 20:02:52 +01:00
Adriaan de Groot
8bb2c5fc6b [partition] Use convenience-method for running operation 2021-12-13 20:02:52 +01:00
Adriaan de Groot
dc7a1e43b7 [partition] Add helper for running a KPMCore operation
Most *partition* module jobs run an operation and turn that into
a JobResult -- ok if it succeeds, and with the report text otherwise.
Factor it out into a separate method that can be used as shorthand.
2021-12-13 20:02:52 +01:00
Adriaan de Groot
d3ed5663d0 [preservefiles] Add a schema-file 2021-12-13 16:56:07 +01:00
Adriaan de Groot
778c2855f4 [preservefiles] Introduce the notion of optionally-preserved files 2021-12-13 16:34:38 +01:00
Adriaan de Groot
445ed870cc [preservefiles] Simplify code to help gcc warnings 2021-12-13 15:53:42 +01:00
Adriaan de Groot
3be52f8b37 [preservefiles] Expand tests with reading some existing config-items 2021-12-13 15:53:42 +01:00
Adriaan de Groot
a1b7ba0dc5 [preservefiles] Accessor for item-type (needed for tests) 2021-12-13 15:44:07 +01:00
Adriaan de Groot
8b5e49d980 [preservefiles] Add (stub) tests 2021-12-13 15:07:24 +01:00
Adriaan de Groot
90f6ea1fc8 [preservefiles] polish the documentation 2021-12-13 15:07:24 +01:00
Adriaan de Groot
238672ef78 [preservefiles] Split file-items into separate header
Put the Item class in a separate header; give it functionality
to create itself from Variants (e.g. from the configuration data)
and to run itself (do whatever the item is supposed to do).
This makes the polymorphic approach unnecessary: we just have
items that are sufficiently smart.

This moves do-a-thing to the Item, while the Job now has one
job: be a loop around creating Items and running items.
2021-12-13 15:05:05 +01:00
Adriaan de Groot
b1ecbb4151 [preservefiles] Start cleanup of structure, polymorphism 2021-12-13 15:05:05 +01:00
Johannes Kamprad
becb1d5710
Update preservefiles.conf 2021-12-12 01:22:22 +01:00
arcolinuxz
5b225cf960 [preservefiles] Put the logs in /var/log 2021-12-11 23:58:23 +01:00
Adriaan de Groot
132ebd2c2d [networkcfg] NetworkManager files are UTF-8 encoded
The filenames don't matter, but the contents of the file are also
UTF-8, and depending on the default encoding of the Python
interpreter, this can fail on non-ASCII characters in the
file. Set the encoding explicitly while reading and writing
the NetworkManager configuration files.

FIXES #1848
2021-12-11 15:12:51 +01:00
Adriaan de Groot
03da766b39 [partition] Keep 64-bit integers for swap sizes
FIXES #1849
2021-12-11 13:19:08 +01:00
Adriaan de Groot
7ac42b5f40 [umount] Tests don't like an empty config
- modules with no configuration should be marked 'noconfig',
  but umount is special: it has no **useful** configuration
  (maybe no **non-deprecated** configuration), but isn't
  marked 'noconfig' **yet**.
2021-12-10 16:44:01 +01:00
Adriaan de Groot
3870851074 [luksopenswaphookcfg] Remove Python implementation 2021-12-08 14:35:52 +01:00
Adriaan de Groot
046a228d62 [luksopenswaphookcfg] Expand tests with lines more-closely tailored to the actual file-format 2021-12-08 14:25:03 +01:00
Adriaan de Groot
2c20a00cc3 [luksopenswaphookcfg] Read GS for finding LUKS config 2021-12-08 14:12:25 +01:00
Adriaan de Groot
45d6eb36fb [luksopenswaphookcfg] Extend info with btrfs subvol
This is a C++-ification of e8936392 from dalto8 . Add a line
for options to the empty-file-fallback.
2021-12-08 14:12:25 +01:00
Adriaan de Groot
7ea21663ca [luksopenswaphookcfg] Partial implementation in C++
- Futz a bit with the string replacements -- do not assume #
  will introduce a comment half-way through a line.
2021-12-08 14:12:20 +01:00
Adriaan de Groot
5ca029df25 [luksopenswaphookcfg] Start a C++ port
- this module needs work to handle BTRFS special-cases *anyway*
- limited in scope, few options: port it while doing the
  special-cases

So far, this is just a C++ stub.

SEE #1659 #1644
2021-12-08 14:12:20 +01:00
Adriaan de Groot
bc2713ccbb [libcalamares] Add string functions for lstrip() and rstrip()-like 2021-12-08 14:08:37 +01:00
Adriaan de Groot
bb948c47dc [fstab] Cut the example btrfs flags to 'defaults'
Testing shows that the flags can influence -- maybe cause -- data
corruption when noatime is set.

FIXES #1846
2021-12-08 13:06:53 +01:00
Adriaan de Groot
f0eb7ffbda [partition Untangle, Warnings--
The translations apply to labels and a tooltip, which depends on
the partition-table type. Move the strings together and make
the whole range of the switch explicitly.
2021-12-08 00:59:20 +01:00
Adriaan de Groot
e8ca298712 [partition] Reduce warnings 2021-12-08 00:15:01 +01:00
Adriaan de Groot
13700b18c8 [partition] Warnings--
- remove superfluous `break`
- massage types around partition sizes
2021-12-08 00:06:17 +01:00
Adriaan de Groot
1197d8c750 [interactiveterminal] Warnings-- with KF5 5.86-or-later 2021-12-07 18:19:32 +01:00
Adriaan de Groot
09f47b5762 [partition] Build tests with consistent flags (in particular, KPMCore4-API flags) 2021-12-07 15:51:45 +01:00
Adriaan de Groot
4611545f93 [libcalamares] Warnings-- on switch()
- some switch statements handle a bunch of items explicitly,
  then default the rest. Clang complains about that. Turn off
  the warning for these specific switches, since there's dozens
  of values that simply do not need to be handled.
2021-12-07 15:42:14 +01:00
Adriaan de Groot
6e715205d7 [partition] Warnings-- by calling formatting consistently 2021-12-07 15:36:11 +01:00
Adriaan de Groot
09a03fbbc0 [partition] Warnings--: we don't care about one-byte-in-10^12 2021-12-07 15:31:49 +01:00
Adriaan de Groot
bb3f4442f5 [partition] Warnings-reduction
- use consistent size-formatting
- needs an out-of-line virtual function
2021-12-07 15:30:21 +01:00
Adriaan de Groot
5b05110351 [partition] Add convenience function formatByteSize
We want to use the KPMCore function consistently, but Calamares
uses a qint64 most of the time. Centralize the cast to double
in one place in the code.
2021-12-07 15:29:02 +01:00
Adriaan de Groot
eda85c176a [tracking] Avoid unused-deprecated-methods warnings
- these are internal classes, with no real Qt machinery; remove
  the Q_OBJECT macros.
- replace the tr() calls with calls with an explicit context,
  so that translations do not change.
2021-12-07 15:07:07 +01:00
Adriaan de Groot
32da51b44c [libcalamares] Avoid warnings in Boost::Python macros 2021-12-07 14:48:19 +01:00
Adriaan de Groot
0b6239a996 [libcalamaresui] Warnings-- : we know TCP ports are 16 bit 2021-12-07 14:28:55 +01:00
Adriaan de Groot
79ae3cd00f Merge branch 'shuffle-error-dialog' into calamares 2021-12-07 14:27:13 +01:00
Adriaan de Groot
c2e63f4a6b [libcalamaresui] Don't bother tagging nonexistent 3rdparty sources 2021-12-07 14:20:31 +01:00
Adriaan de Groot
8b804c4ae0 [libcalamaresui] Improve icon+heading layout
- Icon was too wide, heading and message placed off to the side
2021-12-07 14:15:43 +01:00
Adriaan de Groot
3030a710cc [libcalamaresui] Simplify 2021-12-07 12:58:22 +01:00
Adriaan de Groot
b07c9bb4af [libcalamaresui] Use meaningful type for Upload info
- use a struct with named fields instead of a tuple
- offer an operator bool() for the logic of does-it-make-sense-to-upload
2021-12-07 12:53:43 +01:00
Adriaan de Groot
3234de5753 [libcalamaresui] Make web-paste decision more readable 2021-12-07 12:48:17 +01:00
Adriaan de Groot
2f9edb3e08 [libcalamaresui] Code style 2021-12-07 12:44:19 +01:00
Adriaan de Groot
ca7f288488 [libcalamaresui] APIDOX for ErrorDialog 2021-12-07 12:40:05 +01:00
Adriaan de Groot
49890acd04 [libcalamaresui] Fix build after move 2021-12-07 12:39:50 +01:00
Adriaan de Groot
dc11dd2203 [libcalamaresui] Move ErrorDialog to the widgets/ part 2021-12-07 12:24:41 +01:00
Adriaan de Groot
6e59177f54
Merge pull request #1843 from LordTermor/calamares
Rework of error dialog
2021-12-07 12:06:01 +01:00
Adriaan de Groot
149f3ff3fe [partition] Reduce warnings about shadowed variables 2021-12-06 14:52:33 +01:00
Adriaan de Groot
d89553a777 [partition] Avoid problems with MessageAndPath in containers (drop const) 2021-12-06 14:46:26 +01:00
Adriaan de Groot
890c17cd71 [libcalamares] Expand error-logging when creating files 2021-12-06 14:46:26 +01:00
Adriaan de Groot
6ef7acc108 [libcalamares] Add minor tests for new readTargetFile 2021-12-06 14:46:26 +01:00
Adriaan de Groot
baf8297cc4 [libcalamares] Reading a file from target system 2021-12-06 14:46:26 +01:00
Adriaan de Groot
47f2dd3c18
Merge pull request #1844 from dalto8/openswap
Add support for unlocking encrypted swap with root on a btrfs subvol
2021-12-06 10:42:44 +01:00
dalto
6e08da6c8d [bootloader] Fix error with systemd-boot when path exists in the ESP 2021-12-06 10:31:58 +01:00
Artem Grinev
aa332477fd [libcalamaresui] Run clang-format on TranslationFix.cpp 2021-12-06 03:11:16 +04:00
Artem Grinev
d9f7726f7d [libcalamaresui] Add SPDX-header for Error Dialog files 2021-12-06 02:41:17 +04:00
Artem Grinev
2f2a418cc4 [libcalamaresui] Run clang-format 2021-12-06 02:37:11 +04:00
Artem Grinev
2dd77ee828 [libcalamaresui] Initialize Error Dialog field 2021-12-06 02:31:05 +04:00
Artem Grinev
bfa7b9a792 [libcalamaresui] Use translation fix for Error Dialog 2021-12-06 02:27:18 +04:00
Artem Grinev
32c5e18db0 [libcalamaresui] Add QDialogButtonBox translation fix 2021-12-06 02:26:13 +04:00
dalto
e8936392e3 [luksopenswaphookcfg] Add support unlocking swap with root on a btrfs subvol 2021-12-05 13:17:23 -06:00
Adriaan de Groot
c834a5066d [umount] Make it much more clear that the logfiles-thing is going away. 2021-12-05 02:26:23 +01:00
Artem Grinev
6bf0da7230 [libcalamaresui] Initial rework of error dialog 2021-12-05 04:50:13 +04:00
Adriaan de Groot
1d96c5af46 [partition] Table type 'none' is a late addition. 2021-12-05 01:32:51 +01:00
dalto
6e8779cbce [mount] Ensure path is available when creating nested btrfs subvolumes 2021-12-04 08:53:15 -06:00
Adriaan de Groot
ceb9ec4115 [fstab] Avoid KeyError when no subvol is set (from dalto8) 2021-12-04 02:15:33 +01:00
Adriaan de Groot
c22bbea528 [packages] Fix tests; YAML interpretation of 'yes' is not a bool 2021-12-04 02:04:24 +01:00
Adriaan de Groot
f26c81700d [fstab] Suppress empty subvol= options in fstab 2021-12-02 22:08:17 +01:00
Adriaan de Groot
96ccf256b2 [mount] Add documentation to the config file 2021-12-02 22:02:14 +01:00
Adriaan de Groot
951ddfb72a [mount] Experimental: accept 'no' for subvolumes
If there is no subvolume set, skip creation of that subvolume.
This allows root to be on a bare FS, without a tag or subvolume
name. To achieve this, use
    subvolume: no
(no quotes there) in the YAML.
2021-12-01 23:06:02 +01:00
Adriaan de Groot
1667d75a70 CMake: WITH_KF5Crash -> BUILD_KF5Crash
ABI-changing flags are WITH_*, features and dependencies are BUILD_*
2021-11-30 11:49:43 +01:00
Adriaan de Groot
ce23efae99 Merge branch 'calamares' into work-3.3 2021-11-30 11:39:30 +01:00
Adriaan de Groot
3845e05834 [locale] Correct timezone 5.0 / 5.5
Timezones 5.0 and 5.5 have considerable overlap; clear up most
of it. Since a pixel is about 55x55km on the ground, and the
translation of latitude and longitude is sketchy at best,
accuracy on this timezone map is not very good.

FIXES #1832
2021-11-29 22:04:31 +01:00
Adriaan de Groot
cdc3a9aad2
Merge pull request #1834 from dalto8/btrfs-swap
[fstab] Use different options for the btrfs swap subvolume
2021-11-29 15:16:17 +01:00
Adriaan de Groot
dfd13b4948 [packages] Remove bad config-lines
- rootMountPoint is a global thing, not a job-configuration item
2021-11-29 15:02:05 +01:00
Adriaan de Groot
28bd737062 [packages] Validate test-configs, too
- The config-files has a typo, so didn't validate, so
  the loaded data was wrong, leading to test-failures.
  See 61e0d538e9 .
2021-11-29 14:59:43 +01:00
Adriaan de Groot
61e0d538e9 [packages] Be more explicit in test failures, fix test data 2021-11-29 14:44:12 +01:00
Adriaan de Groot
474aaf7603 [packages] Fix loading of the subkeys for pacman 2021-11-29 14:23:15 +01:00
Adriaan de Groot
65488ca174 [libcalamares] More verbose when loading YAML for Python 2021-11-29 14:19:06 +01:00
Adriaan de Groot
1260d3fcb9 [packages] Expand tests for PM-specifics more 2021-11-29 13:21:50 +01:00
Adriaan de Groot
3e0c9ba056 [packages] Expand tests with PM-specific bits 2021-11-29 13:04:44 +01:00
Adriaan de Groot
fcbe8d3a3e [libcalamares] API for YAML-loading from Python 2021-11-29 12:59:30 +01:00
Adriaan de Groot
7f643010b2 [libcalamares] Expose error() and warn() to Python 2021-11-29 12:26:07 +01:00
Adriaan de Groot
e9970474f5 [libcalamares] Allow Python to log an Error as well 2021-11-29 12:22:02 +01:00
Adriaan de Groot
8a1e5d35fa [packages] Move pacman-options into their own key with subkeys 2021-11-29 11:59:09 +01:00
Adriaan de Groot
90459e434f
Merge pull request #1833 from dalto8/pacman
[packages] Additional pacman options
2021-11-29 11:39:01 +01:00
dalto
bd07db544f [packages] Update doumentation for run_pacman() to be more complete 2021-11-28 15:56:16 -06:00
dalto
6b838bbf3d [fstab] Add comment explaining logic 2021-11-26 13:00:30 -06:00
dalto
df3e049e1c [fstab] Use different options for the btrfs swap subvolume 2021-11-26 12:36:15 -06:00
dalto
bb24ee1b3b [packages] Fix location of call to reset_progress() 2021-11-26 10:56:32 -06:00
dalto
c80b4ff4c2 [packages] Make callback logic more sensible 2021-11-26 08:30:18 -06:00
dalto
e1e29780f2 [packages] Change callbacks 2021-11-25 15:55:22 -06:00
dalto
fa10bb8dd3 [packages] Add support for more pacman options 2021-11-25 11:52:41 -06:00
dalto
ee032b43fe [zfs] Fix spelling error in readme 2021-11-19 14:24:36 -06:00
dalto
f37a775977 [zfs] Update module documentation 2021-11-19 10:46:23 -06:00
Adriaan de Groot
8ca6a7caef [displaymanager] Fix tests (don't overwrite developer host configuration) 2021-11-16 17:30:28 +01:00
Adriaan de Groot
b0d951d7e5 [grubcfg] Avoid UnboundLocal, always set zfs_root_path to something 2021-11-16 17:22:43 +01:00
Adriaan de Groot
8652fc5f6d [zfs] Fix schema
- typo (canmount vs canMount)
- the canMount property is nominally a string, but YAML is 'special'
  and interprets 'on' and 'off' and 'yes' and 'no' and other strings
  as booleans unless quoted.
2021-11-16 17:14:12 +01:00
Adriaan de Groot
b00177bd65 [zfs] SPDX tag the documentation 2021-11-19 12:55:23 +01:00
Adriaan de Groot
bcd8ebd614 [displaymanager] SPDX tags for tests 2021-11-19 12:53:42 +01:00
Adriaan de Groot
2f2271aad6
[mount][bootloader] Communicate btrfs root subvolume
Ensure root subvolume is set correctly for systemd-boot.

FIXES #1821
2021-11-19 11:20:09 +01:00
dalto
f5b882a075 [partition] Remove setState call to resolve compat issue with older kpmcore 2021-11-18 13:36:23 -06:00
dalto
b0f6530a58 [mount][bootloader] Ensure root subvolume is set correctly for systemd-boot 2021-11-18 10:04:49 -06:00
Adriaan de Groot
ece1e338e0
Merge pull request #1822 from dalto8/zfs-wip
[zfs] Support for installing to root-on-ZFS
2021-11-17 12:20:34 +01:00
dalto8
e814920bca
[zfs] Fix typo in README 2021-11-17 00:17:59 +00:00
dalto
c70e31a919 [zfs] Add README.md with some implementation notes 2021-11-16 18:16:32 -06:00
dalto
7e17106f34 [bootloader] Cleanup zfs support from testing 2021-11-16 17:48:49 -06:00
dalto
9603cbef14 [grubcfg] Add zfs entry to kernel_params 2021-11-16 17:48:02 -06:00
dalto
87cca4053f [zfs][mount] Refactor zfs dataset mounting logic 2021-11-16 13:59:24 -06:00
dalto
b65321d80b [bootloader] Add zfs support for grub-install 2021-11-16 13:48:34 -06:00
dalto
3ee388526d [zfs] Cleanup code based on review feedback 2021-11-16 09:06:42 -06:00
Adriaan de Groot
efe84bc6c0 [partition] Don't log private names
- log device node (/dev/sdb) instead of its name
- don't log job's prettyName() because that's translated, and also
  contains user-visible private names (introducing a non-translated,
  nicely redacted version of prettyName() seems like too much effort
  for something that can be reconstructed from bits earlier in the log)
2021-11-16 15:31:35 +01:00
Adriaan de Groot
5a4e2b73ab [libcalamares][partition] Give RedactedName a convert-to-QString
- use hex-trailer
- while here, convert DebugRow to use a copy rather than a reference,
  to avoid dangling references when applied to temporaries
- convert *partition* module to use the RedactedNames
2021-11-16 15:22:04 +01:00
Adriaan de Groot
152b3c333b [libcalamares] Introduce redaction-of-names class for logging
- redacted names are stable inside of one run of Calamares
- random, private displays of a given string for a context

SEE #1593
2021-11-16 14:47:13 +01:00
Adriaan de Groot
7b3c4db8f0 [libcalamares] Redacted -> RedactedCommand
- For logging (shell) commands where a password might become visible, use
  RedactedCommand. Rename it to allow for other kinds of redaction, too.
2021-11-16 14:21:46 +01:00
Adriaan de Groot
7cc84b89be [partition] Clarify the meaning of the various UUIDs in debug-output 2021-11-16 14:15:00 +01:00
Adriaan de Groot
4db4e983e3 [partition] Don't format tables of attributes in source 2021-11-16 14:04:00 +01:00
Adriaan de Groot
3aac4dea67 [partition] Remove logging-of-a-pointer during device detection 2021-11-16 13:52:10 +01:00
dalto
0a7262148e [umount] Convert zfs export call to use host_env_process_output 2021-11-15 19:03:20 -06:00
dalto
4778d9b2dd [mount] zfs changes from review feedback 2021-11-15 18:41:35 -06:00
dalto
3a90382699 [partition] zfs changes from review feedback 2021-11-15 18:41:35 -06:00
dalto
3ebe695a23 [fstab] Exclude zfs partitions from fstab 2021-11-15 18:41:35 -06:00
dalto
ebae698a6e [mount] Move zfs code into a seperate function to improve readability 2021-11-15 18:41:35 -06:00
dalto
18ad188ef6 [zfs] Ensure overlapping datasets don't get created and code cleanup 2021-11-15 18:41:35 -06:00
dalto
6e440bf9bb [umount] Export zpools after unmounting 2021-11-15 18:41:35 -06:00
dalto
490ac8d086 [partition] Ensure format is selected for existing zfs partitions 2021-11-15 18:41:35 -06:00
dalto
c48c91a5bd [partition] Add support for zfs encryption when erase disk is selected 2021-11-15 18:41:35 -06:00
dalto
ee99ee48f6 Add support for multiple zpools 2021-11-15 18:41:35 -06:00
dalto
a5b21b2500 [zfs] Fix typo and add missing continue 2021-11-15 18:41:34 -06:00
dalto
75c947c5a3 [mount] Fix zfs code and add support for encryption 2021-11-15 18:41:34 -06:00
dalto
1ccabf1b13 [zfs] Export zpool so it can later be mounted at the correct location 2021-11-15 18:41:34 -06:00
dalto
6da9bad272 [partition][zfs] Add support for zfs encryption 2021-11-15 18:41:34 -06:00
dalto
074941e2bd [bootloader] Add initial support for zfs 2021-11-15 18:41:34 -06:00
dalto
5d71723aec [mount] Improve error handling for zfs 2021-11-15 18:41:34 -06:00
dalto
de0bbbe90a [mount] Add support for zfs datasets 2021-11-15 18:41:34 -06:00
dalto
7f05096611 [zfs] Add delay before creating the zpool 2021-11-15 18:41:34 -06:00
dalto
7635b76352 [zfs] Add datasets to global storage for other modules 2021-11-15 18:41:34 -06:00
dalto
b9559a9d82 [zfs] Update to Calamares coding standards 2021-11-15 18:41:34 -06:00
dalto
76892136cf [initcpiocfg] Add support for zfs 2021-11-15 18:41:34 -06:00
dalto
11bf84bac7 [zfs] Initial commit for zfs module 2021-11-15 18:41:34 -06:00
dalto
24a376493b [partition] Add support for manually creating a partition for zfs 2021-11-15 18:41:34 -06:00
dalto
ca3f0e2892 [partition] Add zfs to the filesystem list if the zfs modules is enabled 2021-11-15 18:41:34 -06:00
Adriaan de Groot
3dd02edc78 [libcalamares] Document how to interpret percents
- use 0..1 in floats for percentages (I suppose you could
  call that a perunage, but that would be weird).
2021-11-15 23:16:58 +01:00
Adriaan de Groot
d5bef9efb5 Python: document which exception is thrown on process failure 2021-11-15 21:48:17 +01:00
Adriaan de Groot
5f7b221e11 [displaymanager] Fix greetd commands
- since default_desktop_environment isn't a string, need
  to pick the string -- the command -- out of the object first.
2021-11-15 13:38:46 +01:00
Adriaan de Groot
16a029abd2 [displaymanager] Adjust tests to match real runtime
- the default_desktop_environment isn't a string, but an
  object; it is unusual for it to be used in set_autologin
2021-11-15 13:37:23 +01:00
Adriaan de Groot
f3e85efd41 [displaymanager] Add tests that run parts of the DM code
- load and set autologin for greetd (this was used to shake out
  code bugs in load/save)
- load and set autologin for sddm
2021-11-15 13:00:40 +01:00
Adriaan de Groot
ce6aec158a [displaymanager] Fix config loading-and-saving
- toml.dump() takes a file-like object
 - toml.loads() takes a whole string to parse, (e.g. the TOML data),
   not a pathname, so change to toml.load() which takes a file-like
   object.
2021-11-15 12:23:17 +01:00
Adriaan de Groot
54fd81a87e [displaymanager] Handle case where config file doesn't exist or has no key
- If the config file doesn't exist, the dictionary is empty
 - If it **does** exist, it might not have key 'default_session' in it

Either case should avoid a KeyError by using get() (or setdefault,
in this context). Subsequent use of os.path.exists() is strange,
since the value is a **group** (e.g. a dictionary) in the config
file. Just check if it exists, and then fill something in.
2021-11-15 12:21:27 +01:00
Adriaan de Groot
11424195ef [displaymanager] Missing method call
- Add `()` to call the config_path() method, because we need a path
  to pass to os.path.exists().
2021-11-15 12:20:54 +01:00
Adriaan de Groot
fad2f6ea88 [displaymanager] Add simple test 2021-11-15 11:52:24 +01:00
Adriaan de Groot
58cf9ffeeb [displaymanager] Import toml only for the DMs that actually need it 2021-11-15 11:43:47 +01:00
Adriaan de Groot
85f36c77b1 [displaymanager] Import configparser only for the DMs that actually need it 2021-11-15 11:42:25 +01:00
Adriaan de Groot
138db1c817 Merge branch 'feat/greetd-support' of git://github.com/boredland/calamares into boredland-feat/greetd-support 2021-11-15 11:40:18 +01:00
dalto
daa5731acf [fstab] Improve comment about space_cache 2021-11-12 09:29:04 -06:00
dalto
9ef520f862 Add comment describing the situation with space_cache on btrfs 2021-11-12 08:58:43 -06:00
dalto
0bef2a91a1 [fstab] Remove space_cache from btrfs mount options 2021-11-10 17:16:09 -06:00
Adriaan de Groot
4fb8993a38 [finishedq] Add sample QML for mobile usage
This has a countdown-timer that automatically restarts;
the rest of the settings follow the finishedq.conf values.

FIXES #1601
2021-11-09 23:08:40 +01:00
Adriaan de Groot
8639c9a79f [partition] Fix up tests 2021-11-09 16:37:25 +01:00
Adriaan de Groot
cd0785164b [partition] Fix compatibility with Qt 5.12 2021-11-09 15:57:20 +01:00
Adriaan de Groot
bd4bed1438 Merge branch 'calamares' into work-3.3 2021-11-09 15:31:37 +01:00
Adriaan de Groot
2a86e86817 [packages] Make package-installation messages slightly less scary.
From a test with XeroLinux, at some point it says 'reinstalling linux...'
which is a message from pacman about the package called 'linux'.
2021-11-09 15:25:06 +01:00
Adriaan de Groot
e4b44b5f85 [packages] Look for other progress indicators
- the (n/m) lines are output of specific steps, not actual package-
  installation. So look for "<action> <packagename> ..." lines instead.
  This means we keep some state around, and need extra machinery to
  report those lines rather than the generic progress reporting
  that reports on groups.
2021-11-09 14:42:12 +01:00
Adriaan de Groot
4821f450f3 [packages] Report progress by scanning pacman output
- during install and remove, check for (n/m) output lines which
  report progress of the pacman actions and turn those into progress
  reports for the *packages* module.
2021-11-09 13:07:29 +01:00
Adriaan de Groot
575654941f [partition] Move required partition table type to Config
- remove from GS
- remove duplication across Config and ChoicePage
- improve translations (presumably "msdos or gpt" is the most
  complicated it will get)

FIXES #1735
2021-11-09 12:25:47 +01:00
Philip Müller
0486e48c4e [partition] offer /boot also when other EFI partition was specified
- it still makes sense to offer /boot in EFI
- example: /boot ext4, /boot/efi vfat
- this partly reverts 60f8a7c5fb
2021-11-09 01:51:49 +01:00
Adriaan de Groot
ead641c344 [summary] Prefer a step's widget over text
- the partition module makes a nice descriptive widget,
  which includes the text it **also** has for the summary;
  (the text is intended for the QML summary).
- In general, if a module has a widget for the summary, assume
  that that is the **whole** summary and use it instead of text.

This resolves duplicate summaries -- showing the text of the
partitioning-step, followed by its widget -- introduced in July.
2021-11-08 14:44:12 +01:00
Adriaan de Groot
6130a9c51f [unpackfs] Re-jig process-return-value in Python
- make the installation work,
- special case because rsync can return error 23 (which throws, from
  inside the Python API) which still means "it was ok".
2021-11-05 16:52:18 +01:00
Adriaan de Groot
c79bb3cd10 [unpacks] PARTIAL conversion to newer API with callback 2021-11-05 16:33:10 +01:00
Adriaan de Groot
b9691c339e S also docs 2021-11-05 16:32:40 +01:00
Adriaan de Groot
5e6d292235 FIXUP 2021-11-05 16:31:47 +01:00
Adriaan de Groot
faf1d68d32 [libcalamares] Tidy up processing of process output
- force C locale on processes
- split trailing output if output per-line-processing is active
2021-11-05 16:26:45 +01:00
Adriaan de Groot
94039c19bb [unpackfs] Use callback instead of building giant string in memory
SEE #1740

By processing each line in turn (and just counting is) rather
than collecting all of the lines of output from the tools,
we end up with lower memory usage.
2021-11-03 16:09:11 +01:00
Adriaan de Groot
e8209089c6 Merge branch 'issue-1740' into calamares
FIXES #1740
2021-11-03 15:49:03 +01:00
Adriaan de Groot
fe582fb94d Docs: document the Python APIs for modules 2021-11-03 15:48:26 +01:00
Adriaan de Groot
74d65d8338 Docs: touch-ups and typos 2021-11-03 13:51:17 +01:00
Adriaan de Groot
2800128a8d [libcalamares] Expand the output-processing API
- support host and target runs
- add stdin and timeout values
- allow automatic output to list
2021-11-03 13:45:15 +01:00
Adriaan de Groot
3120abbce8 [libcalamares] Introduce host_env_process_output, too
- run commands consistently, with optional output-processing,
  in host or target;
- raises exception on error, like the check_* functions.
2021-11-03 12:23:39 +01:00
Adriaan de Groot
e5323ec487 [libcalamares] Expand Runner documentation
- document a bit more of the methods
- provide convenience method enableOutputProcessing() alongside
  an explicit setter; adjust tests to the changed API.
- add an executable() information method.
2021-11-03 12:20:36 +01:00
Adriaan de Groot
f2142bc4b3 [libcalamares] Move Python callback to utils submodule
- don't need the job to do the callback
- allow callable objects from Python
- doesn't actually run the process yet
2021-11-03 11:53:44 +01:00
Adriaan de Groot
a0cb4b63a8 [partition] Fix build for old Qt 2021-11-03 11:14:22 +01:00
Adriaan de Groot
344948b5ab Modules: clean up QProcess (part 1) 2021-11-02 23:46:26 +01:00
Adriaan de Groot
2088502e57 [libcalamares] Don't use QProcess directly outside of Runner 2021-11-02 23:46:26 +01:00
Adriaan de Groot
57c174c37f [libcalamares] Clean up QProcess includes 2021-11-02 23:46:26 +01:00
Adriaan de Groot
5c82cb32ab [libcalamares] Expand tests to show last-output-line 2021-11-02 23:20:22 +01:00
Adriaan de Groot
aa315c0696 [libcalamares] Handle last-output-line without newline 2021-11-02 22:58:41 +01:00
Adriaan de Groot
0a339a5402 [libcalamares] Test Runner output-processing 2021-11-02 22:55:41 +01:00
Adriaan de Groot
953b899f75 [libcalamares] Allow Runner instances to collect output 2021-11-02 22:50:13 +01:00
Adriaan de Groot
870009e815 [libcalamares] Replace runCommand internals by Runner 2021-11-02 22:27:33 +01:00
Adriaan de Groot
89824a9e0d [libcalamares] Fix up Runner (as a replacement for current system code) 2021-11-02 22:27:33 +01:00
Adriaan de Groot
24ca64deac [libcalamares] Chase moved redacted-logging 2021-11-02 22:27:33 +01:00
Adriaan de Groot
85debfc69b [libcalamares] Add Redacted logging
- this was an internal class for logging commands, let's lift
  it up to the Logger framework where it might be more generally
  useful (or not .. everything needs special-casing for actual
  redaction).
2021-11-02 22:27:33 +01:00
Adriaan de Groot
f0104af1c3 [libcalamares] Expand tests on Runner internals 2021-11-02 22:27:33 +01:00
Adriaan de Groot
e5fa58b890 [libcalamares] Add tests for relativeCangeDirectory() 2021-11-02 22:27:32 +01:00
Adriaan de Groot
0b943e801c [libcalamares] Begin implementing Runner
This copies a bunch of code from the System methods for running,
and then #if 0's them to get it to compile. Add some basic
directory-management.
2021-11-02 22:27:32 +01:00
Adriaan de Groot
b9dac6eef8 [libcalamares] Small step in implementation 2021-11-02 22:27:32 +01:00
Adriaan de Groot
e0fdde06c9 [libcalamares] Python API for callbacks from processes
This is an experiment in Python API that will allow a callback
function in the Python module to be called for each output line.
It builds on the run-a-process extensions that are being built
simultaneously.
2021-11-02 22:27:32 +01:00
Adriaan de Groot
2de09d4001 [libcalamares] Start refactor of running-a-process support
The background idea is that, while CalamaresUtils::System::runCommand()
is a useful general API, it is
- still missing flexibility
- lacking a way to process output from the command "as it happens"

Waiting until the process ends, and then reading all stdout, is
inconvenient for processes that produce a **lot** of output,
and also makes it impossible to report progress. One module
in calamares-extensions has its own run-a-process implementation
for reading output, and this branch aims to introduce something
similar into Calamares core.
2021-11-02 22:27:32 +01:00
Adriaan de Groot
b5dba9108c [partition] Check for LVs that will be formatted, don't close them
- when (manually) using an existing LV, it shouldn't be closed
  prior to formatting, since that kills the volume and then the
  path (/dev/myvg/mylv) no longer exists. Then creating the
  filesysytem on that device path fails.
2021-11-02 15:33:34 +01:00
Adriaan de Groot
7b45793b60 [partition] Allow exceptions when closing /dev/mapper
- some names should not be closed, like "control"
- allow a list of names to be added which should not be closed
2021-11-02 15:26:25 +01:00
Adriaan de Groot
1410157356 [partition] Simplify and document ClearMounts
- note that the job indiscriminately closes all LUKS and LV
- don't hang on to lists we don't need
2021-11-02 11:55:13 +01:00
Adriaan de Groot
0253977778 [partition] Coding style 2021-11-02 11:50:51 +01:00
Adriaan de Groot
ca4a187d1a [partition] Extract the get-PV-groups code to its own function
- get the list (once)
- move the lambda to a named function for readability
2021-11-02 11:18:14 +01:00
Adriaan de Groot
7fa02fd41c [partition] Extract the get-LVM-volumes code to its own function 2021-11-02 11:10:09 +01:00
Adriaan de Groot
2a1ec84c87 [partition] Don't hang on to pointer longer than needed 2021-11-02 11:03:10 +01:00
Adriaan de Groot
04b119b051 [partition] Crypto device-list needn't be a member, either 2021-11-02 00:25:37 +01:00
Adriaan de Groot
f49389a408 [partition] Fix logic errors in stringification of MessageAndPath 2021-11-02 00:09:52 +01:00