mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-16 23:03:40 +01:00
gap: reimplement using mkDerivation
This commit is contained in:
parent
6ccf87defe
commit
6d4ff90207
1 changed files with 26 additions and 44 deletions
|
@ -1,68 +1,50 @@
|
|||
x@{builderDefsPackage
|
||||
, pari ? null
|
||||
, ...}:
|
||||
builderDefsPackage
|
||||
(a :
|
||||
let
|
||||
helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
|
||||
[];
|
||||
{ stdenv, fetchurl, pari ? null }:
|
||||
|
||||
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";
|
||||
pkgVer="2012_01_12-10_47_UTC";
|
||||
pkgURL="ftp://ftp.gap-system.org/pub/gap/gap4/tar.bz2/packages-${pkgVer}.tar.bz2";
|
||||
pkgHash="0z9ncy1m5gvv4llkclxd1vpcgpb0b81a2pfmnhzvw8x708frhmnb";
|
||||
let
|
||||
baseName = "gap";
|
||||
version = "4r4p12";
|
||||
|
||||
pkgVer = "2012_01_12-10_47_UTC";
|
||||
pkgSrc = fetchurl {
|
||||
url = "ftp://ftp.gap-system.org/pub/gap/gap4/tar.bz2/packages-${pkgVer}.tar.bz2";
|
||||
sha256 = "0z9ncy1m5gvv4llkclxd1vpcgpb0b81a2pfmnhzvw8x708frhmnb";
|
||||
};
|
||||
in
|
||||
rec {
|
||||
src = a.fetchurl {
|
||||
url = sourceInfo.url;
|
||||
sha256 = sourceInfo.hash;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${baseName}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.gap-system.org/pub/gap/gap4/tar.gz/${baseName}${version}.tar.gz";
|
||||
sha256 = "0flap5lbkvpms3zznq1zwxyxyj0ax3fk7m24f3bvhvr37vyxnf40";
|
||||
};
|
||||
|
||||
pkgSrc = a.fetchurl {
|
||||
url=sourceInfo.pkgURL;
|
||||
sha256=sourceInfo.pkgHash;
|
||||
};
|
||||
buildInputs = [ pari ];
|
||||
|
||||
inherit (sourceInfo) name version;
|
||||
inherit buildInputs;
|
||||
|
||||
/* doConfigure should be removed if not needed */
|
||||
phaseNames = ["doConfigure" "doMake" "doDeploy"];
|
||||
|
||||
doDeploy = a.fullDepEntry ''
|
||||
installPhase = ''
|
||||
mkdir -p "$out/bin" "$out/share/gap/"
|
||||
|
||||
cp -r . "$out/share/gap/build-dir"
|
||||
|
||||
tar xf "${pkgSrc}" -C "$out/share/gap/build-dir/pkg"
|
||||
|
||||
${if a.pari != null then
|
||||
${if pari != null then
|
||||
''sed -e '2iexport PATH=$PATH:${pari}/bin' -i "$out/share/gap/build-dir/bin/gap.sh" ''
|
||||
else ""}
|
||||
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 = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Computational discrete algebra system";
|
||||
maintainers = with a.lib.maintainers;
|
||||
maintainers = with maintainers;
|
||||
[
|
||||
raskin
|
||||
];
|
||||
platforms = with a.lib.platforms;
|
||||
linux;
|
||||
license = with a.lib.licenses;
|
||||
gpl2;
|
||||
homepage = "http://gap-system.org/";
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl2;
|
||||
homepage = http://gap-system.org/;
|
||||
broken = true;
|
||||
};
|
||||
}) x
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue