Hi there,
since the configuration topic is quite a big one I'll try to put together the pieces of knowledge floating around:

REQUIREMENTS:
- config data shall be maintained the same way on each device
- config data shall survive updates (e.g. reflashing the device)
- config data shall be easy to maintain and well structured
- easy reset to safe default config settings

FACTS (as far as I know):
- nvram concept is not available on all devices
- nvram is key=value based
- nvram cannot just be deleted (bootloaders accesses parameter e.g. boot_wait)
- nvram tool is used in the bootup scripts, no abstraction yet
- nvram is quite efficient (at least on my WRT it seems to be one 32KiB block)
- nvram values and changes are kept in memory until commit.
- configuration is spread at the moment between nvram and /etc

A basic approach could be to identifiy all pieces of common configuration, whereby some are quite
obvious (e.g. network) but to get a realistic picture more input is needed.

The there are thoughts needed about the abstraction.
From my point of view there a two directions

- seperate the configuration completely into an own concept, where needed synchronize nvram against this configuration - make a abstract configuration that is transformed into a device dependent configuration

if I missed anything feel free to complete this and discuss

kind regards
joerg


_______________________________________________
freewrt-developers mailing list
[email protected]
https://www.freewrt.org/lists/listinfo/freewrt-developers

Reply via email to