From fda8ead0f97bb1b03ae82f116c89fba8448f64cd Mon Sep 17 00:00:00 2001 From: Drew Haven Date: Mon, 10 Feb 2025 14:44:38 -0800 Subject: [PATCH] [dev] Adds more dev tools (git, kubernetes) and meta packages --- home-manager/drew.nix | 12 +++++----- home-manager/features/development-linux.nix | 8 +++++++ home-manager/features/development.nix | 9 ++++++++ home-manager/features/git.nix | 25 +++++++++++++++++++++ home-manager/features/kubernetes.nix | 10 +++++++++ home-manager/features/shell.nix | 2 -- home-manager/features/terminal.nix | 4 ++++ system/hosts/tarro-mbp/drew.nix | 12 ++++++---- 8 files changed, 71 insertions(+), 11 deletions(-) create mode 100644 home-manager/features/development-linux.nix create mode 100644 home-manager/features/development.nix create mode 100644 home-manager/features/git.nix create mode 100644 home-manager/features/kubernetes.nix diff --git a/home-manager/drew.nix b/home-manager/drew.nix index 02975ba..e840a10 100644 --- a/home-manager/drew.nix +++ b/home-manager/drew.nix @@ -3,12 +3,11 @@ imports = [ ./features/audio.nix ./features/hyprland.nix - ./features/neovim.nix - ./features/shell.nix - ./features/ssh.nix - ./features/terminal.nix + ./features/development-linux.nix ]; + home.stateVersion = "24.11"; + home.username = "drew"; home.homeDirectory = "/home/drew"; @@ -93,5 +92,8 @@ style.name = "adwaita-dark"; }; - home.stateVersion = "24.11"; + programs.git = { + userName = "Drew Haven"; + userEmail = "drew.haven@gmail.com"; + }; } diff --git a/home-manager/features/development-linux.nix b/home-manager/features/development-linux.nix new file mode 100644 index 0000000..292c72e --- /dev/null +++ b/home-manager/features/development-linux.nix @@ -0,0 +1,8 @@ +# Meta-package for development on linux +{...}: +{ + imports = [ + ./development.nix + ./ssh.nix + ] +} diff --git a/home-manager/features/development.nix b/home-manager/features/development.nix new file mode 100644 index 0000000..bababc0 --- /dev/null +++ b/home-manager/features/development.nix @@ -0,0 +1,9 @@ +{ ... }: +{ + imports = [ + ./git.nix + ./shell.nix + ./terminal.nix + ./neovim.nix + ]; +} diff --git a/home-manager/features/git.nix b/home-manager/features/git.nix new file mode 100644 index 0000000..61d2cf2 --- /dev/null +++ b/home-manager/features/git.nix @@ -0,0 +1,25 @@ +{ ... }: +{ + programs.git = { + enable = true; + aliases = { + "co" = "checkout"; + "s" = "status"; + "b" = "branch"; + "r" = "remote"; + "amend" = "commit -a --amend --no-edit"; + "c" = "commit -am"; + }; + extraConfig = { + core = { + pager = ""; + }; + pull = { + rebase = true; + }; + log = { + date = "iso"; + }; + }; + }; +} diff --git a/home-manager/features/kubernetes.nix b/home-manager/features/kubernetes.nix new file mode 100644 index 0000000..c8689ff --- /dev/null +++ b/home-manager/features/kubernetes.nix @@ -0,0 +1,10 @@ +{ pkgs, ... }: +{ + home.packages = with pkgs; [ + kubectl + ]; + + home.shellAliases = { + k = "kubectl"; + }; +} diff --git a/home-manager/features/shell.nix b/home-manager/features/shell.nix index f10c82e..73b86bd 100644 --- a/home-manager/features/shell.nix +++ b/home-manager/features/shell.nix @@ -12,8 +12,6 @@ # Make ^U work like it does in Bash bindkey "^U" backward-kill-line - alias 'p?'='ps ax | grep' - # This doesn't seem to be in the homemanager options # Makes shells incrementally append history so that new shells have the history of open shells setopt inc_append_history diff --git a/home-manager/features/terminal.nix b/home-manager/features/terminal.nix index 2e0ef6e..97d65e7 100644 --- a/home-manager/features/terminal.nix +++ b/home-manager/features/terminal.nix @@ -32,6 +32,10 @@ nerd-fonts.jetbrains-mono ]; + home.shellAliases = { + "p?" = "ps ax | grep"; + }; + # Allow Home Manager to set fonts. fonts.fontconfig.enable = true; diff --git a/system/hosts/tarro-mbp/drew.nix b/system/hosts/tarro-mbp/drew.nix index 20eca91..17565a9 100644 --- a/system/hosts/tarro-mbp/drew.nix +++ b/system/hosts/tarro-mbp/drew.nix @@ -1,10 +1,9 @@ { pkgs, self, ... }: { imports = [ - ../../../home-manager/features/shell.nix - ../../../home-manager/features/terminal.nix - ../../../home-manager/features/neovim.nix - ../../../home-manager/features/macos + ../../../home-manager/features/development.nix + ../../../home-manager/features/kubernetes.nix + ../../../home-manager/features/macos ]; home.username = "drew"; @@ -17,4 +16,9 @@ ]; home.stateVersion = "24.11"; + + programs.git = { + userName = "Drew Haven"; + userEmail = "drew.haven@tarro.com"; + }; }