Commit Graph

1304 Commits

Author SHA1 Message Date
Adriaan de Groot
350627172d [partition] Tidy up includes 2020-03-09 21:09:24 -05:00
Adriaan de Groot
ebb3f319cc [modules] Be more consistent in include punctuation
- Use <> for Qt, system, externals
 - Use double-quotes for Calamares headers
2020-03-09 21:05:15 -05:00
Adriaan de Groot
5248a37eb3 [libcalamares] Add FUNC_INFO into all debug messages
- This is needlessly verbose
- Chase CreatePartitionTableJob which needs to bind to a temporary
2020-03-03 17:00:57 +01:00
Adriaan de Groot
54a4644893 [partition] Store filesystem types
- Write a new GS key filesystems_use, which is a map of filesystems
  in use on the target system.
2020-02-27 14:29:54 +01:00
Adriaan de Groot
d4b26bbaf0 [partition] Tighten up the types of internal methods 2020-02-27 13:49:02 +01:00
Adriaan de Groot
f818d4b446 [libcalamares] Log Q_FUNC_INFO as part of debug
- Warnings, errors, don't get funcinfo, but regular cDebug()
  calls do. Other special-cases, like calling Logger::CDebug()
  constructor explicitly, don't get funcinfo either.

FIXES #1328
2020-02-27 13:20:19 +01:00
Adriaan de Groot
61ca6384cc [partition] Fix tests
- One of the files listed in the test has moved (to libcalamares),
- Don't bother with an extra intermediate SRCS variable.
2020-02-20 22:51:24 +01:00
Adriaan de Groot
6d0f5e4111 Merge branch 'kpmcore-manager' 2020-02-20 22:03:45 +01:00
Adriaan de Groot
5247c13f98 [partition] Follow 'claimed' settings for claiming swap
- By the time the GS is actually written, new (for partition state)
  is always false. So "new" is the wrong thing to track. It should
  have had a better name anyway,
- We store custom properties on the partition objects to indicate
  what happens to them; use those properties (instead of state,
  as done originally), call it "claimed" to indicate that the partition
  is part of this installation.

For now, only new (as in, formatted, created-by-us) partitions are
claimed.

- The effect here is that only "new" swap will be added to the system,
  so in erase-disk installations, or manual partitioning.
- Install-alongside and replace will now **not** claim the swap already
  on the disk; I think we'll need another UI knob for that one.

FIXES #1316
2020-02-20 16:38:40 +01:00
Adriaan de Groot
35a2db064b [partition] Make debug-logging match the functionality
- `createPartitionList()` is called for the summary widget (via
  `prettyDescription()`), and from `exec()`. Only the latter
  actually *writes* to Global Storage, so it's misleading to
  think that the pretty-printed version ends up in GS.
- This makes the "new" key useless, since by the time `exec()` is called
  the partitoons are no longer new.
2020-02-20 11:59:48 +01:00
Adriaan de Groot
fba1bf7072 CMake: add DEFINITIONS option to calamares_add_test
- There's a handful of tests that need this, it's possible
  there will be more, so just add it to the infrastructure.
2020-02-19 22:26:55 +01:00
Adriaan de Groot
1bb43e06e2 Merge branch 'master' into kpmcore-manager 2020-02-19 18:34:44 +01:00
Adriaan de Groot
158e11de1e [partition] Indicate that a filesystem is new in GS 2020-02-18 10:44:54 +01:00
Adriaan de Groot
4495a4c739 CMake: Allow extra libraries in calamares_add_test
- Extra libraries specified via LIBRARIES part of CMake function
 - Convert all the other module tests
2020-02-17 14:36:52 +01:00
Adriaan de Groot
b044549013 [libcalamares] Merge PluginDllMacro.h into DllMacro.h
- Let's just have one header definining export- and visibility-
   macros for Calamares. They are still selected based on the
   export flags (*_PRO), just defined in one header instead of two.
2020-02-17 11:37:35 +01:00
Yuri Chornoivan
ea82a26dae
Fix typo:; partitons -> partitions
Many thanks in advance for reviewing.
2020-02-16 14:12:48 +02:00
Adriaan de Groot
7f295d9565 [partition] Apply coding style to core/ subdir
Because this is a giant code change, with no functional effect,
I've been saving this until the end of the kpmcore-manager branch.
2020-02-14 11:15:57 +01:00
Adriaan de Groot
45a31a3022 [partition] Tidy includes
- sort includes a little
 - remove superfluous includes
 - update copyright
2020-02-13 13:54:04 +01:00
Adriaan de Groot
d931b146e3 [partition] Shuffle new conveniences into partition service
- the general stuff from KPMHelpers ends up in the partition
   service; that only gets compiled when KPMCore is available anyway.
2020-02-13 13:48:12 +01:00
Adriaan de Groot
e72ecaafd3 Merge branch 'kpmcore-manager'
Introduces a "partitioning service" into libcalamares,
shuffles a bunch of things into it, tries to help out
with settling the system between partitioning actions.
2020-02-13 13:41:53 +01:00
Adriaan de Groot
5a50a3a40c [partition] Consistent FS name usage
- explicit use of user-visible names in EditExistingPartitionDialog
 - consistent conversion of config-values to FS names (user-visible).
   The GS value comes from the ViewStep, and should always match
   something -- it's already converted to the canonical un-translated
   so the type should be good.
