{ description = "Neovim configuration"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, flake-utils }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; overlays = [(final: prev: { node-lsp = final.callPackage ./node-lsp {}; })]; }; in { packages.neovim = pkgs.callPackage ./neovim.nix {}; packages.neovim-with-playground = pkgs.callPackage ./neovim.nix { withPlayground = true; }; packages.neovim-with-luadev = pkgs.callPackage ./neovim.nix { withLuadev = true; }; packages.neovim-minimal = (pkgs.callPackage ./neovim.nix {}).minimal; packages.default = self.packages.${system}.neovim; } ); }