Commit Graph

201 Commits

Author SHA1 Message Date
Adriaan de Groot
cbfdd8690d Python-i18n: WIP, moving API to libcalamares.utils 2017-08-15 12:31:47 +02:00
Adriaan de Groot
b922d88b0f Python-i18n: add a gettext_path for python job modules 2017-08-10 15:39:24 -04:00
Adriaan de Groot
34b96148ae Python: at beginning of job, if pretty status has changed, emit progress to update it in the UI. 2017-07-10 11:58:57 -04:00
Adriaan de Groot
11e5a6cbe0 Python: trim description to the first line of run.__doc__ 2017-07-10 11:58:57 -04:00
Adriaan de Groot
a72cc0eeb4 Python: use the module run().__doc__ as a pretty description. 2017-07-05 06:46:29 -04:00
Adriaan de Groot
f12ae5db3b Python: get docstring from run() method 2017-07-05 06:46:29 -04:00
Adriaan de Groot
75b5303b49 i18n: stop trying to install Qt translations 2017-06-29 06:29:29 -04:00
Adriaan de Groot
5cd328dad3 Clang: if we're going to crash on purpose, crash the C++ way 2017-06-28 08:44:59 -04:00
Adriaan de Groot
0d884869e5 Clang: reduce warnings about code-documentation 2017-06-27 07:17:40 -04:00
Adriaan de Groot
f2d2218070 Clang: fix warning about implict copy-ctor with explicit move-ctor 2017-06-27 07:15:31 -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
2148538fac Clang: reduce warnings 2017-06-21 07:28:38 -04:00
Adriaan de Groot
d29acf4a06 Logging: add a global storage dump method 2017-06-06 09:22:21 -04:00
Teo Mrnjavac
6c7cdb5f50 Documentation++ 2017-03-01 13:35:06 +01:00
Teo Mrnjavac
b1c67f429f Update headers. 2016-12-16 17:03:13 +01:00
Teo Mrnjavac
99ca3d768d Expose translator locale name. 2016-12-16 17:03:13 +01:00
Teo Mrnjavac
3170067089 Make JobResult inheritable and remove obsolete Status enum. 2016-12-16 17:03:00 +01:00
Teo Mrnjavac
0f734c8c5c Make sure to only call Py_Initialize if Python is not initialized. 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
Teo Mrnjavac
ada620effc Find PythonQt. 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
Jonathan Carter
c83ca9af44 Fix spelling mistake in kdsingleapplicationguard.cpp (#257)
s/emty/empty/g.
2016-09-12 07:56:13 +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
0684a761bd Copyright. 2016-08-19 12:49:36 +02:00
Teo Mrnjavac
d99d7bfdff Expose CalamaresUtils::obscure as libcalamares.utils.obscure. 2016-08-19 12:49:36 +02:00
Teo Mrnjavac
f8078be2fd Wrap CalamaresUtils::obscure in CalamaresPython. 2016-08-19 12:49:36 +02:00
shainer
2349f7125e Add conversion utilities from QHash to py dict. When translating from pydict, however, translate into a QMap as before to keep current behaviour. 2016-07-04 22:30:45 +01:00
Teo Mrnjavac
9fb9aaf6e4 Install CrashReporter handler. 2016-03-23 18:48:08 +01:00
Teo Mrnjavac
fe1e1cb3c0 Export WITH_KCRASH in CalamaresConfig.h.in. 2016-03-16 12:19:19 +01:00
Teo Mrnjavac
576fdcc7a0 Print log file path. 2016-01-14 15:32:52 +01:00
Teo Mrnjavac
e59418e880 Add crash utility to CalamaresUtils. 2015-12-30 17:27:02 +01:00
Teo Mrnjavac
baa3553db5 Add CalamaresUtils::obscure. 2015-09-25 15:24:59 +02:00
Teo Mrnjavac
834299f785 There are no Phases any more, just a ModuleAction for a module. 2015-09-15 16:48:42 +02:00
Teo Mrnjavac
9cb4e60b31 Namespace fixage. 2015-09-15 16:48:42 +02:00
Teo Mrnjavac
1534b0a27c Try to fix dontChroot command execution. 2015-09-15 16:48:41 +02:00
Teo Mrnjavac
a4ea7e65a2 Try running no-chroot commands in env rather than sh -c. 2015-09-15 16:48:41 +02:00
Rohan Garg
ca393d0a44 Set the default rootMountPoint when not chroot'ing 2015-09-15 16:48:41 +02:00
Teo Mrnjavac
7212aaec74 Fix the last fix. 2015-09-15 16:48:41 +02:00
Teo Mrnjavac
d8818e0280 Fix non-chroot target env call. 2015-09-15 16:48:41 +02:00
Teo Mrnjavac
42e465aa10 CalamaresUtils::System is now a class. 2015-09-15 16:48:41 +02:00
Teo Mrnjavac
0803d86c40 Don't duplicate code. 2015-09-15 16:48:41 +02:00
Teo Mrnjavac
2e3751ffa7 If dont-chroot is set, don't chroot target env calls. 2015-09-15 16:48:41 +02:00
Teo Mrnjavac
bf885d65db chroot calls are now generic "target env" calls. 2015-09-15 16:48:41 +02:00
Teo Mrnjavac
326671a3d6 Remove dead (unreachable) code. 2015-06-13 21:31:32 +02:00
Teo Mrnjavac
b9dbf668f3 Initialize previously uninitialized scalar. 2015-06-13 21:31:06 +02:00
Teo Mrnjavac
30a840ceb0 Fix issue with changed() never being emitted on remove in GS. 2015-06-13 21:30:25 +02:00
Teo Mrnjavac
eae237211f Add prettyStatusMessage to {Python,Process}Job. 2015-06-13 02:23:11 +02:00
Teo Mrnjavac
b0d52fb928 Use it in JobQueue. 2015-06-13 02:03:57 +02:00
Teo Mrnjavac
18a9e0db48 Add optional prettyStatusMessage to Job. 2015-06-13 02:03:35 +02:00
Teo Mrnjavac
659a388688 Improve job status reporting. 2015-06-13 01:16:11 +02:00
Teo Mrnjavac
5e2f6ff2b8 Detect physical memory, with dmidecode and meminfo as backup. 2015-06-10 00:06:45 +02:00
Teo Mrnjavac
09ae0bcbd6 Add branding translations support to CalamaresUtils::installTranslator. 2015-05-07 16:10:42 +02:00
Teo Mrnjavac
8a02522d60 Add CALAMARES_RETRANSLATE_WIDGET 2015-05-07 16:10:42 +02:00
Teo Mrnjavac
d45d436161 Add optional prettyDescription to Job. 2015-04-13 14:58:33 +02:00
Teo Mrnjavac
8b98b1cc24 Do not filter out LanguageChange events when in a RETRANSLATE functor. 2015-04-08 18:25:03 +02:00
Teo Mrnjavac
52528f650c JobQueue emits queueChanged. 2015-03-10 19:51:08 +01:00
Teo Mrnjavac
edb21e05af New GlobalStoragePythonWrapper is passed to the Python API.
This allows us to make GlobalStorage a QObject, with disabled copy
constructor. And thanks to this change, GlobalStorage now emits
changed() every time an insert or remove is performed.
2015-03-10 19:51:08 +01:00
Teo Mrnjavac
d1c4976ee6 Copyright. 2015-03-10 19:51:08 +01:00
Teo Mrnjavac
d8ca5eee5b Friend DebugWindow to GlobalStorage for future use. 2015-03-10 19:51:08 +01:00
Gormogon
e2d05cb9f2 Align Pointers 2015-02-25 19:57:19 -05:00
Teo Mrnjavac
b8b41bdfdd Fix execution environment and error reporting in ProcessJob. 2015-02-25 13:44:55 +01:00
Teo Mrnjavac
9622888d1d Load QML modules in a central place + dummy QML slideshow. 2015-01-23 20:24:45 +01:00
Kevin Kofler
00604a8bca PythonHelper: Add support for bool.
Convert Python bool type from/to C++/QVariant bool (QVariant::Bool) in
PythonHelper::variantToPyObject and PythonHelper::variantFromPyObject.

This fixes the "override" option and any booleans in the "defaults" list
in grubcfg.conf.
2014-11-18 05:34:01 +01:00
Kevin Kofler
7478c1266b Point the lib/calamares/libcalamares.so symlink to the versioned so.
Point the lib/calamares/libcalamares.so symlink for the Python modules
directly to the versioned lib/libcalamares.so.VERSION library rather
than to the lib/libcalamares.so symlink. This allows distributions to
install the lib/libcalamares.so symlink to a development package and
only ship lib/libcalamares.so.VERSION and lib/calamares/libcalamares.so
in the runtime package. It is also marginally faster (because only one
level of symlinks has to be resolved instead of two).

(I know this works because I have been manually fixing up this symlink
in the Fedora specfile so far.)
2014-11-14 12:30:56 +01:00
Teo Mrnjavac
8575240b95 Capture by-val in Retranslator macro. 2014-11-11 17:05:56 +01:00
Teo Mrnjavac
e5c3888be2 Allow multiple CALAMARES_RETRANSLATE blocks in the same widget. 2014-11-11 15:12:44 +01:00
Teo Mrnjavac
945b59748a Add RETRANSLATE macro to CalamaresUtils::Retranslator. 2014-11-11 15:12:44 +01:00
Teo Mrnjavac
08b90e975b Add retranslator class to CalamaresUtils. 2014-11-11 12:44:32 +01:00
Teo Mrnjavac
8b343ace4a QTranslator switching in CalamaresUtils. 2014-11-10 12:26:03 +01:00
Teo Mrnjavac
8026a287d3 Shut up Qt lupdate warnings. 2014-10-29 13:06:52 +01:00
Teo Mrnjavac
633c8512c2 Try to make compile on Qt 5.4 2014-10-28 18:20:28 +01:00
Teo Mrnjavac
a97297a3fe Attempt to fix #125 2014-10-28 12:02:08 +01:00
Teo Mrnjavac
d97bb47f09 Add proper QResrouce system to libcalamaresui, finish up prepare checks
This also adds ImageRegistry, a SVG cache, a bunch of utility functions
for shared pixmaps in CalamaresUtilsGui and renames several qrc files
in viewmodules.
2014-08-26 18:24:51 +02:00
Pier Luigi Fiorini
f0921a41b2 Try to find settings.conf from SYSCONFDIR
Honor SYSCONFDIR as specified by CMake arguments instead of
using a hard-coded path.

Since GNUInstallDirs set CMAKE_INSTALL_FULL_SYSCONFDIR to
CMAKE_INSTALL_PREFIX/etc we need to change the default ourselves.
2014-08-20 11:48:30 +02:00
Teo Mrnjavac
ec7edc4b83 Improve diacritics transliteration. 2014-08-19 11:14:26 +02:00
Teo Mrnjavac
6295f48ab7 Add removeDiacritics function to CalamaresUtils. 2014-08-13 17:15:56 +02:00
Teo Mrnjavac
7a3ce363b3 Add option to run process jobmodules in chroot. 2014-08-12 14:26:10 +02:00
Teo Mrnjavac
eb6b8ac613 Add check_chroot_output to Python interface. 2014-08-08 14:20:09 +02:00
Teo Mrnjavac
f90bf469dd Add chrootOutput/check_chroot_output to libcalamares utils API. 2014-08-08 14:17:34 +02:00
Aurélien Gâteau
1c9265cd21 Merge branch 'wip/resize-partition' 2014-08-07 17:40:03 +02:00
Teo Mrnjavac
5400afa540 Fix settings.conf loading. 2014-08-06 17:23:40 +02:00
Aurélien Gâteau
249a28910a Make it possible to update message and details fields of a JobResult 2014-08-05 17:37:24 +02:00
Teo Mrnjavac
84ec430729 Add some Python API docs. 2014-08-05 13:23:04 +02:00
Teo Mrnjavac
01efeda801 Utils, not util. 2014-08-04 17:06:16 +02:00
Teo Mrnjavac
c964093d7c Make libcalamares a proper package and utils a proper submodule. 2014-08-04 17:05:00 +02:00
Teo Mrnjavac
c64e229142 By default, chrootCall should never time out. 2014-08-04 16:23:12 +02:00
Teo Mrnjavac
45ac91c784 Add check_chroot_call to libcalamares Python interface. 2014-08-04 16:06:29 +02:00
Aurélien Gâteau
26e5500e33 chrootCall: Log messages on failure, as well as command outputs 2014-08-01 17:26:18 +02:00
Aurélien Gâteau
6376e1daef Start the process before calling waitForStarted() 2014-08-01 17:26:18 +02:00
Aurélien Gâteau
70a13fc588 Make logging more useful
- Do not log progress percent but log job names.
- Log install failures.
2014-08-01 17:26:18 +02:00
Aurélien Gâteau
45101d15b0 Store log in ~/.cache by default 2014-08-01 11:36:22 +02:00
Aurélien Gâteau
1b695b7355 Fix crash when logging at exit time 2014-08-01 10:56:30 +02:00
Aurélien Gâteau
90670f8b46 Improve formatting of error messages 2014-08-01 09:56:40 +02:00
Teo Mrnjavac
e7e57689d8 Make sure chrootCall with args list actually passes the args as list. 2014-07-30 12:43:15 +02:00
Teo Mrnjavac
63534f7154 Add mount and chrootCall utilities to libcalamares + Python wrappers. 2014-07-29 20:21:40 +02:00
Teo Mrnjavac
fb328494b3 Make the libcalamares Python API better for PEP8 2014-07-29 13:16:46 +02:00
Teo Mrnjavac
845ae05f7e Added debug( str ) to the Python API. 2014-07-28 18:56:00 +02:00
Aurélien Gâteau
d30b6300ab Unbreak locating of config file when run without --config 2014-07-28 18:36:24 +02:00
Aurélien Gâteau
289704ab90 Make it possible to override the config dir from the command line 2014-07-28 18:12:08 +02:00
Teo Mrnjavac
87ee2b8b8c Improve error reporting for Python jobs. 2014-07-28 17:40:57 +02:00