Commit Graph

125 Commits

Author SHA1 Message Date
Adriaan de Groot
8de565f269 CMake: apply gersemi formatting 2022-08-23 12:22:09 +02:00
Adriaan de Groot
3360ad612e [libcalamares] Use Calamares interface-library to kpmcore 2022-07-10 13:38:48 +02:00
Adriaan de Groot
49c56add7d Merge branch 'calamares' into work-3.3 2022-03-21 23:21:54 +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
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
cf097850de CMake: apply gersemi styling 2022-02-08 16:18:47 +01:00
Adriaan de Groot
03e621f4a2 Modules: clean up linking
- do not link (explicitly) to Calamares libraries, the CMake
  functions do that automatically.
- while here, tidy and remove commented-out-bits
- while here, remove unneeded includes
2021-07-26 15:04:43 +02:00
Adriaan de Groot
c3bc305bb6 [partition] Shuffle Config and ViewStep to top
Modules nearly always have a Config and either a Job or ViewStep
as their "top level" components. Everything else is implementation-
detail. The *partition* module was unusual in that those two
"top level" components were tucked away in subdirectories.

Shuffle them to the top: this makes it more clear that these
two files are there to coordinate the module.
2021-06-29 11:22:47 +02:00
Adriaan de Groot
4912de5893 [partition] reduce warnings with unsafe-option
- Move variables closer to where they are needed
- Do the winnowing / selection always, but in unsafe mode return
  the un-winnowed list of devices
- Massage build documentation a little
2021-04-09 13:32:48 +02:00
shainer
c035029f38 Make sure we always set the filesystem label.
In particular, we need a separate Job class to set the label; this
is invoked after we formatted a partition, and when no other changes
to the partition have been requested in the Edit dialog.
2021-03-27 15:38:46 +01:00
Adriaan de Groot
1704ad5977 [partition] Add a job to handle automount behavior
- while here, nudge CalamaresUtils automount API a little,
  since it doesn't really need an rvalue-ref.
2021-02-02 19:18:19 +01:00
Adriaan de Groot
40aa0fcaba CMake: add a helper module for finding KPMcore
I think we had this (kind of) module a long time ago and it was
removed for over-complicating things; re-introduce one now that
KPMcore is used in 3 different places and all would benefit
from consistent API handling / defines.
2020-10-07 00:11:18 +02:00
Adriaan de Groot
f28d28a455 [partition] Ignore KPMCore 4 beta versions 2020-10-06 23:49:11 +02:00
Adriaan de Groot
1cd9b93a22 REUSE: Giant boilerplate cleanup
- point to main Calamares site in the 'part of' headers instead
  of to github (this is the "this file is part of Calamares"
  opening line for most files).
- remove boilerplate from all source files, CMake modules and completions,
  this is the 3-paragraph summary of the GPL-3.0-or-later, which has
  a meaning entirely covered by the SPDX tag.
2020-08-26 02:28:38 +02:00
Adriaan de Groot
95ceb1e8c7 REUSE: (BSD-2-Clause) all CMakeLists
The build instructions are not that interesting, it's a toss-up
between CC0 and BSD-2, but because other CMake bits are BSD-2-Clause,
apply that to more CMakeLists. The copyright date isn't all that
accurate, but these are just inconsequential files.

While here, tidy up and get rid of some useless intermediates.
2020-08-26 02:05:46 +02:00
Adriaan de Groot
b33e54abb9 [partition] Stub of a Config object
- Even though this isn't a QML'able module, work towards
  a decoupled Config object anyway
- Not actually used yet.
2020-05-18 12:23:13 +02:00
Adriaan de Groot
c4951d5090 [libcalamaresui] Move PrettyRadioButton from partition 2020-05-18 10:38:45 +02:00
Adriaan de Groot
05990fb287 CMake: handle DEBUG_* consistently
- Make all four DEBUG_ flags actual CMake options, rather than
  stuffing some of them in the rather-peculiar _enable_debug_flags.
  Each debug option turns on suitable compile flags in the module(s)
  that are affected.
2020-04-14 11:18:51 +02:00
Gaël PORTAY
15cce29a51 [partition] Add support for filesystem-specific features 2020-03-22 09:25:26 -04:00
Adriaan de Groot
f6d89354a1 Merge branch 'master' into kpmcore-manager 2020-01-10 14:54:13 +01: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
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
d8dc512f45 [libcalamares] Move PartitionIterator to partition service.
- Starting to centralize utility code for partitioning into
   libcalamares instead of scattered and weirdly shared between
   modules.
 - This particular commit breaks compiling the modules, though.
2019-06-13 12:12:47 +02:00
Adriaan de Groot
f1822c2adb [partition] [fsresizer] For simplicity, disallow beta KPMcore 2019-06-13 11:45:20 +02:00
Adriaan de Groot
a01262a535 CMake: massage dependency-finding
- If KPMCore is not found, don't require the KF5 components
   that it would depend on.
 - If ECM is found, use KDEInstallDirs always, not just when
   the partitioning module is used.
