nixpkgs/pkgs/development/compilers/qi/9.1.nix
Eelco Dolstra 7f5b839524 * Removed selectVersion. There's no good reason to write
`selectVersion ./foo "bar"' instead of `import ./foo/bar.nix'.
* Replaced `with args' with formal function arguments in several
  packages.
* Renamed several files to `default.nix'.  As a general rule, version
  numbers should only be included in the filename when there is a
  reason to keep multiple versions of a package in Nixpkgs.
  Otherwise, it just makes it harder to update the package.

svn path=/nixpkgs/trunk/; revision=18403
2009-11-18 09:39:59 +00:00

37 lines
1 KiB
Nix

args : with args;
let localDefs = builderDefs.passthru.function {
src = /* put a fetchurl here */
fetchurl {
url = http://www.lambdassociates.org/Download/Qi9.1.zip;
sha256 = "1j584i7pj38rnlf7v9njfdwc6gc296v5friw2887dsw34dmwyg3f";
};
buildInputs = [ unzip clisp];
configureFlags = [];
};
in with localDefs;
let
shell=stdenv.shell;
in
let
allBuild = fullDepEntry ("
(sleep 0.1; echo ) | clisp install.txt;
(sleep 0.1; echo -e '1\n(quit)\n' ) | sh Qi-Linux-CLisp
ensureDir \$out/share
ensureDir \$out/bin
cp -r . \$out/share/Qi-9.1
echo -e '#! ${shell}
arg1=\${1:-'\$out'/share/Qi-9.1/startup.txt}
shift
clisp -M '\$out'/share/Qi-9.1/lispinit.mem \$arg1 \"\$@\"\\n' > \$out/bin/qi
chmod a+x \$out/bin/qi
") [ addInputs minInit doUnpack defEnsureDir];
in
stdenv.mkDerivation rec {
name = "Qi-9.1";
builder = writeScript (name + "-builder")
(textClosure localDefs [allBuild doForceShare doPropagate]);
meta = {
description = "Qi - next generation on top of Common Lisp";
inherit src;
};
}