3247 Commits (dbcc419218b2409f925d059b030d79d4eca1bea3)

Author SHA1 Message Date
Adriaan de Groot 8387d5d81f [libcalamares] Allow emergency jobs
Any job can be an emergency job; emergency modules spawn
emergency jobs (but conversely, a non-emergency module
can spawn an emergency job explicitly).
7 years ago
Adriaan de Groot 3ed6f13fa8 [libcalamaresui] Adjust the emergency-ness of modules
A potentially emergency module is one that has EMERGENCY
(in CMake) or emergency: true (in module.desc) set.
Any such module must also set emergency: true in the
configuration of the module. This is to allow for
instances of a module that **don't** run as emergency
modules, alongside actual emergency ones.
7 years ago
Adriaan de Groot 53161f6e36 [preservefiles] Mark this as an emergency module
- For C++ modules, don't need the module.desc file in the
   source repo, since the CMake macros can create it.
7 years ago
Adriaan de Groot def459a29d [libcalamaresui] Read emergency setting from module.desc
- Read setting from the module descriptor
 - Document optional settings
 - Add EMERGENCY keyword to the CMake helper functions
7 years ago
Adriaan de Groot b92bef21f8 [libcalamares] Avoid using namespace std; 7 years ago
Adriaan de Groot fa08e0ad73 Copyright: fix bad email address 7 years ago
Adriaan de Groot dd8e53dc22 Copyright: update copyright lines on files touched in 2018
Contributions from:
  Adriaan de Groot <groot@kde.org>
  Gabriel Craciunescu <crazy@frugalware.org>
  AlmAck <gluca86@gmail.com>
  Andrius Štikonas <andrius@stikonas.eu>
  Caio Carvalho <caiojcarvalho@gmail.com>
  Raul Rodrigo Segura <raurodse@gmail.com>
7 years ago
Adriaan de Groot d2f2aa9a97 [branding] Link to the examples repository 7 years ago
Adriaan de Groot 99163c9a68 Style: stray space 7 years ago
Adriaan de Groot ac769d1de8 Style: use QStringLiteral
- In many cases, using QLatin1String is a de-optimization, when
   applied to a C string literal. Kevin Kofler pointed out that
   those should basically all be QStringLiteral, instead. (Compile
   tests with -O3 show that in the optimized object file, the
   code size difference is negligible).
 - Drop the explicit constructor entirely in cases where we're calling
   QProcess::execute(), for consistency.
 - Do a little less messing around in the mapping of keyboard locales
   to keyboard map names.
7 years ago
Adriaan de Groot 2d7eea6d73 Merge branch 'master' into emergency-modules 7 years ago
Adriaan de Groot 290559f8c1
Merge pull request #986 from raurodse/configurationPythonQt
Add configuration values into pythonqt modules
7 years ago
Raul Rodrigo Segura 448c5eae16 style code 7 years ago
Adriaan de Groot 67ad37581f [contextualprocess] Document corner-case
The "*" will match its literal value, but is also used as a wildcard.
7 years ago
Adriaan de Groot 011310091c [contextualprocess] QLatin1String -> QString
As Kevin pointed out, there's an extra conversion involved here --
although with -O3 the difference boils away leaving only a call
to a from-ASCII helper or a from-Latin1 helper.

While here, coding-style.
7 years ago
Adriaan de Groot 96cb42414c Merge remote-tracking branch 'origin/improve-settings-sanitization' 7 years ago
Adriaan de Groot 6cdb2daca3 Merge abucodonosor-plymouth 7 years ago
Gabriel Craciunescu 0ccca6902b [grubcfg] fix inter-module dependency with plymouthcfg modules
The plymouthcfg Calamares module is optional. Distributions which
  write filesystems with a full plymouth configuration won't even
  want to use it (see plymouthcfg docs).

  However, now grubcfg depends on plymouthcfg to run because
  the globalstorage value to trigger setting  'splash' in grub,
  is set in the plymouthcfg module.

  Just check for plymouth existence separately in the grub module.

  Fixes ea1c8a0e5d
7 years ago
Adriaan de Groot 2d29bf4449 [contextualprocess] Make conversion explicit
- Qt 5.7 doesn't like QLatin1Char comparison, so switch to
   a full string. Tested on Neptune Linux, #979
7 years ago
Adriaan de Groot fa0518f968 [contextualprocess] Make conversion explicit
- Should help with Qt 5.7 compatibility. Reported from Neptune
   Linux, #979
