diff options
Diffstat (limited to 'pkgs/applications/science')
16 files changed, 275 insertions, 37 deletions
diff --git a/pkgs/applications/science/astronomy/stellarium/default.nix b/pkgs/applications/science/astronomy/stellarium/default.nix index 6f7d1b7b764f..49c774f7039a 100644 --- a/pkgs/applications/science/astronomy/stellarium/default.nix +++ b/pkgs/applications/science/astronomy/stellarium/default.nix @@ -1,20 +1,22 @@ { stdenv, fetchurl, cmake, freetype, libpng, mesa, gettext, openssl, perl, libiconv , qtscript, qtserialport, qttools, makeQtWrapper +, qtmultimedia }: stdenv.mkDerivation rec { - name = "stellarium-0.14.3"; + name = "stellarium-${version}"; + version = "0.15.0"; src = fetchurl { url = "mirror://sourceforge/stellarium/${name}.tar.gz"; - sha256 = "1919wzlvhfxdxficbwhp31xlhm0571grgcmsfdp5y36z9yqwahfy"; + sha256 = "0il751lgnfkx35h1m8fzwwnrygpxjx2a80gng1i1rbybkykf7l3l"; }; nativeBuildInputs = [ makeQtWrapper ]; buildInputs = [ cmake freetype libpng mesa gettext openssl perl libiconv qtscript - qtserialport qttools + qtserialport qttools qtmultimedia ]; enableParallelBuilding = true; diff --git a/pkgs/applications/science/biology/freebayes/builder.sh b/pkgs/applications/science/biology/freebayes/builder.sh new file mode 100644 index 000000000000..a9f56e77d7e3 --- /dev/null +++ b/pkgs/applications/science/biology/freebayes/builder.sh @@ -0,0 +1,11 @@ +source $stdenv/setup + +unpackPhase + +cd freebayes-* + +make + +mkdir -p $out/bin +cp bin/freebayes bin/bamleftalign $out/bin +cp scripts/* $out/bin diff --git a/pkgs/applications/science/biology/freebayes/default.nix b/pkgs/applications/science/biology/freebayes/default.nix new file mode 100644 index 000000000000..ef0da619b25a --- /dev/null +++ b/pkgs/applications/science/biology/freebayes/default.nix @@ -0,0 +1,27 @@ +{ stdenv, fetchFromGitHub, cmake, gcc, zlib}: + +stdenv.mkDerivation rec { + name = "freebayes-${version}"; + version = "1.1.0"; + + src = fetchFromGitHub { + name = "freebayes-${version}-src"; + owner = "ekg"; + repo = "freebayes"; + rev = "refs/tags/v${version}"; + sha256 = "0xb8aicb36w9mfs1gq1x7mcp3p82kl7i61d162hfncqzg2npg8rr"; + fetchSubmodules = true; + }; + + buildInputs = [ cmake gcc zlib ]; + + builder = ./builder.sh; + + meta = with stdenv.lib; { + description = "Bayesian haplotype-based polymorphism discovery and genotyping"; + license = licenses.mit; + homepage = https://github.com/ekg/freebayes; + maintainers = with maintainers; [ jdagilliland ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/applications/science/biology/igv/default.nix b/pkgs/applications/science/biology/igv/default.nix index 3d0f7154e0e0..3acf7d965279 100644 --- a/pkgs/applications/science/biology/igv/default.nix +++ b/pkgs/applications/science/biology/igv/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "igv-${version}"; - version = "2.3.77"; + version = "2.3.89"; src = fetchurl { url = "http://data.broadinstitute.org/igv/projects/downloads/IGV_${version}.zip"; - sha256 = "9d8c622649f9f02026e92fa44006bb57e897baad4359c8708ca9cdbb71f94bb5"; + sha256 = "06bmj9jsnk5010ipv0w4qlcvgw67dy8hsvgcx9l74v3s0zp5di3y"; }; buildInputs = [ unzip jre ]; diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/8.4.nix index f162fe4a86ea..f162fe4a86ea 100644 --- a/pkgs/applications/science/logic/coq/default.nix +++ b/pkgs/applications/science/logic/coq/8.4.nix diff --git a/pkgs/applications/science/logic/coq/8.6.nix b/pkgs/applications/science/logic/coq/8.6.nix new file mode 100644 index 000000000000..9d3aa756aa58 --- /dev/null +++ b/pkgs/applications/science/logic/coq/8.6.nix @@ -0,0 +1,88 @@ +# - coqide compilation can be disabled by setting lablgtk to null; +# - The csdp program used for the Micromega tactic is statically referenced. +# However, coq can build without csdp by setting it to null. +# In this case some Micromega tactics will search the user's path for the csdp program and will fail if it is not found. +# - The patch-level version can be specified through the `pl` argument to +# the derivation; it defaults to the greatest. + +{ stdenv, fetchurl, writeText, pkgconfig +, ocaml, findlib, camlp5, ncurses +, lablgtk ? null, csdp ? null +, pl ? "1" +}: + +let + # version = "8.6pl${pl}"; + version = "8.6"; + sha256 = "1pw1xvy1657l1k69wrb911iqqflzhhp8wwsjvihbgc72r3skqg3f"; + coq-version = "8.6"; + buildIde = lablgtk != null; + ideFlags = if buildIde then "-lablgtkdir ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -coqide opt" else ""; + csdpPatch = if csdp != null then '' + substituteInPlace plugins/micromega/sos.ml --replace "; csdp" "; ${csdp}/bin/csdp" + substituteInPlace plugins/micromega/coq_micromega.ml --replace "System.is_in_system_path \"csdp\"" "true" + '' else ""; +in + +stdenv.mkDerivation { + name = "coq-${version}"; + + inherit coq-version; + inherit ocaml camlp5; + + src = fetchurl { + url = "http://coq.inria.fr/distrib/V${version}/files/coq-${version}.tar.gz"; + inherit sha256; + }; + + buildInputs = [ pkgconfig ocaml findlib camlp5 ncurses lablgtk ]; + + postPatch = '' + UNAME=$(type -tp uname) + RM=$(type -tp rm) + substituteInPlace configure --replace "/bin/uname" "$UNAME" + substituteInPlace tools/beautify-archive --replace "/bin/rm" "$RM" + substituteInPlace configure.ml --replace '"md5 -q"' '"md5sum"' + ${csdpPatch} + ''; + + setupHook = writeText "setupHook.sh" '' + addCoqPath () { + if test -d "''$1/lib/coq/${coq-version}/user-contrib"; then + export COQPATH="''${COQPATH}''${COQPATH:+:}''$1/lib/coq/${coq-version}/user-contrib/" + fi + } + + envHooks=(''${envHooks[@]} addCoqPath) + ''; + + preConfigure = '' + configureFlagsArray=( + -opt + ${ideFlags} + ) + ''; + + prefixKey = "-prefix "; + + buildFlags = "revision coq coqide bin/votour"; + + postInstall = '' + cp bin/votour $out/bin/ + ''; + + meta = with stdenv.lib; { + description = "Coq proof assistant"; + longDescription = '' + Coq is a formal proof management system. It provides a formal language + to write mathematical definitions, executable algorithms and theorems + together with an environment for semi-interactive development of + machine-checked proofs. + ''; + homepage = "http://coq.inria.fr"; + license = licenses.lgpl21; + branch = coq-version; + maintainers = with maintainers; [ roconnor thoughtpolice vbgl ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/applications/science/logic/coq/HEAD.nix b/pkgs/applications/science/logic/coq/HEAD.nix index 86935b178d99..f6837397e21a 100644 --- a/pkgs/applications/science/logic/coq/HEAD.nix +++ b/pkgs/applications/science/logic/coq/HEAD.nix @@ -6,8 +6,8 @@ {stdenv, fetchgit, writeText, pkgconfig, ocaml, findlib, camlp5, ncurses, lablgtk ? null, csdp ? null}: let - version = "8.5pre-0c999f02"; - coq-version = "8.5"; + version = "8.6pre-0c999f02"; + coq-version = "8.6"; buildIde = lablgtk != null; ideFlags = if buildIde then "-lablgtkdir ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -coqide opt" else ""; csdpPatch = if csdp != null then '' @@ -24,20 +24,18 @@ stdenv.mkDerivation { src = fetchgit { url = git://scm.gforge.inria.fr/coq/coq.git; - rev = "0c999f02ffcd61fcace0cc2d045056a82992a100"; - sha256 = "08z9z4bv4a8ha1jrn18vxad6d7y7h92ggr00rx8jfvvi290n9344"; + rev = "ad768e435a736ca51ac79a575967b388b34918c7"; + sha256 = "05s7sk1l3mvdjag3idnhkpj707y4bv56da7kpffw862f2qgfr77j"; }; buildInputs = [ pkgconfig ocaml findlib camlp5 ncurses lablgtk ]; - patches = [ ./no-codesign.patch ]; - postPatch = '' UNAME=$(type -tp uname) RM=$(type -tp rm) substituteInPlace configure --replace "/bin/uname" "$UNAME" substituteInPlace tools/beautify-archive --replace "/bin/rm" "$RM" - substituteInPlace Makefile.build --replace "ifeq (\$(ARCH),Darwin)" "ifeq (\$(ARCH),Darwinx)" + substituteInPlace configure.ml --replace "\"Darwin\"; \"FreeBSD\"; \"OpenBSD\"" "\"Darwinx\"; \"FreeBSD\"; \"OpenBSD\"" ${csdpPatch} ''; diff --git a/pkgs/applications/science/logic/hol_light/Makefile.patch b/pkgs/applications/science/logic/hol_light/Makefile.patch index b572001a75d6..5c1ec4f7aaf1 100644 --- a/pkgs/applications/science/logic/hol_light/Makefile.patch +++ b/pkgs/applications/science/logic/hol_light/Makefile.patch @@ -6,8 +6,8 @@ Index: Makefile then cp pa_j_3.1x_6.02.1.ml pa_j.ml; \ else if test ${CAMLP5_VERSION} = "6.02.2" -o ${CAMLP5_VERSION} = "6.02.3" -o ${CAMLP5_VERSION} = "6.03" -o ${CAMLP5_VERSION} = "6.04" -o ${CAMLP5_VERSION} = "6.05" -o ${CAMLP5_VERSION} = "6.06" ; \ then cp pa_j_3.1x_6.02.2.ml pa_j.ml; \ -- else if test ${CAMLP5_VERSION} = "6.06" -o ${CAMLP5_VERSION} = "6.07" -o ${CAMLP5_VERSION} = "6.08" -o ${CAMLP5_VERSION} = "6.09" -o ${CAMLP5_VERSION} = "6.10" -o ${CAMLP5_VERSION} = "6.11" -o ${CAMLP5_VERSION} = "6.12" ; \ -+ else if test ${CAMLP5_VERSION} = "6.06" -o ${CAMLP5_VERSION} = "6.07" -o ${CAMLP5_VERSION} = "6.08" -o ${CAMLP5_VERSION} = "6.09" -o ${CAMLP5_VERSION} = "6.10" -o ${CAMLP5_VERSION} = "6.11" -o ${CAMLP5_VERSION} = "6.12" -o ${CAMLP5_VERSION} = "6.13" -o ${CAMLP5_VERSION} = "6.14" -o ${CAMLP5_VERSION} = "6.16" ; \ +- else if test ${CAMLP5_VERSION} = "6.06" -o ${CAMLP5_VERSION} = "6.07" -o ${CAMLP5_VERSION} = "6.08" -o ${CAMLP5_VERSION} = "6.09" -o ${CAMLP5_VERSION} = "6.10" -o ${CAMLP5_VERSION} = "6.11" -o ${CAMLP5_VERSION} = "6.12" -o ${CAMLP5_VERSION} = "6.13" -o ${CAMLP5_VERSION} = "6.14" -o ${CAMLP5_VERSION} = "6.15" -o ${CAMLP5_VERSION} = "6.16" ; \ ++ else if test ${CAMLP5_VERSION} = "6.06" -o ${CAMLP5_VERSION} = "6.07" -o ${CAMLP5_VERSION} = "6.08" -o ${CAMLP5_VERSION} = "6.09" -o ${CAMLP5_VERSION} = "6.10" -o ${CAMLP5_VERSION} = "6.11" -o ${CAMLP5_VERSION} = "6.12" -o ${CAMLP5_VERSION} = "6.13" -o ${CAMLP5_VERSION} = "6.14" -o ${CAMLP5_VERSION} = "6.15" -o ${CAMLP5_VERSION} = "6.16" -o ${CAMLP5_VERSION} = "6.17" ; \ then cp pa_j_3.1x_6.11.ml pa_j.ml; \ else cp pa_j_3.1x_${CAMLP5_BINARY_VERSION}.xx.ml pa_j.ml; \ fi \ diff --git a/pkgs/applications/science/logic/hol_light/default.nix b/pkgs/applications/science/logic/hol_light/default.nix index bc391c47b8bc..fbd732595e6c 100644 --- a/pkgs/applications/science/logic/hol_light/default.nix +++ b/pkgs/applications/science/logic/hol_light/default.nix @@ -20,6 +20,8 @@ stdenv.mkDerivation { buildInputs = [ ocaml camlp5 ]; + patches = [ ./Makefile.patch ]; + installPhase = '' mkdir -p "$out/lib/hol_light" "$out/bin" cp -a . $out/lib/hol_light diff --git a/pkgs/applications/science/logic/lean/default.nix b/pkgs/applications/science/logic/lean/default.nix index e833b4afbbd2..d1f4bc0a4145 100644 --- a/pkgs/applications/science/logic/lean/default.nix +++ b/pkgs/applications/science/logic/lean/default.nix @@ -1,29 +1,23 @@ -{ stdenv, fetchFromGitHub, cmake, gmp, mpfr, boost, python -, gperftools, ninja, makeWrapper }: +{ stdenv, fetchFromGitHub, cmake, gmp, mpfr, gperftools }: stdenv.mkDerivation rec { name = "lean-${version}"; - version = "2016-07-05"; + version = "2016-12-08"; src = fetchFromGitHub { owner = "leanprover"; repo = "lean"; - rev = "cc70845332e63a1f1be21dc1f96d17269fc85909"; - sha256 = "09qz2vjw7whiggvw0cdaa4i2f49wnch2sd4r43glq181ssln27d6"; + rev = "7b63d6566faaf1dc0f2c8e873c61f51dce9ab618"; + sha256 = "0xxr7dnh7pmdbpxhl3cq9clwamxjk54zcxplsrz6xirk0qy7ga4l"; }; - buildInputs = [ gmp mpfr boost cmake python gperftools ninja makeWrapper ]; + buildInputs = [ gmp mpfr cmake gperftools ]; enableParallelBuilding = true; preConfigure = '' - patchShebangs bin/leantags cd src ''; - postInstall = '' - wrapProgram $out/bin/linja --prefix PATH : $out/bin:${ninja}/bin - ''; - meta = with stdenv.lib; { description = "Automatic and interactive theorem prover"; homepage = "http://leanprover.github.io"; diff --git a/pkgs/applications/science/logic/lean2/default.nix b/pkgs/applications/science/logic/lean2/default.nix new file mode 100644 index 000000000000..a938af72f587 --- /dev/null +++ b/pkgs/applications/science/logic/lean2/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchFromGitHub, cmake, gmp, mpfr, boost, python +, gperftools, ninja, makeWrapper }: + +stdenv.mkDerivation rec { + name = "lean2-${version}"; + version = "2016-11-29"; + + src = fetchFromGitHub { + owner = "leanprover"; + repo = "lean2"; + rev = "a086fb334838c427bbc8f984eb44a4cbbe013a6b"; + sha256 = "0qlvhnb37amclgcyizl8bfab33b0a3jk54br9gsrik8cq76lkwwx"; + }; + + buildInputs = [ gmp mpfr cmake python gperftools ninja makeWrapper ]; + enableParallelBuilding = true; + + preConfigure = '' + patchShebangs bin/leantags + cd src + ''; + + postInstall = '' + wrapProgram $out/bin/linja --prefix PATH : $out/bin:${ninja}/bin + ''; + + meta = with stdenv.lib; { + description = "Automatic and interactive theorem prover (version with HoTT support)"; + homepage = "http://leanprover.github.io"; + license = licenses.asl20; + platforms = platforms.unix; + maintainers = with maintainers; [ thoughtpolice gebner ]; + }; +} diff --git a/pkgs/applications/science/logic/minisat/darwin.patch b/pkgs/applications/science/logic/minisat/darwin.patch new file mode 100644 index 000000000000..f2b618d6bb3a --- /dev/null +++ b/pkgs/applications/science/logic/minisat/darwin.patch @@ -0,0 +1,26 @@ +https://github.com/fasterthanlime/homebrew-mingw/blob/master/Library/Formula/minisat.rb + +diff --git a/utils/System.cc b/utils/System.cc +index a7cf53f..feeaf3c 100644 +--- a/utils/System.cc ++++ b/utils/System.cc +@@ -78,16 +78,17 @@ double Minisat::memUsed(void) { + struct rusage ru; + getrusage(RUSAGE_SELF, &ru); + return (double)ru.ru_maxrss / 1024; } +-double MiniSat::memUsedPeak(void) { return memUsed(); } ++double Minisat::memUsedPeak(void) { return memUsed(); } + + + #elif defined(__APPLE__) + #include <malloc/malloc.h> + +-double Minisat::memUsed(void) { ++double Minisat::memUsed() { + malloc_statistics_t t; + malloc_zone_statistics(NULL, &t); + return (double)t.max_size_in_use / (1024*1024); } ++double Minisat::memUsedPeak() { return memUsed(); } + + #else + double Minisat::memUsed() { diff --git a/pkgs/applications/science/logic/minisat/default.nix b/pkgs/applications/science/logic/minisat/default.nix index 3ed055cc0936..d980afee7c4e 100644 --- a/pkgs/applications/science/logic/minisat/default.nix +++ b/pkgs/applications/science/logic/minisat/default.nix @@ -9,7 +9,9 @@ stdenv.mkDerivation rec { sha256 = "023qdnsb6i18yrrawlhckm47q8x0sl7chpvvw3gssfyw3j2pv5cj"; }; - patches = stdenv.lib.optionals stdenv.cc.isClang [ ./clang.diff ]; + patches = + [ ./darwin.patch ] + ++ stdenv.lib.optionals stdenv.cc.isClang [ ./clang.diff ]; buildInputs = [ zlib ]; diff --git a/pkgs/applications/science/math/pari/default.nix b/pkgs/applications/science/math/pari/default.nix index 0cda65b32c30..64784facfb96 100644 --- a/pkgs/applications/science/math/pari/default.nix +++ b/pkgs/applications/science/math/pari/default.nix @@ -1,30 +1,56 @@ -{ stdenv, fetchurl, gmp, readline }: +{ stdenv, fetchurl +, gmp, readline, libX11, libpthreadstubs, tex, perl }: stdenv.mkDerivation rec { - version = "2.7.6"; + name = "pari-${version}"; + version = "2.9.1"; src = fetchurl { url = "http://pari.math.u-bordeaux.fr/pub/pari/unix/${name}.tar.gz"; - sha256 = "04dqi697czd8mmw8aiwzrkgbvkjassqagg6lfy3lkf1k5qi9g9rr"; + sha256 = "0rq7wz9df1xs4acdzzb5dapx8vs6m5py39n2wynw2qv4d2b0ylfw"; }; - buildInputs = [gmp readline]; + buildInputs = [ gmp readline libX11 libpthreadstubs tex perl ]; configureScript = "./Configure"; configureFlags = + "--mt=pthread" + "--with-gmp=${gmp.dev} " + "--with-readline=${readline.dev}"; + makeFlags = "all"; + meta = with stdenv.lib; { description = "Computer algebra system for high-performance number theory computations"; + longDescription = '' + PARI/GP is a widely used computer algebra system designed for fast + computations in number theory (factorizations, algebraic number theory, + elliptic curves...), but also contains a large number of other useful + functions to compute with mathematical entities such as matrices, + polynomials, power series, algebraic numbers etc., and a lot of + transcendental functions. PARI is also available as a C library to allow + for faster computations. + + Originally developed by Henri Cohen and his co-workers (Université + Bordeaux I, France), PARI is now under the GPL and maintained by Karim + Belabas with the help of many volunteer contributors. + + - PARI is a C library, allowing fast computations. + - gp is an easy-to-use interactive shell giving access to the + PARI functions. + - GP is the name of gp's scripting language. + - gp2c, the GP-to-C compiler, combines the best of both worlds + by compiling GP scripts to the C language and transparently loading + the resulting functions into gp. (gp2c-compiled scripts will typically + run 3 or 4 times faster.) gp2c currently only understands a subset + of the GP language. + ''; homepage = "http://pari.math.u-bordeaux.fr/"; + downloadPage = "http://pari.math.u-bordeaux.fr/download.html"; license = licenses.gpl2Plus; - maintainers = with maintainers; [ ertes raskin ]; + maintainers = with maintainers; [ ertes raskin AndersonTorres ]; platforms = platforms.linux; - - inherit version; - downloadPage = "http://pari.math.u-bordeaux.fr/download.html"; updateWalker = true; }; } diff --git a/pkgs/applications/science/math/pari/gp2c.nix b/pkgs/applications/science/math/pari/gp2c.nix new file mode 100644 index 000000000000..007514e65528 --- /dev/null +++ b/pkgs/applications/science/math/pari/gp2c.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchurl +, pari, perl }: + +stdenv.mkDerivation rec { + + name = "gp2c-${version}"; + version = "0.0.10"; + + src = fetchurl { + url = "http://pari.math.u-bordeaux.fr/pub/pari/GP2C/${name}.tar.gz"; + sha256 = "1xhpz5p81iw261ay1kip283ggr0ir8ydz8qx3v24z8jfms1r3y70"; + }; + + buildInputs = [ pari perl ]; + + configureFlags = [ + "--with-paricfg=${pari}/lib/pari/pari.cfg" + "--with-perl=${perl}/bin/perl" ]; + + meta = with stdenv.lib; { + description = "A compiler to translate GP scripts to PARI programs"; + homepage = "http://pari.math.u-bordeaux.fr/"; + downloadPage = "http://pari.math.u-bordeaux.fr/download.html"; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ AndersonTorres ]; + }; +} +# TODO: add it as "source file" for default package diff --git a/pkgs/applications/science/robotics/yarp/default.nix b/pkgs/applications/science/robotics/yarp/default.nix index 5e4bda1aaa06..76b05c8a3a71 100644 --- a/pkgs/applications/science/robotics/yarp/default.nix +++ b/pkgs/applications/science/robotics/yarp/default.nix @@ -3,12 +3,12 @@ stdenv.mkDerivation rec { name = "yarp-${version}"; - version = "2.3.66"; + version = "2.3.68"; src = fetchFromGitHub { owner = "robotology"; repo = "yarp"; - rev = "v${version}.1"; - sha256 = "0hznysxhk6pd92fymcrnbbl8ah7rcwhcvb6n92v09zjv6yl5xpiq"; + rev = "v${version}"; + sha256 = "1ksz2kv4v14fqgz3fsvvmdk2sikhnxr11jhhf7c2547x6jbzhda6"; }; buildInputs = [ cmake ace ]; |