ref: 73e924d847dd7b6f2db6d66bca1d389a1e2342f2
parent: bc666e67f4280894a64722e08356dfbdcb157492
author: cinap_lenrek <cinap_lenrek@gmx.de>
date: Mon Aug 13 05:53:04 EDT 2012
hg: hook system_rcpath and user_rcpath instead of polluting enviroment by setting HGRCPATH
--- a/rc/bin/hg
+++ b/rc/bin/hg
@@ -17,13 +17,21 @@
sys.stderr.write("(check your install and PYTHONPATH)\n")sys.exit(-1)
-# PLAN9 hack to keep hgrc in $home/lib
-import os
-os.environ['HGRCPATH']=os.environ['home']+'/lib/hgrc'
-
import sys
import mercurial.util
import mercurial.dispatch
+
+if sys.platform == 'plan9':
+ def p9sys_rcpath():
+ return ['/sys/lib/hgrc']
+
+ def p9usr_rcpath():
+ import os
+ return [os.environ['home']+'/lib/hgrc']
+
+ import mercurial.posix
+ mercurial.posix.system_rcpath = p9sys_rcpath
+ mercurial.posix.user_rcpath = p9usr_rcpath
for fp in (sys.stdin, sys.stdout, sys.stderr):
mercurial.util.set_binary(fp)
--- a/sys/src/cmd/hg/hg
+++ b/sys/src/cmd/hg/hg
@@ -17,13 +17,21 @@
sys.stderr.write("(check your install and PYTHONPATH)\n")sys.exit(-1)
-# PLAN9 hack to keep hgrc in $home/lib
-import os
-os.environ['HGRCPATH']=os.environ['home']+'/lib/hgrc'
-
import sys
import mercurial.util
import mercurial.dispatch
+
+if sys.platform == 'plan9':
+ def p9sys_rcpath():
+ return ['/sys/lib/hgrc']
+
+ def p9usr_rcpath():
+ import os
+ return [os.environ['home']+'/lib/hgrc']
+
+ import mercurial.posix
+ mercurial.posix.system_rcpath = p9sys_rcpath
+ mercurial.posix.user_rcpath = p9usr_rcpath
for fp in (sys.stdin, sys.stdout, sys.stderr):
mercurial.util.set_binary(fp)
--
⑨