Commit Graph

3075 Commits

Author SHA1 Message Date
Adriaan de Groot
874514a4e4 i18n: drop orphaned #undefs (thanks Kevin Kofler) 2018-02-08 10:33:40 +01:00
Adriaan de Groot
f49e0f6d92 i18n: update extracted English message files 2018-02-08 10:10:33 +01:00
Adriaan de Groot
0b03d56a40 i18n: Massage code to help lupdate understand 2018-02-07 17:43:26 +01:00
Adriaan de Groot
d27675d660 i18n: drop superfluous QObject* parent
These additional pointers were introduced for translations,
and needed their own tricks to get lupdate to recognize the
strings. Using QCoreApplication::translate() removes the
need to a QObject to provide context. Drop the now-unneeded
parameters.
2018-02-07 17:43:26 +01:00
Adriaan de Groot
c71385e93f i18n: fix broken translation in CommandList 2018-02-07 17:43:26 +01:00
Adriaan de Groot
f954496acf i18n: avoid translation tricks, use QCoreApplication::translate
Instead of using tr and some macro hacks to get lupdate to
recognize the translation, instead use QCoreApplication::translate()
which takes its own context for translation.
2018-02-07 17:43:26 +01:00
Calamares CI
7c8a70c9a1 [dummypythonqt] Automatic merge of Transifex translations 2018-02-07 13:44:18 +01:00
Adriaan de Groot
ad89dd7cc4 [interactiveterminal] Document config 2018-02-07 12:03:13 +01:00
Adriaan de Groot
051edb462f [packages] Add pisi package manager (based on some guesses) 2018-02-01 09:14:54 +01:00
Adriaan de Groot
533031b3ca [bootloader] print() does not log
- use the right logging method; print just vanishes.
2018-01-30 11:26:29 +01:00
Adriaan de Groot
f869a0f263 [bootloader] Log the EFI fallback action 2018-01-30 11:22:36 +01:00
Adriaan de Groot
78108c5cda [bootloader] Allow skipping the EFI fallback 2018-01-29 22:55:07 +01:00
Adriaan de Groot
aed904e3b4 Merge branch 'i897-timeout'
FIXES #897
2018-01-29 22:12:36 +01:00
Adriaan de Groot
9a7e766391 Merge branch 'i895-setroot-context'
FIXES #895
2018-01-29 22:12:23 +01:00
Adriaan de Groot
c2aca1f5c6 [shellprocess] Implement timeout setting
- For both shellprocess and contextualprocess, add a top-level key
   "timeout" that defaults to 10 seconds (which it already did).
 - Allows setting "global" timeout for command-lists, while still
   allowing individual timeouts per-command.
 - Setting timeout per global variable in contextualprocess is not
   supported; that would restrict the possible space of comparisions,
   while not supporting a global setting timeout seems reasonable enough.
   Use instances if you need wildly variable timeouts and don't want to
   set them individually.
2018-01-29 22:08:12 +01:00
Adriaan de Groot
2da430fa36 [libcalamares] Allow CommandLine to have unset timeout
- Introduce enum for the appropriate constant
 - If the timeout isn't set, then defer to the timeout set
   on the commandlist when running the commands.
2018-01-29 21:25:18 +01:00
Adriaan de Groot
c641f5dec6 [libcalamares] Implement object-style command line
- handle command: and timeout: entries
 - test for setting the values
2018-01-29 21:08:42 +01:00
Adriaan de Groot
72bac332be FIXUP document 2018-01-29 20:59:58 +01:00
Adriaan de Groot
4917b5c778 [shellprocess] Add test for future feature
- proposed syntax for command+timeout configuration, both for single-
   entry and for lists.
 - test it already
2018-01-29 17:40:29 +01:00
Adriaan de Groot
fe2be46d3f [libcalamares] Extend command-list with timeouts
- Replace plain StringList with a list of <String, timeout> pairs,
   and run that instead. All code paths still use the default 10sec
   timeout and there's no way to change that.
2018-01-29 17:10:56 +01:00
Adriaan de Groot
ea179eaef4 [contextualprocess] Document command lists
- Show that a command list is also allowed, not just a single
   command. Refer to shellprocess for more documentation.
2018-01-29 17:10:56 +01:00
Adriaan de Groot
6335084aa3 [libcalamares] Determine what's checked and what's required first.
- warn for required checks that are not carried out.
2018-01-29 15:29:25 +01:00
Adriaan de Groot
778feb50e8 [libcalamares] Additional convenience for doubles 2018-01-29 14:45:42 +01:00
Adriaan de Groot
54a9bbb949 [libcalamares] Don't eat output on timeout.
- Copy stdout from timed-out process into the output variable,
   instead of just dumping it into the log file. This will
   improve the user experience, too, because they will get some
   feedback / explanation of what the process has done.