7 years ago
Calamares CI ef897f59f5 i18n: Add Korean (ko) language translations
Since this is a new language, it is currently 0% translated.
That is why it goes into _tx_bad. It will move to one of the
other categories once some translation has happened. Add the
(still empty) Transifex files already.
7 years ago
Calamares CI 0ea3d85ab0 i18n: [dummypythonqt] Automatic merge of Transifex translations 7 years ago
Adriaan de Groot a8426730ca [libcalamaresui] Improve wording of modules failure warning 7 years ago
Adriaan de Groot 97a45db4bf [libcalamaresui] Reset font height when changing size
- defaultFontHeight() caches the result; clear cache
   when changing the default size, even though this happens
   only once in the current codebase.
7 years ago
Adriaan de Groot bb5ac0326d [libcalamaresui] Improve layout of "blank" view step 7 years ago
Adriaan de Groot 9918dfb95f [libcalamaresui] Reporting on failures
- Provide information on failed modules
 - Disallow further progress when configuration is borked
7 years ago
Adriaan de Groot 3e24c3c58f [libcalamaresui] Provide standardised large font 7 years ago
Adriaan de Groot 8b406cac9b [libcalamaresui] Improve module loading
- Add a TODO for allowing modules to come from somewhere other
   than the module loader (this would allow "internal" modules
   that are always present)
 - Warnings are warnings
7 years ago
Raul Rodrigo Segura d61b32aba6 Add configuration values into pythonqt modules 7 years ago
Adriaan de Groot 35124c149e [libcalamaresui] Drop the 'goodbye' message 7 years ago
Adriaan de Groot a732ce11bc [libcalamares] Warn more about badly-formed config 7 years ago
Adriaan de Groot 49622a6a30 Tests: expand test-application test_conf
- Add -v (verbose) and -b (load via bytearray)
 - Verbose prints the keys read from the file,
 - Bytes reads via an indirection through QByteArray, like Settings does
7 years ago
Adriaan de Groot a40c36ef49 [libcalamaresui] Report on failed module loading
- Collect the failed modules, instead of bailing out on the first one
   (this also prevents crashes caused by quit() called from a timer).
 - Introduce a slot to report on failed module loading (no UI yet).
7 years ago
Adriaan de Groot 1999e4e5c2 [libcalamaresui] Error out consistently when module loading fails
- Some module-loading failures were ignored and produce only a
   warning, instead of erroring out.
7 years ago
Adriaan de Groot dccf6f16f5 [libcalamaresui] Lambdas are fun, but not always the solution 7 years ago
Adriaan de Groot a626e52bf3 [libcalamares] Introduce more descriptive type name 7 years ago
Adriaan de Groot 24b0df3c04 [locale] Missing includes
- Implicitly included in recent Qt, but not in old versions

Reported from Neptune Linux
7 years ago
Adriaan de Groot 83688f2837 Merge remote-tracking branch 'origin/shuffle-cmake' 7 years ago
Adriaan de Groot fe7f48662e Merge branch 'fix-iceland' (again) 7 years ago
Adriaan de Groot 15b97f8e3f [libcalamares] Add missing include-dir
- Fix build on FreeBSD, where the yaml-cpp headers don't live in
   any normally-searched include directory.
7 years ago
Calamares CI 54515688f7 i18n: [dummypythonqt] Automatic merge of Transifex translations 7 years ago
Adriaan de Groot 8430970e71 [preservefiles] Reduce copying by using const-ref into list 7 years ago
Gabriel Craciunescu 41d427e543 [modules]: hwclock fix typo
- methode -> method
7 years ago
Adriaan de Groot b66d4856e7 [libcalamaresui] Use modern C++ for (auto)deleting failed modules 7 years ago
Adriaan de Groot 40b60abcb3 [locale] Move constants for map-munging
These don't have to be defines at all.
7 years ago
Adriaan de Groot 1ee87c3cde [locale] Drop debugging define 7 years ago
Adriaan de Groot 6b3299e6ff [locale] Adjust the North
- Fudge the numbers in the North, to improve location
   of the pins and lines of latitude.
 - Inuvik, Yellowknife, Cambridge Bay, Resolute look ok
 - Thule, Scoresbysund look ok; Danmarkshavn a pixel or so too far North
 - Reykjavik is a bit too far North
 - Longyearbyen is a bit too far North

Since these places are off by one or two pixels, this becomes
invisible when a large pin + text label is placed on it.
7 years ago
Adriaan de Groot 4bacafb411 [locale] Fix timezone pixel map for Tierra del Fuego region
- Punta Arenas, draw like it's in -4
 - Ushuaia, draw like it's in -3

