Commit Graph

23 Commits

Author SHA1 Message Date
Adriaan de Groot
abae942e55 [users] Complete isReady move to Config
- give Config slots and signals for ready-status
- disconnect the page from the viewstep and use the Config object
  ready-status instead
2020-08-18 11:21:53 +02:00
Adriaan de Groot
eb44d0c6be [users] Move GlobalStorage wrangling to config
- the whole fill-GS method is a bit weird, since you might want
  to reflect that "live" in GS instead.
2020-08-17 15:30:09 +02:00
Adriaan de Groot
34946ecdee [users] Refactor validity-checking
- provide a structured datatype for password status
2020-08-17 14:20:54 +02:00
Adriaan de Groot
1a7b2668dc [users] Emit password status changes 2020-08-17 14:08:59 +02:00
Adriaan de Groot
a16ecba2bd [users] Inline isPasswordAcceptable
- the way isPasswordAcceptable was being used was buggy, leading
  to test failures (now fixed)
- don't expose the function, anyway: it's an implementation
  detail for passwordStatus() which in itself is an implementation
  detail for status notifications.
2020-08-17 13:22:44 +02:00
Adriaan de Groot
1dcf56761f [users] Apply validation to the passwords config knows about
- avoid update loops by checking values before emitting *Changed()
- check validity of user and root passwords when asked
- if root isn't going to be written, or re-uses the user password,
  defer to those status checks.
2020-08-17 12:48:43 +02:00
Adriaan de Groot
b49b9a66e6 [users] Drop data-access from the Page
- get username, password etc. from the config object, not the page
- jobs now depend entirely on config
- handle logic of "what's the root password" in Config
2020-08-05 13:42:18 +02:00
Adriaan de Groot
eb72d662d1 [users] Add password fields to Config
- no checking is done for validity, and there is no password-status
2020-08-05 13:29:12 +02:00
Adriaan de Groot
900deb5dc8 [users] Move the configuration of password checks to Config
- the Widget (Page) does not need to know the password checks,
  that's business logic that belongs to Config.
2020-08-05 13:03:18 +02:00
Adriaan de Groot
2efce1ac7a [users] Move the hostname-setting config
- The configuration for writing the hostname (to /etc/hostname,
  to /etc/hosts and possibly to systemd-hostname) is read-only,
  because it comes from the config file and won't change after.
2020-08-05 10:29:13 +02:00
Adriaan de Groot
35dff4d12c [users] Migrate reuse-password and password-strength to Config
- add the "reuse user password for root" setting to Config,
  make the UI page follow that setting.
- add the require-strong-password default and toggle settings to
  Config; this is not well-checked yet.

On the widget / UI side, connect checkboxes only if they are
visible; refactor reuse-user-password-for-root settings.
2020-08-04 22:40:27 +02:00
Adriaan de Groot
b9372ba432 [users] Move default groups setting to Config
- drop groups from the viewstep
- note that the Config object should also be in charge of creating
  Jobs (but then the de-tangling needs to be completed)
- add tests of default groups loading

Doesn't compile because QRegExpValidator is a gui thing.
2020-07-29 12:18:25 +02:00
Adriaan de Groot
6a03bcb25e [users] Move setRootPassword to Config
- this really controls whether a root password is written during installtion,
  so rename to writeRootPassword in the code.
2020-07-28 11:59:53 +02:00
Adriaan de Groot
45b71c24e7 [users] Move autologin setting to Config 2020-07-28 11:41:52 +02:00
Adriaan de Groot
9018913af5 [users] Move hostname validation to Config 2020-07-28 10:45:38 +02:00
Adriaan de Groot
40d7d1baac [users] Move login validation to Config object
- add a loginNameStatus which is a QString (empty if things are ok)
  stating what's wrong with the loginName, if anything.
2020-07-28 10:21:23 +02:00
Adriaan de Groot
d4a784f521 [users] Hook up full name to Config 2020-07-27 17:52:46 +02:00
Adriaan de Groot
5ffa09000a [users] Add hostname guessing to Config 2020-07-27 17:26:46 +02:00
Adriaan de Groot
411a202ba5 [users] Do some login-name guessing 2020-07-27 17:26:46 +02:00
Adriaan de Groot
66ae1823a5 [users] Give Config object a user and login name
- This is incomplete, because the business logic of guessing
  a login from the username is not here.
2020-07-27 17:26:46 +02:00
Adriaan de Groot
35916eb20f [users] Move autologin and sudoers groups to Config 2020-07-27 17:26:46 +02:00
Adriaan de Groot
2f786079f3 [users] Move shell settings to the Config object
- this is a set-only property (as far as the current ViewStep is
  concerned) and is passed around in GS for non-obvious reasons.
2020-07-27 17:26:46 +02:00
Adriaan de Groot
dab831b2ff [users] Introduce a (stub) Config object 2020-07-27 15:55:04 +02:00