mirror of
https://github.com/ONLYOFFICE/build_tools.git
synced 2026-04-07 14:06:31 +08:00
Merge pull request 'hotfix/v8.2.2' (#18) from hotfix/v8.2.2 into develop
Reviewed-on: https://git.onlyoffice.com/ONLYOFFICE/build_tools/pulls/18
This commit is contained in:
@ -45,7 +45,6 @@ common.branding = args.branding
|
|||||||
common.timestamp = utils.get_timestamp()
|
common.timestamp = utils.get_timestamp()
|
||||||
common.workspace_dir = utils.get_abspath(utils.get_script_dir(__file__) + "/..")
|
common.workspace_dir = utils.get_abspath(utils.get_script_dir(__file__) + "/..")
|
||||||
common.branding_dir = utils.get_abspath(common.workspace_dir + "/" + args.branding) if args.branding else common.workspace_dir
|
common.branding_dir = utils.get_abspath(common.workspace_dir + "/" + args.branding) if args.branding else common.workspace_dir
|
||||||
common.deploy_data = utils.get_path(common.workspace_dir + "/deploy.txt")
|
|
||||||
common.summary = []
|
common.summary = []
|
||||||
utils.log("os_family: " + common.os_family)
|
utils.log("os_family: " + common.os_family)
|
||||||
utils.log("platform: " + str(common.platform))
|
utils.log("platform: " + str(common.platform))
|
||||||
@ -74,15 +73,14 @@ import package_mobile
|
|||||||
|
|
||||||
# build
|
# build
|
||||||
utils.set_cwd(common.workspace_dir, verbose=True)
|
utils.set_cwd(common.workspace_dir, verbose=True)
|
||||||
utils.delete_file(common.deploy_data)
|
|
||||||
if "core" in common.targets:
|
if "core" in common.targets:
|
||||||
package_core.make()
|
package_core.make()
|
||||||
if "closuremaps_opensource" in common.targets:
|
if "closuremaps_sdkjs_opensource" in common.targets:
|
||||||
package_core.deploy_closuremaps_sdkjs("opensource")
|
package_core.deploy_closuremaps_sdkjs("opensource")
|
||||||
package_core.deploy_closuremaps_webapps("opensource")
|
if "closuremaps_sdkjs_commercial" in common.targets:
|
||||||
if "closuremaps_commercial" in common.targets:
|
|
||||||
package_core.deploy_closuremaps_sdkjs("commercial")
|
package_core.deploy_closuremaps_sdkjs("commercial")
|
||||||
package_core.deploy_closuremaps_webapps("commercial")
|
if "closuremaps_webapps" in common.targets:
|
||||||
|
package_core.deploy_closuremaps_webapps("opensource")
|
||||||
if "desktop" in common.targets:
|
if "desktop" in common.targets:
|
||||||
package_desktop.make()
|
package_desktop.make()
|
||||||
if "builder" in common.targets:
|
if "builder" in common.targets:
|
||||||
|
|||||||
@ -1832,3 +1832,9 @@ def create_x2t_js_cache(dir, product):
|
|||||||
cmd_in_dir(dir, "./x2t", ["-create-js-cache"], True)
|
cmd_in_dir(dir, "./x2t", ["-create-js-cache"], True)
|
||||||
cmd_in_dir(dir, "./x2t", ["-create-js-snapshots"], True)
|
cmd_in_dir(dir, "./x2t", ["-create-js-snapshots"], True)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
def setup_local_qmake(dir_qmake):
|
||||||
|
dir_base = os.path.dirname(dir_qmake)
|
||||||
|
writeFile(dir_base + "/onlyoffice_qt.conf", "Prefix = " + dir_base)
|
||||||
|
return
|
||||||
|
|
||||||
@ -119,7 +119,7 @@ def make():
|
|||||||
# windows hack (delete later) ----------------------
|
# windows hack (delete later) ----------------------
|
||||||
if ("windows" == base.host_platform()):
|
if ("windows" == base.host_platform()):
|
||||||
base.delete_dir_with_access_error("v8/buildtools/win")
|
base.delete_dir_with_access_error("v8/buildtools/win")
|
||||||
base.cmd("git", ["config", "--system", "core.longpaths", "true"])
|
base.cmd("git", ["config", "--system", "core.longpaths", "true"], True)
|
||||||
base.cmd("gclient", ["sync", "--force"], True)
|
base.cmd("gclient", ["sync", "--force"], True)
|
||||||
else:
|
else:
|
||||||
base.cmd("gclient", ["sync"], True)
|
base.cmd("gclient", ["sync"], True)
|
||||||
@ -246,7 +246,7 @@ def make_xp():
|
|||||||
base.cmd("./depot_tools/fetch", ["v8"], True)
|
base.cmd("./depot_tools/fetch", ["v8"], True)
|
||||||
base.cmd("./depot_tools/gclient", ["sync", "-r", "4.10.253"], True)
|
base.cmd("./depot_tools/gclient", ["sync", "-r", "4.10.253"], True)
|
||||||
base.delete_dir_with_access_error("v8/buildtools/win")
|
base.delete_dir_with_access_error("v8/buildtools/win")
|
||||||
base.cmd("git", ["config", "--system", "core.longpaths", "true"])
|
base.cmd("git", ["config", "--system", "core.longpaths", "true"], True)
|
||||||
base.cmd("gclient", ["sync", "--force"], True)
|
base.cmd("gclient", ["sync", "--force"], True)
|
||||||
|
|
||||||
# save common py script
|
# save common py script
|
||||||
|
|||||||
@ -21,6 +21,9 @@ def change_bootstrap():
|
|||||||
content += "@Subdir git\n"
|
content += "@Subdir git\n"
|
||||||
content += "infra/3pp/tools/git/${platform} version:2@2.41.0.chromium.11\n"
|
content += "infra/3pp/tools/git/${platform} version:2@2.41.0.chromium.11\n"
|
||||||
|
|
||||||
|
base.replaceInFile("./depot_tools/bootstrap/bootstrap.py",
|
||||||
|
"raise subprocess.CalledProcessError(proc.returncode, argv, None)", "return")
|
||||||
|
|
||||||
base.writeFile("./depot_tools/bootstrap/manifest.txt", content)
|
base.writeFile("./depot_tools/bootstrap/manifest.txt", content)
|
||||||
return
|
return
|
||||||
|
|
||||||
@ -105,6 +108,9 @@ def make():
|
|||||||
if not base.is_dir(base_dir):
|
if not base.is_dir(base_dir):
|
||||||
base.create_dir(base_dir)
|
base.create_dir(base_dir)
|
||||||
|
|
||||||
|
if ("mac" == base.host_platform()):
|
||||||
|
base.cmd("git", ["config", "--global", "http.postBuffer", "157286400"], True)
|
||||||
|
|
||||||
os.chdir(base_dir)
|
os.chdir(base_dir)
|
||||||
if not base.is_dir("depot_tools"):
|
if not base.is_dir("depot_tools"):
|
||||||
base.cmd("git", ["clone", "https://chromium.googlesource.com/chromium/tools/depot_tools.git"])
|
base.cmd("git", ["clone", "https://chromium.googlesource.com/chromium/tools/depot_tools.git"])
|
||||||
@ -121,7 +127,7 @@ def make():
|
|||||||
base.copy_dir("./v8/third_party", "./v8/third_party_new")
|
base.copy_dir("./v8/third_party", "./v8/third_party_new")
|
||||||
if ("windows" == base.host_platform()):
|
if ("windows" == base.host_platform()):
|
||||||
os.chdir("v8")
|
os.chdir("v8")
|
||||||
base.cmd("git", ["config", "--system", "core.longpaths", "true"])
|
base.cmd("git", ["config", "--system", "core.longpaths", "true"], True)
|
||||||
os.chdir("../")
|
os.chdir("../")
|
||||||
v8_branch_version = "remotes/branch-heads/8.9"
|
v8_branch_version = "remotes/branch-heads/8.9"
|
||||||
if ("mac" == base.host_platform()):
|
if ("mac" == base.host_platform()):
|
||||||
|
|||||||
@ -115,7 +115,6 @@ def make():
|
|||||||
js_dir = root_dir
|
js_dir = root_dir
|
||||||
base.copy_dir(base_dir + "/js/" + branding + "/builder/sdkjs", js_dir + "/sdkjs")
|
base.copy_dir(base_dir + "/js/" + branding + "/builder/sdkjs", js_dir + "/sdkjs")
|
||||||
base.copy_dir(base_dir + "/js/" + branding + "/builder/web-apps", js_dir + "/web-apps")
|
base.copy_dir(base_dir + "/js/" + branding + "/builder/web-apps", js_dir + "/web-apps")
|
||||||
base.move_file(js_dir + "/web-apps/apps/api/documents/api.js", js_dir + "/web-apps/apps/api/documents/api.js.tpl")
|
|
||||||
for file in glob.glob(js_dir + "/web-apps/apps/*/*/*.js.map") \
|
for file in glob.glob(js_dir + "/web-apps/apps/*/*/*.js.map") \
|
||||||
+ glob.glob(js_dir + "/web-apps/apps/*/mobile/dist/js/*.js.map"):
|
+ glob.glob(js_dir + "/web-apps/apps/*/mobile/dist/js/*.js.map"):
|
||||||
base.delete_file(file)
|
base.delete_file(file)
|
||||||
@ -123,7 +122,7 @@ def make():
|
|||||||
base.create_x2t_js_cache(converter_dir, "server")
|
base.create_x2t_js_cache(converter_dir, "server")
|
||||||
|
|
||||||
# add embed worker code
|
# add embed worker code
|
||||||
base.cmd_in_dir(git_dir + "/sdkjs/common/embed", "python", ["make.py", js_dir + "/web-apps/apps/api/documents/api.js.tpl"])
|
base.cmd_in_dir(git_dir + "/sdkjs/common/embed", "python", ["make.py", js_dir + "/web-apps/apps/api/documents/api.js"])
|
||||||
|
|
||||||
# plugins
|
# plugins
|
||||||
base.create_dir(js_dir + "/sdkjs-plugins")
|
base.create_dir(js_dir + "/sdkjs-plugins")
|
||||||
|
|||||||
@ -27,7 +27,6 @@ def s3_upload(files, dst):
|
|||||||
key = dst + utils.get_basename(f) if dst.endswith("/") else dst
|
key = dst + utils.get_basename(f) if dst.endswith("/") else dst
|
||||||
upload = utils.s3_upload(f, "s3://" + branding.s3_bucket + "/" + key)
|
upload = utils.s3_upload(f, "s3://" + branding.s3_bucket + "/" + key)
|
||||||
if upload:
|
if upload:
|
||||||
utils.add_deploy_data(key)
|
|
||||||
utils.log("URL: " + branding.s3_base_url + "/" + key)
|
utils.log("URL: " + branding.s3_base_url + "/" + key)
|
||||||
ret &= upload
|
ret &= upload
|
||||||
return ret
|
return ret
|
||||||
@ -54,7 +53,6 @@ def make_archive():
|
|||||||
utils.set_summary("builder archive deploy", ret)
|
utils.set_summary("builder archive deploy", ret)
|
||||||
if ret:
|
if ret:
|
||||||
utils.log("URL: " + branding.s3_base_url + "/" + dest_version)
|
utils.log("URL: " + branding.s3_base_url + "/" + dest_version)
|
||||||
utils.add_deploy_data(dest_version)
|
|
||||||
utils.s3_copy(
|
utils.s3_copy(
|
||||||
"s3://" + branding.s3_bucket + "/" + dest_version,
|
"s3://" + branding.s3_bucket + "/" + dest_version,
|
||||||
"s3://" + branding.s3_bucket + "/" + dest_latest)
|
"s3://" + branding.s3_bucket + "/" + dest_latest)
|
||||||
|
|||||||
@ -35,7 +35,6 @@ def make_archive():
|
|||||||
utils.set_summary("core archive deploy", ret)
|
utils.set_summary("core archive deploy", ret)
|
||||||
if ret:
|
if ret:
|
||||||
utils.log("URL: " + branding.s3_base_url + "/" + dest_version)
|
utils.log("URL: " + branding.s3_base_url + "/" + dest_version)
|
||||||
utils.add_deploy_data(dest_version)
|
|
||||||
utils.s3_copy(
|
utils.s3_copy(
|
||||||
"s3://" + branding.s3_bucket + "/" + dest_version,
|
"s3://" + branding.s3_bucket + "/" + dest_version,
|
||||||
"s3://" + branding.s3_bucket + "/" + dest_latest)
|
"s3://" + branding.s3_bucket + "/" + dest_latest)
|
||||||
@ -65,7 +64,6 @@ def deploy_closuremaps_sdkjs(license):
|
|||||||
ret &= upload
|
ret &= upload
|
||||||
if upload:
|
if upload:
|
||||||
utils.log("URL: " + branding.s3_base_url + "/" + key)
|
utils.log("URL: " + branding.s3_base_url + "/" + key)
|
||||||
utils.add_deploy_data(key)
|
|
||||||
utils.set_summary("sdkjs closure maps %s deploy" % license, ret)
|
utils.set_summary("sdkjs closure maps %s deploy" % license, ret)
|
||||||
return
|
return
|
||||||
|
|
||||||
@ -91,6 +89,5 @@ def deploy_closuremaps_webapps(license):
|
|||||||
ret &= upload
|
ret &= upload
|
||||||
if upload:
|
if upload:
|
||||||
utils.log("URL: " + branding.s3_base_url + "/" + key)
|
utils.log("URL: " + branding.s3_base_url + "/" + key)
|
||||||
utils.add_deploy_data(key)
|
|
||||||
utils.set_summary("web-apps closure maps %s deploy" % license, ret)
|
utils.set_summary("web-apps closure maps %s deploy" % license, ret)
|
||||||
return
|
return
|
||||||
|
|||||||
@ -26,7 +26,6 @@ def s3_upload(files, dst):
|
|||||||
key = dst + utils.get_basename(f) if dst.endswith("/") else dst
|
key = dst + utils.get_basename(f) if dst.endswith("/") else dst
|
||||||
upload = utils.s3_upload(f, "s3://" + branding.s3_bucket + "/" + key)
|
upload = utils.s3_upload(f, "s3://" + branding.s3_bucket + "/" + key)
|
||||||
if upload:
|
if upload:
|
||||||
utils.add_deploy_data(key)
|
|
||||||
utils.log("URL: " + branding.s3_base_url + "/" + key)
|
utils.log("URL: " + branding.s3_base_url + "/" + key)
|
||||||
ret &= upload
|
ret &= upload
|
||||||
return ret
|
return ret
|
||||||
@ -155,17 +154,6 @@ def make_inno():
|
|||||||
else:
|
else:
|
||||||
ret = False
|
ret = False
|
||||||
utils.set_summary("desktop inno update deploy", ret)
|
utils.set_summary("desktop inno update deploy", ret)
|
||||||
|
|
||||||
changes_dir = common.workspace_dir + "\\" \
|
|
||||||
+ utils.get_path(branding.desktop_changes_dir) + "\\" + common.version
|
|
||||||
if common.platform == "windows_x64" and \
|
|
||||||
common.deploy and \
|
|
||||||
utils.glob_path(changes_dir + "\\*.html"):
|
|
||||||
utils.log_h2("desktop changelog deploy")
|
|
||||||
ret = s3_upload(
|
|
||||||
utils.glob_path(changes_dir + "\\*.html"),
|
|
||||||
"desktop/win/update/%s/%s/" % (common.version, common.build))
|
|
||||||
utils.set_summary("desktop changelog deploy", ret)
|
|
||||||
return
|
return
|
||||||
|
|
||||||
def make_advinst():
|
def make_advinst():
|
||||||
@ -308,11 +296,17 @@ def make_sparkle_updates():
|
|||||||
macos_zip = "build/" + zip_filename + ".zip"
|
macos_zip = "build/" + zip_filename + ".zip"
|
||||||
utils.create_dir(updates_dir)
|
utils.create_dir(updates_dir)
|
||||||
utils.copy_file(macos_zip, updates_dir)
|
utils.copy_file(macos_zip, updates_dir)
|
||||||
utils.copy_dir_content(released_updates_dir, updates_dir, ".zip")
|
utils.sh(
|
||||||
|
"ls -1t " + released_updates_dir + "/*.zip" \
|
||||||
|
+ " | head -n 3" \
|
||||||
|
+ " | while read f; do cp -fv \"$f\" " + updates_dir + "/; done",
|
||||||
|
verbose=True)
|
||||||
|
|
||||||
for file in utils.glob_path(changes_dir + "/" + common.version + "/*.html"):
|
for ext in [".html", ".ru.html"]:
|
||||||
filename = utils.get_basename(file).replace("changes", zip_filename)
|
changes_src = changes_dir + "/" + common.version + "/changes" + ext
|
||||||
utils.copy_file(file, updates_dir + "/" + filename)
|
changes_dst = updates_dir + "/" + zip_filename + ext
|
||||||
|
if not utils.copy_file(changes_src, changes_dst):
|
||||||
|
utils.write_file(changes_dst, "<!DOCTYPE html>placeholder")
|
||||||
|
|
||||||
sparkle_base_url = "%s/%s/updates/" % (branding.sparkle_base_url, suffix)
|
sparkle_base_url = "%s/%s/updates/" % (branding.sparkle_base_url, suffix)
|
||||||
ret = utils.sh(
|
ret = utils.sh(
|
||||||
|
|||||||
@ -31,7 +31,6 @@ def make_mobile():
|
|||||||
key = "mobile/android/" + zip_file
|
key = "mobile/android/" + zip_file
|
||||||
ret = utils.s3_upload(zip_file, "s3://" + branding.s3_bucket + "/" + key)
|
ret = utils.s3_upload(zip_file, "s3://" + branding.s3_bucket + "/" + key)
|
||||||
if ret:
|
if ret:
|
||||||
utils.add_deploy_data(key)
|
|
||||||
utils.log("URL: " + branding.s3_base_url + "/" + key)
|
utils.log("URL: " + branding.s3_base_url + "/" + key)
|
||||||
utils.set_summary("mobile deploy", ret)
|
utils.set_summary("mobile deploy", ret)
|
||||||
|
|
||||||
|
|||||||
@ -21,7 +21,6 @@ def s3_upload(files, dst):
|
|||||||
key = dst + utils.get_basename(f) if dst.endswith("/") else dst
|
key = dst + utils.get_basename(f) if dst.endswith("/") else dst
|
||||||
upload = utils.s3_upload(f, "s3://" + branding.s3_bucket + "/" + key)
|
upload = utils.s3_upload(f, "s3://" + branding.s3_bucket + "/" + key)
|
||||||
if upload:
|
if upload:
|
||||||
utils.add_deploy_data(key)
|
|
||||||
utils.log("URL: " + branding.s3_base_url + "/" + key)
|
utils.log("URL: " + branding.s3_base_url + "/" + key)
|
||||||
ret &= upload
|
ret &= upload
|
||||||
return ret
|
return ret
|
||||||
|
|||||||
@ -266,11 +266,6 @@ def set_summary(target, status):
|
|||||||
common.summary.append({target: status})
|
common.summary.append({target: status})
|
||||||
return
|
return
|
||||||
|
|
||||||
def add_deploy_data(key):
|
|
||||||
with open(common.deploy_data, 'a+') as f:
|
|
||||||
f.write(key + "\n")
|
|
||||||
return
|
|
||||||
|
|
||||||
def cmd(*args, **kwargs):
|
def cmd(*args, **kwargs):
|
||||||
if kwargs.get("verbose"):
|
if kwargs.get("verbose"):
|
||||||
log("- cmd:")
|
log("- cmd:")
|
||||||
|
|||||||
@ -93,6 +93,9 @@ def make(platform, project, qmake_config_addon="", is_no_errors=False):
|
|||||||
qmake_app = qt_dir + "/bin/qmake"
|
qmake_app = qt_dir + "/bin/qmake"
|
||||||
# non windows platform
|
# non windows platform
|
||||||
if not base.is_windows():
|
if not base.is_windows():
|
||||||
|
if base.is_file(qt_dir + "/onlyoffice_qt.conf"):
|
||||||
|
build_params.append("-qtconf")
|
||||||
|
build_params.append(qt_dir + "/onlyoffice_qt.conf")
|
||||||
base.cmd(qmake_app, build_params)
|
base.cmd(qmake_app, build_params)
|
||||||
base.correct_makefile_after_qmake(platform, makefile)
|
base.correct_makefile_after_qmake(platform, makefile)
|
||||||
if ("1" == config.option("clean")):
|
if ("1" == config.option("clean")):
|
||||||
|
|||||||
39
scripts/sdkjs_common/jsdoc/get_latest_branch.py
Normal file
39
scripts/sdkjs_common/jsdoc/get_latest_branch.py
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
import subprocess
|
||||||
|
|
||||||
|
def fetch_branches():
|
||||||
|
#Fetch all branches without tags from the remote.
|
||||||
|
subprocess.run(['git', 'fetch', '--no-tags', 'origin', '+refs/heads/*:refs/remotes/origin/*'], check=True)
|
||||||
|
|
||||||
|
def get_branches():
|
||||||
|
#Get list of branches in the repository."""
|
||||||
|
result = subprocess.run(['git', 'branch', '-r'], capture_output=True, text=True)
|
||||||
|
return [line.strip() for line in result.stdout.splitlines()]
|
||||||
|
|
||||||
|
def parse_version(version_str):
|
||||||
|
#Parse version string and return a tuple of integers (major, minor, patch).
|
||||||
|
try:
|
||||||
|
return tuple(map(int, version_str.lstrip('v').split('.')))
|
||||||
|
except ValueError:
|
||||||
|
return (0, 0, 0) # Default for non-parsable versions
|
||||||
|
|
||||||
|
def get_max_version_branch(branches):
|
||||||
|
#Find the branch with the highest version.
|
||||||
|
max_branch = None
|
||||||
|
max_version = (0, 0, 0)
|
||||||
|
|
||||||
|
for branch in branches:
|
||||||
|
parts = branch.split('/')
|
||||||
|
if len(parts) >= 2 and (parts[1] == 'hotfix' or parts[1] == 'release'):
|
||||||
|
version = parse_version(parts[2])
|
||||||
|
if version > max_version:
|
||||||
|
max_version = version
|
||||||
|
max_branch = parts
|
||||||
|
|
||||||
|
return max_branch
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
fetch_branches() # Fetch branches without tags
|
||||||
|
branches = get_branches()
|
||||||
|
max_version_branch = get_max_version_branch(branches)
|
||||||
|
if max_version_branch:
|
||||||
|
print('/'.join(max_version_branch[1:])) # Print only the branch name without origin
|
||||||
@ -55,14 +55,23 @@ def install_qt():
|
|||||||
base.cmd_in_dir("./qt-everywhere-opensource-src-5.9.9", "make", ["-j", "4"])
|
base.cmd_in_dir("./qt-everywhere-opensource-src-5.9.9", "make", ["-j", "4"])
|
||||||
base.cmd_in_dir("./qt-everywhere-opensource-src-5.9.9", "make", ["install"])
|
base.cmd_in_dir("./qt-everywhere-opensource-src-5.9.9", "make", ["install"])
|
||||||
return
|
return
|
||||||
|
|
||||||
|
def install_qt_prebuild():
|
||||||
|
url_amd64 = "https://s3.eu-west-1.amazonaws.com/static-doc.teamlab.eu.com/qt/5.9.9/linux_amd64/qt_binary.7z"
|
||||||
|
base.download(url_amd64, "./qt_amd64.7z")
|
||||||
|
base.extract("./qt_amd64.7z", "./qt_build")
|
||||||
|
base.create_dir("./qt_build/Qt-5.9.9")
|
||||||
|
base.cmd("mv", ["./qt_build/qt_amd64", "./qt_build/Qt-5.9.9/gcc_64"])
|
||||||
|
base.setup_local_qmake("./qt_build/Qt-5.9.9/gcc_64/bin")
|
||||||
|
return
|
||||||
|
|
||||||
if not base.is_file("./node_js_setup_14.x"):
|
if not base.is_file("./node_js_setup_14.x"):
|
||||||
print("install dependencies...")
|
print("install dependencies...")
|
||||||
deps.install_deps()
|
deps.install_deps()
|
||||||
|
|
||||||
if not base.is_dir("./qt_build"):
|
if not base.is_dir("./qt_build"):
|
||||||
print("install qt...")
|
print("install qt...")
|
||||||
install_qt()
|
install_qt_prebuild()
|
||||||
|
|
||||||
branch = get_branch_name("../..")
|
branch = get_branch_name("../..")
|
||||||
|
|
||||||
@ -103,6 +112,3 @@ build_tools_params = ["--branch", branch,
|
|||||||
|
|
||||||
base.cmd_in_dir("../..", "./configure.py", build_tools_params)
|
base.cmd_in_dir("../..", "./configure.py", build_tools_params)
|
||||||
base.cmd_in_dir("../..", "./make.py")
|
base.cmd_in_dir("../..", "./make.py")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -39,9 +39,14 @@ def install_deps():
|
|||||||
"libxi-dev",
|
"libxi-dev",
|
||||||
"libxrender-dev",
|
"libxrender-dev",
|
||||||
"libxss1",
|
"libxss1",
|
||||||
"libncurses5"]
|
"libncurses5",
|
||||||
|
"libncurses6",
|
||||||
|
"curl",
|
||||||
|
"libxkbcommon0",
|
||||||
|
"libxkbcommon-x11-0"]
|
||||||
|
|
||||||
base.cmd("sudo", ["apt-get", "install", "-y"] + packages)
|
for package in packages:
|
||||||
|
base.cmd("sudo", ["apt-get", "install", "-y", package], True)
|
||||||
|
|
||||||
# nodejs
|
# nodejs
|
||||||
base.cmd("sudo", ["apt-get", "install", "-y", "nodejs"])
|
base.cmd("sudo", ["apt-get", "install", "-y", "nodejs"])
|
||||||
@ -79,4 +84,3 @@ def install_deps():
|
|||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
install_deps()
|
install_deps()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user