diff mbox series

[bug#65853,v3,4/8] gnu: scilab: Add phase rewrap-scilab-cli.

Message ID 20231106000354.32423-5-ngraves@ngraves.fr
State New
Headers show
Series Scilab: Big update. | expand

Commit Message

Nicolas Graves Nov. 5, 2023, 11:51 p.m. UTC
* gnu/packages/maths.scm (scilab): Add phase rewrap-scilab-cli.

Change-Id: Ia3ca5df1a4795c34b6c1cdc8c3b0d7cc2badf0cb
---
 gnu/packages/maths.scm | 22 +++++++++++++++++++++-
 1 file changed, 21 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 62c935a868..68e041c33b 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -9703,7 +9703,27 @@  (define-public scilab
                 (apply invoke "make"
                        "src/cpp/parse/parsescilab.cpp"
                        "src/cpp/parse/scanscilab.cpp"
-                       make-flags))))))))
+                       make-flags))))
+          ;; The startup script is mostly there to define the following env
+            ;; variables properly. We can do this with guix directly.
+            (add-after 'install 'rewrap-scilab-cli
+              (lambda _
+                (define (bin path) (string-append #$output "/bin/" path))
+                (delete-file (bin "scilab-cli"))
+                (wrap-program (bin "scilab-cli-bin")
+                  `("SCI" = (,(string-append #$output "/share/scilab")))
+                  `("LD_LIBRARY_PATH" ":" prefix
+                    (,(string-append #$output "/lib/scilab")))
+                  `("TCL_LIBRARY" = (,(string-append #$tcl "/lib")))
+                  `("TK_LIBRARY" = (,(string-append #$tk "/lib"))))
+                (copy-file (bin "scilab-cli-bin") (bin "scilab-cli"))
+                (copy-file (bin ".scilab-cli-bin-real") (bin "scilab-cli-bin"))
+                (delete-file (bin ".scilab-cli-bin-real"))
+                (substitute* (bin "scilab-cli")
+                  (("\\.scilab-cli-bin-real")
+                   "scilab-cli-bin")
+                  (("export SCI=")
+                   "unset LANGUAGE\nexport SCI="))))))))
     (home-page "https://www.scilab.org/")
     (synopsis "Software for engineers and scientists")
     (description "This package provides the non-graphical version of the Scilab