This is simply to avoid issues when the setup command might be run over an existing setup.
It will check each setup subcommand and verify it has not already been configured before attempting to run the setup for the relevant setup step.
This is only temporary, as we would like to get a much more advanced setup command integrated in this or below.
#940
This PR will allow bastille to be configured based on the user you run as.
To load the config for a specifig user, you must be logged in as the specified user, and there must be a file called "bastille_user.conf" inside /usr/local/etc/bastille or else bastille will just load the default config file.
Add '-e|--ethernet' option to configure `bastille_network_shared` physical interface, also add config backups to select partial variable resets as well.
This PR will add the Initial 'bastille setup' command rewrite and enhancements, includes the ZFS activation helper, also further enhancements will be added accordingly.
Further testing/bug reporting welcome.
Added SPDX-License-Identifier to all scripts for better license clarity and compliance. Updated the copyright years from 2024 to 2025 in various files to reflect the current maintenance period.
Replaced ineffective default configuration generation logic with a user-interactive prompt. Users can now choose to create the configuration file with default values if it is missing, ensuring better control and clarity. Removed redundant code from the setup script to streamline execution.
- check that bastille.conf exists or create a copy from .sample,
- changed "bastille0" loopback creation to read config value $bastille_network_loopback instead,
- changed setup.sh argument "bastille0" for loopback interface creation to a more generic "network",
- "bastille0" as a setup.sh argument is left for backwards compatibility