40 lines
1.1 KiB
Nix
40 lines
1.1 KiB
Nix
# Hooks for building lua packages.
|
|
{ lua
|
|
, lib
|
|
, makeSetupHook
|
|
, findutils
|
|
, runCommand
|
|
}:
|
|
|
|
let
|
|
callPackage = lua.pkgs.callPackage;
|
|
luaInterpreter = lua.interpreter;
|
|
in {
|
|
|
|
lua-setup-hook = LuaPathSearchPaths: LuaCPathSearchPaths:
|
|
let
|
|
hook = ./setup-hook.sh;
|
|
in runCommand "lua-setup-hook.sh" {
|
|
# hum doesn't seem to like caps !! BUG ?
|
|
luapathsearchpaths=lib.escapeShellArgs LuaPathSearchPaths;
|
|
luacpathsearchpaths=lib.escapeShellArgs LuaCPathSearchPaths;
|
|
} ''
|
|
cp ${hook} hook.sh
|
|
substituteAllInPlace hook.sh
|
|
mv hook.sh $out
|
|
'';
|
|
|
|
luarocksCheckHook = callPackage ({ luarocks }:
|
|
makeSetupHook {
|
|
name = "luarocks-check-hook";
|
|
propagatedBuildInputs = [ luarocks ];
|
|
} ./luarocks-check-hook.sh) {};
|
|
|
|
# luarocks installs data in a non-overridable location. Until a proper luarocks patch,
|
|
# we move the files around ourselves
|
|
luarocksMoveDataFolder = callPackage ({ }:
|
|
makeSetupHook {
|
|
name = "luarocks-move-rock";
|
|
propagatedBuildInputs = [ ];
|
|
} ./luarocks-move-data.sh) {};
|
|
}
|