4082 Commits (7be33b8196758c72c023a77f30ce335e4d96b5d2)

Author SHA1 Message Date
Adriaan de Groot 7be33b8196 [libcalamares] runCommand doesn't need queue or settings
- JobQueue is only needed to get global settings, which are needed
   when running in the target; for host commands, allow running
   without a queue.
 - Settings is needed for the value of debugsettings; assume if
   there's no settings object, that we're in a test and should
   print debugging information.
7 years ago
Adriaan de Groot 5a835f32b8 [libcalamares] Start extending tests to runCommand() 7 years ago
Adriaan de Groot 07a59bd09c [libcalamares] All commands with workingDirectory failed
- This is the same as EFAIL: a block is indented as if it's a multi-
   line else block. This isn't Python though, and the return always
   applies.
 - Add the necessary braces.
 - Apparently noone uses this code path (until ProcessJob was re-
   factored to do so).
7 years ago
Adriaan de Groot d7f5134121 [libcalamares] Be more verbose in error situations
- runCommand can return NoWorkingDirectory in multiple places,
   make sure the log contains a more specific reason.
7 years ago
Adriaan de Groot b587d77e31 [libcalamares] Fix untranslatable string.
- This would substitue an untranslated "in chroot" into the
   translated string, which is weird.
7 years ago
Adriaan de Groot 6055f08aff [libcalamares] Refactor ProcessJob
- Use the system runCommand() instead of a 90% copy of it.
   This **does** change the overall command to `env /bin/sh -c`
   rather than running only `/bin/sh -c`, though.
7 years ago
Adriaan de Groot 92d03c2cf7 [libcalamares] Introduce enum class for special process exit values
- Replace magic numbers like -3 with named enum values
   (NoWorkingDirectory, for -3).
 - Downside is big-ugly static_casts, but that's what you get
   for having an int as return value for processes.
7 years ago
Adriaan de Groot 61b78d8895 [libcalamares] Stop job threads before exit
- This solves a crash where the thread is destroyed while still
   running (e.g. cancelling during install).
 - The thread might not cooperate in being terminated, but then we
   have a bigger problem anyway (and Calamares will still crash on
   exit).

FIXES #1164
7 years ago
Calamares CI bbc0edecd3 i18n: [dummypythonqt] Automatic merge of Transifex translations 7 years ago
Adriaan de Groot 3335c2003e [fsresizer] Fix tests
- Again? The checks on the job name (using filesystem or device
   name) all looked very bogus, unless it was previously not
   setting them at all.
7 years ago
Adriaan de Groot f54b7dee9f [welcome] Use convenience image loader from Branding 7 years ago
Adriaan de Groot 07c638ed48 [welcome] Allow theming the international language-select icon 7 years ago
Adriaan de Groot 75ce391e7e [libcalamaresui] Add branding-aware function for loading image by name 7 years ago
Adriaan de Groot 1438729b72 [libcalamaresui] Do filename checks more sanely
- check directory exists before trying to open file from it
 - re-use the componentDir already found for later tests.
7 years ago
Adriaan de Groot 69dabcae32 [libcalamares] Avoid static destructor
- The static destructor issues a warning on exit:
       QBasicTimer::start: QBasicTimer can only be used with threads
       started with QThread
   so instead, heap-allocate the model. This leaks memory, but
   it's a singleton *and* we're exiting anyway.
7 years ago
Adriaan de Groot a263381996 [partition] Avoid an assert when running Calamares as user. 7 years ago
Adriaan de Groot 4a6b9f3528 [partition] Call update from init() in BootLoaderModel
- update() (might) add some extra rows for boot and root,
   which otherwise vanish temporarily when calling init.
7 years ago
Adriaan de Groot d5f0bdd28c [partition] Simplify negative logic
- Instead of multiple continue statements to avoid negative cases,
   state the one positive case instead.
7 years ago
Adriaan de Groot 3bdbfe6bff [partition] Avoid crash if combobox is gone and model resets
- Since the lambda is connected to the model only, it should
   check that the target combo exists as well.
7 years ago
Adriaan de Groot 2ce2b08027 [partition] Indent lambdas to tab-stop.
- Lambdas are all over the place in this codebase, formulate
   a standard and start adjusting code to it in passing.
7 years ago
Adriaan de Groot 353e713f81 [partition] Complain loudly on dangling Partition pointers
- Don't crash if a bad pointer gets into colorutils.
7 years ago
Adriaan de Groot 2bc95d11d3 [partition] Unrelated typo in comment 7 years ago
Adriaan de Groot f1f5b6c1bb [partition] Restore BootLoader path in Choice Page
- after model resets, restore what was previously selected.
 - This avoids having an **empty** combobox, SEE #1141 but does
   not actually set it back to the value the user had previously
   picked (e.g. changing swap settings **still** breaks the
   selection).
7 years ago
Adriaan de Groot 0ebabfafd4 [partition] Move BootLoaderModel convenience functions
- These were hidden inside PartitionPage, but are useful elsewhere.
7 years ago
Adriaan de Groot 8d451622db [partition] Idiomatic use of Calamares::JobList 7 years ago
Adriaan de Groot e2b71e669e [partition] When running UNSAFE, no-install-partition is a warning 7 years ago
Adriaan de Groot 95009a5222 [libcalamaresui] Fix disable-cancel behavior
- d78bc0c5 added an early `return false` when cancel is disabled,
   before checking if we were at the last step; so last-step
   didn't get any special handling.
 - refactor so that last-step now gets special handling first,
   **then** disable-cancel handling, and then the usual case.
