4936 Commits (b6719bda10824e30b2ea627a8921d5507054922c)

Author SHA1 Message Date
Adriaan de Groot 7efed8226c [libcalamares] Warnings--, update copyright 5 years ago
Adriaan de Groot c1151cbcfa [libcalamares] Update copyright info 5 years ago
Adriaan de Groot 8181808bec [libcalamares] Fix build
- drop now-obsolete boost-warnings.h
 - add missing namespace alias to GlobalStorage.h (removed accidentally
   in previous commit)
5 years ago
Adriaan de Groot 3b35ca7bb9 [libcalamares] Simplify includes
- PythonHelper.h already pulls in all the Python machinery
5 years ago
Adriaan de Groot 95722541d0 [libcalamares] Untangle Python includes
- Use BoostPython.h to manage overall includes
 - Remove local home-grown variations
5 years ago
Adriaan de Groot f8998834cf [libcalamares] Simplify includes (no Python used in JobQueue) 5 years ago
Adriaan de Groot d42e757576 [libcalamares] Simplify includes
- CalamaresVersion used by the job, not the API presented to Python.
 - Untangle Qt includes from there.
5 years ago
Adriaan de Groot f3e7fe5eb4 [libcalamares] Use more specific include 5 years ago
Adriaan de Groot 96580e5c40 [libcalamares] Convenience header for Boost and its warnings 5 years ago
Adriaan de Groot 6432b7f42a [libcalamares] Hit Boost warnings with a hammer
- Tons of warnings from Clang 9 in Boost::Python code, so
   turn of most of those warnings in the Boost-support code.
5 years ago
Adriaan de Groot 684c5f477c [libcalamares] Moc warnings--
- don't have a NOTIFY CONSTANT property
 - the data is constant, so drop NOTIFY
 - remove redundant signals
 - remove setLabels() now it's only needed from one constructor
5 years ago
Adriaan de Groot b4b1bf5de2 [libcalamares] Call delegated constructor 5 years ago
Adriaan de Groot df5a0d25bc [libcalamares] Handle empty locale names quickly 5 years ago
Adriaan de Groot 27bc64e63f [libcalamares] C++ style, warnings-- 5 years ago
Adriaan de Groot 241cb04f06 [libcalamares] Coding style 5 years ago
Camilo Higuita 1b3d32ca79 make label item from LabelModel qobject based and expose properties 5 years ago
Adriaan de Groot 6c0fecd40d [notesqml] Don't use a fixed width 5 years ago
Adriaan de Groot c3c845e9d7 [notesqml] Add some more module documentation 5 years ago
Adriaan de Groot 4f60a6340e [dummyqml] Drop module; it makes more sense to just be notesqml 5 years ago
demmm c0e1ebb72a adding notesqml, copy of dummyqml
included in settings.conf, commented out
5 years ago
Adriaan de Groot 39a5453904 [libcalamaresui] Add QML onActivate() and onLeave() calls.
- This comes from the ExecutionViewStep, V2 loading, which
   notifies the QML that the QML is now active.
5 years ago
Adriaan de Groot 1f34c2834e [libcalamaresui] Move definitions inside namespace {}
- Remove the extra Calamares:: namespace specifier from half the
   definitions.
5 years ago
Adriaan de Groot 12675be516 [libcalamaresui] Factor out "simple" QML method calls 5 years ago
Adriaan de Groot bf675d971b Merge branch 'qml' 5 years ago
Adriaan de Groot faa88afc88 Merge branch 'issue-1314'
FIXES #1314
5 years ago
Adriaan de Groot 229d09927e Changes: for 2020, new fake Linux distro name 5 years ago
Adriaan de Groot 3e2908ea16 [machineid] Follow Manjaro flags
- add -f to ln(1) flags
5 years ago
Adriaan de Groot 110a84344b [machineid] Test job function
- Create a job and ask it to create dbus files -- either directly,
   or as a symlink. Since the target chroot isn't viable, this will
   fail but we can at least see that directories are created, etc.
5 years ago
Adriaan de Groot 4cdcb48de6 [machineid] Functionality moved to libcalamares 5 years ago
Adriaan de Groot b62004aae9 [machineid] Create the DBus data directory
- before running dbus-uuidgen or linking to systemd's UUID,
   create /var/lib/dbus; some distro's don't create that
   beforehand.

