dotnix/apps/nushell.nix

37 lines
1.3 KiB
Nix

{
pkgs,
config,
...
}: {
programs.nushell = {
enable = true;
configFile.source = ./nushell/config.nu;
envFile.source = ./nushell/env.nu;
shellAliases = {
cat = "bat";
find = "fd";
df = "duf";
du = "dust -b -d 1";
ll = "ls -al";
nix-shell = "nix-shell --run nu";
};
extraConfig = ''
use ${pkgs.nu_scripts}/share/nu_scripts/custom-completions/bitwarden-cli/bitwarden-cli-completions.nu *
use ${pkgs.nu_scripts}/share/nu_scripts/custom-completions/btm/btm-completions.nu *
use ${pkgs.nu_scripts}/share/nu_scripts/custom-completions/git/git-completions.nu *
use ${pkgs.nu_scripts}/share/nu_scripts/custom-completions/glow/glow-completions.nu *
use ${pkgs.nu_scripts}/share/nu_scripts/custom-completions/just/just.nu *
use ${pkgs.nu_scripts}/share/nu_scripts/custom-completions/nix/nix-completions.nu *
'';
extraEnv = ''
let-env GOPATH = "${config.xdg.dataHome}/go"
let-env PATH = ($env.PATH | split row (char esep) | prepend '${config.xdg.dataHome}/go/bin')
'';
};
xdg.configFile = {
"nushell/jolheiser.nu".source = ./nushell/jolheiser.nu;
"nushell/zoxide.nu".source = ./nushell/zoxide.nu;
"nushell/ohmyposh.nu".source = ./nushell/ohmyposh.nu;
};
}