mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-12-28 14:22:50 +03:00
Merge pull request #260759 from mrcjkb/toml-edit
luaPackages: add some lua packages
This commit is contained in:
commit
922a4d82c5
@ -72,6 +72,7 @@ lualogging,,,,,,
|
|||||||
luaossl,,,,,5.1,
|
luaossl,,,,,5.1,
|
||||||
luaposix,,,,34.1.1-1,,vyp lblasc
|
luaposix,,,,34.1.1-1,,vyp lblasc
|
||||||
luarepl,,,,,,
|
luarepl,,,,,,
|
||||||
|
luarocks-build-rust-mlua,,,,,,mrcjkb
|
||||||
luasec,,,,,,flosse
|
luasec,,,,,,flosse
|
||||||
luasocket,,,,,,
|
luasocket,,,,,,
|
||||||
luasql-sqlite3,,,,,,vyp
|
luasql-sqlite3,,,,,,vyp
|
||||||
@ -92,6 +93,7 @@ mediator_lua,,,,,,
|
|||||||
middleclass,,,,,,
|
middleclass,,,,,,
|
||||||
mpack,,,,,,
|
mpack,,,,,,
|
||||||
moonscript,https://github.com/leafo/moonscript.git,dev-1,,,,arobyn
|
moonscript,https://github.com/leafo/moonscript.git,dev-1,,,,arobyn
|
||||||
|
nui-nvim,,,,,,mrcjkb
|
||||||
nvim-client,https://github.com/neovim/lua-client.git,,,,,
|
nvim-client,https://github.com/neovim/lua-client.git,,,,,
|
||||||
nvim-cmp,https://github.com/hrsh7th/nvim-cmp,,,,,
|
nvim-cmp,https://github.com/hrsh7th/nvim-cmp,,,,,
|
||||||
penlight,https://github.com/lunarmodules/Penlight.git,,,,,alerque
|
penlight,https://github.com/lunarmodules/Penlight.git,,,,,alerque
|
||||||
@ -109,5 +111,7 @@ teal-language-server,,,http://luarocks.org/dev,,,
|
|||||||
telescope.nvim,,,,,5.1,
|
telescope.nvim,,,,,5.1,
|
||||||
telescope-manix,,,,,,
|
telescope-manix,,,,,,
|
||||||
tl,,,,,,mephistophiles
|
tl,,,,,,mephistophiles
|
||||||
|
toml,,,,,,mrcjkb
|
||||||
|
toml-edit,,,,,5.1,mrcjkb
|
||||||
vstruct,https://github.com/ToxicFrog/vstruct.git,,,,,
|
vstruct,https://github.com/ToxicFrog/vstruct.git,,,,,
|
||||||
vusted,,,,,,figsoda
|
vusted,,,,,,figsoda
|
||||||
|
|
36
pkgs/development/libraries/sol2/default.nix
Normal file
36
pkgs/development/libraries/sol2/default.nix
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
{ fetchFromGitHub
|
||||||
|
, lib
|
||||||
|
, stdenv
|
||||||
|
, cmake
|
||||||
|
, lua
|
||||||
|
}:
|
||||||
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
|
pname = "sol2";
|
||||||
|
version = "3.3.1";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "ThePhD";
|
||||||
|
repo = "sol2";
|
||||||
|
rev = "v${finalAttrs.version}";
|
||||||
|
hash = "sha256-7QHZRudxq3hdsfEAYKKJydc4rv6lyN6UIt/2Zmaejx8=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ cmake lua ];
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
"-DSOL2_LUA_VERSION=${lua.version}"
|
||||||
|
"-DSOL2_BUILD_LUA=FALSE"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib;{
|
||||||
|
description = "Lua API wrapper with advanced features and top notch performance";
|
||||||
|
longDescription = ''
|
||||||
|
sol2 is a C++ library binding to Lua.
|
||||||
|
It currently supports all Lua versions 5.1+ (LuaJIT 2.0+ and MoonJIT included).
|
||||||
|
sol2 aims to be easy to use and easy to add to a project.
|
||||||
|
The library is header-only for easy integration with projects, and a single header can be used for drag-and-drop start up.
|
||||||
|
'';
|
||||||
|
homepage = "https://github.com/ThePhD/sol2";
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ mrcjkb ];
|
||||||
|
};
|
||||||
|
})
|
@ -2066,6 +2066,35 @@ buildLuarocksPackage {
|
|||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
|
||||||
|
luarocks-build-rust-mlua = callPackage({ fetchgit, buildLuarocksPackage }:
|
||||||
|
buildLuarocksPackage {
|
||||||
|
pname = "luarocks-build-rust-mlua";
|
||||||
|
version = "0.1.2-1";
|
||||||
|
knownRockspec = (fetchurl {
|
||||||
|
url = "mirror://luarocks/luarocks-build-rust-mlua-0.1.2-1.rockspec";
|
||||||
|
sha256 = "1sx908fm2ihpxz2mm54xzkfmdzlqdvrqjkh1zz7rcjgmqba4mh1j";
|
||||||
|
}).outPath;
|
||||||
|
src = fetchgit ( removeAttrs (builtins.fromJSON ''{
|
||||||
|
"url": "https://github.com/khvzak/luarocks-build-rust-mlua",
|
||||||
|
"rev": "c8080aa0832563b7f8b2cb85a195c1598ce312e0",
|
||||||
|
"date": "2023-06-29T16:47:41+01:00",
|
||||||
|
"path": "/nix/store/n7id28r1m11xd550hayv99xhz96vpdjq-luarocks-build-rust-mlua",
|
||||||
|
"sha256": "1zh1p5k7xpczi5db3k0fw0ljw9w0xxk1qjjcfg5rcznqjf48i3x7",
|
||||||
|
"fetchLFS": false,
|
||||||
|
"fetchSubmodules": true,
|
||||||
|
"deepClone": false,
|
||||||
|
"leaveDotGit": false
|
||||||
|
}
|
||||||
|
'') ["date" "path"]) ;
|
||||||
|
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "https://github.com/khvzak/luarocks-build-rust-mlua";
|
||||||
|
description = "A LuaRocks build backend for Lua modules written in Rust using mlua";
|
||||||
|
license.fullName = "MIT";
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
|
|
||||||
luasec = callPackage({ fetchgit, luaOlder, luasocket, buildLuarocksPackage, lua }:
|
luasec = callPackage({ fetchgit, luaOlder, luasocket, buildLuarocksPackage, lua }:
|
||||||
buildLuarocksPackage {
|
buildLuarocksPackage {
|
||||||
pname = "luasec";
|
pname = "luasec";
|
||||||
@ -2574,6 +2603,36 @@ buildLuarocksPackage {
|
|||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
|
||||||
|
nui-nvim = callPackage( { fetchgit, buildLuarocksPackage }:
|
||||||
|
buildLuarocksPackage {
|
||||||
|
pname = "nui.nvim";
|
||||||
|
version = "0.2.0-1";
|
||||||
|
knownRockspec = (fetchurl {
|
||||||
|
url = "mirror://luarocks/nui.nvim-0.2.0-1.rockspec";
|
||||||
|
sha256 = "0v2z6lgl6hrzcjlzhis8nrkdkh9kvx8zg3q5svi5gyklg7vmcbc2";
|
||||||
|
}).outPath;
|
||||||
|
src = fetchgit ( removeAttrs (builtins.fromJSON ''{
|
||||||
|
"url": "https://github.com/MunifTanjim/nui.nvim.git",
|
||||||
|
"rev": "9e3916e784660f55f47daa6f26053ad044db5d6a",
|
||||||
|
"date": "2023-07-20T10:45:09+06:00",
|
||||||
|
"path": "/nix/store/8zdhjgipjjhi9b1y40r2yk5np4lp39as-nui.nvim",
|
||||||
|
"sha256": "14a73dwl56kah9h36b40ir6iylvfs261ysz17qvi9vhp63vjq9cx",
|
||||||
|
"fetchLFS": false,
|
||||||
|
"fetchSubmodules": true,
|
||||||
|
"deepClone": false,
|
||||||
|
"leaveDotGit": false
|
||||||
|
}
|
||||||
|
'') ["date" "path"]) ;
|
||||||
|
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "https://github.com/MunifTanjim/nui.nvim";
|
||||||
|
description = "UI Component Library for Neovim.";
|
||||||
|
maintainers = with lib.maintainers; [ mrcjkb ];
|
||||||
|
license.fullName = "MIT";
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
|
|
||||||
nvim-client = callPackage({ coxpcall, fetchurl, mpack, lua, luaOlder, luv, buildLuarocksPackage }:
|
nvim-client = callPackage({ coxpcall, fetchurl, mpack, lua, luaOlder, luv, buildLuarocksPackage }:
|
||||||
buildLuarocksPackage {
|
buildLuarocksPackage {
|
||||||
pname = "nvim-client";
|
pname = "nvim-client";
|
||||||
@ -3039,6 +3098,70 @@ buildLuarocksPackage {
|
|||||||
};
|
};
|
||||||
}) {};
|
}) {};
|
||||||
|
|
||||||
|
toml = callPackage({ lua, fetchgit, luaOlder, buildLuarocksPackage }:
|
||||||
|
buildLuarocksPackage {
|
||||||
|
pname = "toml";
|
||||||
|
version = "0.3.0-0";
|
||||||
|
knownRockspec = (fetchurl {
|
||||||
|
url = "mirror://luarocks/toml-0.3.0-0.rockspec";
|
||||||
|
sha256 = "0y4qdzsvf4xwnr49xcpbqclrq9d6snv83cbdkrchl0cn4cx6zpxy";
|
||||||
|
}).outPath;
|
||||||
|
src = fetchgit ( removeAttrs (builtins.fromJSON ''{
|
||||||
|
"url": "https://github.com/LebJe/toml.lua.git",
|
||||||
|
"rev": "319e9accf8c5cedf68795354ba81e54c817d1277",
|
||||||
|
"date": "2023-02-19T23:00:49-05:00",
|
||||||
|
"path": "/nix/store/p6a98sqp9a4jwsw6ghqcwpn9lxmhvkdg-toml.lua",
|
||||||
|
"sha256": "05p33bq0ajl41vbsw9bx73shpf0p11n5gb6yy8asvp93zh2m51hq",
|
||||||
|
"fetchLFS": false,
|
||||||
|
"fetchSubmodules": true,
|
||||||
|
"deepClone": false,
|
||||||
|
"leaveDotGit": false
|
||||||
|
}
|
||||||
|
'') ["date" "path"]) ;
|
||||||
|
|
||||||
|
disabled = (luaOlder "5.1");
|
||||||
|
propagatedBuildInputs = [ lua ];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "https://github.com/LebJe/toml.lua";
|
||||||
|
description = "TOML v1.0.0 parser and serializer for Lua. Powered by toml++.";
|
||||||
|
maintainers = with lib.maintainers; [ mrcjkb ];
|
||||||
|
license.fullName = "MIT";
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
|
|
||||||
|
toml-edit = callPackage({ luaOlder, luarocks-build-rust-mlua, buildLuarocksPackage, lua, fetchgit }:
|
||||||
|
buildLuarocksPackage {
|
||||||
|
pname = "toml-edit";
|
||||||
|
version = "0.1.4-1";
|
||||||
|
knownRockspec = (fetchurl {
|
||||||
|
url = "mirror://luarocks/toml-edit-0.1.4-1.rockspec";
|
||||||
|
sha256 = "05bcc1xafcspdf1rcka9bhg7b6z617b4jrcahs1r7grcp78w89vf";
|
||||||
|
}).outPath;
|
||||||
|
src = fetchgit ( removeAttrs (builtins.fromJSON ''{
|
||||||
|
"url": "https://github.com/vhyrro/toml-edit.lua",
|
||||||
|
"rev": "f6efdab4ca6fab276f172060971781dc42a94f2d",
|
||||||
|
"date": "2023-10-02T16:54:10+02:00",
|
||||||
|
"path": "/nix/store/p1368agmqg4jwb1qvf2iff3fdrq9vkdj-toml-edit.lua",
|
||||||
|
"sha256": "1aa8znjnmm84392gnl7w0hm069xfv7niym3i8my7kyk0vdgxja06",
|
||||||
|
"fetchLFS": false,
|
||||||
|
"fetchSubmodules": true,
|
||||||
|
"deepClone": false,
|
||||||
|
"leaveDotGit": false
|
||||||
|
}
|
||||||
|
'') ["date" "path"]) ;
|
||||||
|
|
||||||
|
disabled = (luaOlder "5.1");
|
||||||
|
propagatedBuildInputs = [ lua luarocks-build-rust-mlua ];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "https://github.com/vhyrro/toml-edit.lua";
|
||||||
|
description = "TOML Parser + Formatting and Comment-Preserving Editor";
|
||||||
|
maintainers = with lib.maintainers; [ mrcjkb ];
|
||||||
|
license.fullName = "MIT";
|
||||||
|
};
|
||||||
|
}) {};
|
||||||
|
|
||||||
vstruct = callPackage({ fetchgit, lua, buildLuarocksPackage, luaOlder }:
|
vstruct = callPackage({ fetchgit, lua, buildLuarocksPackage, luaOlder }:
|
||||||
buildLuarocksPackage {
|
buildLuarocksPackage {
|
||||||
pname = "vstruct";
|
pname = "vstruct";
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
# do not add pkgs, it messes up splicing
|
# do not add pkgs, it messes up splicing
|
||||||
{ stdenv
|
{ stdenv
|
||||||
|
, cargo
|
||||||
, cmake
|
, cmake
|
||||||
, curl
|
, curl
|
||||||
, cyrus_sasl
|
, cyrus_sasl
|
||||||
@ -27,6 +28,7 @@
|
|||||||
, libxcrypt
|
, libxcrypt
|
||||||
, libyaml
|
, libyaml
|
||||||
, mariadb
|
, mariadb
|
||||||
|
, magic-enum
|
||||||
, mpfr
|
, mpfr
|
||||||
, neovim-unwrapped
|
, neovim-unwrapped
|
||||||
, openldap
|
, openldap
|
||||||
@ -35,7 +37,10 @@
|
|||||||
, pkg-config
|
, pkg-config
|
||||||
, postgresql
|
, postgresql
|
||||||
, readline
|
, readline
|
||||||
|
, rustPlatform
|
||||||
|
, sol2
|
||||||
, sqlite
|
, sqlite
|
||||||
|
, tomlplusplus
|
||||||
, unbound
|
, unbound
|
||||||
, vimPlugins
|
, vimPlugins
|
||||||
, vimUtils
|
, vimUtils
|
||||||
@ -558,6 +563,29 @@ with prev;
|
|||||||
'';
|
'';
|
||||||
});
|
});
|
||||||
|
|
||||||
|
toml = prev.toml.overrideAttrs (oa: {
|
||||||
|
patches = [ ./toml.patch ];
|
||||||
|
|
||||||
|
propagatedBuildInputs = oa.propagatedBuildInputs ++ [ magic-enum sol2 ];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace CMakeLists.txt --replace \
|
||||||
|
"TOML_PLUS_PLUS_SRC" \
|
||||||
|
"${tomlplusplus.src}"
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
|
||||||
|
toml-edit = prev.toml-edit.overrideAttrs (oa: {
|
||||||
|
|
||||||
|
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||||
|
src = oa.src;
|
||||||
|
hash = "sha256-pLAisfnSDoAToQO/kdKTdic6vEug7/WFNtgOfj0bRAE=";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = oa.propagatedBuildInputs ++ [ cargo rustPlatform.cargoSetupHook ];
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
vstruct = prev.vstruct.overrideAttrs (_: {
|
vstruct = prev.vstruct.overrideAttrs (_: {
|
||||||
meta.broken = (luaOlder "5.1" || luaAtLeast "5.4");
|
meta.broken = (luaOlder "5.1" || luaAtLeast "5.4");
|
||||||
});
|
});
|
||||||
|
43
pkgs/development/lua-modules/toml.patch
Normal file
43
pkgs/development/lua-modules/toml.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index ab3884c..9432df7 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -38,26 +38,17 @@ include(FetchContent)
|
||||||
|
|
||||||
|
FetchContent_Declare(
|
||||||
|
${TOML++}
|
||||||
|
- GIT_REPOSITORY "https://github.com/marzer/tomlplusplus.git"
|
||||||
|
- GIT_SHALLOW ON
|
||||||
|
- GIT_SUBMODULES ""
|
||||||
|
- GIT_TAG "v3.3.0"
|
||||||
|
+ DOWNLOAD_COMMAND true
|
||||||
|
)
|
||||||
|
|
||||||
|
FetchContent_Declare(
|
||||||
|
${SOL2}
|
||||||
|
- GIT_REPOSITORY "https://github.com/ThePhD/sol2.git"
|
||||||
|
- GIT_SHALLOW ON
|
||||||
|
- GIT_SUBMODULES ""
|
||||||
|
- GIT_TAG "v3.3.0"
|
||||||
|
+ DOWNLOAD_COMMAND true
|
||||||
|
)
|
||||||
|
|
||||||
|
FetchContent_Declare(
|
||||||
|
${MAGIC_ENUM}
|
||||||
|
- GIT_REPOSITORY "https://github.com/Neargye/magic_enum.git"
|
||||||
|
- GIT_SHALLOW ON
|
||||||
|
- GIT_SUBMODULES ""
|
||||||
|
- GIT_TAG "v0.8.2"
|
||||||
|
+ DOWNLOAD_COMMAND true
|
||||||
|
)
|
||||||
|
|
||||||
|
FetchContent_GetProperties(${TOML++})
|
||||||
|
@@ -113,7 +104,7 @@ if(NOT LUA_INCLUDE_DIR OR (WIN32 AND NOT LUA_LIBRARIES))
|
||||||
|
find_package(Lua)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
-include_directories(${LUA_INCLUDE_DIR} src src/include ${${TOML++}_SOURCE_DIR} ${${SOL2}_SOURCE_DIR}/include ${${MAGIC_ENUM}_SOURCE_DIR}/include)
|
||||||
|
+include_directories(${LUA_INCLUDE_DIR} src src/include TOML_PLUS_PLUS_SRC ${${SOL2}_SOURCE_DIR}/include ${${MAGIC_ENUM}_SOURCE_DIR}/include)
|
||||||
|
|
||||||
|
set(SOURCES
|
||||||
|
src/toml.cpp
|
@ -18020,6 +18020,8 @@ with pkgs;
|
|||||||
|
|
||||||
bundler-audit = callPackage ../tools/security/bundler-audit { };
|
bundler-audit = callPackage ../tools/security/bundler-audit { };
|
||||||
|
|
||||||
|
sol2 = callPackage ../development/libraries/sol2 { };
|
||||||
|
|
||||||
solargraph = rubyPackages.solargraph;
|
solargraph = rubyPackages.solargraph;
|
||||||
|
|
||||||
rbenv = callPackage ../development/ruby-modules/rbenv { };
|
rbenv = callPackage ../development/ruby-modules/rbenv { };
|
||||||
|
Loading…
Reference in New Issue
Block a user