nixos-config/modules/home/shell-conf.nix

180 lines
3.2 KiB
Nix

{ nix-config, lib, inputs, pkgs, ... }:
{
home.packages = with pkgs; [
inputs.isd.packages.x86_64-linux.default
cmake
cmake-format
just
readline
rlwrap
yt-dlp
age
figlet
ffmpeg-full
ouch
pinentry
gcr
gnutar
libnotify
unzip
zip
tldr
rich-cli
gnupg
imagemagick
nix-du
nix-melt
usbutils
pciutils
util-linux
coreutils
binutils
editorconfig-core-c
exiftool
libsecret
shellcheck
icloudpd
pkg-config
numbat
nurl
fastfetch
nvd
ripgrep-all
silver-searcher
age
manix
caligula
dua
tree
emoji-picker
sox
imgcat
ghostscript
playerctl
tesseract
dockfmt
trash-cli
poppler_utils
fishPlugins.foreign-env
fishPlugins.fzf-fish
fishPlugins.bass
fishPlugins.autopair
fishPlugins.forgit
fishPlugins.colored-man-pages
television
];
programs = {
nix-index = {
enable = true;
enableFishIntegration = true;
};
direnv = {
enable = true;
nix-direnv.enable = true;
};
fish = {
enable = true;
shellAliases = {
"em" = "emacsclient -n -r";
"mkdir" = "mkdir -pv";
};
interactiveShellInit = ''
bind --erase \ct
fzf_configure_bindings --variables=\e\cv
'';
plugins = [
{
name = "upto";
src = pkgs.fetchFromGitHub {
owner = "Markcial";
repo = "upto";
rev = "2d1f35453fb55747d50da8c1cb1809840f99a646";
sha256 = "sha256-Lv2XtP2x9dkIkUUjMBWVpAs/l55Ztu7gIjKYH6ZzK4s=";
};
}
];
};
zoxide = {
enableFishIntegration = true;
enable = true;
};
starship = {
enableFishIntegration = true;
enable = true;
};
ripgrep = {
enable = true;
package = (pkgs.ripgrep.override {withPCRE2 = true;});
};
thefuck = {
enableFishIntegration = true;
enable = true;
};
wezterm = {
enable = true;
package = inputs.wezterm.packages.${pkgs.system}.default;
};
bat = {
enable = true;
};
eza = {
enable = true;
enableFishIntegration = true;
git = true;
icons = "auto";
colors = "auto";
};
fd = {
enable = true;
};
fzf = {
enable = true;
enableFishIntegration = false;
};
broot = {
enable = true;
};
lazygit.enable = true;
jq.enable = true;
rbw = {
enable = true;
package = nix-config.packages.x86_64-linux.rbw-latest;
};
};
xdg.configFile."starship.toml".source = ./shell-conf/starship/starship.toml;
xdg.configFile."wezterm" = {
recursive = true;
source = ./shell-conf/wezterm;
};
xdg.configFile."rbw".source = ./shell-conf/rbw;
xdg.configFile."isd_tui/config.yaml".source = ./shell-conf/isd_tui/config.yaml;
home.file.".config/fish/functions" = {
source = ./shell-conf/fish/functions;
recursive = true;
};
home.file.".config/fish/completions" = {
source = ./shell-conf/fish/completions;
recursive = true;
};
home.file.".local/share/flf".source = ./shell-conf/flf;
}