diff --git a/houy.py b/houy.py index 4dade76..35481cf 100755 --- a/houy.py +++ b/houy.py @@ -8,35 +8,41 @@ import subprocess if __name__ == '__main__': r = {environ.get('PATH')} - setup_path = { - 'darwin': '/Applications/Houdini/Houdini17.5.173/Frameworks/Houdini.framework/Versions/Current/Resources', - 'linux': '/opt/hfs17.5.229', - 'win32': 'C:\Program Files\Side Effects Software\Houdini 17.5.173' - } - if platform not in setup_path: - print('Platform `{}` not supported... yet.'.format(platform), file=stderr) - exit(1) - chdir(setup_path[platform]) - if '-rs3' in argv: - redshift_path = '/opt/redshift3' + setup_path = getenv('HFS') + if not setup_path: + # Use static paths + setup = { + 'darwin': '/Applications/Houdini/Houdini17.5.173/Frameworks/Houdini.framework/Versions/Current/Resources', + 'linux': '/opt/hfs17.5.229', + 'win32': r'C:\Program Files\Side Effects Software\Houdini 17.5.173' + } + if platform not in setup.keys(): + print('Platform `{}` not supported... yet.'.format(platform), file=stderr) + exit(1) + setup_path = setup[platform] + chdir(setup_path) + + if platform == 'win32': + if '-rs3' in argv: + redshift_path = 'C:/ProgramData/Redshift3' + else: + redshift_path = 'C:/ProgramData/Redshift' else: - redshift_path = '/opt/redshift' + if '-rs3' in argv: + redshift_path = '/opt/redshift3' + else: + redshift_path = '/opt/redshift' + environ.update({ 'HOUDINI_NO_SPLASH': '1', 'HOUDINI_DSO_ERROR': '2', - 'PATH': ':'.join(['{}/bin'.format(redshift_path), + 'PATH': ';'.join(['{}/bin'.format(redshift_path), environ.get('PATH')]), - 'HOUDINI_PATH': '{}/redshift4houdini/17.5.173;&'.format(redshift_path), - 'REDSHIFT_COREDATAPATH': '{}'.format(redshift_path), + 'REDSHIFT_COREDATAPATH': redshift_path, + 'HOUDINI_OCL_DEVICETYPE': 'GPU', + 'HOUDINI_OCL_DEVICENUMBER': '0', + 'HOUDINI_PATH': "{}/Plugins/Houdini/17.5.173;&".format(redshift_path), }) - if platform == 'win32': - #call(['runas', '/noprofile', '/user:Administrator', r'"c:\Windows\System32\tscon.exe {} /dest:console"'.format(getenv('SessionName'))], env=environ) - environ.update({ - 'PATH': "C:/ProgramData/Redshift/bin;$PATH", - 'HOUDINI_PATH': "C:/ProgramData/Redshift/Plugins/Houdini/17.5.173;&", - 'HOUDINI_OCL_DEVICETYPE': 'GPU', - 'HOUDINI_OCL_DEVICENUMBER': '0', - }) # Initialize env vars. if platform != 'win32':