Commit Graph

4912 Commits

Author SHA1 Message Date
Adriaan de Groot
274115c727 [libcalamares] Update tests to reflect changed API 2020-02-14 13:07:29 +01:00
Adriaan de Groot
2d7398161d [libcalamares] More detail for createTargetFile()
- Return a result-object with statrus information and the path
   which was previously used (empty for "failures").
2020-02-14 13:03:51 +01:00
Adriaan de Groot
695b88b8a7 [users] Tidy up hostname creation
- Use the createTargetFile() convenience functions to do the
   actual work.
 - This probably involves more copying around of buffers, since it's
   creating one big QString and sending that off, rather than writing
   little chunks to a file, but I feel this is worth the code simplification.
 - Drops all the error checking for creation, though, because the API for
   createTargetFile() lousy.
2020-02-14 12:31:53 +01:00
Adriaan de Groot
b337a6b3f5 [user] Apply coding style 2020-02-14 11:46:35 +01:00
Adriaan de Groot
2bb4dd8e22 [users] Refactor hostname-guessing 2020-02-14 11:45:45 +01:00
Gabriel Craciunescu
7c323bdcdc [users] Try to guess suggested hostname from dmi
- nothing compicated for now, just try to get something
  from /sys/devices/virtual/dmi/id/product_name and fallback
  to -pc thingy if we can't
2020-02-14 11:36:53 +01:00
Adriaan de Groot
5a50a3a40c [partition] Consistent FS name usage
- explicit use of user-visible names in EditExistingPartitionDialog
 - consistent conversion of config-values to FS names (user-visible).
   The GS value comes from the ViewStep, and should always match
   something -- it's already converted to the canonical un-translated
   so the type should be good.
2020-02-13 13:24:53 +01:00
Adriaan de Groot
57b608083e [partition] Fix build - missing ) 2020-02-13 13:24:09 +01:00
Adriaan de Groot
ca67534cd2 [partition] Improve logging of bad configs 2020-02-13 13:15:06 +01:00
Adriaan de Groot
472ec32617 [partition] Be explicit about user-visible FS names, ReplaceWidget 2020-02-13 11:49:20 +01:00
Adriaan de Groot
05dfc24af6 [partition] Be explicit about user-visible FS names, CreatePartitionDialog 2020-02-13 11:45:04 +01:00
Adriaan de Groot
88cff387c3 [partition] Be explicit about user-visible FS names, FormatPartitionJob 2020-02-13 11:33:40 +01:00
Adriaan de Groot
bacca04695 [partition] Be explicit about what's user visible in SetPartitionFlagsJob 2020-02-13 11:29:45 +01:00
Adriaan de Groot
29894cec6a [partition] Convenience userVisibleFS()
- Mark uses of filesystem-name where it's intentional that they
   are user-visible, with a new convenience function.
2020-02-13 11:22:09 +01:00
Adriaan de Groot
dac5516b2c [partition] Update copyright, coding style 2020-02-13 11:12:22 +01:00
Adriaan de Groot
a0449abab9 [partition] Do not translate filesystem names
- Move contents of FSName to KPMHelpers
 - Use the new functions from FillGlobalStorage

Needs more use in the rest of the partition module.
2020-02-13 11:06:53 +01:00
Adriaan de Groot
f410a4bb68 [libcalamares] Convenience function for FS names
Because getting the untranslated name of a FileSystem is something
that needs doing consistently, add some functions for that;
it makes it easier to spot places where that isn't done.

Probably doesn't compile, and needs extra documentation.
2020-02-13 10:12:02 +01:00
Adriaan de Groot
c055e1da49 [partition] Use untranslated name of filesystem
- Patch from Gabriel Craciunescu
2020-02-13 09:32:06 +01:00
Adriaan de Groot
c7780db07a Merge branch 'model-q'
- Make models of some things previously held as lists, as
   prep-work for QML modules.
2020-02-12 14:08:07 +01:00
Camilo Higuita
1f2f1a657e [libcalamaresui] Expose Branding strings to QML 2020-02-12 13:57:26 +01:00
Adriaan de Groot
ca13d1670e [libcalamares] Merge more from Camilo
- Complete the model for locales
2020-02-12 13:40:59 +01:00
Adriaan de Groot
59ddda6225 Merge branch 'wrangle-boost' 2020-02-12 12:44:09 +01:00
Adriaan de Groot
9408601074 [libcalamares] Move Python wrapper
- Take the Python wrapper for GlobalStorage out of the GlobalStorage.h
   header and add it to PythonHelper instead, saving some work in
   all the cases that only GS is interesting, not the Python bits.
