From 7c0d7abdd7765e760957e21e471e288ed5dff0c8 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Thu, 8 Mar 2012 18:23:47 +0000 Subject: [PATCH] Adding GAP discrete algebra system svn path=/nixpkgs/trunk/; revision=32908 --- .../applications/science/math/gap/default.nix | 54 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 56 insertions(+) create mode 100644 pkgs/applications/science/math/gap/default.nix diff --git a/pkgs/applications/science/math/gap/default.nix b/pkgs/applications/science/math/gap/default.nix new file mode 100644 index 000000000000..50457ff0353b --- /dev/null +++ b/pkgs/applications/science/math/gap/default.nix @@ -0,0 +1,54 @@ +x@{builderDefsPackage + + , ...}: +builderDefsPackage +(a : +let + helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ + []; + + buildInputs = map (n: builtins.getAttr n x) + (builtins.attrNames (builtins.removeAttrs x helperArgNames)); + sourceInfo = rec { + baseName="gap"; + version="4r4p12"; + name="${baseName}-${version}"; + url="ftp://ftp.gap-system.org/pub/gap/gap4/tar.gz/${baseName}${version}.tar.gz"; + hash="0flap5lbkvpms3zznq1zwxyxyj0ax3fk7m24f3bvhvr37vyxnf40"; + }; +in +rec { + src = a.fetchurl { + url = sourceInfo.url; + sha256 = sourceInfo.hash; + }; + + inherit (sourceInfo) name version; + inherit buildInputs; + + /* doConfigure should be removed if not needed */ + phaseNames = ["doConfigure" "doMake" "doDeploy"]; + + doDeploy = a.fullDepEntry '' + ensureDir "$out/bin" "$out/share/gap/" + + cp -r . "$out/share/gap/build-dir" + + sed -e "/GAP_DIR=/aGAP_DIR='$out/share/gap/build-dir/'" -i "$out/share/gap/build-dir/bin/gap.sh" + + ln -s "$out/share/gap/build-dir/bin/gap.sh" "$out/bin" + '' ["doMake" "minInit" "defEnsureDir"]; + + meta = { + description = "Computational discrete algebra system"; + maintainers = with a.lib.maintainers; + [ + raskin + ]; + platforms = with a.lib.platforms; + linux; + license = "GPLv2+"; + homepage = "http://gap-system.org/"; + }; +}) x + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b87f9e276ecc..0e8787f676f1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8292,6 +8292,8 @@ let eukleides = callPackage ../applications/science/math/eukleides { }; + gap = callPackage ../applications/science/math/gap { }; + maxima = callPackage ../applications/science/math/maxima { }; wxmaxima = callPackage ../applications/science/math/wxmaxima { };