diff options
| author | Jordan Wiens <jordan@psifertex.com> | 2024-10-14 10:47:16 -0400 |
|---|---|---|
| committer | Jordan Wiens <jordan@psifertex.com> | 2024-10-14 10:47:16 -0400 |
| commit | 022eae177062865af6106a7f23f2769433c61535 (patch) | |
| tree | b8270b588b522c018047f6cd07d241151d2f61d3 /scripts | |
| parent | 6be2383e4e7352e2cd97da4d58582167ce29eea5 (diff) | |
add force option to install_api script
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/install_api.py | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/scripts/install_api.py b/scripts/install_api.py index 97584000..20f6db35 100755 --- a/scripts/install_api.py +++ b/scripts/install_api.py @@ -99,10 +99,10 @@ def validate_path(path: str) -> bool: return True -def install(interactive=False, on_root=False, on_pyenv=False) -> bool: +def install(interactive=False, on_root=False, on_pyenv=False, force=False) -> bool: - if binaryninja_installed(): - print_error("Binary Ninja API already in the path.") + if binaryninja_installed() and not force: + print_error("Binary Ninja API already in the path. Use --force to overwrite.") return False api_path = get_expected_binaryninja_installed_directory() @@ -204,6 +204,7 @@ if __name__ == '__main__': parser = argparse.ArgumentParser() parser.add_argument("-s", "--silent", action='store_true') parser.add_argument("-u", "--uninstall", action='store_true') + parser.add_argument("-f", "--force", action='store_true') parser.add_argument("--install-on-root", action='store_true') parser.add_argument("--install-on-pyenv", action='store_true') args = parser.parse_args() @@ -219,7 +220,8 @@ if __name__ == '__main__': install_result = install( interactive=(not args.silent), on_root=args.install_on_root, - on_pyenv=args.install_on_pyenv + on_pyenv=args.install_on_pyenv, + force=args.force ) if not install_result: print(f"Binary Ninja API installation failed.") |