2018-01-26 18:19:38 +01:00
Adriaan de Groot
d6731efdfd [packages] fix typo in docs 2018-01-25 10:44:48 +01:00
Adriaan de Groot
1d6dca062c [users] Make state of 'reuse password for root' available in globals. 2018-01-24 16:19:41 +01:00
Adriaan de Groot
26dfd56f6d [libcalamares] Additional convenience function extracting int 2018-01-24 16:19:22 +01:00
Adriaan de Groot
188a434a10 [dummycpp] more verbose debug log 2018-01-24 16:19:22 +01:00
Adriaan de Groot
b828580464 Merge remote-tracking branch 'origin/simplify-plugin' 2018-01-24 14:22:35 +01:00
Adriaan de Groot
32b10f72e9 Merge branch 'i896-password-quality'
FIXES #896
2018-01-24 14:21:59 +01:00
Adriaan de Groot
b0fe7b0682 i18n: apply some more tricks to make lupdate / transifex happy 2018-01-24 14:13:50 +01:00
Adriaan de Groot
399256ba99 [users] Use explanation of password error from libpwquality
- add license file from libpwquality for provenance
 - translate pwquality_strerror() into the PWSettingsHolder convenience class
 - use Qt translations, since we'd otherwise also have to wire up, and
   wire in, libpwquality gettext translations.
2018-01-24 14:13:50 +01:00
Adriaan de Groot
ed58d540b3 [users] Implement password checking through libpwquality
- Use shared_ptr and a helper class to hide away raw pointer use
   from libpwquality. Provide a convenience C++ API.
 - Simplify configuration through helper class.
2018-01-24 14:13:50 +01:00
Adriaan de Groot
354cb79cb1 [users] sample config and stub function for libpwquality 2018-01-24 14:13:50 +01:00
Adriaan de Groot
27e1de6548 [users] Use libpwquality for additional password checks
- add cmake module to find libpwquality
 - move checking functions to their own file
 - some Transifex hackery
 - stub out the libpwquality check
2018-01-24 14:13:50 +01:00
Adriaan de Groot
eae52a3e65 CMake: build modules alphabetically 2018-01-24 14:13:13 +01:00
Adriaan de Groot
9a9c6da6db i18n: try to trick Transifex into recognizing these strings 2018-01-23 12:11:34 +01:00
Adriaan de Groot
9c9486bb78 [libcalamares] When ViewManager is destroyed, reset instance pointer 2018-01-17 09:17:40 -05:00
Adriaan de Groot
845986d48f [libcalamaresui] Mark virtual QObject destructors override 2018-01-17 09:17:40 -05:00
Adriaan de Groot
97fb83c743 [libcalamares] Change debug logging of how job name is derived 2018-01-17 09:17:36 -05:00
Adriaan de Groot
abc6914528 [libcalamares] Enforce singleton-ness of CalamaresPython::Helper
- unset instance pointer on destruction
 - make constructor private, and the instance accessor
   should create an instance if there isn't one.
2018-01-17 06:18:43 -05:00
Adriaan de Groot
3b3e80b334 [branding] Add a totally different branding example
Use the samegame example from the Qt Quick demos as a branding "slideshow".
Instead of watching slides go by, you can play samegame! Click on
"new game" to start, and then click on groups of same-colored balls to make
them go away -- at least two same-colored balls must be touching.

Once the exec step is done, the game vanishes automatically.

This is an additional example for #841
2018-01-16 17:05:29 +01:00
Adriaan de Groot
86b899566e [libcalamares] Silence compiler warnings about PluginFactories
- d_ptr shadows QObject d_ptr, which clang complains about
 - rename, and don't use Q_D and similar because it messes with internals.
2018-01-16 13:23:51 +01:00
Adriaan de Groot
510af704d8 [libcalamares] Improve documentation
- reference to _WITH_JSON is bogus copy-replace from other code
 - fix style of sample code.
2018-01-16 13:23:51 +01:00
Adriaan de Groot
0020fd885c [libcalamares] Remove unused extern declaration 2018-01-16 13:23:51 +01:00
Adriaan de Groot
a2bdc12f25 [libcalamares] Drop unused plugin defines
- Remove some superfluous intermediate defines
 - baseFactory was not used (always Calamares::PluginFactory)
 - Move DECLARATION and DEFINITIONS apart
 - CALAMARES_PLUGIN_FACTORY_DEFINITION was redefined (identically)
 - CALAMARES_PLUGIN_FACTORY_DECLARATION was redefined (identically)
 - __VA_ARGS__ was constant
2018-01-16 13:23:09 +01:00
Calamares CI
8f1f397c95 [dummypythonqt] Automatic merge of Transifex translations 2018-01-15 10:55:42 -05:00
Adriaan de Groot
be45171638 [finished] Make the *restart now* checkbox more visible.
- Issue asks to make the setting more visible, which seems sensible to
   me. It **is** kind of hidden away for those distro's that make
   the setting visible (not everyone does).
 - While here, add a tooltip explaining what it does.

