Armbian ConfigNG Development Proposal
This proposal outlines a plan to enhance the Armbian configuration tool, armbian-config
, by dividing it into two distinct parts: a front end focused on user interface and a back end dedicated to system configuration logic.
1. Split Development
The first step is to divide armbian-config
into two distinct parts:
- Front End: This part will focus on the user interface and experience, with the goal of making
armbian-config
more intuitive and user-friendly.
- Back End: This part will focus on system configuration logic, with the aim of maximizing the potential of bash for system configuration and tackling complex tasks and configurations.
2. Bash Compliance
Both parts should adhere to bash scripting limitations and best practices:
- Front End (
armbian-config
): The front end should utilize common bash utilities for simplicity and maintainability.
- Back End (
configng
): The back end should explore advanced bash usage, leveraging the principles of functional programming and the bash-utility library for complex tasks and configurations.
3. Restructuring
Based on the exploration of practical examples and the results obtained over the past 6 months, this proposal suggests a restructuring of the development process:
- Rename the current
config
to configlg
(indicating its legacy status).
- Move the user experience (UX) part of
configng
(the next-gen configurator) to config
.
- Retain the back end parts in
configng
.
This separation would allow each component to be developed and refined independently, potentially increasing the likelihood of success.
The objective of this proposal is to develop a robust, user-friendly tool that fully utilizes the power of bash for system configuration.