1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2025-01-22 14:45:27 +00:00

Merge pull request #70372 from doronbehar/package-gaia

gaia: init at 2.4.5
This commit is contained in:
Matthew Bauer 2019-11-07 17:17:41 -05:00 committed by GitHub
commit 5dfbfc06d3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 93 additions and 0 deletions

View file

@ -0,0 +1,85 @@
{ stdenv
, lib
, fetchFromGitHub
, libyaml
, swig
, pkgconfig
, wafHook
, makeWrapper
, qt4
, pythonPackages
, pythonSupport ? false
# Default to false since it breaks the build, see https://github.com/MTG/gaia/issues/11
, stlfacadeSupport ? false
, assertsSupport ? true
, cyclopsSupport ? true
}:
assert pythonSupport -> pythonPackages != null;
stdenv.mkDerivation rec {
pname = "gaia";
version = "2.4.5";
src = fetchFromGitHub {
owner = "MTG";
repo = "gaia";
rev = "v${version}";
sha256 = "12jxb354s2dblr2ghnl3w05m23jgzvrrgywfj8jaa32j3gw48fv2";
};
# Fix installation error when waf tries to put files in /etc/
prePatch = ''
'' + lib.optionalString cyclopsSupport ''
substituteInPlace src/wscript \
--replace "/etc/cyclops" "$out/etc/cyclops" \
--replace "/etc/init.d" "$out/etc/init.d"
'';
nativeBuildInputs = [
wafHook
pkgconfig
swig
]
# The gaiafusion binary inside $out/bin needs a shebangs patch, and
# wrapping with the appropriate $PYTHONPATH
++ lib.optionals (pythonSupport) [
pythonPackages.wrapPython
]
;
buildInputs = [
libyaml
qt4
];
propagatedBuildInputs = []
++ lib.optionals (pythonSupport) [
# This is not exactly specified in upstream's README but it's needed by the
# resulting $out/bin/gaiafusion script
pythonPackages.pyyaml
]
;
wafConfigureFlags = []
++ lib.optionals (pythonSupport) [ "--with-python-bindings" ]
++ lib.optionals (stlfacadeSupport) [ "--with-stlfacade" ]
++ lib.optionals (assertsSupport) [ "--with-asserts" ]
++ lib.optionals (cyclopsSupport) [ "--with-cyclops" ]
;
postFixup = ''
''
+ lib.optionalString pythonSupport ''
wrapPythonPrograms
''
;
meta = with lib; {
homepage = "https://github.com/MTG/gaia";
description = "General library to work with points in a semimetric space";
maintainers = with maintainers; [ doronbehar ];
platforms = platforms.all;
license = licenses.agpl3;
};
}

View file

@ -857,6 +857,8 @@ in
genymotion = callPackage ../development/mobile/genymotion { };
gaia = callPackage ../development/libraries/gaia { };
gamecube-tools = callPackage ../development/tools/gamecube-tools { };
gams = callPackage ../tools/misc/gams (config.gams or {});

View file

@ -2422,6 +2422,12 @@ in {
fx2 = callPackage ../development/python-modules/fx2 { };
# gaia isn't supported with python3 and it's not available from pypi
gaia = disabledIf (isPyPy || isPy3k) (toPythonModule (pkgs.gaia.override {
pythonPackages = self;
pythonSupport = true;
}));
gateone = callPackage ../development/python-modules/gateone { };
GeoIP = callPackage ../development/python-modules/GeoIP { };