FIXES #893
2018-01-15 09:33:33 -05:00
Adriaan de Groot
15d4245074 Merge branch 'scripting' 2018-01-15 09:05:30 -05:00
Adriaan de Groot
d6cbda5ed7 [contextualprocess] Implement contextual processes
Allow running one or more commands based on the value of
a global configuration variable. This could, of course,
be done in a Python module with some custom code,
but for simple cases this is more straightforward
to configure through module instances.

Uses the CommandList developed for the ShellProcess
module to do the actual work.

FIXES #874
2018-01-15 08:57:34 -05:00
Adriaan de Groot
f01c7cda6b [libcalamares] Fix debug output classname 2018-01-15 08:41:24 -05:00
Adriaan de Groot
913690650f [libcalamares] Move CommandList into libcalamares
- Move CommandList so it can be used from more modules than
   just ShellProcess
 - Allow a CommandList to run itself. This centralizes
   code for executing one or more commands and simplifies
   the ShellProcess module.

Various small cleanups:
 - mention instance id in log message
 - code formatting / style
2018-01-15 06:52:55 -05:00
Adriaan de Groot
60f4dd7b3b [libcalamares] Improve explanation of failed processes. 2018-01-15 05:51:58 -05:00
Adriaan de Groot
8571fd800e [shellprocess] Make explicit that an error code has been ignored, by logging it. 2018-01-15 05:26:20 -05:00
Adriaan de Groot
e48767eaa6 [shellprocess] Make CommandList chroot-aware
This is prep-work for moving commandlist to libcalamares, where
it can be re-used by more modules.
2018-01-15 04:57:41 -05:00
Adriaan de Groot
8bd40fdcd5 [shellprocess] Warn when there's no script 2018-01-15 04:20:37 -05:00
Adriaan de Groot
2bc394656d [welcome] Make libparted optional
- This turns off the space-available check in the welcome module;
   without libparted, always fail that check.
 - Allows running the welcome module on OS without libparted.
2018-01-13 21:41:07 +01:00
Adriaan de Groot
b0c4fbc1bb Clang: reduce warnings
- mark some things override
 - make conversion of 0 to flags explicit
2018-01-13 21:40:46 +01:00
Adriaan de Groot
fdb3fc1ef8 [shellprocess] Execute the command list 2018-01-12 10:38:40 -05:00
Adriaan de Groot
b7fb24837a [shellprocess] Improve CommandList
- Also allow a single string instead of a list
 - Add count() method to CommandList
 - Drop over-engineering, add more logging
 - Expand tests with some more examples
2018-01-12 10:38:01 -05:00
Adriaan de Groot
5f8fb655c4 [shellprocess] Stub of a shell process module.
This is basically dummyprocess, except with an expanded configuration
interface so you can run 1 or more shell commands in the live
or target system with a suitable configuration file and instance
of shellprocess in settings.conf.

It can replace downstream modules that implement their own
process modules with a command, by an instance of shellprocess.
2018-01-12 10:33:51 -05:00
Adriaan de Groot
4ff1a0d5ea [libcalamares] another convenience for running commands
Back targetEnvCommand() with a more general runCommand()
that takes an argument selecting the location to run
the command in. This allows us also to use the same
API for running processes in the host during install,
as we do for running them in the target system.

One reason for this change is wanting to run (user-specified)
commands and independently from the global dontChroot setting,
run those commands in the live system or the target.

This changes the ABI of the DLL, since targetEnvCommand()
is no longer exported. Plugins will need to be recompiled.

 - refactor targetEnvCommand() into more general runCommand().
 - While here, allow host system commands to run even if
   there is no global storage.
 - provide convenience accessors for ProcessResult members
 - Move explanation of process errors out of ProcessJob
   - Move from ProcessJob to ProcessResult, so it can be
     reused outside of ProcessJob (e.g. from ShellProcessJob).
   - Add some convenience functions, too.
2018-01-12 10:32:42 -05:00
Adriaan de Groot
6e01bb0fa4 CMake: factor out explanation of skipped modules.
Make a function out of explaining-skipped-modules, and call it
not only after collecting all the modules, but also after
the feature summary, so that it's quite clear which modules
are skipped.
2018-01-10 09:20:49 -05:00
Adriaan de Groot
58252fc16d [partition] Handle missing requirements by disabling the module 2018-01-10 09:05:15 -05:00
Adriaan de Groot
e3b7a2884b [partition] Relax check with UI-level warning message, too 2018-01-09 11:15:30 -05:00
Adriaan de Groot
637d6ad752 [partition] Find Esp partition with modern flags. 2018-01-09 11:12:13 -05:00
Adriaan de Groot
94b6c95c44 [partition] Introduce function for checking various flag-combinations for ESP boot. 2018-01-09 10:53:33 -05:00
Adriaan de Groot
3ff68bce98 [keyboard] Correct guessing for Arabic variants 2018-01-09 16:24:55 +01:00
Adriaan de Groot
05967311de [partition] Be defensive against no device-device-available.
Scenario is this: you have no suitable installation devices on
your system (everything is mounted, or HDD has died), click through
to partition page, where you have all the buttons available, but no
devices in the list. The following actions then cause a crash:

 - clicking "back"
 - clicking any button

