- link the library privately -- the public API uses QVariantMap
- install FindYAMLCPP just in case
- add yamlcpp explicitly in the few places that really need it
(e.g. netinstall testing the parsing of netinstall.yaml)
- Do all the status indication in one component, but vary
the top-level message based on whether the mandatory
requirements are satisfied.
- Vary color and icon based on each requirement's *mandatory* setting.
- fixes:
12:44:25 [6]: Python Error:
<class 'TypeError'>
'builtin_function_or_method' object is not subscriptable
File "/usr/lib/calamares/modules/rawfs/main.py", line 188, in run
item.copy(filesystems.index(item), len(filesystems))
File "/usr/lib/calamares/modules/rawfs/main.py", line 99, in copy
if libcalamares.job.configuration["bogus"]:
- root_mount_point was used initially for logging c1a139995 (adding new
bootloader job options are to use grub for BIOS, gummiboot for efi set
extra mountpoint when efi is found)
- the trace was removed since 533031b3c ([bootloader] print() does not
log)
- The Python configuration tests sometimes need extra setup, so
do that through a CMakeTests.txt file in the test directory.
- Patch up existing tests:
- grubcfg needs /tmp/calamares/etc/default to exist
- rawfs won't work on FreeBSD because of differences in /proc
- drop the *discard* from filesystems-on-SSD in the standard example
configuration.
- keep the table **with** *discard* around for referece and explanation.
Remember that the example configurations are intended as **examples**,
to document available settings, and do not reflect a sensible
production configuration.
FIXES#1395
clean up obsolete lines in welcomeq.qml
add requirement section from welcome.conf to welcomeq.conf
data shows correctly in Recommended.qml, fails to show any in Requirements.qml if run without admin rights
This makes it possible to remove QML from Calamares, possibly yielding
a smaller, lighter installer; it takes with it the nice slideshow,
modern configurable navigation and the QML UIs built for various modules.
By default, WITH_QML is on and the "normal" feature set is retained.
- look for Qml modules only when WITH_QML is on (the default)
- look for Network, since that's pulled in only implicitly
- disable the QML Calamares models (modules/*q) if no QML is
enabled; longer-term plan is to merge the **pages** back to
the "upstream" modules, and have things be run-time switchable,
but that's not here yet. Also disable the notesqml module when
QML is off.
- The requirements are collected by ModuleManager, checked
by an internal RequirementsChecker and changes to the
requirements state are all signalled from ModuleManager.
By connecting the requirements in the welcome modules' Config
only to their own configs -- and immediately checking them,
which is bad on its own -- we end up with a disconnect between
what the ModuleManager says about requirements, and what
the welcome modules report on.