♻️ refactor nix configs
This commit is contained in:
156
home.nix
156
home.nix
@@ -7,163 +7,11 @@
|
||||
home.username = "walkah";
|
||||
home.homeDirectory = if pkgs.stdenv.isDarwin then "/Users/walkah" else "/home/walkah";
|
||||
|
||||
home.sessionPath = [
|
||||
"$HOME/.cargo/bin"
|
||||
"$HOME/.deno/bin"
|
||||
"$HOME/.emacs.d/bin"
|
||||
"$HOME/.go/bin"
|
||||
"$HOME/.local/bin"
|
||||
imports = [
|
||||
./modules
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
btop
|
||||
cachix
|
||||
direnv
|
||||
drone-cli
|
||||
exa
|
||||
fd
|
||||
git
|
||||
gh
|
||||
htop
|
||||
jq
|
||||
mr
|
||||
nixpkgs-fmt
|
||||
nixfmt
|
||||
ripgrep
|
||||
rnix-lsp
|
||||
tea
|
||||
wakatime
|
||||
];
|
||||
|
||||
home.file.".doom.d" = {
|
||||
onChange = ''
|
||||
#!/bin/sh
|
||||
DOOM=$HOME/.emacs.d
|
||||
if [ ! -d $DOOM ]; then
|
||||
git clone --depth 1 https://github.com/hlissner/doom-emacs $DOOM
|
||||
fi
|
||||
$DOOM/bin/doom sync
|
||||
'';
|
||||
source = ./config/.doom.d;
|
||||
recursive = true;
|
||||
};
|
||||
|
||||
home.file.".ghci".text = ''
|
||||
:set prompt "λ> "
|
||||
'';
|
||||
|
||||
programs = {
|
||||
zsh = {
|
||||
enable = true;
|
||||
enableAutosuggestions = true;
|
||||
enableCompletion = true;
|
||||
oh-my-zsh = {
|
||||
enable = true;
|
||||
plugins = [
|
||||
"bundler"
|
||||
"direnv"
|
||||
"docker"
|
||||
"docker-compose"
|
||||
"git"
|
||||
"golang"
|
||||
"mix"
|
||||
"rails"
|
||||
"ssh-agent"
|
||||
"tmux"
|
||||
];
|
||||
};
|
||||
sessionVariables = {
|
||||
EDITOR = "vim";
|
||||
GOPATH = "$HOME/.go";
|
||||
};
|
||||
shellAliases = {
|
||||
ls = "exa --git";
|
||||
ll = "exa -lh --git";
|
||||
};
|
||||
};
|
||||
starship = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
settings = {
|
||||
character = {
|
||||
success_symbol = "[»](bold green) ";
|
||||
error_symbol = "[✗](bold red) ";
|
||||
};
|
||||
directory = {
|
||||
fish_style_pwd_dir_length = 1;
|
||||
truncation_length = 1;
|
||||
};
|
||||
hostname = {
|
||||
ssh_only = false;
|
||||
format = "[$hostname]($style):";
|
||||
};
|
||||
gcloud = { disabled = true; };
|
||||
kubernetes = { disabled = false; };
|
||||
username = { format = "[$user]($style)@"; };
|
||||
};
|
||||
};
|
||||
|
||||
bat.enable = true;
|
||||
fzf = {
|
||||
enable = true;
|
||||
fileWidgetOptions = [ "--preview 'bat --color always {}'" ];
|
||||
};
|
||||
|
||||
git = {
|
||||
enable = true;
|
||||
userName = "James Walker";
|
||||
userEmail = "walkah@walkah.net";
|
||||
|
||||
aliases = {
|
||||
lg =
|
||||
"log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit";
|
||||
st = "status -s";
|
||||
undo = "reset HEAD~1 --mixed";
|
||||
};
|
||||
|
||||
extraConfig = {
|
||||
github.user = "walkah";
|
||||
init.defaultBranch = "main";
|
||||
pull.rebase = true;
|
||||
rebase.autoStash = true;
|
||||
};
|
||||
|
||||
signing = {
|
||||
key = "8896FEC44D47A81C";
|
||||
signByDefault = true;
|
||||
};
|
||||
};
|
||||
|
||||
tmux = {
|
||||
enable = true;
|
||||
clock24 = true;
|
||||
plugins = with pkgs.tmuxPlugins; [
|
||||
sensible
|
||||
yank
|
||||
{
|
||||
plugin = dracula;
|
||||
extraConfig = ''
|
||||
set -g @dracula-show-battery true
|
||||
set -g @dracula-show-fahrenheit false
|
||||
set -g @dracula-show-left-icon session
|
||||
set -g @dracula-show-powerline true
|
||||
set -g @dracula-refresh-rate 10
|
||||
'';
|
||||
}
|
||||
];
|
||||
extraConfig = ''
|
||||
set -g set-titles on
|
||||
set -g set-titles-string "[#S] #W@#h (#I)"
|
||||
'';
|
||||
shortcut = "o";
|
||||
};
|
||||
|
||||
emacs = {
|
||||
enable = true;
|
||||
package = pkgs.emacs-nox;
|
||||
extraPackages = epkgs: [ epkgs.vterm ];
|
||||
};
|
||||
|
||||
vim = { enable = true; };
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user