2020-02-12 12:37:43 +01:00
Adriaan de Groot
ad725b671e [hostinfo] Warnings--
- Physical memory can't be negative, so it is reported as
   an unsigned long, but the bytes-to-MiB functions do accept
   negative amounts. As long as no machine has more than 2**62
   bytes of memory, we're good though.
2020-02-12 12:26:55 +01:00
Adriaan de Groot
a11280b427 [libcalamares] Expand tests for printable entropy 2020-02-12 12:22:02 +01:00
Adriaan de Groot
090716ba4f [libcalamares] Warnings-- in Entropy
- reading a file yields a qint64
 - need to mash the unsigned data from twister to signed char data.
2020-02-12 12:15:13 +01:00
Adriaan de Groot
7efed8226c [libcalamares] Warnings--, update copyright 2020-02-12 12:10:58 +01:00
Adriaan de Groot
c1151cbcfa [libcalamares] Update copyright info 2020-02-12 12:08:46 +01:00
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)
2020-02-12 11:25:10 +01:00
Adriaan de Groot
3b35ca7bb9 [libcalamares] Simplify includes
- PythonHelper.h already pulls in all the Python machinery
2020-02-12 11:04:15 +01:00
Adriaan de Groot
95722541d0 [libcalamares] Untangle Python includes
- Use BoostPython.h to manage overall includes
 - Remove local home-grown variations
2020-02-12 11:02:38 +01:00
Adriaan de Groot
f8998834cf [libcalamares] Simplify includes (no Python used in JobQueue) 2020-02-12 10:55:36 +01:00
Adriaan de Groot
d42e757576 [libcalamares] Simplify includes
- CalamaresVersion used by the job, not the API presented to Python.
 - Untangle Qt includes from there.
2020-02-12 10:48:19 +01:00
Adriaan de Groot
f3e7fe5eb4 [libcalamares] Use more specific include 2020-02-12 10:32:10 +01:00
Adriaan de Groot
96580e5c40 [libcalamares] Convenience header for Boost and its warnings 2020-02-12 10:28:48 +01:00
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.
2020-02-11 16:46:44 +01:00
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
2020-02-11 16:40:36 +01:00
Adriaan de Groot
b4b1bf5de2 [libcalamares] Call delegated constructor 2020-02-11 16:39:39 +01:00
Adriaan de Groot
df5a0d25bc [libcalamares] Handle empty locale names quickly 2020-02-11 16:37:49 +01:00
Adriaan de Groot
27bc64e63f [libcalamares] C++ style, warnings-- 2020-02-11 15:36:30 +01:00
Adriaan de Groot
241cb04f06 [libcalamares] Coding style 2020-02-11 15:25:28 +01:00
Camilo Higuita
1b3d32ca79 make label item from LabelModel qobject based and expose properties 2020-02-11 15:24:29 +01:00
Adriaan de Groot
6c0fecd40d [notesqml] Don't use a fixed width 2020-02-11 12:55:26 +01:00
Adriaan de Groot
c3c845e9d7 [notesqml] Add some more module documentation 2020-02-11 12:29:18 +01:00
Adriaan de Groot
4f60a6340e [dummyqml] Drop module; it makes more sense to just be notesqml 2020-02-11 12:20:39 +01:00
demmm
c0e1ebb72a adding notesqml, copy of dummyqml
included in settings.conf, commented out
2020-02-09 01:03:52 +01:00
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.
2020-02-07 22:18:23 +01:00
Adriaan de Groot
1f34c2834e [libcalamaresui] Move definitions inside namespace {}
- Remove the extra Calamares:: namespace specifier from half the
   definitions.
