Commit Graph

303 Commits

Author SHA1 Message Date
Adriaan de Groot
43e271dfec [users] Missing negation 2020-11-06 22:27:46 +01:00
Adriaan de Groot
8e53b83f9f [users] Test for setting / resetting sudo settings 2020-11-06 22:27:34 +01:00
Adriaan de Groot
6f41949bba [users] Log when sudo is skipped 2020-11-06 14:38:12 +01:00
Adriaan de Groot
59255c7a57 Changes: apply coding style 2020-11-05 00:00:29 +01:00
Adriaan de Groot
f898840e16 [users] Expand schema to cover new possibilities 2020-11-03 13:02:49 +01:00
Adriaan de Groot
36f9fd56a3 [users] Expand the example config with new possibilities 2020-11-03 12:54:19 +01:00
Adriaan de Groot
7c268b2e4d [users] Correct terminology in configuration documentation 2020-11-03 12:48:12 +01:00
Adriaan de Groot
486cdaeeb6 [users] Shuffle library order to satisfy CI build 2020-11-02 14:10:35 +01:00
Adriaan de Groot
b61b5f8650 [users] Run an expected-to-fail test in creating groups 2020-11-02 12:27:50 +01:00
Adriaan de Groot
8127ae704c [users] Expand tests for groups a little 2020-11-02 12:13:59 +01:00
Adriaan de Groot
e66f81f6ee CMake: comment on BUILD_AS_TEST 2020-11-02 12:01:02 +01:00
Adriaan de Groot
daaf16d331 Merge branch 'calamares' into issue-1523 2020-10-29 16:33:27 +01:00
Adriaan de Groot
0d4d3e3c4d [users] Set up GS rootMountPoint for test 2020-10-23 12:27:44 +02:00
Adriaan de Groot
63196ab58f [users] Avoid crashes in tests due to nullptr GS 2020-10-23 12:19:28 +02:00
Adriaan de Groot
c412e285c2 [libcalamares] Link publicly to yaml-cpp
Needed on FreeBSD, where you otherwise might not get the
include paths for yaml-cpp added -- and utils/Yaml.h
expects them to be there.
2020-10-23 12:01:29 +02:00
Adriaan de Groot
cd8c3089cb [users] Fix build: renamed moc file 2020-10-23 11:14:59 +02:00
Adriaan de Groot
89d495d5fb [users] Rename file to match its purpose 2020-10-22 14:22:11 +02:00
Adriaan de Groot
5b4f9d0b98 [users] Adjust tests for changed API 2020-10-22 14:21:14 +02:00
Adriaan de Groot
f1772a7eae [users] Create groups in a separate job 2020-10-22 14:11:01 +02:00
Adriaan de Groot
03541470d5 [users] Handle system-group creating specially 2020-10-22 14:08:33 +02:00
Adriaan de Groot
fa1d314b13 [users] Refactor group-creation into separate Job 2020-10-22 13:49:45 +02:00
Adriaan de Groot
3d289f345a [users] Refactor users functionality to a static lib
- this makes it less fragile to share all the functionality
  with usersq, since it ends up in the library which is shared
  between the modules.
2020-10-21 15:02:33 +02:00
Adriaan de Groot
29e6934672 [users] Factor out Sudo creation into separate job 2020-10-21 14:43:45 +02:00
Adriaan de Groot
328a5bbbfb [users] Don't allow continuing with an empty login name
The status for an empty login name is '' (empty), for ok -- this is
so that there is no complaint about it. But it's not ok to
continue with an empty name.
2020-10-19 11:46:08 +02:00
Adriaan de Groot
4d3f20f4a7 [users] Don't allow continuing with an empty login name
The status for an empty login name is '' (empty), for ok -- this is
so that there is no complaint about it. But it's not ok to
continue with an empty name.
2020-10-17 15:48:12 +02:00
Adriaan de Groot
2911c789f9 [users] Fix up tests for login status
- an empty login name is "ok" even if it isn't -- there's no
  warning message in that case
2020-10-14 15:21:41 +02:00
Adriaan de Groot
89e279c96a [users] Set auto- and sudo-groups correctly
- Was updating GS only, not internals
- restructure all to update internals, then GS, then emit change signals
2020-10-14 15:21:41 +02:00
Adriaan de Groot
f726634c2f [users] Fix tests for setting shell
- The EXPECT_FAIL value "Abort" stops the test (I wanted 'if this
  unexpectedly passes, raise an error' -- should have read the
  documentation more closely).
