2026-02-02 22:07:05 +02:00
|
|
|
{ pkgs, ... }:
|
|
|
|
|
|
|
|
|
|
let
|
|
|
|
|
shellInitScript =
|
|
|
|
|
builtins.replaceStrings
|
|
|
|
|
[ "@ATUIN@" "@STARSHIP@" "@BASHPREEXEC@" ]
|
|
|
|
|
[
|
|
|
|
|
"${pkgs.atuin}/bin/atuin"
|
|
|
|
|
"${pkgs.starship}/bin/starship"
|
|
|
|
|
"${pkgs.bash-preexec}/share/bash/bash-preexec.sh"
|
|
|
|
|
]
|
|
|
|
|
(builtins.readFile ../../scripts/shell-init.sh);
|
|
|
|
|
in
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
environment.systemPackages = [
|
|
|
|
|
pkgs.atuin
|
|
|
|
|
pkgs.bat
|
|
|
|
|
pkgs.eza
|
|
|
|
|
pkgs.fzf
|
|
|
|
|
pkgs.starship
|
|
|
|
|
pkgs.ugrep
|
|
|
|
|
pkgs.zoxide
|
|
|
|
|
];
|
|
|
|
|
|
2026-02-04 22:12:07 +02:00
|
|
|
# Use Ptyxis as the default terminal emulator.
|
2026-02-02 22:07:05 +02:00
|
|
|
environment.sessionVariables = {
|
2026-02-04 22:12:07 +02:00
|
|
|
TERMINAL = "${pkgs.ptyxis}/bin/ptyxis";
|
|
|
|
|
DEFAULT_TERMINAL = "${pkgs.ptyxis}/bin/ptyxis";
|
2026-02-02 22:07:05 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
programs.bash = {
|
|
|
|
|
enable = true;
|
|
|
|
|
interactiveShellInit = shellInitScript;
|
|
|
|
|
loginShellInit = shellInitScript;
|
|
|
|
|
promptInit = ""; # avoid overriding Starship prompt
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
}
|