From 68a7427e800f07d09a85a6014006d67c9350eaeb Mon Sep 17 00:00:00 2001 From: voidarc Date: Thu, 5 Mar 2026 11:11:10 +0000 Subject: [PATCH] changed flake.nix --- flake.nix | 116 +++++++++++++++++++++++++++++++----------------------- 1 file changed, 66 insertions(+), 50 deletions(-) diff --git a/flake.nix b/flake.nix index e50cf07..581ef3c 100644 --- a/flake.nix +++ b/flake.nix @@ -5,62 +5,78 @@ nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; }; - outputs = { self, nixpkgs }: + outputs = + { self, nixpkgs }: let system = "x86_64-linux"; # change if needed pkgs = import nixpkgs { inherit system; }; + pkgList = with pkgs; [ + + # LSPs + lua-language-server + vscode-langservers-extracted + emmet-ls + prettier + black + nixfmt + nil + python313Packages.python-lsp-server + typescript-language-server + tailwindcss-language-server + stylua + nixd + + # other tools + lua5_1 + tree-sitter + ripgrep + gcc + gnumake + imagemagick + luajitPackages.magick + ghostscript + luarocks + + (texlive.combine { + inherit (texlive) + scheme-basic + varwidth + preview + mathtools + amsfonts + amscdx + xcolor + dvisvgm + dvipng + wrapfig + standalone + graphicxbox + amsmath + ulem + hyperref + capt-of + ; + }) + ]; + + nvim-wrapped = pkgs.symlinkJoin { + name = "nvim-with-lsp"; + paths = [ pkgs.neovim ]; + buildInputs = [ pkgs.makeWrapper ]; + postBuild = '' + wrapProgram $out/bin/nvim \ + --prefix PATH : ${pkgs.lib.makeBinPath pkgList} \ + --set TREE_SITTER_LIB_PATH "${pkgs.tree-sitter}/lib" + ''; + }; in { + packages.${system}.default = nvim-wrapped; + devShells.${system}.default = pkgs.mkShell { - packages = with pkgs; [ - # neovim - neovim - - # LSPs - lua-language-server - vscode-langservers-extracted - emmet-ls - prettier - black - nixfmt - nil - python313Packages.python-lsp-server - typescript-language-server - tailwindcss-language-server - stylua - nixd - - # other tools - lua5_1 - tree-sitter - ripgrep - gcc - gnumake - imagemagick - luajitPackages.magick - ghostscript - luarocks - - (texlive.combine { - inherit (texlive) - scheme-basic - varwidth - preview - mathtools - amsfonts - amscdx - xcolor - dvisvgm - dvipng - wrapfig - standalone - graphicxbox - amsmath - ulem - hyperref - capt-of; - }) + packages = [ + nvim-wrapped ]; shellHook = '' @@ -69,4 +85,4 @@ ''; }; }; -} \ No newline at end of file +}