I'm using many environment variables to setup several softwares, like maya / nuke, houdini... those variables are refering to other variables.

to set them, I have created scripts in /etc/profile.d/ to set them for all user at once. scripts contains rows like


All was working fine in Gnome3 but this desktop is too slow and heavy, so I have switched to MATE

With MATE, when I click on "application" then the icon of an app, the software start without taking in count any of my environment variable When I start the same app from terminal, all variable are loaded normally so the variables works

what I have tried :

  • put variables in /etc/environment - not working because it doesn't manage script, only text. Not usable in my config
  • point the variable script in .desktop file - not handy at all, boring to update, not working that well as I have many variable for each software

how can I make Mate application menu to take in count my variables ?


using the menu editor, I have set an app as a terminal application, to make it launch through a terminal the application start but no variable are take in count I reallised that some variable works and others don't, from the exact same .sh script

in pipe.sh :

export PIPE_TOOL=/mnt/Pipeline #work

in nuke.sh :

export NUKE_LIC=1234@server #work 
export NUKE_PATH=$PIPE_TOOL/Nuke #not working under MATE - return /Nuke in the app
export NUKE_GIZMO=$PIPE_TOOL/Gizmo #not working under MATE - return /Gizmo in the app

I'm using Centos 7.6 with Mate 1.16.2

thank you

  • Adding environment variable definitions to a file ending in .sh in /etc/profile.d/ should show up in the MATE environment too, something else must be happening. Since you are being really vague about the changes you are making and the executable you are running, it’s hard to know what could be wrong.
    – jsbillings
    Jul 14, 2019 at 13:27
  • hi, as said, i use those applications : maya, nuke and houdini. sh files are constructed like this one #!/bin/sh export PIPE_PATH=/mnt/Pipeline then an other sh script can be #!/bin/sh export NUKE_PATH=$PIPE_PATH/Nuke no other configuration than that Jul 15, 2019 at 7:18
  • If you open a terminal, do you see $PIPE_PATH defined as you expected?
    – jsbillings
    Jul 15, 2019 at 17:19
  • yes, i can see all variable as expected from terminal but open apps from application launcher dont take them in count. I really don't understand how it's possible Jul 16, 2019 at 11:35
  • I suggest you debug how the application launcher runs, there is probably a typo in it, or you’re initializing the variable someplace in the launcher
    – jsbillings
    Jul 16, 2019 at 13:18

1 Answer 1


Merging all variable to a single script fixed the problem for now

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .