feat(nvim): Move neovim config to a sub-flake
This commit is contained in:
@@ -16,6 +16,14 @@ These are dotfiles for my Linux and MacOS machines
|
|||||||
- WM: [yabai](https://github.com/koekeishiya/yabai)
|
- WM: [yabai](https://github.com/koekeishiya/yabai)
|
||||||
- Terminal: wezterm
|
- Terminal: wezterm
|
||||||
|
|
||||||
|
### Neovim
|
||||||
|
|
||||||
|
If you want to try my neovim config just do
|
||||||
|
```
|
||||||
|
nix run github:uttarayan21/dotfiles#neovim
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
### For nix
|
### For nix
|
||||||
|
|
||||||
I'm a recent convert to NixOS from ArchLinux and have been usin it as primary os as well as a package manager on macos so the flake.nix contains configuration for both nix-darwin as well as nixos. It also contains a native home-manager module configuration for non-nixos devices ( like a SteamDeck ).
|
I'm a recent convert to NixOS from ArchLinux and have been usin it as primary os as well as a package manager on macos so the flake.nix contains configuration for both nix-darwin as well as nixos. It also contains a native home-manager module configuration for non-nixos devices ( like a SteamDeck ).
|
||||||
|
|||||||
588
common/nvim.nix
588
common/nvim.nix
@@ -1,592 +1,8 @@
|
|||||||
{
|
{
|
||||||
pkgs,
|
pkgs,
|
||||||
config,
|
|
||||||
inputs,
|
inputs,
|
||||||
device,
|
|
||||||
...
|
...
|
||||||
}: let
|
}: {
|
||||||
mkMappings = mappings:
|
|
||||||
[]
|
|
||||||
++ (pkgs.lib.optionals (builtins.hasAttr "normal" mappings) (mkMode mappings.normal "n"))
|
|
||||||
++ (pkgs.lib.optionals (builtins.hasAttr "terminal" mappings) (mkMode mappings.terminal "t"))
|
|
||||||
++ (pkgs.lib.optionals (builtins.hasAttr "insert" mappings) (mkMode mappings.insert "i"))
|
|
||||||
++ (pkgs.lib.optionals (builtins.hasAttr "visual" mappings) (mkMode mappings.visual "v"))
|
|
||||||
++ (pkgs.lib.optionals (builtins.hasAttr "global" mappings) (mkMode mappings.global ""));
|
|
||||||
mkMode = mappings: mode:
|
|
||||||
pkgs.lib.mapAttrsToList
|
|
||||||
(key: value: {
|
|
||||||
key = key;
|
|
||||||
action = value;
|
|
||||||
mode = mode;
|
|
||||||
lua = true;
|
|
||||||
})
|
|
||||||
mappings;
|
|
||||||
border = ["╭" "─" "╮" "│" "╯" "─" "╰" "│"];
|
|
||||||
rawLua = lua: {
|
|
||||||
"__raw" = ''
|
|
||||||
${lua}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
in {
|
|
||||||
imports = [inputs.nixvim.homeManagerModules.nixvim];
|
imports = [inputs.nixvim.homeManagerModules.nixvim];
|
||||||
programs.nixvim = {
|
programs.nixvim = pkgs.sneovim.config // {enable = true;};
|
||||||
enable = true;
|
|
||||||
plugins = {
|
|
||||||
fugitive.enable = true;
|
|
||||||
oil.enable = true;
|
|
||||||
surround.enable = true;
|
|
||||||
todo-comments.enable = true;
|
|
||||||
trouble.enable = true;
|
|
||||||
ts-context-commentstring.enable = true;
|
|
||||||
navic = {
|
|
||||||
enable = true;
|
|
||||||
lsp.autoAttach = true;
|
|
||||||
};
|
|
||||||
which-key.enable = true;
|
|
||||||
lualine = {
|
|
||||||
enable = true;
|
|
||||||
sections = {
|
|
||||||
lualine_c = [
|
|
||||||
{
|
|
||||||
name =
|
|
||||||
rawLua
|
|
||||||
/*
|
|
||||||
lua
|
|
||||||
*/
|
|
||||||
''
|
|
||||||
function(bufnr)
|
|
||||||
local opts = { highlight = true }
|
|
||||||
return require'nvim-navic'.get_location(opts)
|
|
||||||
end,
|
|
||||||
cond = function()
|
|
||||||
return require'nvim-navic'.is_available()
|
|
||||||
end
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
mini = {
|
|
||||||
enable = true;
|
|
||||||
modules = {
|
|
||||||
ai = {};
|
|
||||||
starter = {};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
comment-nvim = {
|
|
||||||
enable = true;
|
|
||||||
preHook = ''
|
|
||||||
require('ts_context_commentstring.integrations.comment_nvim').create_pre_hook()
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
markdown-preview = {
|
|
||||||
enable = true;
|
|
||||||
settings.auto_start = true;
|
|
||||||
};
|
|
||||||
# rest.enable = true;
|
|
||||||
# treesitter-context = {
|
|
||||||
# maxLines = 3;
|
|
||||||
# mode = "topline";
|
|
||||||
# enable = true;
|
|
||||||
# };
|
|
||||||
|
|
||||||
noice = {
|
|
||||||
enable = true;
|
|
||||||
notify.enabled = false;
|
|
||||||
lsp.override = {
|
|
||||||
"vim.lsp.util.convert_input_to_markdown_lines" = true;
|
|
||||||
"vim.lsp.util.stylize_markdown" = true;
|
|
||||||
"cmp.entry.get_documentation" = true;
|
|
||||||
};
|
|
||||||
presets = {
|
|
||||||
bottom_search = false;
|
|
||||||
command_palette = true;
|
|
||||||
long_message_to_split = true;
|
|
||||||
inc_rename = false;
|
|
||||||
lsp_doc_border = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
treesitter = {
|
|
||||||
enable = true;
|
|
||||||
indent = true;
|
|
||||||
folding = true;
|
|
||||||
grammarPackages =
|
|
||||||
pkgs.vimPlugins.nvim-treesitter.allGrammars
|
|
||||||
++ (with pkgs.tree-sitter-grammars; [
|
|
||||||
tree-sitter-just
|
|
||||||
tree-sitter-nu
|
|
||||||
tree-sitter-norg-meta
|
|
||||||
]);
|
|
||||||
};
|
|
||||||
|
|
||||||
telescope = {
|
|
||||||
enable = true;
|
|
||||||
extensions = {
|
|
||||||
undo.enable = true;
|
|
||||||
ui-select.enable = true;
|
|
||||||
fzf-native.enable = true;
|
|
||||||
file_browser.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
fidget = {
|
|
||||||
enable = true;
|
|
||||||
notification.overrideVimNotify = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
dap = {
|
|
||||||
enable = true;
|
|
||||||
extensions = {
|
|
||||||
dap-ui.enable = true;
|
|
||||||
dap-virtual-text.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
nvim-ufo = {
|
|
||||||
enable = true;
|
|
||||||
closeFoldKinds = null;
|
|
||||||
# providerSelector =
|
|
||||||
# /*
|
|
||||||
# lua
|
|
||||||
# */
|
|
||||||
# ''
|
|
||||||
# function(bufnr, filetype, buftype)
|
|
||||||
# return {'treesitter', 'indent'}
|
|
||||||
# end
|
|
||||||
# '';
|
|
||||||
};
|
|
||||||
rustaceanvim = {
|
|
||||||
enable = true;
|
|
||||||
server = {
|
|
||||||
onAttach =
|
|
||||||
/*
|
|
||||||
lua
|
|
||||||
*/
|
|
||||||
''
|
|
||||||
function(client, bufnr)
|
|
||||||
if client.server_capabilities.inlayHintProvider then
|
|
||||||
vim.lsp.inlay_hint.enable(bufnr, true)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
'';
|
|
||||||
settings =
|
|
||||||
/*
|
|
||||||
lua
|
|
||||||
*/
|
|
||||||
''
|
|
||||||
function(project_root)
|
|
||||||
local ra = require('rustaceanvim.config.server')
|
|
||||||
return ra.load_rust_analyzer_settings(project_root, {
|
|
||||||
settings_file_pattern = 'rust-analyzer.json'
|
|
||||||
})
|
|
||||||
end
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
dap = {
|
|
||||||
autoloadConfigurations = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
lsp = {
|
|
||||||
enable = true;
|
|
||||||
servers = {
|
|
||||||
gopls.enable = true;
|
|
||||||
nil_ls = {
|
|
||||||
enable = true;
|
|
||||||
settings.formatting.command = [
|
|
||||||
"${pkgs.alejandra}/bin/alejandra"
|
|
||||||
# "${pkgs.nixfmt}/bin/nixfmt"
|
|
||||||
# "${pkgs.nixpkgs-fmt}/bin/nixpkgs-fmt"
|
|
||||||
];
|
|
||||||
# nix.flake.autoArchive = true;
|
|
||||||
};
|
|
||||||
marksman.enable = true;
|
|
||||||
nushell.enable = true;
|
|
||||||
clangd.enable = true;
|
|
||||||
lua-ls.enable = true;
|
|
||||||
jsonls.enable = true;
|
|
||||||
html.enable = true;
|
|
||||||
pylyzer.enable = true;
|
|
||||||
# rust-analyzer.enable = true;
|
|
||||||
};
|
|
||||||
onAttach =
|
|
||||||
/*
|
|
||||||
lua
|
|
||||||
*/
|
|
||||||
''
|
|
||||||
if client.server_capabilities.inlayHintProvider then
|
|
||||||
vim.lsp.inlay_hint.enable(bufnr, true)
|
|
||||||
end
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
cmp = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
autoEnableSources = true;
|
|
||||||
sources = [
|
|
||||||
{name = "buffer";}
|
|
||||||
{name = "buffer";}
|
|
||||||
{name = "cmdline";}
|
|
||||||
{name = "cmp-clippy";}
|
|
||||||
{name = "cmp-cmdline-history";}
|
|
||||||
{name = "crates";}
|
|
||||||
{name = "dap";}
|
|
||||||
{name = "dictionary";}
|
|
||||||
{name = "fish";}
|
|
||||||
{name = "git";}
|
|
||||||
{name = "luasnip";}
|
|
||||||
{name = "nvim_lsp";}
|
|
||||||
{name = "nvim_lua";}
|
|
||||||
{name = "nvim_lsp_signature_help";}
|
|
||||||
{name = "nvim_lsp_document_symbol";}
|
|
||||||
{name = "path";}
|
|
||||||
{name = "rg";}
|
|
||||||
{name = "spell";}
|
|
||||||
{name = "tmux";}
|
|
||||||
{name = "treesitter";}
|
|
||||||
];
|
|
||||||
view = {
|
|
||||||
entries = {
|
|
||||||
name = "custom";
|
|
||||||
selection_order = "near_cursor";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
window = {
|
|
||||||
completion = {
|
|
||||||
inherit border;
|
|
||||||
};
|
|
||||||
documentation = {
|
|
||||||
inherit border;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
mapping = {
|
|
||||||
# "<CR>" = "cmp.mapping.confirm({select = true})";
|
|
||||||
"<CR>" = "cmp.mapping.confirm()";
|
|
||||||
"<C-Space>" = "cmp.mapping.complete()";
|
|
||||||
"<C-n>" = "cmp.mapping(cmp.mapping.select_next_item(), {'i', 's'})";
|
|
||||||
"<C-p>" = "cmp.mapping(cmp.mapping.select_prev_item(), {'i', 's'})";
|
|
||||||
};
|
|
||||||
snippet.expand =
|
|
||||||
/*
|
|
||||||
lua
|
|
||||||
*/
|
|
||||||
''
|
|
||||||
function(args)
|
|
||||||
require('luasnip').lsp_expand(args.body)
|
|
||||||
end
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
globals = {
|
|
||||||
mapleader = " ";
|
|
||||||
};
|
|
||||||
colorschemes = {
|
|
||||||
catppuccin = {
|
|
||||||
enable = true;
|
|
||||||
flavour = "mocha";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
keymaps = mkMappings {
|
|
||||||
normal = {
|
|
||||||
"<C-l>" = "[[<cmd>Outline<cr>]]";
|
|
||||||
"<C-w>\"" = "[[<cmd>split<cr>]]";
|
|
||||||
"<C-w>%" = "[[<cmd>vsplit<cr>]]";
|
|
||||||
"gh" = "[[<cmd>Octo actions<cr>]]";
|
|
||||||
"<leader>\"" = ''[["+]]'';
|
|
||||||
"<leader>c" = "[[<cmd>ChatGPT<cr>]]";
|
|
||||||
"<leader>dr" = "[[<cmd>RustLsp debuggables<cr>]]";
|
|
||||||
# "<leader>ee" = "[[<cmd>Rest run<cr>]]";
|
|
||||||
"<leader>ee" = "[[<Plug>RestNvim]]";
|
|
||||||
"<leader>el" = "[[<cmd>Rest run last<cr>]]";
|
|
||||||
"<leader>hh" = "[[<cmd>DevdocsOpenFloat<cr>]]";
|
|
||||||
"<leader>hl" = "[[<cmd>DevdocsToggle<cr>]]";
|
|
||||||
"<leader><leader>" = "'<c-^>'";
|
|
||||||
"<leader>n" = "[[<cmd>bnext<cr>]]";
|
|
||||||
"<leader>o" = "[[<cmd>TroubleToggle<cr>]]";
|
|
||||||
"<leader>p" = "[[<cmd>bprev<cr>]]";
|
|
||||||
"<leader>q" = "[[<cmd>bw<cr>]]";
|
|
||||||
"<leader>nn" = "[[<cmd>Neorg<cr>]]";
|
|
||||||
"vff" = "[[<cmd>vertical Gdiffsplit<cr>]]";
|
|
||||||
|
|
||||||
"<C-k>" = "vim.lsp.buf.definition";
|
|
||||||
"<C-\\>" = "require('FTerm').toggle";
|
|
||||||
"F" = "function() vim.lsp.buf.format({ async = true }) end";
|
|
||||||
"gi" = "require'telescope.builtin'.lsp_implementations";
|
|
||||||
"<leader>a" = "vim.lsp.buf.code_action";
|
|
||||||
"<leader>bb" = "require'dap'.toggle_breakpoint";
|
|
||||||
"<leader>du" = "require'dapui'.toggle";
|
|
||||||
"<leader>fb" = "require'telescope'.extensions.file_browser.file_browser";
|
|
||||||
"<leader>ff" = "require'telescope.builtin'.find_files";
|
|
||||||
"<leader>gg" = "require'telescope.builtin'.live_grep";
|
|
||||||
"<leader>;" = "require'telescope.builtin'.buffers";
|
|
||||||
};
|
|
||||||
terminal = {
|
|
||||||
"<C-\\>" = "require('FTerm').toggle";
|
|
||||||
};
|
|
||||||
insert = {
|
|
||||||
"<C-\\>" = "require('FTerm').toggle";
|
|
||||||
};
|
|
||||||
visual = {
|
|
||||||
"L" = "[[:'<,'>!sort -u<cr>]]";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
autoCmd = [
|
|
||||||
{
|
|
||||||
event = ["BufEnter" "BufWinEnter"];
|
|
||||||
pattern = "*.norg";
|
|
||||||
command = "set conceallevel=3";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
event = ["BufWinLeave"];
|
|
||||||
pattern = "?*";
|
|
||||||
command = "mkview!";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
event = ["BufWinEnter"];
|
|
||||||
pattern = "?*";
|
|
||||||
command = "silent! loadview!";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
extraConfigLua = let
|
|
||||||
codelldb =
|
|
||||||
if device.isLinux
|
|
||||||
then pkgs.vscode-extensions.vadimcn.vscode-lldb.adapter
|
|
||||||
else null;
|
|
||||||
liblldb =
|
|
||||||
if device.isLinux
|
|
||||||
then "${codelldb}/lldb/lib/liblldb.so"
|
|
||||||
# else if device.isMac then
|
|
||||||
# "${codelldb}/lldb/lib/liblldb.dylib"
|
|
||||||
else null;
|
|
||||||
in
|
|
||||||
/*
|
|
||||||
lua
|
|
||||||
*/
|
|
||||||
''
|
|
||||||
function catcher(callback)
|
|
||||||
do
|
|
||||||
success, output = pcall(callback)
|
|
||||||
if not success then
|
|
||||||
print("Failed to setup: " .. output)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
do
|
|
||||||
function setup()
|
|
||||||
require'neotest'.setup({
|
|
||||||
adapters = {
|
|
||||||
require('rustaceanvim.neotest'),
|
|
||||||
}
|
|
||||||
})
|
|
||||||
end
|
|
||||||
success, output = pcall(setup)
|
|
||||||
if not success then
|
|
||||||
print("Failed to setup neotest: " .. output)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
catcher(require('rest-nvim').setup)
|
|
||||||
|
|
||||||
|
|
||||||
-- require('telescope').load_extension("dap")
|
|
||||||
-- require('telescope').load_extension("rest")
|
|
||||||
require('telescope').load_extension("neorg")
|
|
||||||
|
|
||||||
require("copilot").setup({
|
|
||||||
suggestion = {
|
|
||||||
enabled = true,
|
|
||||||
auto_trigger = true,
|
|
||||||
keymap = {
|
|
||||||
accept = "<C-l>",
|
|
||||||
}
|
|
||||||
},
|
|
||||||
panel = { enabled = true },
|
|
||||||
})
|
|
||||||
|
|
||||||
catcher(require('crates').setup)
|
|
||||||
catcher(require('outline').setup)
|
|
||||||
|
|
||||||
require('FTerm').setup({
|
|
||||||
border = 'single',
|
|
||||||
dimensions = {
|
|
||||||
height = 0.99,
|
|
||||||
width = 0.95,
|
|
||||||
},
|
|
||||||
cmd = "${pkgs.fish}/bin/fish",
|
|
||||||
blend = 10,
|
|
||||||
})
|
|
||||||
|
|
||||||
require('neorg').setup({
|
|
||||||
load = {
|
|
||||||
["core.defaults"] = {},
|
|
||||||
["core.completion"] = { config = { engine = "nvim-cmp", name = "[Norg]" } },
|
|
||||||
["core.concealer"] = {
|
|
||||||
config = { icon_preset = "diamond" }
|
|
||||||
},
|
|
||||||
["core.keybinds"] = {
|
|
||||||
-- https://github.com/nvim-neorg/neorg/blob/main/lua/neorg/modules/core/keybinds/keybinds.lua
|
|
||||||
config = {
|
|
||||||
default_keybinds = true,
|
|
||||||
neorg_leader = "<leader>n",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
["core.dirman"] = {
|
|
||||||
config = {
|
|
||||||
default_workspace = "Notes",
|
|
||||||
workspaces = {
|
|
||||||
Notes = "~/Nextcloud/Notes",
|
|
||||||
Work = "~/Nextcloud/Work",
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
require('chatgpt').setup({
|
|
||||||
api_key_cmd = "rbw get platform.openai.com",
|
|
||||||
})
|
|
||||||
|
|
||||||
require('octo').setup({
|
|
||||||
use_local_fs = false,
|
|
||||||
enable_builtin = false,
|
|
||||||
default_remote = {"upstream", "origin"};
|
|
||||||
default_merge_method = "squash";
|
|
||||||
})
|
|
||||||
|
|
||||||
local rr_dap = require('nvim-dap-rr')
|
|
||||||
rr_dap.setup({
|
|
||||||
mappings = {
|
|
||||||
continue = "<F7>"
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
local dap = require'dap';
|
|
||||||
dap.configurations.rust = { rr_dap.get_rust_config() }
|
|
||||||
dap.configurations.cpp = { rr_dap.get_config() }
|
|
||||||
|
|
||||||
if not vim.g.neovide then
|
|
||||||
require('neoscroll').setup()
|
|
||||||
else
|
|
||||||
vim.o.guifont = "Hasklug Nerd Font Mono:h13"
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
-- do
|
|
||||||
-- function setup()
|
|
||||||
-- local capabilities = vim.lsp.protocol.make_client_capabilities()
|
|
||||||
-- capabilities.textDocument.foldingRange = {
|
|
||||||
-- dynamicRegistration = false,
|
|
||||||
-- lineFoldingOnly = true
|
|
||||||
-- }
|
|
||||||
-- -- local language_servers = require("lspconfig").util.available_servers() -- or list servers manually like {'gopls', 'clangd'}
|
|
||||||
-- local language_servers = {"nil_ls"};
|
|
||||||
-- for _, ls in ipairs(language_servers) do
|
|
||||||
-- require('lspconfig')[ls].setup({
|
|
||||||
-- capabilities = capabilities
|
|
||||||
-- -- you can add other fields for setting up lsp server in this table
|
|
||||||
-- })
|
|
||||||
-- end
|
|
||||||
-- end
|
|
||||||
-- success, output = pcall(setup)
|
|
||||||
-- if not success then
|
|
||||||
-- print("Failed to setup lspconfig folds: " .. output)
|
|
||||||
-- end
|
|
||||||
-- end
|
|
||||||
require('lspconfig.ui.windows').default_options.border = 'single'
|
|
||||||
|
|
||||||
catcher(require('nvim_context_vt').setup)
|
|
||||||
catcher(function()
|
|
||||||
require('nvim-devdocs').setup({
|
|
||||||
ensure_installed = {"nix", "rust"},
|
|
||||||
float_win = {
|
|
||||||
relative = "editor",
|
|
||||||
height = 80,
|
|
||||||
width = 100,
|
|
||||||
border = "rounded",
|
|
||||||
},
|
|
||||||
after_open = function()
|
|
||||||
vim.o.conceallevel = 3
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
end)
|
|
||||||
vim.g.rustaceanvim.tools = { enable_clippy = false };
|
|
||||||
'';
|
|
||||||
package = pkgs.neovim-nightly;
|
|
||||||
options = {
|
|
||||||
shell = "sh";
|
|
||||||
number = true;
|
|
||||||
relativenumber = true;
|
|
||||||
tabstop = 4;
|
|
||||||
softtabstop = 4;
|
|
||||||
shiftwidth = 4;
|
|
||||||
expandtab = true;
|
|
||||||
hidden = true;
|
|
||||||
smartcase = true;
|
|
||||||
termguicolors = true;
|
|
||||||
signcolumn = "yes";
|
|
||||||
wrap = true;
|
|
||||||
completeopt = "menu,menuone,popup,noselect";
|
|
||||||
undodir = "${config.xdg.cacheHome}/undodir";
|
|
||||||
undofile = true;
|
|
||||||
viewoptions = "cursor,folds";
|
|
||||||
concealcursor = "n";
|
|
||||||
foldlevelstart = 99;
|
|
||||||
};
|
|
||||||
extraPlugins = with pkgs.vimPlugins; [
|
|
||||||
# neorg
|
|
||||||
neorg
|
|
||||||
neorg-telescope
|
|
||||||
|
|
||||||
# Wut
|
|
||||||
ChatGPT-nvim
|
|
||||||
|
|
||||||
# UI and UX
|
|
||||||
vim-abolish
|
|
||||||
octo-nvim
|
|
||||||
neoscroll-nvim
|
|
||||||
|
|
||||||
# Debuggging
|
|
||||||
nvim-dap-rr
|
|
||||||
|
|
||||||
# Treesitter stuff
|
|
||||||
outline-nvim
|
|
||||||
|
|
||||||
# lsp stuff
|
|
||||||
copilot-lua
|
|
||||||
crates-nvim
|
|
||||||
luasnip
|
|
||||||
|
|
||||||
# No more postman
|
|
||||||
rest-nvim
|
|
||||||
|
|
||||||
# UI
|
|
||||||
nvim-web-devicons
|
|
||||||
|
|
||||||
# Utils
|
|
||||||
FTerm-nvim
|
|
||||||
plenary-nvim
|
|
||||||
vim-speeddating
|
|
||||||
|
|
||||||
# Testing
|
|
||||||
neotest
|
|
||||||
|
|
||||||
# Helper libs
|
|
||||||
webapi-vim
|
|
||||||
|
|
||||||
# Treesitter
|
|
||||||
nvim_context_vt
|
|
||||||
nvim-devdocs
|
|
||||||
|
|
||||||
pkgs.tree-sitter-grammars.tree-sitter-just
|
|
||||||
pkgs.tree-sitter-grammars.tree-sitter-nu
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,6 +48,7 @@ in {
|
|||||||
set -gw mode-keys vi
|
set -gw mode-keys vi
|
||||||
set -g status-keys vi
|
set -g status-keys vi
|
||||||
set -g allow-passthrough on
|
set -g allow-passthrough on
|
||||||
|
set -g visual-activity off
|
||||||
set -ga update-environment TERM
|
set -ga update-environment TERM
|
||||||
set -ga update-environment TERM_PROGRAM
|
set -ga update-environment TERM_PROGRAM
|
||||||
set -sg escape-time 10
|
set -sg escape-time 10
|
||||||
|
|||||||
578
flake.lock
generated
578
flake.lock
generated
@@ -199,7 +199,30 @@
|
|||||||
},
|
},
|
||||||
"devshell": {
|
"devshell": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_9",
|
"flake-utils": "flake-utils_8",
|
||||||
|
"nixpkgs": [
|
||||||
|
"neovim",
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711099426,
|
||||||
|
"narHash": "sha256-HzpgM/wc3aqpnHJJ2oDqPBkNsqWbW0WfWUO8lKu8nGk=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "devshell",
|
||||||
|
"rev": "2d45b54ca4a183f2fdcf4b19c895b64fbf620ee8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "devshell",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"devshell_2": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils_12",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixvim",
|
"nixvim",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
@@ -276,6 +299,20 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_3": {
|
"flake-compat_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696426674,
|
||||||
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
|
"revCount": 57,
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat_4": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1696426674,
|
"lastModified": 1696426674,
|
||||||
@@ -291,7 +328,39 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_4": {
|
"flake-compat_5": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696426674,
|
||||||
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat_6": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696426674,
|
||||||
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat_7": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1696426674,
|
"lastModified": 1696426674,
|
||||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
@@ -305,7 +374,7 @@
|
|||||||
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_5": {
|
"flake-compat_8": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1696426674,
|
"lastModified": 1696426674,
|
||||||
@@ -384,7 +453,8 @@
|
|||||||
"flake-parts_4": {
|
"flake-parts_4": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": [
|
"nixpkgs-lib": [
|
||||||
"neovim-nightly-overlay",
|
"neovim",
|
||||||
|
"nixvim",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -403,6 +473,71 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts_5": {
|
"flake-parts_5": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"neovim",
|
||||||
|
"nnn",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709336216,
|
||||||
|
"narHash": "sha256-Dt/wOWeW6Sqm11Yh+2+t0dfEWxoMxGBvv3JpIocFl9E=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "f7b3c975cf067e56e7cda6cb098ebe3fb4d74ca2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_6": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"neovim",
|
||||||
|
"nnn",
|
||||||
|
"hercules-ci-effects",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709336216,
|
||||||
|
"narHash": "sha256-Dt/wOWeW6Sqm11Yh+2+t0dfEWxoMxGBvv3JpIocFl9E=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "f7b3c975cf067e56e7cda6cb098ebe3fb4d74ca2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "flake-parts",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_7": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"neovim-nightly-overlay",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709336216,
|
||||||
|
"narHash": "sha256-Dt/wOWeW6Sqm11Yh+2+t0dfEWxoMxGBvv3JpIocFl9E=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "f7b3c975cf067e56e7cda6cb098ebe3fb4d74ca2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_8": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": [
|
"nixpkgs-lib": [
|
||||||
"neovim-nightly-overlay",
|
"neovim-nightly-overlay",
|
||||||
@@ -423,7 +558,7 @@
|
|||||||
"type": "indirect"
|
"type": "indirect"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts_6": {
|
"flake-parts_9": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": [
|
"nixpkgs-lib": [
|
||||||
"nixvim",
|
"nixvim",
|
||||||
@@ -466,6 +601,60 @@
|
|||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_11"
|
"systems": "systems_11"
|
||||||
},
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1701680307,
|
||||||
|
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_11": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_13"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1701680307,
|
||||||
|
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_12": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_14"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1701680307,
|
||||||
|
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_13": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_15"
|
||||||
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710146030,
|
"lastModified": 1710146030,
|
||||||
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
@@ -480,9 +669,9 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_11": {
|
"flake-utils_14": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_12"
|
"systems": "systems_16"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1705309234,
|
"lastModified": 1705309234,
|
||||||
@@ -498,9 +687,9 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_12": {
|
"flake-utils_15": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_13"
|
"systems": "systems_17"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710146030,
|
"lastModified": 1710146030,
|
||||||
@@ -516,9 +705,9 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_13": {
|
"flake-utils_16": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_14"
|
"systems": "systems_18"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1709126324,
|
"lastModified": 1709126324,
|
||||||
@@ -664,11 +853,11 @@
|
|||||||
"systems": "systems_10"
|
"systems": "systems_10"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1701680307,
|
"lastModified": 1710146030,
|
||||||
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -700,6 +889,29 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"gitignore_2": {
|
"gitignore_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"neovim",
|
||||||
|
"nixvim",
|
||||||
|
"pre-commit-hooks",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709087332,
|
||||||
|
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"gitignore_3": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixvim",
|
"nixvim",
|
||||||
@@ -723,7 +935,30 @@
|
|||||||
},
|
},
|
||||||
"hercules-ci-effects": {
|
"hercules-ci-effects": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": "flake-parts_5",
|
"flake-parts": "flake-parts_6",
|
||||||
|
"nixpkgs": [
|
||||||
|
"neovim",
|
||||||
|
"nnn",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1710478346,
|
||||||
|
"narHash": "sha256-Xjf8BdnQG0tLhPMlqQdwCIjOp7Teox0DP3N/jjyiGM4=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "hercules-ci-effects",
|
||||||
|
"rev": "64e7763d72c1e4c1e5e6472640615b6ae2d40fbf",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "hercules-ci-effects",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hercules-ci-effects_2": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": "flake-parts_8",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"neovim-nightly-overlay",
|
"neovim-nightly-overlay",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
@@ -766,16 +1001,38 @@
|
|||||||
"home-manager_2": {
|
"home-manager_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
"neovim",
|
||||||
"nixvim",
|
"nixvim",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1711133180,
|
"lastModified": 1711604890,
|
||||||
"narHash": "sha256-WJOahf+6115+GMl3wUfURu8fszuNeJLv9qAWFQl3Vmo=",
|
"narHash": "sha256-vbI/gxRTq/gHW1Q8z6D/7JG/qGNl3JTimUDX+MwnC3A=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "1c2c5e4cabba4c43504ef0f8cc3f3dfa284e2dbb",
|
"rev": "3142bdcc470e1e291e1fbe942fd69e06bd00c5df",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"home-manager_3": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711604890,
|
||||||
|
"narHash": "sha256-vbI/gxRTq/gHW1Q8z6D/7JG/qGNl3JTimUDX+MwnC3A=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "3142bdcc470e1e291e1fbe942fd69e06bd00c5df",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -918,9 +1175,55 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"neovim": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nixvim": "nixvim",
|
||||||
|
"nnn": "nnn",
|
||||||
|
"nvim-devdocs": "nvim-devdocs",
|
||||||
|
"systems": "systems_12"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1,
|
||||||
|
"narHash": "sha256-H6RUC5dnGvIy2vi5Fi9w/k9nPolNKzpZGIg4iod+XUI=",
|
||||||
|
"path": "./neovim",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"path": "./neovim",
|
||||||
|
"type": "path"
|
||||||
|
}
|
||||||
|
},
|
||||||
"neovim-flake": {
|
"neovim-flake": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_8",
|
"flake-utils": "flake-utils_10",
|
||||||
|
"nixpkgs": [
|
||||||
|
"neovim",
|
||||||
|
"nnn",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"dir": "contrib",
|
||||||
|
"lastModified": 1711669189,
|
||||||
|
"narHash": "sha256-VVRFhOKS/MmhV2u6av2e9Qzg4WE24vEmrW/JKed6tlo=",
|
||||||
|
"owner": "neovim",
|
||||||
|
"repo": "neovim",
|
||||||
|
"rev": "e2224a7933b6e30ab6efb0b7ad4e3f26da57c226",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"dir": "contrib",
|
||||||
|
"owner": "neovim",
|
||||||
|
"repo": "neovim",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"neovim-flake_2": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils_11",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"neovim-nightly-overlay",
|
"neovim-nightly-overlay",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
@@ -944,10 +1247,10 @@
|
|||||||
},
|
},
|
||||||
"neovim-nightly-overlay": {
|
"neovim-nightly-overlay": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_3",
|
"flake-compat": "flake-compat_6",
|
||||||
"flake-parts": "flake-parts_4",
|
"flake-parts": "flake-parts_7",
|
||||||
"hercules-ci-effects": "hercules-ci-effects",
|
"hercules-ci-effects": "hercules-ci-effects_2",
|
||||||
"neovim-flake": "neovim-flake",
|
"neovim-flake": "neovim-flake_2",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
@@ -967,6 +1270,28 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nix-darwin": {
|
"nix-darwin": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"neovim",
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711591334,
|
||||||
|
"narHash": "sha256-9d5ilxxq4CXw44eFw8VFrRneAKex7D8xjn95mwZjgf4=",
|
||||||
|
"owner": "lnl7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"rev": "f0dd0838c3558b59dc3b726d8ab89f5b5e35c297",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "lnl7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix-darwin_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
@@ -986,7 +1311,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nix-darwin_2": {
|
"nix-darwin_3": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixvim",
|
"nixvim",
|
||||||
@@ -994,11 +1319,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710717205,
|
"lastModified": 1711591334,
|
||||||
"narHash": "sha256-Wf3gHh5uV6W1TV/A8X8QJf99a5ypDSugY4sNtdJDe0A=",
|
"narHash": "sha256-9d5ilxxq4CXw44eFw8VFrRneAKex7D8xjn95mwZjgf4=",
|
||||||
"owner": "lnl7",
|
"owner": "lnl7",
|
||||||
"repo": "nix-darwin",
|
"repo": "nix-darwin",
|
||||||
"rev": "bcc8afd06e237df060c85bad6af7128e05fd61a3",
|
"rev": "f0dd0838c3558b59dc3b726d8ab89f5b5e35c297",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1138,11 +1463,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_5": {
|
"nixpkgs_5": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1711163522,
|
"lastModified": 1711523803,
|
||||||
"narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=",
|
"narHash": "sha256-UKcYiHWHQynzj6CN/vTcix4yd1eCu1uFdsuarupdCQQ=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4",
|
"rev": "2726f127c15a4cc9810843b96cad73c7eb39e443",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1155,21 +1480,22 @@
|
|||||||
"nixvim": {
|
"nixvim": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"devshell": "devshell",
|
"devshell": "devshell",
|
||||||
"flake-compat": "flake-compat_4",
|
"flake-compat": "flake-compat_3",
|
||||||
"flake-parts": "flake-parts_6",
|
"flake-parts": "flake-parts_4",
|
||||||
"home-manager": "home-manager_2",
|
"home-manager": "home-manager_2",
|
||||||
"nix-darwin": "nix-darwin_2",
|
"nix-darwin": "nix-darwin",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
"neovim",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"pre-commit-hooks": "pre-commit-hooks"
|
"pre-commit-hooks": "pre-commit-hooks"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1711284540,
|
"lastModified": 1711630555,
|
||||||
"narHash": "sha256-DTzi4ujZoxM3ZXStCwD6Lph3FdGtkBlvfYsDCRITjfA=",
|
"narHash": "sha256-jslStwDlRwVZLwcFkExWegOGYv/Dn9q7yoocUX7AsIg=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixvim",
|
"repo": "nixvim",
|
||||||
"rev": "e7a3461fefd983ae3443e9aa849e9d1566ab47e4",
|
"rev": "acb917fbf2bc9ce9c556516d8a1f257709b3cf1e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1178,6 +1504,57 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixvim_2": {
|
||||||
|
"inputs": {
|
||||||
|
"devshell": "devshell_2",
|
||||||
|
"flake-compat": "flake-compat_7",
|
||||||
|
"flake-parts": "flake-parts_9",
|
||||||
|
"home-manager": "home-manager_3",
|
||||||
|
"nix-darwin": "nix-darwin_3",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"pre-commit-hooks": "pre-commit-hooks_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711630555,
|
||||||
|
"narHash": "sha256-jslStwDlRwVZLwcFkExWegOGYv/Dn9q7yoocUX7AsIg=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixvim",
|
||||||
|
"rev": "acb917fbf2bc9ce9c556516d8a1f257709b3cf1e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixvim",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nnn": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat_5",
|
||||||
|
"flake-parts": "flake-parts_5",
|
||||||
|
"hercules-ci-effects": "hercules-ci-effects",
|
||||||
|
"neovim-flake": "neovim-flake",
|
||||||
|
"nixpkgs": [
|
||||||
|
"neovim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711670984,
|
||||||
|
"narHash": "sha256-orA2u5/LqpdPCvYUZnQStarJjjRMylTDYS8JKf97ZfU=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "neovim-nightly-overlay",
|
||||||
|
"rev": "6a5e80c188d3f3763a624df1610294b4a11764a0",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "neovim-nightly-overlay",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nur": {
|
"nur": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1711290879,
|
"lastModified": 1711290879,
|
||||||
@@ -1209,26 +1586,44 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nvim-devdocs_2": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1703234230,
|
||||||
|
"narHash": "sha256-qqtBNfBBGyxMsHL3UXu+MF/UyfVAubG+6fnwLK9kY9Q=",
|
||||||
|
"owner": "luckasRanarison",
|
||||||
|
"repo": "nvim-devdocs",
|
||||||
|
"rev": "521d24661ffe6d1ba025debea2675c765a9c1ee1",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "luckasRanarison",
|
||||||
|
"repo": "nvim-devdocs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"pre-commit-hooks": {
|
"pre-commit-hooks": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_5",
|
"flake-compat": "flake-compat_4",
|
||||||
"flake-utils": "flake-utils_10",
|
"flake-utils": "flake-utils_9",
|
||||||
"gitignore": "gitignore_2",
|
"gitignore": "gitignore_2",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
"neovim",
|
||||||
"nixvim",
|
"nixvim",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"nixpkgs-stable": [
|
"nixpkgs-stable": [
|
||||||
|
"neovim",
|
||||||
"nixvim",
|
"nixvim",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710923068,
|
"lastModified": 1711519547,
|
||||||
"narHash": "sha256-6hOpUiuxuwpXXc/xfJsBUJeqqgGI+JMJuLo45aG3cKc=",
|
"narHash": "sha256-Q7YmSCUJmDl71fJv/zD9lrOCJ1/SE/okZ2DsrmRjzhY=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "pre-commit-hooks.nix",
|
"repo": "pre-commit-hooks.nix",
|
||||||
"rev": "e611897ddfdde3ed3eaac4758635d7177ff78673",
|
"rev": "7d47a32e5cd1ea481fab33c516356ce27c8cef4a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1268,6 +1663,34 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"pre-commit-hooks_2": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat_8",
|
||||||
|
"flake-utils": "flake-utils_13",
|
||||||
|
"gitignore": "gitignore_3",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nixpkgs-stable": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711519547,
|
||||||
|
"narHash": "sha256-Q7YmSCUJmDl71fJv/zD9lrOCJ1/SE/okZ2DsrmRjzhY=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "pre-commit-hooks.nix",
|
||||||
|
"rev": "7d47a32e5cd1ea481fab33c516356ce27c8cef4a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "pre-commit-hooks.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"anyrun": "anyrun",
|
"anyrun": "anyrun",
|
||||||
@@ -1280,12 +1703,13 @@
|
|||||||
"ironbar": "ironbar",
|
"ironbar": "ironbar",
|
||||||
"lanzaboote": "lanzaboote",
|
"lanzaboote": "lanzaboote",
|
||||||
"music-player": "music-player",
|
"music-player": "music-player",
|
||||||
|
"neovim": "neovim",
|
||||||
"neovim-nightly-overlay": "neovim-nightly-overlay",
|
"neovim-nightly-overlay": "neovim-nightly-overlay",
|
||||||
"nix-darwin": "nix-darwin",
|
"nix-darwin": "nix-darwin_2",
|
||||||
"nix-index-database": "nix-index-database",
|
"nix-index-database": "nix-index-database",
|
||||||
"nixpkgs": "nixpkgs_5",
|
"nixpkgs": "nixpkgs_5",
|
||||||
"nixpkgs-main": "nixpkgs-main",
|
"nixpkgs-main": "nixpkgs-main",
|
||||||
"nixvim": "nixvim",
|
"nixvim": "nixvim_2",
|
||||||
"nur": "nur",
|
"nur": "nur",
|
||||||
"rust-overlay": "rust-overlay_6",
|
"rust-overlay": "rust-overlay_6",
|
||||||
"subflakes": "subflakes",
|
"subflakes": "subflakes",
|
||||||
@@ -1406,7 +1830,7 @@
|
|||||||
},
|
},
|
||||||
"rust-overlay_6": {
|
"rust-overlay_6": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_11",
|
"flake-utils": "flake-utils_14",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
@@ -1452,11 +1876,11 @@
|
|||||||
},
|
},
|
||||||
"subflakes": {
|
"subflakes": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_12",
|
"flake-utils": "flake-utils_15",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"nvim-devdocs": "nvim-devdocs"
|
"nvim-devdocs": "nvim-devdocs_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1,
|
"lastModified": 1,
|
||||||
@@ -1559,6 +1983,66 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"systems_15": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_16": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_17": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_18": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"systems_2": {
|
"systems_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
@@ -1682,7 +2166,7 @@
|
|||||||
"zjstatus": {
|
"zjstatus": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"crane": "crane_4",
|
"crane": "crane_4",
|
||||||
"flake-utils": "flake-utils_13",
|
"flake-utils": "flake-utils_16",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -69,6 +69,11 @@
|
|||||||
url = "github:oxalica/rust-overlay";
|
url = "github:oxalica/rust-overlay";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
neovim = {
|
||||||
|
url = "path:./neovim";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = {
|
outputs = {
|
||||||
@@ -158,5 +163,7 @@
|
|||||||
import ./linux/device.nix {
|
import ./linux/device.nix {
|
||||||
inherit devices inputs nixpkgs home-manager overlays;
|
inherit devices inputs nixpkgs home-manager overlays;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
packages = inputs.neovim.packages;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
5
justfile
5
justfile
@@ -1,7 +1,6 @@
|
|||||||
set dotenv-load
|
set dotenv-load
|
||||||
|
|
||||||
# clean := `git diff-index --quiet --cached HEAD --`
|
# clean := `git diff-index --quiet --cached HEAD --`
|
||||||
|
|
||||||
[macos]
|
[macos]
|
||||||
install: local
|
install: local
|
||||||
nix run nix-darwin -- switch --flake .
|
nix run nix-darwin -- switch --flake .
|
||||||
@@ -19,3 +18,7 @@ home:
|
|||||||
|
|
||||||
local:
|
local:
|
||||||
nix flake lock --update-input subflakes
|
nix flake lock --update-input subflakes
|
||||||
|
nix flake lock --update-input neovim
|
||||||
|
|
||||||
|
nvim:
|
||||||
|
nix run .#neovim
|
||||||
|
|||||||
480
neovim/flake.lock
generated
Normal file
480
neovim/flake.lock
generated
Normal file
@@ -0,0 +1,480 @@
|
|||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"devshell": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711099426,
|
||||||
|
"narHash": "sha256-HzpgM/wc3aqpnHJJ2oDqPBkNsqWbW0WfWUO8lKu8nGk=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "devshell",
|
||||||
|
"rev": "2d45b54ca4a183f2fdcf4b19c895b64fbf620ee8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "devshell",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696426674,
|
||||||
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
|
"revCount": 57,
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat_2": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696426674,
|
||||||
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat_3": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696426674,
|
||||||
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709336216,
|
||||||
|
"narHash": "sha256-Dt/wOWeW6Sqm11Yh+2+t0dfEWxoMxGBvv3JpIocFl9E=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "f7b3c975cf067e56e7cda6cb098ebe3fb4d74ca2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"nnn",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709336216,
|
||||||
|
"narHash": "sha256-Dt/wOWeW6Sqm11Yh+2+t0dfEWxoMxGBvv3JpIocFl9E=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "f7b3c975cf067e56e7cda6cb098ebe3fb4d74ca2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_3": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"nnn",
|
||||||
|
"hercules-ci-effects",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709336216,
|
||||||
|
"narHash": "sha256-Dt/wOWeW6Sqm11Yh+2+t0dfEWxoMxGBvv3JpIocFl9E=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "f7b3c975cf067e56e7cda6cb098ebe3fb4d74ca2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "flake-parts",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1701680307,
|
||||||
|
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_2": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1710146030,
|
||||||
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_3": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_3"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1701680307,
|
||||||
|
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"gitignore": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"pre-commit-hooks",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709087332,
|
||||||
|
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hercules-ci-effects": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": "flake-parts_3",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nnn",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1710478346,
|
||||||
|
"narHash": "sha256-Xjf8BdnQG0tLhPMlqQdwCIjOp7Teox0DP3N/jjyiGM4=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "hercules-ci-effects",
|
||||||
|
"rev": "64e7763d72c1e4c1e5e6472640615b6ae2d40fbf",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "hercules-ci-effects",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"home-manager": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711604890,
|
||||||
|
"narHash": "sha256-vbI/gxRTq/gHW1Q8z6D/7JG/qGNl3JTimUDX+MwnC3A=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "3142bdcc470e1e291e1fbe942fd69e06bd00c5df",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"neovim-flake": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils_3",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nnn",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"dir": "contrib",
|
||||||
|
"lastModified": 1711669189,
|
||||||
|
"narHash": "sha256-VVRFhOKS/MmhV2u6av2e9Qzg4WE24vEmrW/JKed6tlo=",
|
||||||
|
"owner": "neovim",
|
||||||
|
"repo": "neovim",
|
||||||
|
"rev": "e2224a7933b6e30ab6efb0b7ad4e3f26da57c226",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"dir": "contrib",
|
||||||
|
"owner": "neovim",
|
||||||
|
"repo": "neovim",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix-darwin": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711591334,
|
||||||
|
"narHash": "sha256-9d5ilxxq4CXw44eFw8VFrRneAKex7D8xjn95mwZjgf4=",
|
||||||
|
"owner": "lnl7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"rev": "f0dd0838c3558b59dc3b726d8ab89f5b5e35c297",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "lnl7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711523803,
|
||||||
|
"narHash": "sha256-UKcYiHWHQynzj6CN/vTcix4yd1eCu1uFdsuarupdCQQ=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "2726f127c15a4cc9810843b96cad73c7eb39e443",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixvim": {
|
||||||
|
"inputs": {
|
||||||
|
"devshell": "devshell",
|
||||||
|
"flake-compat": "flake-compat",
|
||||||
|
"flake-parts": "flake-parts",
|
||||||
|
"home-manager": "home-manager",
|
||||||
|
"nix-darwin": "nix-darwin",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"pre-commit-hooks": "pre-commit-hooks"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711630555,
|
||||||
|
"narHash": "sha256-jslStwDlRwVZLwcFkExWegOGYv/Dn9q7yoocUX7AsIg=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixvim",
|
||||||
|
"rev": "acb917fbf2bc9ce9c556516d8a1f257709b3cf1e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixvim",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nnn": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat_3",
|
||||||
|
"flake-parts": "flake-parts_2",
|
||||||
|
"hercules-ci-effects": "hercules-ci-effects",
|
||||||
|
"neovim-flake": "neovim-flake",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711670984,
|
||||||
|
"narHash": "sha256-orA2u5/LqpdPCvYUZnQStarJjjRMylTDYS8JKf97ZfU=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "neovim-nightly-overlay",
|
||||||
|
"rev": "6a5e80c188d3f3763a624df1610294b4a11764a0",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "neovim-nightly-overlay",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nvim-devdocs": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1703234230,
|
||||||
|
"narHash": "sha256-qqtBNfBBGyxMsHL3UXu+MF/UyfVAubG+6fnwLK9kY9Q=",
|
||||||
|
"owner": "luckasRanarison",
|
||||||
|
"repo": "nvim-devdocs",
|
||||||
|
"rev": "521d24661ffe6d1ba025debea2675c765a9c1ee1",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "luckasRanarison",
|
||||||
|
"repo": "nvim-devdocs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"pre-commit-hooks": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat_2",
|
||||||
|
"flake-utils": "flake-utils_2",
|
||||||
|
"gitignore": "gitignore",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nixpkgs-stable": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711519547,
|
||||||
|
"narHash": "sha256-Q7YmSCUJmDl71fJv/zD9lrOCJ1/SE/okZ2DsrmRjzhY=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "pre-commit-hooks.nix",
|
||||||
|
"rev": "7d47a32e5cd1ea481fab33c516356ce27c8cef4a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "pre-commit-hooks.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
|
"nixvim": "nixvim",
|
||||||
|
"nnn": "nnn",
|
||||||
|
"nvim-devdocs": "nvim-devdocs",
|
||||||
|
"systems": "systems_4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_4": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
||||||
47
neovim/flake.nix
Normal file
47
neovim/flake.nix
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
{
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
|
systems.url = "github:nix-systems/default";
|
||||||
|
nixvim = {
|
||||||
|
url = "github:nix-community/nixvim";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
nnn = {
|
||||||
|
url = "github:nix-community/neovim-nightly-overlay";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
nvim-devdocs.url = "github:luckasRanarison/nvim-devdocs";
|
||||||
|
nvim-devdocs.flake = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = {
|
||||||
|
self,
|
||||||
|
nixpkgs,
|
||||||
|
systems,
|
||||||
|
nixvim,
|
||||||
|
nnn,
|
||||||
|
...
|
||||||
|
} @ inputs: let
|
||||||
|
forEachSystem = nixpkgs.lib.genAttrs (import systems);
|
||||||
|
nvim = forEachSystem (system:
|
||||||
|
import ./nvim.nix {
|
||||||
|
pkgs = import nixpkgs {
|
||||||
|
inherit system;
|
||||||
|
overlays = import ./overlays.nix {
|
||||||
|
inherit inputs;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
});
|
||||||
|
in rec {
|
||||||
|
packages = forEachSystem (system: rec {
|
||||||
|
neovim = nvim.${system}.neovim;
|
||||||
|
default = neovim;
|
||||||
|
});
|
||||||
|
overlays = {
|
||||||
|
default = prev: final: {
|
||||||
|
sneovim = packages.${final.system}.neovim;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
590
neovim/nvim.nix
Normal file
590
neovim/nvim.nix
Normal file
@@ -0,0 +1,590 @@
|
|||||||
|
{pkgs, ...}: let
|
||||||
|
mkMappings = mappings:
|
||||||
|
[]
|
||||||
|
++ (pkgs.lib.optionals (builtins.hasAttr "normal" mappings) (mkMode mappings.normal "n"))
|
||||||
|
++ (pkgs.lib.optionals (builtins.hasAttr "terminal" mappings) (mkMode mappings.terminal "t"))
|
||||||
|
++ (pkgs.lib.optionals (builtins.hasAttr "insert" mappings) (mkMode mappings.insert "i"))
|
||||||
|
++ (pkgs.lib.optionals (builtins.hasAttr "visual" mappings) (mkMode mappings.visual "v"))
|
||||||
|
++ (pkgs.lib.optionals (builtins.hasAttr "global" mappings) (mkMode mappings.global ""));
|
||||||
|
mkMode = mappings: mode:
|
||||||
|
pkgs.lib.mapAttrsToList
|
||||||
|
(key: value: {
|
||||||
|
key = key;
|
||||||
|
action = value;
|
||||||
|
mode = mode;
|
||||||
|
lua = true;
|
||||||
|
})
|
||||||
|
mappings;
|
||||||
|
border = ["╭" "─" "╮" "│" "╯" "─" "╰" "│"];
|
||||||
|
rawLua = lua: {
|
||||||
|
"__raw" = ''
|
||||||
|
${lua}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
in rec {
|
||||||
|
neovim = (pkgs.nixvim.makeNixvim config) // {config = config;};
|
||||||
|
config = {
|
||||||
|
plugins = {
|
||||||
|
fugitive.enable = true;
|
||||||
|
oil.enable = true;
|
||||||
|
surround.enable = true;
|
||||||
|
todo-comments.enable = true;
|
||||||
|
trouble.enable = true;
|
||||||
|
ts-context-commentstring.enable = true;
|
||||||
|
which-key.enable = true;
|
||||||
|
|
||||||
|
navic = {
|
||||||
|
enable = true;
|
||||||
|
lsp.autoAttach = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
image = {
|
||||||
|
enable = true;
|
||||||
|
backend = "kitty";
|
||||||
|
tmuxShowOnlyInActiveWindow = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
mini = {
|
||||||
|
enable = true;
|
||||||
|
modules = {
|
||||||
|
ai = {};
|
||||||
|
starter = {};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
lualine = {
|
||||||
|
enable = true;
|
||||||
|
sections = {
|
||||||
|
lualine_c = [
|
||||||
|
{
|
||||||
|
name =
|
||||||
|
rawLua
|
||||||
|
/*
|
||||||
|
lua
|
||||||
|
*/
|
||||||
|
''
|
||||||
|
function(bufnr)
|
||||||
|
local opts = { highlight = true }
|
||||||
|
return require'nvim-navic'.get_location(opts)
|
||||||
|
end,
|
||||||
|
cond = function()
|
||||||
|
return require'nvim-navic'.is_available()
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
comment = {
|
||||||
|
enable = true;
|
||||||
|
settings.pre_hook = ''
|
||||||
|
require('ts_context_commentstring.integrations.comment_nvim').create_pre_hook()
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
markdown-preview = {
|
||||||
|
enable = true;
|
||||||
|
settings.auto_start = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
noice = {
|
||||||
|
enable = true;
|
||||||
|
notify.enabled = false;
|
||||||
|
lsp.override = {
|
||||||
|
"vim.lsp.util.convert_input_to_markdown_lines" = true;
|
||||||
|
"vim.lsp.util.stylize_markdown" = true;
|
||||||
|
"cmp.entry.get_documentation" = true;
|
||||||
|
};
|
||||||
|
presets = {
|
||||||
|
bottom_search = false;
|
||||||
|
command_palette = true;
|
||||||
|
long_message_to_split = true;
|
||||||
|
inc_rename = false;
|
||||||
|
lsp_doc_border = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
treesitter = {
|
||||||
|
enable = true;
|
||||||
|
indent = true;
|
||||||
|
folding = true;
|
||||||
|
grammarPackages =
|
||||||
|
pkgs.vimPlugins.nvim-treesitter.allGrammars
|
||||||
|
++ (with pkgs.tree-sitter-grammars; [
|
||||||
|
tree-sitter-just
|
||||||
|
tree-sitter-nu
|
||||||
|
tree-sitter-norg-meta
|
||||||
|
]);
|
||||||
|
};
|
||||||
|
|
||||||
|
telescope = {
|
||||||
|
enable = true;
|
||||||
|
extensions = {
|
||||||
|
undo.enable = true;
|
||||||
|
ui-select.enable = true;
|
||||||
|
fzf-native.enable = true;
|
||||||
|
file_browser.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
fidget = {
|
||||||
|
enable = true;
|
||||||
|
notification.overrideVimNotify = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
dap = {
|
||||||
|
enable = true;
|
||||||
|
extensions = {
|
||||||
|
dap-ui.enable = true;
|
||||||
|
dap-virtual-text.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nvim-ufo = {
|
||||||
|
enable = true;
|
||||||
|
closeFoldKinds = null;
|
||||||
|
# providerSelector =
|
||||||
|
# /*
|
||||||
|
# lua
|
||||||
|
# */
|
||||||
|
# ''
|
||||||
|
# function(bufnr, filetype, buftype)
|
||||||
|
# return {'treesitter', 'indent'}
|
||||||
|
# end
|
||||||
|
# '';
|
||||||
|
};
|
||||||
|
rustaceanvim = {
|
||||||
|
enable = true;
|
||||||
|
server = {
|
||||||
|
onAttach =
|
||||||
|
/*
|
||||||
|
lua
|
||||||
|
*/
|
||||||
|
''
|
||||||
|
function(client, bufnr)
|
||||||
|
if client.server_capabilities.inlayHintProvider then
|
||||||
|
vim.lsp.inlay_hint.enable(bufnr, true)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
settings =
|
||||||
|
/*
|
||||||
|
lua
|
||||||
|
*/
|
||||||
|
''
|
||||||
|
function(project_root)
|
||||||
|
local ra = require('rustaceanvim.config.server')
|
||||||
|
return ra.load_rust_analyzer_settings(project_root, {
|
||||||
|
settings_file_pattern = 'rust-analyzer.json'
|
||||||
|
})
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
dap = {
|
||||||
|
autoloadConfigurations = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
lsp = {
|
||||||
|
enable = true;
|
||||||
|
servers = {
|
||||||
|
gopls.enable = true;
|
||||||
|
nil_ls = {
|
||||||
|
enable = true;
|
||||||
|
settings.formatting.command = [
|
||||||
|
"${pkgs.alejandra}/bin/alejandra"
|
||||||
|
# "${pkgs.nixfmt}/bin/nixfmt"
|
||||||
|
# "${pkgs.nixpkgs-fmt}/bin/nixpkgs-fmt"
|
||||||
|
];
|
||||||
|
# nix.flake.autoArchive = true;
|
||||||
|
};
|
||||||
|
marksman.enable = true;
|
||||||
|
nushell.enable = true;
|
||||||
|
clangd.enable = true;
|
||||||
|
lua-ls.enable = true;
|
||||||
|
jsonls.enable = true;
|
||||||
|
html.enable = true;
|
||||||
|
# pylyzer.enable = true;
|
||||||
|
# rust-analyzer.enable = true;
|
||||||
|
};
|
||||||
|
onAttach =
|
||||||
|
/*
|
||||||
|
lua
|
||||||
|
*/
|
||||||
|
''
|
||||||
|
if client.server_capabilities.inlayHintProvider then
|
||||||
|
vim.lsp.inlay_hint.enable(bufnr, true)
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
cmp = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
autoEnableSources = true;
|
||||||
|
sources = [
|
||||||
|
{name = "buffer";}
|
||||||
|
{name = "buffer";}
|
||||||
|
{name = "cmdline";}
|
||||||
|
{name = "cmp-clippy";}
|
||||||
|
{name = "cmp-cmdline-history";}
|
||||||
|
{name = "crates";}
|
||||||
|
{name = "dap";}
|
||||||
|
{name = "dictionary";}
|
||||||
|
{name = "fish";}
|
||||||
|
{name = "git";}
|
||||||
|
{name = "luasnip";}
|
||||||
|
{name = "nvim_lsp";}
|
||||||
|
{name = "nvim_lua";}
|
||||||
|
{name = "nvim_lsp_signature_help";}
|
||||||
|
{name = "nvim_lsp_document_symbol";}
|
||||||
|
{name = "path";}
|
||||||
|
{name = "rg";}
|
||||||
|
{name = "spell";}
|
||||||
|
{name = "tmux";}
|
||||||
|
{name = "treesitter";}
|
||||||
|
];
|
||||||
|
view = {
|
||||||
|
entries = {
|
||||||
|
name = "custom";
|
||||||
|
selection_order = "near_cursor";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
window = {
|
||||||
|
completion = {
|
||||||
|
inherit border;
|
||||||
|
};
|
||||||
|
documentation = {
|
||||||
|
inherit border;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
mapping = {
|
||||||
|
# "<CR>" = "cmp.mapping.confirm({select = true})";
|
||||||
|
"<CR>" = "cmp.mapping.confirm()";
|
||||||
|
"<C-Space>" = "cmp.mapping.complete()";
|
||||||
|
"<C-n>" = "cmp.mapping(cmp.mapping.select_next_item(), {'i', 's'})";
|
||||||
|
"<C-p>" = "cmp.mapping(cmp.mapping.select_prev_item(), {'i', 's'})";
|
||||||
|
};
|
||||||
|
snippet.expand =
|
||||||
|
/*
|
||||||
|
lua
|
||||||
|
*/
|
||||||
|
''
|
||||||
|
function(args)
|
||||||
|
require('luasnip').lsp_expand(args.body)
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
globals = {
|
||||||
|
mapleader = " ";
|
||||||
|
};
|
||||||
|
colorschemes = {
|
||||||
|
catppuccin = {
|
||||||
|
enable = true;
|
||||||
|
flavour = "mocha";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
keymaps = mkMappings {
|
||||||
|
normal = {
|
||||||
|
"<C-l>" = "[[<cmd>Outline<cr>]]";
|
||||||
|
"<C-w>\"" = "[[<cmd>split<cr>]]";
|
||||||
|
"<C-w>%" = "[[<cmd>vsplit<cr>]]";
|
||||||
|
"gh" = "[[<cmd>Octo actions<cr>]]";
|
||||||
|
"<leader>\"" = ''[["+]]'';
|
||||||
|
"<leader>c" = "[[<cmd>ChatGPT<cr>]]";
|
||||||
|
"<leader>dr" = "[[<cmd>RustLsp debuggables<cr>]]";
|
||||||
|
# "<leader>ee" = "[[<cmd>Rest run<cr>]]";
|
||||||
|
"<leader>ee" = "[[<Plug>RestNvim]]";
|
||||||
|
"<leader>el" = "[[<cmd>Rest run last<cr>]]";
|
||||||
|
"<leader>hh" = "[[<cmd>DevdocsOpenFloat<cr>]]";
|
||||||
|
"<leader>hl" = "[[<cmd>DevdocsToggle<cr>]]";
|
||||||
|
"<leader><leader>" = "'<c-^>'";
|
||||||
|
"<leader>n" = "[[<cmd>bnext<cr>]]";
|
||||||
|
"<leader>o" = "[[<cmd>TroubleToggle<cr>]]";
|
||||||
|
"<leader>p" = "[[<cmd>bprev<cr>]]";
|
||||||
|
"<leader>q" = "[[<cmd>bw<cr>]]";
|
||||||
|
"<leader>nn" = "[[<cmd>Neorg<cr>]]";
|
||||||
|
"vff" = "[[<cmd>vertical Gdiffsplit<cr>]]";
|
||||||
|
|
||||||
|
"<C-k>" = "vim.lsp.buf.definition";
|
||||||
|
"<C-\\>" = "require('FTerm').toggle";
|
||||||
|
"F" = "function() vim.lsp.buf.format({ async = true }) end";
|
||||||
|
"gi" = "require'telescope.builtin'.lsp_implementations";
|
||||||
|
"<leader>a" = "vim.lsp.buf.code_action";
|
||||||
|
"<leader>bb" = "require'dap'.toggle_breakpoint";
|
||||||
|
"<leader>du" = "require'dapui'.toggle";
|
||||||
|
"<leader>fb" = "require'telescope'.extensions.file_browser.file_browser";
|
||||||
|
"<leader>ff" = "require'telescope.builtin'.find_files";
|
||||||
|
"<leader>gg" = "require'telescope.builtin'.live_grep";
|
||||||
|
"<leader>;" = "require'telescope.builtin'.buffers";
|
||||||
|
};
|
||||||
|
terminal = {
|
||||||
|
"<C-\\>" = "require('FTerm').toggle";
|
||||||
|
};
|
||||||
|
insert = {
|
||||||
|
"<C-\\>" = "require('FTerm').toggle";
|
||||||
|
};
|
||||||
|
visual = {
|
||||||
|
"L" = "[[:'<,'>!sort -u<cr>]]";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
autoCmd = [
|
||||||
|
{
|
||||||
|
event = ["BufEnter" "BufWinEnter"];
|
||||||
|
pattern = "*.norg";
|
||||||
|
command = "set conceallevel=3";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
event = ["BufWinLeave"];
|
||||||
|
pattern = "?*";
|
||||||
|
command = "mkview!";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
event = ["BufWinEnter"];
|
||||||
|
pattern = "?*";
|
||||||
|
command = "silent! loadview!";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
extraConfigLua = let
|
||||||
|
codelldb =
|
||||||
|
if pkgs.stdenv.isLinux
|
||||||
|
then pkgs.vscode-extensions.vadimcn.vscode-lldb.adapter
|
||||||
|
else null;
|
||||||
|
liblldb =
|
||||||
|
if pkgs.stdenv.isLinux
|
||||||
|
then "${codelldb}/lldb/lib/liblldb.so"
|
||||||
|
# else if device.isMac then
|
||||||
|
# "${codelldb}/lldb/lib/liblldb.dylib"
|
||||||
|
else null;
|
||||||
|
in
|
||||||
|
/*
|
||||||
|
lua
|
||||||
|
*/
|
||||||
|
''
|
||||||
|
function catcher(callback)
|
||||||
|
do
|
||||||
|
success, output = pcall(callback)
|
||||||
|
if not success then
|
||||||
|
print("Failed to setup: " .. output)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
do
|
||||||
|
function setup()
|
||||||
|
require'neotest'.setup({
|
||||||
|
adapters = {
|
||||||
|
require('rustaceanvim.neotest'),
|
||||||
|
}
|
||||||
|
})
|
||||||
|
end
|
||||||
|
success, output = pcall(setup)
|
||||||
|
if not success then
|
||||||
|
print("Failed to setup neotest: " .. output)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
catcher(require('rest-nvim').setup)
|
||||||
|
|
||||||
|
|
||||||
|
-- require('telescope').load_extension("dap")
|
||||||
|
-- require('telescope').load_extension("rest")
|
||||||
|
require('telescope').load_extension("neorg")
|
||||||
|
|
||||||
|
require("copilot").setup({
|
||||||
|
suggestion = {
|
||||||
|
enabled = true,
|
||||||
|
auto_trigger = true,
|
||||||
|
keymap = {
|
||||||
|
accept = "<C-l>",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
panel = { enabled = true },
|
||||||
|
})
|
||||||
|
|
||||||
|
catcher(require('crates').setup)
|
||||||
|
catcher(require('outline').setup)
|
||||||
|
|
||||||
|
require('FTerm').setup({
|
||||||
|
border = 'single',
|
||||||
|
dimensions = {
|
||||||
|
height = 0.99,
|
||||||
|
width = 0.95,
|
||||||
|
},
|
||||||
|
cmd = "${pkgs.fish}/bin/fish",
|
||||||
|
blend = 10,
|
||||||
|
})
|
||||||
|
|
||||||
|
require('neorg').setup({
|
||||||
|
load = {
|
||||||
|
["core.defaults"] = {},
|
||||||
|
["core.completion"] = { config = { engine = "nvim-cmp", name = "[Norg]" } },
|
||||||
|
["core.concealer"] = {
|
||||||
|
config = { icon_preset = "diamond" }
|
||||||
|
},
|
||||||
|
["core.integrations.image"] = {
|
||||||
|
tmux_show_only_in_active_window = true,
|
||||||
|
},
|
||||||
|
["core.keybinds"] = {
|
||||||
|
-- https://github.com/nvim-neorg/neorg/blob/main/lua/neorg/modules/core/keybinds/keybinds.lua
|
||||||
|
config = {
|
||||||
|
default_keybinds = true,
|
||||||
|
neorg_leader = "<leader>n",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
["core.dirman"] = {
|
||||||
|
config = {
|
||||||
|
default_workspace = "Notes",
|
||||||
|
workspaces = {
|
||||||
|
Notes = "~/Nextcloud/Notes",
|
||||||
|
Work = "~/Nextcloud/Work",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
require('chatgpt').setup({
|
||||||
|
api_key_cmd = "rbw get platform.openai.com",
|
||||||
|
})
|
||||||
|
|
||||||
|
require('octo').setup({
|
||||||
|
use_local_fs = false,
|
||||||
|
enable_builtin = false,
|
||||||
|
default_remote = {"upstream", "origin"};
|
||||||
|
default_merge_method = "squash";
|
||||||
|
})
|
||||||
|
|
||||||
|
local rr_dap = require('nvim-dap-rr')
|
||||||
|
rr_dap.setup({
|
||||||
|
mappings = {
|
||||||
|
continue = "<F7>"
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
local dap = require'dap';
|
||||||
|
dap.configurations.rust = { rr_dap.get_rust_config() }
|
||||||
|
dap.configurations.cpp = { rr_dap.get_config() }
|
||||||
|
|
||||||
|
if not vim.g.neovide then
|
||||||
|
require('neoscroll').setup()
|
||||||
|
else
|
||||||
|
vim.o.guifont = "Hasklug Nerd Font Mono:h13"
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
-- do
|
||||||
|
-- function setup()
|
||||||
|
-- local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
|
-- capabilities.textDocument.foldingRange = {
|
||||||
|
-- dynamicRegistration = false,
|
||||||
|
-- lineFoldingOnly = true
|
||||||
|
-- }
|
||||||
|
-- -- local language_servers = require("lspconfig").util.available_servers() -- or list servers manually like {'gopls', 'clangd'}
|
||||||
|
-- local language_servers = {"nil_ls"};
|
||||||
|
-- for _, ls in ipairs(language_servers) do
|
||||||
|
-- require('lspconfig')[ls].setup({
|
||||||
|
-- capabilities = capabilities
|
||||||
|
-- -- you can add other fields for setting up lsp server in this table
|
||||||
|
-- })
|
||||||
|
-- end
|
||||||
|
-- end
|
||||||
|
-- success, output = pcall(setup)
|
||||||
|
-- if not success then
|
||||||
|
-- print("Failed to setup lspconfig folds: " .. output)
|
||||||
|
-- end
|
||||||
|
-- end
|
||||||
|
require('lspconfig.ui.windows').default_options.border = 'single'
|
||||||
|
|
||||||
|
catcher(require('nvim_context_vt').setup)
|
||||||
|
catcher(function()
|
||||||
|
require('nvim-devdocs').setup({
|
||||||
|
ensure_installed = {"nix", "rust"},
|
||||||
|
float_win = {
|
||||||
|
relative = "editor",
|
||||||
|
height = 80,
|
||||||
|
width = 100,
|
||||||
|
border = "rounded",
|
||||||
|
},
|
||||||
|
after_open = function()
|
||||||
|
vim.o.conceallevel = 3
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
end)
|
||||||
|
vim.g.rustaceanvim.tools = { enable_clippy = false };
|
||||||
|
'';
|
||||||
|
package = pkgs.neovim-nightly;
|
||||||
|
options = {
|
||||||
|
shell = "sh";
|
||||||
|
number = true;
|
||||||
|
relativenumber = true;
|
||||||
|
tabstop = 4;
|
||||||
|
softtabstop = 4;
|
||||||
|
shiftwidth = 4;
|
||||||
|
expandtab = true;
|
||||||
|
hidden = true;
|
||||||
|
smartcase = true;
|
||||||
|
termguicolors = true;
|
||||||
|
signcolumn = "yes";
|
||||||
|
wrap = true;
|
||||||
|
completeopt = "menu,menuone,popup,noselect";
|
||||||
|
# undodir = "${config.xdg.cacheHome}/undodir";
|
||||||
|
undofile = true;
|
||||||
|
viewoptions = "cursor,folds";
|
||||||
|
concealcursor = "n";
|
||||||
|
foldlevelstart = 99;
|
||||||
|
};
|
||||||
|
extraPlugins = with pkgs.vimPlugins; [
|
||||||
|
# neorg
|
||||||
|
neorg
|
||||||
|
neorg-telescope
|
||||||
|
|
||||||
|
# Wut
|
||||||
|
ChatGPT-nvim
|
||||||
|
|
||||||
|
# UI and UX
|
||||||
|
vim-abolish
|
||||||
|
octo-nvim
|
||||||
|
neoscroll-nvim
|
||||||
|
|
||||||
|
# Debuggging
|
||||||
|
nvim-dap-rr
|
||||||
|
|
||||||
|
# Treesitter stuff
|
||||||
|
outline-nvim
|
||||||
|
|
||||||
|
# lsp stuff
|
||||||
|
copilot-lua
|
||||||
|
crates-nvim
|
||||||
|
luasnip
|
||||||
|
|
||||||
|
# No more postman
|
||||||
|
rest-nvim
|
||||||
|
|
||||||
|
# UI
|
||||||
|
nvim-web-devicons
|
||||||
|
|
||||||
|
# Utils
|
||||||
|
FTerm-nvim
|
||||||
|
plenary-nvim
|
||||||
|
vim-speeddating
|
||||||
|
|
||||||
|
# Testing
|
||||||
|
neotest
|
||||||
|
|
||||||
|
# Helper libs
|
||||||
|
webapi-vim
|
||||||
|
|
||||||
|
# Treesitter
|
||||||
|
nvim_context_vt
|
||||||
|
nvim-devdocs
|
||||||
|
|
||||||
|
pkgs.tree-sitter-grammars.tree-sitter-just
|
||||||
|
pkgs.tree-sitter-grammars.tree-sitter-nu
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
113
neovim/overlays.nix
Normal file
113
neovim/overlays.nix
Normal file
@@ -0,0 +1,113 @@
|
|||||||
|
{inputs, ...}: let
|
||||||
|
vimPlugins = final: prev: {
|
||||||
|
vimPlugins =
|
||||||
|
prev.vimPlugins
|
||||||
|
// {
|
||||||
|
comfortable-motion = final.pkgs.vimUtils.buildVimPlugin {
|
||||||
|
name = "comfortable-motion";
|
||||||
|
# TODO: Move to subflake
|
||||||
|
src = final.pkgs.fetchFromGitHub {
|
||||||
|
owner = "yuttie";
|
||||||
|
repo = "comfortable-motion.vim";
|
||||||
|
rev = "master";
|
||||||
|
sha256 = "sha256-S1LJXmShhpCJIg/FEPx3jFbmPpS/1U4MAQN2RY/nkI0";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
nvim-dap-rr = final.pkgs.vimUtils.buildVimPlugin {
|
||||||
|
name = "nvim-dap-rr";
|
||||||
|
# TODO: Move to subflake
|
||||||
|
src = final.pkgs.fetchFromGitHub {
|
||||||
|
owner = "jonboh";
|
||||||
|
repo = "nvim-dap-rr";
|
||||||
|
rev = "master";
|
||||||
|
sha256 = "sha256-JNztLTSyHmEmh3xT4WR0cpP25vjZ4A6aQbnU49U6+Ss";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
sqls-nvim = final.pkgs.vimUtils.buildVimPlugin {
|
||||||
|
name = "sqls-nvim";
|
||||||
|
# TODO: Move to subflake
|
||||||
|
src = final.pkgs.fetchFromGitHub {
|
||||||
|
owner = "nanotee";
|
||||||
|
repo = "sqls.nvim";
|
||||||
|
rev = "master";
|
||||||
|
sha256 = "sha256-jKFut6NZAf/eIeIkY7/2EsjsIhvZQKCKAJzeQ6XSr0s";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
outline-nvim = final.pkgs.vimUtils.buildVimPlugin {
|
||||||
|
name = "outline-nvim";
|
||||||
|
# TODO: Move to subflake
|
||||||
|
src = final.pkgs.fetchFromGitHub {
|
||||||
|
owner = "hedyhli";
|
||||||
|
repo = "outline.nvim";
|
||||||
|
rev = "master";
|
||||||
|
sha256 = "sha256-HaxfnvgFy7fpa2CS7/dQhf6dK9+Js7wP5qGdIeXLGPY";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
nvim-devdocs = final.pkgs.vimUtils.buildVimPlugin {
|
||||||
|
pname = "nvim-devdocs";
|
||||||
|
version = "0.4.1";
|
||||||
|
src = inputs.nvim-devdocs;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
tree-sitter-grammars = final: prev: {
|
||||||
|
tree-sitter-grammars =
|
||||||
|
prev.tree-sitter-grammars
|
||||||
|
// {
|
||||||
|
tree-sitter-just = final.pkgs.tree-sitter.buildGrammar {
|
||||||
|
language = "just";
|
||||||
|
version = "1";
|
||||||
|
# TODO: Move to subflake
|
||||||
|
src = final.pkgs.fetchFromGitHub {
|
||||||
|
owner = "IndianBoy42";
|
||||||
|
repo = "tree-sitter-just";
|
||||||
|
rev = "613b3fd39183bec94bc741addc5beb6e6f17969f";
|
||||||
|
sha256 = "sha256-OBlXwWriE6cdGn0dhpfSMnJ6Rx1Z7KcXehaamdi/TxQ";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
tree-sitter-nu = final.pkgs.tree-sitter.buildGrammar {
|
||||||
|
language = "nu";
|
||||||
|
version = "0.0.1";
|
||||||
|
# TODO: Move to subflake
|
||||||
|
src = final.pkgs.fetchFromGitHub {
|
||||||
|
owner = "nushell";
|
||||||
|
repo = "tree-sitter-nu";
|
||||||
|
rev = "c5b7816043992b1cdc1462a889bc74dc08576fa6";
|
||||||
|
sha256 = "sha256-P+ixE359fAW7R5UJLwvMsmju7UFmJw5SN+kbMEw7Kz0=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
rest-nvim-overlay = final: prev: let
|
||||||
|
# TODO: Move to subflake
|
||||||
|
rest-nvim-src = final.pkgs.fetchFromGitHub {
|
||||||
|
owner = "rest-nvim";
|
||||||
|
repo = "rest.nvim";
|
||||||
|
# rev = "64175b161b61b6807b4c6f3f18dd884325cf04e0";
|
||||||
|
# Before v2 release
|
||||||
|
rev = "v1.0.0";
|
||||||
|
# sha256 = "sha256-3EC0j/hEbdQ8nJU0I+LGmE/zNnglO/FrP/6POer0338";
|
||||||
|
# sha256 = "sha256-3EC0j/hEbdQ8nJU0I+LGmE/zNnglO/FrP/6POer0339";
|
||||||
|
sha256 = "sha256-jSY5WXx5tQAD0ZefPbg2luHywGAMcB9wdUTy6Av3xnY";
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
vimPlugins =
|
||||||
|
prev.vimPlugins
|
||||||
|
// {
|
||||||
|
rest-nvim = final.vimUtils.buildVimPlugin {
|
||||||
|
pname = "rest.nvim";
|
||||||
|
version = "1.0.0";
|
||||||
|
src = rest-nvim-src;
|
||||||
|
# version = "scm-1";
|
||||||
|
# rockspecVersion = "0.2-1";
|
||||||
|
# buildInputs = with final.pkgs.lua51Packages; [lua lua-curl mimetypes nvim-nio xml2lua];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in [
|
||||||
|
inputs.nnn.overlay
|
||||||
|
inputs.nixvim.overlays.default
|
||||||
|
vimPlugins
|
||||||
|
tree-sitter-grammars
|
||||||
|
rest-nvim-overlay
|
||||||
|
]
|
||||||
@@ -308,7 +308,9 @@ in [
|
|||||||
shell-scipts
|
shell-scipts
|
||||||
misc-applications
|
misc-applications
|
||||||
inputs.neovim-nightly-overlay.overlay
|
inputs.neovim-nightly-overlay.overlay
|
||||||
|
inputs.nixvim.overlays.default
|
||||||
inputs.nur.overlay
|
inputs.nur.overlay
|
||||||
|
inputs.neovim.overlays.default
|
||||||
catppuccin
|
catppuccin
|
||||||
inputs.rust-overlay.overlays.default
|
inputs.rust-overlay.overlays.default
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -1,24 +0,0 @@
|
|||||||
diff --git a/src/plugins/_lspconfig-modules/servers.nix b/src/plugins/_lspconfig-modules/servers.nix
|
|
||||||
index f553364..3f235e9 100644
|
|
||||||
--- a/src/plugins/_lspconfig-modules/servers.nix
|
|
||||||
+++ b/src/plugins/_lspconfig-modules/servers.nix
|
|
||||||
@@ -96,6 +96,9 @@ let
|
|
||||||
languages = "OCaml";
|
|
||||||
packages = [ pkgs.ocamlPackages.ocaml-lsp ];
|
|
||||||
};
|
|
||||||
+ pylyzer = {
|
|
||||||
+ languages = "Python";
|
|
||||||
+ };
|
|
||||||
pyright = {
|
|
||||||
languages = "Python";
|
|
||||||
};
|
|
||||||
@@ -119,6 +122,9 @@ let
|
|
||||||
else
|
|
||||||
[ python3Packages.ruff-lsp ];
|
|
||||||
};
|
|
||||||
+ sqls = {
|
|
||||||
+ languages = "SQL";
|
|
||||||
+ };
|
|
||||||
taplo = {
|
|
||||||
languages = "TOML";
|
|
||||||
packages = [ taplo ];
|
|
||||||
Reference in New Issue
Block a user