forge.nvim/flake.nix
Barrett Ruth 09463c08b7
ci: add neovim and busted to CI shell
Problem: the CI flake shell lacked `neovim`, so `vimdoc-language-server`
could not resolve builtin Neovim help tags like `|:checkhealth|`.
Also missing `busted`/`nlua` lua packages.

Solution: add `pkgs.neovim` to the `ci` shell and `busted`/`nlua` via
`luajit.withPackages` to both shells, matching the pattern used in
canola.nvim. Revert the vimdoc workaround from the previous commit.
2026-03-28 18:40:16 -04:00

45 lines
1.1 KiB
Nix

{
description = "forge.nvim forge-agnostic git workflow for Neovim";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
systems.url = "github:nix-systems/default";
vimdoc-language-server.url = "github:barrettruth/vimdoc-language-server";
};
outputs =
{
nixpkgs,
systems,
vimdoc-language-server,
...
}:
let
forEachSystem =
f: nixpkgs.lib.genAttrs (import systems) (system: f nixpkgs.legacyPackages.${system});
in
{
formatter = forEachSystem (pkgs: pkgs.nixfmt-tree);
devShells = forEachSystem (
pkgs:
let
commonPackages = [
pkgs.prettier
pkgs.stylua
pkgs.selene
pkgs.lua-language-server
vimdoc-language-server.packages.${pkgs.system}.default
(pkgs.luajit.withPackages (ps: [
ps.busted
ps.nlua
]))
];
in
{
default = pkgs.mkShell { packages = commonPackages; };
ci = pkgs.mkShell { packages = commonPackages ++ [ pkgs.neovim ]; };
}
);
};
}