Commit Graph

4037 Commits

Author SHA1 Message Date
Adriaan de Groot
bf092de76f [calamares] Explain config-file failures better 2018-09-20 07:48:06 -04:00
Adriaan de Groot
39a0d2315b [calamares] Better config-loading diagnostics
- Be more verbose when things go wrong while loading module-
   configuration files.
 - Allow more forms of paths to be specified. In debug mode, this
   is mostyle helpful for the module test-loader.
2018-09-20 07:39:43 -04:00
Adriaan de Groot
c6e8cdf65b [calamares] Better command-line help in module test-loader 2018-09-20 07:07:17 -04:00
Adriaan de Groot
40e031411c [calamares] Improve debug log in module test-loader 2018-09-20 07:01:27 -04:00
Adriaan de Groot
745629b659 [fsresizer] Turn on KPMCore requirement again 2018-09-17 06:58:18 -04:00
Adriaan de Groot
d2f4079a18 [partition] Move partitioning options into a class
- As (auto) partitioning grows more options, the parameter
   list becomes more unwieldy. Add some structure to it.
2018-09-17 06:42:14 -04:00
Adriaan de Groot
3f09857cb7
Merge pull request #1013 from cjlcarvalho/master
Some RAID fixes
2018-09-17 12:25:24 +02:00
Adriaan de Groot
a6c3899e10 [fsresizer] Add tests
- Test the parsing of configuration values, that it gets the right
   values when given correct(-ish) configurations. Doesn't test
   any situations with bad config.
2018-09-14 17:59:50 +02:00
Adriaan de Groot
a81588190a [fsresizer] Simplify and make safer
- Make RelativeSize public so we can use it in non-member functions
 - Make a template out of matching the string suffixes; this is
   safer because the length of the suffix can be computed at compile-time
   (+1 for the trailing NUL) rather than writing it out in boilerplate.
2018-09-14 16:51:09 +02:00
Adriaan de Groot
cdfb55e5cf [fsresizer] Just right now it doesn't need KPMCore
- Drop the dependency while developing the configuration parser
   part of the module and writing initial tests.
2018-09-14 16:49:07 +02:00
Adriaan de Groot
4d5eb90a04 [fsresize] Add new module fsresizer
- Non-functional as yet, WIP
 - Intended for use on SBC images and similar, which need to resize
   the root partition to the size of the SD card they're on.

FIXES #921
2018-09-14 07:56:18 -04:00
Adriaan de Groot
5136021416 [partition] Move SwapChoice to another namespace
- The choice of swap needs to be handled in more places,
   so make the enum available in the partition module core instead
   of just inside the choice page.
2018-09-13 06:29:59 -04:00
Adriaan de Groot
846e496d76 [partition] Tidy includes 2018-09-13 05:50:46 -04:00
Adriaan de Groot
8c79c981b1 [partition] Simplify space calculations
- Q_ASSERT doesn't work in constexpr functions because it's not
 - May as well calculate bytes at compile-time, no need to give
   the runaround via number-of-MiB
2018-09-13 05:33:39 -04:00
Adriaan de Groot
959cd7b224 [partition] Simplify creation of comboboxes for swap choices 2018-09-13 04:45:36 -04:00
Adriaan de Groot
cfa940b35c [partition] Support translations of swap choices
- Introduce enum to indicate what is selected
 - Support translations
 - Fill selections for erase
2018-09-12 11:18:17 -04:00
Adriaan de Groot
7d0451fe69 [partition] Rename Choice -> InstallChoice
- There are more choices to be made (or to come) when partitioning,
   so don't take the most generic term for one enum.
2018-09-12 10:16:48 -04:00
Adriaan de Groot
10f7bac2df [partition] Reorder initialization 2018-09-12 10:05:14 -04:00
Adriaan de Groot
c3f3276188 [partition] Improve presentation of swap options 2018-09-12 09:20:44 -04:00
Adriaan de Groot
dc492b301c [partition] Drop label on swap-options box 2018-09-12 08:42:21 -04:00
Adriaan de Groot
a791818a65 [partition] Add swap drop-down
- This is WIP; the drop-down contents should be customised,
   depending on configuration and the state of the device being
   installed-to.
2018-09-12 08:18:45 -04:00
Adriaan de Groot
c813375908 [partition] Prepare for swap options
- Extend PrettyRadioButton with options (combo-boxes which may
   be added later).
2018-09-12 08:09:01 -04:00
Calamares CI
5291072cbc i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-09-12 05:01:25 -04:00
Adriaan de Groot
e0cd90cab1 Update the documentation and implementation of swap calculation.
Make the ramps consistent between suspend-to-disk and not,
and don't do the weird drop from 8GiB swap down to 4GiB for
large-memory systems.
2018-09-11 11:30:01 -04:00
Philip Müller
da89f461bd Merge branch 'master' of https://github.com/calamares/calamares into development 2018-09-05 19:54:36 +02:00
Adriaan de Groot
c104d14086 [partition] Call the helpers in the right order.
This fixes the crash by calling the model-reset first, then
refreshing. Previously, the destructors that do the work
were still being called in the wrong order.

FIXES #1019
2018-09-03 15:21:30 -04:00
Adriaan de Groot
fe662345bd [partition] Extra helper classes for doing reset and refresh
- The ResetHelper only finalized changes to the module on
   destruction, but calls to refresh() assumed it was already
   done. This leads to crashes when refresh() uses an intermediate
   state of the model.

Introduce extra helpers, and rename refresh() to avoid calling the
old implementation from any code. The new helper just creates and
destroys a ResetHelper, before creating and destroying an object
that calls the new refreshAfterModelChange().

FIXES #1019
2018-09-03 10:57:20 -04:00
Adriaan de Groot
4602b30264 [libcalamaresui] Use PYTHONQT_INCLUDE_DIRS
- document new variable from the CMake module
 - use it in libcalamaresui to simplify #include'ing the
   header for the "all" extension.

