{ lib, pkgs, ... }: let programName = "fonts"; enableProgram = true; # default ON, can be toggled per module in { # Top-level toggle options.enable${lib.str.capitalize programName} = lib.mkEnableOption "Enable system fonts"; # Wrap everything in config if enabled config = lib.mkIf enableProgram { myApps = { ${programName} = { enable = true; # Fonts packages (do not reference pkgs directly if you want symbolic pathing) packages = [ "nerd-fonts.iosevka" "nerd-fonts.fira-code" ]; # Optional: user user = config.defaultUser or "henrov"; }; }; }; }