101 lines
2.3 KiB
Nix
101 lines
2.3 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
{
|
|
imports = [
|
|
./git.nix
|
|
./ssh.nix
|
|
./starship.nix
|
|
];
|
|
home.shellAliases = {
|
|
sync-all = "sync-emacs; sync-git; vdirsyncer sync; mbsync -a";
|
|
sync-and-shutdown = "sync-all && shutdown now";
|
|
protonup = "sudo wg-quick up protonvpn && sudo wg";
|
|
protondown = "sudo wg-quick down protonvpn";
|
|
};
|
|
programs = {
|
|
# Shells
|
|
bash.enable = true;
|
|
nushell.enable = true;
|
|
# CLI programs and utilities
|
|
btop.enable = true;
|
|
carapace.enable = true;
|
|
fd.enable = true;
|
|
jq.enable = true;
|
|
ripgrep.enable = true;
|
|
bat = {
|
|
enable = true;
|
|
config.style = "plain,numbers,changes";
|
|
};
|
|
cava = {
|
|
enable = true;
|
|
settings = {
|
|
color = with config.lib.stylix.colors.withHashtag; {
|
|
gradient = 1;
|
|
gradient_count = 6;
|
|
gradient_color_1 = "'${red}'";
|
|
gradient_color_2 = "'${yellow}'";
|
|
gradient_color_3 = "'${green}'";
|
|
gradient_color_4 = "'${cyan}'";
|
|
gradient_color_5 = "'${blue}'";
|
|
gradient_color_6 = "'${magenta}'";
|
|
};
|
|
};
|
|
};
|
|
direnv = {
|
|
enable = true;
|
|
nix-direnv.enable = true;
|
|
};
|
|
eza = {
|
|
enable = true;
|
|
git = true;
|
|
icons = "auto";
|
|
extraOptions = [
|
|
"--header"
|
|
"--time-style=iso"
|
|
];
|
|
};
|
|
fzf = {
|
|
enable = true;
|
|
defaultCommand = "${pkgs.fd}/bin/fd --type f";
|
|
changeDirWidgetCommand = "${pkgs.fd}/bin/fd --type d";
|
|
fileWidgetCommand = "${pkgs.fd}/bin/fd --type f";
|
|
colors = {
|
|
bg = lib.mkForce "-1";
|
|
"bg+" = lib.mkForce "-1";
|
|
};
|
|
};
|
|
hyfetch = {
|
|
enable = true;
|
|
settings = {
|
|
preset = "rainbow";
|
|
mode = "rgb";
|
|
light_dark = config.lib.stylix.scheme.variant;
|
|
lightness = 0.4;
|
|
color_align = {
|
|
mode = "horizontal";
|
|
};
|
|
};
|
|
};
|
|
readline = {
|
|
enable = true;
|
|
variables = {
|
|
bell-style = "visible";
|
|
blink-matching-paren = "On";
|
|
colored-completion-prefix = "On";
|
|
colored-stats = "On";
|
|
completion-ignore-case = "On";
|
|
completion-map-case = "On";
|
|
editing-mode = "emacs";
|
|
expand-tilde = "On";
|
|
mark-directories = "On";
|
|
mark-symlinked-directories = "On";
|
|
visible-stats = "On";
|
|
};
|
|
};
|
|
};
|
|
}
|