Suggested by Denis Proskurin.
2018-09-03 06:26:26 -04:00
Adriaan de Groot
42d606171d
Merge pull request #1020 from apachelogger/esp-eq-boot
do not set boot flag on ESP (thanks @philmmanjaro for testing)
2018-09-03 10:28:59 +02:00
Adriaan de Groot
8b6fb1f5fa
Merge pull request #1021 from apachelogger/no-active-esp
do not set active flags on the to-be ESP (thanks @philmmanjaro for testing)
2018-09-03 10:28:40 +02:00
Adriaan de Groot
a796981ace
Merge pull request #1022 from ximion/master
grubcfg: Only try to decrypt disk that /boot is on (thanks @philmmanjaro for testing)
2018-09-03 10:28:24 +02:00
Philip Müller
87726c641e [displaymanager] fix desktop_environment_setup ldm 2018-08-26 21:16:20 +02:00
Philip Müller
e3ca2dd857
[displaymanager] fix desktop_environment_setup ldm 2018-08-26 21:15:03 +02:00
Philip Müller
d133175a5c [postcfg] add ucode removal 2018-08-26 05:06:25 +02:00
Matthias Klumpp
d775cee4cf grubcfg: Only try to decrypt disk that /boot is on 2018-08-25 15:21:40 +02:00
Philip Müller
83c397620c Merge branch 'master' of https://github.com/calamares/calamares into development 2018-08-22 10:28:04 +02:00
Harald Sitter
84ad2852bf do not set boot flag on ESP
ESP == boot. at best this is duplicated information, at worst kpmcore may
implode if you try to set a boot flag since that is technically an MBR
type flag and means nothing within the context of GPT where ESP is the flag
to set.
2018-08-22 10:14:49 +02:00
Harald Sitter
81cab43701 do not set active flags on the to-be ESP
having ESP as active flag AND then trying to set ESP means nothing is
set since kpmcore will think ESP is already set (it is listed as active
after all). this ultimately meant that nothing was set since there was
no delta between the requested flags and the already active flags.
2018-08-22 10:12:36 +02:00
Adriaan de Groot
c3219a4905 [displaymanager] Fix call in LightDM code
- The parameter list was wrong, and could never have worked
   (apparently noone mixes LightDM with basic setup, even though
   it's one of the few with basic_setup()).
 - Shorten some lines.
2018-08-21 07:31:46 -04:00
Philip Müller
a1af1655b4 Merge branch 'master' of https://github.com/calamares/calamares into development 2018-08-21 09:45:33 +02:00
root
fa45e21e15 Fix default desktop environment variable in displaymanager. Closes #1016. 2018-08-20 22:21:39 -07:00
Adriaan de Groot
858c959285 Merge branch 'master' into refactor-dm 2018-08-20 17:25:26 -04:00
Adriaan de Groot
a83ee4984d [displaymanager] Enable translation for user-visible messages
See also #991
2018-08-20 12:30:44 -04:00
Adriaan de Groot
5191400d89 [displaymanager] Fix LightDM error message
- Error tuple was not being constructed properly
 - Fix capitalization consistency
2018-08-20 12:30:44 -04:00
Adriaan de Groot
ebae7e1f47 [displaymanager] Re-arrange initializations
- Move variable initializations closer to where they are first used
 - Also warn if no implementations are available
 - Handle sysconfig as any other DM; there's no real reason
   to treat it specially.
2018-08-20 12:30:44 -04:00
Adriaan de Groot
229cc241fa [displaymanager] Massage do_autologin
- Move getting the global setting closer to where it is used
 - Initialize variable
2018-08-20 12:30:44 -04:00
Adriaan de Groot
59a003a41f [displaymanager] Expand check for no-DMs
- The message refers to an empty list or unset variable,
   but the if only checked for unset. Also bail out if
   the list is empty.
2018-08-20 12:30:44 -04:00
Adriaan de Groot
2d0660a54a [displaymanager] Fix up missing methods
- Add (empty) implementations of all the abstract methods that
   are not needed (or supported) by various DMs.
 - Order the abstract methods by calling order
 - Fix up have_dm
2018-08-20 12:30:44 -04:00
Adriaan de Groot
155e212616 [displaymanager] Call all configuration methods through instance
- Make root_mount_point a parameter of the DM classes
 - Create instances as needed, then check if they're available
 - Keep instances that actually need to be configured
 - Clean up remaining cruft from removing old setup_autologin()
   with all the string-comparison magic.
2018-08-20 12:30:44 -04:00
Adriaan de Groot
18392cb216 [displaymanager] Refactor greeter setup
- Only lightdm has support for dynamically configuring the
   greeter based on what is installed. Still, refactory that
   to something general.
2018-08-20 12:30:44 -04:00
Adriaan de Groot
383e0e4f25 [displaymanager] Refactor setting up default DE
- Some DMs allow setting up the default DE. Factor that
   out into a method like basic_setup() and setup_autologin()
   and add it to the configuration chain.
2018-08-20 12:30:44 -04:00
Adriaan de Groot
1c0b9e6a2a [displaymanager] Call basic_setup through instance
- Now that basic_setup is factored out into the classes,
   call it via an instance before doing set_autologin.
2018-08-20 12:30:44 -04:00
Adriaan de Groot
cd0cdfc9af [displaymanager] Move basic setup to DM classes
- For all the DMs that have some kind of basic setup,
   introduce a method in the DM class for doing just that.
 - The Python code now doesn't call basic setup anywhere,
   so this specific revision isn't going to work properly.
2018-08-20 12:30:44 -04:00
Adriaan de Groot
47b58083f7 [displaymanager] Move setup_autologin to individual classes
- Split the entire body of setup_autologin() to a method
   per implementation class.
 - Make the check for presence of a DM a class-method,
   since if it fails, instantiation is going to be useless.
2018-08-20 12:30:44 -04:00
Adriaan de Groot
e1f7dbdbb9 [displaymanager] Simplify do_autologin initialization 2018-08-20 12:30:44 -04:00
Adriaan de Groot
7f47b2f9ca [displaymanager] Introduce class for DM configuration
- Much like PackageManager, this is where the actual
   implementation of configuration methods will end up,
   for each supported DM.
2018-08-20 12:30:44 -04:00
Adriaan de Groot
f188c6f71b [displaymanager] Simplify DE class
- The DE isn't being configured, and isn't where the complexity
   lies. Drop the ABC from it.
2018-08-20 08:14:52 -04:00
Adriaan de Groot
76a7c439c1 [displaymanager] Begin refactoring DM
- Introduce a base-class to "do the stuff" for one specific
   display manager / desktop environment.
2018-08-20 07:37:46 -04:00
Philip Müller
46e53997a8 Merge branch 'master' of https://github.com/calamares/calamares into development 2018-08-20 12:32:10 +02:00
Adriaan de Groot
c3cef4d919 [displaymanager] Avoid unassigned variable
If displaymanagers is not set in the job config or globally,
it wasn't set at all, leading to a runtime error. Set to
None, so that the regular error message will be triggered.

FIXES #1002
2018-08-20 06:17:05 -04:00
Adriaan de Groot
08d41f745b [partition] Remove superfluous null check
delete is specified to handle nullptr gracefully.

FIXES #1012
2018-08-20 06:09:30 -04:00
Caio Carvalho
01a972c6ea [partition] Fixing LVM LV name line edit visibility. 2018-08-13 13:05:41 -03:00
Caio Carvalho
b5a2a5bbdd [partition] Don't show erase button for inactive RAID. 2018-08-13 12:26:00 -03:00
Caio Carvalho
7fd0ad5795 [partition] Disabling partition buttons for inactive RAID. 2018-08-13 09:51:35 -03:00
Andrius Štikonas
22aa6dc132 [partition] fix build with latest kpmcore. 2018-08-12 14:26:43 +01:00
Adriaan de Groot
8dc95f3e75 Merge branch 'master' of github.com:calamares/calamares 2018-08-11 09:02:25 -04:00
Philip Müller
271a1ffa86 Merge branch 'master' of https://github.com/calamares/calamares into development 2018-08-10 21:14:24 +02:00
Simon Quigley
5c50587f89
Fix LUKS deployment link. 2018-08-10 13:23:31 -05:00
Adriaan de Groot
bf40f3bd23 Merge branch 'master' into requirements-checking 2018-08-10 12:02:57 -04:00
Adriaan de Groot
f946254433 [branding] Document compiling .ts files
FIXES #1003
2018-08-10 07:47:09 -04:00
Adriaan de Groot
3b82e655d7 Merge remote-tracking branch 'origin/update-lvm-support' 2018-08-08 15:28:11 -04:00
Philip Müller
c8eec9e5f0 Merge branch 'master' of https://github.com/calamares/calamares into development 2018-08-08 17:19:56 +02:00
Adriaan de Groot
238a1e812f [partition] Reduce the fudge-factor for swap size
- Reported by Bill Auger (I think), a 15GiB disk wouldn't hold
   a 8.9GiB root plus 4GiB swap -- due to 10% overprovisioning
   of swap, plus the 2.1GiB fudge factor.
2018-08-08 05:58:41 -04:00
Adriaan de Groot
f10bab8a3a [partition] Minor code-styling 2018-08-08 05:29:19 -04:00
Adriaan de Groot
8ed26e537f [partition] Fix swap maximum size
- The existing calculation comment says "maximum 10% of disk"
   but the calculation itself uses 110%.
2018-08-08 05:26:55 -04:00
Adriaan de Groot
59fea041b6 [partition] Fix up calculations of sectors in auto-partition
- Calculating first free sector had an off-by-one so that
   partitioning would start at 2049.
 - EFI boot partition grew 1 sector larger than desired.
 - While here, align everything to 1MiB boundaries as well.

FIXES #1008
2018-08-08 05:19:09 -04:00
Adriaan de Groot
1cbfa9d693 [partition] Simplify code for sizing 2018-08-08 04:49:13 -04:00
Calamares CI
8c32fc75a1 i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-08-06 05:15:49 -04:00
Philip Müller
627161258f Merge branch 'update-lvm-support' of https://github.com/calamares/calamares into development 2018-07-22 08:33:58 +02:00
Philip Müller
73faaeae2f Merge branch 'master' of https://github.com/calamares/calamares into development 2018-07-17 06:43:49 +02:00
Adriaan de Groot
ba639beb9a Merge branch 'master' into update-lvm-support 2018-07-12 13:28:00 -04:00
Adriaan de Groot
ae7700f2d7 [libcalamares] Refactor searching for module configurations
- Similar to the refactorings in Calamares proper, just split out
   collecting the search paths into a static function. This makes
   it a little easier to find places that will need expansion for
   more-than-one-config-directory.
2018-07-10 04:12:24 -04:00
Adriaan de Groot
f899bda81d [calamares] Restore missing search paths
- Misplaced {} makes the branding search path empty
 - Reported by @apachelogger
2018-07-05 12:01:44 +02:00
Adriaan de Groot
b0e55c059a [calamares] Refactor searching for branding descriptor 2018-06-29 10:52:12 -04:00
Adriaan de Groot
22ee24a5ad [calamares] Refactor searching for settings.conf
- Split the collection of paths off from the search itself.
2018-06-29 10:15:43 -04:00
Adriaan de Groot
3329f2ea55 [calamares] Refactor searching for QML dir
- Split collecting the search paths into separate function
 - Don't fall back on the current directory
2018-06-29 09:43:32 -04:00
Philip Müller
15eaff15fb [services-systemd] add Manjaro specific settings 2018-06-29 08:30:58 +02:00
Philip Müller
62e065c52f [merge] sync with upstream 2018-06-29 08:25:08 +02:00
Adriaan de Groot
5d5feeb0ab Merge branch 'master' of https://github.com/cjlcarvalho/calamares into lvm-update 2018-06-28 23:48:13 +02:00
Adriaan de Groot
f118fd73bc [calamares] More info when Cala is already running
- If Calamares is already running, print some information
   about which instances there are so that it is possible
   to unstick them.
2018-06-28 06:29:55 -04:00
Adriaan de Groot
1957478618 [services-systemd] Follow the flexible example of openrc
- Make *mandatory* optional (and default to false); this
   allows shorter lists of entries
 - Allow degenerate entries which are just a name
   (which have *mandatory* set to false as well).

SEE #992
2018-06-27 11:25:11 -04:00
Adriaan de Groot
73ecd7320c [services-openrc] Introduce *mandatory* subkey
- Follow services-systemd and have a *mandatory* subkey
   that selects for install-failure instead of just a warning.

FIXES #992
2018-06-27 11:12:33 -04:00
Adriaan de Groot
72c0d1a101 [services-openrc] Make list of services more flexible
- Allow just a name entry, instead of requiring an object
   entry; this makes "foo" equal to { name: "foo", runlevel: "default" }
   and simplifies more for the straightfoward case of #974.
2018-06-27 10:34:50 -04:00
Adriaan de Groot
b02ee3cd8d [services-openrc] Follow services-systemd configuration example
- Based on comments from #974, follow the configuration
   scheme from services-systemd, so with separate lists
   "services" and "disable". This ties it **slightly**
   less closely to the commands passed to rc-config.
2018-06-27 10:34:50 -04:00
Adriaan de Groot
dbcc419218 [services-openrc] Log failures
- If the rc-update command fails for some reason, log that
   failure instead of skipping it completely silently.
 - Fix syntax error as well
2018-06-27 10:34:36 -04:00
Adriaan de Groot
5a2ae7a250 [services-openrc] Simplify name extraction, default runlevel
- If runlevel isn't set (at all) then use "default". For
   most systems that do not use multiple runlevels, this
   simplifies the configuration to just a list of service names
   to add or delete.
2018-06-27 09:36:05 -04:00
Adriaan de Groot
8f0db9dc74 [services-openrc] Log configuration failures
- If services don't exist, or runlevels don't exist,
   log them instead of failing completely silently.
2018-06-27 09:31:02 -04:00
Adriaan de Groot
cd640bda9f [services-openrc] Restrict actions
- Document the functions some more
 - Only "state" (i.e. action) "add" and "del" make sense,
   avoid calling rc-update for other keys (e.g. typo's).
   This matches the documentation, although there might be
   other actions that make sense (see also services-systemd,
   with its enable, disable and mask actions).
2018-06-27 09:21:31 -04:00
Adriaan de Groot
b1881d1cd2 [services-*] Adjust Copyright notices 2018-06-27 09:19:05 -04:00
Adriaan de Groot
e1d306dc2f [services-openrc] Adjust documentation and follow renaming 2018-06-27 09:11:51 -04:00
Adriaan de Groot
55e273ff00 Merge branch 'openrccfg' of https://github.com/artix-linux/calamares into artix-linux-openrccfg 2018-06-27 08:57:31 -04:00
Adriaan de Groot
59b07cc720 [services-systemd] Be more resilient in the config
- If a key is not given, use [] instead of crashing.
2018-06-27 07:14:18 -04:00
Adriaan de Groot
c9c777b055 [services-systemd] Introduce disable-targets and mask
- With refactored code, introducing new kinds of actions
   is very few lines of code. Allow disabling targets
   (services was already possible). Allow masking units,
   but as a special case require the complete name.

FIXES #975
2018-06-27 07:09:03 -04:00
Adriaan de Groot
5d6e07712b [services-systemd] Refactor getting config
- Don't create temporary variables
 - Change API slightly to accomodate more (kinds of) suffixes
2018-06-27 05:14:18 -04:00
Adriaan de Groot
0520fc3b7e [services-systemd] Refactor to repeat less code
- The three steps of modifying services in the target
   system do basically the same thing, so factor out
   the loops and logging into a systemctl() function.
 - Log to warning() instead of just debugging, on failure.
2018-06-27 05:07:18 -04:00
Adriaan de Groot
08fc93f137 [services] Rename to services-systemd 2018-06-26 10:57:03 -04:00
Adriaan de Groot
d66393f1ae [libcalamares] Fix early failure mode
- There is more to failing out of loadModules() than just
   emitting modulesFailed, so instead share the failure
   code with the code after loading modules -- but don't load any.
2018-06-26 08:43:23 -04:00
Adriaan de Groot
0db8082ae1 [libcalamares] Convenience type 2018-06-26 08:41:16 -04:00
Adriaan de Groot
08966ff933 [libcalamaresui] Check module dependencies
- Module dependency-checking is done in two phases:
   first, catch any unknown modules that are listed
   in *requiredModules* and bail out before loading
   anything. Second, check that the modules required
   by X occur before X in the sequence.
2018-06-26 08:32:36 -04:00
Adriaan de Groot
731594fb40 [libcalamaresui] Remove the requiredModules setting
- The value set in module.desc was never stored for use,
   but isn't an attribute of the instance, either. It belongs
   with the descriptor, in ModuleManager.
2018-06-26 08:18:00 -04:00
Adriaan de Groot
40252f1000 [removeuser] Minor documentation 2018-06-26 06:52:37 -04:00
Adriaan de Groot
1eede6f797 [modules] Configuration documentation for mount and luksopenswaphookcfg 2018-06-26 06:50:16 -04:00
Adriaan de Groot
63c03068c0 [modules] Documentation for fstab, grubcfg, mkinitcpio
- These modules were entirely documented as "use the source",
 - The sources aren't terribly clear either.
2018-06-26 06:39:30 -04:00
Adriaan de Groot
52f09f7f46 [modules] Minor documentation work on modules a-g 2018-06-26 05:47:23 -04:00
Adriaan de Groot
c086d18a26 CMake: improve error-handling for USE_*
If USE_<foo> is given a value that doesn't match **anything**,
then bail out. Since USE_* is an explicit distro choice for a
specific implementation, it's an error if that implementation
is not there.
2018-06-26 05:33:01 -04:00
Adriaan de Groot
b2c2b91645 CMake: introduce USE_<foo>
When there are multiple modules doing a thing and it really only
makes sense to have one of them in a given Calamares compilation,
the USE_<foo> variables allow you to select one, while ignoring
all the other implementations. If USE_<foo> is not set, all
implementations are included (as usual).
2018-06-26 05:18:10 -04:00
Adriaan de Groot
29830bc1e1 [services] Document the configuration file.
- Change the example to be harmless (empty)
 - Document the structure of the entries
2018-06-26 04:35:00 -04:00
Caio Carvalho
589628bb9a [partition] Removing unnecessary horizontal spacer on Partition Page. 2018-06-26 01:44:35 -03:00
Caio Carvalho
67d9ebbfc0 [partition] Setting revertButton enabled after deactivating VG. 2018-06-26 01:29:57 -03:00
Caio Carvalho
295e14530e [partition] Adding resizing, deactivating and removing procedures for LVM VGs. 2018-06-26 00:38:52 -03:00
Philip Müller
c5c48bafa0 Merge branch 'master' of https://github.com/calamares/calamares into development 2018-06-25 18:56:15 +02:00
Calamares CI
c8de7e4d92 i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-06-25 10:02:55 -04:00
udeved
88e082d531 openrccfg: add small documentation in conf, make service location configurable 2018-06-25 12:15:26 +02:00
Raul Rodrigo Segura
f25d6b278d add support onLeave and onActivate to pythonqt plugins 2018-06-21 13:21:48 +02:00
Philip Müller
92f2461337 Merge branch 'master' of https://github.com/calamares/calamares into development 2018-06-21 07:38:30 +02:00
Adriaan de Groot
47b130c539 Merge remote-tracking branch 'origin/fix-localegen'
FIXES #940
2018-06-20 16:25:42 +02:00
Adriaan de Groot
d59a44be44 [libcalamares] Asking for type of undefined node throws
- Use YAML-CPP API for finding out if a node has a value at all.
 - Asking for Type() of an undefined or NULL node throws an
   exception, so the existing code didn't **actually** catch
   cases where a required setting wasn't set at all.
2018-06-20 15:59:23 +02:00
Adriaan de Groot
25f249180b [localecfg] Be slightly more conservative interpreting comments
- A valid line (as explained in the comments at the top of
   the locale.gen file) is <locale> <encoding> (two fields),
   so lines with more than two fields can't be valid locale-
   listing lines. For them, pretend they name locale "",
   which won't be matched.
2018-06-20 09:11:23 -04:00
Adriaan de Groot
8551653575 [localecfg] Re-write the locale.gen file better
- Improved debug-logging
 - Fix the actual problem of listing locales more than once,
   by listing them all, uniqified, at the end, with an explanitory
   comment in the generated file.
 - Be more accepting of what constitutes a locale-line; this allows
   spaces before and after the `#` comment sign, but because we're
   uniquifying, this doesn't cause duplicates.
 - Because we write the enabled locales at the end, the full file
   comment-header is retained un-mangled (instead of accidentally
   enabling a locale mentioned as an example there).
2018-06-20 08:35:18 -04:00
Adriaan de Groot
413ee81ead [localecfg] Simplify handling of en_US
- By adding en_US to the set of locales-to-enable, we can
   drop the special-case code for it.
2018-06-20 07:13:36 -04:00
Adriaan de Groot
ec09272b81 [libcalamares] Fix inverted logic
Reported by bshah.
2018-06-19 18:08:14 +02:00
Adriaan de Groot
b283ad69d5 [libcalamares] Complain if key isn't set
- Previous check would also fail when the setting is false,
   not just when the key is missing.
2018-06-19 17:59:28 +02:00
Adriaan de Groot
efc977f7b4 [localecfg] Fix mismatch between filenames
Testing for existence of a file in the live system, and then
copying it in the target system, is not a recipe for success.

 - Fix the restore-from-backup part.
 - Document that your live and target system must both have
   /etc/locale.gen if you want this to work at all.
2018-06-19 08:56:37 -04:00
Adriaan de Groot
7498629b5f [localecfg] Move all path-setting to one spot
- Make the way the paths are constructed consistent
 - Name the paths more consistently
2018-06-19 08:46:50 -04:00
Adriaan de Groot
863d00f40c [localecfg] Document purpose of this module 2018-06-19 08:42:25 -04:00
Adriaan de Groot
1a097f8c49 Style: run modulesystem through the style guide 2018-06-18 10:56:10 -04:00
Adriaan de Groot
58121abf06 [libcalamaresui] Wasted spaces 2018-06-18 10:44:28 -04:00
Adriaan de Groot
a64de3dbfe [libcalamaresui] Assign the index to found
- Previous code assigns the result of the comparison to found,
   instead of the index, resulting in the wrong configuration
   map sent to each module.
2018-06-18 10:29:30 -04:00
Adriaan de Groot
398b6be4ba Update issue template 2018-06-18 10:24:35 -04:00
Kevin Kofler
15e9edca70 [packages]: Implement update_system for pkcon, yum, dnf
Also make install for yum and dnf follow the documented syntax: options
(-y) before the command (install), even though yum and dnf also accept
the other order. This also makes it consistent with remove.
2018-06-18 13:53:58 +02:00
Adriaan de Groot
9d17e7210a [partition] Change shortcut for "Create" to 'a'
Untangle the shortcuts; Create and Cancel had an overlap.
Skip 'r' (Revert all changes) and 'e' (Edit) and settle on
'a' (which might also mean "Add").

FIXES #977
2018-06-18 13:28:35 +02:00
Philip Müller
3a3a4ec363 [packages] update documentation 2018-06-17 13:15:55 +02:00
Philip Müller
c600c3ecca [packages] update documentation to reflect 'update_db' and 'update_system' differences 2018-06-17 13:10:59 +02:00
Philip Müller
1bd149c14e [packages] add initial support for update target system 2018-06-17 12:53:31 +02:00
Philip Müller
18bd455ae1 [bootloader] make paths for executable optional and adjustable 2018-06-17 07:47:58 +02:00
Calamares CI
88c168e6d5 i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-06-16 19:27:46 -04:00
Philip Müller
5f78d49777 Merge branch 'master' of https://github.com/calamares/calamares into development 2018-06-16 08:14:07 +02:00
Adriaan de Groot
5643ee4b8f Merge branch 'master' into secureboot 2018-06-15 13:14:58 -04:00
Adriaan de Groot
374a9bdca6 Merge branch 'emergency-modules'
Introduce the notion of emergency modules and emergency jobs.
Initial use will probably center around the preservefiles module,
and possibly umount.

FIXES #928
2018-06-15 12:04:55 -04:00
Adriaan de Groot
264d135776 [libcalamares] Run emergency jobs
- After a failure, skip non-emergency jobs.
 - After running all emergency jobs, then emit failure message.
 - In log, distinguish emergency and non-emergency jobs.
2018-06-15 11:45:02 -04:00
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).
2018-06-15 10:20:07 -04:00
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.
2018-06-15 09:32:19 -04:00
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.
2018-06-15 07:29:55 -04:00
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
2018-06-15 07:11:17 -04:00
Adriaan de Groot
b92bef21f8 [libcalamares] Avoid using namespace std; 2018-06-15 06:21:05 -04:00
Adriaan de Groot
fa08e0ad73 Copyright: fix bad email address 2018-06-15 06:15:43 -04:00
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>
2018-06-15 05:59:11 -04:00
Adriaan de Groot
d2f2aa9a97 [branding] Link to the examples repository 2018-06-15 05:29:03 -04:00
Adriaan de Groot
99163c9a68 Style: stray space 2018-06-15 04:46:53 -04:00
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.
2018-06-15 04:41:41 -04:00
Adriaan de Groot
2d7eea6d73 Merge branch 'master' into emergency-modules 2018-06-14 17:15:40 -04:00
Caio Carvalho
98a158c6e5 [partition] kpmcore latest release doesn't support FileSystem::Type::Luks2 2018-06-14 15:37:00 -03:00
Adriaan de Groot
290559f8c1
Merge pull request #986 from raurodse/configurationPythonQt
Add configuration values into pythonqt modules
2018-06-14 13:19:42 -04:00
Raul Rodrigo Segura
448c5eae16 style code 2018-06-14 16:33:58 +02:00
Adriaan de Groot
67ad37581f [contextualprocess] Document corner-case
The "*" will match its literal value, but is also used as a wildcard.
2018-06-14 14:57:17 +02:00
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.
2018-06-14 14:54:14 +02:00
Adriaan de Groot
96cb42414c Merge remote-tracking branch 'origin/improve-settings-sanitization' 2018-06-14 07:34:53 -04:00
Adriaan de Groot
6cdb2daca3 Merge abucodonosor-plymouth 2018-06-14 07:01:41 -04:00
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
2018-06-14 06:58:24 -04:00
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
2018-06-14 06:46:06 -04:00
Adriaan de Groot
fa0518f968 [contextualprocess] Make conversion explicit
- Should help with Qt 5.7 compatibility. Reported from Neptune
   Linux, #979
2018-06-14 05:41:43 -04:00
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.
2018-06-14 05:03:14 -04:00
Calamares CI
0ea3d85ab0 i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-06-14 04:47:53 -04:00
Adriaan de Groot
a8426730ca [libcalamaresui] Improve wording of modules failure warning 2018-06-14 02:48:52 -04:00
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.
2018-06-14 02:35:49 -04:00
Adriaan de Groot
bb5ac0326d [libcalamaresui] Improve layout of "blank" view step 2018-06-14 02:33:03 -04:00
Adriaan de Groot
9918dfb95f [libcalamaresui] Reporting on failures
- Provide information on failed modules
 - Disallow further progress when configuration is borked
2018-06-13 13:41:38 -04:00
Adriaan de Groot
3e24c3c58f [libcalamaresui] Provide standardised large font 2018-06-13 13:41:38 -04:00
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
2018-06-13 04:37:52 -04:00
Raul Rodrigo Segura
d61b32aba6 Add configuration values into pythonqt modules 2018-06-12 13:44:28 +02:00
Caio Carvalho
3b6c764f75 [partition] Fixing revert device loop error in PartitionCoreModule::revertAllDevices. 2018-06-11 18:38:57 -03:00
Adriaan de Groot
35124c149e [libcalamaresui] Drop the 'goodbye' message 2018-06-11 13:35:12 -04:00
Adriaan de Groot
a732ce11bc [libcalamares] Warn more about badly-formed config 2018-06-11 08:35:35 -04:00
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
2018-06-11 06:28:31 -04:00
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).
2018-06-11 05:59:56 -04:00
Caio
0465cc4214 [partition] Including revert on creation of LVM VGs. 2018-06-08 20:20:05 -03:00
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.
2018-06-08 18:14:51 -04:00
Adriaan de Groot
dccf6f16f5 [libcalamaresui] Lambdas are fun, but not always the solution 2018-06-08 17:56:23 -04:00
Caio
f8897e0e0b [partition] Including new LVM PVs in LVM VG creation GUI. 2018-06-08 18:52:53 -03:00
Adriaan de Groot
a626e52bf3 [libcalamares] Introduce more descriptive type name 2018-06-08 17:36:29 -04:00
Philip Müller
c652970f02 Merge branch 'master' of https://github.com/calamares/calamares into development 2018-06-08 09:22:56 +02:00
Caio
e5351cdf3c [partition] Don't show capacity of new LVM VGs in DeviceModel. 2018-06-07 17:49:25 -03:00
Caio
208d58bcd9 [partition] Including CreateVolumeGroupDialog and fixing some of its GUI issues. 2018-06-07 17:22:22 -03:00
Adriaan de Groot
24b0df3c04 [locale] Missing includes
- Implicitly included in recent Qt, but not in old versions

