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