summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorLeo Famulari <leo@famulari.name>2018-12-25 01:58:35 -0500
committerLeo Famulari <leo@famulari.name>2019-01-09 18:54:16 -0500
commitfc51c28ae8172c9f4370772bd76601f89b9498e6 (patch)
tree0986418bd2ee03e901ae4f36ad2ccebb52090fab /gnu/packages
parentb96f0e6ff9f8f36d250b5ae94a908272babb35cf (diff)
downloadguix-fc51c28ae8172c9f4370772bd76601f89b9498e6.tar.gz
gnu: Blender: Update to a beta release of 2.80.
Fixes <https://bugs.gnu.org/33608> and <https://bugs.gnu.org/33882>.

* gnu/packages/graphics.scm (blender): Update to 2.80-beta-0.3c3d80e.
[source]: Fetch from the Git repository.
[inputs]: Use OpenJPEG 2. Add Numpy.
[arguments]: Specify the location of Numpy. Remove some configure flags that are
no longer used. Comment out the 'fix-broken-import' phase because the
file it patches doesn't exist in the Git sources.
[description]: Add a warning about the beta status.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/graphics.scm46
1 files changed, 27 insertions, 19 deletions
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index 6e184d3334..73620bb2d4 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -76,17 +76,20 @@
   #:use-module (guix utils))
 
 (define-public blender
+  (let ((revision "0")
+        (commit "3c3d80ea22af15e13237f978181a881b90c41e7c"))
   (package
     (name "blender")
-    (version "2.79b")
+    (version (git-version "2.80-beta" revision commit))
     (source (origin
-              (method url-fetch)
-              (uri (string-append "https://download.blender.org/source/"
-                                  "blender-" version ".tar.gz"))
+              (method git-fetch)
+              (uri (git-reference
+                     (url "https://git.blender.org/blender.git")
+                     (commit commit)))
+              (file-name (git-file-name name version))
               (sha256
                (base32
-                "1g4kcdqmf67srzhi3hkdnr4z1ph4h9sza1pahz38mrj998q4r52c"))
-              (patches (search-patches "blender-newer-ffmpeg.patch"))))
+                "1hhn8pf3a5556mxyrb2ggsiy6q0h75hnkdpcgq9b6vg284jl2l4q"))))
     (build-system cmake-build-system)
     (arguments
       (let ((python-version (version-major+minor (package-version python))))
@@ -98,29 +101,30 @@
                "-DWITH_CYCLES=ON"
                "-DWITH_DOC_MANPAGE=ON"
                "-DWITH_FFTW3=ON"
-               "-DWITH_GAMEENGINE=ON"
                "-DWITH_IMAGE_OPENJPEG=ON"
                "-DWITH_INPUT_NDOF=ON"
                "-DWITH_INSTALL_PORTABLE=OFF"
                "-DWITH_JACK=ON"
                "-DWITH_MOD_OCEANSIM=ON"
-               "-DWITH_PLAYER=ON"
                "-DWITH_PYTHON_INSTALL=OFF"
-               "-DWITH_PYTHON_INSTALL=OFF"
-               "-DWITH_SYSTEM_OPENJPEG=ON"
                (string-append "-DPYTHON_LIBRARY=python" ,python-version "m")
                (string-append "-DPYTHON_LIBPATH=" (assoc-ref %build-inputs "python")
                               "/lib")
                (string-append "-DPYTHON_INCLUDE_DIR=" (assoc-ref %build-inputs "python")
                               "/include/python" ,python-version "m")
-               (string-append "-DPYTHON_VERSION=" ,python-version))
+               (string-append "-DPYTHON_VERSION=" ,python-version)
+               (string-append "-DPYTHON_NUMPY_PATH="
+                              (assoc-ref %build-inputs "python-numpy")
+                              "/lib/python" ,python-version "/site-packages/"))
          #:phases
          (modify-phases %standard-phases
-           (add-after 'unpack 'fix-broken-import
-             (lambda _
-               (substitute* "release/scripts/addons/io_scene_fbx/json2fbx.py"
-                 (("import encode_bin") "from . import encode_bin"))
-               #t))
+           ;; XXX This file doesn't exist in the Git sources but will probably
+           ;; exist in the eventual 2.80 source tarball.
+;           (add-after 'unpack 'fix-broken-import
+;             (lambda _
+;               (substitute* "release/scripts/addons/io_scene_fbx/json2fbx.py"
+;                 (("import encode_bin") "from . import encode_bin"))
+;               #t))
            (add-after 'set-paths 'add-ilmbase-include-path
              (lambda* (#:key inputs #:allow-other-keys)
                ;; OpenEXR propagates ilmbase, but its include files do not appear
@@ -138,7 +142,7 @@
        ("openimageio" ,openimageio)
        ("openexr" ,openexr)
        ("ilmbase" ,ilmbase)
-       ("openjpeg" ,openjpeg-1)
+       ("openjpeg" ,openjpeg)
        ("libjpeg" ,libjpeg)
        ("libpng" ,libpng)
        ("libtiff" ,libtiff)
@@ -150,6 +154,7 @@
        ("glew" ,glew)
        ("openal" ,openal)
        ("python" ,python)
+       ("python-numpy" ,python-numpy)
        ("zlib" ,zlib)))
     (home-page "https://blender.org/")
     (synopsis "3D graphics creation suite")
@@ -157,8 +162,11 @@
      "Blender is a 3D graphics creation suite.  It supports the entirety of
 the 3D pipeline—modeling, rigging, animation, simulation, rendering,
 compositing and motion tracking, even video editing and game creation.  The
-application can be customized via its API for Python scripting.")
-    (license license:gpl2+)))
+application can be customized via its API for Python scripting.
+
+WARNING: This package offers a beta build of Blender, because the stable release
+no longer works in Guix. See @uref{https://issues.guix.info/issue/33882}.")
+    (license license:gpl2+))))
 
 (define-public assimp
   (package