eris/install-tools

37 lines
1.2 KiB
Text
Raw Normal View History

2019-11-06 14:07:33 +10:00
#!/usr/bin/env python3.8
2015-12-26 20:52:39 +00:00
2019-02-04 11:48:47 +10:00
# Copyright (C) 2015-2019 Andrew Hamilton. All rights reserved.
2017-06-01 01:03:39 +01:00
# Licensed under the Artistic License 2.0.
2015-12-26 20:52:39 +00:00
import subprocess
2018-09-17 23:59:38 +10:00
import eris.tools
2015-12-26 20:52:39 +00:00
pip_deps, go_deps, luarocks_deps, dist_deps, git_deps = set(), set(), set(), \
set(), set()
dep_types = {"pip": pip_deps, "go": go_deps, "luarocks": luarocks_deps,
"git": git_deps}
2018-09-17 23:59:38 +10:00
for dependency in eris.tools.dependencies():
if "/" in dependency:
dep_type, dep = dependency.split("/", maxsplit=1)
dep_types[dep_type].add(dep)
else:
dist_deps.add(dependency)
if dist_deps:
2018-03-24 16:34:49 +10:00
subprocess.run(["sudo", "apt-get", "-y", "install"] + list(dist_deps),
check=True)
if pip_deps:
2018-09-17 23:59:38 +10:00
subprocess.run(["python" + eris.tools.PYTHON_VERSION, "-m", "pip",
"install"] + list(pip_deps), check=True)
if go_deps:
subprocess.run(["sudo", "apt-get", "-y", "install", "golang-go"],
check=True)
subprocess.run(["go", "get"] + list(go_deps), check=True)
if luarocks_deps:
subprocess.run(["sudo", "apt-get", "-y", "install", "luarocks",
"liblua5.3-dev"], check=True)
subprocess.run(["sudo", "luarocks", "install"] + list(luarocks_deps),
check=True)