nixos-config/home/yt/common.nix
2025-01-06 16:33:54 -05:00

88 lines
1.8 KiB
Nix

{ pkgs, ... }:
{
imports = [
../tmux.nix
../zsh
];
nix = {
settings = {
experimental-features = "nix-command flakes";
auto-optimise-store = true;
flake-registry = "";
trusted-users = [ "root" "@wheel" ];
trusted-public-keys = [ "central:uWhjva6m6dhC2hqNisjn2hXGvdGBs19vPkA1dPEuwFg=" ];
substituters = [ "https://cache.cything.io/central" ];
};
gc = {
automatic = true;
frequency = "19:00";
persistent = true;
options = "--delete-older-than 14d";
};
extraOptions = ''
builders-use-substitutes = true
'';
package = pkgs.nix;
};
home.sessionVariables = {
"EDITOR" = "nvim";
};
xdg.configFile = {
nvim.source = ../nvim;
};
home.packages = with pkgs; [
man-pages
man-pages-posix
man
man-db
attic-client
bottom
btop
];
programs.zoxide.options = [ "--cmd cd" ];
programs.fzf = {
enable = true;
defaultCommand = "rg";
};
programs.zoxide.enable = true;
programs.eza.enable = true;
programs.neovim.enable = true;
programs.git = {
enable = true;
userName = "cy";
userEmail = "hi@cything.io";
delta = {
enable = true;
options = {
navigate = true;
};
};
extraConfig = {
init.defaultBranch = "main";
push.autoSetupRemote = true; # assume -u on first push
pull = {
rebase = true;
autostash = true;
};
merge.tool = "vimdiff";
rebase = {
stat = true;
autoStash = true;
autoSquash = true;
updateRefs = true;
};
help.autocorrect = 1;
mergetool = {
prompt = false;
path = "nvim-open";
};
};
};
programs.ripgrep.enable = true;
programs.man.generateCaches = true;
}