2020-02-07 21:33:34 +01:00
Adriaan de Groot
12675be516 [libcalamaresui] Factor out "simple" QML method calls 2020-02-07 21:25:55 +01:00
Adriaan de Groot
bf675d971b Merge branch 'qml' 2020-02-07 21:08:29 +01:00
Adriaan de Groot
faa88afc88 Merge branch 'issue-1314'
FIXES #1314
2020-02-07 20:33:05 +01:00
Adriaan de Groot
229d09927e Changes: for 2020, new fake Linux distro name 2020-02-07 20:32:20 +01:00
Adriaan de Groot
3e2908ea16 [machineid] Follow Manjaro flags
- add -f to ln(1) flags
2020-02-07 20:31:15 +01:00
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.
2020-02-07 20:29:42 +01:00
Adriaan de Groot
4cdcb48de6 [machineid] Functionality moved to libcalamares 2020-02-07 16:12:17 +01:00
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
2020-02-07 16:10:13 +01:00
Adriaan de Groot
240fe2a564 [libcalamares] Add convenience createTargetParentDirs() 2020-02-07 16:09:02 +01:00
Adriaan de Groot
6ede9f2c7c [libcalamares] Test QFileInfo::dir() for completeness 2020-02-07 16:08:38 +01:00
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
2020-02-07 15:51:46 +01:00
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
2020-02-07 15:23:02 +01:00
Adriaan de Groot
b502d78984 [libcalamares] Fix warning message
- "create" was when this function was used elsewhere
2020-02-07 13:58:44 +01:00
Adriaan de Groot
394eee3954 [libcalamares] Test more targetPath() scenario's 2020-02-07 13:57:14 +01:00
Adriaan de Groot
8d23e665ea [libcalamares] Fix targetPath() tests
- there is less simplification done than you might think
2020-02-07 13:53:49 +01:00
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.
2020-02-07 13:49:06 +01:00
Adriaan de Groot
31878dd43b [libcalamares] Avoid double / between root and path in targetPath() 2020-02-07 13:29:35 +01:00
Adriaan de Groot
15bca702c1 [libcalamares] Add tests for path functions (part 1) 2020-02-07 11:51:13 +01:00
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).
2020-02-07 11:30:37 +01:00
Adriaan de Groot
4af68365c9 [machineid] Remove obsolete implementation 2020-02-07 11:16:40 +01:00
Adriaan de Groot
bf882cec1d [machineid] Migrate removeFile() to libcalamares
- Becomes removeTargetFile()
2020-02-07 11:16:01 +01:00
Adriaan de Groot
9ef04192db [libcalamares] Simplify returns in targetPath() 2020-02-07 11:03:40 +01:00
Philip Müller
97ddd30af4
[machineid] folder needs to be created when not exists
- See #1314
2020-02-07 10:46:26 +01:00
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
2020-02-07 10:34:01 +01:00
Philip Müller
c766a0f10f
[machineid] create dbus var-lib folder when not existing
See also #1314
2020-02-07 10:26:36 +01:00
Adriaan de Groot
53b6113c75 [welcome] Fix QML tests 2020-02-05 18:38:46 +01:00
Adriaan de Groot
eaea262449 Merge branch 'master' into qml 2020-02-05 18:03:31 +01:00
Adriaan de Groot
4b3f7eb209 [calamares] Local translations can be a separate setting
- Don't stick this in Settings, though, it becomes overly complicated.
2020-02-05 17:48:39 +01:00
Adriaan de Groot
24c2c435a0 [libcalamares] Try repairing tests
- Fail on FreeBSD with an instant timeout
2020-02-05 17:08:47 +01:00
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
2020-02-05 16:48:49 +01:00
Adriaan de Groot
68e8b0695d [calamares] Make declaration order match calling order 2020-02-05 16:14:56 +01:00
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.
2020-02-05 16:10:41 +01:00
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.
2020-02-05 14:33:42 +01:00
Adriaan de Groot
f233cac7a1 [calamares] Refactor debug-logging settings 2020-02-05 14:23:55 +01:00
Adriaan de Groot
ea8adc3de7 [calamares] Simplify return from main 2020-02-05 14:04:52 +01:00
Adriaan de Groot
af862336a8 [calamares] Initialize settings before QML 2020-02-05 13:50:18 +01:00
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.
2020-02-05 13:35:26 +01:00
Calamares CI
8c0ef5798d i18n: [dummypythonqt] Automatic merge of Transifex translations 2020-02-04 22:19:48 +01:00
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.
2020-01-30 19:06:33 +01:00
Adriaan de Groot
02e5e0de5e [users] Use entropy service.
FIXES #1254
2020-01-30 10:32:34 +01:00
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).
2020-01-30 10:32:27 +01:00
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.
2020-01-30 10:08:55 +01:00
Adriaan de Groot
e56948cefa [libcalamares] Fix tests (cell is the lower unicode byte) 2020-01-29 16:41:17 +01:00
Adriaan de Groot
be0831ee11 [libcalamares] Add printable-entropy (e.g. for password salt) 2020-01-29 16:39:25 +01:00
Adriaan de Groot
8947f9c00c [libcalamares] Test the Entropy service 2020-01-29 16:16:12 +01:00
Adriaan de Groot
a574b43eb8 [libcalamares] Also report empty buffer as no-entropy 2020-01-29 16:08:33 +01:00
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
2020-01-29 16:03:50 +01:00
Adriaan de Groot
252ce70203 i18n: updated (English) source files 2020-01-29 11:42:04 +01:00
Adriaan de Groot
b38ae75bef Merge branch 'translate-checks' 2020-01-29 11:11:32 +01:00
Adriaan de Groot
8f581ca861 [welcome] Coding style
- apply coding style, add {}
 - remove unneeded includes (moved to the widgets)
 - update copyright
2020-01-29 11:10:30 +01:00
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.
2020-01-28 17:35:54 +01:00
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)
2020-01-28 16:41:15 +01:00