2025-06-06 11:48:30 -05:00
|
|
|
{ config, lib, pkgs, inputs, ... }:
|
2025-06-06 11:12:31 -05:00
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
home.username = "roy";
|
|
|
|
|
home.homeDirectory = "/home/roy";
|
|
|
|
|
|
|
|
|
|
home.packages = with pkgs; [
|
|
|
|
|
age
|
|
|
|
|
dig
|
|
|
|
|
ffmpeg_6
|
|
|
|
|
git
|
|
|
|
|
grim
|
|
|
|
|
kdePackages.gwenview
|
|
|
|
|
prismlauncher
|
|
|
|
|
slurp
|
|
|
|
|
sops
|
|
|
|
|
ssh-to-age
|
|
|
|
|
tree
|
|
|
|
|
unzip
|
|
|
|
|
vlc
|
|
|
|
|
wl-clipboard
|
|
|
|
|
yq-go
|
|
|
|
|
zip
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
programs.git = {
|
|
|
|
|
enable = true;
|
|
|
|
|
userName = "Roy Dumblauskas";
|
|
|
|
|
userEmail = "roydumblauskas@gmail.com";
|
|
|
|
|
};
|
|
|
|
|
|
2025-06-06 11:42:42 -05:00
|
|
|
# user program config files
|
|
|
|
|
home.file = {
|
|
|
|
|
"hypr".source = ./roy-config/hypr;
|
|
|
|
|
"waybar".source = ./roy-config/waybar;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
# user persisted dirs
|
2025-06-06 11:48:30 -05:00
|
|
|
home.persistence."/persist/home" = {
|
2025-06-06 11:42:42 -05:00
|
|
|
directories = [
|
|
|
|
|
".ssh"
|
|
|
|
|
"rp"
|
|
|
|
|
];
|
2025-06-06 11:52:53 -05:00
|
|
|
allowOther = true;
|
2025-06-06 11:42:42 -05:00
|
|
|
};
|
|
|
|
|
|
2025-06-06 11:12:31 -05:00
|
|
|
programs.nixvim = {
|
|
|
|
|
enable = true;
|
|
|
|
|
opts = {
|
|
|
|
|
number = true;
|
|
|
|
|
relativenumber = true;
|
|
|
|
|
shiftwidth = 2;
|
|
|
|
|
tabstop = 2;
|
|
|
|
|
expandtab = true;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
plugins = {
|
|
|
|
|
lsp-lines.enable = true;
|
|
|
|
|
lsp-format.enable = true;
|
|
|
|
|
lsp = {
|
|
|
|
|
enable = true;
|
|
|
|
|
inlayHints = true;
|
|
|
|
|
servers = {
|
2025-06-06 11:42:42 -05:00
|
|
|
html.enable = true;
|
|
|
|
|
lua_ls.enable = true;
|
|
|
|
|
nil_ls.enable = true;
|
|
|
|
|
ts_ls.enable = true;
|
|
|
|
|
marksman.enable = true;
|
|
|
|
|
pyright.enable = true;
|
2025-06-06 11:12:31 -05:00
|
|
|
gopls.enable = true;
|
2025-06-06 11:42:42 -05:00
|
|
|
terraformls.enable = true;
|
|
|
|
|
ansiblels.enable = true;
|
2025-06-06 11:12:31 -05:00
|
|
|
jsonls.enable = true;
|
2025-06-06 11:42:42 -05:00
|
|
|
yamlls.enable = true;
|
2025-06-06 11:12:31 -05:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
keymaps = {
|
|
|
|
|
silent = true;
|
|
|
|
|
lspBuf = {
|
|
|
|
|
gd = {
|
|
|
|
|
action = "definition";
|
|
|
|
|
desc = "Goto Definition";
|
|
|
|
|
};
|
|
|
|
|
gr = {
|
|
|
|
|
action = "references";
|
|
|
|
|
desc = "Goto References";
|
|
|
|
|
};
|
|
|
|
|
gD = {
|
|
|
|
|
action = "declaration";
|
|
|
|
|
desc = "Goto Declaration";
|
|
|
|
|
};
|
|
|
|
|
gI = {
|
|
|
|
|
action = "implementation";
|
|
|
|
|
desc = "Goto Implementation";
|
|
|
|
|
};
|
|
|
|
|
gT = {
|
|
|
|
|
action = "type_definition";
|
|
|
|
|
desc = "Type Definition";
|
|
|
|
|
};
|
|
|
|
|
K = {
|
|
|
|
|
action = "hover";
|
|
|
|
|
desc = "Hover";
|
|
|
|
|
};
|
|
|
|
|
"<leader>cw" = {
|
|
|
|
|
action = "workspace_symbol";
|
|
|
|
|
desc = "Workspace Symbol";
|
|
|
|
|
};
|
|
|
|
|
"<leader>cr" = {
|
|
|
|
|
action = "rename";
|
|
|
|
|
desc = "Rename";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
diagnostic = {
|
|
|
|
|
"<leader>cd" = {
|
|
|
|
|
action = "open_float";
|
|
|
|
|
desc = "Line Diagnostics";
|
|
|
|
|
};
|
|
|
|
|
"]d" = {
|
|
|
|
|
action = "goto_next";
|
|
|
|
|
desc = "Next Diagnostic";
|
|
|
|
|
};
|
|
|
|
|
"[d" = {
|
|
|
|
|
action = "goto_prev";
|
|
|
|
|
desc = "Previous Diagnostic";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
extraConfigLua = ''
|
|
|
|
|
local _border = "rounded"
|
|
|
|
|
|
|
|
|
|
vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(
|
|
|
|
|
vim.lsp.handlers.hover, {
|
|
|
|
|
border = _border
|
|
|
|
|
}
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
vim.lsp.handlers["textDocument/signatureHelp"] = vim.lsp.with(
|
|
|
|
|
vim.lsp.handlers.signature_help, {
|
|
|
|
|
border = _border
|
|
|
|
|
}
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
vim.diagnostic.config{
|
|
|
|
|
float={border=_border}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
require('lspconfig.ui.windows').default_options = {
|
|
|
|
|
border = _border
|
|
|
|
|
}
|
|
|
|
|
'';
|
|
|
|
|
|
|
|
|
|
colorschemes.catppuccin.enable = true;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
home.stateVersion = "24.11";
|
|
|
|
|
programs.home-manager.enable = true;
|
|
|
|
|
|
|
|
|
|
}
|