Commit Graph

5757 Commits

Author SHA1 Message Date
Adriaan de Groot
a6d7fcdadf [calamares] Reformat the rest of the application 2019-06-11 13:44:29 +02:00
Adriaan de Groot
9235499f7f [calamares] Reformat the progresstree
- add { } to single-line blocks
 - group some includes better
 - lines broken at a different length, some shuffling around of
   parameter lists.
2019-06-11 13:44:29 +02:00
Adriaan de Groot
8053bf6f3a CI: use both tools for code-formatting
- astyle can do some things that clang-format doesn't (e.g.
   adding brackets; you need clang-tidy for that),
 - clang-format does a much nicer job with lambdas and certain
   other constructions,
 - allow passing in directories at a time for formatting.
2019-06-11 13:44:29 +02:00
Adriaan de Groot
54c3adb466 CI: add brackets to one-line blocks
- since we mix Python (indentation is important) with C++ (it isn't),
   having indented one-line blocks which suddenly need {} when a
   statment is added is confusing and error-prone. Instead, make
   the blocks explicit, always, in C++.
2019-06-11 13:44:29 +02:00
Adriaan de Groot
94bea9baaf CI: update documentation of debug-levels 2019-06-11 13:44:29 +02:00
Adriaan de Groot
0a1b27fcfa CI: add clang-format as a tool
- update the style guide to require braces around blocks
 - add a clang-format file that is pretty close to the
   astyle configuration
2019-06-11 13:44:29 +02:00
Adriaan de Groot
39675655a0 [calamares] Tidy up include-guard comments 2019-06-11 11:17:44 +02:00
Adriaan de Groot
0d507ec265 [calamares] Tidy up application code
- remove commented code, fix logging around it
 - misplaced include
2019-06-11 11:17:44 +02:00
Adriaan de Groot
7f968e0c83 Merge branch 'issue-1169'
FIXES #1169
2019-06-08 14:39:54 +02:00
Adriaan de Groot
7bda89dac4 Changes: mention issue number in the notes 2019-06-08 14:39:38 +02:00
Adriaan de Groot
1a29555ce0 Changes: document new partition setting 2019-06-08 14:39:17 +02:00
Adriaan de Groot
74432f698f [partition] Allow the requiredStorage setting to propagate
- store into globalStorage if the welcome module hasn't already done so.
 - this ends up used in PartUtils (via globalStorage).
2019-06-08 14:36:11 +02:00
Adriaan de Groot
20c0256932 CI: update AppImage configs
- Use GiB terminology like the example configs already do,
   to match commit 599b34c7
2019-06-08 08:19:08 -04:00
Adriaan de Groot
e6a2cb607f [partition] Add setting for requiredstorage
- If the welcome module isn't used, can set a required amount
   of storage for the installation here.
2019-06-08 07:48:47 -04:00
Adriaan de Groot
b5c50c8d04 [partition] Update canBeReplaced
- Use GiB consistently
 - Provide same kind of debugging information as canBeResized()
2019-06-07 23:19:24 +02:00
Adriaan de Groot
79934aa513 [partition] Use GiB consistently in code 2019-06-07 23:04:24 +02:00
Adriaan de Groot
962776804c [libcalamares] Add BytesToGiB (extends BytesToMiB) 2019-06-07 23:01:18 +02:00
Adriaan de Groot
acf3dbcdcb [partition] Refactor getting the globalStorage value 2019-06-07 22:55:50 +02:00
Adriaan de Groot
3548792d1b [partition] Improve check canBeResized
- Report the globalSettings name properly (with "GiB")
 - Bail out on bad conversion early.
2019-06-07 22:51:33 +02:00
Adriaan de Groot
830e67fae2 Merge branch 'issue-1168'
FIXES #1168
2019-06-07 21:58:51 +02:00
Adriaan de Groot
64ef331562 Changes: document bugfix 2019-06-07 21:58:35 +02:00
Adriaan de Groot
c233bbb23d [libcalamaresui] Handle no-finished-page scenarios
- From an exec section, next() is called automatically when
   all the jobs in that section are done.
 - If there **is** no next section (e.g. there's no finished
   page to show after the exec), then m_steps.at() would assert
   on an out-of-range index.
 - Introdcuce a helper predicate isAtVeryEnd() which handles both
   out-of-range and normal at-the-end scenarios.
 - If there's no page following the exec section, stay with the
   slideshow but update buttons to match the normal last-page
   behavior, and don't ask about cancel (since we're done).
