fixed neovim package. should work now without problems
This commit is contained in:
+87
-58
@@ -1,9 +1,11 @@
|
|||||||
{ inputs, ... }:
|
|
||||||
{
|
{
|
||||||
flake.modules.homeManager.neovim = { pkgs, config, lib, ... }:
|
inputs,
|
||||||
let
|
...
|
||||||
configHome = "${config.home.homeDirectory}/.config/dotfiles/homes/quirinecker";
|
}:
|
||||||
rlang = pkgs.rWrapper.override {
|
let
|
||||||
|
rlang =
|
||||||
|
pkgs:
|
||||||
|
pkgs.rWrapper.override {
|
||||||
packages = with pkgs.rPackages; [
|
packages = with pkgs.rPackages; [
|
||||||
languageserver
|
languageserver
|
||||||
box
|
box
|
||||||
@@ -13,66 +15,93 @@
|
|||||||
knitr
|
knitr
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
runtimeDependencies = pkgs: [
|
||||||
|
pkgs.cargo
|
||||||
|
pkgs.rustc
|
||||||
|
pkgs.nodejs
|
||||||
|
pkgs.yarn
|
||||||
|
pkgs.unzip
|
||||||
|
pkgs.ripgrep
|
||||||
|
pkgs.fd
|
||||||
|
pkgs.luajitPackages.lua-lsp
|
||||||
|
pkgs.lua-language-server
|
||||||
|
pkgs.nil
|
||||||
|
pkgs.nixfmt
|
||||||
|
pkgs.nixd
|
||||||
|
pkgs.rust-analyzer
|
||||||
|
pkgs.rustfmt
|
||||||
|
pkgs.typescript-language-server
|
||||||
|
pkgs.vue-language-server
|
||||||
|
pkgs.vtsls
|
||||||
|
pkgs.deno
|
||||||
|
pkgs.vscode-langservers-extracted
|
||||||
|
pkgs.yaml-language-server
|
||||||
|
(rlang pkgs)
|
||||||
|
pkgs.jdt-language-server
|
||||||
|
pkgs.tailwindcss-language-server
|
||||||
|
pkgs.pyright
|
||||||
|
pkgs.protols
|
||||||
|
pkgs.clang-tools
|
||||||
|
pkgs.taplo
|
||||||
|
pkgs.tinymist
|
||||||
|
pkgs.dart
|
||||||
|
pkgs.tree-sitter
|
||||||
|
];
|
||||||
|
in
|
||||||
|
{
|
||||||
|
flake.modules.homeManager.neovim =
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
home.sessionVariables = {
|
||||||
|
RUST_SRC_PATH = "${pkgs.rust.packages.stable.rustPlatform.rustLibSrc}";
|
||||||
|
};
|
||||||
|
|
||||||
in
|
programs.neovim.enable = true;
|
||||||
{
|
programs.zathura.enable = true;
|
||||||
home.sessionVariables = {
|
home.packages = runtimeDependencies pkgs;
|
||||||
RUST_SRC_PATH = "${pkgs.rust.packages.stable.rustPlatform.rustLibSrc}";
|
xdg.configFile = {
|
||||||
|
"nvim/init.lua".source = config.lib.file.mkOutOfStoreSymlink ./neovim/init.lua;
|
||||||
|
"nvim/lua".source = config.lib.file.mkOutOfStoreSymlink ./neovim/lua;
|
||||||
|
"nvim/ftplugin".source = config.lib.file.mkOutOfStoreSymlink ./neovim/ftplugin;
|
||||||
|
"nvim/projects".source = config.lib.file.mkOutOfStoreSymlink ./neovim/projects;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Todo: fix vue language server
|
||||||
|
# home.activation.npm-install = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
|
||||||
|
# nix-shell -p nodejs --run "cd ${configHome}/.npm_global && npm install"
|
||||||
|
# '';
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.neovim.enable = true;
|
perSystem = { pkgs, self', ... }: {
|
||||||
programs.zathura.enable = true;
|
packages.neovim-config = pkgs.stdenv.mkDerivation {
|
||||||
home.packages = [
|
pname = "neovim-config";
|
||||||
pkgs.cargo
|
version = "1.0";
|
||||||
pkgs.rustc
|
src = ./neovim;
|
||||||
pkgs.nodejs
|
|
||||||
pkgs.yarn
|
installPhase = ''
|
||||||
pkgs.unzip
|
mkdir -p $out/nvim
|
||||||
pkgs.ripgrep
|
cp -r lua init.lua $out/nvim
|
||||||
pkgs.fd
|
'';
|
||||||
pkgs.luajitPackages.lua-lsp
|
|
||||||
pkgs.lua-language-server
|
|
||||||
pkgs.nil
|
|
||||||
pkgs.nixfmt
|
|
||||||
pkgs.nixd
|
|
||||||
pkgs.rust-analyzer
|
|
||||||
pkgs.rustfmt
|
|
||||||
pkgs.typescript-language-server
|
|
||||||
pkgs.vue-language-server
|
|
||||||
pkgs.vtsls
|
|
||||||
pkgs.deno
|
|
||||||
pkgs.vscode-langservers-extracted
|
|
||||||
pkgs.yaml-language-server
|
|
||||||
rlang
|
|
||||||
pkgs.jdt-language-server
|
|
||||||
pkgs.tailwindcss-language-server
|
|
||||||
pkgs.pyright
|
|
||||||
pkgs.protols
|
|
||||||
pkgs.clang-tools
|
|
||||||
pkgs.taplo
|
|
||||||
pkgs.tinymist
|
|
||||||
pkgs.dart
|
|
||||||
pkgs.tree-sitter
|
|
||||||
];
|
|
||||||
xdg.configFile = {
|
|
||||||
"nvim/init.lua".source = config.lib.file.mkOutOfStoreSymlink ./neovim/init.lua;
|
|
||||||
"nvim/lua".source = config.lib.file.mkOutOfStoreSymlink ./neovim/lua;
|
|
||||||
"nvim/ftplugin".source = config.lib.file.mkOutOfStoreSymlink ./neovim/ftplugin;
|
|
||||||
"nvim/projects".source = config.lib.file.mkOutOfStoreSymlink ./neovim/projects;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# Todo: fix vue language server
|
|
||||||
# home.activation.npm-install = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
|
|
||||||
# nix-shell -p nodejs --run "cd ${configHome}/.npm_global && npm install"
|
|
||||||
# '';
|
|
||||||
};
|
|
||||||
|
|
||||||
perSystem = { pkgs, ... }: {
|
|
||||||
packages.neovim = inputs.wrappers.lib.wrapPackage {
|
packages.neovim = inputs.wrappers.lib.wrapPackage {
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
package = pkgs.neovim;
|
package = pkgs.neovim;
|
||||||
flags = {
|
runtimeInputs = runtimeDependencies pkgs;
|
||||||
"-u" = ./neovim/init.lua;
|
env = {
|
||||||
|
XDG_CONFIG_HOME = "${self'.packages.neovim-config}";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
packages.neovim-slim = inputs.wrappers.lib.wrapPackage {
|
||||||
|
inherit pkgs;
|
||||||
|
package = pkgs.neovim;
|
||||||
|
runtimeInputs = [ ];
|
||||||
|
env = {
|
||||||
|
XDG_CONFIG_HOME = "${self'.packages.neovim-config}";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
flake.modules.nixos.core = { pkgs, ... }: {
|
||||||
|
programs.steam.enable = true;
|
||||||
|
hardware.
|
||||||
|
};
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user