Reported from Neptune Linux
2018-06-07 09:03:54 -04:00
Adriaan de Groot
83688f2837 Merge remote-tracking branch 'origin/shuffle-cmake' 2018-06-07 08:45:19 -04:00
Adriaan de Groot
fe7f48662e Merge branch 'fix-iceland' (again) 2018-06-07 08:44:53 -04:00
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.
2018-06-07 13:31:12 +02:00
Caio
d15ce56c97 [partition] Initial implementation of VolumeGroupBaseDialog. 2018-06-04 16:31:58 -03:00
Calamares CI
54515688f7 i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-06-04 08:21:59 -04:00
Adriaan de Groot
8430970e71 [preservefiles] Reduce copying by using const-ref into list 2018-06-07 13:47:41 +02:00
Gabriel Craciunescu
41d427e543 [modules]: hwclock fix typo
- methode -> method
2018-06-01 17:45:40 +02:00
Adriaan de Groot
b66d4856e7 [libcalamaresui] Use modern C++ for (auto)deleting failed modules 2018-05-30 07:51:23 -04:00
Philip
518a944884 Merge branch 'master' of https://github.com/calamares/calamares into development 2018-05-30 00:10:17 +02:00
Adriaan de Groot
40b60abcb3 [locale] Move constants for map-munging
These don't have to be defines at all.
2018-05-29 11:29:44 -04:00
Adriaan de Groot
1ee87c3cde [locale] Drop debugging define 2018-05-29 08:16:43 -04:00
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.
2018-05-29 08:16:43 -04:00
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
2018-05-29 08:15:33 -04:00
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.
2018-05-29 06:33:50 -04:00
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
2018-05-29 06:09:25 -04:00
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.
2018-05-29 06:09:25 -04:00
Adriaan de Groot
eddee7d76a [libcalamaresui] No point in isLoaded() being virtual. 2018-05-29 03:38:17 -04:00
Adriaan de Groot
a04915e6fa [libcalamaresui] Add 'emergency' concept to modules. 2018-05-29 03:37:37 -04:00
Adriaan de Groot
fdda1ef840 [bootloader] Mimic openSUSE's efibootmgr calls 2018-05-28 11:47:47 -04:00
Adriaan de Groot
dad3669eae [bootloader] Take a stab at determining the shim name 2018-05-28 09:26:20 -04:00
Adriaan de Groot
e4bda546cf [bootloader] factor our EFI-platform-bitness discovery 2018-05-28 09:24:43 -04:00
Adriaan de Groot
cbd62fbeb1 Merge branch 'master' into secureboot 2018-05-28 05:04:03 -04:00
udeved
a878c1a610 add openrccfg 2018-05-28 01:31:55 +02:00
Calamares CI
51b50b9366 i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-05-26 07:24:36 -04:00
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
2018-05-26 07:09:01 -04:00
Philip
e31cb0a77b Merge branch 'master' of https://github.com/calamares/calamares into development 2018-05-26 11:07:07 +02:00
Adriaan de Groot
ce3e09318a [preservefiles] Improve failure messages 2018-05-24 07:03:19 -04:00
Adriaan de Groot
28a42a7230 Merge branch 'filepreserver' 2018-05-24 06:52:27 -04:00
Adriaan de Groot
cdadc2f003 [libcalamares] Improve error logging during module loading 2018-05-24 06:47:13 -04:00
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.
2018-05-24 06:46:11 -04:00
Adriaan de Groot
48771f968a [calamares] Load and execute the modules
This runs dummyprocess, at least, but the other three dummies coredump.
2018-05-24 06:46:11 -04:00
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.
2018-05-24 06:46:11 -04:00
Adriaan de Groot
fdda0e14aa [libcalamaresui] Improve explainYamlException
- overloads for common kinds of label
 - improve error reporting when reading settings and branding files
