- Capture all Python warnings so that they can shown as part of logging system
on console and in log file.
- Also capture deprecation warnings into logging system if debug mode is
enabled. Current versions of Python disable deprecation warnings by default.
Django 1.11 also follows this approach now.
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Johannes Keyser <johanneskeyser@posteo.de>
If pubtkt module is not enabled (rare) and if repro is enabled, Apache fails to
start. Make sure this effects only repro module. The single-sign-on
configuration already ensures that access is denied if pubtkt module is not
enabled, preventing unauthorized access.
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
Instead run all of the setup process during the first boot. This enables us to
someday remove the reboot step entirely.
Tests: After building a new image with the changes, call the modules have shown
to be properly setup. Running the setup wizard, creating admin user and logging
works as expected.
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
- Enable cached results when checking if the user is an admin. Cached results
are only invalid when a user newly get admin permission or when an existing
user loose admin permission. Here the consequence of showing wrong results is
minor.
- Use all small case for variable names.
- When we use a utility method from Plinth, we can trust it to give expected
values. Otherwise, we should fix the method to be more robust.
- Don't recommend the user to go to disks configuration page as there is not
much there to do to free up space. The action might be removing apps, deleting
downloaded content (downloaded via torrents) etc.
- df is unlikely to return '-1' for size of disk.
- Avoid using -1 as error value.
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
- using latest version of lib-apache2-mod-authpubtkt
- upgraded keys to 4096-bit RSA
- upgraded hashing algorithm to sha512
Plinth needs dependency on libapache2-mod-auth-pubtkt >= 0.11
Signed-off-by: Joseph Nuthalpati <njoseph@thoughtworks.com>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
- This avoids an issue where it would try to enable the apache conf
possibly before it is generated.
- Added an explicit enable statement since it was missing.
Reviewed-by: Joseph Nuthalpati <njoseph@thoughtworks.com>
- Hide the listing of apps and configuration options on small screens,
so that the user doesn't have to navigate to the bottom of the page.
- Closes#921
Reviewed-by: Johannes Keyser <johanneskeyser@posteo.de>
- Solves bug #890
- Since Apache might be started before Plinth setup is ever run, we
have to handle the case where the auth_pubtkt module may not be available.
When virtualenv creates a environment with --python=python3, it was earlier
picking Python 3 from system at /usr/bin/python3. Due to recent changes in
Travis, now it picks up from Python 3.6.1 from /opt. This new Python does not
take into account system packages which are being installed via apt.
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Joseph Nuthalapati <njoseph@riseup.net>
Run sudo-required action via actions.superuser_run
Actions related to services those require `sudo` permissions need to
be executed via actions.superuser_run.
NOTE:
If plinth service is started via `sudo ./run --debug` (in dev mode)
all actions will be executed silently. But plinth in user machines
won't be executed with sudo permissions.