{ config, lib, pkgs, ... }: let cfg = config.my.home.comma; in { options.my.home.comma = with lib; { enable = my.mkDisableOption "comma configuration"; pkgsFlake = mkOption { type = types.str; default = "pkgs"; example = "nixpkgs"; description = '' Which flake from the registry should be used with nix shell. ''; }; }; config = lib.mkIf cfg.enable { home.packages = with pkgs; [ ambroisie.comma ]; home.sessionVariables = { COMMA_PKGS_FLAKE = cfg.pkgsFlake; }; }; }