con un clic
enable-module
// Use this skill when the user wants to enable an existing NixOS module on one or more hosts in this config repository.
// Use this skill when the user wants to enable an existing NixOS module on one or more hosts in this config repository.
| name | enable-module |
| description | Use this skill when the user wants to enable an existing NixOS module on one or more hosts in this config repository. |
| argument-hint | <module.option> [host1] [host2] ... |
| allowed-tools | ["Read","Write","Edit","Glob","Grep","Bash"] |
The user wants to enable an existing module option on one or more hosts. Arguments: $ARGUMENTS
Parse the arguments:
graphical.audacity, development.flipper-zero, games.steam)desktop-elis, laptop-private-elis)
desktop-elis and laptop-private-elisEach host config lives at hosts/<hostname>/configuration.nix. The etu = { ... } block is where all module enables are set.
Available hosts: desktop-elis, laptop-private-elis, laptop-work-elis, desktop-caroline, laptop-private-caroline, server-main-elis, server-sparv, vps06, live-iso
Grep for the option in the module files to confirm it exists and get the exact option path:
Grep for: options.etu.<category>.<module>.enable
Path: modules/nixos/
If the module doesn't exist, stop and tell the user to use /new-module instead.
Read hosts/<hostname>/configuration.nix for each target host.
If the option is already present in the host's etu = { } block (even if set to false), inform the user and skip that host.
Find the right location within the etu = { ... } block. Module options are grouped by category prefix. Insert the new line:
graphical.* lines if adding graphical.foo)graphical.enable = true;)theme, user linesThe line to insert is:
<module.option>.enable = true;
Use the Edit tool to make the insertion. Be precise — match enough surrounding context to place it correctly.
Re-read each modified file to confirm the line was inserted correctly and the etu = { } block still looks well-formed.
Enabling graphical.audacity on desktop-elis:
Before (relevant excerpt):
graphical.enable = true;
graphical.sway.enable = true;
graphical.fdm-printing.enable = true;
After:
graphical.enable = true;
graphical.sway.enable = true;
graphical.audacity.enable = true;
graphical.fdm-printing.enable = true;
(Insert alphabetically among the graphical.* lines.)
= false; lines — only add when enabling.etu = { }, 4-space for the options themselves).true (e.g., a string or list), use that value instead.Use this skill when the user wants to add a new agenix secret to this NixOS config repository.
Use this skill when the user wants to add a new host (workstation, laptop, server, or VPS) to this NixOS config repository.
Use this skill when the user asks to add a new NixOS module, create a module for an application, or install a new package with persistent state in this nixos config repository.