add a nix directory with an initial stab at reconstructing my home shell environment

This commit is contained in:
Haak Saxberg 2019-03-02 16:36:25 -08:00
parent a4857ceb69
commit 9c8ac7dae8

72
nix/home.nix Normal file
View file

@ -0,0 +1,72 @@
{ config, lib, pkgs, ... }:
with lib;
{
home.packages = with pkgs; [
htop
tmuxinator
ripgrep
ranger
nox
zsh-autosuggestions
zsh-syntax-highlighting
zsh-history-substring-search
];
programs.command-not-found.enable = true;
programs.git = {
enable = true;
userName = "Haak Saxberg";
userEmail = "haak.erling@gmail.com";
};
programs.zsh = {
enable = true;
enableCompletion = true;
defaultKeymap = "viins";
initExtra = mkForce (''
export NIX_PATH=$HOME/.nix-defexpr/channels:$NIX_PATH
source $HOME/.nix-profile/etc/profile.d/nix.sh
source $HOME/.nix-profile/share/fzf/key-bindings.zsh
source $HOME/.nix-profile/share/fzf/completion.zsh
source $HOME/.nix-profile/share/zsh-autosuggestions/zsh-autosuggestions.zsh
source $HOME/.nix-profile/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
bindkey '^[[A' history-substring-search-up
bindkey '^[[B' history-substring-search-down
'');
oh-my-zsh = {
enable = true;
theme = "bureau";
plugins = [
"git"
"z"
"nix-shell"
"tmuxinator"
];
};
};
programs.neovim = {
enable = true;
vimAlias = true;
};
programs.tmux = {
enable = true;
};
programs.fzf = {
enable = true;
enableZshIntegration = true;
defaultCommand = "rg --no-ignore --follow --files --hidden --smart-case --glob \\\"!.git/*\\\"";
};
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;
}