Exemplo n.º 1
0
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
Exemplo n.º 2
0
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)