When changing the addressing method from manual to automatic, the IP
addresses where removed from connection object without removing the
Gateway property. This causes a networkmanager error.
Create new SettingIP4Config object to avoid the need to reset all
propertys when changing methods
- 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.
- Split the read method into two separate methods for getting the config
file and for reading config file.
- Use logging module for printing error.
- Fix global variable naming.
- Get/set/show the realpath of the config file.
- Convert config items into a list so that the order is more
predictable. This is the reason for unpredictable failures in test
cases.
- syncdb has been deprecated in Django 1.7 in favor of migrate command.
- In Django 1.9 it has been removed. Django 1.9 has already hit Debian
unstable.
- To automatically create a schema using syncdb is now deprecated and
considered legacy.
- Having migrations will help us do schema upgrades in future smoothly.
- Run tests on Django 1.7, 1.8 and 1.9.
- Import of a test case fails on 3.3 and this version of Python is not
available on Debian anymore, not even Jessie.
Some web translation tools work better when a POT file is available.
Commit the initial version of the POT file. We need to make a practise
of updating the POT file whenever someone makes changes to translatable
string in the code.
Set the default firewall zone. When network connections are configured
outside of FreedomBox/Plinth, they will not be able to serve the Plinth
web interface. This is because all such interfaces will fall in the
default firewall zone and that is, by default, 'public'. On 'public'
zone we don't allow Plinth web interface as this zone is not managed.
Configuration of network connections happen outside for
FreedomBox/Plinth for various reasons:
- Existing network connections before installation of freedombox-setup
- Connections configured in /etc/network/interfaces
- Connections manually configured using nmtui
- Connections created using GUI environments such as GNOME
Rather then clearing out /etc/network/interfaces during setup and
expecting the connections not to be created outside of Plinth, setting
the default firewall zone is a better approach. This default zone
selection fits with the main purpose of FreedomBox to be a router which
is also reflected by the fact that only 'external'
Some of the important modules such as php5, cgi and authnz_ldap are
enabled by default in freedombox-setup. However, when installing
ikiwiki we still restart the apache2 web server. This patch fixes that
by restart or reloading only when the corresponding module/config/site
is not already in the state required.
I got an error when one of the sources in my sources.list is untrusted.
The error code was available as 'gpg-error' and more description was
available. Our untested code to handle that threw an exception in that
case. This patch fixes it. I have tested with the error I got as the
error was easily reproducible.
- Add gettext as build dependency
- Add setup.py commands for compiling and updating .po files.
- Clean compiled .mo files on ./setup.py clean
- Install .po and .mo files to destination on ./setup.py install
- Compile .po files when running ./setup.py build
There doesn't seem to be a simple way to integrate Django .po file
dealing with ./setup.py mechanism.
The concern that people are unable to find a way to get back to
applications is a correct one. The recent changes does fix the problem.
However, it takes a step back in the design. The 'Applications' text is
too prominent. I propose that we replace it with the commonly used
icon. Featured in mobile interfaces and on Google home page, users
should have no difficulty identifing it as applications icon.
After experimenting with the placement of the icon, it seems more
asthetically pleasing to have it at the place of 'Applications' text and
not at the center etc.