2018-05-24 06:46:11 -04:00
Adriaan de Groot
e5ca8e091f [libcalamaresui] Use refactored loadYaml 2018-05-24 06:46:11 -04:00
Adriaan de Groot
261c545476 [libcalamaresui] Refactor loading of YAML to QVariantMap 2018-05-24 06:46:11 -04:00
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.
2018-05-24 06:46:02 -04:00
Philip
2b4a087f39 Merge branch 'master' of https://github.com/calamares/calamares into development 2018-05-23 19:56:52 +02:00
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.
2018-05-23 13:49:23 -04:00
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
2018-05-23 10:01:31 -04:00
Adriaan de Groot
8b00a03423 [shellprocess] Test command-substitution 2018-05-23 09:29:43 -04:00
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).
2018-05-23 09:25:57 -04:00
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.
2018-05-23 09:09:03 -04:00
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
2018-05-23 08:53:11 -04:00
Adriaan de Groot
dae84d3bb1 [users] Improve explanation of other steps of adding a user 2018-05-23 08:11:49 -04:00
Adriaan de Groot
01ff1efc5d [users] Improve explanation when useradd fails 2018-05-23 07:03:59 -04:00
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.
2018-05-23 05:23:46 -04:00
Adriaan de Groot
ed15edabf9 [users] Document passwordRequirements and code 2018-05-23 04:37:18 -04:00
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.
2018-05-22 11:45:39 -04:00
Adriaan de Groot
6aa5be192b [netinstall] Drop unused includes 2018-05-22 11:43:14 -04:00
Calamares CI
a79e62ac6b i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-05-22 11:37:24 -04:00
Adriaan de Groot
3133e759d0
Merge pull request #958 from bill-auger/patch-2
avoid pinging hard-coded server for netinstall.yaml
2018-05-22 12:08:01 +02:00
bill auger
b6673f6324 move thisModule->isLoaded assert to after it's warning message 2018-05-22 03:39:16 -04:00
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
2018-05-21 18:43:57 -04:00
Adriaan de Groot
fb94c227f6 Merge branch 'netinstall' 2018-05-21 11:00:40 -04:00
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.
2018-05-21 10:58:57 -04:00
Adriaan de Groot
3160bd7a54 [netinstall] Simplify getting configuration
- Use convenience methods for getting bools and strings from
   the configuration map. Ignore empty groupsUrls.