2019-06-07 21:54:07 +02:00
Adriaan de Groot
b23f4f3bb0 Merge branch 'issue-1164'
FIXES #1164
2019-06-07 16:13:07 +02:00
Adriaan de Groot
4f221b41d1 [libcalamares] Close stdin on process jobs
- This avoids processes that wait on stdin, and e.g. improves
   reaction to having just "cat" (no file) in a command, or
   a package manager that asks for input.
2019-06-07 16:11:54 +02:00
Adriaan de Groot
4e13f780f1 [libcalamares] Expand tests for runCommand
- try both with and without a working-directory set, this would have
   shown up the problem with bad indentation much earlier.
2019-06-07 16:00:37 +02:00
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.
2019-06-07 15:53:27 +02:00
Adriaan de Groot
5a835f32b8 [libcalamares] Start extending tests to runCommand() 2019-06-07 13:56:16 +02:00
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).
2019-06-07 13:37:46 +02:00
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.
2019-06-07 13:32:31 +02:00
Adriaan de Groot
b587d77e31 [libcalamares] Fix untranslatable string.
- This would substitue an untranslated "in chroot" into the
   translated string, which is weird.
2019-06-07 12:40:20 +02:00
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.
2019-06-07 12:30:38 +02:00
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.
2019-06-07 12:10:22 +02:00
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
2019-06-07 11:46:08 +02:00
Adriaan de Groot
e49beaea91 CMake: switch WITH_PYTHONQT default to OFF 2019-06-07 10:55:03 +02:00
Adriaan de Groot
0619f19536 CMake: post-release housekeeping 2019-06-07 10:45:53 +02:00
Calamares CI
a7e5488f77 i18n: [python] Automatic merge of Transifex translations 2019-06-07 10:44:02 +02:00
Calamares CI
bbc0edecd3 i18n: [dummypythonqt] Automatic merge of Transifex translations 2019-06-07 10:44:01 +02:00
Calamares CI
21f6ff0e60 i18n: [calamares] Automatic merge of Transifex translations 2019-06-07 10:44:01 +02:00
Adriaan de Groot
40d1856bb1 Changes: remove reference to QML loading, add some issue numbers 2019-06-03 15:04:41 +02:00
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.
2019-06-03 15:00:04 +02:00
Adriaan de Groot
6dc83d692c CMake: pre-release housekeeping 2019-06-03 15:00:04 +02:00
Adriaan de Groot
de34cacadd Document (hoped-for) speedups in slideshow loading. 2019-06-03 15:00:04 +02:00
Calamares CI
bdac6d1e30 i18n: [python] Automatic merge of Transifex translations 2019-06-03 15:00:04 +02:00
Calamares CI
8f553c0b61 i18n: [calamares] Automatic merge of Transifex translations 2019-06-03 15:00:04 +02:00
Adriaan de Groot
2b5cf9e613 [libcalamaresui] There is code in Qt for setting up QML widgets
- The not-publicly documented setContent() method does all the
   parenting and resizing needed; some of this isn't available
   from outside of the widget either.

The QML slideshow now sizes and re-sizes correctly.
2019-06-03 10:38:29 +02:00
Adriaan de Groot
f52d62034b [libcalamaresui] Manual QML loading trickery
- The slideshow item needs a parent to be visible,
 - QML gets size 0,0 unless explicitly sized to the surrounding widget.
2019-06-03 10:18:24 +02:00
Adriaan de Groot
103decab68 [libcalamaresui] Create the slideshow on activation
- Load QML on startup, compile async
 - Create QML component when the page is reached.
 - On leave, stop the slideshow (otherwise, e.g. timers will keep running)

This should move some of the delay from loading a large
slideshow forward as the engine is already initialized when
we reach the install / slideshow page.
2019-06-03 10:16:52 +02:00
Adriaan de Groot
daf2e55246 [branding] Be more chatty in example slideshow
- Log when the timer fires and the slide advances
 - Add a start() function (unused at this moment, will be
   called from C++ at the right time)
2019-06-03 10:16:52 +02:00
Adriaan de Groot
ff03235e33 [libcalamaresui] Load QML on startup 2019-06-02 13:19:16 +02:00
Adriaan de Groot
5973dbf74c [libcalamaresui] Shuffle code for QML slideshow
- Create widgets earlier
 - Group layouting code
 - Add retranslator only once, not on every activate
 - Load QML only once, preferably at activation
2019-06-01 23:39:39 +02:00