From 411d5742cae63893265b731d6d4f8d3b206e8bb0 Mon Sep 17 00:00:00 2001
From: Michael Raskin <7c6f434c@mail.ru>
Date: Mon, 10 Oct 2016 18:43:16 +0200
Subject: [PATCH] symmetrica: init at 2.0

---
 .../science/math/symmetrica/default.nix       | 29 +++++++++++++++++
 .../development/libraries/tachyon/default.nix | 32 +++++++++++++++++++
 pkgs/top-level/all-packages.nix               |  4 +++
 3 files changed, 65 insertions(+)
 create mode 100644 pkgs/applications/science/math/symmetrica/default.nix
 create mode 100644 pkgs/development/libraries/tachyon/default.nix

diff --git a/pkgs/applications/science/math/symmetrica/default.nix b/pkgs/applications/science/math/symmetrica/default.nix
new file mode 100644
index 000000000000..0c87beb22dfc
--- /dev/null
+++ b/pkgs/applications/science/math/symmetrica/default.nix
@@ -0,0 +1,29 @@
+{stdenv, fetchurl}:
+stdenv.mkDerivation rec {
+  name = "symmetrica-${version}";
+  version = "2.0";
+  # or fetchFromGitHub(owner,repo,rev) or fetchgit(rev)
+  src = fetchurl {
+    url = "http://www.algorithm.uni-bayreuth.de/en/research/SYMMETRICA/SYM2_0_tar.gz";
+    sha256 = "1qhfrbd5ybb0sinl9pad64rscr08qvlfzrzmi4p4hk61xn6phlmz";
+    name = "symmetrica-2.0.tar.gz";
+  };
+  buildInputs = [];
+  sourceRoot = ".";
+  installPhase = ''
+    mkdir -p "$out"/{lib,share/doc/symmetrica,include/symmetrica}
+    ar crs libsymmetrica.a *.o
+    ranlib libsymmetrica.a
+    cp libsymmetrica.a "$out/lib"
+    cp *.h "$out/include/symmetrica"
+    cp README *.doc "$out/share/doc/symmetrica"
+  '';
+  meta = {
+    inherit version;
+    description = ''A collection of routines for representation theory and combinatorics'';
+    license = stdenv.lib.licenses.publicDomain;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+    homepage = "http://www.symmetrica.de/";
+  };
+}
diff --git a/pkgs/development/libraries/tachyon/default.nix b/pkgs/development/libraries/tachyon/default.nix
new file mode 100644
index 000000000000..838c30777fb1
--- /dev/null
+++ b/pkgs/development/libraries/tachyon/default.nix
@@ -0,0 +1,32 @@
+{stdenv, fetchurl}:
+stdenv.mkDerivation rec {
+  name = "tachyon-${version}";
+  version = "0.98.9";
+  src = fetchurl {
+    url = "http://jedi.ks.uiuc.edu/~johns/tachyon/files/${version}/${name}.tar.gz";
+    sha256 = "1ms0xr4ibrzz291ibm265lyjrdjrmhfrx0a70hwykhsdxn6jk8y6";
+  };
+  buildInputs = [];
+  preBuild = "cd unix";
+  arch = if stdenv.system == "x86_64-linux" then "linux-64-thr" else
+         if stdenv.system == "i686-linux"   then "linux-thr"    else
+         throw "Don't know what arch to select for tachyon build";
+  makeFlags = "${arch}";
+  installPhase = ''
+    cd ../compile/${arch}
+    mkdir -p "$out"/{bin,lib,include,share/doc/tachyon,share/tachyon}
+    cp tachyon "$out"/bin
+    cp libtachyon.* "$out/lib"
+    cd ../..
+    cp Changes Copyright README "$out/share/doc/tachyon"
+    cp -r scenes "$out/share/tachyon/scenes"
+  '';
+  meta = {
+    inherit version;
+    description = ''A Parallel / Multiprocessor Ray Tracing System'';
+    license = stdenv.lib.licenses.bsd3;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+    homepage = "http://jedi.ks.uiuc.edu/~johns/tachyon/";
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index e35cddd70c2b..c6401ed0ef36 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -9208,6 +9208,8 @@ in
 
   t1lib = callPackage ../development/libraries/t1lib { };
 
+  tachyon = callPackage ../development/libraries/tachyon {};
+
   taglib = callPackage ../development/libraries/taglib { };
   taglib_1_9 = callPackage ../development/libraries/taglib/1.9.nix { };
 
@@ -16380,6 +16382,8 @@ in
 
   superlu = callPackage ../development/libraries/science/math/superlu {};
 
+  symmetrica = callPackage ../applications/science/math/symmetrica {};
+
   ipopt = callPackage ../development/libraries/science/math/ipopt { openblas = openblasCompat; };
 
   gmsh = callPackage ../applications/science/math/gmsh { };