Commit Graph

3454 Commits

Author SHA1 Message Date
Adriaan de Groot
8aedd8b175
Merge pull request #1219 from a-wai/extra-mounts-after-root
mount: Make sure extra mounts are mounted right after /
2019-08-19 06:22:16 -04:00
Arnaud Ferraris
257f5da1af mount: Use a single partitions list sorted by mount point
Instead of having a special case for extra mounts to be processed right
after the rootfs, a better approach is to add them to the partitions
list, and then sort the list by mount point.

This way, we make sure every partition is mounted right when it is
needed: `/` is obviously mounted first, `/run` is mounted before
`/run/udev`, and so on.

The overall process is therefore more generic and should suit all
use-cases.

Signed-off-by: Arnaud Ferraris <arnaud.ferraris@collabora.com>
2019-08-14 09:58:40 +02:00
Adriaan de Groot
0b7dcf7c50 [welcome] Fix up tooltips
- the "Select language" tooltip was applied to the form, so it would
   show up inappropriately all over the place
 - the buttons didn't have useful tooltips.
2019-08-13 23:22:33 +02:00
Adriaan de Groot
c36f963954 [welcome] Adjust names of URLs to be consistent
- having show*Url and donateUrl seems inconsistent, although
   the show*Url settings were originally boolean-only.
 - add "show" to the Donate button setting, to make them
   all consistent (putting a boolean there will generate a
   warning and hide the button, that's all).
2019-08-13 23:10:56 +02:00
Adriaan de Groot
706cc73925 [branding] [welcome] Adjust documentation for welcome-overrides 2019-08-13 23:10:56 +02:00
Adriaan de Groot
341965c2b1 [welcome] Use setupButton for all four buttons
- the show* settings in welcome.conf are "upgraded" to allow
   setting the URL directly in the module configuration.
2019-08-13 23:10:56 +02:00
Adriaan de Groot
119f84d6c1 [welcome] Remove setupLinks() method, use generic
- the generic (enum-based) setupButton() can handle all four
   of the buttons, so setupLinks() can go away. Only the
   (re)translation of the text on the button needs to be
   done, so move that to the main RETRANSLATE.
2019-08-13 23:10:56 +02:00
Adriaan de Groot
64d4b0a46c [welcome] Switch API for buttons to an enum + string
- Handle buttons and their URL-opening in a more
   general way with an enum; drop existing three-boot
   method and special setupDonateButton()
 - Doesn't compile because consumers haven't changed.
2019-08-13 23:10:56 +02:00
Adriaan de Groot
03e506a826 [welcome] Add a donate button
FIXES #1197
2019-08-13 23:10:56 +02:00
Adriaan de Groot
b60ec123a0 [branding] [welcome] Document interrelationship of settings 2019-08-13 23:10:56 +02:00
Adriaan de Groot
54767812fe
Merge pull request #1218 from a-wai/fix-unpackfs
Fix error in unpackfs
2019-08-13 17:01:40 +02:00
Adriaan de Groot
1d047839c7
Merge pull request #1220 from a-wai/prevent-int-overflow
Prevent integer overflow when parsing configuration
2019-08-13 16:21:35 +02:00
Arnaud Ferraris
3929557a5a welcome: Fix requirements parsing
As the config files integer are now of type `QVariant::LongLong` instead
of `QVariant::Int`, requirements relying on this type were not parsed
correctly.

This patch fixes this, and adds an option to the python conversion to
take into account `QVariant::LongLong` types.

Signed-off-by: Arnaud Ferraris <arnaud.ferraris@collabora.com>
2019-08-12 15:48:48 +02:00
Arnaud Ferraris
bf47e761b0 mount: Make sure extra mounts are mounted right after /
When the rootfs partition is read-only, mount points for the other
partitions cannot be created, therefore they need to be created in a
tmpfs, already mounted somewhere in `/`.

However, the extra mounts are only mounted at the end, which causes an
error as no tmpfs is currently mounted.

This patch makes sure all extra mounts are mounted right after the `/`
partition, allowing the use of a read-only rootfs.

Signed-off-by: Arnaud Ferraris <arnaud.ferraris@collabora.com>
2019-08-12 15:40:59 +02:00
Arnaud Rebillout
2ab45cf4f0 Make sure that variable num_files_total_local is declared
This variable is declared in `if m:`. Of course if this codepath doesn't
run, the variable is not declared an Python doesn't like this kind of
surprise...

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
2019-08-12 15:37:02 +02:00
Adriaan de Groot
a6db224fcb [fsresizer] [partition] Gracefully fail on missing dependencies
- If KPMcore is found -- it requires some other KDE Frameworks but
   at least in pre-4.0 versions doesn't check very well for them --
   then missing its dependencies is no cause for CMake failure.
   Instead, log it nicely and suppress the module.
2019-08-12 13:23:34 +02:00
Adriaan de Groot
76041a2184 [dummycpp] Reduce warnings and apply coding style
- tired of the (IMO, bogus) clang warnings from the
   switch() statement with a default:, so swap it out for
   some cascaded ifs.
2019-08-09 16:34:53 +02:00
Adriaan de Groot
e81bd52fb5 [initcpio] [initramfs] Set compilation options on tests
- calamares_automoc() sets AUTOMOC, but also adds some flags
   to avoid compilation warnings from the generated MOC code.
 - drop weird hard-coded include paths
2019-08-09 16:29:55 +02:00
Adriaan de Groot
48a25858f0 [partition] Chase 3rdparty move 2019-08-08 12:42:47 -04:00
Adriaan de Groot
8636689cea [packagechooser] Fix tests when run from in-source build 2019-08-07 12:58:22 +02:00
Adriaan de Groot
20f43225b5 [packagechooser] Adjust AppData path for tests
- running tests by hand or from "make test" uses different paths.
2019-08-07 12:02:03 +02:00
Adriaan de Groot
781be3368e [packagechooser] Remove bogus images
- KDE and GNOME selection images were drawn by me for the bogus
   package model, and should not be used.
 - Keep Calamares logo though, even if it doesn't make much sense
   to use it in package selection.
 - Keep the no-selection image since it might be used more often,
   but it's not very good.
2019-08-07 11:57:02 +02:00
Adriaan de Groot
f3de320288 [packagechooser] Drop hard-coded data
- Now that the configuration can do all the things, we don't need
   a hard-coded model with bogus entries.
2019-08-07 11:51:56 +02:00
Adriaan de Groot
194a562727 [packagechooser] Expand tests with override features 2019-08-06 22:51:14 +02:00
Adriaan de Groot
a4362dac65 [packagechooser] Change tests for modified API 2019-08-06 22:48:04 +02:00
Adriaan de Groot
5d4c3ea92c [packagechooser] Don't give a default pixmap 2019-08-06 22:48:04 +02:00
Adriaan de Groot
0b72006ffb [packagechooser] Use overrides on AppData for example 2019-08-06 22:48:04 +02:00
Adriaan de Groot
6ddae94628 [packagechooser] Allow to override some of AppData
- The ID and Screenshot entries might be weird in AppData (in particular,
   a remove URL) so put those back under the control of Calamares even
   when using AppData as the source of descriptions.
2019-08-06 22:48:04 +02:00
Adriaan de Groot
d72391942f [packagechooser] Implement AppData loading
- An item can refer to *appdata* and load that, or provide
   the data in the config file itself.
 - Fix documentation about translations.
2019-08-06 15:55:27 +02:00
Adriaan de Groot
9a8b2c5a1e [packagechooser] CHeck that AppData load was succesful 2019-08-06 15:45:14 +02:00
Adriaan de Groot
fb547364c7 [packagechooser] Complete parsing of AppData
- Document all the static inline methods that do the work
 - Fill up a QVariantMap from <name>, <summary> and <description><p>
   elements, and use that to initialize the PackageItem.
2019-08-06 15:36:34 +02:00
Adriaan de Groot
431c4de77f [packagechooser] Use GUI for tests
- Because we'll be creating Pixmaps, we need to have a GUI main.
2019-08-06 15:19:20 +02:00
Adriaan de Groot
6821b14d00 [packagechooser] Enable logging in tests 2019-08-06 14:50:04 +02:00
Adriaan de Groot
beb5896fa2 [packagechooser] Start implementation of AppData loading
- Doing a manual read of the XML, since existing appdata libraries
   don't seem to have a convenient entry for what I need.
 - Expand tests to loading AppData (currently, they fail).
2019-08-06 14:50:04 +02:00
Adriaan de Groot
6c41151f80 [packagechooser] Just one screenshot, and mark package unused 2019-08-06 12:38:28 +02:00
Adriaan de Groot
6e05a1ef05 [packagechooser] Load translated strings as well
- This makes it possible to put the translations into the config
   file, and have them displayed when the Calamares language changes.
2019-08-06 12:02:29 +02:00
Adriaan de Groot
8d3546f0b3 [packagechooser] Expand the example config with translated entries 2019-08-06 00:31:05 +02:00
Adriaan de Groot
fee2297e67 [packagechooser] Fix fallthrough situation
- Add a FALLTHRU macro to annotate fallthrough situations in both
   Clang and GCC,
 - Annotate intentional fallthroughs.
 - Add missing break which meant that the selection mode was
   always multiple-selection.
2019-08-06 00:24:53 +02:00
Adriaan de Groot
56db9e9341 [packagechooser] Use translated strings 2019-08-06 00:17:50 +02:00
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
Adriaan de Groot
b41cac6556 [interactiveterminal] Warn when called in exec: context
FIXES #1157
2019-05-27 14:57:28 +02:00
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
2019-05-27 14:06:05 +02:00
Calamares CI
a1f7cb4f49 i18n: [dummypythonqt] Automatic merge of Transifex translations 2019-05-21 12:17:16 +02:00
Adriaan de Groot
0c4d77541f [plasmalnf] simplify KF5-finding
- No need to double-up package finding.
2019-05-20 17:02:54 +02:00
Adriaan de Groot
81c4114de9 welcome: disable geoip by default (and document how)
FIXES #1148
2019-05-16 22:49:27 +02:00
Adriaan de Groot
34ffc7a20a [libcalamares] Consistent namespace usage in partition service
- The sub-directories under libcalamares (e.g. Utils, ..)
   all live in namespace CalamaresUtils (well, except for Logger).
   The services (e.g. subdirs other than utils/) live in their
   own nested namespace, so partitioning should go into
   CalamaresUtils::Partition for consistency.
2019-05-14 05:52:58 -04:00
Adriaan de Groot
e520c66bb9 [fsresizer] Give the FSResizerJob some accessors
- This is primarily for the tests: then they can drop the
   #define private public hack and be "proper" consumers.
2019-05-14 05:29:19 -04:00
Adriaan de Groot
80606cc38d [partition] Reduce test warnings through consistent signedness 2019-05-14 05:29:19 -04:00
Adriaan de Groot
7e12b65c94 [partition] Silence warnings about missing vtable 2019-05-14 05:29:19 -04:00
Adriaan de Groot
81715ba199 [partition] Warnings-- by using nullptr instead of 0 2019-05-14 05:29:19 -04:00
Adriaan de Groot
54108d2bab [partition] Fix up logging of jobs
- Logging `*it` was printing raw pointers, logging (plain) `it`
   needs the specialized logging `operator<<` to DTRT with temporaries.
2019-05-14 05:29:19 -04:00