def install(packages, update=False, options=None, version=None):
    manager = MANAGER
    if update:
        update_index()
    if options is None:
        options = []
    if version is None:
        version = ''
    if version and not isinstance(packages, list):
        version = '=' + version
    if not isinstance(packages, basestring):
        packages = " ".join(packages)
    options.append("--quiet")
    options.append("--assume-yes")
    options = " ".join(options)
    cmd = '%(manager)s install %(options)s %(packages)s%(version)s' % locals()
    run_as_root(cmd, pty=False)
:return: long hexadecimal sha1 from the given less-than-40 byte hexsha
dataset/ETHPy150Open ronnix/fabtools/fabtools/deb.py/install--crossover with--dataset/ETHPy150Open gitpython-developers/GitPython/git/repo/fun.py/short_to_long