Adriaan de Groot
5a07f6ef8a
Merge branch 'master' into requirements-checking
2017-11-29 09:02:07 -05:00
Adriaan de Groot
2d31e987c0
[libcalamaresui] Unrelated typedef for JobList
2017-11-03 11:02:06 -04:00
Adriaan de Groot
8917d153da
Drop the (inter-)module dependencies system.
...
- Was marked incomplete and unused; none of the existing modules
set any requirements, and the descriptors are not set up to
hold the requirements information anyway.
- Dependencies are generally through globalStorage values, or if
there are dependent jobs they should be created in-order by one
source (e.g. though a View or a subclass of CppJob which overrides
jobs() ).
- It is the responsibility of deployers to formulate a settings.conf
that includes all the required modules.
- A 'real' dependency system is going to lead to the introduction
of interface-definitions and a great deal of complexity, for a
use case that can be handled with careful deployment instead.
2017-09-27 05:34:06 -04:00
Adriaan de Groot
866d338894
Clang: warnings--
2017-09-25 16:28:08 +02:00
Adriaan de Groot
337903db09
Clang: reduce warnings about overriden destructors
2017-09-20 09:11:18 -04:00
Adriaan de Groot
13807ceabf
Licensing: add self
...
- to all the files I've touched recently
- to (very incomplete) AUTHORS list
Licensing: add license info to top-level CMakeLists.txt
2017-09-19 15:57:25 +02:00
Adriaan de Groot
ddb6455365
Revert be2338ff0
(intended just to reduce warnings)
...
- keep the calamaresstyle formatting changes,
- drop shadowing and nullptr changes.
FIXES #805
2017-09-18 15:11:18 +02:00
Adriaan de Groot
be2338ff08
Clang: reduce warnings
2017-09-13 08:03:18 -04:00
Adriaan de Groot
463615a1c0
Clang: don't shadow local variable names
2017-09-10 13:22:54 -04:00
Adriaan de Groot
764fb742ba
Clang: clean up documentation markup
2017-09-10 13:22:54 -04:00
Adriaan de Groot
e26d5ab206
Don't leak memory for allocated modules
2017-08-31 04:13:52 -04:00
Adriaan de Groot
2fdccdf090
Merge branch 'simplify-module-desc'
2017-08-02 11:29:58 -04:00
Adriaan de Groot
e3008657c4
Modules: accept 'viewmodule' as alias of 'view', improve logging on error.
2017-08-02 11:05:32 -04:00
Adriaan de Groot
10eaf06f60
Python: Be more descriptive when modules can't be loaded.
2017-07-05 06:30:23 -04:00
Adriaan de Groot
8ea14d7957
Release: add copyright to files I've touched
2017-06-21 08:27:10 -04:00
Adriaan de Groot
14cba59ab3
Logging: distinguish different failures in module instantiation.
2017-06-06 09:10:13 -04:00
Adriaan de Groot
367fe716b3
Configs: empty config files are ok.
...
The default umount.conf contains no keys -- so it isn't a map,
but it is a valid config file. Avoid the warning by accepting
empty files.
FIX 707
2017-06-02 16:10:08 +02:00
Teo Mrnjavac
99a1c2245f
Documentation++
2017-02-28 18:08:20 +01:00
Teo Mrnjavac
de3c94fc97
Useless debug is useless.
2017-02-28 18:08:20 +01:00
Teo Mrnjavac
d3845144bb
Start from empty str for entry point annotation.
2016-12-16 17:03:00 +01:00
Teo Mrnjavac
a3887d268a
Expose global_storage and utils as objects in PythonQt.calamares.
2016-12-16 17:03:00 +01:00
Teo Mrnjavac
9aefeed648
Expose PythonQt.calamares.global_storage.
2016-12-16 17:03:00 +01:00
Teo Mrnjavac
9570bd94e8
Nor this.
2016-12-16 17:03:00 +01:00
Teo Mrnjavac
c618999418
Properly load new PythonQtViewModule.
...
Only initialize Python if it's not initialized yet.
Inject @calamares_module decorator to fetch the entry class.
2016-12-16 17:03:00 +01:00
Teo Mrnjavac
2736ad6e09
User-visible Type and Interface strings in Module.
2016-12-16 17:03:00 +01:00
Teo Mrnjavac
553062fc11
Fix build.
2016-12-16 17:03:00 +01:00
Teo Mrnjavac
2c3b56c803
Link against PythonQt; new PythonQtViewModule stub.
2016-12-16 17:03:00 +01:00
Kevin Kofler
00d9f211f5
Add support for C++/Qt batch job plugins
...
These job plugins work similarly to view modules, with the following
differences:
* These jobs need to link only libcalamares, not libcalamaresui. For
this reason, PluginFactory was moved from libcalamaresui to
libcalamares. (It depends only on QtCore.)
* Instead of deriving from ViewModule, derive from CppJob (which is a
subclass of Job).
* Like process and Python jobs, a job plugin is a single job, whereas a
ViewModule can generate a whole list of jobs.
The CppJob and CppJobModule classes are new. In Module::fromDescriptor,
the combination type=job, intf=qtplugin is now supported and mapped to
CppJobModule.
2016-09-27 17:25:09 +02:00
Teo Mrnjavac
4662c9c877
Remove irrelevant debug output.
2016-09-19 12:34:45 +02:00
Andrius Štikonas
9f0ca042fe
Port away from most cases of Q_FOREACH to C++11 ranged for loop.
...
In order to avoid deep copies, Qt containers over which we iterate must be const
The remaining unported cases require qAsConst (Qt 5.7) or std::as_const (C++17)
2016-09-01 16:46:14 +01:00
Teo Mrnjavac
c1d1e7cb5a
Prevent memory leak on bad module dir (fix Coverity defect 114172).
2016-02-26 13:22:03 +01:00
Teo Mrnjavac
fb44fb97b6
Massive refactor of module loading, configuration, startup, management.
2015-09-15 16:48:42 +02:00
Teo Mrnjavac
3b56c5c9e8
Use safe QTimer::singleShot connection.
2015-09-15 16:48:41 +02:00
Teo Mrnjavac
506e51598d
Do not dereference a nullptr.
2015-06-21 01:39:28 +02:00
Teo Mrnjavac
11f5b729a8
Avoid dereferencing nullptr.
2015-06-14 01:10:50 +02:00
Teo Mrnjavac
df9daf8fec
Avoid accessing nullptr.
2015-06-14 01:02:50 +02:00
Teo Mrnjavac
233d759a00
Initialize all members even in private ctor.
2015-06-13 21:41:49 +02:00
Teo Mrnjavac
8e16bea3d9
Remove unused members.
2015-06-13 21:32:06 +02:00
Teo Mrnjavac
dda7ea211d
Make ModuleManager accessible from outside CalamaresApplication.
2015-03-10 19:51:08 +01:00
Teo Mrnjavac
4e2e964503
Return configurationMap from Module.
2015-03-10 19:51:08 +01:00
Gormogon
e2d05cb9f2
Align Pointers
2015-02-25 19:57:19 -05:00
Teo Mrnjavac
20bc34029d
Copyright.
2015-01-29 22:46:07 +01:00
Teo Mrnjavac
a670de3035
Add currentPhase to ModuleManager.
2015-01-29 22:46:07 +01:00
Teo Mrnjavac
fef448833e
And some more debug output readability improvements.
2014-10-30 17:36:56 +01:00
Teo Mrnjavac
f2f73b2e87
More meaningful debug output.
2014-10-30 17:30:13 +01:00
Teo Mrnjavac
aaa696f543
Even less debug noise.
2014-10-30 17:25:16 +01:00
Teo Mrnjavac
5b01925d99
Remove debug noise.
2014-10-30 16:26:54 +01:00
Teo Mrnjavac
519ba038cf
Fix build on Qt 5.4, again.
2014-10-28 18:30:37 +01:00
Teo Mrnjavac
9ebc881223
Prevent segfault on exit when module not found.
2014-10-07 16:07:28 +02:00
Teo Mrnjavac
7a3ce363b3
Add option to run process jobmodules in chroot.
2014-08-12 14:26:10 +02:00
Aurélien Gâteau
df89a391c4
Do not try to dereference m_viewStep if it's invalid
2014-08-09 09:10:26 +02:00
Teo Mrnjavac
f5b4de67c4
Properly load module config files with an explicit config path.
2014-08-07 18:05:46 +02:00
Teo Mrnjavac
014469c849
Improve logging in Module.cpp
2014-08-06 16:16:25 +02:00
Teo Mrnjavac
8f10c21e5b
Big configuration overhaul.
...
Module descriptors are now module.desc, no configuration allowed inside.
Module config files are <modulename>.conf, installed in
share/calamares/modules.
settings.conf is read from /etc/calamares, then share/calamares, and if
running with --debug also in the current dir.
Module config files are read from /etc/calamares/modules, then
share/calamares/modules, and if running with --debug also in
src/modules/<modulename> relative to the current dir.
2014-08-06 11:54:45 +02:00
Aurélien Gâteau
551a6ff9ba
Fix potential memleak
2014-07-30 22:37:05 +02:00
Aurélien Gâteau
b5b72855c3
Queue module jobs in the order they are listed in the "install" section of settings.conf
2014-07-22 16:54:34 +02:00
Teo Mrnjavac
d9f4c74537
Add support for config map to Python job API.
...
Rename PythonJobHelper ==> CalamaresPython::Helper.
Add QVariant to boost::python::object conversion functions.
Rename some constants in the libcalamares Python API.
2014-07-18 14:36:30 +02:00
Teo Mrnjavac
2f03dfa43b
CalamaresPrivate ==> CalamaresPython
2014-07-18 14:36:30 +02:00
Teo Mrnjavac
50ba57a33a
Add optional Python jobmodules support to libcalamaresui.
2014-07-16 16:09:53 +02:00
Teo Mrnjavac
df9f803572
Actually load the additional config map into the ViewStep.
2014-07-15 11:29:21 +02:00
Teo Mrnjavac
2ef5df314b
Make extra configuration map protected in Module.
2014-07-15 11:27:26 +02:00
Teo Mrnjavac
c7c4e52849
Load additional module-specific configuration into a Module object.
2014-07-14 18:10:48 +02:00
Teo Mrnjavac
2dd88344e5
Instantiate the correct type of module from module.conf.
2014-07-14 14:29:24 +02:00
Teo Mrnjavac
1dca92947c
Add already loaded check to ProcessJobModule
2014-07-14 12:08:41 +02:00
Teo Mrnjavac
8d28a2ea5d
Generalized code path for Phase switching. Also load install modules.
2014-07-12 14:38:33 +02:00
Teo Mrnjavac
84bfb2aa95
Fixes for loading modules by phase.
2014-07-12 13:13:15 +02:00
Teo Mrnjavac
7034985b74
Remove MM:loadModulesPrepare.
2014-07-11 14:41:53 +02:00
Teo Mrnjavac
2e47c248ac
Load modules by phase, in preparation for actually using new settings.
2014-07-11 14:40:15 +02:00
Teo Mrnjavac
a09ab36386
Better settings format, rename a bit of stuff in module loading.
2014-07-11 14:21:50 +02:00
Teo Mrnjavac
1b4d62ef4d
Add ProcessJobModule for loading external commands.
2014-07-10 17:11:03 +02:00
Teo Mrnjavac
8d36a13d92
Style fix.
2014-07-10 16:37:02 +02:00
Teo Mrnjavac
7894bb9462
Module type Core ==> Job, plus const correctness.
2014-07-10 12:27:53 +02:00
Teo Mrnjavac
4ec72f4afb
Refactored calamares_bin into calamares_bin and libcalamaresui.
...
Now linking with -Wl,--no-undefined!
Moved find_package KF5 from the root CMakeLists.txt to the partitioning
module where it belongs. KF5 deps should be limited to plugins.
Lots of random fixage to make stuff link.
Removed CalamaresApplication reference from Settings.
Removed the use of AbstractPage, we don't need it right now.
2014-07-03 18:00:40 +02:00