diff options
author | Shea Levy <shea@shealevy.com> | 2011-08-24 19:16:43 +0000 |
---|---|---|
committer | Shea Levy <shea@shealevy.com> | 2011-08-24 19:16:43 +0000 |
commit | 4d70ba6cc960555c9e1f701a88517e99232b2148 (patch) | |
tree | 7fc328746167a757526bf4165584e3bfb8a83b4f /pkgs/applications/science | |
parent | 5d62c65d6e085481a36c857e8b86f88d80b1c565 (diff) | |
parent | b58016b007444b25ab5256eb21896cd859038901 (diff) | |
download | nixlib-4d70ba6cc960555c9e1f701a88517e99232b2148.tar nixlib-4d70ba6cc960555c9e1f701a88517e99232b2148.tar.gz nixlib-4d70ba6cc960555c9e1f701a88517e99232b2148.tar.bz2 nixlib-4d70ba6cc960555c9e1f701a88517e99232b2148.tar.lz nixlib-4d70ba6cc960555c9e1f701a88517e99232b2148.tar.xz nixlib-4d70ba6cc960555c9e1f701a88517e99232b2148.tar.zst nixlib-4d70ba6cc960555c9e1f701a88517e99232b2148.zip |
Merge from trunk up through r28790
svn path=/nixpkgs/branches/stdenv-updates/; revision=28792
Diffstat (limited to 'pkgs/applications/science')
28 files changed, 496 insertions, 360 deletions
diff --git a/pkgs/applications/science/astronomy/gravit/default.nix b/pkgs/applications/science/astronomy/gravit/default.nix new file mode 100644 index 000000000000..8af963f84bc1 --- /dev/null +++ b/pkgs/applications/science/astronomy/gravit/default.nix @@ -0,0 +1,41 @@ +{ stdenv, fetchurl, SDL, SDL_ttf, SDL_image, mesa, lua5_0 }: + +let + name = "gravit-0.4.2"; +in +stdenv.mkDerivation { + inherit name; + + src = fetchurl { + url = "http://gravit.slowchop.com/dist/${name}.tar.gz"; + sha256 = "f37f3ac256a4acbf575f709addaae8cb01eda4f85537affa28c45f2df6fddb07"; + }; + + buildInputs = [mesa SDL SDL_ttf SDL_image lua5_0]; + + configureFlags = "CFLAGS=-O3 CXXFLAGS=-O3"; + + postInstall = '' + mv $out/etc/gravit $out/share/gravit/sample-config + rmdir $out/etc + ''; + + meta = { + homepage = "http://gravit.slowchop.com"; + description = "A beautiful OpenGL-based gravity simulator"; + license = "GPLv2"; + + longDescription = '' + Gravit is a gravity simulator which runs under Linux, Windows and + Mac OS X. It uses Newtonian physics using the Barnes-Hut N-body + algorithm. Although the main goal of Gravit is to be as accurate + as possible, it also creates beautiful looking gravity patterns. + It records the history of each particle so it can animate and + display a path of its travels. At any stage you can rotate your + view in 3D and zoom in and out. + ''; + + platforms = stdenv.lib.platforms.mesaPlatforms; + maintainers = [ stdenv.lib.maintainers.simons ]; + }; +} diff --git a/pkgs/applications/science/astronomy/stellarium/default.nix b/pkgs/applications/science/astronomy/stellarium/default.nix new file mode 100644 index 000000000000..acf7721489a7 --- /dev/null +++ b/pkgs/applications/science/astronomy/stellarium/default.nix @@ -0,0 +1,31 @@ +{stdenv, fetchurl, cmake, freetype, libpng, mesa, gettext, openssl, qt4, perl, libiconv}: + +let + name = "stellarium-0.11.0"; +in +stdenv.mkDerivation { + inherit name; + + src = fetchurl { + url = "mirror://sourceforge/stellarium/${name}.tar.gz"; + sha256 = "dbedf47dd0744fb325d67d63d1279101be7f4259af2a5e8027f1072012dd2587"; + }; + + buildInputs = [ cmake freetype libpng mesa gettext openssl qt4 perl libiconv ]; + + cmakeFlags = "-DINTL_INCLUDE_DIR= -DINTL_LIBRARIES="; + preConfigure = '' + sed -i -e '/typedef void (\*__GLXextFuncPtr)(void);/d' src/core/external/GLee.h + ''; + + enableParallelBuilding = true; + + meta = { + description = "an free open source planetarium"; + homepage = http://stellarium.org/; + license = "GPL2"; + + platforms = stdenv.lib.platforms.linux; # should be mesaPlatforms, but we don't have qt on darwin + maintainers = [ stdenv.lib.maintainers.simons ]; + }; +} diff --git a/pkgs/applications/science/xplanet/default.nix b/pkgs/applications/science/astronomy/xplanet/default.nix index 15e04c3835c3..15e04c3835c3 100644 --- a/pkgs/applications/science/xplanet/default.nix +++ b/pkgs/applications/science/astronomy/xplanet/default.nix diff --git a/pkgs/applications/science/chemistry/avogadro/default.nix b/pkgs/applications/science/chemistry/avogadro/default.nix new file mode 100644 index 000000000000..702f4c28912f --- /dev/null +++ b/pkgs/applications/science/chemistry/avogadro/default.nix @@ -0,0 +1,19 @@ +{ stdenv, fetchurl, cmake, qt4, zlib, eigen, openbabel }: + +stdenv.mkDerivation rec { + name = "avogadro-1.0.3"; + + src = fetchurl { + url = "mirror://sourceforge/avogadro/${name}.tar.bz2"; + sha256 = "0s44r78vm7hf4cs13d2qki3gf178gjj1ihph6rs04g6s4figvdpg"; + }; + + buildInputs = [ qt4 eigen zlib openbabel ]; + + buildNativeInputs = [ cmake ]; + + meta = { + maintainers = [ stdenv.lib.maintainers.urkud ]; + inherit (qt4.meta) platforms; + }; +} diff --git a/pkgs/applications/science/electronics/gtkwave/default.nix b/pkgs/applications/science/electronics/gtkwave/default.nix index 87a18c20e990..72c3f3e24356 100644 --- a/pkgs/applications/science/electronics/gtkwave/default.nix +++ b/pkgs/applications/science/electronics/gtkwave/default.nix @@ -1,10 +1,10 @@ {stdenv, fetchurl, gtk, gperf, pkgconfig, bzip2, xz, tcl, tk, judy} : stdenv.mkDerivation rec { - name = "gtkwave-3.3.11"; + name = "gtkwave-3.3.20"; src = fetchurl { url = "mirror://sourceforge/gtkwave/${name}.tar.gz"; - sha256 = "1krhxdpzj2ma3xisbk0d9yzhlk1i60hgkkfycc2nsqqirqrvdpbr"; + sha256 = "0r2yh8a5rrxjzvykdmqlb098wws5c9k255saf2bsdchnigs8il3n"; }; buildInputs = [ gtk gperf pkgconfig bzip2 xz tcl tk judy]; diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix index a804d9f84e6a..35395bd25d1e 100644 --- a/pkgs/applications/science/logic/coq/default.nix +++ b/pkgs/applications/science/logic/coq/default.nix @@ -4,7 +4,7 @@ {stdenv, fetchurl, ocaml, findlib, camlp5, lablgtk, ncurses}: let - version = "8.3"; + version = "8.3pl1"; in stdenv.mkDerivation { @@ -12,7 +12,7 @@ stdenv.mkDerivation { src = fetchurl { url = "http://coq.inria.fr/V${version}/files/coq-${version}.tar.gz"; - sha256 = "02iy4rxz1n1kc85fb3vs4xpxqfxjw87y2gvmi39fxrj8742qx0dx"; + sha256 = "0a791gsbf17y2wi0a376n78pxkhpl0lkzifhy5d3mx3lpn376j9s"; }; buildInputs = [ ocaml findlib camlp5 ncurses lablgtk ]; @@ -23,7 +23,7 @@ stdenv.mkDerivation { configureFlagsArray=( -camldir ${ocaml}/bin -camlp5dir $(ocamlfind query camlp5) - -lablgtkdir ${lablgtk}/lib/ocaml/lablgtk2 -opt -coqide opt + -lablgtkdir ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -opt -coqide opt ) ''; @@ -38,9 +38,12 @@ stdenv.mkDerivation { substituteInPlace tools/beautify-archive --replace "/bin/rm" "$RM" substituteInPlace scripts/coqmktop.ml --replace \ "\"-I\"; \"+lablgtk2\"" \ - "\"-I\"; \"${lablgtk}/lib/ocaml/lablgtk2\"; \"-I\"; \"${lablgtk}/lib/ocaml/stublibs\"" + "\"-I\"; \"$(echo "${lablgtk}"/lib/ocaml/*/site-lib/lablgtk2)\"; \"-I\"; \"$(echo "${lablgtk}"/lib/ocaml/*/site-lib/stublibs)\"" ''; + # This post install step is needed to build ssrcoqide from the ssreflect package + # It could be made optional, but I see little harm in including it in the default + # distribution -- roconnor postInstall = '' cp ide/*.cmi ide/ide.*a $out/lib/coq/ide/ ''; diff --git a/pkgs/applications/science/logic/hol_light/default.nix b/pkgs/applications/science/logic/hol_light/default.nix index f923095f857e..d835e351cac6 100644 --- a/pkgs/applications/science/logic/hol_light/default.nix +++ b/pkgs/applications/science/logic/hol_light/default.nix @@ -1,43 +1,36 @@ -{stdenv, writeText, writeTextFile, ocaml, findlib, camlp5_transitional, hol_light_sources}: +{stdenv, fetchsvn, writeScript, ocaml, findlib, camlp5}: -let - version = hol_light_sources.version; +stdenv.mkDerivation rec { + name = "hol_light-20110813"; + src = fetchsvn { + url = http://hol-light.googlecode.com/svn/trunk; + rev = "102"; + sha256 = "5b972672db6aa1838dc5d130accd9ab6a62030c6b0c1dc4b69e42088b1ae86c9"; + }; - camlp5 = camlp5_transitional; + buildInputs = [ ocaml findlib camlp5 ]; - hol_light_src_dir = "${hol_light_sources}/lib/hol_light/src"; + start_script = '' + #!/bin/sh + cd "$out/lib/hol_light" + exec ${ocaml}/bin/ocaml -I "$(ocamlfind query camlp5)" -init make.ml + ''; - pa_j_cmo = stdenv.mkDerivation { - name = "pa_j.cmo"; - inherit ocaml camlp5; - buildInputs = [ ocaml camlp5 findlib ]; - buildCommand = '' - ocamlc -c \ - -pp "camlp5r pa_lexer.cmo pa_extend.cmo q_MLast.cmo" \ - -I "$(ocamlfind query camlp5)" \ - -o $out \ - "${hol_light_src_dir}/pa_j_`ocamlc -version | cut -c1-4`.ml" - ''; - }; + buildPhase = '' + make pa_j.ml + ocamlc -c \ + -pp "camlp5r pa_lexer.cmo pa_extend.cmo q_MLast.cmo" \ + -I "$(ocamlfind query camlp5)" \ + pa_j.ml + ''; - start_ml = writeText "start.ml" '' - Topdirs.dir_directory "${hol_light_src_dir}";; - Topdirs.dir_directory ("${camlp5}/lib/ocaml/"^Sys.ocaml_version^"/site-lib/camlp5");; - Topdirs.dir_load Format.std_formatter "camlp5o.cma";; - Topdirs.dir_load Format.std_formatter "${pa_j_cmo}";; - #use "${hol_light_src_dir}/make.ml";; + installPhase = '' + ensureDir "$out/lib/hol_light" "$out/bin" + cp -a . $out/lib/hol_light + echo "${start_script}" > "$out/bin/hol_light" + chmod a+x "$out/bin/hol_light" ''; -in -writeTextFile { - name = "hol_light-${version}"; - destination = "/bin/start_hol_light"; - executable = true; - text = '' - #!/bin/sh - exec ${ocaml}/bin/ocaml -init ${start_ml} - ''; -} // { - inherit (hol_light_sources) version src; + meta = { description = "An interactive theorem prover based on Higher-Order Logic."; longDescription = '' diff --git a/pkgs/applications/science/logic/hol_light/dmtcp_checkpoint.nix b/pkgs/applications/science/logic/hol_light/dmtcp_checkpoint.nix deleted file mode 100644 index 9071d63c298a..000000000000 --- a/pkgs/applications/science/logic/hol_light/dmtcp_checkpoint.nix +++ /dev/null @@ -1,99 +0,0 @@ -{stdenv, writeTextFile, hol_light, dmtcp}: -let - mkRestartScript = checkpointFile: - let filename = "hol_light_${checkpointFile.variant}_dmtcp"; in - writeTextFile { - name = "${filename}-${hol_light.version}"; - destination = "/bin/${filename}"; - executable = true; - text = '' - #!/bin/sh - exec ${dmtcp}/bin/dmtcp_restart --quiet ${checkpointFile} - ''; - }; - - mkCkptFile = - { variant - , banner - , loads - , startCkpt ? null - , buildCommand ? '' - cp ${startCkpt} hol_light_restart.ckpt - (echo "$loadScript" | dmtcp_restart --quiet hol_light_restart.ckpt) || exit 0 - cp hol_light_restart.ckpt $out - '' - }: - stdenv.mkDerivation rec { - name = "hol_light_${variant}_dmtcp.checkpoint-${hol_light.version}"; - inherit variant banner buildCommand; - buildInputs = [ dmtcp hol_light ]; - loadScript = '' - ${loads} - dmtcp_checkpoint "${banner}";; - ''; - }; -in -rec { - hol_light_core_dmtcp = mkRestartScript hol_light_core_dmtcp_ckpt; - hol_light_sosa_dmtcp = mkRestartScript hol_light_sosa_dmtcp_ckpt; - hol_light_card_dmtcp = mkRestartScript hol_light_card_dmtcp_ckpt; - hol_light_multivariate_dmtcp = mkRestartScript hol_light_multivariate_dmtcp_ckpt; - hol_light_complex_dmtcp = mkRestartScript hol_light_complex_dmtcp_ckpt; - - hol_light_core_dmtcp_ckpt = mkCkptFile rec { - variant = "core"; - banner = ""; - loads = '' - #use "${./dmtcp_selfdestruct.ml}";; - ''; - buildCommand = '' - (echo "$loadScript" | dmtcp_checkpoint --quiet ${hol_light}/bin/start_hol_light) || exit 0 - mv ckpt* $out - ''; - }; - - hol_light_multivariate_dmtcp_ckpt = mkCkptFile { - variant = "multivariate"; - banner = "Preloaded with multivariate analysis"; - loads = '' - loadt "Multivariate/make.ml";; - ''; - startCkpt = hol_light_core_dmtcp_ckpt; - }; - - hol_light_sosa_dmtcp_ckpt = mkCkptFile { - variant = "sosa"; - banner = "Preloaded with analysis and SOS"; - loads = '' - loadt "Library/analysis.ml";; - loadt "Library/transc.ml";; - loadt "Examples/sos.ml";; - loadt "update_database.ml";; - ''; - startCkpt = hol_light_core_dmtcp_ckpt; - }; - - hol_light_card_dmtcp_ckpt = mkCkptFile { - variant = "card"; - banner = "Preloaded with cardinal arithmetic"; - loads = '' - loadt "Library/card.ml";; - loadt "update_database.ml";; - ''; - startCkpt = hol_light_core_dmtcp_ckpt; - }; - - hol_light_complex_dmtcp_ckpt = mkCkptFile { - variant = "complex"; - banner = "Preloaded with multivariate-based complex analysis"; - loads = '' - loadt "Multivariate/complexes.ml";; - loadt "Multivariate/canal.ml";; - loadt "Multivariate/transcendentals.ml";; - loadt "Multivariate/realanalysis.ml";; - loadt "Multivariate/cauchy.ml";; - loadt "Multivariate/complex_database.ml";; - ''; - startCkpt = hol_light_multivariate_dmtcp_ckpt; - }; -} diff --git a/pkgs/applications/science/logic/hol_light/dmtcp_selfdestruct.ml b/pkgs/applications/science/logic/hol_light/dmtcp_selfdestruct.ml deleted file mode 100644 index f85a7a6c5fdf..000000000000 --- a/pkgs/applications/science/logic/hol_light/dmtcp_selfdestruct.ml +++ /dev/null @@ -1,19 +0,0 @@ -(* ------------------------------------------------------------------------- *) -(* Create a standalone HOL image. Assumes that we are running under Linux *) -(* and have the program "dmtcp" available to create checkpoints. *) -(* ------------------------------------------------------------------------- *) - -let dmtcp_checkpoint, dmtcp_selfdestruct = - let call_dmtcp opts bannerstring = - let longer_banner = startup_banner ^ " with DMTCP" in - let complete_banner = - if bannerstring = "" then longer_banner - else longer_banner^"\n "^bannerstring in - (Gc.compact(); Unix.sleep 1; - Format.print_string "Checkpointing..."; Format.print_newline(); - try ignore(Unix.system ("dmtcp_command -bc " ^ opts)) - with Unix.Unix_error _ -> (); - Format.print_string complete_banner; - Format.print_newline(); Format.print_newline()) - in - call_dmtcp "", call_dmtcp "-q";; diff --git a/pkgs/applications/science/logic/hol_light/parser_setup.patch b/pkgs/applications/science/logic/hol_light/parser_setup.patch deleted file mode 100644 index 0ad17ca1a0b0..000000000000 --- a/pkgs/applications/science/logic/hol_light/parser_setup.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -Nuar hol_light/hol.ml hol_light.nixos/hol.ml ---- hol_light/hol.ml 2010-11-03 23:09:01.000000000 +0100 -+++ hol_light.nixos/hol.ml 2010-11-03 23:10:31.000000000 +0100 -@@ -11,8 +11,8 @@ - - let hol_version = "2.20++";; - --let hol_dir = ref -- (try Sys.getenv "HOLLIGHT_DIR" with Not_found -> Sys.getcwd());; -+let hol_dir = ref "@HOL_LIGHT_SRC_DIR@";; -+Topdirs.dir_directory "@HOL_LIGHT_SRC_DIR@";; - - (* ------------------------------------------------------------------------- *) - (* Should eventually change to "ref(Filename.temp_dir_name)". *) -@@ -23,19 +23,6 @@ - let temp_path = ref "/tmp";; - - (* ------------------------------------------------------------------------- *) --(* Load in parsing extensions. *) --(* For Ocaml < 3.10, use the built-in camlp4 *) --(* and for Ocaml >= 3.10, use camlp5 instead. *) --(* ------------------------------------------------------------------------- *) -- --if let v = String.sub Sys.ocaml_version 0 4 in v >= "3.10" --then (Topdirs.dir_directory "+camlp5"; -- Topdirs.dir_load Format.std_formatter "camlp5o.cma") --else (Topdirs.dir_load Format.std_formatter "camlp4o.cma");; -- --Topdirs.dir_load Format.std_formatter (Filename.concat (!hol_dir) "pa_j.cmo");; -- --(* ------------------------------------------------------------------------- *) - (* Load files from system and/or user-settable directories. *) - (* Paths map initial "$/" to !hol_dir dynamically; use $$ to get the actual *) - (* $ character at the start of a directory. *) diff --git a/pkgs/applications/science/logic/hol_light/sources.nix b/pkgs/applications/science/logic/hol_light/sources.nix deleted file mode 100644 index b45ca4a90349..000000000000 --- a/pkgs/applications/science/logic/hol_light/sources.nix +++ /dev/null @@ -1,28 +0,0 @@ -{stdenv, fetchsvn}: - -stdenv.mkDerivation rec { - name = "hol_light_sources-${version}"; - version = "20101029"; - - src = fetchsvn { - url = http://hol-light.googlecode.com/svn/trunk; - rev = "64"; - sha256 = "91e9cac62586039b13c11af245f85a743e299892b24b39d3c7b2ee13157e87c9"; - }; - - buildCommand = '' - export HOL_DIR="$out/lib/hol_light" - ensureDir "$HOL_DIR" - cp -a "${src}" "$HOL_DIR/src" - cd "$HOL_DIR/src" - chmod +wX -R . - patch -p1 < ${./parser_setup.patch} - substituteInPlace hol.ml --subst-var-by HOL_LIGHT_SRC_DIR "$HOL_DIR/src" - ''; - - meta = { - description = "Sources for the HOL Light theorem prover"; - homepage = http://www.cl.cam.ac.uk/~jrh13/hol-light/; - license = "BSD"; - }; -} diff --git a/pkgs/applications/science/logic/isabelle/default.nix b/pkgs/applications/science/logic/isabelle/default.nix index b9e756e0423b..5705262f3771 100644 --- a/pkgs/applications/science/logic/isabelle/default.nix +++ b/pkgs/applications/science/logic/isabelle/default.nix @@ -3,7 +3,7 @@ let pname = "Isabelle"; - version = "2009-2"; + version = "2011"; name = "${pname}${version}"; theories = ["HOL" "FOL" "ZF"]; in @@ -13,7 +13,7 @@ stdenv.mkDerivation { src = fetchurl { url = "http://www.cl.cam.ac.uk/research/hvg/${pname}/dist/${name}.tar.gz"; - sha256 = "f92a275b78bd8844de47a5902e339b58f3b768c07a7fb19d8e606b68499d5ac4"; + sha256 = "ea85eb2a859891be387f020b2e45f8c9a0bd1d8bbc3902f28a429e9c61cb0b6a"; }; buildInputs = [ perl polyml nettools ]; diff --git a/pkgs/applications/science/logic/isabelle/settings.patch b/pkgs/applications/science/logic/isabelle/settings.patch index dc9c611d4886..bf509a4bac46 100644 --- a/pkgs/applications/science/logic/isabelle/settings.patch +++ b/pkgs/applications/science/logic/isabelle/settings.patch @@ -1,34 +1,32 @@ -diff -Naur Isabelle2009-1/etc/settings Isabelle2009-1-patched/etc/settings ---- Isabelle2009-1/etc/settings 2009-12-02 12:04:07.000000000 +0100 -+++ Isabelle2009-1-patched/etc/settings 2009-12-04 16:15:40.000000000 +0100 -@@ -16,15 +16,8 @@ - # Only one of the sections below should be activated. +diff -Nuar Isabelle2011/etc/settings Isabelle2011-fix/etc/settings +--- Isabelle2011/etc/settings 2011-01-30 13:02:18.000000000 +0100 ++++ Isabelle2011-fix/etc/settings 2011-05-14 22:56:04.000000000 +0200 +@@ -17,13 +17,7 @@ # Poly/ML 5.x (automated settings) --POLY_HOME="$(type -p poly)"; [ -n "$POLY_HOME" ] && POLY_HOME="$(dirname "$POLY_HOME")" ML_PLATFORM="$ISABELLE_PLATFORM" --ML_HOME=$(choosefrom \ +-ML_HOME="$(choosefrom \ - "$ISABELLE_HOME/contrib/polyml/$ML_PLATFORM" \ - "$ISABELLE_HOME/../polyml/$ML_PLATFORM" \ - "/usr/local/polyml/$ML_PLATFORM" \ - "/usr/share/polyml/$ML_PLATFORM" \ - "/opt/polyml/$ML_PLATFORM" \ -- $POLY_HOME) +- "")" +ML_HOME=@ML_HOME@ ML_SYSTEM=$("$ISABELLE_HOME/lib/scripts/polyml-version") ML_OPTIONS="-H 200" ML_SOURCES="$ML_HOME/../src" -@@ -185,13 +178,7 @@ +@@ -175,13 +169,7 @@ ### # Proof General home, look in a variety of places --PROOFGENERAL_HOME=$(choosefrom \ +-PROOFGENERAL_HOME="$(choosefrom \ - "$ISABELLE_HOME/contrib/ProofGeneral" \ - "$ISABELLE_HOME/../ProofGeneral" \ - "/usr/local/ProofGeneral" \ - "/usr/share/ProofGeneral" \ - "/opt/ProofGeneral" \ -- "") +- "")" +PROOFGENERAL_HOME=@PROOFGENERAL_HOME@ PROOFGENERAL_OPTIONS="" diff --git a/pkgs/applications/science/logic/leo2/default.nix b/pkgs/applications/science/logic/leo2/default.nix index eb3a13593480..04ab9a5b5ab3 100644 --- a/pkgs/applications/science/logic/leo2/default.nix +++ b/pkgs/applications/science/logic/leo2/default.nix @@ -11,10 +11,10 @@ let (builtins.attrNames (builtins.removeAttrs x helperArgNames)); sourceInfo = rec { baseName="leo2"; - version="1.2.6"; + version="1.2.8"; name="${baseName}_v${version}"; url="http://www.ags.uni-sb.de/~leo/${name}.tgz"; - hash="0gjgcm6nb9kzdl0y72sgvf2w2q92s1ix70lh6wjz9lj2qdf7gi1z"; + hash="d46a94f5991623386eb9061cfb0d748e258359a8c690fded173d45303e0e9e3a"; }; in rec { diff --git a/pkgs/applications/science/logic/matita/Makefile.patch b/pkgs/applications/science/logic/matita/Makefile.patch new file mode 100644 index 000000000000..64c9a13f2d07 --- /dev/null +++ b/pkgs/applications/science/logic/matita/Makefile.patch @@ -0,0 +1,11 @@ +--- matita-0.5.8/Makefile 2009-12-01 18:21:00.000000000 -0500 ++++ matita-0.5.8/Makefile 2010-09-16 10:33:59.665461260 -0400 +@@ -38,7 +38,7 @@ + uninstall: $(foreach d,$(SUBDIRS),rec@uninstall@$(d)) + + rec@%: +- $(MAKE) -C $(word 2, $(subst @, ,$*)) $(word 1, $(subst @, ,$*)) DESTDIR=$(shell pwd)/$(DESTDIR) ++ $(MAKE) -C $(word 2, $(subst @, ,$*)) $(word 1, $(subst @, ,$*)) + + # {{{ Distribution stuff + diff --git a/pkgs/applications/science/logic/matita/configure.patch b/pkgs/applications/science/logic/matita/configure.patch new file mode 100644 index 000000000000..9a3bbbb13f52 --- /dev/null +++ b/pkgs/applications/science/logic/matita/configure.patch @@ -0,0 +1,36 @@ +--- zzz/matita-0.5.8/configure 2009-12-01 18:21:00.000000000 -0500 ++++ matita-0.5.8/configure 2010-09-07 19:57:29.732139550 -0400 +@@ -1895,6 +1895,7 @@ + # look for METAS dir + + LIBSPATH="`pwd`/components" ++OLDCAMLPATH="$OCAMLPATH" + OCAMLPATH="$LIBSPATH/METAS" + + # creating META.* +@@ -1917,7 +1918,7 @@ + gdome2 \ + http \ + lablgtk2 \ +-lablgtksourceview2.gtksourceview2 \ ++lablgtk2.gtksourceview \ + lablgtkmathview \ + mysql \ + netstring \ +@@ -1951,14 +1952,14 @@ + $FINDLIB_CREQUIRES \ + lablgtk2.glade \ + lablgtkmathview \ +-lablgtksourceview2.gtksourceview2 \ ++lablgtk2.gtksourceview \ + helm-xmldiff \ + " + for r in $FINDLIB_LIBSREQUIRES $FINDLIB_REQUIRES + do + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $r ocaml library" >&5 + $as_echo_n "checking for $r ocaml library... " >&6; } +- if OCAMLPATH=$OCAMLPATH $OCAMLFIND query $r &> /dev/null; then ++ if OCAMLPATH=$OCAMLPATH:$OLDCAMLPATH $OCAMLFIND query $r &> /dev/null; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 + $as_echo "yes" >&6; } + else diff --git a/pkgs/applications/science/logic/matita/default.nix b/pkgs/applications/science/logic/matita/default.nix new file mode 100644 index 000000000000..6ac672193e27 --- /dev/null +++ b/pkgs/applications/science/logic/matita/default.nix @@ -0,0 +1,54 @@ +{stdenv, fetchurl, ocaml, camlp5, findlib, gdome2, ocaml_expat, gmetadom, ocaml_http, lablgtk, lablgtkmathview, ocaml_mysql, ocaml_sqlite3, ocamlnet, ulex08, camlzip, ocaml_pcre }: + +let + ocaml_version = (builtins.parseDrvName ocaml.name).version; + version = "0.5.8"; + pname = "matita"; + +in + +stdenv.mkDerivation { + name = "${pname}-${version}"; + + src = fetchurl { + url = "http://matita.cs.unibo.it/FILES/${pname}-${version}.orig.tar.gz"; + sha256 = "04sxklfak71khy1f07ks5c6163jbpxv6fmaw03fx8gwwlvpmzglh"; + }; + + buildInputs = [ocaml camlp5 findlib gdome2 ocaml_expat gmetadom ocaml_http lablgtk lablgtkmathview ocaml_mysql ocaml_sqlite3 ocamlnet ulex08 camlzip ocaml_pcre ]; + + postPatch = '' + BASH=$(type -tp bash) + substituteInPlace components/Makefile --replace "SHELL=/bin/bash" "SHELL=$BASH" + substituteInPlace matita/Makefile --replace "SHELL=/bin/bash" "SHELL=$BASH" + substituteInPlace configure --replace "ulex08" "ulex" + substituteInPlace components/METAS/meta.helm-content_pres.src --replace "ulex08" "ulex" + substituteInPlace components/content_pres/Makefile --replace "ulex08" "ulex" + substituteInPlace components/METAS/meta.helm-grafite_parser.src --replace "ulex08" "ulex" + substituteInPlace components/grafite_parser/Makefile --replace "ulex08" "ulex" + substituteInPlace configure --replace "zip" "camlzip" + substituteInPlace components/METAS/meta.helm-getter.src --replace "zip" "camlzip" + substituteInPlace components/METAS/meta.helm-xml.src --replace "zip" "camlzip" + ''; + + patches = [ ./configure.patch ./Makefile.patch ]; + + preConfigure = '' + # Setup for findlib. + OCAMLPATH=$(pwd)/components/METAS:$OCAMLPATH + RTDIR=$out/share/matita + export configureFlags="--with-runtime-dir=$RTDIR" + ''; + + postInstall = '' + ensureDir $out/bin + ln -vs $RTDIR/matita $RTDIR/matitac $RTDIR/matitaclean $RTDIR/matitadep $RTDIR/matitawiki $out/bin + ''; + + meta = { + homepage = http://matita.cs.unibo.it/; + description = "Matita is an experimental, interactive theorem prover"; + license = "GPLv2+"; + maintainers = [ stdenv.lib.maintainers.roconnor ]; + }; +} diff --git a/pkgs/applications/science/logic/ssreflect/default.nix b/pkgs/applications/science/logic/ssreflect/default.nix index 61901d545d7a..5a51fe2136a1 100644 --- a/pkgs/applications/science/logic/ssreflect/default.nix +++ b/pkgs/applications/science/logic/ssreflect/default.nix @@ -1,13 +1,12 @@ # TODO: -# - ssrcoqide does not build successfully (missing coqide libraries in the coq installation). -# - ssrcoq needs to be invoked with the explicit path to the ssreflect theory -# e.g.. ssrcoq -I /nix/store/rp09dlb2y2hpddb0xa7fyrgjlzb284ar-ssreflect-1.2/lib/coq/user-contrib/theories/ +# - coq needs to be invoked with the explicit path to the ssreflect theory +# e.g. coqide -R ~/.nix-profile/lib/coq/user-contrib/ '' {stdenv, fetchurl, ocaml, camlp5, coq}: let pname = "ssreflect"; - version = "1.2"; + version = "1.3pl1"; name = "${pname}-${version}"; webpage = http://www.msr-inria.inria.fr/Projects/math-components; in @@ -16,18 +15,12 @@ stdenv.mkDerivation { inherit name; src = fetchurl { - url = "${webpage}/${name}.tgz"; - sha256 = "0800b085e6a0caec5093c6c02aacdd8dfd9cc282177e8586f14f9a9e15f64d0b"; + url = "${webpage}/${name}.tar.gz"; + sha256 = "0ykrhqb68aanl5d4dmn0vnx8m34gg0jsbdhwx2852rqi7r00b9ri"; }; buildInputs = [ ocaml camlp5 coq ]; - preBuild = '' - coq_makefile -f Make -o Makefile - substituteInPlace Makefile \ - --replace 'install -D $$i $(COQLIB)' 'install -D $$i '$out'/lib/coq' - ''; - # this fails /* postBuild = '' @@ -36,10 +29,9 @@ stdenv.mkDerivation { ''; */ - postInstall = '' + installPhase = '' + COQLIB=$out/lib/coq make -f Makefile.coq install -e ensureDir $out/bin - #cp -a bin/ssrcoq bin/ssrcoqide $out/bin - cp -a bin/ssrcoq $out/bin ''; meta = { diff --git a/pkgs/applications/science/logic/tptp/default.nix b/pkgs/applications/science/logic/tptp/default.nix new file mode 100644 index 000000000000..3211b6ebdc01 --- /dev/null +++ b/pkgs/applications/science/logic/tptp/default.nix @@ -0,0 +1,87 @@ +x@{builderDefsPackage + , yap, tcsh, perl, patchelf, pkgsi686Linux + , ...}: +builderDefsPackage +(a : +let + helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ + ["pkgsi686Linux"]; + + buildInputs = map (n: builtins.getAttr n x) + (builtins.attrNames (builtins.removeAttrs x helperArgNames)); + sourceInfo = rec { + baseName="TPTP"; + version="5.1.0"; + name="${baseName}-${version}"; + url="http://www.cs.miami.edu/~tptp/TPTP/Distribution/TPTP-v${version}.tgz"; + hash="1wh2k575nn51ykg1jnwfwjqhg5x42k5vvn2spq09px26vhs4yksy"; + }; +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 = ["goTarget" "doUnpack" "fixPlace" "setVars" "installScripts" + "patchBinaries" "makeLinks"]; + + goTarget = a.fullDepEntry '' + ensureDir "$out"/share/ + cd "$out"/share/ + '' ["defEnsureDir" "minInit"]; + + fixPlace = a.fullDepEntry '' + cd .. + mv TPTP-* tptp + cd tptp + '' ["minInit" "doUnpack"]; + + setVars = a.noDepEntry '' + export TPTP="$PWD" + ''; + + installScripts = a.fullDepEntry '' + tcsh "$out/share/tptp/Scripts/tptp2T_install" -default + + sed -e 's@^ */bin/@@' -i TPTP2X/* + + tcsh "$out/share/tptp/TPTP2X/tptp2X_install" -default + '' ["addInputs"]; + + makeLinks = a.fullDepEntry '' + ensureDir "$out/bin" + ln -s "../share/tptp/TPTP2X/tptp2X" "$out/bin" + ln -s "../share/tptp/Scripts/tptp2T" "$out/bin" + ln -s "../share/tptp/Scripts/tptp4X" "$out/bin" + '' ["defEnsureDir" "minInit"]; + + patchBinaries = a.fullDepEntry '' + patchelf --set-interpreter "${pkgsi686Linux.glibc}"/lib/ld-linux.so.* \ + "Scripts/tptp4X" + '' ["addInputs"]; + + meta = { + description = "Thousands of problems for theorem provers and tools"; + maintainers = with a.lib.maintainers; + [ + raskin + ]; + # A GiB of data. Installation is unpacking and editing a few files. + # No sense in letting Hydra build it. + # Also, it is unclear what is covered by "verbatim" - we will edit configs + platforms = with a.lib.platforms; + []; + license = "verbatim-redistribution"; + }; + passthru = { + updateInfo = { + downloadPage = "http://tptp.org/"; + }; + }; +}) x + diff --git a/pkgs/applications/science/math/ecm/default.nix b/pkgs/applications/science/math/ecm/default.nix new file mode 100644 index 000000000000..5d378a48dd9e --- /dev/null +++ b/pkgs/applications/science/math/ecm/default.nix @@ -0,0 +1,27 @@ +{stdenv, fetchurl, gmp}: + +let + pname = "ecm"; + version = "6.2.3"; + name = "${pname}-${version}"; +in + +stdenv.mkDerivation { + inherit name; + + src = fetchurl { + url = https://gforge.inria.fr/frs/download.php/22124/ecm-6.2.3.tar.gz; + sha256 = "1iwwhbz5vwl7j6dyh292hahc8yy16pq9mmm7mxy49zhxd81vy08p"; + }; + + buildInputs = [ gmp ]; + + doCheck = true; + + meta = { + description = "Elliptic Curve Method for Integer Factorization"; + license = stdenv.lib.licenses.gpl2Plus; + homepage = http://ecm.gforge.inria.fr/; + maintainers = [ stdenv.lib.maintainers.roconnor ]; + }; +} diff --git a/pkgs/applications/science/math/eukleides/default.nix b/pkgs/applications/science/math/eukleides/default.nix new file mode 100644 index 000000000000..9f65bcb8c148 --- /dev/null +++ b/pkgs/applications/science/math/eukleides/default.nix @@ -0,0 +1,37 @@ +{ stdenv, fetchurl, bison, flex, texinfo, readline, texLive }: + +let + name = "eukleides"; + version = "1.5.4"; +in +stdenv.mkDerivation { + name = "${name}-${version}"; + + src = fetchurl { + url = "http://www.eukleides.org/files/${name}-${version}.tar.bz2"; + sha256 = "0s8cyh75hdj89v6kpm3z24i48yzpkr8qf0cwxbs9ijxj1i38ki0q"; + }; + + buildInputs = [bison flex texinfo readline texLive]; + + preConfigure = "sed -i 's/ginstall-info/install-info/g' doc/Makefile"; + installPhase = "ensureDir $out/bin ; make PREFIX=$out install"; + + meta = { + description = "Geometry Drawing Language"; + homepage = "http://www.eukleides.org/"; + license = "GPLv2"; + + longDescription = '' + Eukleides is a computer language devoted to elementary plane + geometry. It aims to be a fairly comprehensive system to create + geometric figures, either static or dynamic. Eukleides allows to + handle basic types of data: numbers and strings, as well as + geometric types of data: points, vectors, sets (of points), lines, + circles and conics. + ''; + + platforms = stdenv.lib.platforms.all; + maintainers = [ stdenv.lib.maintainers.simons ]; + }; +} diff --git a/pkgs/applications/science/math/jags/default.nix b/pkgs/applications/science/math/jags/default.nix new file mode 100644 index 000000000000..3043df15da74 --- /dev/null +++ b/pkgs/applications/science/math/jags/default.nix @@ -0,0 +1,17 @@ +{stdenv, fetchurl, gfortran, liblapack, blas}: + +stdenv.mkDerivation rec { + name = "JAGS-2.2.0"; + src = fetchurl { + url = "mirror://sourceforge/mcmc-jags/${name}.tar.gz"; + sha256 = "016xml4k99lmdwwjiabxin95k9p3q2zh4pcci8wwcqwlq5y205b6"; + }; + buildInputs = [gfortran liblapack blas]; + + meta = { + description = "JAGS: Just Another Gibbs Sampler"; + license = "GPL2"; + homepage = http://www-ice.iarc.fr/~martyn/software/jags/; + maintainers = [stdenv.lib.maintainers.andres]; + }; +} diff --git a/pkgs/applications/science/math/maxima/default.nix b/pkgs/applications/science/math/maxima/default.nix index f99c1e46162e..f8f21d8909b4 100644 --- a/pkgs/applications/science/math/maxima/default.nix +++ b/pkgs/applications/science/math/maxima/default.nix @@ -1,22 +1,40 @@ -{ stdenv, fetchurl, clisp }: +{ stdenv, fetchurl, sbcl, texinfo, perl, makeWrapper, rlwrap ? null, tk ? null, gnuplot ? null }: let - name = "maxima"; - version = "5.22.1"; + name = "maxima"; + version = "5.25.0"; + + searchPath = + stdenv.lib.makeSearchPath "bin" + (stdenv.lib.filter (x: x != null) [ sbcl rlwrap tk gnuplot ]); in stdenv.mkDerivation { name = "${name}-${version}"; src = fetchurl { url = "mirror://sourceforge/${name}/${name}-${version}.tar.gz"; - sha256 = "0sdrv3lra6j3ylaqsblnd3x7rq4ybafyj7rb114ycadpx2qf06lq"; + sha256 = "49c90fb809f5027787600050503476193db3620fd9517f620b82ad492ba30c0a"; }; - preConfigure = '' - configureFlags="--infodir=$out/share/info --mandir=$out/share/man" + buildInputs = [sbcl texinfo perl makeWrapper]; + + postInstall = '' + # Make sure that maxima can find its runtime dependencies. + for prog in "$out/bin/"*; do + wrapProgram "$prog" --prefix PATH ":" "${searchPath}" + done + # Move emacs modules and documentation into the right place. + ensureDir $out/share/emacs $out/share/doc + ln -s ../maxima/${version}/emacs $out/share/emacs/site-lisp + ln -s ../maxima/${version}/doc $out/share/doc/maxima ''; - buildInputs = [clisp]; + # The regression test suite has minor failures, but curiously enough + # this doesn't seem to abort the build process: + # <http://sourceforge.net/tracker/?func=detail&aid=3365831&group_id=4933&atid=104933>. + doCheck = true; + + enableParallelBuilding = true; meta = { description = "Maxima computer algebra system"; diff --git a/pkgs/applications/science/math/msieve/default.nix b/pkgs/applications/science/math/msieve/default.nix new file mode 100644 index 000000000000..baee2f23d4ca --- /dev/null +++ b/pkgs/applications/science/math/msieve/default.nix @@ -0,0 +1,28 @@ +{stdenv, fetchurl, zlib, gmp, ecm }: + +stdenv.mkDerivation { + name = "msieve-1.48"; + + src = fetchurl { + url = mirror://sourceforge/msieve/msieve/Msieve%20v1.48/msieve148.tar.gz; + sha256 = "05cm23mpfsbwssqda243sbi8m31j783qx89x9gl7sy8a4dnv7h63"; + }; + + buildInputs = [ zlib gmp ecm ]; + + ECM = if ecm == null then "0" else "1"; + + buildFlags = if stdenv.system == "x86_64-linux" then "x86_64" + else if stdenv.system == "i686-linux" then "x86" + else "generic"; + + installPhase = ''ensureDir $out/bin/ + cp msieve $out/bin/''; + + meta = { + description = "a C library implementing a suite of algorithms to factor large integers"; + license = stdenv.lib.licenses.publicDomain; + homepage = http://msieve.sourceforge.net/; + maintainers = [ stdenv.lib.maintainers.roconnor ]; + }; +} diff --git a/pkgs/applications/science/math/pari/default.nix b/pkgs/applications/science/math/pari/default.nix index 62763ac2198a..43291d792b72 100644 --- a/pkgs/applications/science/math/pari/default.nix +++ b/pkgs/applications/science/math/pari/default.nix @@ -11,10 +11,10 @@ let (builtins.attrNames (builtins.removeAttrs x helperArgNames)); sourceInfo = rec { baseName="pari"; - version="2.3.5"; + version="2.5.0"; name="${baseName}-${version}"; url="http://pari.math.u-bordeaux.fr/pub/pari/unix/${name}.tar.gz"; - hash="124xr2jdz2c15v45i1zvgylng44lhf23729a1mk7ci1vywdaxpa7"; + hash="18ipxj4hzj7s3fqz878fiypkzrkbjj8wvbygz9j8c3ya06q27jax"; }; in rec { diff --git a/pkgs/applications/science/math/wxmaxima/default.nix b/pkgs/applications/science/math/wxmaxima/default.nix index ece6eb985178..6bd6e9266e6b 100644 --- a/pkgs/applications/science/math/wxmaxima/default.nix +++ b/pkgs/applications/science/math/wxmaxima/default.nix @@ -1,22 +1,29 @@ -{ stdenv, fetchurl, maxima, wxGTK }: - -# TODO: Build the correct ${maxima}/bin/maxima store path into wxMaxima so that -# it can run that binary without relying on $PATH, /etc/wxMaxima.conf, or -# ~/.wxMaxima. +{ stdenv, fetchurl, maxima, wxGTK, makeWrapper }: let - name = "wxmaxima"; - version = "0.8.6"; + name = "wxmaxima"; + version = "11.04.0"; in stdenv.mkDerivation { name = "${name}-${version}"; src = fetchurl { url = "mirror://sourceforge/${name}/wxMaxima-${version}.tar.gz"; - sha256 = "09w6gai0jfhl959yrdcdikz5l9kdjshasjk404vl19nfnivdbj9f"; + sha256 = "1dfwh5ka125wr6wxzyiwz16lk8kaf09rb6lldzryjwh8zi7yw8dm"; }; - buildInputs = [maxima wxGTK]; + buildInputs = [wxGTK maxima makeWrapper]; + + postInstall = '' + # Make sure that wxmaxima can find its runtime dependencies. + for prog in "$out/bin/"*; do + wrapProgram "$prog" --prefix PATH ":" "${maxima}/bin" + done + ''; + + doCheck = true; + + enableParallelBuilding = true; meta = { description = "Cross platform GUI for the computer algebra system Maxima."; diff --git a/pkgs/applications/science/misc/tulip/configure-opengl.patch b/pkgs/applications/science/misc/tulip/configure-opengl.patch deleted file mode 100644 index e5346ef07283..000000000000 --- a/pkgs/applications/science/misc/tulip/configure-opengl.patch +++ /dev/null @@ -1,75 +0,0 @@ -Remove broken detection of OpenGL and GLEW. See -<http://sourceforge.net/tracker/?func=detail&aid=3015936&group_id=61223&atid=496518>. - ---- tulip-3.3.1/acinclude.m4 2010-01-18 20:34:02.000000000 +0100 -+++ tulip-3.3.1/acinclude.m4 2010-06-14 16:25:25.000000000 +0200 -@@ -353,68 +353,8 @@ AC_ARG_WITH(gl-libraries, - [ ac_gl_libraries="$withval" - ]) - --AC_CACHE_VAL(ac_cv_have_gl, --[ --if test ${VAR_WIN32} = 1 --then --gl_incdirs=" /mingw/include $ac_gl_includes $GLDIR/include /usr/include /usr/X11R6/include/X11 /usr/X11R6/include $x_includes " --else --gl_incdirs=" $ac_gl_includes $GLDIR/include /usr/include /usr/X11R6/include/X11 /usr/X11R6/include $x_includes " --fi --AC_FIND_FILE(GL/gl.h, $gl_incdirs, gl_incdir) --ac_gl_includes="$gl_incdir" -- --if test ${VAR_WIN32} = 1 --then --gl_libdirs="$GLDIR $ac_gl_libraries $GLLIB /usr/X11R6/lib /usr/lib /usr/local/lib $x_libraries " --else --gl_libdirs="$ac_gl_libraries $GLLIB /usr/X11R6/lib64 /usr/lib64 /usr/local/lib64/usr/X11R6/lib /usr/lib /usr/local/lib $x_libraries " --fi -- --test -n "$GLDIR" && gl_libdirs="$GLDIR/lib64 $GLDIR/lib $GLDIR $gl_libdirs" --test=NONE --gl_libdir=NONE --for dir in $gl_libdirs; do --if test ${VAR_WIN32} = 1 --then -- try="ls -1 $dir/*opengl*" --else -- try="ls -1 $dir/libGL*" --fi -- if test=`eval $try 2> /dev/null`; then -- gl_libdir=$dir -- if test ${VAR_WIN32} = 0 ; then -- try="ls -1 $gl_libdir/libGLEW.*" -- if test=`eval $try 2> /dev/null`; then break; else AC_MSG_ERROR([ libGLEW not found , please install it in $gl_libdir ]); fi -- else -- break -- fi -- else -- echo "tried $dir" >&AC_FD_CC -- fi --done --ac_gl_libraries="$gl_libdir" - ]) - --eval "$ac_cv_have_gl" --if test "$ac_gl_libraries" = NONE; then -- AC_MSG_ERROR([ Not found , put your GLDIR environnement variable to the OpenGL directory ]); --else -- ac_cv_have_gl="have_gl=yes \ -- ac_gl_includes=$ac_gl_includes ac_gl_libraries=$ac_gl_libraries" -- AC_MSG_RESULT([ libraries $ac_gl_libraries, headers $ac_gl_includes ]) -- gl_libraries="$ac_gl_libraries" -- gl_includes="$ac_gl_includes" --if test ${VAR_MACOSX} = 1 --then -- GL_INCLUDES="-I$ac_gl_includes" -- GL_LDFLAGS="" --else -- GL_INCLUDES="-I$ac_gl_includes" -- GL_LDFLAGS="-L$ac_gl_libraries" --fi --fi -- - dnl MAC PORT - if test ${VAR_MACOSX} = 1 - then - diff --git a/pkgs/applications/science/misc/tulip/default.nix b/pkgs/applications/science/misc/tulip/default.nix index 3bca42023e9f..b213c14cc1a5 100644 --- a/pkgs/applications/science/misc/tulip/default.nix +++ b/pkgs/applications/science/misc/tulip/default.nix @@ -1,31 +1,23 @@ { fetchurl, stdenv, libxml2, freetype, mesa, glew, qt -, autoconf, automake, libtool }: +, autoconf, automake, libtool, cmake, makeWrapper }: -let version = "3.4.0"; in +let version = "3.5.0"; in stdenv.mkDerivation rec { name = "tulip-${version}"; src = fetchurl { - url = "mirror://sourceforge/auber/tulip/tulip-${version}/${name}.tar.bz2"; - sha256 = "2889113f773ba539472d501fb4f45dbf5eb76e02c949dfa74c63f6f815a2baab"; + url = "mirror://sourceforge/auber/tulip/tulip-${version}/${name}-src.tar.gz"; + sha256 = "0wl0wqjlifpay61pn7dxr3dl5r4a7v80f5g277p6s06ibvn2p3ln"; }; - patches = [ ./configure-opengl.patch ]; - - preConfigure = - '' export CPATH="${mesa}/include:${glew}/include" - export LIBRARY_PATH="${mesa}/lib:${glew}/lib" - export QTDIR="${qt}" - export LDFLAGS="-lGLEW" - - rm -vf aclocal.m4 ltmain.sh - autoreconf -fi - ''; - buildInputs = [ libxml2 freetype glew ] - ++ [ autoconf automake libtool ]; + ++ [ autoconf automake libtool cmake qt makeWrapper ]; propagagedBuildInputs = [ mesa qt ]; + postInstall='' + wrapProgram "$out/bin/tulip" + ''; + # FIXME: "make check" needs Docbook's DTD 4.4, among other things. doCheck = false; |