2021-01-11 03:59:20 +00:00
|
|
|
|
{ config, ... }:
|
|
|
|
|
let
|
|
|
|
|
name = "Matthew Ess";
|
|
|
|
|
email = "mat@mat.services";
|
|
|
|
|
in {
|
|
|
|
|
imports = [ <home-manager/nixos> ];
|
|
|
|
|
|
|
|
|
|
home-manager.useUserPackages = true;
|
|
|
|
|
home-manager.useGlobalPkgs = true;
|
|
|
|
|
|
|
|
|
|
home-manager.users.mat = { pkgs, ... }: {
|
|
|
|
|
home = {
|
|
|
|
|
sessionVariables = { EDITOR = "vim"; };
|
|
|
|
|
packages = with pkgs; [
|
|
|
|
|
# nix utilities
|
|
|
|
|
cachix
|
|
|
|
|
niv
|
|
|
|
|
nixfmt
|
|
|
|
|
nix-prefetch-git
|
|
|
|
|
fish-foreign-env
|
|
|
|
|
# command line utils
|
|
|
|
|
ripgrep
|
|
|
|
|
rlwrap
|
|
|
|
|
tealdeer
|
2021-01-11 04:08:19 +00:00
|
|
|
|
pijul
|
2021-01-11 03:59:20 +00:00
|
|
|
|
mullvad-vpn
|
|
|
|
|
];
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
programs = {
|
|
|
|
|
bat.enable = true;
|
|
|
|
|
broot.enable = true;
|
|
|
|
|
command-not-found.enable = true;
|
|
|
|
|
direnv.enable = true;
|
2021-01-11 04:14:51 +00:00
|
|
|
|
|
|
|
|
|
fish = {
|
|
|
|
|
enable = true;
|
|
|
|
|
interactiveShellInit = ''
|
|
|
|
|
echo 'ヽ(´ᗜ`)ノ welcome ヽ(´ᗜ`)ノ'
|
|
|
|
|
if not functions -q fisher
|
|
|
|
|
set -q XDG_CONFIG_HOME; or set XDG_CONFIG_HOME ~/.config
|
2021-01-11 04:23:33 +00:00
|
|
|
|
curl -sL https://git.io/fisher | source && fisher install jorgebucaran/fisher
|
|
|
|
|
fish -c fisher update
|
2021-01-11 04:14:51 +00:00
|
|
|
|
end
|
|
|
|
|
fish_vi_key_bindings
|
|
|
|
|
set VIRTUAL_ENV_DISABLE_PROMPT true
|
|
|
|
|
|
|
|
|
|
alias cat=bat
|
|
|
|
|
alias br=broot
|
|
|
|
|
alias tree=br
|
|
|
|
|
alias ack=rg
|
|
|
|
|
alias ag=rg
|
|
|
|
|
alias grep=rg
|
|
|
|
|
|
|
|
|
|
alias sys="sudo systemctl"
|
|
|
|
|
|
|
|
|
|
alias rebuild="sudo nixos-rebuild switch"
|
|
|
|
|
alias rebuildd="sudo nixos-rebuild switch; and systemctl restart display-manager"
|
|
|
|
|
alias upgrade="sudo rm -rf /root/.cache/nix/tarballs; and sudo nix-channel --update; and sudo nixos-rebuild switch --upgrade"
|
2021-01-11 04:19:57 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bind \cr 'fzy_select_history (commandline -b)'
|
|
|
|
|
bind -M insert \cr 'fzy_select_history (commandline -b)'
|
|
|
|
|
|
|
|
|
|
bind \cf 'fzy_select_directory'
|
|
|
|
|
bind -M insert \cf 'fzy_select_directory'
|
|
|
|
|
|
|
|
|
|
bind -M insert ! __history_previous_command
|
|
|
|
|
bind -M insert '$' __history_previous_command_arguments
|
2021-01-11 04:14:51 +00:00
|
|
|
|
'';
|
|
|
|
|
};
|
2021-01-11 03:59:20 +00:00
|
|
|
|
|
|
|
|
|
git = {
|
|
|
|
|
enable = true;
|
|
|
|
|
userName = "${name}";
|
|
|
|
|
userEmail = "${email}";
|
|
|
|
|
ignores = [ ".*.sw[a-z]" "tags" ];
|
|
|
|
|
extraConfig = {
|
|
|
|
|
color.ui = true;
|
|
|
|
|
core.editor = "vim";
|
|
|
|
|
push.default = "simple";
|
|
|
|
|
init.defaultBranch = "main";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
htop = {
|
|
|
|
|
enable = true;
|
|
|
|
|
highlightBaseName = true;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
man.enable = true;
|
|
|
|
|
|
|
|
|
|
ssh = {
|
|
|
|
|
enable = true;
|
|
|
|
|
serverAliveInterval = 60;
|
2021-01-11 04:16:03 +00:00
|
|
|
|
extraOptionOverrides = { "AddKeysToAgent" = "true"; };
|
2021-01-11 03:59:20 +00:00
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
starship.enable = true;
|
|
|
|
|
|
|
|
|
|
tmux = {
|
|
|
|
|
enable = true;
|
|
|
|
|
keyMode = "vi";
|
|
|
|
|
newSession = true;
|
|
|
|
|
shortcut = "a";
|
|
|
|
|
baseIndex = 1;
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
services = { lorri.enable = true; };
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
}
|