{pkgs, ...}: {
  programs.murex = {
    enable = true;
    direnv = true;
    managePlugins = true;
    profile = ''
      config: set shell auto-cd true
      config: set proc force-tty true

      function fresh {
        clear
        echo
        ~/.nix/header.sh
      }

      function mnt {
        mount -> column -t -> culr -t 80 -o roygbiv-split
      }

      function la_culr (!path: str) {
        if { is-null $path } {
           eza -lha --group-directories-first --icons --color=always -> culr -t 80 -o roygbiv-split
        } else {
           eza -lha --group-directories-first --icons --color=always $path -> culr -t 80 -o roygbiv-split
        }
      }

      function ls_culr (!path: str) {
        if { is-null $path } {
           eza -lh --group-directories-first --icons --color=always -> culr -t 80 -o roygbiv-split
        } else {
           eza -lh --group-directories-first --icons --color=always $path -> culr -t 80 -o roygbiv-split
        }
      }

      function ps_culr (!cmd: str) {
          if { is-null $cmd } {
            ps ww | culr -t 80 -o roygbiv-split
          } else {
            ps ww$cmd | culr -t 80 -o roygbiv-split
          }
      }

      alias gs=git status
      alias gcl=git clone
      alias ga=git add
      alias gcb=git checkout -b
      alias gco=git checkout
      alias gl=git pull
      alias gp=git push
      alias gd=git diff
      alias gcam=git commit -am
      alias gcm=git commit -m
      alias gr=git restore
      alias gm=git merge
      alias l=ls_culr
      alias la=la_culr
      alias p=ps_culr
      alias z=j

      fresh
    '';
    plugins = let
      inherit
        (pkgs)
        murex-jump
        murex-starship
        ;
    in [
      murex-jump
      murex-starship
    ];
  };

  programs.starship = {
    enable = true;
  };

  home.packages = let
    inherit (pkgs) jump;
  in [
    jump
  ];
}
