summary refs log tree commit diff
diff options
context:
space:
mode:
authorMichael Rohleder <mike@rohleder.de>2020-10-06 12:32:57 +0200
committerMathieu Othacehe <othacehe@gnu.org>2020-10-06 13:46:13 +0200
commitb343f5d8fdea44ebcf2e8459f4a3b1ce7da07df2 (patch)
tree6bc2e64040da9632832f710299ca6046cc636cf4
parent73a2fe4ab75754418b90c73494adf5542e8f172f (diff)
downloadguix-b343f5d8fdea44ebcf2e8459f4a3b1ce7da07df2.tar.gz
gnu: stockfish: Update to 12.
* gnu/packages/games.scm (stockfish): Update to 12.
[inputs]: Add fetching of the official neural network file.
[arguments]: Add phase 'copy-net to copy this file and embed it.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
-rw-r--r--gnu/packages/games.scm20
1 files changed, 17 insertions, 3 deletions
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 00fc63aedf..d473baa335 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -11409,7 +11409,7 @@ etc.  You can also play games on FICS or against an engine.")
 (define-public stockfish
   (package
     (name "stockfish")
-    (version "11")
+    (version "12")
     (source
      (origin
        (method git-fetch)
@@ -11418,8 +11418,15 @@ etc.  You can also play games on FICS or against an engine.")
              (commit (string-append "sf_" version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "12mppipinymj8s1ipq9a7is453vncly49c32ym9wvyklsgyxfzlk"))))
+        (base32 "0vcymbwp5nf114pp3ax40s21ki5dckda15vmhr77d1mnq3fn0l32"))))
     (build-system gnu-build-system)
+    (inputs
+     `(("neural-network"
+        ,(origin
+           (method url-fetch)
+           (uri "https://tests.stockfishchess.org/api/nn/nn-82215d0fd0df.nnue")
+           (sha256
+            (base32 "1r4yqrh4di05syyhl84hqcz84djpbd605b27zhbxwg6zs07ms8c2"))))))
     (arguments
      `(#:tests? #f
        #:make-flags (list "-C" "src"
@@ -11435,7 +11442,14 @@ etc.  You can also play games on FICS or against an engine.")
                                             ("mips64el-linux" "general-64")
                                             (_ "general-32"))))
        #:phases (modify-phases %standard-phases
-                  (delete 'configure))))
+                  (delete 'configure)
+                  ;; The official neural network file is needed for building
+                  ;; and is embedded in the resulting binary.
+                  (add-after 'unpack 'copy-net
+                    (lambda* (#:key inputs #:allow-other-keys)
+                      (copy-file (assoc-ref inputs "neural-network")
+                                 "src/nn-82215d0fd0df.nnue")
+                      #t)))))
     (synopsis "Strong chess engine")
     (description
      "Stockfish is a very strong chess engine.  It is much stronger than the