FIXUP pixel
7 years ago
Adriaan de Groot b7dbc8cc1f [locale] Name zones when debugging
- When debugging timezones, state their names (e.g. UTC offset)
   and also log the pixel position under consideration.
7 years ago
Adriaan de Groot 2c18ba6ddb [locale] Adjust latitude calculation in the southern hemisphere
The scaling on the map was a little off; the degrees of latitude
are a little wider there than around the equator and Europe.

 - Johannesburg is in the right spot
 - Hobart is no longer a suburb of Melbourne
 - Punta Arenas is in Chile
7 years ago
Adriaan de Groot 9f8f76befc [locale] Introduce timezone-widget debugging
Replace pin and text label with just a dot (to pinpoint where
locations are) and draw latitude lines on the globe when
DEbUG_TIMEZONE is set at compile time. Since there's probably
still timezone-related bugs (in particular in the images that
map points on the globe to timezones), leave this in the codebase.
7 years ago
Adriaan de Groot eddee7d76a [libcalamaresui] No point in isLoaded() being virtual. 7 years ago
Adriaan de Groot a04915e6fa [libcalamaresui] Add 'emergency' concept to modules. 7 years ago
Adriaan de Groot fdda1ef840 [bootloader] Mimic openSUSE's efibootmgr calls 7 years ago
Adriaan de Groot dad3669eae [bootloader] Take a stab at determining the shim name 7 years ago
Adriaan de Groot e4bda546cf [bootloader] factor our EFI-platform-bitness discovery 7 years ago
Adriaan de Groot cbd62fbeb1 Merge branch 'master' into secureboot 7 years ago
udeved a878c1a610 add openrccfg 7 years ago
Calamares CI 51b50b9366 i18n: [dummypythonqt] Automatic merge of Transifex translations 7 years ago
Adriaan de Groot 50dea6ded3 [interactiveterminal] Make optional if requirements not met
This is orthogonal to the SKIP_* mechanism already documented
for avoiding modules. If the module is enabled, but its dependencies
are not present, don't bother building the module. This follows
e.g. plasmalnf as an "avoidably heavy dependency".

Related to a misplaced comment in ISSUE #956
7 years ago
Adriaan de Groot ce3e09318a [preservefiles] Improve failure messages 7 years ago
Adriaan de Groot 28a42a7230 Merge branch 'filepreserver' 7 years ago
Adriaan de Groot cdadc2f003 [libcalamares] Improve error logging during module loading 7 years ago
Adriaan de Groot 182458ad5a [calamares] Need a JobQueue and global storage before running any job.
The 'singleton' instances don't do a very good job of being singletons
or ensuring their own creation.
7 years ago
Adriaan de Groot 48771f968a [calamares] Load and execute the modules
This runs dummyprocess, at least, but the other three dummies coredump.
7 years ago
Adriaan de Groot 308f508c7e [calamares] Add a test-application.
This test-application should load a single module and execute it --
that can be used to quickly test configurations, loading, etc. This
is preparation for loading all sorts of Python modules by PythonQt.

The loader does some internals initialization and gets the module,
but doesn't actually run it yet.
7 years ago
Adriaan de Groot fdda0e14aa [libcalamaresui] Improve explainYamlException
- overloads for common kinds of label
 - improve error reporting when reading settings and branding files
7 years ago
Adriaan de Groot e5ca8e091f [libcalamaresui] Use refactored loadYaml 7 years ago
Adriaan de Groot 261c545476 [libcalamaresui] Refactor loading of YAML to QVariantMap 7 years ago
Adriaan de Groot f26ac63c07 [libcalamaresui] Make Python code const
- This is always loaded into the Python context, so it may as well
   be done only once.
7 years ago
Adriaan de Groot d3e57e9c9f [shellprocess] Expand tests
These tests run (shell) commands as part of the test; this may be
a security problem, although I've tried to do things safely.
7 years ago
Adriaan de Groot 87b9c42158 [shellprocess] Don't crash test
- May need to create a JobQueue before doing anything internal
 - May need to create global settings
 - Chroot always needs rootMountPath internally
7 years ago
Adriaan de Groot 8b00a03423 [shellprocess] Test command-substitution 7 years ago
Adriaan de Groot b5d900c1c6 [libcalamares] Allow a @@USER@@ replacement in commands
- Following example in preservefiles module, allow @@USER@@
   in commands (e.g. to do something specific in the home-dir
   of the new user).
7 years ago
Adriaan de Groot b7890d865f [preservefiles] Save GS, munge destination
- using `from: config` now writes a JSON file
 - using @@ROOT@@ and @@USER@@ in dest does a sensible
   substitution.