2020-02-13 13:24:53 +01:00
Adriaan de Groot
57b608083e [partition] Fix build - missing ) 2020-02-13 13:24:09 +01:00
Adriaan de Groot
ca67534cd2 [partition] Improve logging of bad configs 2020-02-13 13:15:06 +01:00
Adriaan de Groot
472ec32617 [partition] Be explicit about user-visible FS names, ReplaceWidget 2020-02-13 11:49:20 +01:00
Adriaan de Groot
05dfc24af6 [partition] Be explicit about user-visible FS names, CreatePartitionDialog 2020-02-13 11:45:04 +01:00
Adriaan de Groot
88cff387c3 [partition] Be explicit about user-visible FS names, FormatPartitionJob 2020-02-13 11:33:40 +01:00
Adriaan de Groot
bacca04695 [partition] Be explicit about what's user visible in SetPartitionFlagsJob 2020-02-13 11:29:45 +01:00
Adriaan de Groot
29894cec6a [partition] Convenience userVisibleFS()
- Mark uses of filesystem-name where it's intentional that they
   are user-visible, with a new convenience function.
2020-02-13 11:22:09 +01:00
Adriaan de Groot
dac5516b2c [partition] Update copyright, coding style 2020-02-13 11:12:22 +01:00
Adriaan de Groot
a0449abab9 [partition] Do not translate filesystem names
- Move contents of FSName to KPMHelpers
 - Use the new functions from FillGlobalStorage

Needs more use in the rest of the partition module.
2020-02-13 11:06:53 +01:00
Adriaan de Groot
c055e1da49 [partition] Use untranslated name of filesystem
- Patch from Gabriel Craciunescu
2020-02-13 09:32:06 +01:00
Adriaan de Groot
f6d89354a1 Merge branch 'master' into kpmcore-manager 2020-01-10 14:54:13 +01:00
Adriaan de Groot
7fd218d7bf [partition] Chase deprecations in Qt 2019-11-26 16:56:45 +01:00
Andrius Štikonas
490c14d93d QLatin1Literal->QLatin1String. 2019-09-21 20:44:33 +01:00
Adriaan de Groot
0aabc89449 [partition] [welcome] Simplify retranslation 2019-08-29 15:02:12 +02:00
Adriaan de Groot
a6db224fcb [fsresizer] [partition] Gracefully fail on missing dependencies
- If KPMcore is found -- it requires some other KDE Frameworks but
   at least in pre-4.0 versions doesn't check very well for them --
   then missing its dependencies is no cause for CMake failure.
   Instead, log it nicely and suppress the module.
2019-08-12 13:23:34 +02:00
Adriaan de Groot
48a25858f0 [partition] Chase 3rdparty move 2019-08-08 12:42:47 -04:00
Adriaan de Groot
399919c49a [partition] Swap the two implementations of getting partitions 2019-06-24 13:10:45 +02:00
Adriaan de Groot
f2438a5bf4 [partition] Implement other way of getting partitions
- Just read /proc/partitions and process it; split into columns,
   add relevant bits.
 - This implementation supports devices named "name", which the other
   didn't (but that would be really weird).

The tests now pass.
2019-06-24 13:09:07 +02:00
Adriaan de Groot
d16c75b15c [partition] Expand tests to ClearMountsJob
- This is a tiny bit of TDD to replace the existing implementation
   (a shell pipeline) with processing inside Calamares.
 - The test fails right now, since the implementations are not
   the same.
2019-06-24 12:47:53 +02:00
Adriaan de Groot
b1ccd573f8 [partition] Code-formatting for tests 2019-06-24 12:37:00 +02:00
Adriaan de Groot
ecdd09edcd [partition] Refactor getting partitions from device
- Split out into own function
 - Prepare for implementation that doesn't use external processes
2019-06-21 21:17:43 +02:00
Adriaan de Groot
d3df346ce7 [libcalamares] Move TemporaryDir into TemporaryMount
- Only one user of TemporaryMount, and we should distinguish
   "regular" temp mounts from temp mounts with a hand-picked
   mount point.
2019-06-21 16:37:35 +02:00
Adriaan de Groot
5876c3fdd7 [partition] Warn about storage setting in partition.conf
- This is really a specialised setting, not something for
   general use. People should be using `welcome.conf` instead.
2019-06-21 13:43:02 +02:00
Adriaan de Groot
5597215d58 [partition] Needs to settle the disks after all the changes 2019-06-20 17:14:14 +02:00
Adriaan de Groot
5a18a6cba9 [partition] Mark this use of "mount" as debugging-only
- This call doesn't need to be replaced by the mount helpers
   in the partition service, since it's just debug output telling
   what *is* mounted.
2019-06-20 17:01:57 +02:00
Adriaan de Groot
ba7259d9ee [partition] Use TemporaryMount support class
- While here, fix up compile warning
 - add -R to umount for good measure
2019-06-20 14:49:44 +02:00
Adriaan de Groot
8e4a2b3543 CMake: Handle KPMCore version better
- provide complete information for feature_summary
 - set the right API version when building libcalamares
 - report the beta version number when it's wrong
2019-06-14 23:57:07 +02:00
Adriaan de Groot
f6373561d3 [partition] One more job that uses KPMCore 2019-06-14 23:39:44 +02:00
Adriaan de Groot
9c85537659 [partition] The VG jobs also use KPMCore
- Give them a manager just like other KPMCore-based jobs,
   so that the privileged helper can be shut off on time.
2019-06-14 23:32:34 +02:00