diff options
Diffstat (limited to 'nixpkgs/pkgs/development/tools/misc/luarocks/setup-hook.sh')
-rw-r--r-- | nixpkgs/pkgs/development/tools/misc/luarocks/setup-hook.sh | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/tools/misc/luarocks/setup-hook.sh b/nixpkgs/pkgs/development/tools/misc/luarocks/setup-hook.sh new file mode 100644 index 000000000000..587d5413c3ed --- /dev/null +++ b/nixpkgs/pkgs/development/tools/misc/luarocks/setup-hook.sh @@ -0,0 +1,16 @@ +unpackCmdHooks+=(_trySourceRock) +unpackCmdHooks+=(_tryRockSpec) + +_tryRockSpec() { + if ! [[ "$curSrc" =~ \.rockspec$ ]]; then return 1; fi +} + +_trySourceRock() { + if ! [[ "$curSrc" =~ \.src.rock$ ]]; then return 1; fi + + # luarocks expects a clean <name>.rock.spec name to be the package name + # so we have to strip the hash + renamed="$(stripHash $curSrc)" + cp "$curSrc" "$renamed" + luarocks unpack --force "$renamed" +} |