2019-04-30 13:38:46 +02:00
Adriaan de Groot
4e24ea29e2 [partition] [fsresizer] Adjust to post-3.3.0 API
- KDE neon ships a post-3.3.0 KPMCore, with deprecations, but not yet
   the KPMCore 4 API, so add another API-version check to handle the
   deprecations. Keeps warnings down.
2019-04-12 12:44:59 +02:00
Adriaan de Groot
9159761171 [partition] [fsresizer] Fix KPMCore API detection
- There will be a 3.3.1 which still has the "old" API,
   so look at 3.3.80 (pre-4.0) instead. Make the way
   compile flags are passed consistent.
2019-04-12 12:16:55 +02:00
Adriaan de Groot
62f03d8aad [partition] Allow unsafe partitioning decisions
- This is a compile-time choice, and off by default. This may be useful
   for developers that need to get through installation to a different
   partition on their root drive.
 - Add an option to avoid actually doing unsafe things. This is an extra
   safeguard; you need to turn on one and turn off the other option to
   really be unsafe.
2019-03-20 11:26:02 +01:00
Arnaud Ferraris
f1ead5193d [partition] Create PartitionLayout class
In order to use a custom partition layout in the partition module, we
need to write this layout in the module's config file, and store it into
a dedicated object.

As it doesn't look appropriate to extend an existing class with layout
information, we create a new PartitionLayout class, which will be used
to parse the layout from the config file and keep it in memory.

Signed-off-by: Arnaud Ferraris <arnaud.ferraris@collabora.com>
2019-01-07 17:25:22 +01:00
Adriaan de Groot
5d5feeb0ab Merge branch 'master' of https://github.com/cjlcarvalho/calamares into lvm-update 2018-06-28 23:48:13 +02:00
Caio Carvalho
295e14530e [partition] Adding resizing, deactivating and removing procedures for LVM VGs. 2018-06-26 00:38:52 -03:00
Caio Carvalho
98a158c6e5 [partition] kpmcore latest release doesn't support FileSystem::Type::Luks2 2018-06-14 15:37:00 -03:00
Caio
208d58bcd9 [partition] Including CreateVolumeGroupDialog and fixing some of its GUI issues. 2018-06-07 17:22:22 -03:00
Caio
d15ce56c97 [partition] Initial implementation of VolumeGroupBaseDialog. 2018-06-04 16:31:58 -03:00
Adriaan de Groot
950cc9070d [partition] Rename MountPoints to PartitionDialogHelpers
This file is full of helper functions for the partition-editing
dialogs. At first it was just mount-point helper functions,
but there is other functionality that can be refactored.
2018-05-16 08:34:33 -04:00
Adriaan de Groot
fda2e54e0f [partition] Refactor filling combobox with moint points
- Move to one place which handles the standard mount points
 - While here, introduce explicit "(no mount point)" string
   into the combo box. This is prep-work for issue #951.
2018-05-15 05:40:52 -04:00
Adriaan de Groot
58252fc16d [partition] Handle missing requirements by disabling the module 2018-01-10 09:05:15 -05:00
Adriaan de Groot
cc15dd9ec7 Merge branch 'master' into kpmcore-3.2
- Pull in Master, merge README, to simplify merging this
   branch into master (soon-ish, once kpmcore 3.3 becomes available
   in builders)
2017-12-15 07:18:05 -05:00
Andrius Štikonas
a2e3af2b3d Require KPMcore 3.3 2017-12-15 11:38:38 +00:00
Andrius Štikonas
1620f6a668 Merge branch 'master' into lvm2 2017-11-11 21:30:49 +00:00
Adriaan de Groot
105e06798e CMake: look for ECM at top-level, add to search path if found. 2017-11-01 05:50:04 -04:00
Adriaan de Groot
b303acf12a Merge branch '3.1.x-stable'
- KPMCore code moved
 - Small fixes
2017-10-31 06:44:14 -04:00
Adriaan de Groot
5474dc6d2b [partition] allow KPMcore 3.0.2 (with warning) 2017-10-30 11:43:37 -04:00
Andrius Štikonas
fb1522f6ca Use KPMcore Resize Operation. 2017-10-27 14:00:32 +01:00
Adriaan de Groot
5e101bcbf9 Document KPMCore versions that make sense
- KPMCore 3.0.2 works, but contains specific bugs
2017-10-24 12:53:55 -04:00
Adriaan de Groot
3f739563ef Drop KService requirements (it's still there in InteractiveTerminal) 2017-10-04 08:46:12 -04:00
Andrius Štikonas
68e940f0bf Remove unnecessary KIO and KIconThemes dependencies. 2017-09-30 18:18:25 +01:00
Adriaan de Groot
ca037af6ca KPMCore: update required version to 3.2
- drop extra checks for blkid and atasmart, those are kpmcore's
   concern, not ours (and it might have other backends, anyway)
2017-09-30 16:48:37 +02:00
Adriaan de Groot
ec86922839 Find KPMCore 3.2 quietly, less frightening 2017-09-13 07:01:19 -04:00