Why aren't my MATLAB preferences saved on Linux?

15 visualizaciones (últimos 30 días)
Shervin Sahba
Shervin Sahba el 15 de Sept. de 2022
Editada: Xiaowei Lin el 3 de Abr. de 2023
I'm using R2022b on Linux. On first boot, I switched my keyboard shortcuts to Windows style and turned on font anti-aliasing. These affects persist between sessions.
Now, however, whatever changes I make to the preferences do not persist. e.g. If I switch the font size to 12, it reverts to 10. If I change the theming, it reverts.
Running `prefsdir` in MATLAB always shows the same directory, `~/.matlab/R2022b`, so I don't think it has trouble finding the directory. The only error that pops up when I launch `matlab` from terminal is related to libcanberra, but that's a sound library.
Any ideas? Am I missing something obvious? I'd really like to have persistant preferences. Thanks.
  3 comentarios
Shervin Sahba
Shervin Sahba el 21 de Sept. de 2022
@Chris got a hack working and put info in the answer section. I'm on an Arch system as well, so hopefully this bug gets resolved.
Chris
Chris el 21 de Sept. de 2022
Nice. Seems like it may get some attention as a bug too, looking at the other post.

Iniciar sesión para comentar.

Respuesta aceptada

Shervin Sahba
Shervin Sahba el 21 de Sept. de 2022
Editada: Shervin Sahba el 27 de Feb. de 2023
Found a fix. It looks like some sort of issue with how matlab is utilizing the /tmp directory. I don't fully understand what's happening, but as a hack, you can create an auxiliiary temp directory for MATLAB to use inside your home directory. I put it under the cache directory, like so:
mkdir ~/.cache/matlab-tmp
Then matlab can be launched from command line with the environment variable for the TMPDIR exported as
TMPDIR=~/.cache/matlab-tmp matlab -desktop
Any changes to preferences made while using this surrogate temp directory should actually save and persist on your next session.
I'll probably rely on this temp directory from here on out, as I don't see an issue with using it. To launch matlab with this environment variable more easily, you can write up a shell script or add a desktop file like the following. Here's my ~/.local/share/applications/matlab.desktop, which tells Matlab to rely on the new tmp and purges its contents after you're done.
NOTE: Change <username> below to your username! This is only a placeholder, and leaving it unchanged may damage your system!
[Desktop Entry]
Type=Application
Version=R2022b
Name=MATLAB
Comment=Scientific computing software
Icon=/home/<username>/.local/share/applications/matlab_logo.png
Exec=bash -c "export TMPDIR=/home/<username>/.cache/matlab-tmp; matlab -desktop; rm -r $TMPDIR"
Terminal=False
  10 comentarios
Rudy Richardson
Rudy Richardson el 27 de Feb. de 2023
Thanks! This worked for me on Linux Mint 21.1 Xfce (based on Ubuntu 22.04 LTS) and Matlab R2202b.
Shervin Sahba
Shervin Sahba el 27 de Feb. de 2023
I made a slight edit to the script, changing rm -r $TMPDIR/* to rm -r $TMPDIR.
This should prevent any gross file deletions if there's a typo or something that causes TMPDIR to fail to declare.
You can also just leave the removal part out entirely unless you notice matlab storing large files.

Iniciar sesión para comentar.

Más respuestas (2)

Batuhan Baserdem
Batuhan Baserdem el 30 de Dic. de 2022
This fix is not working for me; coupled with another bug that vcs integration causes matlab to crash; matlab is completely unusable for me; unless I act quick enough to open preferences and disable vcs integration on every launch. Really annoying.

Xiaowei Lin
Xiaowei Lin el 1 de Abr. de 2023
Editada: Xiaowei Lin el 3 de Abr. de 2023
This fix works for me.
I combine this thread with the DPI thread: https://ch.mathworks.com/matlabcentral/answers/406956-does-matlab-support-high-dpi-screens-on-linux succesfully to get a scaled-up version of MATLAB in Ubuntu using a high resolution monitor.
However the checkboxes in the menus, the sliding bar, the opening photo of MATLAB, etc. are still small.

Categorías

Más información sobre Environment and Settings en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by