- Set the shell in the config object, not just in GS.
2020-10-14 15:21:41 +02:00
Adriaan de Groot
6b2d7f6a42 [users] Protect against JobQueue or GS being NULL
- Avoid SIGSEGV in tests, make sure JobQueue exists, GS optional
2020-10-14 15:21:19 +02:00
Adriaan de Groot
788a233319 [users] Introduce a test for Config getters and setters 2020-10-14 15:21:15 +02:00
Adriaan de Groot
58f10739e1 [users] Show progress during the module
- add a status member so the different steps can show progress
  as the user is created and configured. The progress values
  are hard-coded guesses as to how much work is done for each step.
- while here, reduce the scope of the global storage variable
2020-10-14 15:21:10 +02:00
Adriaan de Groot
ef70b2c32e [users] Run CreateUserJob off of the Config object
- don't pass in copies or bits of the Config, hand over the whole Config
- don't pluck some parts of the Config from Global Storage
2020-10-14 15:21:10 +02:00
Adriaan de Groot
02e9872a99 [users] Handle detailed groups list
Groups can be specified with must_exist and/or system set,
so they fill in the groups list more carefully.
2020-10-14 15:21:10 +02:00
Adriaan de Groot
a86374386b [users] Add test for new notation for groups-with-details 2020-10-14 15:21:10 +02:00
Adriaan de Groot
07027c2430 [users] Test distinguishes system groups from user groups 2020-10-14 15:21:10 +02:00
Adriaan de Groot
ff9abdfc08 [users] The fallback groups are all **system** groups 2020-10-14 15:21:10 +02:00
Adriaan de Groot
b20c80a28c [users] Introduce class-scoped aliases for true and false for the bools
This is somewhat experimental and weird; the idea is that bool
arguments are a lot easier to understand if there are proper
names attached, rather than "true" and "false".
2020-10-14 15:20:26 +02:00
Adriaan de Groot
ceeab7087c [users] Fix implementation so existing tests pass 2020-10-13 22:12:26 +02:00
Adriaan de Groot
e46d9f735d [users] Adjust tests to changed groups-list 2020-10-13 17:36:24 +02:00
Adriaan de Groot
d3135898fd [users] More fine-grained group descriptions
Describe groups with more detail:
 - groups can be system groups (low GID) or not
 - groups may be pre-configured (e.g. come from the unpackfs stage)
2020-10-13 17:35:07 +02:00
Adriaan de Groot
2878c474c5 Warnings-- (~T() override)
Change all the places that had
	virtual ~T() override
to the less redundant form without override.
2020-09-22 22:49:30 +02:00
Adriaan de Groot
2126be6d6d Warnings-- (~T() override)
Consistently use
	~T() override;
in class declarations (so no virtual in front, and avoid
warnings due to the missing override in back).
2020-09-22 22:40:52 +02:00
Adriaan de Groot
7d5a209dd0 [modules] Warnings-- in tests (~Test() override) 2020-09-22 22:37:55 +02:00
Adriaan de Groot
ec0b68084f [users] Refactor setting GS
- both changing the autologin and changing the user (login) name
  affect global storage, and both may need to change the autologin
  username; split it into a free function.
- the fullname change was bypassing the login in changing the
  login name, **but** then it needs a back-workaround to keep
  the "custom" setting off (when custom is off, auto-fill username
  and hostname is active).
- after loading the config, fill GS already.
- when finalizing GS, get the autologin settings again.
2020-08-28 23:48:47 +02:00
Adriaan de Groot
d7dc48d201 [users] Add now-obvious missed initialization
- start the checkbox off in the state from config
2020-08-28 23:48:47 +02:00
Adriaan de Groot
15b5ef467e [users] Hook up strong- and reuse- password checkboxes
- setup the visibility and initial checked-state of the reuse-user-
  password-for-root near where it gets connected; do similar
  for the require-strong-password
- squash the lambda slot into the regular slot: no sense in
  connecting twice to the same signal with the same receiver.
- only connect config->ui once
- only connect at all if the setting is visible (e.g. when weak
  passwords are allowed for the require-strong checkbox, or
  when root's password will be written for the reuse-password)
2020-08-28 23:47:11 +02:00
Adriaan de Groot
d584a96335 [users] Improve naming of widget 2020-08-28 23:47:11 +02:00
Adriaan de Groot
a2180936ef CI: apply coding style across the entire codebase again 2020-08-26 02:28:43 +02:00
Adriaan de Groot
1cd9b93a22 REUSE: Giant boilerplate cleanup
- point to main Calamares site in the 'part of' headers instead
  of to github (this is the "this file is part of Calamares"
  opening line for most files).
- remove boilerplate from all source files, CMake modules and completions,
  this is the 3-paragraph summary of the GPL-3.0-or-later, which has
  a meaning entirely covered by the SPDX tag.
2020-08-26 02:28:38 +02:00
Adriaan de Groot
30a85668b7 REUSE: (GPL-3.0-or-later) C++ modules 2020-08-26 02:22:49 +02:00