feat: add ansible to base cli-tools

Adds ansible + ansible-lint as an always-on base module so it is
available in both identities (private/work) and all contexts.
Disable per host via base.cliTools.ansible.enable = false.
This commit is contained in:
2026-08-21 09:06:49 +02:00
parent 6a311045a4
commit 31d47b00e5
3 changed files with 23 additions and 0 deletions
+1
View File
@@ -161,6 +161,7 @@ Every module in m3ta-home has an `enable` option. Base modules default to `true`
### Available Flags ### Available Flags
``` ```
base.cliTools.ansible.enable # Ansible (config rollout to servers)
base.shell.fish.enable # Fish shell base.shell.fish.enable # Fish shell
base.shell.nushell.enable # Nushell base.shell.nushell.enable # Nushell
base.shell.starship.enable # Starship prompt base.shell.starship.enable # Starship prompt
+21
View File
@@ -0,0 +1,21 @@
# Ansible — configuration management for rolling out configurations to servers.
# Lives in base so it is available in every identity (private/work) and context.
{
config,
lib,
pkgs,
...
}:
with lib; let
cfg = config.base.cliTools.ansible;
in {
# Enabled by default — base modules are always-on.
options.base.cliTools.ansible.enable = (mkEnableOption "enable Ansible configuration management") // {default = true;};
config = mkIf cfg.enable {
home.packages = with pkgs; [
ansible
ansible-lint
];
};
}
+1
View File
@@ -1,6 +1,7 @@
# CLI tools aggregator — imports all base command-line utilities. # CLI tools aggregator — imports all base command-line utilities.
{...}: { {...}: {
imports = [ imports = [
./ansible.nix
./bat.nix ./bat.nix
./carapace.nix ./carapace.nix
./direnv.nix ./direnv.nix