mirror of
https://github.com/radareorg/r2env.git
synced 2026-11-07 20:39:12 -10:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ac673316c9 |
No files matched your search
+3
-10
@@ -87,18 +87,11 @@ class R2Env:
|
||||
|
||||
@staticmethod
|
||||
def version():
|
||||
thispath = os.path.dirname(os.path.realpath(__file__))
|
||||
with open(thispath + "/version.txt", "r") as version:
|
||||
with open("version.txt", "r") as version:
|
||||
return version.read()
|
||||
|
||||
def shell(self, cmd=""):
|
||||
line = "export PS1=\"r2env\\$ \";export PATH=\"" + self._r2env_path + "/bin:$PATH\"; $SHELL -f"
|
||||
if os.path.isfile("/default.prop"): # hack for pre-dtag builds of r2
|
||||
line = "export LD_LIBRARY_PATH=\"" + self._r2env_path + "/lib\";" + line
|
||||
if cmd.strip() == "":
|
||||
return os.system(line)
|
||||
print(os.system(line + " -c '" + cmd + "'"))
|
||||
return os.system(line + " -c '" + cmd + "'")
|
||||
def shell(self):
|
||||
pass
|
||||
|
||||
@staticmethod
|
||||
def _load_config():
|
||||
|
||||
@@ -94,13 +94,9 @@ class PackageManager:
|
||||
def _build_using_acr(source_path, dst_path, logfile):
|
||||
"""Only works in Unix systems"""
|
||||
exit_if_not_exists(['make'])
|
||||
print_console("[-] Building package using acr for Termux...")
|
||||
extra_flags = ""
|
||||
if os.path.isfile("/default.prop"):
|
||||
extra_flags = " --with-compiler=termux"
|
||||
cmd = "(cd {0} && rm -rf shlr/capstone && ./configure {1}" \
|
||||
" --with-rpath --prefix={2} 2>&1 && make -j4 2>&1" \
|
||||
"&& make install) > {3}".format(source_path, extra_flags, dst_path, logfile)
|
||||
print_console("[-] Building package using acr ...")
|
||||
cmd = "(cd {0} && rm -rf shlr/capstone && ./configure --with-rpath --prefix={1} 2>&1 && make -j4 2>&1" \
|
||||
"&& make install) > {2}".format(source_path, dst_path, logfile)
|
||||
return os.system(cmd) == 0
|
||||
|
||||
@staticmethod
|
||||
|
||||
+7
-18
@@ -16,8 +16,7 @@ config - display current .r2env settings
|
||||
install [pkg] - build and install given package. Use --meson to use it as the build system.
|
||||
uninstall [pkg] - remove selected package
|
||||
use [pkg] - use r2 package defined. pkg should be a release version or latest.
|
||||
path - show path of current r2 in use
|
||||
version - show version of r2env
|
||||
version - show the current Radare version and its origin
|
||||
versions - List all Radare versions installed
|
||||
list - list all Radare packages available to r2env
|
||||
shell - open a new shell with PATH env var set
|
||||
@@ -29,20 +28,13 @@ def show_help():
|
||||
print_console(HELP_MESSAGE)
|
||||
|
||||
|
||||
def show_version():
|
||||
print_console(R2Env().version())
|
||||
|
||||
|
||||
actions_with_argument = ["install", "uninstall", "use"]
|
||||
actions_with_arguments = ["shell"]
|
||||
actions = {
|
||||
"init": R2Env().init,
|
||||
"version": show_version,
|
||||
"path": R2Env().get_r2_path,
|
||||
"version": R2Env().get_r2_path,
|
||||
"config": R2Env().show_config,
|
||||
"list": R2Env().list_available_packages,
|
||||
"install": R2Env().install,
|
||||
"shell": R2Env().shell,
|
||||
"uninstall": R2Env().uninstall,
|
||||
"use": R2Env().use,
|
||||
"versions": R2Env().list_installed_packages,
|
||||
@@ -51,13 +43,10 @@ actions = {
|
||||
|
||||
|
||||
def run_action(action, args, use_meson):
|
||||
if action == "":
|
||||
show_help()
|
||||
elif action not in actions:
|
||||
if action not in actions:
|
||||
print_console("[X] Action not found", ERROR)
|
||||
elif action in actions_with_arguments:
|
||||
actions[action](" ".join(args))
|
||||
elif action in actions_with_argument:
|
||||
return
|
||||
if action in actions_with_argument:
|
||||
exit_if_not_argument_is_set(args, action)
|
||||
if action == "install":
|
||||
actions[action](args[0], use_meson=use_meson)
|
||||
@@ -83,8 +72,8 @@ def main():
|
||||
parser.add_argument("action", help="run specified action. (Run r2env help for more information)",
|
||||
action="store", default=["help"])
|
||||
parser.add_argument('args', metavar='args', nargs='*', type=str, help='Specified arguments')
|
||||
parser.add_argument("-v", "--version", dest="version", help="Show r2env version", action="store_true")
|
||||
parser.add_argument("-m", "--meson", dest="meson", help="Use meson as your build system.", action="store_true")
|
||||
parser.add_argument("-v", "--version", help="Show r2env version", action="store_true")
|
||||
parser.add_argument("-m", "--meson", help="Use meson as your build system.", action="store_true")
|
||||
args = parser.parse_args()
|
||||
if args.version:
|
||||
print_console(R2Env().version())
|
||||
|
||||
Reference in new issue
Block a user