confix/home-manager/base.nix

63 lines
1.5 KiB
Nix

# Base home.nix
{ config, lib, pkgs, inputs, user, ... }:
{
programs.home-manager.enable = true;
home.username = "${user.name}";
home.homeDirectory = "/home/${user.name}";
home.sessionPath = [
"${config.home.homeDirectory}/.local/bin"
];
xdg = {
enable = true;
cacheHome = "${config.home.homeDirectory}/.cache";
configHome = "${config.home.homeDirectory}/.config";
dataHome = "${config.home.homeDirectory}/.local/share";
stateHome = "${config.home.homeDirectory}/.local/state";
};
programs.fzf = {
enable = true;
tmux.enableShellIntegration = true;
};
programs.git = {
enable = true;
userName = "${user.long}";
userEmail = "${user.email}";
ignores = [
"*~"
"*.swp"
];
extraConfig = {
global = {
init.defaultbranch = "main";
};
};
};
programs.neovim = {
enable = true;
defaultEditor = true;
viAlias = true;
vimAlias = true;
};
programs.password-store = {
enable = true;
package = pkgs.pass.withExtensions (exts: [ exts.pass-otp exts.pass-import ]);
settings = {
PASSWORD_STORE_DIR = "XDG_DATA_HOME/password-store";
PASSWORD_STORE_CLIP_TIME = "60";
};
};
programs.tmux = {
enable = true;
baseIndex = 1;
clock24 = true;
escapeTime = 250;
historyLimit = 8000;
keyMode = "vi";
mouse = false;
newSession = false;
prefix = "C-b";
terminal = "screen-256color";
};
home.stateVersion = "23.05";
}