7 years ago
Adriaan de Groot ac287a0ac5 [libcalamares] Add a save() method to global storage
- This is a quick way to dump GS to JSON, which is useful
   for the preservefiles module #928
 - Also useful for, e.g., #466
7 years ago
Adriaan de Groot dae84d3bb1 [users] Improve explanation of other steps of adding a user 7 years ago
Adriaan de Groot 01ff1efc5d [users] Improve explanation when useradd fails 7 years ago
Adriaan de Groot 0d24c1db6c [users] Introduce userShell setting
- Add a *userShell* key, which can be left out (default, backwards-
   compatible) to retain the old /bin/bash behavior, or explicitly
   set to empty to defer to useradd-configuration, or explicitly
   set to something non-empty to use that shell.
7 years ago
Adriaan de Groot ed15edabf9 [users] Document passwordRequirements and code 7 years ago
Adriaan de Groot 3a59574128 [users] Factor out command-line to useradd
- This is prep-work for #964, which was caused by #955
 - Original assumption was that distro's would have a working
   useradd configuration; @abucodonosor already pointed out that
   this was probably not the case, but I ignored that.
7 years ago
Adriaan de Groot 6aa5be192b [netinstall] Drop unused includes 7 years ago
Calamares CI a79e62ac6b i18n: [dummypythonqt] Automatic merge of Transifex translations 7 years ago
Adriaan de Groot 3133e759d0
Merge pull request #958 from bill-auger/patch-2
avoid pinging hard-coded server for netinstall.yaml
7 years ago
bill auger b6673f6324 move thisModule->isLoaded assert to after it's warning message 7 years ago
bill auger d7b1811e56 avoid pinging hard-coded server for netinstall.yaml
groupsUrl is optional and should be commented out by default
also this URL is 404
also only chakra would ever want to ping the chakra server anyways
7 years ago
Adriaan de Groot fb94c227f6 Merge branch 'netinstall' 7 years ago
Adriaan de Groot ba85fc760a [netinstall] Remove data-indirection
- There is no need to move data around between two parts of the
   same module via global storage.
7 years ago
Adriaan de Groot 3160bd7a54 [netinstall] Simplify getting configuration
- Use convenience methods for getting bools and strings from
   the configuration map. Ignore empty groupsUrls.
7 years ago
Adriaan de Groot 6779a44991 [preservefiles] New module preservefiles
- more flexible way to keep (all kinds of) files from the host
   system, into the target system.
 - WIP: substitutions like in shellprocess (@@ROOT@@, @@HOME@@ probably)
 - WIP: creating a JSON file from global settings
7 years ago
Adriaan de Groot 6c87747a5d [libcalamares] Make it possible to get the logfile name 7 years ago
Adriaan de Groot 5bcd6eaef8 [partition] Reduce warnings by removing unused code 7 years ago
bill auger 4826af97a9 consistent indentation in src/modules/netinstall/page_netinst.ui
this file has 1 space char indentation except for these lines
7 years ago
Calamares CI 6b02da9e9e i18n: [dummypythonqt] Automatic merge of Transifex translations 7 years ago
Frede H f2677b0879
Update CreateUserJob.cpp
Removal of the hardcoded shell, letting the `/etc/default/useradd` be responsible for the shell.
7 years ago
Adriaan de Groot 65d00ccc37 Merge branch 'partition-flags'
Extensive go-over on the partitioning code. #622 is maybe "possibly fixed",
but there's no real indication of what constitutes an invalid combination
of flags.

FIXES #884 FIXES #951 FIXES #953 FIXES #622
7 years ago
Adriaan de Groot c73d6e80f6 [libcalamares] Switch @@ROOT@@ magic around
The substitution of @@ROOT@@ should happen when running in the
host, not in the target, system. Also only complain about it
if @@ROOT@@ is actually used in the commands.

FIXES #954
7 years ago
Calamares CI 6d1f5433b4 i18n: [dummypythonqt] Automatic merge of Transifex translations 7 years ago
Adriaan de Groot 90a2e482be [partition] Check for available partition type before creating
- Avoid situation where you make 5 or more primaries in an
   MSDOS partition table.

FIXES #953
7 years ago
Adriaan de Groot bd57f1f2f1 [partition] Fix re-editing a newly created partition
- If there is a partition already (newly) created, then pass that
   to the dialog so that it can use the setings previously applied
   (e.g. mount point and flags).
 - This avoids the case where you create or format a partition,
   then click on it again to edit it and the previous settings are lost.
7 years ago