{
  lib,
  config,
  namespace,
  ...
}:
let
  inherit (lib) mkIf;
  inherit (lib.${namespace}) mkEnableModule;

  cfg = config.${namespace}.programs.gh;
in
{
  options = mkEnableModule "programs.gh";

  config = mkIf cfg.enable {
    programs.gh = {
      enable = true;
      gitCredentialHelper.enable = true;
    };

    programs.gh-dash = {
      enable = true;
    };
  };
}