Adriaan de Groot
b16354133d
[packagechooser] Switch to a list form
...
- Using id's as keys in a map orders them indeterminately -- in
practice, alphabetically by key. Switch to a list form so that
the products stick to the order they have in the config file
(which means distro's can list "preferred" versions at top).
2019-08-04 20:19:56 +02:00
Adriaan de Groot
9a52430e74
[packagechooser] Too many 'o's in test name
2019-08-04 20:04:32 +02:00
Adriaan de Groot
791f9cbccb
[packagechooser] Read packages model from config
...
- add key *items* which will be used to fill up the model for
software products.
TODO: needs translation support
2019-08-04 16:00:55 +02:00
Adriaan de Groot
adb939b2e8
[packagechooser] Word-wrap package descriptions
2019-08-04 00:11:50 +02:00
Adriaan de Groot
d5275d5e10
[packagechooser] Allow the model to set the introductory text
2019-08-04 00:08:41 +02:00
Adriaan de Groot
047a300a51
[packagechooser] Remove unneeded debug
2019-08-03 23:55:29 +02:00
Adriaan de Groot
140c0db7a4
[packagechooser] Set GlobalStorage packagechooser_<id>
2019-08-03 23:51:00 +02:00
Adriaan de Groot
c59ffc7765
[packagechooser] Set default ID as documented
2019-08-03 23:33:34 +02:00
Adriaan de Groot
b711c791bd
[packagechooser] Fix build, tidy code
2019-08-03 23:28:55 +02:00
Adriaan de Groot
87d7b2a5c0
[packagechooser] Allow setting an ID for the module's GS key
2019-08-03 23:24:30 +02:00
Adriaan de Groot
2f2080727d
Merge branch 'master' into software-chooser
2019-08-03 23:16:38 +02:00
Adriaan de Groot
76077743af
[packagechooser] Add configuration setting for selection mode
...
- Add a *mode* key to the configuration file
- Change some names around to be more consistent (not user-visible)
2019-08-03 15:45:00 +02:00
Adriaan de Groot
042852218f
[license] Apply current coding style
2019-08-03 14:52:38 +02:00
Adriaan de Groot
fb3204262c
[packagechooser] Remove unneeded forward declaration
2019-08-02 23:24:35 +02:00
Adriaan de Groot
9d026862a8
[packagechooser] Provide names for selection mode
2019-08-02 23:20:45 +02:00
Adriaan de Groot
ab7374628b
[packagechooser] Use sample screenshots
2019-08-02 17:17:53 +02:00
Adriaan de Groot
86d8db6bbf
[packagechooser] Enforce selection mode on the next-button
2019-08-02 17:13:35 +02:00
Adriaan de Groot
7609546d8b
[packagechooser] Add screenshots for example
2019-08-02 17:02:02 +02:00
Adriaan de Groot
2272d2ab43
[packagechooser] Add selection modes
...
- Introduce different selection modes (most don't work yet)
- Use model data in the main widget
2019-08-02 16:43:10 +02:00
Adriaan de Groot
86e2e6242f
[packagechooser] Warn about weird calling orders
2019-08-02 16:26:10 +02:00
Adriaan de Groot
a32dcdad86
[packagechooser] Support multiple selection modes
2019-08-02 16:25:26 +02:00
Adriaan de Groot
dc5cdbb38c
[packagechooser] Update other parts of the window on selection
2019-08-02 16:07:47 +02:00
Adriaan de Groot
f8d159dfa4
[packagechooser] Massage layout a bit
2019-08-02 15:32:14 +02:00
Adriaan de Groot
d1a85ba5ca
[packagechooser] Add a model for the list to use
...
- Model contents currently hard-coded
2019-08-02 13:05:46 +02:00
Adriaan de Groot
727290f75e
[packagechooser] Handle translation events (stub)
2019-08-02 11:09:12 +02:00
Adriaan de Groot
735d5d2683
[packagechooser] Add stub of module
...
Package chooser is a **low density** package selector -- unlike
netinstall which offers a high density tree view -- for picking
zero, one, or more items from a small collection of packages.
This can be used, e.g., for "pick exactly one desktop environment",
"pick zero or more text editors" which can then be installed
by another module. The UI is big and shiny (rather than netinstall's
text-based tree view) and isn't suitable for more than a dozen or
so items.
2019-08-02 10:57:12 +02:00
Adriaan de Groot
dab841df02
[fstab] Tighten up the *efiMountOptions* documentation
2019-08-02 09:27:54 +02:00
Adriaan de Groot
d76c33bd3a
[tracking] Tidy code some more
2019-08-02 09:19:15 +02:00
Adriaan de Groot
8186d5730a
[contextualprocess] Apply current coding style
2019-08-01 23:10:49 +02:00
Adriaan de Groot
a0430f76b7
[shellprocess] Apply current coding style
2019-08-01 23:10:20 +02:00
Adriaan de Groot
d363732302
[tracking] Use std::chrono where appropriate
2019-08-01 23:07:45 +02:00
Adriaan de Groot
5183200515
[tracking] Apply current coding style
2019-08-01 23:05:42 +02:00
Adriaan de Groot
e3ecb083a0
Merge branch 'strictly-typed-timeout'
2019-08-01 23:00:28 +02:00
Adriaan de Groot
a0854a999e
Modules: chase API change, use std::chrono::seconds
2019-08-01 22:59:06 +02:00
Adriaan de Groot
626fd8828a
Merge pull request #1206 from apt-ghetto/espMount
...
[fatab] Esp mount options
2019-08-01 19:15:36 +02:00
Adriaan de Groot
bedff6b252
[netinstall] Log immediate failures
...
- If the request is immediately bad (e.g. because of a botched
url) then log that fact; in this case no finished() is ever
emitted.
2019-08-01 15:17:24 +02:00
Adriaan de Groot
82055f6854
[netinstall] Logging; code duplication
...
- If there was an error, the network reply was never deleted
- Improve logging to show where data is coming from
2019-08-01 14:31:25 +02:00
Adriaan de Groot
2bb66b8b9b
[preservefiles] Example with REQUIRES
...
- preservefiles generally needs to have the target filesystems
mounted, so that it can preserve to them; but you can also
configure it such that there is no need for mounted filesystems
(e.g. in OEM setup).
- Add an example line in CMakeLists.txt to show how that would be done.
2019-08-01 12:37:23 +02:00
Adriaan de Groot
b0bcdba867
[unpackfs] Needs mount before it
...
- The mount module must happen before unpackfs because that (mount)
module sets up the root mount point (in /tmp) and some other
variables needed later.
2019-08-01 12:37:03 +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
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
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
43eb664e7d
[initramfs] Configure mkinitramfs to be safe
...
SEE #1191
2019-07-05 11:43:40 +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
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
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
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
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
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
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
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
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
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
Calamares CI
bbc0edecd3
i18n: [dummypythonqt] Automatic merge of Transifex translations
2019-06-07 10:44:01 +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
f54b7dee9f
[welcome] Use convenience image loader from Branding
2019-05-31 17:27:11 +02:00
Adriaan de Groot
07c638ed48
[welcome] Allow theming the international language-select icon
2019-05-31 17:27:11 +02:00
Adriaan de Groot
a263381996
[partition] Avoid an assert when running Calamares as user.
2019-05-31 12:27:32 +02:00
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.
2019-05-31 12:11:48 +02:00
Adriaan de Groot
d5f0bdd28c
[partition] Simplify negative logic
...
- Instead of multiple continue statements to avoid negative cases,
state the one positive case instead.
2019-05-31 12:08:58 +02:00
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.
2019-05-31 12:08:58 +02:00
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.
2019-05-31 12:08:58 +02:00
Adriaan de Groot
353e713f81
[partition] Complain loudly on dangling Partition pointers
...
- Don't crash if a bad pointer gets into colorutils.
2019-05-31 12:08:58 +02:00
Adriaan de Groot
2bc95d11d3
[partition] Unrelated typo in comment
2019-05-31 12:08:58 +02:00
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).
2019-05-31 12:08:58 +02:00
Adriaan de Groot
0ebabfafd4
[partition] Move BootLoaderModel convenience functions
...
- These were hidden inside PartitionPage, but are useful elsewhere.
2019-05-31 12:08:58 +02:00
Adriaan de Groot
8d451622db
[partition] Idiomatic use of Calamares::JobList
2019-05-28 16:39:00 +02:00
Adriaan de Groot
e2b71e669e
[partition] When running UNSAFE, no-install-partition is a warning
2019-05-28 16:29:45 +02:00
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.
2019-05-28 13:27:21 +02:00
Adriaan de Groot
38c36e2439
[finished] Use idiomatic Calamares::JobList
2019-05-28 13:20:19 +02:00
Adriaan de Groot
1915547004
[finished] Improve logging when restarting.
2019-05-28 13:05:40 +02:00
Calamares CI
644aade0f5
i18n: [dummypythonqt] Automatic merge of Transifex translations
2019-05-28 12:56:23 +02:00