Adriaan de Groot
d49ddf6463
libcalamaresui: factor out the pastebin functionality
...
- While called from the ViewManager (to post the debug log)
this isn't really part of the ViewManager itself, so factor
out the pasting code into its own file.
2019-07-30 15:09:25 +02:00
Adriaan de Groot
8f7d183a0c
libcalamaresui: don't always fail
...
- The paste-branch was merged too soon. Now undoing the damage.
2019-07-30 14:41:42 +02:00
apt-ghetto
0f5ff9a517
Add possibility to set mount options for the ESP
...
Added new configuration "efiMountOptions" to fstab.conf
When generating the fstab entry for the ESP, take the mount options from
the new configuration or fall back to "mountOptions".
2019-07-29 18:03:32 +02:00
apt-ghetto
8a545941d4
Remove flake8 errors
...
Remove the flake8 errors. This commit does not change any behaviour.
2019-07-29 16:01:30 +02:00
Calamares CI
08ac97b1ea
i18n: [dummypythonqt] Automatic merge of Transifex translations
2019-07-29 13:29:03 +02:00
Adriaan de Groot
edd2cc7244
Merge pull request #1186 from bill-auger/master
...
implement post log to paste server (needs some cleanup)
2019-07-29 13:26:13 +02:00
Adriaan de Groot
97384d3839
Merge pull request #1187 from bill-auger/job-weights
...
implement definable job weights
2019-07-29 13:25:09 +02:00
Adriaan de Groot
940c990268
[initcpio] [initramfs] Allow turning off CVE mitigations
...
- The mitigations are slightly intrusive, and may clash
with other, similar mitigations (especially for initramfs,
the recommended solution is to configure the system with
the snippet outside of Calamares).
2019-07-06 00:04:16 +02:00
Adriaan de Groot
a761bf0280
[initramfs] Add tests
...
- These tests exercise the createTargetFile() logic,
which is essential for creating a safe initramfs
configuration snippet.
- Could be moved into libcalamares instead, since the tests
are not really initramfs specific.
2019-07-05 23:21:24 +02:00
Adriaan de Groot
76ce0e4f2b
[libcalamares] Don't crash when creating System object
...
- In tests, a System object might be created without first
setting up a JobQueue. In that case, there's no instance,
so no GS to insert into. Avoid crash here.
2019-07-05 23:20:19 +02:00
Adriaan de Groot
39d618c61e
[initcpio] Simple test for fixPermissions()
2019-07-05 13:28:32 +02:00
Adriaan de Groot
5f6efd2822
[initcpio] Improve security by making initramfs files not world-readable
2019-07-05 13:17:55 +02:00
Adriaan de Groot
1a85435372
[libcalamares] Get target path relative to host /
2019-07-05 13:05:49 +02:00
Adriaan de Groot
43eb664e7d
[initramfs] Configure mkinitramfs to be safe
...
SEE #1191
2019-07-05 11:43:40 +02:00
Adriaan de Groot
b697461497
[libcalamares] Add System::createTargetFile()
...
- Calamares may need to create files in the target system;
provide a convenient API for doing so.
- This is mostly intended for small files with constant contents.
2019-07-05 11:29:14 +02:00
Adriaan de Groot
315e1ac54e
[luksbootkeyfile] Improve logging to distinguish from other modules
2019-07-04 22:08:36 +02:00
Adriaan de Groot
bb6530577d
[initcpio] Replace Python implementation with C++
...
- This is a simple variation on the theme of things-that-call-a-
initramfs-updater, so the code is mostly a copy of initramfs/
module. I didn't even bother to strip out the configuration-
handling (I figure it might be good for *something*) so now
"" and "$uname" are valid kernel names as well.
- Fixes security issue where the initramfs ends up readable
by all, and that includes the cryptfile for LUKS.
SEE #1190
2019-07-04 20:23:40 +02:00
Adriaan de Groot
d5340f9743
[initramfs] Drop timeout entirely, even two minutes too short
2019-07-04 20:05:48 +02:00
Adriaan de Groot
efd409cf78
[luksbootkeyfile] Refactor static function to outside class
2019-07-04 19:38:10 +02:00
Adriaan de Groot
7d7d4c69ef
[luksbootkeyfile] Don't log passphrase
2019-07-04 19:37:37 +02:00
Adriaan de Groot
8a7884d476
[luksbootkeyfile] More debugging of the crypt file
2019-07-04 19:30:11 +02:00
Adriaan de Groot
97e44f971d
[initramfs] That's not a safety setting
...
- Don't confuse a method declaration with an object.
- Thanks clang for warning me.
2019-07-04 16:23:21 +02:00
Adriaan de Groot
e2028cf85b
[libcalamaresui] Warnings--, no copy constructor for CDebug
2019-07-04 16:20:26 +02:00
Adriaan de Groot
4c5008ecb1
Merge branch 'issue-1190'
...
SEE #1190
2019-07-04 16:14:33 +02:00
Adriaan de Groot
af2a900276
[luksbootkeyfile] Fix lax permissions on file.
2019-07-04 16:05:58 +02:00
Adriaan de Groot
856a2eaa1d
[luksbootkeyfile] Implement keyfile creation and use
...
- Just copy the commands from the existing Python code,
including nonsensical dd.
2019-07-04 16:05:54 +02:00
Adriaan de Groot
8706b579ec
[luksbootkeyfile] Stub out an implementation
...
- stubs for the actual work to be done
- program-flow for looping over all the work
2019-07-04 16:05:54 +02:00
Adriaan de Groot
f6c50564cd
[luksbootkeyfile] Extract devices that need cryptsetup
...
- Rename classes and functions to be more descriptive
(a LuksDevice is .. information for a LUKS device, for instance).
- Move the smarts of unpacking a QVariantMap to LuksDevice.
- Apply code formatting
2019-07-04 16:05:54 +02:00
Adriaan de Groot
745b4b1693
[luksbootkeyfile] Extract partitioning keyphrases from GS
2019-07-04 16:05:48 +02:00
Adriaan de Groot
676df86712
[luksbootkeyfile] Stub job implementation in C++
2019-07-04 16:05:47 +02:00
Adriaan de Groot
c2fa315735
[luksbootkeyfile] Prepare for C++-ification
...
- Mess around with the CMakeFile in preparation of new code
- Drop the Python implementation already
2019-07-04 16:05:47 +02:00
Adriaan de Groot
4825916f09
[branding] Improve log message when slideshow starts
...
- Having just "component activated" is confusing in the whole
mess of log messages around job activation.
2019-07-04 13:24:40 +02:00
Adriaan de Groot
91644b4ba2
[libcalamares] Partially fix implementation of timeout
...
- Adjust most call sites to use std::chrono::duration,
- Call to QProcess::waitForFinished() needs work, since
that takes milliseconds.
2019-07-04 11:50:14 +02:00
Adriaan de Groot
938b1ac4aa
[libcalamares] Make API more type-explicit with std::chrono
...
- Having an int timeoutSec is suggestive -- it's probably a number
of seconds -- but having an explicit type that says it's seconds
is better.
- Doesn't compile, because the implementation and consumers have
not changed.
2019-07-04 11:48:43 +02:00
Adriaan de Groot
1be81ec3b0
[initramfs] Bump the timeout much higher
...
- Use 120 seconds for update-initramfs, instead of 10. Previous
Python code had no timeout at all, which wasn't so hot either.
10 seconds, though, is too short for slow CPU & slow disk.
2019-07-03 21:20:08 +02:00
Adriaan de Groot
0030966986
[initramfs] Set umask before update-initramfs
...
SEE #1191
2019-07-03 00:43:40 +02:00
Adriaan de Groot
aa3f909be7
[libcalamares] Tests for UMask handling
2019-07-03 00:40:05 +02:00
Adriaan de Groot
0685e3a96c
[libcalamares] Move tests of the utils classes into utils/
...
- while here, adjust include paths (to changed dir)
- while here, apply new code formatting
2019-07-03 00:40:05 +02:00
Adriaan de Groot
31e78ff0c2
[libcalamares] Add umask helper functions
2019-07-03 00:40:05 +02:00
bill-auger
c90d3b2016
squashme WIP upload log to paste server - more error checks and validations
2019-06-30 09:52:31 -04:00
bill-auger
e096631c54
squashme WIP upload log to paste server - refactor error checking
2019-06-30 09:52:29 -04:00
bill-auger
e7960474d4
implement post log to paste server
2019-06-30 09:50:24 -04:00
bill-auger
9201842025
implement definable job weights
2019-06-28 13:38:53 -04:00
Adriaan de Groot
c0cd14df47
[initramfs] Fix sample config file for tests
...
- the tests want a non-empty config, so put something in there:
a kernel setting that matches the legacy behavior.
2019-06-28 13:04:40 +02:00
Adriaan de Groot
18bf925a11
[libcalamaresui] Name pending requirements checks
...
- Give each check a name (based on the module it runs for, so
there might be overlaps when there are multiple module instances).
- Log the remaining checks each time the timeout fires, to help
figure out which one is hanging.
2019-06-27 15:30:32 +02:00
Adriaan de Groot
0bd2bfa708
CI: apply coding style to libcalamaresui/modulesystem
2019-06-27 15:15:47 +02:00
Adriaan de Groot
bd8c3fd893
CI: apply coding style to libcalamares/modulesystem
2019-06-27 15:13:32 +02:00
Adriaan de Groot
08b24b9ea2
[libcalamaresui] Fix Doxygen comments
2019-06-26 12:12:17 +02:00
Adriaan de Groot
f7cbb7b5ea
Changes: Note modified initramfs module
...
- Also add note about $uname handling.
2019-06-24 16:47:20 +02:00
Adriaan de Groot
6ae8bd82fa
[initramfs] Log what kernel will be passed to update-initramfs
2019-06-24 16:37:58 +02:00
Adriaan de Groot
a2d7fdcb8a
[initramfs] Document settings
...
- Move the README text into the config file
- Document the *kernel* setting
2019-06-24 16:35:54 +02:00
Adriaan de Groot
8d712276ad
[initramfs] Replace module with C++ implementation
...
- new implementation handles blank (maps to "all") configuration,
- allows specifying "$uname" as kernel name, to use `uname -r`,
- allows specifying a specific kernel.
2019-06-24 14:38:56 +02:00
Adriaan de Groot
b216daf574
[initramfs] Prepare for C++-ification
2019-06-24 13:19:24 +02:00
Calamares CI
42bd638667
i18n: [dummypythonqt] Automatic merge of Transifex translations
2019-06-21 16:43:01 +02:00
Adriaan de Groot
5876c3fdd7
[partition] Warn about storage setting in partition.conf
...
- This is really a specialised setting, not something for
general use. People should be using `welcome.conf` instead.
2019-06-21 13:43:02 +02:00
Adriaan de Groot
79dc9e3463
[libcalamares] Update button icons as we go along
...
- Adapt the button icons (previous, next, do-install, all-done)
to the state of the buttons and the corresponding text.
2019-06-18 22:54:41 +02:00
Adriaan de Groot
b3d9af4cae
[libcalamaresui] Apply correct button labels
...
- updateButtonLabels() knows all the special cases for
buttons, so use it when the language changes instead
of setting up some possibly-wrong values.
- One edge case that this fixes is: have **just** the welcome
page before the first exec section in sequence. Then the
*next* button label was *next* instead of *install*.
2019-06-18 22:45:49 +02:00
Adriaan de Groot
780fe125f7
[libcalamaresui] Give the buttons icons
...
- Next, Back, Cancel/Quit have somewhat-appropriate icons.
2019-06-18 16:18:18 +02:00
Adriaan de Groot
a5cef2175e
[libcalamares] Add tests for the locale service
...
- Minimal tests just check that all the availableTranslations()
entries have a reasonable language setting.
- Checks that Esperanto is still broken as a locale in Qt.
2019-06-18 15:27:59 +02:00
Adriaan de Groot
0f66a89236
[welcome] Only do GeoIP query if it's useful
...
- If badly-configured, then type is none; this is warned about
in the constructor of Handler()
- Only run the query if it's a useful type.
2019-06-18 12:34:52 +02:00
Adriaan de Groot
68dc1f5e31
[libcalamares] Warn about badly-configured GeoIP
...
- Warn when type will be none
- Re-order warnings from general to specific
2019-06-18 12:33:56 +02:00
Adriaan de Groot
3967f6c5ae
[welcome] Log where GeoIP information came from, if it's unusable
...
- This helps chase down broken GeoIP configurations, since you
can check the URL and handler type shown in the log.
2019-06-18 12:24:30 +02:00
Adriaan de Groot
6183c4e2f4
[libcalamares] Add accessors for GeoIP handler attributes
2019-06-18 12:17:25 +02:00
Adriaan de Groot
34b1a250ba
[libcalamares] Improve warnings when module descriptor files are bad
2019-06-18 12:06:13 +02:00
Adriaan de Groot
5fdaeaa899
[libcalamaresui] Improve wording when module is missing configuration
2019-06-18 11:58:03 +02:00
Adriaan de Groot
e94bbc5e0c
[dummyprocess] Add some delay in the dummy
2019-06-17 15:53:02 +02:00
Calamares CI
1d01253249
i18n: [dummypythonqt] Automatic merge of Transifex translations
2019-06-17 15:35:07 +02:00
Adriaan de Groot
1c5a37d7d2
[branding] Add French and Arabic default translations
2019-06-17 12:52:59 +02:00
Adriaan de Groot
bba0b7ce12
[branding] Update documentation about API versions
2019-06-17 12:45:06 +02:00
Adriaan de Groot
c7d09f06c5
[libcalamaresui] QML Retranslation since Qt 5.10
2019-06-17 12:23:31 +02:00
Adriaan de Groot
79bd7b6b89
Merge branch 'issue-1152'
2019-06-17 11:54:01 +02:00
Adriaan de Groot
58f6635ca0
[libcalamaresui] Force retranslation on language change
2019-06-17 11:52:20 +02:00
Adriaan de Groot
f9bd0fba10
[libcalamares] Handle async QML loading
...
- The component isn't ready immediately, so instatiate
once it is fully loaded and ready
- Edge case if the execution view step is already visible, then
start the show (because a previous call to onActivate() will
have missed it).
2019-06-17 11:47:25 +02:00
Adriaan de Groot
193bcbde71
[libcalamaresui] Use setSource() for API version 1
...
- Just avoid all the componentized loading and do the
synchronous load-compile-setContent thing.
2019-06-17 11:17:06 +02:00
Adriaan de Groot
15ab98cb26
[libcalamaresui] Use API version to load slideshow differently
2019-06-17 11:05:56 +02:00
Adriaan de Groot
148b829591
[libcalamares] Introduce slideshowAPI setting
2019-06-17 10:58:14 +02:00
Adriaan de Groot
ef2531b01d
[branding] Update documentation
...
- mention that translations are included
- point to external repo for fancy/ example.
2019-06-16 23:46:32 +02:00
Adriaan de Groot
f3f8f3ea46
[branding] Make the default show nervously quick
2019-06-16 23:08:12 +02:00
Adriaan de Groot
593dcff40a
[branding] Enable translations for the default show
...
- Just translate two simple strings, to avoid burdening translators,
- Add Dutch translation already.
These translations are not yet processed by ci/txpull and push.
2019-06-16 23:01:56 +02:00
Adriaan de Groot
41c2a7e4e0
[branding] Drop complicated machinery for one subdir
2019-06-16 22:42:53 +02:00
Adriaan de Groot
cd7fc93b6a
[branding] Be more chatty when slideshow is loaded
2019-06-16 13:47:21 +02:00
Adriaan de Groot
003f37ca04
[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-16 13:44:27 +02:00
Adriaan de Groot
9188eab66f
Changes: document new things in slideshow
2019-06-16 13:33:20 +02:00
Adriaan de Groot
075f0787f9
Merge branch 'master' into issue-1152
2019-06-16 13:11:03 +02:00
Adriaan de Groot
71209b323a
[libcalamaresui] Call QML methods on start and stop
...
- Use onActivate() and onLeave() in QML as well, to start and stop
the slideshow.
2019-06-16 13:06:34 +02:00
Adriaan de Groot
68e6bd676e
[libcalamaresui] Instantiate QML at load time
...
- By instantiating only on activation, an ugly "white" gap
appears where there is no widget at all. So instantiate
earlier so that the widget already exists and is painting
by the time the slideshow part is visible.
- This makes the net effect of this branch so far zero:
the slideshow is still loaded and started when Calamares starts.
2019-06-16 12:15:41 +02:00
Adriaan de Groot
5dfc4884b3
[calamares] Increase constness
...
- The model shouldn't change items at all.
2019-06-12 12:45:47 +02:00
Adriaan de Groot
85845c9b3e
[calamares] cLog() isn't a thing, return to cDebug()
2019-06-12 08:32:28 +02:00
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
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
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
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
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