soi: reimplement using mkDerivation

This commit is contained in:
Joachim Fasting 2015-07-14 11:19:56 +02:00
parent 3e21aaeb8e
commit f3e821c6e5

View File

@ -1,56 +1,34 @@
x@{builderDefsPackage { stdenv, fetchurl, mesa, SDL, cmake, eigen }:
, mesa, SDL, cmake, eigen
, ...}:
builderDefsPackage
(a :
let let
helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ baseName = "soi";
[]; fileName = "Spheres%20of%20Influence";
majorVersion = "0.1";
buildInputs = map (n: builtins.getAttr n x) minorVersion = "1";
(builtins.attrNames (builtins.removeAttrs x helperArgNames)); version = "${majorVersion}.${minorVersion}";
sourceInfo = rec { name = "${baseName}-${version}";
baseName="soi"; project = "${baseName}";
fileName="Spheres%20of%20Influence";
majorVersion="0.1";
minorVersion="1";
version="${majorVersion}.${minorVersion}";
name="${baseName}-${version}";
project="${baseName}";
url="mirror://sourceforge/project/${project}/${baseName}-${majorVersion}/${fileName}-${version}-Source.tar.gz";
hash="dfc59319d2962033709bb751c71728417888addc6c32cbec3da9679087732a81";
};
in in
rec {
src = a.fetchurl { stdenv.mkDerivation rec {
url = sourceInfo.url; src = fetchurl {
sha256 = sourceInfo.hash; url = "mirror://sourceforge/project/${project}/${baseName}-${majorVersion}/${fileName}-${version}-Source.tar.gz";
name = "${sourceInfo.name}.tar.gz"; sha256 = "dfc59319d2962033709bb751c71728417888addc6c32cbec3da9679087732a81";
}; };
inherit (sourceInfo) name version; buildInputs = [ mesa SDL cmake eigen ];
inherit buildInputs;
phaseNames = ["setVars" "doCmake" "doMakeInstall"]; preConfigure = ''export EIGENDIR=${eigen}/include/eigen2'';
setVars = a.noDepEntry '' meta = with stdenv.lib; {
export EIGENDIR=${a.eigen}/include/eigen2
'';
meta = {
description = "A physics-based puzzle game"; description = "A physics-based puzzle game";
maintainers = with a.lib.maintainers; maintainers = with maintainers;
[ [
raskin raskin
]; ];
platforms = with a.lib.platforms; platforms = platforms.linux;
linux; license = licenses.free;
license = a.lib.licenses.free;
broken = true; broken = true;
downloadPage = "http://sourceforge.net/projects/soi/files/";
}; };
passthru = { }
updateInfo = {
downloadPage = "http://sourceforge.net/projects/soi/files/";
};
};
}) x