about summary refs log tree commit diff
path: root/pkgs/applications/graphics/mandelbulber
diff options
context:
space:
mode:
authorKovacsics Robert <rmk35@cam.ac.uk>2019-08-09 16:42:33 +0100
committerKovacsics Robert <rmk35@cam.ac.uk>2019-12-06 09:34:39 +0000
commitd6c37ff788066cc4a588651aefbeadf37edf3b69 (patch)
tree97423a37fd5f37b8994a32d7b0afce489af916b8 /pkgs/applications/graphics/mandelbulber
parent4b7ee5561390dadb5786b0a3fc5cd818ddb12379 (diff)
downloadnixlib-d6c37ff788066cc4a588651aefbeadf37edf3b69.tar
nixlib-d6c37ff788066cc4a588651aefbeadf37edf3b69.tar.gz
nixlib-d6c37ff788066cc4a588651aefbeadf37edf3b69.tar.bz2
nixlib-d6c37ff788066cc4a588651aefbeadf37edf3b69.tar.lz
nixlib-d6c37ff788066cc4a588651aefbeadf37edf3b69.tar.xz
nixlib-d6c37ff788066cc4a588651aefbeadf37edf3b69.tar.zst
nixlib-d6c37ff788066cc4a588651aefbeadf37edf3b69.zip
mandelbulber: init at 2.20
Tested on my machine, see package request #52038
Diffstat (limited to 'pkgs/applications/graphics/mandelbulber')
-rw-r--r--pkgs/applications/graphics/mandelbulber/default.nix64
1 files changed, 64 insertions, 0 deletions
diff --git a/pkgs/applications/graphics/mandelbulber/default.nix b/pkgs/applications/graphics/mandelbulber/default.nix
new file mode 100644
index 000000000000..0a3368ec2abe
--- /dev/null
+++ b/pkgs/applications/graphics/mandelbulber/default.nix
@@ -0,0 +1,64 @@
+{ lib
+, mkDerivation
+, fetchFromGitHub
+, libpng
+, gsl
+, libsndfile
+, lzo
+, qmake
+, qttools
+, qtbase
+, qtmultimedia
+, withOpenCL ? true
+, opencl-clhpp ? null
+, ocl-icd ? null
+}:
+
+assert withOpenCL -> opencl-clhpp != null;
+assert withOpenCL -> ocl-icd != null;
+
+mkDerivation rec {
+  pname = "mandelbulber";
+  version = "2.20";
+
+  src = fetchFromGitHub {
+    owner = "buddhi1980";
+    repo = "mandelbulber2";
+    rev = version;
+    sha256 = "043dks9fimhradyhdzqdc6lb9z0x9lkj3szj10751g424lppp207";
+  };
+
+  nativeBuildInputs = [
+    qmake
+    qttools
+  ];
+  buildInputs = [
+    qtbase
+    qtmultimedia
+    libpng
+    gsl
+    libsndfile
+    lzo
+  ] ++ lib.optionals withOpenCL [
+    opencl-clhpp
+    ocl-icd
+  ];
+
+  sourceRoot = "${src.name}/mandelbulber2";
+
+  qmakeFlags = [
+    "SHARED_PATH=${placeholder ''out''}"
+    (if withOpenCL
+      then "qmake/mandelbulber-opencl.pro"
+      else "qmake/mandelbulber.pro")
+  ];
+
+  meta = with lib; {
+    description = "A 3D fractal rendering engine";
+    longDescription = "Mandelbulber creatively generates three-dimensional fractals. Explore trigonometric, hyper-complex, Mandelbox, IFS, and many other 3D fractals.";
+    homepage = "https://mandelbulber.com";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ kovirobi ];
+  };
+}