dotfiles/nix/home.nix

86 lines
1.7 KiB
Nix
Raw Normal View History

{
config,
pkgs,
...
2024-03-18 23:12:35 -05:00
}: {
# Home Manager needs a bit of information about you and the paths it should
# manage.
home.username = "gabe";
home.homeDirectory = "/home/gabe";
home.stateVersion = "23.11"; # Please read the comment before changing.
2024-03-18 23:12:35 -05:00
home.packages = with pkgs; [
zellij
sshfs
just
fd
sd
scc
tre-command
diskonaut
hyperfine
curl
];
# Home Manager is pretty good at managing dotfiles. The primary way to manage
# plain files is through 'home.file'.
home.file = {
2024-03-18 23:12:35 -05:00
".config/zellij/config.kdl".source = ./zellij/config.kdl;
};
home.sessionVariables = {
EDITOR = "nvim";
VISUAL = "nvim";
2024-03-21 11:03:33 -05:00
PIPENV_VENV_IN_PROJECT = 1;
POETRY_VIRTUALENVS_IN_PROJECT = 1;
};
home.sessionPath = [
2024-03-18 20:45:03 -05:00
"$HOME/.nix-profile/bin/"
"$HOME/.local/bin/"
"$HOME/.cargo/bin/"
"/opt/"
];
home.shellAliases = {
doc2pdf = "loffice --convert-to-pdf --headless *.docx";
sshmnt = "sshfs -o idmap=user,compression=no,reconnect,follow_symlinks,dir_cache=yes,ServerAliveInterval=15";
};
2024-03-18 23:12:35 -05:00
imports = [
./nushell/nushell.nix
./zsh.nix
./git.nix
./starship.nix
2024-03-19 16:57:23 -05:00
./nvim/nvim.nix
2024-03-21 14:49:08 -05:00
./voice.nix
./hugo.nix
./latex.nix
2024-03-18 23:12:35 -05:00
];
programs = {
yazi.enable = true;
zoxide.enable = true;
fzf.enable = true;
ripgrep.enable = true;
bat.enable = true;
tealdeer.enable = true;
btop.enable = true;
carapace.enable = true;
};
services.ssh-agent.enable = true;
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;
2024-03-18 20:45:03 -05:00
# enable flakes
nix = {
package = pkgs.nix;
2024-03-18 23:12:35 -05:00
settings.experimental-features = ["nix-command" "flakes"];
2024-03-22 16:02:21 -05:00
settings.max-jobs = "auto";
gc.automatic = true;
2024-03-18 20:45:03 -05:00
};
}