Files
@ 1aac97248a1b
Branch filter:
Location: light9/bin/run_local.py - annotation
1aac97248a1b
3.5 KiB
text/x-python
fix KC simpleOutputs object
Ignore-this: 5b7fe29996161a5d5bbde043f267b8d2
Ignore-this: 5b7fe29996161a5d5bbde043f267b8d2
1a84c5e83d3e 1a84c5e83d3e 1a84c5e83d3e 1a84c5e83d3e f66586649ae3 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 5c04a54df635 1a84c5e83d3e 41830567a8d0 1a84c5e83d3e 0025b04a1c0a 0025b04a1c0a 0025b04a1c0a 0025b04a1c0a 0025b04a1c0a 0025b04a1c0a 0025b04a1c0a 0025b04a1c0a 0025b04a1c0a 0025b04a1c0a 0025b04a1c0a 0025b04a1c0a 41830567a8d0 1f877950ad28 1f877950ad28 1f877950ad28 1f877950ad28 1f877950ad28 1f877950ad28 8e8d778f9e21 8e8d778f9e21 3c78608a216a 3c78608a216a 3c78608a216a 3693b226b0b8 3693b226b0b8 3693b226b0b8 3693b226b0b8 3693b226b0b8 3693b226b0b8 3693b226b0b8 1f93e5d19f8a 3693b226b0b8 3693b226b0b8 3693b226b0b8 3693b226b0b8 1f93e5d19f8a 1f93e5d19f8a 8435e3ee1ec2 8796803a1b45 8435e3ee1ec2 167a61d3cfbf 0d295af23c4b 8796803a1b45 f92550d33004 f92550d33004 f92550d33004 | # allows bin/* to work without installation
# this should be turned off when the programs are installed
import sys, os, socket
def fixSysPath():
root = os.path.abspath(os.path.join(os.path.dirname(sys.argv[0]), '..')) + '/'
# this is site-packages/zope.interface-4.5.0-py2.7-nspkg.pth,
# slightly edited.
import types
has_mfs = sys.version_info > (3, 5);
p = root + 'env/local/lib/python2.7/site-packages/zope'
importlib = has_mfs and __import__('importlib.util');
has_mfs and __import__('importlib.machinery');
m = has_mfs and sys.modules.setdefault(
'zope', importlib.util.module_from_spec(
importlib.machinery.PathFinder.find_spec(
'zope', [os.path.dirname(p)])));
m = m or sys.modules.setdefault('zope', types.ModuleType('zope'));
mp = (m or []) and m.__dict__.setdefault('__path__',[]);
(p not in mp) and mp.append(p)
p = root + 'env/local/lib/python2.7/site-packages/greplin'
importlib = has_mfs and __import__('importlib.util');
has_mfs and __import__('importlib.machinery');
m = has_mfs and sys.modules.setdefault('greplin', importlib.util.module_from_spec(importlib.machinery.PathFinder.find_spec('greplin', [os.path.dirname(p)])));
m = m or sys.modules.setdefault('greplin', types.ModuleType('greplin'));
mp = (m or []) and m.__dict__.setdefault('__path__',[]);
(p not in mp) and mp.append(p)
sys.path = [
root,
root + 'env/lib/python2.7',
root + 'env/lib/python2.7/plat-x86_64-linux-gnu',
root + 'env/lib/python2.7/lib-tk',
root + 'env/lib/python2.7/lib-old',
root + 'env/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
root + 'env/local/lib/python2.7/site-packages',
root + 'env/local/lib/python2.7/site-packages/gtk-2.0',
root + 'env/lib/python2.7/site-packages',
root + 'env/lib/python2.7/site-packages/gtk-2.0',
]
fixSysPath()
from twisted.python.failure import Failure
try:
import Tkinter
except ImportError:
pass
else:
def rce(self, exc, val, tb):
sys.stderr.write("Exception in Tkinter callback\n")
if True:
sys.excepthook(exc, val, tb)
else:
Failure(val, exc, tb).printDetailedTraceback()
Tkinter.Tk.report_callback_exception = rce
import coloredlogs, logging, time
try:
import faulthandler
faulthandler.enable()
except ImportError:
pass
progName = sys.argv[0].split('/')[-1]
log = logging.getLogger() # this has to get the root logger
log.name = progName # but we can rename it for clarity
class FractionTimeFilter(logging.Filter):
def filter(self, record):
record.fractionTime = (
time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(record.created)) +
("%.3f" % (record.created % 1)).lstrip('0'))
# Don't filter the record.
return 1
coloredlogs.install(
level='DEBUG',
fmt='%(fractionTime)s %(name)s[%(process)d] %(levelname)s %(message)s')
logging.getLogger().handlers[0].addFilter(FractionTimeFilter())
def setTerminalTitle(s):
if os.environ.get('TERM', '') in ['xterm', 'rxvt', 'rxvt-unicode-256color']:
print "\033]0;%s\007" % s # not escaped/protected correctly
if 'listsongs' not in sys.argv[0] and 'homepageConfig' not in sys.argv[0]:
setTerminalTitle('[%s] %s' % (socket.gethostname(), ' '.join(sys.argv).replace('bin/', '')))
# see http://www.youtube.com/watch?v=3cIOT9kM--g for commands that make
# profiles and set background images
|