config: add preprocessing step

This commit is contained in:
Peter Eisenmann
2024-03-11 10:46:00 +01:00
parent eeef3e6c83
commit 18a6deac77
2 changed files with 7 additions and 3 deletions

View File

@@ -3,6 +3,7 @@
import yaml
DEFAULT_CONFIG_PATH = '/etc/os-installer/config.yaml'
GIGABYTE_FACTOR = 1000 * 1000 * 1000
def _bool_to_int(b: bool):
@@ -86,6 +87,10 @@ def _load_optional_defaults(config):
config['chosen_features'] = []
def _preprocess_values(config):
config['minimum_disk_size'] *= GIGABYTE_FACTOR
def _set_testing_defaults(config):
'''Default values used when skipping pages during testing.'''
config['language'] = 'English for Dummies'
@@ -138,6 +143,7 @@ def init_config():
config = _load_default_config()
_load_optional_defaults(config)
_set_testing_defaults(config)
_preprocess_values(config)
return config

View File

@@ -11,8 +11,6 @@ from .page import Page
from .system_calls import is_booted_with_uefi, open_disks
from .widgets import reset_model, DeviceRow
GIGABYTE_FACTOR = 1000 * 1000 * 1000
@Gtk.Template(resource_path='/com/github/p3732/os-installer/ui/pages/disk.ui')
class DiskPage(Gtk.Stack, Page):
@@ -39,7 +37,7 @@ class DiskPage(Gtk.Stack, Page):
def __init__(self, **kwargs):
Gtk.Stack.__init__(self, **kwargs)
self.minimum_disk_size = global_state.get_config('minimum_disk_size') * GIGABYTE_FACTOR
self.minimum_disk_size = global_state.get_config('minimum_disk_size')
# models
self.disk_list.bind_model(self.disk_list_model, self._create_device_row)