FIXES #1314
5 years ago
Adriaan de Groot 240fe2a564 [libcalamares] Add convenience createTargetParentDirs() 5 years ago
Adriaan de Groot 6ede9f2c7c [libcalamares] Test QFileInfo::dir() for completeness 5 years ago
Adriaan de Groot e65969d587 [libcalamares] Re-do createTargetDirs()
- Drop the basedirs idea, replace return with just bool
 - Use QDir::mkpath, with some extra validation
 - Test it a bit
5 years ago
Adriaan de Groot 8b8ecf7b7b [libcalamars] Improve test init and cleanup
- Test createTargetFile and removeTargetFile
 - Clean up afterwards
 - Ensure /tmp is the RMP for each test
5 years ago
Adriaan de Groot b502d78984 [libcalamares] Fix warning message
- "create" was when this function was used elsewhere
5 years ago
Adriaan de Groot 394eee3954 [libcalamares] Test more targetPath() scenario's 5 years ago
Adriaan de Groot 8d23e665ea [libcalamares] Fix targetPath() tests
- there is less simplification done than you might think
5 years ago
Adriaan de Groot daa5b804b3 [libcalamares] Split paths-tests into own test executable
- Since these tests all want a system object, and a GS
   with a sensible setup, give them one with its own initTestCase().

This could have been done with one executable, running tests from
multiple classes, but there's not much overall benefit there.
5 years ago
Adriaan de Groot 31878dd43b [libcalamares] Avoid double / between root and path in targetPath() 5 years ago
Adriaan de Groot 15bca702c1 [libcalamares] Add tests for path functions (part 1) 5 years ago
Adriaan de Groot 95936549e2 [libcalamares] Add a createTargetBasedirs()
- Used to ensure that the directories leading up to a given path
   exist. Implementation is incomplete and broken for now.
 - While here, avoid removing an empty pathname in removeTargetFile()
   (the empty pathname indicates a broken configuration).
5 years ago
Adriaan de Groot 4af68365c9 [machineid] Remove obsolete implementation 5 years ago
Adriaan de Groot bf882cec1d [machineid] Migrate removeFile() to libcalamares
- Becomes removeTargetFile()
5 years ago
Adriaan de Groot 9ef04192db [libcalamares] Simplify returns in targetPath() 5 years ago
Philip Müller 97ddd30af4
[machineid] folder needs to be created when not exists
- See #1314
5 years ago
Philip Müller 72d742e2f4
[machineid] Use same approach as we do in Manjaro
- See also https://gitlab.manjaro.org/applications/calamares/commit/da8f45ae
- Fixes #1314
5 years ago
Philip Müller c766a0f10f
[machineid] create dbus var-lib folder when not existing
See also #1314
5 years ago
Adriaan de Groot 53b6113c75 [welcome] Fix QML tests 5 years ago
Adriaan de Groot eaea262449 Merge branch 'master' into qml 5 years ago
Adriaan de Groot 4b3f7eb209 [calamares] Local translations can be a separate setting
- Don't stick this in Settings, though, it becomes overly complicated.
5 years ago
Adriaan de Groot 24c2c435a0 [libcalamares] Try repairing tests
- Fail on FreeBSD with an instant timeout
5 years ago
Adriaan de Groot 4525060c26 [calamares] Refactor Settings initialization
- add a Settings::init() to do actual work
 - remove the same kind of code from CalamaresApplication
 - make constructor of Settings private
 - initialize settings before the application
