nix/modules/home/nushell/default.nix

61 lines
1.2 KiB
Nix

{
config,
lib,
pkgs,
inputs,
...
}:
let
cfg = config.nushell;
inherit (lib) mkEnableOption mkIf mkOption;
in
{
options.nushell = {
enable = mkEnableOption "nushell";
};
config = mkIf cfg.enable {
programs = {
nushell = {
enable = true;
configFile.text = ''
$env.config.edit_mode = "vi"
$env.config.buffer_editor = "nvim"
$env.config.show_banner = false
'';
};
nix-your-shell = {
enable = true;
enableNushellIntegration = true;
};
direnv = {
enable = true;
enableNushellIntegration = true;
nix-direnv.enable = true;
config = {
hide_env_diff = true;
};
};
eza = {
enable = true;
enableNushellIntegration = false;
extraOptions = [ "--group-directories-first" ];
};
starship = {
enable = true;
enableNushellIntegration = true;
settings = {
nodejs.disabled = true;
package.disabled = true;
aws.disabled = true;
python.disabled = true;
};
};
zoxide = {
enableNushellIntegration = true;
};
};
};
}