about summary refs log tree commit diff
path: root/pkgs/development/interpreters/lua-5/hooks/default.nix
blob: ca9c15e8a3b1eebcb3491528a703d23fa626fda3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# Hooks for building lua packages.
{ lua
, lib
, makeSetupHook
, findutils
, runCommand
}:

let
  callPackage = lua.pkgs.callPackage;
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) {};
}