system_setup: several fixes that should be merge before DEENG-82

1. fix a wrong type information
2. fix some configuration error when updating information
This commit is contained in:
Patrick Wu 2021-10-08 16:41:28 +08:00
parent 58a78c0506
commit 5879b41e48
No known key found for this signature in database
GPG Key ID: 9DD33DF28FC324F1
2 changed files with 10 additions and 8 deletions

View File

@ -388,7 +388,7 @@ class WSLConfigurationBase:
@attr.s(auto_attribs=True) @attr.s(auto_attribs=True)
class WSLConfigurationAdvanced: class WSLConfigurationAdvanced:
gui_theme: str = attr.ib(default='default') gui_theme: str = attr.ib(default='default')
gui_followwintheme: bool = attr.ib(default=True) gui_followwintheme: bool = attr.ib(default=False)
interop_guiintegration: bool = attr.ib(default=False) interop_guiintegration: bool = attr.ib(default=False)
interop_audiointegration: bool = attr.ib(default=False) interop_audiointegration: bool = attr.ib(default=False)
interop_advancedipdetection: bool = attr.ib(default=False) interop_advancedipdetection: bool = attr.ib(default=False)

View File

@ -145,18 +145,20 @@ def wsl_config_update(config_class, root_dir):
config_api_name = \ config_api_name = \
config_section.lower() + "_" + config_setting.lower() config_section.lower() + "_" + config_setting.lower()
config_value = config_class.__dict__[config_api_name] config_value = config_class.__dict__[config_api_name]
if isinstance(config_value, bool):
config_value = str(config_value).lower()
# if the value for the setting is default value, drop it # if the value for the setting is default value, drop it
if config_default_value == config_value: if config_default_value == config_value:
if config_setting in config[config_section]: if config_section in config:
config.remove_option(config_section, config_setting) if config_setting in config[config_section]:
# drop the section if it become empty config.remove_option(config_section,
if config[config_section] == {}: config_setting)
config.remove_section(config_section) # drop the section if it become empty
if config[config_section] == {}:
config.remove_section(config_section)
else: else:
if config_section not in config: if config_section not in config:
config.add_section(config_section) config.add_section(config_section)
if isinstance(config_value, bool):
config_value = str(config_value).lower()
config[config_section][config_setting] = config_value config[config_section][config_setting] = config_value
with open(conf_file + ".new", 'w+') as configfile: with open(conf_file + ".new", 'w+') as configfile: