nixos-config/configs/home-manager/foo-dogsquared/modules/programs/shell.nix

54 lines
1.2 KiB
Nix
Raw Normal View History

# My user shell of choice because I'm not a hipster.
{ config, lib, pkgs, ... }:
let
userCfg = config.users.foo-dogsquared;
cfg = userCfg.programs.shell;
in
{
2023-12-15 05:27:12 +00:00
options.users.foo-dogsquared.programs.shell.enable =
lib.mkEnableOption "configuration of foo-dogsquared's shell of choice and its toolbelt";
config = lib.mkIf cfg.enable {
suites.dev.shell.enable = lib.mkDefault true;
programs.bash = {
enable = true;
historyControl = [ "erasedups" "ignoredups" "ignorespace" ];
historyIgnore = [
"cd"
"exit"
"lf"
"ls"
"nvim"
];
};
programs.nushell = {
enable = true;
plugins = with pkgs.nushellPlugins; [
dbus
query
skim
];
};
programs.atuin = {
enable = true;
settings = {
auto_sync = true;
sync_address = "http://atuin.plover.foodogsquared.one";
sync_frequency = "10m";
update_check = false;
workspaces = true;
};
};
# Set up with these variables.
systemd.user.sessionVariables.PAGER = "moar";
# Add it to the laundry list.
services.bleachbit.cleaners = [ "bash.history" ];
};
}