Compare commits
2 Commits
c4084faeff
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
878c87430f
|
|||
|
0147f451a8
|
151
flake.nix
151
flake.nix
@@ -5,77 +5,86 @@
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
|
||||
};
|
||||
|
||||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
}: let
|
||||
supportedSystems = ["x86_64-linux" "aarch64-linux"];
|
||||
forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
|
||||
nixpkgsFor = forAllSystems (system: import nixpkgs {inherit system;});
|
||||
in {
|
||||
packages = forAllSystems (system: let
|
||||
pkgs = nixpkgsFor.${system};
|
||||
neovim = import ./nvim-lsp.nix {inherit pkgs;};
|
||||
in {
|
||||
nvim = pkgs.symlinkJoin {
|
||||
name = "nvim";
|
||||
paths = with pkgs;
|
||||
[
|
||||
alejandra
|
||||
ccls
|
||||
gopls
|
||||
luaformatter
|
||||
nixd
|
||||
nixfmt-rfc-style
|
||||
pyright
|
||||
rust-analyzer
|
||||
lua-language-server
|
||||
svls
|
||||
texlab
|
||||
tree-sitter
|
||||
tinymist
|
||||
verible
|
||||
yaml-language-server
|
||||
zls
|
||||
viu
|
||||
chafa
|
||||
ueberzugpp
|
||||
]
|
||||
++ [neovim];
|
||||
};
|
||||
});
|
||||
outputs =
|
||||
{ self
|
||||
, nixpkgs
|
||||
,
|
||||
}:
|
||||
let
|
||||
supportedSystems = [ "x86_64-linux" "aarch64-linux" ];
|
||||
forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
|
||||
nixpkgsFor = forAllSystems (system: import nixpkgs { inherit system; });
|
||||
in
|
||||
{
|
||||
packages = forAllSystems (system:
|
||||
let
|
||||
pkgs = nixpkgsFor.${system};
|
||||
neovim = import ./nvim-lsp.nix { inherit pkgs; };
|
||||
in
|
||||
{
|
||||
nvim = pkgs.symlinkJoin {
|
||||
name = "nvim";
|
||||
paths = with pkgs;
|
||||
[
|
||||
alejandra
|
||||
ccls
|
||||
gopls
|
||||
luaformatter
|
||||
nixd
|
||||
nixfmt-rfc-style
|
||||
pyright
|
||||
rust-analyzer
|
||||
lua-language-server
|
||||
svls
|
||||
texlab
|
||||
tree-sitter
|
||||
tinymist
|
||||
verible
|
||||
yaml-language-server
|
||||
zls
|
||||
viu
|
||||
chafa
|
||||
ueberzugpp
|
||||
]
|
||||
++ [ neovim ];
|
||||
};
|
||||
});
|
||||
|
||||
devShells = forAllSystems (system: let
|
||||
pkgs = nixpkgsFor.${system};
|
||||
in {
|
||||
default = pkgs.mkShell {
|
||||
nativeBuildInputs = [
|
||||
pkgs.alejandra
|
||||
pkgs.ccls
|
||||
pkgs.gopls
|
||||
pkgs.luaformatter
|
||||
pkgs.nixd
|
||||
pkgs.nixfmt-rfc-style
|
||||
pkgs.pyright
|
||||
pkgs.rust-analyzer
|
||||
pkgs.lua-language-server
|
||||
pkgs.svls
|
||||
pkgs.texlab
|
||||
pkgs.tree-sitter
|
||||
pkgs.verible
|
||||
pkgs.zls
|
||||
(import ./nvim-lsp.nix {inherit pkgs;})
|
||||
];
|
||||
};
|
||||
});
|
||||
devShells = forAllSystems (system:
|
||||
let
|
||||
pkgs = nixpkgsFor.${system};
|
||||
in
|
||||
{
|
||||
default = pkgs.mkShell {
|
||||
nativeBuildInputs = [
|
||||
pkgs.alejandra
|
||||
pkgs.ccls
|
||||
pkgs.gopls
|
||||
pkgs.luaformatter
|
||||
pkgs.nixd
|
||||
pkgs.nixfmt-rfc-style
|
||||
pkgs.pyright
|
||||
pkgs.rust-analyzer
|
||||
pkgs.lua-language-server
|
||||
pkgs.svls
|
||||
pkgs.texlab
|
||||
pkgs.tree-sitter
|
||||
pkgs.verible
|
||||
pkgs.zls
|
||||
(import ./nvim-lsp.nix { inherit pkgs; })
|
||||
];
|
||||
};
|
||||
});
|
||||
|
||||
overlays = forAllSystems (system: let
|
||||
pkgs = nixpkgsFor.${system};
|
||||
in {
|
||||
overlay = final: prev: {
|
||||
nvim = self.packages.${system}.nvim;
|
||||
};
|
||||
});
|
||||
defaultPackage = forAllSystems (system: self.packages.${system}.nvim);
|
||||
};
|
||||
overlays = forAllSystems (system:
|
||||
let
|
||||
pkgs = nixpkgsFor.${system};
|
||||
in
|
||||
{
|
||||
overlay = final: prev: {
|
||||
nvim = self.packages.${system}.nvim;
|
||||
};
|
||||
});
|
||||
defaultPackage = forAllSystems (system: self.packages.${system}.nvim);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -182,7 +182,7 @@ cmp.setup({
|
||||
}
|
||||
})
|
||||
|
||||
local servers = { 'pyright', 'rust_analyzer', 'ccls', 'texlab', 'zls', 'gopls', 'yamlls', 'tinymst' }
|
||||
local servers = { 'pyright', 'rust_analyzer', 'ccls', 'texlab', 'zls', 'gopls', 'yamlls' }
|
||||
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||
for _, lsp in pairs(servers) do
|
||||
vim.lsp.config(lsp, {
|
||||
@@ -215,6 +215,7 @@ vim.lsp.config('nixd', {
|
||||
},
|
||||
},
|
||||
})
|
||||
vim.lsp.enable('nixd');
|
||||
|
||||
vim.lsp.config('lua_ls', {
|
||||
capabilities = capabilities,
|
||||
@@ -240,11 +241,13 @@ vim.lsp.config('lua_ls', {
|
||||
},
|
||||
},
|
||||
})
|
||||
vim.lsp.enable('lua_ls');
|
||||
|
||||
vim.lsp.config('verible', {
|
||||
capabilities = capabilities,
|
||||
root_dir = function() return vim.fn.getcwd() end
|
||||
})
|
||||
vim.lsp.enable('verible');
|
||||
|
||||
if vim.fn.exists('+undofile') ~= 0 then
|
||||
local undo_dir = vim.env.HOME .. '/.config/nvim/undo'
|
||||
|
||||
Reference in New Issue
Block a user