nixos-framework-laptop-config/home/terminal.nix

99 lines
1.9 KiB
Nix
Raw Permalink Normal View History

2024-12-28 19:33:49 -05:00
{
config,
pkgs,
inputs,
...
}: {
imports = [
inputs.nix-index-database.hmModules.nix-index
];
programs.fish = {
enable = true;
functions = {
#__fish_command_not_found_handler = {
# body = "__fish_default_command_not_found_handler $argv[1]";
# onEvent = "fish_command_not_found";
#};
};
shellInit = "set fish_greeting";
};
programs.starship = {
enable = true;
enableTransience = true;
settings.nix_shell.format = "";
};
2024-12-28 19:33:49 -05:00
home.packages = [
2025-02-20 16:09:02 -05:00
pkgs.neovim
2024-12-28 19:33:49 -05:00
pkgs.file
pkgs.pciutils # lspci
pkgs.usbutils # lsusb
pkgs.btop
2024-12-28 19:33:49 -05:00
pkgs.bottom
pkgs.htop
pkgs.lsof
pkgs.lm_sensors
pkgs.powertop
pkgs.procs
pkgs.libqalculate
pkgs.unzip
pkgs.unrar-wrapper
pkgs.p7zip
pkgs.atool
pkgs.fastfetch
pkgs.hyfetch
];
# command history
2024-12-28 19:33:49 -05:00
programs.atuin = {
enable = true;
settings.update_check = false;
settings.enter_accept = true;
};
# terminal based file browser
# seems nice, but it's commented since I won't remember to use it
# programs.broot.enable = true;
2024-12-28 19:33:49 -05:00
programs.direnv = {
enable = true;
nix-direnv.enable = true;
# Externally located cache
stdlib = ''
declare -A direnv_layout_dirs
direnv_layout_dir() {
local hash path
echo "''${direnv_layout_dirs[$PWD]:=$(
hash="$(sha1sum - <<< "$PWD" | head -c40)"
path="''${PWD//[^a-zA-Z0-9]/-}"
echo "${config.xdg.cacheHome}/direnv/layouts/''${hash}''${path}"
)}"
}
'';
};
# replaces ls
2024-12-28 19:33:49 -05:00
programs.eza = {
enable = true;
git = true;
icons = "auto";
};
# maybe move git here?
programs.jq.enable = true;
programs.ripgrep.enable = true;
2024-12-28 19:33:49 -05:00
# makes it so that you can run a program without
# installing it by typing , <program>
2024-12-28 19:33:49 -05:00
programs.nix-index.enable = true;
programs.nix-index-database.comma.enable = true;
}