5915 Commits (e7dedbbfe0363aa0ff0256d48d30c66bc960cf10)
 

Author SHA1 Message Date
Adriaan de Groot e7dedbbfe0 [libcalamaresui] Apply coding style to remainder 6 years ago
Adriaan de Groot d44e8f6115 [libcalamaresui] Apply coding style to viewpages/ 6 years ago
Adriaan de Groot 6f74463a80 [libcalamaresui] Apply coding style to utils/ 6 years ago
Adriaan de Groot 1b6aed8c40 [libcalamaresui] Apply coding style to modulesystem/ 6 years ago
Adriaan de Groot 6224d6605b [libcalamaresui] Apply coding style to widgets/ 6 years ago
Adriaan de Groot 27c3a5a11d [calamares] Apply coding style 6 years ago
Adriaan de Groot f31ff8b9ea [libcalamares] Apply coding style to PluginFactory 6 years ago
Adriaan de Groot ccd707b23a [libcalamares] Apply coding style
- .. or, rather, avoid re-formatting tables in future.
6 years ago
Adriaan de Groot 09a36cd669
Merge pull request #1221 from a-wai/add-base-10-sizes
Add 'base 10' partition size multiples
6 years ago
Adriaan de Groot c57a30c73f Changes: credit where due for recent PRs 6 years ago
Adriaan de Groot 54767812fe
Merge pull request #1218 from a-wai/fix-unpackfs
Fix error in unpackfs
6 years ago
Arnaud Ferraris a51d612afa Revert "libcalamares: Align partition sizes on actual sectors"
This reverts commit 40202705ff.
6 years ago
Adriaan de Groot 1d047839c7
Merge pull request #1220 from a-wai/prevent-int-overflow
Prevent integer overflow when parsing configuration
6 years ago
Adriaan de Groot c53b59c504 Merge branch 'require-kcoreaddons'
Require KCoreAddons. This is one of the KDE Frameworks, small
and lightweight libraries adding functionality on top of Qt.

Since lots of **other** parts of Calamares require KDE Frameworks,
including the partitioning module, requiring a tier-1 for
basic functionality seems reasonable.

This brings:
 - using KPluginLoader instead of an ancient fork
 - availability of KMacroExpander everywhere
 - kaboutdata (needed for KCrash anyway)
 - kjobs (need to look into using those as a base for Calamares jobs)
6 years ago
Arnaud Ferraris 40202705ff libcalamares: Align partition sizes on actual sectors
Currently, the `bytesToSectors()` function rounds a partition size to the
nearest MiB unit, which may lead to inconsistencies when a partition
is expected to only be a few KiB's.

This patch changes the behaviour of `bytesToSectors()` so that it aligns
on sector size, without rounding the partition size to a multiple of
1MiB.

Signed-off-by: Arnaud Ferraris <arnaud.ferraris@collabora.com>
6 years ago
Arnaud Ferraris 209e8331b7 libcalamares: Add support for KB/MB/GB size units
Currently, all size units are expressed as KiB, MiB or GiB (resp. 2^10,
2^20 or 2^30).

In order to maximize compatibility and consistent results with other
partitioning tools, this commit adds support for sizes expressed as KB,
MB or GB (resp. 10^3, 10^6 or 10^9).

This change won't affect existing users, it simply adds a new option
that wasn't previously handled.

Signed-off-by: Arnaud Ferraris <arnaud.ferraris@collabora.com>
6 years ago
Adriaan de Groot 0716a46eb2 [libcalamares] Switch to using KPluginFactory
- this is not entirely straightfoward, since  we need
   different constructor arguments for the objects
   Calamares creates (no QVariantList& args, in particular).
   Implement our own registerPlugin() and createInstance()
   for that.
 - work around a bug in K_PLUGIN_FACTORY_DECLARATION_WITH_BASEFACTORY
6 years ago
Arnaud Ferraris 3929557a5a welcome: Fix requirements parsing
As the config files integer are now of type `QVariant::LongLong` instead
of `QVariant::Int`, requirements relying on this type were not parsed
correctly.

This patch fixes this, and adds an option to the python conversion to
take into account `QVariant::LongLong` types.

Signed-off-by: Arnaud Ferraris <arnaud.ferraris@collabora.com>
6 years ago
Arnaud Ferraris 0d06e047ae libcalamares: Prevent integer overflows when parsing configuration
Currently, a number of configuration parsing-related functions and
classes use only `int` type for dealing with integers. Should the user
need a bigger integer value, this would result in an erroneous value
being used (`0`), as the correct value would overflow the 32-bits type.

In order to prevent these overflow, this patch replaces `int` with
`qint64` in the following functions & classes :

  * CalamaresUtils::yamlScalarToVariant()
  * CalamaresUtils::getInteger
  * NamedSuffix
  * PartitionSize

This way, sizes or other integer values greater than 2^31 (for signed
types) can be used.

