{ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; utils.url = "github:numtide/flake-utils"; tabby-nvim = { url = "github:nanozuki/tabby.nvim?rev=916c9e56d043906a441cd9f905e2ca1f5c4dddb0"; flake = false; }; }; outputs = inputs @ { self, nixpkgs, utils, ... }: utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; overlays = [ (f: p: { vimPlugins = p.vimPlugins // { tabby-nvim = p.vimUtils.buildVimPluginFrom2Nix { name = "tabby-nvim"; src = inputs.tabby-nvim; }; }; }) ]; }; neovim = pkgs.callPackage ./. { }; in { apps.default = { type = "app"; program = "${neovim}/bin/nvim"; }; packages.default = neovim; devShells.default = pkgs.mkShell { packages = [ (neovim.override { enableDevIcons = true; enableTabby = true; }) pkgs.stylua # lua formatter ]; }; overlays = f: p: { myneovim = neovim; }; }); }