void-mklive
void-mklive copied to clipboard
Add import & export functionality for settings
Hello all together, here are some more improvements. Don't know if they are wanted by any users but I've had wished they already existed for my purposes.
This request adds an import and export function for the settings, so a user has the ability to load an existing settings configuration for the installation which fits his needs. This is helpful if you have a configuration file, e.g. for VMs or your current environment and you want an easy option to set up your installation quickly without the needs of passing all the menu points.
With this in mind I've added a POSTINSTALL setting, which can be loaded to apply some configuration directly in the install process. This could be helpful if you want to have an easy option to configure your void installation that they fit your needs. Especially this gives the ability to add other pre-prepared installation scripts later, e.g. to install and configure window managers, desktop environments, only with some additional scripts.
I think this could improve the usability especially for new Linux users. Void is an awesome distribution and I like to see it on more desktops. :D
However, with the current implementation security might be an issue, because the naive implementation of the file storing with root privileges! Just want to know if such a functionality is maybe required by some users.
I like the idea, but have a concern around making sure people know they can skip this step.
I've flagged those functions "Optional" in the menu as suggested in another PullRequest.
If you run the installer the first menu entry is Import, but the first DEFITEM is still the Keymap. So if you wouldn't import settings (which is I guess the normal use case), you don't need to do anything. The installation process is straightforward as usual. But if you want to import settings the option is only one click away.
I've also improved the Import and Export menu and catch some exceptions that may occur. I've also replaced the cat command with an cp command to avoid overriding the existing configurations if the import fails.
Overall the usage should be far more intuitive than before. :)
Because of the "Optional" flag the menu grows in height but also in width. To ensure that the text is fully visible I've changed also the menu width from 70 to 80 which shouldn't be a problem because the installation menu uses the same sizes.