Prevent that:
 - you can click "back", but if there is no device selected
   nothing happens to the device state (no nullptr deref,
   and no crash)
 - button code is now more resilient to this scenario
 - buttons are hidden until a device is available, so you
   can't even click on them to trigger the code.
2018-01-09 06:58:46 -05:00
Adriaan de Groot
a35a7b108f
Merge pull request #883 from agaida/hack-unpackfs
[unpackfs] skip error check when rm of tmp folder fails
2018-01-09 10:53:52 +01:00
Adriaan de Groot
7249b41e3e [keyboard] Explain table format, add more edge cases 2018-01-08 11:02:20 -05:00
Adriaan de Groot
0d56b9b9c5 Merge branch 'master' into i689-kayboard-layout 2018-01-08 16:19:27 +01:00
Adriaan de Groot
28d61c406e [bootloader] Improve description of *efiBootloaderId* option 2018-01-08 16:14:28 +01:00
Adriaan de Groot
2a0a2a26bc [umount] Don't raise when copying log file fails. 2018-01-03 05:01:38 -05:00
Adriaan de Groot
6f7b5a0510 [umount] Move module documentation into config file, fix wording
FIXES #831
2018-01-03 04:33:20 -05:00
Adriaan de Groot
a7d7f3a83b [welcome] Make link to Calamares site https 2018-01-03 04:20:21 -05:00
Adriaan de Groot
308441ee3a Merge branch '3.1.x-stable' 2018-01-02 15:44:34 +01:00
Adriaan de Groot
41e6f0e06c [calamares] Allow WM close button
- remove hide-close-button hack
 - refactor code in viewmanager for confirming quit
 - hook up confirm-and-quit to WM close button
 - also works for alt-F4 and other quit methods
 - while here, update copyright year

FIXES #870
2018-01-02 14:58:08 +01:00
Adriaan de Groot
5593be125f [calamares] Reduce font-related debug output on startup. 2018-01-02 14:43:48 +01:00
Adriaan de Groot
1a42b8af41 Merge branch 'kpmcore-3.2'
- Bumps requireed KPMCore to 3.3 (in spite of the branch name)
 - Cleans up some dependencies

Thanks to Andrius Stikonas.
2018-01-02 13:25:11 +01:00
Philip
be650d7986 [initcpiocfg] search just for 'lvm2' in partition[fs] 2017-12-30 05:01:25 -05:00
Philip
5a83024698 [initcpiocfg] add 'lvm2' hook as needed 2017-12-30 05:00:59 -05:00
Andrius Štikonas
2027a5538e Fix propagation of new partition table to global storage. 2017-12-27 14:11:11 +00:00
Alf Gaida
784bbd3bc8 finally !must! never fail unhandled
but it does without help
2017-12-26 22:25:40 +01:00
Philip
1cffa9fafc [partition] Rename slots, to avoid recursion
- see also https://github.com/calamares/calamares/issues/880
- missed within 7ce52ecda7
2017-12-25 15:50:37 -05:00
Philip
8f32aad3fa [partition] Rename slots, to avoid recursion
- see also https://github.com/calamares/calamares/issues/880
- missed within 7ce52ecda7
2017-12-25 15:48:55 -05:00
Adriaan de Groot
03dd487fc2 Merge branch '3.1.x-stable' 2017-12-24 16:23:35 -05:00
Adriaan de Groot
661789825a [plasmalnf] Make the module optional
- Check for presence of KDE Frameworks for Plasma & Package
 - Explain when module is skipped
2017-12-24 16:15:04 -05:00
Adriaan de Groot
2e1f389997 CMake: explain which modules are skipped
Modules may be skipped for different reasons: SKIP_MODULES
is the traditional approach to suppress some, but other modules
may have unmet build requirements (e.g. Plasma Look-and-Feel,
or the Partitioning module) and should be able to opt-out
of being built. For all those skipped, log it explicitly after
all the modules have been examined.

Only CMake-based (e.g. C++) modules support opting-out in this way.
2017-12-24 16:14:58 -05:00
Adriaan de Groot
dc255e161e [partition] Rename slots, to avoid recursion 2017-12-24 03:34:34 -05:00
Andrius Štikonas
806b84973a Convert CreatePartitionTableJob to KPMcore operation. 2017-12-22 15:25:39 +00:00
Andrius Štikonas
1b3ce39ffb Convert FormatPartitionJob to KPMcore's CreateFileSystemOperation. 2017-12-22 15:25:39 +00:00
Andrius Štikonas
638117efa0 Cleanup unnecessary kpmcore includes. 2017-12-22 15:25:39 +00:00
Adriaan de Groot
7ce52ecda7 [partition] Rename slots, to avoid recursion 2017-12-22 16:20:35 +01:00
Adriaan de Groot
980b39961d [calamares] Unset application name
Unset the application name so that you don't get -- Calamares
in the window title.