2018-05-21 10:49:47 -04:00
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
2018-05-21 06:30:54 -04:00
Adriaan de Groot
6c87747a5d [libcalamares] Make it possible to get the logfile name 2018-05-21 06:30:54 -04:00
Adriaan de Groot
5bcd6eaef8 [partition] Reduce warnings by removing unused code 2018-05-21 06:30:54 -04:00
bill auger
4826af97a9 consistent indentation in src/modules/netinstall/page_netinst.ui
this file has 1 space char indentation except for these lines
2018-05-19 19:04:24 -04:00
Philip
001d6cf9d3 Merge branch 'master' of https://github.com/calamares/calamares into development 2018-05-18 20:56:34 +02:00
Calamares CI
6b02da9e9e i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-05-17 11:04:13 -04:00
Frede H
f2677b0879
Update CreateUserJob.cpp
Removal of the hardcoded shell, letting the `/etc/default/useradd` be responsible for the shell.
2018-05-17 12:52:09 +02:00
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
2018-05-16 11:37:27 -04:00
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
2018-05-16 11:20:40 -04:00
Calamares CI
6d1f5433b4 i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-05-16 11:02:48 -04:00
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
2018-05-16 10:56:06 -04:00
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.
2018-05-16 09:14:50 -04:00
Adriaan de Groot
ca03dad67b [partition] Refactor setting the flags UI
- Setup the lsit of flags consistently, by providing the available
   and to-be-checked flags.
 - In CreatePartitionDialog, assume that ~0 is all the flags.
2018-05-16 09:07:45 -04:00
Adriaan de Groot
4f451eece5 [partition] Refactor getting the checked flags 2018-05-16 08:41:47 -04:00
Adriaan de Groot
950cc9070d [partition] Rename MountPoints to PartitionDialogHelpers
This file is full of helper functions for the partition-editing
dialogs. At first it was just mount-point helper functions,
but there is other functionality that can be refactored.
2018-05-16 08:34:33 -04:00
Adriaan de Groot
336b8c758a [partition] Consider the future flags when checking EFI bootability
- If we're changing the flags to enable EFI boot, then that's
   enough to satisfy the (future) EFI bootability check.
   This is for issue #622 as well. Fixes #884.
2018-05-16 07:33:04 -04:00
Adriaan de Groot
0df304b206 [partition] Preserve desired partition flags
- Use the desired (future) flags, if set, to initialize the
   flags checkboxes. If there are no future flags set, this
   returns active flags as before.
 - This fixes the situation where editing a partition, changing
   flags, then editing it *again* re-starts with the original
   flags instead of the modified flags.
2018-05-16 07:19:34 -04:00
Adriaan de Groot
6739b81c2a [partition] Tell PartitionInfo about desired flags
- When creating a partition, or changing flags, tell
   the PartitionInfo about those desired flags.
