diff --git a/secrets/secrets.yaml b/secrets/secrets.yaml index 4ab6c34..3871095 100644 --- a/secrets/secrets.yaml +++ b/secrets/secrets.yaml @@ -1,7 +1,7 @@ #ENC[AES256_GCM,data:b7E2U/jRfXEKulR/Pba0L4Aucy3MSUPj2BU=,iv:+KC+vfB2z2AIiPr5uIC4Pbfgc44GOs6SVRZW1v80hUE=,tag:kkn3UfJwdgxYERmfiMUmjw==,type:comment] blake_passwd: ENC[AES256_GCM,data:AfFql6/ghGhCDLOb4+QuAsDznz4hC4ilxZYCIH2sgBWX9tWXsUOgFw1k7CIhDoXIehz6YlTy0czekXPCqHL5gmIKRQTowU4svocw/Bl/Qz5CQ58RASB6YpnzOKTrwX7HCnu/ghpdMrcy2A==,iv:hMAkLcHjP0hiyCY4rhMU0Ae7jdYPa6MffEd2WGolbEo=,tag:p/6xmD8Te1RnFkp0zWw+ew==,type:str] #ENC[AES256_GCM,data:0HBVS2AYQ2VZXY4EbMLwiSjRNyWZ57bf,iv:20SLWXpbRTLk76g5mFrhg1Z9Qasv3NoSJbK/FOiIgtk=,tag:DbUffQwrDqzy2QO64uoUeg==,type:comment] -klefki_auth_mapping: ENC[AES256_GCM,data:pvQEdxtj,iv:7IyAbt6yXfp2UBrZooRAT/9/E8c4+HCm5t+F5U2Lqzk=,tag:RcS/aWHSheMvLz3QhhCPxw==,type:str] +klefki_auth_map: ENC[AES256_GCM,data:u8OBLtT/,iv:THW21BDyhyFIjcwixsAnaAODofxbuQZnpdgt9HGdDIg=,tag:zUvbOO8tLAnxdeMcWpvsdg==,type:str] #ENC[AES256_GCM,data:ZxHtUSuOy19M0EKoT5xltFiqRg==,iv:72PJL2eG68VC4wiJFo6wL0l7AaDIsge8l/D/ZlLOWWA=,tag:Q16ztObK2AnbCCS5mRgjtA==,type:comment] tailscale_authkey: ENC[AES256_GCM,data:SU0k3asrJd+WZ86VbC4w8TDJp+MqsbyagrzCfDcgTzO5yvBjpWAKbJ7A+VxgQvdu4+S2jMYbdrONPp3YbQ==,iv:VMYmGVk5GpUQApKKQYhdOw/cYCXrXxEZJJwHfQL4MjQ=,tag:7ruaoCDxuFQ7tE/JLJ37Xw==,type:str] #ENC[AES256_GCM,data:bEbCic+ZDAA5ieNedCbiVbJrse17,iv:UwRYlis6NPB/RUcv+YnPxrGdbIcF4hrNiZt19YvWZNQ=,tag:m6PVlzPNnahX7X7KzMUj7A==,type:comment] @@ -47,7 +47,7 @@ sops: U0tmdFBuZnJES3piOTZNV0VKQmQ0eVUKCWRQ/flLzmpC64WyLoipklZBmrkpYiUg PRu+itNolpPTHm96pe+P93g2iP0wgekG0cX21wkiU2xaLF3dY2FEIA== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-10-17T02:56:39Z" - mac: ENC[AES256_GCM,data:vs3SAec+USFLUkmsV3OBjVT5V5XwG/sqD2pMK5fDaUm0vTwk5nQsqNZz+uEG6DakG+xXJdyMfXTp2pBVPuuRkZhplIXtt1Pb2ExSqprmyN5O0jFGpNCMZq4pq6BqvM0fjdz6T3BXRhmJ3Z7e35/hn/8CJGYanNX5Ybb+0Ugx5Gg=,iv:PLw22dGgd3auwrSNvuD9Ur4+j9dNR1Of6w7dtQZLoYQ=,tag:u8OHCs6Xlrt+2sGK1NWQZA==,type:str] + lastmodified: "2025-10-17T08:24:51Z" + mac: ENC[AES256_GCM,data:kIlrr+U7+O1Ocdi8CffmQNOQYh46crnaaQHBOkeOwG4AuAErNb1UjhZiOUELYD6bTG4GnIw0QGAS6xu+C22aA/jKsg/Z0q/LjX3FPDLLmLyEXhjIDVB+DOsxUsUWupZqGOq+HoBWuVYt11kc2ylPqqC5JlxNwQpIXGa1YgsKaNQ=,iv:L813P4Zvse38E2+K1wv0kTrPYgaKQc0rAleGGfhJRyA=,tag:k0v2ApQincLnu1Pd3WOkGw==,type:str] unencrypted_suffix: _unencrypted version: 3.11.0 diff --git a/users/blake/dots/neovim/default.nix b/users/blake/dots/neovim/default.nix index 9717a03..f987cf1 100644 --- a/users/blake/dots/neovim/default.nix +++ b/users/blake/dots/neovim/default.nix @@ -4,187 +4,183 @@ lib, inputs, ... -}: let - cfg = config.blake.nvf; -in { - options.blake.nvf = { - enable = lib.mkEnableOption; - }; +}: +{ + imports = [ + inputs.nvf.homeManagerModules.default + ]; - config = lib.mkIf cfg.enable { - imports = [inputs.nvf.homeManagerModules.default]; + programs.nvf = { + enable = true; + settings = { + vim = { + globals = { + mapleader = " "; + maplocalleader = " "; + }; - programs.nvf = { - enable = true; - settings = { - vim = { - globals = { - mapleader = " "; - maplocalleader = " "; - }; + vimAlias = true; - vimAlias = true; + lsp.enable = true; + statusline.lualine.enable = true; + telescope.enable = true; + autocomplete.nvim-cmp.enable = true; + autopairs.nvim-autopairs.enable = true; - lsp.enable = true; - statusline.lualine.enable = true; - telescope.enable = true; - autocomplete.nvim-cmp.enable = true; - autopairs.nvim-autopairs.enable = true; + keymaps = [ + # visual line movement (insert mode) + { + key = ""; + mode = [ "i" ]; + action = "gk"; + desc = "Visual Line Up (Insert)"; + } + { + key = ""; + mode = [ "i" ]; + action = "gj"; + desc = "Visual Line Down (Insert)"; + } - keymaps = [ - # visual line movement (insert mode) - { - key = ""; - mode = ["i"]; - action = "gk"; - desc = "Visual Line Up (Insert)"; - } - { - key = ""; - mode = ["i"]; - action = "gj"; - desc = "Visual Line Down (Insert)"; - } + # visual line movement (normal/visual) + { + key = ""; + mode = [ + "n" + "v" + ]; + action = "g"; + desc = "Visual Line Up"; + } + { + key = ""; + mode = [ + "n" + "v" + ]; + action = "g"; + desc = "Visual Line Down"; + } - # visual line movement (normal/visual) - { - key = ""; - mode = [ - "n" - "v" - ]; - action = "g"; - desc = "Visual Line Up"; - } - { - key = ""; - mode = [ - "n" - "v" - ]; - action = "g"; - desc = "Visual Line Down"; - } + # lsp + #{ key = "gd"; mode = [ "n" ]; action = "lua vim.lsp.buf.definition()"; desc = "Go to definition"; } + #{ key = "K"; mode = [ "n" ]; action = "lua vim.lsp.buf.hover()"; desc = "Hover info"; } + #{ key = "f"; mode = [ "n" ]; action = "lua vim.lsp.buf.format({ async = true })"; desc = "Format buffer"; } - # lsp - #{ key = "gd"; mode = [ "n" ]; action = "lua vim.lsp.buf.definition()"; desc = "Go to definition"; } - #{ key = "K"; mode = [ "n" ]; action = "lua vim.lsp.buf.hover()"; desc = "Hover info"; } - #{ key = "f"; mode = [ "n" ]; action = "lua vim.lsp.buf.format({ async = true })"; desc = "Format buffer"; } + { + key = "gd"; + mode = [ "n" ]; + silent = true; + action = "lua vim.lsp.buf.definition()"; + desc = "Go to definition"; + } + # Hover info + { + key = "K"; + mode = [ "n" ]; + silent = true; + action = "lua vim.lsp.buf.hover()"; + desc = "Hover info"; + } + # Format buffer (Alejandra for Nix) + { + key = "F"; + mode = [ "n" ]; + silent = true; + action = "lua vim.lsp.buf.format({ async = true })"; + desc = "Format buffer"; + } + # Code actions / quickfix + { + key = "a"; + mode = [ "n" ]; + silent = true; + action = "lua vim.lsp.buf.code_action()"; + desc = "Code action"; + } + # Rename symbol + { + key = "r"; + mode = [ "n" ]; + silent = true; + action = "lua vim.lsp.buf.rename()"; + desc = "Rename symbol"; + } + # Diagnostics + { + key = "e"; + mode = [ "n" ]; + silent = true; + action = "lua vim.diagnostic.open_float()"; + desc = "Show diagnostic"; + } + { + key = "[d"; + mode = [ "n" ]; + silent = true; + action = "lua vim.diagnostic.goto_prev()"; + desc = "Previous diagnostic"; + } + { + key = "]d"; + mode = [ "n" ]; + silent = true; + action = "lua vim.diagnostic.goto_next()"; + desc = "Next diagnostic"; + } + ]; - { - key = "gd"; - mode = ["n"]; - silent = true; - action = "lua vim.lsp.buf.definition()"; - desc = "Go to definition"; - } - # Hover info - { - key = "K"; - mode = ["n"]; - silent = true; - action = "lua vim.lsp.buf.hover()"; - desc = "Hover info"; - } - # Format buffer (Alejandra for Nix) - { - key = "F"; - mode = ["n"]; - silent = true; - action = "lua vim.lsp.buf.format({ async = true })"; - desc = "Format buffer"; - } - # Code actions / quickfix - { - key = "a"; - mode = ["n"]; - silent = true; - action = "lua vim.lsp.buf.code_action()"; - desc = "Code action"; - } - # Rename symbol - { - key = "r"; - mode = ["n"]; - silent = true; - action = "lua vim.lsp.buf.rename()"; - desc = "Rename symbol"; - } - # Diagnostics - { - key = "e"; - mode = ["n"]; - silent = true; - action = "lua vim.diagnostic.open_float()"; - desc = "Show diagnostic"; - } - { - key = "[d"; - mode = ["n"]; - silent = true; - action = "lua vim.diagnostic.goto_prev()"; - desc = "Previous diagnostic"; - } - { - key = "]d"; - mode = ["n"]; - silent = true; - action = "lua vim.diagnostic.goto_next()"; - desc = "Next diagnostic"; - } - ]; + options = { + clipboard = "unnamedplus"; - options = { - clipboard = "unnamedplus"; + # line numbers + number = true; + numberwidth = 2; + relativenumber = true; - # line numbers - number = true; - numberwidth = 2; - relativenumber = true; + # tabs and indentation + tabstop = 2; + shiftwidth = 2; + softtabstop = -1; + expandtab = true; + smarttab = true; + autoindent = true; - # tabs and indentation - tabstop = 2; - shiftwidth = 2; - softtabstop = -1; - expandtab = true; - smarttab = true; - autoindent = true; + # search + ignorecase = true; + smartcase = true; - # search - ignorecase = true; - smartcase = true; + # files and backups + backup = false; + writebackup = false; + undofile = true; + swapfile = true; - # files and backups - backup = false; - writebackup = false; - undofile = true; - swapfile = true; + # wrapping + wrap = true; + linebreak = true; + breakindent = true; - # wrapping - wrap = true; - linebreak = true; - breakindent = true; + termguicolors = true; + autoread = true; + }; - termguicolors = true; - autoread = true; - }; + languages = { + enableTreesitter = true; - languages = { - enableTreesitter = true; - - nix = { + nix = { + enable = true; + format = { enable = true; - format = { - enable = true; - type = "alejandra"; - #type = "nixfmt"; - }; + type = "alejandra"; + #type = "nixfmt"; }; - - markdown.enable = true; - rust.enable = true; - lua.enable = true; }; + + markdown.enable = true; + rust.enable = true; + lua.enable = true; + }; }; }; diff --git a/users/blake/dots/xdg/default.nix b/users/blake/dots/xdg/default.nix index dc80c03..8c296e8 100644 --- a/users/blake/dots/xdg/default.nix +++ b/users/blake/dots/xdg/default.nix @@ -5,7 +5,7 @@ }: { home.packages = with pkgs; [xdg-ninja]; - xdg = { + xdg = if pkgs.system == "x86_64-linux" then {} else { enable = true; configHome = "${config.home.homeDirectory}/.config"; cacheHome = "${config.home.homeDirectory}/.cache"; @@ -27,7 +27,7 @@ }; # misc env variables to get things out of ~ (<3 xdg-ninja) - home.sessionVariables = { + home.sessionVariables = if pkgs.system == "x86_64-darwin" then {} else { GOPATH="$XDG_DATA_HOME/go"; _JAVA_OPTIONS=''-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME"/java''; }; diff --git a/users/blake/home.nix b/users/blake/home.nix index 2bfea14..71d6b94 100644 --- a/users/blake/home.nix +++ b/users/blake/home.nix @@ -7,11 +7,17 @@ }: let # general config - linux_home = { + home_linux = { username = "blake"; homeDirectory = "/home/blake"; }; - linux_imports = [ + home_darwin = { + username = "bhelderman"; + homeDirectory = "/Users/bhelderman"; + }; +in +{ + imports = [ inputs.sops-nix.homeManagerModules.sops ./dots/neovim ./dots/lf @@ -21,25 +27,9 @@ ./dots/git ./dots/xdg ]; - darwin_home = { - username = "blake"; - homeDirectory = "/home/blake"; - }; - darwin_imports = [ - inputs.sops-nix.homeManagerModules.sops - ./dots/neovim - ./dots/lf - ./dots/zsh - ./dots/ssh - ./dots/gpg - ./dots/git - ]; -in -{ - imports = if pkgs.system == "x86_64-darwin" then darwin_imports else linux_imports; # general config - home = (if pkgs.system == "x86_64-darwin" then darwin_home else linux_home) // { + home = (if pkgs.system == "x86_64-darwin" then home_darwin else home_linux) // { # cross party general packages here : ) stateVersion = "25.05"; packages = with pkgs; [