Reported by: sitter
FIXES #877
2017-12-22 06:47:12 -05:00
Adriaan de Groot
f8a53f9646 [libcalamares] Refactor explanation of process-job errors 2017-12-21 16:30:13 +01:00
Adriaan de Groot
c6ab4195c7 [contextualprocess] Stub of a contextual-process job
This is meant to run one or more jobs based on specific global
configuration values; if could also be done by a Python
module with just some if's, but this one can be used with
just the config file and covers a bunch of use-cases.
2017-12-20 09:12:27 -05:00
Adriaan de Groot
762ad54344 Documentation: change http links to GitHub to https 2017-12-20 08:39:09 -05:00
Adriaan de Groot
c582ff0d6b Merge branch '3.1.x-stable' 2017-12-20 08:13:55 -05:00
Adriaan de Groot
d42210eb93 Merge branch '3.1-pinebook' into 3.1.x-stable 2017-12-19 11:13:21 -05:00
Adriaan de Groot
d5b46dfb86 [plasmalnf] Improve theme-listing handling
- if key is missing or badly typed, enable all (explicitly)
 - document settings and code
2017-12-19 12:51:56 +01:00
Adriaan de Groot
f2aeecf546 [plasmalnf] Improve screenshot view
- make screenies smaller
 - use view-preview to indicate no-screenshot-specified
2017-12-19 12:28:42 +01:00
Adriaan de Groot
10e71bab30 [plasmalnf] Add Breeze 'view-preview' icon for missing screenshots 2017-12-19 12:21:05 +01:00
Adriaan de Groot
e73d54767d [plasmalnf] Expand explanation, drop CSS 2017-12-18 07:57:19 -05:00
Adriaan de Groot
cf39dddbf3 [plasmalnf] Prevent duplicate widgets
- Only create widgets for themes once
 - Update visible texts as needed
2017-12-18 07:25:59 -05:00
Adriaan de Groot
3f258d4bd9 [plasmalnf] Fallback for image-not-found
- calculate a hash of the filename, and use that
 - makes it possible to distinguish different screenshots
   even when the image file is missing / badly configured
 - most colors will be dreadful
2017-12-18 07:07:47 -05:00
Adriaan de Groot
cc15dd9ec7 Merge branch 'master' into kpmcore-3.2
- Pull in Master, merge README, to simplify merging this
   branch into master (soon-ish, once kpmcore 3.3 becomes available
   in builders)
