And re-activate cfg.get_config_paths() for easier testing
Signed-off-by: Michael Pimmer <info@fonfon.at>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
- Move all utilities to a separate clients.py module. Tests too.
- Use fewer custom template tags. Actually only one tag is really required.
Keeping custom tags minimal is a goal.
- Merge the methods to generate app store URLs.
- Implement a validator for validating client information and use that instead
of enums.
- Internationalize the text on template page.
- Add missing RPM package case.
- Cleanup CSS. Remove unused styles, minimize the styles set.
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
- Add yapf style file for consistency of formatting
- Some minor changes and renaming
- Add template tag filters for checking conditions
- Move icons from img directory to icons directory
Currently the client listing is in both the SetupView and ServceView for ease of
development. Have to remove from ServiceView.
Signed-off-by: Joseph Nuthalapati <njoseph@thoughtworks.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
This eliminates the case where the test module was getting installed in a
different location compared to other modules. Also eliminates the need to run
this test as root.
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
Fixed a test that failed because of fixing a django deprecation warning.
request.user.is_authenticated() method is replaced by the property
`is_authenticated`
Signed-off-by: Joseph Nuthalpati <njoseph@thoughtworks.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
- Created basic plinth app which starts an introducer and a storage
node on the FreedomBox.
- Prompt user to set a domain name before creating Tahoe-LAFS nodes.
- Support adding and removing of introducers to the storage node.
- Serve Tahoe-LAFS from a different port.
- Start all nodes and introducers at system startup.
- Add utility class YAMLFile with test cases.
- Install mod_auth_pubtkt and generate public/private key-pair.
- Redirect user to login page if no cookie is presented.
- Add check for authenticated user for login page.
- Temporarily switched to DSA because of a bug in mod_auth_pubtkt
which causes it to accept only DSA and not RSA. Also had to use SHA1
instead of SHA256.
- Enabled SSO for Syncthing, Repro and TT-RSS.
- Using tokens to authorize by user groups.
- Generate keys during first boot.
- Remove apps and system modules and merge their views into main views.
- Move main_menu from cfg into menu.py.
- Remove dependencies of other modules on apps and system modules.
- Update tests.
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
- Rename AdminMiddleware to AdminRequiredMiddleware to be consistent
with stronghold/Django terminology
- Simplify .gitignore pattern
- Format single line docstrings as per PEP8.
- Add missing docstrings.
- Restrict lines to 79 characters.
Don't try to show setup view for login page. This happens under a rare
circumstance that user does not usually face. If 'users' module has not
been setup but we try to run first boot and last part of the firstboot
process is not yet completed and when user is not already logged in, an
infinite redirect happens.
Simply don't try to show setup view for login URL under any
circumstance. This is similar to how firstboot middleware itself does
not meddle with login URL.
- Very similar to configuration of IPv4 networks.
- Supports 'auto', 'dhcp', 'manual' and 'ignored' modes as supported by
network manager. 'shared' mode is not yet implemented by network
manager.
Currently menu items are shown in alphabetical order in applications and
no clear order in system configuration. This is done using static
weights for menu items based on English names that does not work for
other locales.
Sorting can't be done at the time of adding menu items as users of
multiple locales may use the interface at the same time.
Implement a sorting mechanism based on existing order as well as labels
of menu item. This allows the flexiblity of grouping menu items in
future as it may be need for system configuration. In case of help menu
Remove sort order for all modules except for help menu as here we want
that specific order.
- Take the value from the configuration and run it throught the Django
translate method and make it available in Context.
- Use a no-op translate method to translate the text 'FreedomBox'.
- Using the new configuration module changes meant for easy tests,
simplify all test cases.
- Reading file is tested separately from find the configuration file.
Add danube_edition option to the Misc section of the configuration file.
Without this option, this 'missing section' test case will fail with
'missing option' instead of 'missing section'. Coupled with the
unpredictable order of reading options, this only happens sometimes.