{
  pkgs,
  config,
  lib,
  ...
}:
let
  ezaOptions = "--colour=always --icons=never --group-directories-first --octal-permissions";
  cfg = config.alqueva.shells.aliases;
in
{
  options.alqueva.shells.aliases = {
    enable = (lib.mkEnableOption "default aliases") // {
      default = true;
    };
  };
  config = lib.mkIf cfg.enable {
    environment = {
      shellAliases = builtins.mapAttrs (_: v: "${v} ${ezaOptions}") {
        l = "eza -alh";
        la = "eza -ah";
        ls = "eza";
        ll = "eza -l";
      };
      systemPackages = [
        pkgs.eza
      ];
    };
  };
}