Signed-off-by: Arnaud Ferraris <arnaud.ferraris@collabora.com>
6 years ago
Arnaud Rebillout 2ab45cf4f0 Make sure that variable num_files_total_local is declared
This variable is declared in `if m:`. Of course if this codepath doesn't
run, the variable is not declared an Python doesn't like this kind of
surprise...

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
6 years ago
Adriaan de Groot 9098f8d741 Changes: document KCoreAddons dependency 6 years ago
Adriaan de Groot 1711071c58 [libcalamares] Swap out own PluginLoader for KCoreAddons 6 years ago
Adriaan de Groot 44991e700b [libcalamaresui] Check KCoreAddons version directly 6 years ago
Adriaan de Groot bcb7f17584 [calamares] Make KCoreAddons a requirement
- Require KCoreAddons for KAboutData (also, optionally, for KOSRelease)
6 years ago
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.
6 years ago
Adriaan de Groot 8c78a6cdfa Documentation: match stated requirements with CMakeLists.txt 6 years ago
Adriaan de Groot 08a08f9b54 [calamares] Minor optimizations and documentation
- document the data structure; for the vector V (called m_rows)
   the values are V_i < i, so that enables microscopic optimizations.
6 years ago
Adriaan de Groot 96ef488f1b [calamares] Clean up VariantModel
- stop compiler warnings with some judicious casting;
   that's what you get when a container indexed by int
   stored those indexes as quintptr.
 - apply coding style
6 years ago
Adriaan de Groot 8a7f32d3aa [libcalamaresui] Polish ImageRegistry
- do static initialization more carefully
 - float -> qreal (double) because that's what the Qt API expects,
   to reduce type-conversion warnings
 - apply current coding style
6 years ago
Adriaan de Groot ec08a293b2 [libcalamaresui] Reduce compile warnings
- "this" isn't used in the lambda; in future it might be if the
   lambda needs to get the configuration from settings.
6 years ago
Adriaan de Groot 91d327b224 [libcalamaresui] Paste TCP port is quint16
- no sense in feeding in an int (and getting a compiler warning
   for narrowing) into something that by spec is a 16-bit value.
6 years ago
Adriaan de Groot 41173360a7 [libcalamares] We're just testing file modes, not whole int range 6 years ago
Adriaan de Groot 76041a2184 [dummycpp] Reduce warnings and apply coding style
- tired of the (IMO, bogus) clang warnings from the
   switch() statement with a default:, so swap it out for
   some cascaded ifs.
6 years ago
Adriaan de Groot e81bd52fb5 [initcpio] [initramfs] Set compilation options on tests
- calamares_automoc() sets AUTOMOC, but also adds some flags
   to avoid compilation warnings from the generated MOC code.
 - drop weird hard-coded include paths
6 years ago
Adriaan de Groot 739363cecd [libcalamaresui] Fix initialization order (reduce warnings) 6 years ago
Adriaan de Groot 6f73151786 [libcalamares] Reduce warnings
- Although milliseconds::count() is long long, we pass it to
   a Qt interface that only takes int; let's assume we have
   only a 32-bit count, since a timeout of 4 billion milliseconds
   is roughly 46 days, which we'll just call "no timeout".
6 years ago
Adriaan de Groot dc09c5700b [calamares] Remove unreachable return 6 years ago
Adriaan de Groot f5af4818fb [calamares] Apply current coding style 6 years ago
Adriaan de Groot ea0acf1606 [calamares] Apply current coding style 6 years ago
Adriaan de Groot 3ac7a7323c Merge branch 'replace-debug-models' 6 years ago
Adriaan de Groot ab7a559e03 [calamares] Add headerData to model (Key, Value columns) 6 years ago
Adriaan de Groot eba4dc8df1 [calamares] Use VariantModel instead of QJsonModel
- Drop the round-trip of forming a JSON document from a QVariant,
   then parsing the document into JSON objects and building a
   model out of that. View the Variant directly.
6 years ago
Adriaan de Groot 2bd03ad3c0 [calamares] Add reload() to update model after underlying data 6 years ago
Adriaan de Groot 2a3ab4dbe7 [calamares] Add a model for viewing QVariants directly 6 years ago
Adriaan de Groot e31a498c9b [calamares] Move DebugWindow
- This is a fairly specialized class, for use only in the
   whole-application where it ties in with the module system.
   Move it to the application directory and slim down the UI library.
 - Include it from the new location.
 - Add UIC to Calamares (the application) because there's now
   a designer-based widget in it.
6 years ago
Adriaan de Groot 85d28af1e2 [libcalamaresui] Don't include QJsonModel 6 years ago
Adriaan de Groot 419329ee49 [libcalamares] Remove friend, add accessor, make includes explicit 6 years ago
Adriaan de Groot 695e16bb87 [libcalamaresui] Drop QJsonModel from the library 6 years ago
Adriaan de Groot 17dfe02d28 [3rdparty] Remove QJsonModel and support 6 years ago
Adriaan de Groot 8bd1e93968 Merge branch 'move-3rdparty' 6 years ago