54 lines
1.2 KiB
Nix
54 lines
1.2 KiB
Nix
{pkgs, ...}: {
|
|
programs = {
|
|
bash = {
|
|
enable = true;
|
|
shellAliases = {
|
|
rebuild = "sudo nixos-rebuild switch --flake";
|
|
gs = "git status";
|
|
ai = "aichat -r %shell% -e";
|
|
};
|
|
};
|
|
|
|
# direnv lets us declare a .envrc in each project directory
|
|
# and updates the shell with the packages specified.
|
|
direnv = {
|
|
enable = true;
|
|
enableBashIntegration = true;
|
|
nix-direnv.enable = true;
|
|
};
|
|
|
|
# starship is a customisable prompt for any shell
|
|
starship = {
|
|
enable = true;
|
|
enableBashIntegration = true;
|
|
settings = {
|
|
};
|
|
};
|
|
|
|
# Terminal Multiplexing
|
|
tmux = {
|
|
enable = true;
|
|
plugins = with pkgs.tmuxPlugins; [
|
|
catppuccin
|
|
|
|
# Session Management between Reboots
|
|
{
|
|
plugin = resurrect;
|
|
extraConfig = ''
|
|
set -g @resurrect-strategy-nvim 'session'
|
|
'';
|
|
}
|
|
{
|
|
plugin = continuum;
|
|
extraConfig = ''
|
|
set -g @continuum-restore 'on'
|
|
'';
|
|
}
|
|
];
|
|
extraConfig = ''
|
|
set -g default-terminal "tmux-256color"
|
|
set -ag terminal-overrides ",xterm-256color:RGB"
|
|
'';
|
|
};
|
|
};
|
|
}
|