2017-12-15 07:18:05 -05:00
Andrius Štikonas
a2e3af2b3d Require KPMcore 3.3 2017-12-15 11:38:38 +00:00
Adriaan de Groot
2db485bb33 [plasmalnf] Improve layout of theme widget 2017-12-14 17:04:16 -05:00
Adriaan de Groot
244919d6fe [plasmalnf] Add description to theme widget 2017-12-14 17:01:59 -05:00
Adriaan de Groot
55ed2ba4c0 [partition] Introduce convenience translation for progress. 2017-12-14 16:11:46 -05:00
Adriaan de Groot
5c4286eebf [partition] Switch to convenience function for MiB 2017-12-14 16:11:46 -05:00
Adriaan de Groot
38688bab47 [partition] code style (minor followup to #872) 2017-12-14 15:55:23 -05:00
Adriaan de Groot
0729bdd0be
Merge pull request #872 from stikonas/3.1.x-stable
Use KPMcore SetPartFlags operation.
2017-12-14 15:53:35 -05:00
Adriaan de Groot
8b3f71af40 [plasmalnf] Widget for showing theme info
- Radio button + group for button action
 - Use a (still very primitive) widget for displaying theme information
2017-12-13 11:04:34 -05:00
Adriaan de Groot
755c0cba18 [plasmalnf] Prep-work for UI changes 2017-12-13 09:55:54 -05:00
Adriaan de Groot
11fc3e0507 [plasmalnf] minor documentation
- Code documentation
 - Add another broken example theme, as test for winnowing
2017-12-13 09:53:41 -05:00
Adriaan de Groot
afbdcc3782 [hwclock] Be more lenient.
Patch by Gabriel C. (@abucodonosor).

 - use libcalamares functions
 - no need to copy /etc/adjtime over we can run hwclock in chroot
   since we have /proc , /sys , /dev , /run/* already bind mounted.
 - added RTC and ISA probing methode ( see issue #873)
    - we probe default from /dev/rtc* ,
    - fall back to ISA
    - still doesn't work we just print a BIOS/Kernel BUG message and continue
- NOTE: issue #873 is about broken ArchLinux kernel config but there
  are HP boxes with real RTC problems no matter what kernel config
  is used so let us be nice and don't error out..

FIXES #873
2017-12-13 06:27:04 -05:00
Adriaan de Groot
748ccf94e9 [plasmalnf] Enrich config file
- Extend the config file format to allow theme, image pairs
   as well as just naming the themes.
 - Reduce verbosity when querying Plasma themes.
2017-12-12 06:59:25 -05:00
Andrius Štikonas
139f5a9e86 Use KPMcore SetPartFlags operation. 2017-12-06 14:51:54 +00:00
Adriaan de Groot
6bd8c67ca9 [plasmalnf] Allow filtering the selectable lnf themes
- empty list allows all of them
 - always suppress hidden, invalid themes, and those named
2017-12-04 12:27:30 -05:00
Adriaan de Groot
ad69eda337 [plasmalnf] Complain again if poorly configured 2017-12-04 11:54:33 -05:00
Adriaan de Groot
98b9f67e39 [plasmalnf] Complain more loudly (and more often) when badly configured 2017-12-04 11:51:16 -05:00
Adriaan de Groot
ee979d79ee Merge branch '3.1-pinebook' 2017-12-04 11:45:01 -05:00
Adriaan de Groot
02dfe51d55 [welcome] Improve error reporting from requirements checker 2017-12-04 10:47:26 -05:00
Adriaan de Groot
e628ddfdbf [plasmalnf] Try to get back to the live user before changing themes 2017-12-04 09:37:34 -05:00
Adriaan de Groot
b10b19e9ee [plasmalnf] C++ style and reduce includes 2017-12-04 09:11:10 -05:00
Adriaan de Groot
eb92755b0a [plasmalnf] Enable translations
- Move tool-running to the view-step
 - Enable translations by showing name instead of theme-id
 - More verbose logging
2017-12-04 06:40:13 -05:00
Adriaan de Groot
71966b5330 [plasmalnf] Wait longer for the tool to finish 2017-12-03 16:09:34 -05:00
Adriaan de Groot
1de2e94fd0 [plasmalnf] Simplify code, reduce copies of lnftool setting 2017-12-03 15:41:52 -05:00
Adriaan de Groot
fe8ff3ab05 [plasmalnf] Simplify code, remove redundant implementations 2017-12-03 15:34:06 -05:00
Adriaan de Groot
4e2e55a935 [plasmalnf] Needs to run as target user in all cases 2017-12-03 15:24:39 -05:00
Adriaan de Groot
e005c2d02d Merge branch '3.1-pinebook'
- Also document the config file some more.
2017-12-03 15:17:03 -05:00
Adriaan de Groot
ac92d4911d Compatibility: revert conveniences from master 2017-12-03 12:58:54 -05:00
Adriaan de Groot
3a94f02547 CMake: look for ECM at top-level, add to search path if found. 2017-12-03 12:48:23 -05:00
Adriaan de Groot
cddc4699aa [plasmalnf] Import Plasma Look-and-Feel module independently 2017-12-03 12:47:41 -05:00
Adriaan de Groot
1f49f764a6 [libcalamares] Allow retrieving chroot mode from system (as well as settings) 2017-12-03 12:46:33 -05:00
Adriaan de Groot
388399f256 [plasmalnf] Fix command-line options, run in target user environment 2017-12-03 12:42:44 -05:00
Adriaan de Groot
7e5970324f [plasmalnf] Reset layout along with theme 2017-12-03 11:05:14 -05:00
Adriaan de Groot
81128923e6 [plasmalnf] Disable applying in the target (user|system) for now. 2017-12-03 10:56:39 -05:00
Adriaan de Groot
3bdfa63a79 [plasmalnf] Preserve environment, so that DISPLAY gets to the tool 2017-12-03 10:38:32 -05:00
Adriaan de Groot
d3ef6b07d5 [plasmalnf] Run the lnftool in the target (user|system) 2017-12-03 10:22:46 -05:00
Adriaan de Groot
8a053f3c9b [libcalamares] Allow retrieving chroot mode from system (as well as settings) 2017-12-03 10:09:00 -05:00
Adriaan de Groot
b3d299bbf1 [plasmalnf] Replace hard-coded path with configurable one 2017-12-03 09:51:13 -05:00
Adriaan de Groot
62623a2376 [plasmalnf] Make an actual job of setting the theme
- Job doesn't actually run lookandfeeltool in the target system yet.
2017-12-03 09:26:59 -05:00
Adriaan de Groot
2d3defcca3 [plasmalnf] Hammer in theme-changing
- Tool is currently a hard-coded path.
2017-12-03 09:18:18 -05:00
Adriaan de Groot
8c65ee5481 [plasmalnf] Get available LNF
- Implement various ways of getting the LNF; the process-based one
   uses a recent CLI-tool from the Plasma developers.
 - Fill the UI with (meaningless) LNF package IDs.
2017-12-03 08:48:41 -05:00
Adriaan de Groot
98d758b4be [plasmalnf] Hammer out the most primitive UI 2017-12-03 07:08:54 -05:00
Adriaan de Groot
e0634a4056
Merge pull request #869 from V3n3RiX/master
new module : openrcdmcryptcfg - auto unlock encrypted partitions with OpenRC
2017-12-03 04:54:44 -05:00
Adriaan de Groot
839c039168 Merge remote-tracking branch 'origin/plasma-lnf' 2017-12-03 04:43:55 -05:00
Adriaan de Groot
298ff0cbeb Merge branch '3.1.x-stable' 2017-12-03 04:43:23 -05:00
V3n3RiX
7cecfceaa7 add openrcdmcryptcfg module 2017-12-02 19:47:34 +00:00
Adriaan de Groot
c8a6ebe404 Testing: expand the testmodule script.
Do a better job determining what the arguments could mean; this supports
lazy devlopers who don't want to pass in full paths to all kinds of things.
Simple invocation can now be:
    testmodule.py <modulename> - +
to read <modulename>.conf from src/modules/<modulename>/
2017-12-02 06:43:12 -05:00
Adriaan de Groot
65a236cd60 [packages] Fix previous.
This, kids, is why you don't switch writing C++ and Python too often.
The C++ code isn't a syntax error in Python, although this would fail
at runtime.
2017-12-02 06:14:17 -05:00
Adriaan de Groot
3e3cd08ff3 [packages] Fix previous (false vs False) 2017-12-02 05:20:13 -05:00
Adriaan de Groot
150007c138 [packages] Feature: skip if no internet.
Update documentation, add a new key *skip_if_no_internet* to support
systems that **recommend** having an internet connection (but don't
require it), and which also use the packages module. This prevents
a long delay while the package manager tries to access the internet
and times out (repeatedly).

Existing configurations are unchanged.
2017-12-02 05:17:15 -05:00
Adriaan de Groot
7b145c2a36 [packages] Improve message when no packages are processed at all. 2017-12-01 16:48:02 -05:00
Adriaan de Groot
517dbfab06 [libcalamares] The script namespace is actually a dict
Use dict methods, in particular d.get(k, v), to retrieve
the pretty_name() function (or None if it isn't there).
Using getattr() on a dict will not return values in the
dict.
2017-12-01 16:42:56 -05:00
Adriaan de Groot
fe61925f31 [packages] Update module documentation 2017-12-01 13:46:59 -05:00
Adriaan de Groot
0d413ba750 Merge branch '3.1.x-stable' 2017-11-29 08:58:32 -05:00
Adriaan de Groot
12369abaa4 [libcalamares] Refactor to reduce compiler warnings 2017-11-29 08:49:44 -05:00
Adriaan de Groot
53036be418 Merge branch 'i865-error-reporting' 2017-11-28 11:48:25 -05:00
Adriaan de Groot
ae4508011c [tracking] swap out PNG for SVG icons 2017-11-28 11:47:51 -05:00
Adriaan de Groot
c284304872 [libcalamares] Adjust copyright lines 2017-11-28 11:41:17 -05:00
Adriaan de Groot
cc195eb3d4 [libcalamares] Improve reporting of CalledProcessError
For called processes, replace the not-very-useful type message
with the command-explanation, and replace the value (previously
command-explanation) by the stderr of the failed command.

FIXES #865
2017-11-28 11:38:26 -05:00
Adriaan de Groot
9df796a3fd [libcalamares] Log earlier, warnings-- 2017-11-28 11:26:59 -05:00
Adriaan de Groot
1e27c6438a [libcalamares] Special-case CalledProcessError 2017-11-28 11:21:42 -05:00
Adriaan de Groot
a0a8ab0048 [libcalamares] Refactor Python target_env calls
This is why the whole refactoring started: to get the process output
and exit code in one spot so we can attach the process output
to the (Python exception) CalledProcessError in all the code
paths, not just those that are explicitly looking for output.
2017-11-28 10:55:53 -05:00
Adriaan de Groot
6693d91152 [libcalamares] Refactor bp:list -> QStringList 2017-11-28 10:42:00 -05:00
Adriaan de Groot
9d31380980 [libcalamares] Refactor target-environment calls
- Add a more general targetEnvCommand() that returns both
   error code and process output.
 - Change existing targetEnvCall() and targetEnvOutput()
   to use general form while discarding some data.
2017-11-28 10:27:24 -05:00
Adriaan de Groot
f5aec1ad8a [libcalamares] Add output to CalledProcessError
- Refactor, internal _handle_check_target_env_call_error doesn't need
   to be in header or visible.
 - Add optional output (of the command) to the Python exception.
2017-11-28 08:53:40 -05:00
Adriaan de Groot
1f3f6111f7 [libcalamares] Log output from failed commands 2017-11-28 08:40:12 -05:00
Adriaan de Groot
b4d4351825 [libcalamares] Better Python traceback handling:
- log the whole error message as plain text
 - convert to HTML only for the ui
2017-11-28 08:33:32 -05:00
Adriaan de Groot
a25445a58c i18n: update (English) source translation files 2017-11-28 06:47:33 -05:00
Adriaan de Groot
d06e29b1c5 [interactiveterminal] refactor again to keep Transifex happy 2017-11-28 06:45:56 -05:00
Calamares CI
cd2ae5ab0e [dummypythonqt] Automatic merge of Transifex translations 2017-11-28 06:00:08 -05:00
Adriaan de Groot
3cb6fd839b [interactiveterminal] Refactor error message
- refactor error message
 - ifx capitalisation problem
 - remove editorializing in comments

FIXES #866
2017-11-28 05:05:28 -05:00
Adriaan de Groot
3ae65d5771 Merge branch '3.1.x-stable' 2017-11-24 09:28:35 -05:00
Adriaan de Groot
93ab6432c4 [netinstall] Special-case the root node.
Root is always selected, can't be unselected, and has its own explicit
constructor and name. This resolves issue reported where unchecking
all *visible* groups caused the root to be unchecked, after which
hidden-but-still-selected subgroups were not installed.

Reported by crazy@
2017-11-24 07:52:52 -05:00
Adriaan de Groot
e29cd7ab54 Merge branch 'usertracking'
Adds a "tracking" module which allows configuring phone-home,
machine and user tracking. Additional machine-tracking types
could be defined depending on distro needs.

This is not the final version -- there is still polishing to
do on the icons, perhaps layout.

Tested in KDE Neon devunstable by keeping an existing partition
which had an older Neon running. New machine-id is generated
and sed'ded into place.

FIXES #783
2017-11-23 17:38:30 +01:00
Adriaan de Groot
858372d93e [tracking] Remove derp. 2017-11-23 17:38:06 +01:00
Adriaan de Groot
8aa94ef01e [branding] Fix up example URLs 2017-11-23 13:15:55 +01:00
Adriaan de Groot
8e79ad1a14 [tracking] Implement Neon machine tracking configuration 2017-11-22 08:04:37 -05:00
Adriaan de Groot
6cb88c86f1 [tracking] Improve phrasing 2017-11-22 07:49:06 -05:00
Adriaan de Groot
22f5a121cb [tracking] stub implementation of neon machine feedback configuration 2017-11-22 07:39:52 -05:00
Adriaan de Groot
4a96e83203 [tracking] Adjust wording, drop page title 2017-11-22 07:21:58 -05:00
Adriaan de Groot
9a3ba75c2c [tracking] Switch icons to sensible names 2017-11-22 13:04:18 +01:00
Adriaan de Groot
cb8f698ce0 [tracking] Switch to VDG icons (version 1) 2017-11-22 13:01:41 +01:00
Adriaan de Groot
93052311aa [tracking] Switch UI to use radio buttons
Following KDE Pholio M116, switch to using a radio button; instead
of 4 individually toggle-able settings, use a "level" indicator
to select none, install, machine, user .. each of which implies
the previous levels. Each level is individually enable-able from
the distro side.
2017-11-22 06:52:14 -05:00
Adriaan de Groot
188050a77c Merge branch 'master' into usertracking 2017-11-21 07:29:49 -05:00
bill-auger
452cefd482 use orphaned Branding::ProductLogo as sidebar image 2017-11-21 07:25:39 -05:00
Adriaan de Groot
aa0fa37492 [netinstall] Hidden groups follow selectedness of parents.
If a subgroup is hidden, then it should be considered
selected if its parent is selected or partially-selected.
If the parent group is totally unselected, then the hidden
subgroup shouldn't be installed either. This allows putting
required-packages into a group, without cluttering the
interface.

FIXES #864
2017-11-21 06:16:30 -05:00
Adriaan de Groot
71e80f680e [netinstall] Only update selectedness of parents with children.
While walking up the tree, only switch the selectedness states
of parents with children. This avoids the case where a parent
has a first subgroup that is hidden -- in which case the
parent ends up with no children, and is unselected even though
it is marked as selected in the config file.

FIXES #864
2017-11-21 05:36:38 -05:00
Adriaan de Groot
495f94dde8 [calamares] Silence QBasicTimer warning message.
Relying on auto-qobject deletion on shutdown generates a warning message
    17:23:44 [0]: QBasicTimer::start: QBasicTimer can only be used
                  with threads started with QThread
which is annoying. Since we're in shutdown, just skip deletion
entirely, and leave the model unparented.

FIXES #472
2017-11-21 04:22:28 -05:00
Adriaan de Groot
185f46e2c4 [calamares] reduce compile warnings 2017-11-20 12:00:06 -05:00
Adriaan de Groot
3e4b1a7c46 [calamares] Avoid possible uninit-pointer or memory leak 2017-11-20 11:59:15 -05:00
Adriaan de Groot
0c0f0fc8b4 [requirements] Check window minimum size, not preferred size.
FIXES #863
2017-11-20 09:14:35 -05:00
Adriaan de Groot
1d18ea264d [libcalamaresui] Switch to using three state icons for requirements 2017-11-20 09:04:26 -05:00
Adriaan de Groot
65cf28b716 [libcalamaresui] Provide access to the breeze SVGs 2017-11-20 09:04:26 -05:00
Adriaan de Groot
fbe1976c11 [libcalamaresui] Add breeze SVGs under LGPLv3 2017-11-20 08:59:10 -05:00