The validation of the configuration files (modules' .conf files,
as well as settings.conf overall) spits out warnings, but does
not do all the validation it can:
- should print locations more clearly (e.g. if there's a tab
in welcome.conf)
- should also print some part of the bad text, if possible
- if a module cannot be created, that should be treated as
a fatal error (now the module is silently ignored). This
is different from a module that can't be found, which
immediately triggers a fatal failure.
Test plan:
- introduce a tab into welcome.conf
- introduce a bad conversion into settings.conf
With just the bad welcome.conf, it should complain clearly, and
refuse to start. With a bad conversion, it seems that there is
a problem but execution can continue, so it should be made clearer
what the problem is. If welcome.conf is buggy, and welcome is
listed to show, this should be a fatal error.
This is code that was written as part of the fix-pythonqt branch,
but which isn't really PythonQt-related at all. That branch will
be abandoned soon, since it wasn't sufficiently well-thought-out
enough at the beginning.
This test-application should load a single module and execute it --
that can be used to quickly test configurations, loading, etc. This
is preparation for loading all sorts of Python modules by PythonQt.
The loader does some internals initialization and gets the module,
but doesn't actually run it yet.
This introduces configuration to allow switching between the
behavior noted in #964, and the desired behavior from PR #955.
For the Manjaro Openbox edition, this means they should add:
```
userShell:
```
To users.conf, while others will see the return of the previous
behavior of passing -s /bin/bash.
FIXES#964
- Add a *userShell* key, which can be left out (default, backwards-
compatible) to retain the old /bin/bash behavior, or explicitly
set to empty to defer to useradd-configuration, or explicitly
set to something non-empty to use that shell.
- This is prep-work for #964, which was caused by #955
- Original assumption was that distro's would have a working
useradd configuration; @abucodonosor already pointed out that
this was probably not the case, but I ignored that.
- more flexible way to keep (all kinds of) files from the host
system, into the target system.
- WIP: substitutions like in shellprocess (@@ROOT@@, @@HOME@@ probably)
- WIP: creating a JSON file from global settings