{ description = "A very basic flake"; inputs = { nixpkgs.url = "nixpkgs/nixpkgs-unstable"; }; outputs = { self, nixpkgs, }: let supportedSystems = ["x86_64-linux" "aarch64-linux"]; forAllSystems = nixpkgs.lib.genAttrs supportedSystems; nixpkgsFor = forAllSystems (system: import nixpkgs {inherit system;}); pkgs = nixpkgs.legacyPackages.x86_64-linux.pkgs; in { packages = forAllSystems (system: let pkgs = nixpkgsFor.${system}; in { nvim = import ./nvim-lsp.nix {inherit pkgs;}; }); devShells = forAllSystems (system: let pkgs = nixpkgsFor.${system}; in { default = pkgs.mkShell { nativeBuildInputs = [ pkgs.alejandra pkgs.ccls pkgs.gopls pkgs.luaformatter pkgs.nixd pkgs.pyright pkgs.rust-analyzer pkgs.sumneko-lua-language-server pkgs.svls pkgs.texlab pkgs.tree-sitter pkgs.verible pkgs.zls (import ./nvim-lsp.nix {inherit pkgs;}) ]; }; }); defaultPackage = forAllSystems (system: self.packages.${system}.nvim); }; }