2018-05-16 07:13:35 -04:00
Adriaan de Groot
7df143f64a [partition] Add flags to PartitionInfo
- PartitionInfo maintains information on "what is desired" for
   a given Partition. Now we can set desired flags, alongside
   the flags already supported by Partition (where activeFlags()
   gives you the flags currently set on that partition).
2018-05-16 06:53:35 -04:00
Adriaan de Groot
5b4668822d [partition] Also update combo box index when setting up
- Avoids case where you edit a partition with a mountpoint
   set; previously, calling setText() would update the text
   but leave the selected index unchanged (usually 0), so that
   later calling selectedMountPoint() would return empty.
2018-05-16 06:15:33 -04:00
Adriaan de Groot
323d20d1a5 [partition] Avoid sneaking an empty string into the mount points combo 2018-05-15 08:26:01 -04:00
Adriaan de Groot
255a99d714 [partition] Drop now-unneeded debugging 2018-05-15 08:13:15 -04:00
Adriaan de Groot
310555f16b [partition] Add /srv to standard mount-points list. 2018-05-15 08:06:45 -04:00
Adriaan de Groot
4402198b37 [partition] Centralize setting-of-mountpoint
- map empty to the 0'th index
 - add new entries as needed

This avoids having selected index 0, but a different text.
2018-05-15 08:01:18 -04:00
Adriaan de Groot
a49c39bb53 [partition] Unmap mount-point special strings
- Reverse "(no mount point)" to the empty string
 - Provide convenience pointer-taking function
2018-05-15 06:30:18 -04:00
Adriaan de Groot
a4997c4be8 [partition] Convenience for selecting default mount point
- map blank to the "(no mount point)" string for UI purposes
2018-05-15 06:13:19 -04:00
Adriaan de Groot
fda2e54e0f [partition] Refactor filling combobox with moint points
- Move to one place which handles the standard mount points
 - While here, introduce explicit "(no mount point)" string
   into the combo box. This is prep-work for issue #951.
2018-05-15 05:40:52 -04:00
Adriaan de Groot
39bf2eb9aa [welcome] Fix display of unsupported locales
- Some locales have no nativeLanguageName(), so instead display
   the locale id (e.g. "eo") and the resulting language in English
   (which, if it is really unsupported, will be "C").
2018-05-14 06:28:57 -04:00
Calamares CI
03c2329093 i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-05-14 06:28:57 -04:00
Adriaan de Groot
29848e0279
Merge pull request #950 from cjlcarvalho/master
[partition] Only bootloader model should ignore devices that are not of Disk_Device type
2018-05-14 10:47:57 +02:00
Philip
6f4dff78a7 [partition] Only bootloader model should ignore devices that are not of Disk_Device type #950 2018-05-12 10:05:34 +02:00
Philip
96e04b1285 Merge branch 'master' of https://github.com/calamares/calamares into development 2018-05-11 08:30:09 +02:00
Caio Carvalho
f72f7bd8fe [partition] Only bootloader model should ignore devices that are not of Disk_Device type. 2018-05-10 18:37:37 -03:00
Adriaan de Groot
ccdfe53201
Merge pull request #945 from cjlcarvalho/master
- Switch to enum types
 - Ignore LVM
 - Check LUKS support

Builds locally in my Manjaro test-box and kpmcore 3.3.0
2018-05-10 13:39:58 +02:00
Adriaan de Groot
2da09f7648 [libcalamaresui] Fix build
- Include all headers for types that need to be fully-defined
   (e.g. return types). This guards against uses in contexts where
   those headers have not been implicitly or previously included.

FIXES #948
2018-05-10 05:39:22 -04:00
Caio Carvalho
77d2667b53 [partition] Checking if there is LUKS creation support and if partition is not Extended before enabling encryption in CreatePartitionDialog. 2018-05-08 01:30:41 -03:00
Adriaan de Groot
96887e754c i18n: drop es_ES, add tooling 2018-05-07 09:14:18 -04:00
Adriaan de Groot
ff43752f47 i18n: pl_PL has merged into pl 2018-05-07 05:58:04 -04:00
Adriaan de Groot
a38a2a54f7 [locale] Check all XML TimeZone elements if needed
- reduce warnings about loop-executed-only-once
 - if there is more than one TimeZone element, use the virst valid one
 - warn if nothing is found
2018-05-07 05:18:35 -04:00
Calamares CI
0fc30d6cd6 i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-05-07 05:01:49 -04:00
Caio Carvalho
f561f04591 [partition] Changing PartUtils::getDevices to ignore devices that aren't of Disk_Device type. 2018-05-03 14:50:13 -03:00
Caio Carvalho
8726b70574 [partition] Ignoring LVM devices in PartUtils::getDevices to prevent installing bootloader in LVM VG. 2018-04-30 00:40:54 -03:00
Philip
454636624c [branding] update slides 2018-04-29 13:22:36 +02:00
Philip
13bf2ba42f Merge remote-tracking branch 'upstream/master' into development 2018-04-29 09:03:41 +02:00
Adriaan de Groot
42f5ed5d41 [welcome] Fix build, reduce redundancy
- constexpr isn't applicable because of non-trivial destructor
 - May as well only create " (%1)" once.

FIXES #938
2018-04-23 10:47:31 -04:00
Adriaan de Groot
e5b599fbe3 [welcome] Drop accidental logging 2018-04-19 09:24:59 -04:00
Adriaan de Groot
0c5590c2e4 Merge branch 'language-selection'
Display the name of each translation in the language of that translation.

FIXES #935
2018-04-19 09:14:29 -04:00
Adriaan de Groot
a47b3f8d14 [libcalamares] Document special-case translations 2018-04-19 09:10:13 -04:00
Adriaan de Groot
b9ed96d4f8 [libcalamares] Special case sr@latin
QLocale::name() doesn't include script information, and if it did
it would probably use sr_RS@Latin; when searching for translation
files it won't consider dropping just the country.
2018-04-19 09:04:29 -04:00
Adriaan de Groot
a9ffd3351d [welcome] Support sr@latin
- The QLocale constructor which takes a string (locale name) doesn't
   understand sr@latin, and returns the Cyrillic locale. Fix that
   by creating locales ourselves for @latin locales.
 - sr and sr@latin now display correctly in the right script in the
   native language dropdown.
2018-04-19 08:40:04 -04:00
Adriaan de Groot
7cc2b222d9 [welcome] Present RTL (country) annotations better
- The (RTL) text "Arabiy (Misr)" should be entirely RTL, so
   make the parenthetical insert -- which would otherwise be LTR
   and so mess up the placing of those parenthesis around the country --
   explicitly RTL.
 - Since there are no RTL languages in Calamares right now with
   country-local translations, this isn't visible.
2018-04-19 07:42:43 -04:00
Adriaan de Groot
7c944760fc [welcome] Only show (country) in list if the locale suggests it
- A locale suggests it is country-specific by having the form <lang>_<country>
 - This mostly fixes locale "ar" being presented as "Arabiy (Misr)" when
   there is no need to (and the RTL is messed up then, too).
2018-04-19 07:19:10 -04:00
Adriaan de Groot
59537d86d6 [welcome] Present languages in native format
- Introduce intermediate data class for building up the list
   of languages to present.
 - Sort on the English names, with en_US at the top (ugh).
 - Show the native names.
