ci: nix
This commit is contained in:
parent
2917c4c73f
commit
afd27a269b
3 changed files with 30 additions and 8 deletions
|
|
@ -2,7 +2,8 @@
|
||||||
"runtime.version": "LuaJIT",
|
"runtime.version": "LuaJIT",
|
||||||
"runtime.path": ["lua/?.lua", "lua/?/init.lua"],
|
"runtime.path": ["lua/?.lua", "lua/?/init.lua"],
|
||||||
"diagnostics.globals": ["vim", "jit"],
|
"diagnostics.globals": ["vim", "jit"],
|
||||||
"workspace.library": ["$VIMRUNTIME/lua", "${3rd}/luv/library"],
|
"workspace.library": ["$VIMRUNTIME/lua", "${3rd}/luv/library", "${3rd}/busted/library"],
|
||||||
"workspace.checkThirdParty": false,
|
"workspace.checkThirdParty": false,
|
||||||
|
"workspace.ignoreDir": [".direnv"],
|
||||||
"completion.callSnippet": "Replace"
|
"completion.callSnippet": "Replace"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
25
flake.nix
25
flake.nix
|
|
@ -16,15 +16,26 @@
|
||||||
forEachSystem = f: nixpkgs.lib.genAttrs (import systems) (system: f nixpkgs.legacyPackages.${system});
|
forEachSystem = f: nixpkgs.lib.genAttrs (import systems) (system: f nixpkgs.legacyPackages.${system});
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
formatter = forEachSystem (pkgs: pkgs.nixfmt-tree);
|
||||||
|
|
||||||
devShells = forEachSystem (pkgs: {
|
devShells = forEachSystem (pkgs: {
|
||||||
default = pkgs.mkShell {
|
default =
|
||||||
|
let
|
||||||
|
ts-plugin = pkgs.vimPlugins.nvim-treesitter.withPlugins (p: [ p.diff ]);
|
||||||
|
diff-grammar = pkgs.vimPlugins.nvim-treesitter-parsers.diff;
|
||||||
|
luaEnv = pkgs.luajit.withPackages (ps: with ps; [ busted nlua ]);
|
||||||
|
busted-with-grammar = pkgs.writeShellScriptBin "busted" ''
|
||||||
|
nvim_bin=$(which nvim)
|
||||||
|
tmpdir=$(mktemp -d)
|
||||||
|
trap 'rm -rf "$tmpdir"' EXIT
|
||||||
|
printf '#!/bin/sh\nexec "%s" --cmd "set rtp+=${ts-plugin}/runtime" --cmd "set rtp+=${diff-grammar}" "$@"\n' "$nvim_bin" > "$tmpdir/nvim"
|
||||||
|
chmod +x "$tmpdir/nvim"
|
||||||
|
PATH="$tmpdir:$PATH" exec ${luaEnv}/bin/busted "$@"
|
||||||
|
'';
|
||||||
|
in
|
||||||
|
pkgs.mkShell {
|
||||||
packages = [
|
packages = [
|
||||||
(pkgs.luajit.withPackages (
|
busted-with-grammar
|
||||||
ps: with ps; [
|
|
||||||
busted
|
|
||||||
nlua
|
|
||||||
]
|
|
||||||
))
|
|
||||||
pkgs.prettier
|
pkgs.prettier
|
||||||
pkgs.stylua
|
pkgs.stylua
|
||||||
pkgs.selene
|
pkgs.selene
|
||||||
|
|
|
||||||
10
scripts/ci.sh
Executable file
10
scripts/ci.sh
Executable file
|
|
@ -0,0 +1,10 @@
|
||||||
|
#!/bin/sh
|
||||||
|
set -eu
|
||||||
|
|
||||||
|
nix develop --command stylua --check .
|
||||||
|
git ls-files '*.lua' | xargs nix develop --command selene --display-style quiet
|
||||||
|
nix develop --command prettier --check .
|
||||||
|
nix fmt
|
||||||
|
git diff --exit-code -- '*.nix'
|
||||||
|
nix develop --command lua-language-server --check . --checklevel=Warning
|
||||||
|
nix develop --command busted
|
||||||
Loading…
Add table
Add a link
Reference in a new issue