def init(): import os if os.environ.has_key('UID'): #only run if enviroment is set and not root! if os.environ['UID'] == '0': return "" from base import depotRoot root = os.path.abspath("%s/../../" % moduleRootPath) curdir = os.getcwd() os.chdir(root) pythonpath = '' path = '' # user level: if os.environ.has_key('HOME'): user_pythonpath = '%s/tools/python' % os.environ['HOME'] if os.path.exists(user_pythonpath): pythonpath += user_pythonpath+':' user_path = '%s/tools/scripts' % os.environ['HOME'] if os.path.exists(user_path): path += user_path+':' pythonpath += '%s/python' % root if os.environ.has_key('PYTHONPATH'): tmp = os.environ['PYTHONPATH'] tmp = tmp.replace(pythonpath,'').replace('::',':') pythonpath += ':%s' % tmp # custom init for OSX # sets pythonpath to use pipe python-dbus so things work # without having to install python-dbus into the machine itself! if osx: import glob paths = glob.glob( '%s/python-dbus/*' % roots.libs() ) if paths: paths.sort() pythonpath += ':%s/lib/python2.6/site-packages/' % paths[-1] path += '%s/bin:%s/scripts' % (root,root) if os.environ.has_key('HOME'): path = '%s/tools/scripts:%s' % (os.environ['HOME'],path) # if os.environ.has_key('PATH'): # tmp = os.environ['PATH'] # tmp = tmp.replace(path,'').replace('::',':') # path += ':%s' % tmp # print path envs = ''' alias go="source %s/scripts/go" export VGLCLIENT=$(which vglclient 2>/dev/null) export ROOT=%s export STUDIO=$(basename $ROOT) %s export PATH=%s:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin export PYTHONPATH=%s export __PATH=$PATH export __PYTHONPATH=$PYTHONPATH export EDITOR=nano ''' % (root, depotRoot(), alias(), path, pythonpath) if '___PATH' not in os.environ.keys(): envs += ''' export ___PATH=$PATH ''' if '___PYTHONPATH' not in os.environ.keys(): envs += ''' export ___PYTHONPATH=$PYTHONPATH ''' if osx: envs += ''' export CLICOLOR=1 export LSCOLORS=GxFxCxDxBxegedabagaced alias ls='ls -GFh' alias l='ls -lh' ''' else: envs += ''' alias l="ls -lh --color=yes" ''' # if running in Qube, set PIPE_FARM_USER if os.environ.has_key('QBJOBID'): user = '' for line in os.popen('/atomo/apps/linux/x86_64/qube/current/qube-core/local/pfx/qube/bin/qbjobs --expression "id==%s" --user "" ' % os.environ['QBJOBID']).readlines(): if os.environ['QBJOBID'] in line: user = line.split()[6].strip() envs += '\nexport PIPE_FARM_USER=%s' % user envs += '\nexport PIPE_FARM_JOBID=%s' % os.environ['QBJOBID'] return envs
def devInstall(plat=platform, distro=None): ''' development install directory for the current platform''' if not distro: distro = getDistro(check=False) return "%s/pipeline/build/%s/%s/%s" % (depotRoot(),plat,arch,distro)