nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{stdenv, fetchurl, lua, curl, makeWrapper, which, unzip}:
2let
3 s = # Generated upstream information
4 rec {
5 baseName="luarocks";
6 version="2.4.2";
7 name="${baseName}-${version}";
8 hash="1rfjfjgnafjxs1zrd1gy0ga5lw28sf5lrdmgzgh6bcp1hd2w67hf";
9 url="http://luarocks.org/releases/luarocks-2.4.2.tar.gz";
10 sha256="1rfjfjgnafjxs1zrd1gy0ga5lw28sf5lrdmgzgh6bcp1hd2w67hf";
11 };
12 buildInputs = [
13 lua curl makeWrapper which unzip
14 ];
15in
16stdenv.mkDerivation {
17 inherit (s) name version;
18 inherit buildInputs;
19 src = fetchurl {
20 inherit (s) url sha256;
21 };
22 preConfigure = ''
23 lua -e "" || {
24 luajit -e "" && {
25 export LUA_SUFFIX=jit
26 configureFlags="$configureFlags --lua-suffix=$LUA_SUFFIX"
27 }
28 }
29 lua_inc="$(echo "${lua}/include"/*/)"
30 if test -n "$lua_inc"; then
31 configureFlags="$configureFlags --with-lua-include=$lua_inc"
32 fi
33 '';
34 postInstall = ''
35 sed -e "1s@.*@#! ${lua}/bin/lua$LUA_SUFFIX@" -i "$out"/bin/*
36 for i in "$out"/bin/*; do
37 test -L "$i" || {
38 wrapProgram "$i" \
39 --prefix LUA_PATH ";" "$(echo "$out"/share/lua/*/)?.lua" \
40 --prefix LUA_PATH ";" "$(echo "$out"/share/lua/*/)?/init.lua" \
41
42 }
43 done
44 '';
45 meta = {
46 inherit (s) version;
47 description = ''A package manager for Lua'';
48 license = stdenv.lib.licenses.mit ;
49 maintainers = [stdenv.lib.maintainers.raskin];
50 platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
51 };
52}