Matlab: Difference between revisions

imported>Mazurel
No edit summary
Zimward (talk | contribs)
m fix typo: runned -> run
 
(4 intermediate revisions by 3 users not shown)
Line 5: Line 5:
Matlab due to it's installation method and licensing is really problematic to package into nixpkgs[https://github.com/NixOS/nixpkgs/issues/56887], that is why the only way to install it is to use some imperative way (to install it outside the nix store).
Matlab due to it's installation method and licensing is really problematic to package into nixpkgs[https://github.com/NixOS/nixpkgs/issues/56887], that is why the only way to install it is to use some imperative way (to install it outside the nix store).


=== Based on Doronbehar [https://gitlab.com/doronbehar/nix-matlab] repo (with or without flakes)===
=== (Recommended) Based on Doronbehar [https://gitlab.com/doronbehar/nix-matlab] repo (with or without flakes)===


You may prefer to use [https://gitlab.com/doronbehar/nix-matlab this method] by doronbehar. It is based on the one described below, but requires less work.
You may prefer to use [https://gitlab.com/doronbehar/nix-matlab this method] by doronbehar. It is based on the one described below, but requires less work.
Line 21: Line 21:


After successful installation, you should add Matlab do your <code>configuration.nix</code> file. Personally I have used modified tvitii[https://github.com/tviti/nix-cfg/tree/aunuu/pkgs/matlab] files. I have simply switched <code>runPath</code> to the path of freshly installed Matlab folder. Then in my configuration.nix I have used his matlab folder like so:
After successful installation, you should add Matlab do your <code>configuration.nix</code> file. Personally I have used modified tvitii[https://github.com/tviti/nix-cfg/tree/aunuu/pkgs/matlab] files. I have simply switched <code>runPath</code> to the path of freshly installed Matlab folder. Then in my configuration.nix I have used his matlab folder like so:
<pre>
<syntaxHighlight lang=nix>
...
...
let
let
Line 30: Line 30:
     environment.systemPackages = [ ... tviti-matlab.matlab  ... ];
     environment.systemPackages = [ ... tviti-matlab.matlab  ... ];
...
...
</pre>
</syntaxHighlight>


{{Evaluate}}
{{Evaluate}}
Line 39: Line 39:


In case you have java errors, and you are using tvitii[https://github.com/tviti/nix-cfg/tree/master/pkgs/matlab]  derivation, you may need to modify <code>matlab.nix</code> to something like this:
In case you have java errors, and you are using tvitii[https://github.com/tviti/nix-cfg/tree/master/pkgs/matlab]  derivation, you may need to modify <code>matlab.nix</code> to something like this:
<pre>
<syntaxHighlight lang=nix>
{ common,  buildFHSUserEnv }:
{ common,  buildFHSUserEnv }:
buildFHSUserEnv {
buildFHSUserEnv {
Line 48: Line 48:
   runScript = "${common.runPath}/bin/matlab";
   runScript = "${common.runPath}/bin/matlab";
}
}
</pre>
</syntaxHighlight>
 
=== Other possible issues ===
 
==== I can't see anything ====
 
If you are using Window Manager and Matlab does not display anything, you will need to use <code>wmname</code> command (preferably when starting your session). Just run <code>wmname LG3D</code>, run Matlab again and the issue should be fixed.
 
==== No hardware support ====
 
There is a great answer about that here on Matlab answers[https://www.mathworks.com/matlabcentral/answers/241850-matlab-failing-to-find-hardware-opengl#answer_263092].
 
Summarizing this answer:
<syntaxHighlight lang=bash>
cd <your_matlab_location>/sys/os/glnxa64/
sudo mv libstdc++.so.6 libstdc++.so.6.bak
sudo ln -s /usr/lib64/libstdc++.so.6  libstdc++.so.6
</syntaxHighlight>
 
You will not have <code>/usr/lib64/libstdc++.so.6</code> at the time of following the steps, but Matlab will be run in FHS env, and this path will be visible for it.
 
[[Category:Applications]]