diff --git a/maintainers/scripts/luarocks-packages.csv b/maintainers/scripts/luarocks-packages.csv index 3ce3f3d73433..6f39985a1f08 100644 --- a/maintainers/scripts/luarocks-packages.csv +++ b/maintainers/scripts/luarocks-packages.csv @@ -72,6 +72,7 @@ lualogging,,,,,, luaossl,,,,,5.1, luaposix,,,,34.1.1-1,,vyp lblasc luarepl,,,,,, +luarocks-build-rust-mlua,,,,,,mrcjkb luasec,,,,,,flosse luasocket,,,,,, luasql-sqlite3,,,,,,vyp diff --git a/pkgs/development/lua-modules/generated-packages.nix b/pkgs/development/lua-modules/generated-packages.nix index 383ab0f665bc..d26f633e9e26 100644 --- a/pkgs/development/lua-modules/generated-packages.nix +++ b/pkgs/development/lua-modules/generated-packages.nix @@ -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 }: buildLuarocksPackage { pname = "luasec"; @@ -3039,7 +3068,7 @@ buildLuarocksPackage { }; }) {}; -vstruct = callPackage({ fetchgit, lua, buildLuarocksPackage, luaOlder }: +vstruct = callPackage({ fetchgit, lua, buildLuarocksPackage, luaOlder, luarocks-build-rust-mlua}: buildLuarocksPackage { pname = "vstruct"; version = "2.1.1-1"; diff --git a/pkgs/development/lua-modules/toml-edit/default.nix b/pkgs/development/lua-modules/toml-edit/default.nix new file mode 100644 index 000000000000..65890ae0abcd --- /dev/null +++ b/pkgs/development/lua-modules/toml-edit/default.nix @@ -0,0 +1,54 @@ +{ lib +, buildLuarocksPackage +, cargo +, fetchurl +, fetchgit +, lua +, luaOlder +, luarocks-build-rust-mlua +, rustPlatform }: +# NOTE: This is based on `luarocks-nix --nix toml-edit`, +# but requires some manual modifications, because this package uses cargo to build +buildLuarocksPackage rec { + 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"); + + + cargoDeps = rustPlatform.fetchCargoTarball { + inherit src; + hash = "sha256-pLAisfnSDoAToQO/kdKTdic6vEug7/WFNtgOfj0bRAE="; + }; + + propagatedBuildInputs = [ + cargo + rustPlatform.cargoSetupHook + 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"; + }; +} + diff --git a/pkgs/top-level/lua-packages.nix b/pkgs/top-level/lua-packages.nix index 014cf6d394f9..1c316c2c1eb0 100644 --- a/pkgs/top-level/lua-packages.nix +++ b/pkgs/top-level/lua-packages.nix @@ -138,6 +138,8 @@ rec { inherit (pkgs.darwin.apple_sdk.frameworks) AppKit; }; + toml-edit = callPackage ../development/lua-modules/toml-edit { }; + vicious = callPackage ({ fetchFromGitHub }: stdenv.mkDerivation rec { pname = "vicious"; version = "2.6.0";