diff --git a/maintainers/scripts/luarocks-packages.csv b/maintainers/scripts/luarocks-packages.csv index 26b5dc52be6fe3d..4d1ed177c1c4cd6 100644 --- a/maintainers/scripts/luarocks-packages.csv +++ b/maintainers/scripts/luarocks-packages.csv @@ -105,6 +105,7 @@ luv,,,,1.48.0-2,, lush.nvim,,,https://luarocks.org/dev,,,teto lyaml,,,,,,lblasc lz.n,,,,,,mrcjkb +lze,,,,,,birdee lzn-auto-require,,,,,,mrcjkb magick,,,,,5.1,donovanglover markdown,,,,,, diff --git a/pkgs/applications/editors/vim/plugins/overrides.nix b/pkgs/applications/editors/vim/plugins/overrides.nix index 976c5e9d93efb40..b6ba6d5338778aa 100644 --- a/pkgs/applications/editors/vim/plugins/overrides.nix +++ b/pkgs/applications/editors/vim/plugins/overrides.nix @@ -1015,6 +1015,8 @@ lz-n = neovimUtils.buildNeovimPlugin { luaAttr = "lz-n"; }; + lze = neovimUtils.buildNeovimPlugin { luaAttr = "lze"; }; + lzn-auto-require = neovimUtils.buildNeovimPlugin { luaAttr = "lzn-auto-require"; }; magma-nvim-goose = buildVimPlugin { diff --git a/pkgs/development/lua-modules/generated-packages.nix b/pkgs/development/lua-modules/generated-packages.nix index aec5d2b0b896075..c57850a86dad889 100644 --- a/pkgs/development/lua-modules/generated-packages.nix +++ b/pkgs/development/lua-modules/generated-packages.nix @@ -2512,6 +2512,29 @@ buildLuarocksPackage { }; }) {}; +lze = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }: +buildLuarocksPackage { + pname = "lze"; + version = "0.1.1-1"; + knownRockspec = (fetchurl { + url = "mirror://luarocks/lze-0.1.1-1.rockspec"; + sha256 = "0rih9kgx846qhp1fmsqlnp8y08kv4hp8gl9dwykz4zr0zljy94j3"; + }).outPath; + src = fetchzip { + url = "https://github.com/BirdeeHub/lze/archive/v0.1.1.zip"; + sha256 = "1s6n61jabsv94s37xd5g0y7fxhficc4rwsklgsmzajravpgy60a8"; + }; + + disabled = luaOlder "5.1"; + + meta = { + homepage = "https://github.com/BirdeeHub/lze"; + description = "A lazy-loading library for neovim, inspired by, but different from, nvim-neorocks/lz.n"; + maintainers = with lib.maintainers; [ birdee ]; + license.fullName = "GPL-2+"; + }; +}) {}; + lzn-auto-require = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, lz-n }: buildLuarocksPackage { pname = "lzn-auto-require"; diff --git a/pkgs/development/lua-modules/overrides.nix b/pkgs/development/lua-modules/overrides.nix index 358560cfc771458..ed25e552cef93b9 100644 --- a/pkgs/development/lua-modules/overrides.nix +++ b/pkgs/development/lua-modules/overrides.nix @@ -544,6 +544,17 @@ in ''; }); + lze = prev.lze.overrideAttrs(oa: { + doCheck = lua.luaversion == "5.1"; + nativeCheckInputs = [ final.nlua final.busted ]; + checkPhase = '' + runHook preCheck + export HOME=$(mktemp -d) + busted --lua=nlua + runHook postCheck + ''; + }); + neotest = prev.neotest.overrideAttrs(oa: { # A few tests fail for strange reasons on darwin doCheck = !stdenv.isDarwin;