Welcome to CLCTool, a powerful and customizable Linux configuration tool designed for flexible system setup and deployment.
- Modular architecture for maximum scalability and customization.
- Dynamic loading of user-defined modules.
- User-defined functions (UDFs) for encapsulating complex logic.
- Conditional task execution and interactive prompts.
- Python 3.6 or higher
-
Clone the CLCTool repository:
git clone https://github.com/SpoinkOSDevs/CLCTool.git
-
Install requirements
sudo pip install -r ./requirements.txt --break-system-packages
-
Change into the CLCTool directory:
cd CLCTool
-
Run CLCTool with your desired configuration:
sudo python clctool.py -i path/to/module -p your_profile -v your_version
Replace
path/to/module
with the path to your module file,your_profile
with the chosen profile, andyour_version
with the desired version.
CLCTool provides a simple command-line interface for running your customized installation process. The tool supports various commands and options to tailor the deployment according to your needs.
sudo python clctool.py -i path/to/module -p your_profile -v your_version
-i
or--modules
: Specify the paths to the.spoink
file.-p
or--profile
: Specify the profile to use.-v
or--version
: Specify the version.-m
or--module-args
: Specify additional module-specific arguments as key-value pairs separated by commas
Modules are the building blocks of CLCTool. Each module is defined in a .spoink
file containing tasks, UDFs, and configurations.
UDFs allow encapsulating complex logic and reusing it across different parts of the installation process.
def custom_udf(parameters):
print(f"Running a custom UDF with parameters: {parameters}")
- GitHub Issues: CLCTool Issues
Link: Demo Module