7 years ago
Adriaan de Groot 0c24a01eb9 [finished] Improve logging of restart mode
- Don't use weirdly-named mode, store named mode in page,
 - Log the actual mode name when setting up the restart button.
7 years ago
Adriaan de Groot 38c36e2439 [finished] Use idiomatic Calamares::JobList 7 years ago
Adriaan de Groot 1915547004 [finished] Improve logging when restarting. 7 years ago
Calamares CI 644aade0f5 i18n: [dummypythonqt] Automatic merge of Transifex translations 7 years ago
Adriaan de Groot 2e39f24bb0 [libcalamaresui] Make sure finished() is processed once
- Avoid races which might double-delete the timer, or enter
   the if twice (which would lead to duplicate emissions of
   requirementsComplete and the associated UI glitches).
7 years ago
Adriaan de Groot 2b91608b82 [libcalamaresui] Avoid requirements-results UI duplication
If the requirements checking is **really fast**, e.g. you don't
have a check for internet connectivity, then the checks
might be done as fast as the 0-timeout single-shot timer,
which means that finished() is called once by the QFutureWatcher,
and then after that by the QTimer .. leading to two messages
"All requirements have been checked", but also twice
requirementsComplete being emitted, so you end up with two
results lists being added by the CheckerContainer.

Stop that by using the results-progress timer as an additional
flag: the first time everything is complete, delete that timer
and set the pointer back to nullptr.
7 years ago
Adriaan de Groot f64e55f0dc [libcalamaresui] Use meaningful asserts
- In debug mode, hitting assert(false) is meaningless,
 - In release mode, the assert is optimized out.
 - So assert the condition we're actually testing, for better messages.
7 years ago
Adriaan de Groot 976ad7e3e7 [libcalamaresui] Look up icons via theme
- Don't cache icons, because they could be changed via
   the active desktop theme.
7 years ago
Adriaan de Groot 822bbaad9c [libcalamaresui] Allow icon names in branding images
- It's ok to use path / filenames in images, but you can also
   use icon names according to the FDO icon spec. This makes
   sense for at least *productLogo*, possibly *productIcon*, but
   not really for *productWelcome*.
7 years ago
Adriaan de Groot b41cac6556 [interactiveterminal] Warn when called in exec: context
FIXES #1157
7 years ago
Adriaan de Groot 7f5e61480b [calamares] Once the steps are loaded, activate the first view step
- Using next and back buttons calls onActivate() on the view step
   that you end up on.
 - The first view step to be shown, though, doesn't get an onActivate()
   (unless you go, say, next and then back).
 - Explicitly call onActivate() on the first view step once they're
   all loaded.

FIXES #1156
7 years ago
Adriaan de Groot 36fe3ed188 [packages] Add -Su --noconfirm
- When updating the system (-Su) it may want to install newer
   packages; it asks for confirmation before doing so.

FIXES #1154
7 years ago
Adriaan de Groot c741470b60 [calamares] Name the debug button for styling purposes 7 years ago
Adriaan de Groot cd38ded8d5 [libcalamaresui] Support os-release substitutions in images
- Branding images might want to use os-release data as well.
 - Refactor a little to keep the number of #ifdefs the same;
   an intermediate expand() lambda handles expansion (or not,
   if it's not enabled).

FIXES #1153
7 years ago
Adriaan de Groot 368e7aac16 Merge branch 'issue-1149' 7 years ago
Adriaan de Groot 18b111218a [libcalamaresui] Sort includes in DebugWindow.cpp 7 years ago
Adriaan de Groot ac941e6756 [libcalamares] Implement reload-stylesheet
- From the debug-window, clicking *reload stylesheet* does just
   that, and applies the new stylesheet to the Calamares window.
 - Remove stylesheet caching from the Branding class; we only
   need the sheet once (on Calamares startup) or when updating
   the stylesheet, which is seldom-enough that we don't need
   to keep an extra copy around.
 - To use, start Calamares, open the debug window, open stylesheet.qss
   in an editor. Make changes, save, then click *reload stylesheet*.

SEE #1149
7 years ago
Adriaan de Groot 877cb0e999 [libcalamaresui] Debug-tool to dump widget tree
- Adds another tool to the debug window, which dumps (to the debug
   log) a tree-like view of all the widgets in the application.
   This can be used when writing stylesheets.
7 years ago
Adriaan de Groot b5625fc14d [libcalamares] Add a reload-stylesheet button
- This is a debugging-option to test stylesheet changes quickly.
 - Right now, the stylesheet is cached, so it doesn't even work.
7 years ago
Calamares CI a1f7cb4f49 i18n: [dummypythonqt] Automatic merge of Transifex translations 7 years ago
Adriaan de Groot ee3a2bcbe8 CMake: tidy
- remove weird message about debugging updates
 - add some space after the QML dirs information
7 years ago
Adriaan de Groot 38485f675c [branding] In the stylesheet, mention how styling works
SEE #1149
7 years ago
Adriaan de Groot 6a7c2f541e [branding] Mention the stylesheet in the docs 7 years ago