Jump to content

HOUDINI_USER_PREF_DIR change not respected upon startup


Recommended Posts

We are working in a Linux environment, and used to have our HOUDINI_USER_PREF_DIR located on in our /home/DOMAIN/USER/ folder on a per machine level. We just changed it so that each user has it now has it in their user folder on the network, where as before it was on that specific machine. This was done by changing the HOUDINI_USER_PREF_DIR in the 123.py script on startup using the following code.

prefsPath = '/mnt/warehouse6/cask1/users/%s/%s%s' % ("USER", hou.applicationName(), ".".join(hou.applicationVersionString().split(".")[:-1]))
hou.putenv("HOUDINI_USER_PREF_DIR", prefsPath)

This somewhat works, we get a new user folder for each version on our network, located at /mnt/warehouse6/cask1/users/USER/, and it seems to use what is put in there. $HOUDINI_USER_PREF_DIR also returns the correct folder if you print it inside Houdini.

However, the older default /home/DOMAIN/USER/ prefs folder is still being created and used when Houdini starts up, even though I am changing the prefs directory in the startup script. 
Is there something else that I need to change? I would think altering it in the 123.py would disregard the older default location that Houdini sets up.

Link to comment
Share on other sites

I believe you need to define that prior to 123.py being called. There are some variables that need to be set before Houdini starts like HSITE, there are variables you can change at 123.py, and other variables you can change while Houdini is running. There is no list of when which variables need to be declared when so try setting it in the shell prior to launch with a wrapper.

Link to comment
Share on other sites

On 2/4/2020 at 7:08 PM, LaidlawFX said:

I believe you need to define that prior to 123.py being called. There are some variables that need to be set before Houdini starts like HSITE, there are variables you can change at 123.py, and other variables you can change while Houdini is running. There is no list of when which variables need to be declared when so try setting it in the shell prior to launch with a wrapper.

Thanks Ben. Do you know of an example of that being set in the shell? We are actually setting up HSITE in our 123.py

hou.putenv("HSITE", '/mnt/warehouse6/cask3/tools/houdini/HSITE')

 

Link to comment
Share on other sites

There are a lot of ways to do it depending on the system and the personal preference. I don't personally have a good example maybe some one else will. You could do something as old school and simple like a bashrc script, or a .bat. Python wrappers are the most common ones now a days. Setting the environment there then launching Houdini from inside it. You could even set them in the windows/mac system variables too. Just having a common wrapper works the best though. There are quite a few environment management systems if you really want to go all in. You can then use the same method for all of your dccs. Most of that process is not Houdini specific so I go to stack overflow first :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...