nix everywhere! (or at least my laptop)

pruned Brewfile to match... more to do still
This commit is contained in:
2020-11-23 22:09:23 -05:00
parent bc57bf0a0b
commit ccc8e9de6d
3 changed files with 121 additions and 77 deletions

View File

@@ -5,18 +5,25 @@
# Home Manager needs a bit of information about you and the
# paths it should manage.
home.username = builtins.getEnv "USER";
home.homeDirectory = builtins.getEnv "HOME";
# home.username = builtins.getEnv "USER";
# home.homeDirectory = builtins.getEnv "HOME";
xdg.configFile."starship.toml".source = ./home/.config/starship.toml;
home.sessionPath = [
"$HOME/.local/bin"
"$HOME/.emacs.d/bin"
];
home.packages = with pkgs; [
cmake
direnv
docker
docker-compose
fd
git
gitAndTools.gh
htop
jq
mr
pinentry
ripgrep
sqlite
@@ -32,11 +39,15 @@
enable = true;
enableAutosuggestions = true;
enableCompletion = true;
initExtra = ''
unset RPS1
'';
oh-my-zsh = {
enable = true;
plugins = [
"direnv"
"docker"
"docker-compose"
"git"
"ssh-agent"
"tmux"
@@ -46,12 +57,46 @@
EDITOR = "vim";
};
};
starship.enable = true;
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):";
};
kubernetes = {
disabled = false;
};
username = {
format = "[$user]($style)@";
};
};
};
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";
};
extraConfig = {
pull.rebase = true;
};
signing = {
key = "8896FEC44D47A81C";
signByDefault = true;
@@ -68,6 +113,9 @@
tmux = {
enable = true;
extraConfig = ''
set -g set-titles on
set -g set-titles-string "[#S] #W@#h (#I)"
set -g status-bg black
set -g status-fg white
'';
@@ -81,17 +129,23 @@
};
};
services = {
lorri.enable = true;
gpg-agent = {
enable = true;
enableSshSupport = true;
extraConfig = ''
allow-emacs-pinentry
allow-loopback-pinentry
'';
};
};
services =
if (pkgs.stdenv.isLinux) then
{
lorri.enable = true;
syncthing.enable = true;
gpg-agent = {
enable = true;
enableSshSupport = true;
extraConfig = ''
allow-emacs-pinentry
allow-loopback-pinentry
'';
};
}
else
{};
# This value determines the Home Manager release that your
# configuration is compatible with. This helps avoid breakage