2018-04-19 07:15:25 -04:00
Adriaan de Groot
b8b607c421 [locale] Fix QString-vs-char* confusion 2018-04-18 18:28:37 -04:00
Andrius Štikonas
1b21668bff [partition] Switch to scoped Device enums. 2018-04-18 23:59:15 +03:00
Adriaan de Groot
6930400b67 DEBUG logging 2018-04-18 11:34:09 -04:00
Adriaan de Groot
4b7465696d [welcome] Refactor the code that picks a locale to use
- Much like std::find_if, but slightly muddled because there's
   no iterator that we can sensibly use.
 - Scan the ComboBox for a locale that matches a predicate.
 - Log more as the search for a good locale progresses.
 - Don't mix matching the locale with filling the ComboBox
   (even though that's slightly more efficient).
2018-04-18 11:33:49 -04:00
Philip
b8fd5bdeae [merge] with upstream 2018-04-18 09:01:59 +02:00
Adriaan de Groot
522adf766a [locale] Switch HTTP GET test to KDE servers
- Use the official name of the KDE GeoIP service
 - Log the URL *before* the check, in case one fails
2018-04-17 07:45:27 -04:00
Adriaan de Groot
5acf67a057 [locale] Fix tests with spaces in zone names
- "North Dakota" -> "North_Dakota" following the change that fixes up
   dodgy names automatically.
2018-04-17 07:40:38 -04:00
Adriaan de Groot
b4e4b691fd [locale] Accomodate more dodgy GeoIP providers
- Force spaces to _
 - Document the bits

FIXES #933
2018-04-17 07:32:27 -04:00
Adriaan de Groot
3ef0fbe892 [locale] Add tests for a bunch of GeoIP providers
- Since these tests use network resources, they are not enabled by default.
   Set the environment variable TEST_HTTP_GET to actually do them.
 - Do one request for each provider and check that they are all consistent.
   (This works for me, yielding Europe/Amsterdam for all).
2018-04-16 09:17:18 -04:00
Adriaan de Groot
0f5e061c4a [locale] Support multi-level selection from JSON data
- Some providers don't provide a single flat JSON object
   (e.g. "{time_zone: foo}") but a nested structure
   (e.g. "{location: {time_zone: foo}}"), so allow dots
   in the selector to do multi-level selection.
2018-04-16 09:13:06 -04:00
Adriaan de Groot
6545d5d022 Merge branch 'expand-geoip'
- Allow configurable TZ selector string, to allow for more variation in providers
2018-04-16 07:53:25 -04:00
Adriaan de Groot
d04e243c4e [locale] Auto-clean up time zone data
- Some providers return weirdly escaped data; strip out useless
   escaping before splitting (there are no characters in correct
   time zone names that need escaping)
 - Add some tests for TZ splitting
2018-04-16 05:49:08 -04:00
Adriaan de Groot
fa5d40006c [locale] Fix interpretation of configured selector
- In GeoIP handler constructors that take a string (to configure the
   selector to use), interpret the empty string (which generally isn't
   a meaningful selector) as meaning "use the default".
 - Drop the no-argument constructors in favor of a default-argument
   which is empty.
2018-04-16 05:32:22 -04:00
Adriaan de Groot
352b385b12 [locale] Make the selector configurable via the config file 2018-04-16 05:32:22 -04:00
Adriaan de Groot
b1b59b27b2 [locale] Expand tests for alternate selectors
- Check that the alternate selectors are used
2018-04-16 05:32:22 -04:00
Adriaan de Groot
fe20416a54 [locale] Make the selector configurable
- GeoIP gets a string selector; the interpretation is up to derived classes.
 - GeoIPXML and GeoIPJSON use the selector to select an element by tag
   or an attribute, respectively.
2018-04-16 04:55:37 -04:00
Adriaan de Groot
79a6d7ccbd [locale] Make file and class consistent GeoIPXML
- Rename the class to match the filename.
2018-04-16 04:35:32 -04:00
Adriaan de Groot
2cd4461b57 [locale] Rename JSON handler
- The handler for JSON data should be called that, not named
   specially after the original provider it was implemented for.
 - Make filename and classname consistent, GeoIPJSON.
2018-04-16 04:32:49 -04:00
Philip
29acd744b8 [Merge] with upstream 2018-04-13 16:38:07 +02:00
Calamares CI
8ba4de6d0a i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-04-13 10:25:38 -04:00
Adriaan de Groot
ec113e3df3 [locale] Log GeoIP attempt URL, use possibly-modified form 2018-04-13 09:42:28 -04:00
Adriaan de Groot
d6f082752d [locale] On GeoIP failure, log URL 2018-04-13 09:36:39 -04:00
Adriaan de Groot
47b7040897 [locale] Adjust to Calamares 3.2 idiom 2018-04-13 09:24:59 -04:00
Adriaan de Groot
3ea5a06157 Merge branch '3.1.x-stable' 2018-04-13 08:50:17 -04:00
Adriaan de Groot
14fcc2fad6 [plasmalnf] Continue fighting with layout
- The screenshot stays one size, but different ThemeWidgets may overlap
   partially when you shrink the screen or have more than three / four
   themes listed.
 - Probably needs work in the surrounding container and overall better
   page-scrollbar support.
2018-04-13 08:44:02 -04:00
Adriaan de Groot
c9928c99c8 Merge remote-tracking branch 'origin/3.1.x-stable' into 3.1.x-stable 2018-04-12 17:13:34 -04:00
Adriaan de Groot
1340613ef5 [locale] Additional test application for GeoIP processing 2018-04-12 16:55:24 -04:00
Adriaan de Groot
76e37402b3 [locale] Extend tests with negative results 2018-04-12 16:23:54 -04:00
Adriaan de Groot
0c1453ff18 [locale] Fix string value handled by XML parser 2018-04-12 16:23:54 -04:00
Adriaan de Groot
eea421f499 [locale] Add tests for GeoIP handlers
- One sample JSON result
 - Two sample XML results
2018-04-12 16:23:54 -04:00
Adriaan de Groot
6b7c8a694a [locale] Make the style of GeoIP retrieval selectable
- Unchanged config files will continue to use the weird addition
   of /json, and interpret JSON data.
 - Allow to specify full URL with data format through one of
     geoipStyle: json
     geoipStyle: xml
 - XML support is optional
2018-04-12 14:37:38 -04:00
Adriaan de Groot
5b98e58ae7 [locale] Refactor GeoIP handlers
- Read the data in the caller of the handler, instead of in the callers
2018-04-12 12:22:43 -04:00
Adriaan de Groot
939cdff93b [locale] Add alternate GeoIP data format 2018-04-12 12:18:43 -04:00
Adriaan de Groot
aaae1507cd [locale] Convenience function for TZ splitting 2018-04-12 11:51:50 -04:00
Adriaan de Groot
3636226425 [locale] Document change to the way GeoIPURL is handled. 2018-04-12 10:18:15 -04:00
Adriaan de Groot
fe98b789f0 [locale] Document the settings in locale.conf
- The geoipUrl is weird, because it is not a complete URL.
   Document that, and what kind of data is expected.

FIXES #920
2018-04-12 10:15:19 -04:00
Adriaan de Groot
d5623af8ef [locale] Refactor geoip handling
- Configuration **must** be a complete URL. The implementation no
   longer appends /json to the URL.
2018-04-12 10:11:48 -04:00
Adriaan de Groot
c0d5a153d4 [locale] Refactor GeoIP handler
- Move GeoIP to its own cpp file
 - Provide a default implementation of the URL mangler
2018-04-12 09:54:22 -04:00
Adriaan de Groot
445f181cc3 [locale] Start refactoring geoip handling
- Introduce a handler interface for GeoIP providers
 - Move the implementation of FreeGeoIP into a struct of its own
2018-04-12 09:45:48 -04:00
Adriaan de Groot
fa933b9a16 [plasmalnf] Search for theme screenshots
- Search in branding dir, and ., for relative paths,
 - Absolute paths used as-is.
 - Document search as such.
2018-04-10 08:54:47 -04:00
Adriaan de Groot
bfb37e6b37 [plasmalnf] Avoid use of 'uint' 2018-04-09 11:39:45 -04:00
Adriaan de Groot
cb616ec1bb [plasmalnf] Keep fixed size of screenshots (relative to font size) 2018-04-09 11:39:05 -04:00
Adriaan de Groot
5ab01eba9f [plasmalnf] Don't even try to load an empty filename for screenshot.
- Avoid one attempt-to-load if the filename is empty, and one
   re-creating of the Pixmap.
2018-04-09 11:26:43 -04:00
Philip
031416a1de Merge upstream changes 2018-04-07 21:59:58 +02:00
Adriaan de Groot
00a5baa3d9 [libcalamares] Improve process logging
- Don't insert a space before the output of a process
 - To do this, suppress space and quoting on the output, and to do
   that move the labeling-output for warnings and errors into
   the constructor (so that an idiomatic .nospace() does the right thing).
2018-04-05 05:17:21 -04:00
Adriaan de Groot
b5c3fc8cf6 [libcalamares] Improve process logging
- Log output on crash
 - If debugging is on (-d) then also log output on success

FIXES #925
2018-04-05 04:51:51 -04:00
Adriaan de Groot
4d459f7fc0 [libcalamares] Move non-UI stuff from libcalamaresui
- Settings is just a settings class, no UI involved, so
   move to libcalamares where it can be used also from
   system helpers.
 - YAML utilities are useful at a lower level of the stack, too.
2018-04-05 04:31:13 -04:00
Adriaan de Groot
7e5c91aae6 [locale] Reduce debugging bla bla 2018-04-04 11:42:38 -04:00
Adriaan de Groot
032b33f56f [libcalamaresui] Improve logging.
- Put the (constant) 'Calamares will now quit' on its own debug line.
 - Tell the user what the search paths are if a module is not found
   (prompted by a mis-configuration in a Neon live image).
2018-04-04 11:25:28 -04:00
Adriaan de Groot
ddbb9eaebc Merge branch 'improve-logging' 2018-04-04 11:10:51 -04:00
Adriaan de Groot
9fe85e592f Merge branch '3.1.x-stable' 2018-04-04 11:10:34 -04:00
Adriaan de Groot
b8e6144553 [locale] Document how the locale entry in Global Storage works.
- Make the BCP47 value explicitly lower-case.
 - Add some constness and encapsulation.
 - Fix up documentation in the packages module explaining the
   format of the ${LOCALE} replacement (now forced to lower-case,
   but it is also only the language part, not e.g. en-UK).

FIXES #922
2018-04-03 13:07:36 -04:00
Adriaan de Groot
4c04260b97 [packages] Don't change the global package list.
- Count only the packages that will be changed, given the current
   locale settings.
 - Preserve global storage unchanged (don't remove any locale-packages).
2018-04-03 08:28:29 -04:00
Adriaan de Groot
36aede52ef [packages] Example configuration installs a localization package 2018-04-03 08:20:01 -04:00
Adriaan de Groot
fd1279dbe3 [welcome] Make the example configuration less strict 2018-04-03 08:19:45 -04:00
Adriaan de Groot
9cdb6734bf [packages] If locale is empty, pretend it is 'en'.
- Otherwise packages like vi-$LOCALE will be retained in the
   package list, which will cause install problems.
2018-04-03 08:02:16 -04:00
Adriaan de Groot
240efd30f1 [libcalamares] Add support for formatted, table-like output
- Use DebugRow for one-row-at-a-time output with continuations.
 - Use DebugList for one-item-per-line with continuations.
 - Use DebugMap for one-row-at-a-time output of a QVariantMap.
2018-03-30 17:18:45 -04:00
Adriaan de Groot
20e9c2c8e3 Merge branch '3.1.x-stable' 2018-03-29 17:35:36 -04:00
Adriaan de Groot
32a1c84935 [locale] Document the settings in locale.conf
- The geoipUrl is weird, because it is not a complete URL.
   Document that, and what kind of data is expected.

FIXES #920
2018-03-29 16:50:02 -04:00
Adriaan de Groot
fb93a8288e [plasmalnf] Simplify showAll handling
- Only need the showAll parameter once, when passing in the list
   of themes to show.
2018-03-29 10:09:45 -04:00
Adriaan de Groot
b0828faadb [plasmalnf] New setting to show all installed LnF themes
- This enables working in three modes:
   - No themes listed; all are shown without screenshots,
   - Themes listed, showAll false; only those are shown,
   - Themes listed, showAll true; the installed-but-not-listed
     themes are shown after the listed ones, and have limited info.
2018-03-29 09:57:19 -04:00
Adriaan de Groot
c2efae765d [plasmalnf] Add auto-detection of Plasma theme.
- Although it's not necessarily accurate for an extensively-modified
   Plasma configuration, we can read the Look-and-Feel from the
   configuration files. Allows auto-detection.
2018-03-29 08:49:22 -04:00
Adriaan de Groot
11652c5856 [plasmalnf] Add pre-selected theme
- For OEM modes where there is already a theme, add a preselect:
   key to pick a specific theme and have that one come up as already-
   selected in the list.
 - Don't re-run the lnftool if an already-selected theme is clicked
   again. Use toggled() instead of clicked().
2018-03-29 07:59:16 -04:00
Adriaan de Groot
94000b6847 [plasmalnf] Improve wording of LnF explanation. 2018-03-29 04:33:55 -04:00
Adriaan de Groot
6bb72d173d [libcalamares] Drop generic cLog()
- Use cWarning or cError() for errors
 - Use cDebug(level) for other uses (but there aren't any)
2018-03-28 09:31:45 -04:00
Adriaan de Groot
ad6227ce21 [libcalamares] Remove internal functions from the logging API 2018-03-28 09:27:11 -04:00
Adriaan de Groot
3e30bb682e [libcalamaresui] Use cError() for logging errors, not cLog() 2018-03-28 09:22:37 -04:00
Adriaan de Groot
e2b8fb0afe [welcome] Log if no translations matched at all 2018-03-28 07:47:13 -04:00
Adriaan de Groot
cdf80615b8 [libcalamares] Rename the log file 2018-03-28 07:20:19 -04:00
Adriaan de Groot
0f289e2552 [calamares]: Improve startup logging
- Don't bother with the address of the main thread
 - Do put a marker on restart into the log file
 - Do put the Calamares version into the log file (previously, the version
   was printed through cDebug() before the log file was opened, so it was
   lost to the on-disk log).
2018-03-28 05:01:07 -04:00
Adriaan de Groot
789bbe48f8 Merge branch 'master' into secureboot 2018-03-12 10:19:26 -04:00
Philip
3a54f44886 Merge branch 'master' of https://github.com/calamares/calamares into development 2018-03-10 09:58:10 +01:00
Calamares CI
1791ac2d43 i18n: [dummypythonqt] Automatic merge of Transifex translations 2018-03-09 11:34:30 -05:00
Adriaan de Groot
70fe023347 Merge branch 'branding'
Documentation lives both in Calamares and in the calamares-branding
repo. Whether a slideshow has navigation arrows or not is up to the
slideshow / branding component author, but Calamares now ships some
support QML to make that easy.

FIXES #841
FIXES #904
2018-03-09 11:24:50 -05:00
Adriaan de Groot
2f66aa9b07 [plasmalnf] Change to IgnoreAspectRatio
It is the distro's responsibility to produce screenshots that look
good; previously I chose to preserve the aspect ratio on the grounds
that this would keep the look of the screenshot even if the distro
had done one in a weird size. This makes the screenshot part
of the LNF selection look weird, though, since then you get
blank parts.

Switch to ignoring the aspect ration; distro's should produce
screenshots in a 12x8 (i.e. 3:2) aspect ratio, preferrably at
least 120x80 pixels -- but keep in mind hiDPI and the default
font sizes of the distro, which may make other sizes look better.

(this follows discussion with BlueStar Linux)
2018-03-09 11:24:41 -05:00
Adriaan de Groot
986c5f5a9a CMake: improve branding component macros
- document preferred component layout
 - simplify parameters to the branding macros
 - allow structured branding components with SUBDIRECTORIES
2018-03-09 11:03:42 -05:00
Adriaan de Groot
f29da8e39e Branding: document preference for standalone branding 2018-03-09 08:48:24 -05:00
Adriaan de Groot
25b9663a40 Branding: remove fancy/ and samegame/ examples
The examples of branding have moved to the calamares-branding repo.
2018-03-09 08:44:20 -05:00
Adriaan de Groot
e4cca9b830 Branding: document how to translate branding 2018-03-09 07:22:36 -05:00
Adriaan de Groot
75df6a4f88 Branding: add example translations to fancy/ 2018-03-09 07:22:30 -05:00
Adriaan de Groot
f8bc195fb4 [libcalamaresui] Improve warning when branding has no translation 2018-03-09 07:21:16 -05:00
Adriaan de Groot
c1bb5e708b QML: apply translation to the slide counter 2018-03-09 07:21:16 -05:00
Adriaan de Groot
97eff28383 QML: Remove binding for quit key in presentation 2018-03-09 07:21:16 -05:00
Adriaan de Groot
8125698696 Branding: expand documentation
- Auto-advance the default presentation
 - Add more example slides to the fancy presentation
 - Expand README.md explaining what the default classes can do
2018-03-08 12:57:50 +01:00
Adriaan de Groot
e7849c5ed0 Branding: fix reference error 2018-03-08 12:19:02 +01:00
Adriaan de Groot
3b8673fb99 Branding: update example, use NavButtons 2018-03-08 12:14:45 +01:00
Adriaan de Groot
7ab79a944b Branding: add example SVGs from Quassel 2018-03-08 12:14:44 +01:00
Adriaan de Groot
b6fd8de126 QML: Use QtQuick 2.5 consistently 2018-03-08 12:14:44 +01:00
Adriaan de Groot
3d89828fe1 QML: drop potentially confusing shortcuts
Removed these features that make sense in a presentation slideshow
(e.g. during a talk) but that are potentially confusing during
a passive slideshow like Calamares has:
 - Using 'c' blanks the slideshow.
 - Entering a slide number + enter changes slides.
2018-03-08 12:14:44 +01:00
Adriaan de Groot
c116dba2e8 QML: add navigation items
- Add a NavButton, which shows a directional arrow, and fades in on hover.
   It can be used left- or right- by setting an image source
   and click handler.
 - Specialize NavButton to Forward and BackButton.
 - Add a SlideCounter navigation aid.
2018-03-08 12:13:44 +01:00
Adriaan de Groot
74080c31f5 Branding: add a fancy branding example 2018-03-07 06:18:18 -05:00
Adriaan de Groot
c7629182e4 Merge branch 'master' into requirements-checking 2018-03-06 17:06:35 +01:00
Adriaan de Groot
1e0ecbcc18 [contextualprocess] Warnings-- by dropping destructor 2018-03-06 16:24:12 +01:00
Adriaan de Groot
583cc06f7c [keyboard] Warnings-- for nullptr 2018-03-06 16:23:44 +01:00
Adriaan de Groot
51ccd6be4d [license] Warnings-- by making the one default case explicit 2018-03-06 16:23:29 +01:00
Adriaan de Groot
e2f6d160f8 [tracking] Reduce compile warnings
The fallthrough construction in a switch is a bit confusing
to read, and generates compile warnings too, so break it up.
2018-03-06 16:11:50 +01:00
Adriaan de Groot
defc7d4df8 [welcome] Compile warnings-- 2018-03-06 16:10:53 +01:00