5 years ago
Adriaan de Groot 68e8b0695d [calamares] Make declaration order match calling order 5 years ago
Adriaan de Groot db80a34aca [calamares] Remove intermediate debug-settings
- There's a multi-stage setup for debug-mode, where the application
   object also knows that debugging is set. Remove it.
 - Break debug mode (because now the settings don't get debug-mode set).
 - Refactor so that parameter handing is only done if this Calamares
   is the unique (first) Calamares.
5 years ago
Adriaan de Groot 50b6801d35 [calamares] Install translator after loading settings
- means that also the *initial* translation can take settings
   into account, like -d loading local translations.
5 years ago
Adriaan de Groot f233cac7a1 [calamares] Refactor debug-logging settings 5 years ago
Adriaan de Groot ea8adc3de7 [calamares] Simplify return from main 5 years ago
Adriaan de Groot af862336a8 [calamares] Initialize settings before QML 5 years ago
Adriaan de Groot 91625c8ba8 [libcalamares] Tidy up boolean options in Settings
- The const getters for a single boolean value have moved
   to the header, for inlining.
 - Document the getters and what their settings mean.
5 years ago
Calamares CI 8c0ef5798d i18n: [dummypythonqt] Automatic merge of Transifex translations 5 years ago
Adriaan de Groot d956c79291 [libcalamares] Load translations from more places
- To support translation testing, without needing to recompile
   Calamares, load files from the local directory when debugging,
   or from /usr/share/calamares/lang/ in general.
 - This allows updating translations and testing them with just
   lrelease (a translation build tool) installed, without rebuilding
   Calamares.
 - This allows distro's to ship updated or modified translations without
   rebuilding Calamares.
5 years ago
Adriaan de Groot 02e5e0de5e [users] Use entropy service.
FIXES #1254
5 years ago
Adriaan de Groot 5b987d4f33 [machineid] Use entropy service
- Most of the code was error-checking, just replace the open-read
   with a call to the service instead.
 - It's not an error if /dev/urandom doesn't exist in the source system
   (there may be other good random sources, and otherwise we have the
   low-quality random fallback).
5 years ago
Adriaan de Groot c971127b17 [machineid] Fix entropy-file return
- If the file was created and written, it would drop out of the
   if() and return an error anyway.
5 years ago
Adriaan de Groot e56948cefa [libcalamares] Fix tests (cell is the lower unicode byte) 5 years ago
Adriaan de Groot be0831ee11 [libcalamares] Add printable-entropy (e.g. for password salt) 5 years ago
Adriaan de Groot 8947f9c00c [libcalamares] Test the Entropy service 5 years ago
Adriaan de Groot a574b43eb8 [libcalamares] Also report empty buffer as no-entropy 5 years ago
Adriaan de Groot 842a90e026 [libcalamares] Add an Entropy service for getting random data
- Tries to get the "best" random data
 - Reports the quality of the random data it got
5 years ago
Adriaan de Groot 252ce70203 i18n: updated (English) source files 5 years ago
Adriaan de Groot b38ae75bef Merge branch 'translate-checks' 5 years ago
Adriaan de Groot 8f581ca861 [welcome] Coding style
- apply coding style, add {}
 - remove unneeded includes (moved to the widgets)
 - update copyright
5 years ago
Adriaan de Groot a09593e4a2 [locale] Tighten up language-matching
- Drop plain startsWith() matching, since we now have "as" and "ast"
   as supported languages, where one name is a prefix of the other.
5 years ago
Adriaan de Groot 49690fc681 [locale] Remove superfluous code
- the list is already filtered for UTF-8, so this is redundant
 - this *incidentally* fixes the problem with Assamese and Asturian,
   since Assamese (as_IN) was having its only entry removed,
   after which it would match Asturian (ast_ES)
5 years ago
Adriaan de Groot 97f622e094 [locale] Use standard algorithms 5 years ago
Adriaan de Groot 6b77d5db4a [welcome] Add detail messages for root and screen checks
- these were empty, so the widgets were hidden in the details
   dialog of the requirements check; which looks really strange
   if the reason the check fails is because root is required,
   and you can't see that in the details.

This commit is on a branch because it changes strings, and I want
to do a release Real Soon and not annoy the translators.
5 years ago
Adriaan de Groot ad4ac1d25c [welcome] Update copyrights 5 years ago
Adriaan de Groot 9d69d0a893 [welcome] Remove unused variables 5 years ago
Adriaan de Groot 1ac4786365 [welcome] Move all the translation work to the slot
- this needs to (re)check the satisfaction states to figure out the
   message, but that's useful if the state of the checks changes
   (e.g. in #1106)
5 years ago
Adriaan de Groot 221a79b64c [welcome] Simplify logic
- \not mandatorySatisfied \implies \not requirementsSatisfied,
   so the ifs can be combined and simplified
5 years ago
Adriaan de Groot 28d91979c3 [welcome] Make resultWidgets less error-prone
- instead of counting and needing to keep track of the predicate
   applied while creating the widgets, push nullptrs to the widget
   list instead reflecting "this entry did not satisfy the predicate
   for widget creation".
5 years ago
Adriaan de Groot 39534325e6 [welcome] Re-use widget creation code
- for the list, the code can be the same as for the dialog,
   only the predicate is different.
 - while here, implement retranslate() since there's no text on
   the list widgets otherwise.
5 years ago
Adriaan de Groot 38d58e5b16 [welcome] Hoist explanatory-label code
- Create the label once, and it's ok for it to respond to links
   even if there's none in the code.
 - Turn into a member variable in preparation for retranslation-refactor.
5 years ago
Adriaan de Groot b476e4b386 [welcome] Refactor link-clicking
- remove intermediate lambda
 - rename dialog slot to one handling links in general (which now
   **only** does the dialog link)
5 years ago
Adriaan de Groot ecc7719abd [welcome] Hoist checking for requirements-satisfied
- lift it out of the loop that creates the widgets
 - some lambda-wankery, but the compiler hammers this down to
   simple loops and you can read the resulting code as

	none_of  [the list]  isUnSatisfied
	none_of  [the list]  isMandatoryAndUnSatisfied
5 years ago
Adriaan de Groot f5c0e57f17 [welcome] Improve variable naming
- these two are about whether all the checkEntries are satisfied
   (in general, and the mandatory ones) so make the names reflect that.
5 years ago
Adriaan de Groot 5795801be5 [welcome] Remove unneeded member variables.
- local to the constructor, only needed to be members because
   of the weird split between constructor and init()
5 years ago
Adriaan de Groot 5aae736ced [welcome] Create ResultWidget in separate method 5 years ago
Adriaan de Groot bede280f91 [welcome] Refactor ResultsListWidget
- no point in having init() called immediately after the constructor,
   if it only makes sense to have one call to init() ever to create
   the widget.
 - while here, give it the same kind of structure as the dialog,
   holding on to a reference to the list.
5 years ago
Adriaan de Groot 320dcac946 [welcome] Drop unneeded member variable 5 years ago
Adriaan de Groot ed1b3b576f [welcome] Refactor ResultsListDialog
- drop useless debugging
 - add documentation
 - move to its own spot in the file (not mixed in with ResultsListWidget)
5 years ago
Adriaan de Groot 41ac21bdcd [welcome] Refactor results-details dialog
- Factor out the "details" dialog into a separate class
   with a translation slot. This resolves the crash reported in #1307.
5 years ago
Calamares CI a017451607 i18n: [dummypythonqt] Automatic merge of Transifex translations 5 years ago
Calamares CI ae2536a9c3 i18n: [dummypythonqt] Automatic merge of Transifex translations 5 years ago
Adriaan de Groot 39cc13cb25 [shellprocess] Tidy code
- resolve TODO, use a unique_ptr to hang onto the command-list
 - sort the #includes, use correct quoting
5 years ago
Adriaan de Groot 71a73ee1a1 [libcalamares] PythonJob created with InstanceKey 5 years ago
Adriaan de Groot 96946a8447 Merge branch 'fix-unpackfs-progress'
This is an ugly hack, using Bill Auger's support for Job weights.
The unpackfs job is arbitrarily awarded a weight of 12. That makes it
(in a Netrunner install) use progress from 12% to 40% or so, overall,
as all the files are unpacked.

Also fixes bug reported by Kevin Kofler that unpackfs was only reporting
progress when it hit an exact multiple of 100 (instead of over 100).

SEE #1176
5 years ago
Adriaan de Groot 9976e92659 [libcalamares] Enlarge unpackfs to 12x 5 years ago
Adriaan de Groot d4b24894cb [libcalamares] Weigh unpackfs extra heavy
- This is a gross hack, which hard-codes unpackfs as much-heavier
   than other Python modules.
5 years ago
Adriaan de Groot 0c9188ee83 [libcalamares] Document JobWeight 5 years ago
Adriaan de Groot cdd2b9cc79 Modules: set noconfig:true on Python modules
- hwclock, initramfs, localecfg and networkcfg don't have any
   config file to work with, so set that explicitly in the module.desc
5 years ago
Adriaan de Groot 8d47751cb2 [libcalamares] Beautify debug output for InstanceKey 5 years ago
Adriaan de Groot 83ffbd5126 [libcalamaresui] Only load config file if there is one
- finally, no more warnings for modules that are NO_CONFIG
   (or noconfig: true) and don't have a config file.
5 years ago
Adriaan de Groot f366e3840f [libcalamaresui] Chase stronger typing of ModuleDescriptor 5 years ago
Adriaan de Groot 00deeec8c8 [libcalamaresui] Use InstanceKey instead of strings
- Replace return type of Module::instanceKey() by the structured
   ModuleSystem::InstanceKey type
 - Chase API breakage
5 years ago
Adriaan de Groot abdeb07bd3 [dummyqml] Minor polishing in Qml module
- document the default filename better
 - mark TODO actually loading the instance-id file
5 years ago
demmm b20a957c6e restore includes in header file to amke it build 5 years ago
demmm 538d8d5497 address qmlLabel changes too 5 years ago
demmm 9f55cf4cf4 part of the changes requested
others fail to build, or no idea how to fix
5 years ago
Adriaan de Groot b5d0acdf81 [luksbootkeyfile] Set NO_CONFIG 5 years ago
Adriaan de Groot 40f64f0c11 [hostinfo] Set NO_CONFIG and remove unused configuration methods 5 years ago
Adriaan de Groot fd058302b8 [dracutlukscfg] set NO_CONFIG and coding style 5 years ago
Adriaan de Groot 6530c889f0 Merge remote-tracking branch 'origin/use-idkey' into no-config
- Join to a single branch that does a bunch of tidying
   in the type-strictness of module interfaces.
5 years ago
Adriaan de Groot 155db29ccf [libcalamares] Add a ModuleSystem::Descriptor
- this is currently just an alias for QVariantMap, which is
   the type already in use.
 - future plan is to tighten this up and have an actual
   Descriptor class that carries only the information
   actually needed for the module descriptor.
5 years ago
Adriaan de Groot 974d795390 [libcalamares] Shuffle module-loading logic
- group ifs by the state of thisModule
5 years ago
Adriaan de Groot 58931d99fa [libcalamaresui] Support noconfig setting
- look up the descriptor and use its noconfig value
 - return empty QString if noconfig is set; this does not
   apply to custom instances
5 years ago
Adriaan de Groot 649eb94d24 [libcalamaresui] Type-alias for module descriptors 5 years ago
Adriaan de Groot 8fbe676280 [libcalamaresui] Refactor finding config file name
- check for broken custom instances earlier in the loop
 - make free function for finding the config file name
5 years ago
Adriaan de Groot d1f162f92a Docs: describe *noconfig* module option 5 years ago
Adriaan de Groot 10d1c4cf5b [unpackfs] Improve progress reporting
- don't rely on exactly 100 files being copied (thanks to Kevin Kofler)
5 years ago
Adriaan de Groot fbb452f9bf CMake: add support for NO_CONFIG
- A C++ module should set NO_CONFIG to flag that it doesn't have a
   config file (this is an error if it secretly **does** have one)
5 years ago
Adriaan de Groot fed0c46612 [libcalamaresui] Change return type of loadedInstanceKeys()
- Replace stringlist with a stronger-typed list of InstanceKey objects
 - Move smashing-that-to-stringlist into consumers of the list
   (just one, the debug window)
5 years ago
demmm 32eee82744 clean-up dummyqml.conf 5 years ago
demmm f2e68ddcf4 adding configure option dummyqml
sidebar entry can be configured and translated
adding a more elaborate qml example
keeping this in dummyqml for now, another commit will follow with
continuation of dummyqml in a more aptly named module
5 years ago
Adriaan de Groot 750465153f [dummyqml] Improve QML searching
- if the filename is an absolute path, use that
 - support searching in branding directory
5 years ago
Adriaan de Groot 7f8a31007a [dummyqml] Search for files
- start implementation of searching-for-qml
 - add a *filename* configuration item, so that the filename
   can be set per-instance (via the config file)
5 years ago
Adriaan de Groot ed4127f661 [libcalamaresui] Shuffle the module interface
- introduce NamedEnum lookup tables for interface and type
 - drop "final" and "virtual" from methods that don't make
   sense as virtual
 - shuffle declaration order so the virtual API for modules
   sits together
5 years ago
Adriaan de Groot f89c137c90 [libcalamaresui] Migrate module to using InstanceKey
- Trying to get away from untyped strings with special meaning.
 - The "split identifier" branch tried the same thing, but
   was duplicating the existing InstanceKey.h work.
5 years ago
Adriaan de Groot a7e1a1f9fc [libcalamaresui] Refactor Module::initFrom()
- generic initFrom() also sets the instance id
 - subclass-specific initFrom() now pure virtual in base
 - chase changes in subclasses
5 years ago
Adriaan de Groot 04615b251c [dummyqml] Make prettyName() return a sentence with . 5 years ago
Adriaan de Groot ce6d54ad95 [libcalamaresui] Improve failure message, unbreak loading
- example loading had an X inserted in filename (to test failure)
 - add a space between name and failure
5 years ago
Adriaan de Groot fed298b179 [libcalamaresui] Defer QML loading
- need a configuration before we can start loading (to support
   the variable search paths)
 - refactor showing a failure in the spinner widget. On failure,
   the spinner will never go away, so a message for the user is good.
 - stop clang-format from messing up the table of names.
5 years ago
Adriaan de Groot e7e66497d2 [libcalamaresui] Introduce search method for QML UI modules
- add a sample config and documentation in dummyqml/
5 years ago
Adriaan de Groot e6713d456c [libcalamaresui] Need explicit qrc: scheme 5 years ago
Adriaan de Groot c03c6fc8ed [libcalamaresui] Qml loading
- this is mostly copied from ExecutionViewStep (only the V2 QML
   loading), which does the same kind of thing.
 - loading from QRC does not work yet
5 years ago
Adriaan de Groot 44b250809f [libcalamaresui] Add spinner to QmlViewStep
- view step now has a widget, doesn't load QML yet
5 years ago
Adriaan de Groot 60c1d40b20 [libcalamaresui] Log which ViewStep is broken
- a ViewStep with no widget will crash the application;
   print out its name before doing so.
5 years ago
Adriaan de Groot 1cc40bda83 [dummyqml] Stub of a QML module 5 years ago
Adriaan de Groot 4924839217 [libcalamaresui] Start QmlViewStep 5 years ago
Adriaan de Groot 16a460adff [libcalamaresui] Move ExecutionViewStep where it belongs
- viewpages/ collects the ViewStep implementations
 - chase header moving and tidy some #includes
5 years ago
Adriaan de Groot 970702daa0 [libcalamaresui] Tidy up includes 5 years ago
Adriaan de Groot 537c257acf Merge branch 'master' into qml 5 years ago
Adriaan de Groot 56f926094e [welcomeq] Update comments
- Copyright years
 - Purpose of this module
5 years ago
Adriaan de Groot 1a8926181e [locale] Warnings-- (initialization-order) 5 years ago
Adriaan de Groot 2dff2d9d70 [libcalamares] TZRegion is hard to copy
- delete the copy and move constructors
 - adjust tests (which were just interested in simple tr() behavior) to use TZZone instead
5 years ago
Adriaan de Groot 5fbd0169ca [libcalamares] Reduce clang warnings (only-inline-virtual, unused parameters) 5 years ago
Adriaan de Groot 1b62b2f66c [libcalamares] Reduce warnings (extra ;, empty statement ..) 5 years ago
Adriaan de Groot b4c0ebe8ab [calamares] Use screen and window sizes, not position 5 years ago
Adriaan de Groot fcb0109b7b [calamares] Refactor center-placement
- Just move it to its own function where it can have more documentation
 - Tested on multi-screen setups

SEE #1293
5 years ago
Adriaan de Groot 121013fd96 [calamares] Avoid deprecated desktop()
- Put Calamares on the first screen where it fits
 - This is wordy and weird
5 years ago