Hi,

Attached is a patch to package bash-preexec. It provides hooks that other programs can use to to register commands to run when one runs a command on the shell w/o clobbering each other. For example it allows me to use both direnv and atuin. ej.

(home-environment
 (services
  (list (service home-bash-service-type
                 (home-bash-configuration
                  (bashrc (list (mixed-text-file "source-bash-preexec"
                                                 "source " bash-preexec "/bin/bash-preexec.sh")
                                (mixed-text-file "eval-direnv"
                                                 "eval \"$(" direnv "/bin/direnv hook bash)\"")
                                (mixed-text-file
                                 "eval-atuin"
                                 "eval \"$(" atuin-bin "/bin/atuin init bash --disable-up-arrow)\""))))))))


Cheers





--
"I object to doing things that computers can do." — Olin Shivers