MAYA_SHELF_PATH not working


Have any one used the MAYA_SHELF_PATH enviroment variable?

I am trying to use it here and i get wierd results.
i can set it up fine and maya reads from the given MAYA_SHELF_PATH directory fine . but it opens all the shelfs empty even is thy have abuttons set up. And when I close the maya it saves the empty shelfs over shelfs with buttons.



Привет / Hi

I never used Shelf variable Path…

The basic paths which u can get through getenv command are…


[color=white]Usually on PC [/color]your shelves should rest in there:

C:\Documents and Settings\Alexi\My Documents\maya\6.0\prefs\shelves

Take care…


yeah… thanks Leha

I need to tell Maya to read shelves from a designated directory, other then the default directory. For that Maya gives me the shelf variable. But I can not get it to work right.

Have you used the MAYA_SHELF_PATH ?




NOpe …i never used different shelves path…

WHat is the reason of using different path in your case…?


well we are using VSS ( visual source save) to run the project and the Defoult Maya Shelf path is not in the our VSS . So To get the scripts read from designeted Directories other then Defoult we need to change the enviroment pathes.


did you ever find a fix for this? i’m running into the same problem. i want a network shared shelf path to add common buttons/tools to a specific custom shelf on everyone’s maya.

i have the shelf mel setup with buttons, open up maya and the shelf is blank… then if i close maya the mel file gets overwritten to a blank file. if i make the file read only, it doesnt get overwritten, but it still doesnt show any buttons when maya opens. odd…


An easy way to get around this (if it works)
Is to hold your shelves in VSS folder and alias
the shelves folder to the default alias folder.

This would work in OSX (I think)
as I have all my music on an external drive.
I make an alias in my iTunes folder of the
music folder on my External HD…



ah, thinking about it now, i could just have a script run from the userSetup file that copies the network shelf file to the local shelf folder… though i’m not sure if the shelves get loaded before that userSetup is run or not…



the maya native shelf path is not changeable. the only way to point the path to a new place is to actually edit the AEtemplate that calls it. you can comment out the native path and type in the path you want … would actually be nice to modify the settings -> preferences to accomodate such a change. so you could potentially put the shelves wherever you want. i noticed this info when i was digging through the AEtemplates trying to mod one of em, and its commented with

[b]// this system variable cannot be changed

[/b]if anyone finds a way… to change that variable… that would be tasty…



Hmm…can this thread come back? I’m having the same problem. And this thread hasn’t really pointed to a solution yet. Maya’s doc’s definitely indicate that you can add paths with the MAYA_SHELF_PATH environment varible. It works fine for MAYA_SCRIPT_PATH (I’ve added several and they all work simultaneously). But shelves loaded from an alternate MAYA_SHELF_PATH load blank.

So does anyone have a clear solution for allowing shelves to live on a network and pointing to them from user’s machines?


hi all,

as you know, when you create a shelf it will save as a mel procedure. Maya can find your custom shelf path but same time can’t find the procedures. If you are using Maya.env define your paths like that;

MAYA_SHELF_PATH = X:\MyShelfDirectory;
MAYA_SCRIPT_PATH = X:\MyShelfDirectory;

important thing here, maya should read your shelf path first. it should work correctly.


have anyone actually tried shelf path and it worked?

userSetup method will work. that what I am using right now. i actually delete and rebuild the shelfs from userSetup , and userSetup is in the VSS, since the script path works.



Ah, thank you, Safak. That was the ticket. Much appreciated!

And yury, I’ll test the userSetup.mel method as well.



You’re welcome :thumbsup:


This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.