27 lines
638 B
Python
Executable File
27 lines
638 B
Python
Executable File
#!/usr/bin/env python3
|
|
#
|
|
# Wrapper around 'git' that doesn't think we are root
|
|
|
|
import os
|
|
import shutil
|
|
import sys
|
|
|
|
os.environ['PSEUDO_UNLOAD'] = '1'
|
|
|
|
# calculate path to the real 'git'
|
|
path = os.environ['PATH']
|
|
# we need to remove our path but also any other copy of this script which
|
|
# may be present, e.g. eSDK.
|
|
replacements = [os.path.dirname(sys.argv[0])]
|
|
for p in path.split(":"):
|
|
if p.endswith("/scripts"):
|
|
replacements.append(p)
|
|
for r in replacements:
|
|
path = path.replace(r, '/ignoreme')
|
|
real_git = shutil.which('git', path=path)
|
|
|
|
if len(sys.argv) == 1:
|
|
os.execl(real_git, 'git')
|
|
|
|
os.execv(real_git, sys.argv)
|