Category Archives: MARI

Setting MARI_CACHE Locations outside MARI

The MARI_CACHE environment variable can be used to specify the cache location from outside Mari. This can be one or several directories. If this variable is not set Mari prompts you where to store the cache files when you first launch it

I had selected the cache location from the user interface after starting up Mari. But later I planned to use another location and hence deleted the directory. The next time I tried starting Mari, I was welcomed with a message

/usr/local/bin/mari: line 35: 13275 Aborted (core dumped) $currentPath/bin/MriBin $@ &>${mariLog}

The MariLog.txt clearly indicated the crash was happening due to the missing file path. Since the configuration was saved in the first startup instance, setting the environment variable also didn’t seemed to help me run Mari on my user account.

Debug : [ MriApplication.cpp: 352] : Cache Location ‘/mariCache’ not exist
MriBin: MriDataBlockManager.cpp:233: bool MriDataBlockManager::setup(const QStringList&, qint64, int): Assertion `false’ failed.
Cannot Create cache root at /mariCache

The workaround is to delete the CacheLocations.ini file which saved under the directory /home/user/.config/TheFoundry . Or you can even create a new folder and point the path to your new directory

[CacheRoots]
1Path=/scratch/cache
size=1

Installing Foundry Mari on openSUSE 11.3

MARI is a creative texture-painting tool that can handle extreme projects. MARI was developed at Weta Digital to handle the massively complex, highly detailed look development work demanded of the texture department by projects such as DISTRICT 9, THE LOVELY BONES, and AVATAR.

This is how the installation directory looks like. You can add symlink to the mari* shell script in the bin folder if you want. In case you are not executing the script from the same directory, you need to make slight modification to the script to make it accessible.

 #!/bin/bash
 # This version is intended to launch Mari from the directory this
 # script is located in, does not require Mari to be installed

#export presentScriptPath=`dirname $0`
 export presentScriptPath="/usr/local/Mari1.0v4"
 export currentPath=`cd $presentScriptPath; pwd`
 export binDir=$currentPath"/bin/"
 export PATH=${PATH}:$binDir
 export mariLog=$MARI_LOG_FILE
 if [ "$mariLog" == "" ] ; then
 export mariLog=/scratch/logs/MariLog.txt
 fi

# Look for options
 for p in "$@"
 do
 case "$p" in
 "--verbose")
 # turn off the log output
 export mariLog=
 ;;
 *)
 ;;
 esac
 done

if [ "$mariLog" == "" ] ; then
 $currentPath/bin/MriBin $@
 else
 $currentPath/bin/MriBin $@ &> ${mariLog}
 fi
 

I have commented out the line

 export presentScriptPath=`dirname $0`
 

and replaced with

 export presentScriptPath="/usr/local/Mari1.0v4"
 

which is the installation directory for Mari

Disclaimer: Please support the developers as I do not in any way support piracy. Go out and purchase the softwares if you like them.