No description
Find a file
Florian Märkl b85636317c Drop libuv dependency
libuv was only ever used for the tcp server for almost 4 years. Since
the non-libuv implementation of that is working now, it can be dropped
entirely without sacrificing functionality.
2022-08-06 13:20:52 +02:00
.builds Add libmspack and add idpx to extracts compressed pdb (#2728) 2022-06-27 23:52:07 +02:00
.github Use clang-format 14 instead of 13 (#2846) 2022-08-05 23:30:07 +05:30
.reuse reg: remove x86-linux.regs unused file 2022-07-20 22:04:02 +02:00
.woodpecker Add macOS/arm64 Woodpecker CI (#2733) 2022-06-26 16:51:17 +02:00
binrz docs: replace rahash2 reference 2022-07-22 17:15:46 +02:00
dist Drop libuv dependency 2022-08-06 13:20:52 +02:00
doc doc: add release process documentation 2022-06-02 10:55:51 +02:00
librz Drop libuv dependency 2022-08-06 13:20:52 +02:00
LICENSES Move SDB into RzUtil 2022-07-19 08:45:20 +02:00
subprojects Drop libuv dependency 2022-08-06 13:20:52 +02:00
sys gittip: Use Meson's capture: true for Python 3.6 compatibility (#2869) 2022-08-04 22:37:58 +08:00
test Rewrite and fix non-libuv tcp server (Rt command) 2022-08-06 13:20:52 +02:00
.appveyor.yml Add --print-errorlogs flag meson test for Windows jobs 2022-03-06 16:54:44 +01:00
.clang-format Fix foreach macroses 2021-01-21 22:05:44 +08:00
.dockerignore Drop libuv dependency 2022-08-06 13:20:52 +02:00
.gitattributes Move remaining things from shlr/ to meson subprojects (#2126) 2021-12-22 09:20:39 +08:00
.gitignore Drop libuv dependency 2022-08-06 13:20:52 +02:00
.lgtm.yml Make LGTM use Meson 2021-01-28 11:57:28 +01:00
.prettierignore Move remaining things from shlr/ to meson subprojects (#2126) 2021-12-22 09:20:39 +08:00
.pylintrc For now, let's just ignore C0209 pylint error (#1735) 2021-09-23 13:20:44 +02:00
.travis.yml Add libmspack and add idpx to extracts compressed pdb (#2728) 2022-06-27 23:52:07 +02:00
BUILDING.md Add note regarding meson.build files and full rebuild (#2795) 2022-07-09 22:57:05 +08:00
CODE_OF_CONDUCT.md
codecov.yml Disable Codecov PR Commenting (#2117) 2021-12-19 13:42:41 +01:00
CODEOWNERS Move remaining things from shlr/ to meson subprojects (#2126) 2021-12-22 09:20:39 +08:00
CONTRIBUTING.md Rename newshell to rzshell and parser commands to statements 2021-04-22 19:45:14 +08:00
COPYING
COPYING.LESSER
DEVELOPERS.md Use clang-format 14 instead of 13 (#2846) 2022-08-05 23:30:07 +05:30
Dockerfile build: install sigdb within the Rizin container 2022-06-06 11:03:00 +02:00
Doxyfile Move remaining things from shlr/ to meson subprojects (#2126) 2021-12-22 09:20:39 +08:00
INSTALL.md Clarify policies of Homebrew and MacPorts 2022-08-04 11:56:55 +02:00
meson.build Drop libuv dependency 2022-08-06 13:20:52 +02:00
meson_options.txt Drop libuv dependency 2022-08-06 13:20:52 +02:00
README.md Add files required to build packages for OBS (#1853) 2021-10-19 15:42:29 +02:00
SECURITY.md Update Security policy to be more precise about vulns 2021-08-25 13:13:37 +02:00
snapcraft.yaml Drop libuv dependency 2022-08-06 13:20:52 +02:00
travis-extract-var.sh SPDX Copyright text for all files based on history 2021-03-05 19:39:15 +08:00
travis-script Move remaining things from shlr/ to meson subprojects (#2126) 2021-12-22 09:20:39 +08:00

Rizin logo

Rizin

Rizin is a fork of the radare2 reverse engineering framework with a focus on usability, working features and code cleanliness.

Rizin is portable and it can be used to analyze binaries, disassemble code, debug programs, as a forensics tool, as a scriptable command-line hexadecimal editor able to open disk files, and much more!

To learn more on Rizin you may want to read the official Rizin book.

How to install

Look at INSTALL.md.

How to build

Use meson to compile and install Rizin. Please make sure to get an updated meson (e.g. get it with pip install meson if your system does not provide one that is at least version 0.55.0).

Clone this repository:

$ git clone https://github.com/rizinorg/rizin

Then compile and install with:

$ meson build
$ ninja -C build
$ sudo ninja -C build install

Now you can use rizin:

$ rizin
 -- Thank you for using rizin. Have a nice night!
[0x00000000]>

To uninstall rizin, execute sudo ninja -C build uninstall.

Please have a look at BUILDING.md for more information about building Rizin.

Contributing

We very much welcome any kind of contributions, from typos, to documentation, to refactoring, up to completely new features you may think of. Before contributing, we would like you to read the file CONTRIBUTING.md, so that we can all be on the same page.

Tests

Look at test/README.md.

Supported features

Supported Operating Systems

Windows (since XP), GNU/Linux, GNU/Darwin, GNU/Hurd, Apple's {Mac,i,iPad,watch}OS, [Dragonfly|Net|Free|Open]BSD, Android, QNX, Solaris, Haiku, FirefoxOS.

Supported Architectures

i386, x86-64, ARM, MIPS, PowerPC, SPARC, RISC-V, SH, m68k, m680x, AVR, XAP, System Z, XCore, CR16, HPPA, ARC, Blackfin, Z80, H8/300, V810, V850, CRIS, XAP, PIC, LM32, 8051, 6502, i4004, i8080, Propeller, Tricore, CHIP-8, LH5801, T8200, GameBoy, SNES, SPC700, MSP430, Xtensa, NIOS II, TMS320 (c54x, c55x, c55+, c66), Hexagon, DCPU16, LANAI, MCORE, mcs96, RSP, SuperH-4, VAX, AMD Am29000.

There is also support for the following bytecode formats:

Dalvik, EBC, Java, Lua, Python, WebAssembly, Brainfuck, Malbolge

Supported File Formats

ELF, Mach-O, Fatmach-O, PE, PE+, MZ, COFF, OMF, TE, XBE, BIOS/UEFI, Dyldcache, DEX, ART, CGC, Java class, Android boot image, Plan9 executable, ZIMG, MBN/SBL bootloader, ELF coredump, MDMP (Windows minidump), WASM (WebAssembly binary), Commodore VICE emulator, QNX, Game Boy (Advance), Nintendo DS ROMs and Nintendo 3DS FIRMs.

Scripting

We provide a way to interact with Rizin from Python, Haskell, OCaml, Ruby, Rust, and Go languages through rzpipe. Other languages although not currently supported could be easily added.

Community

Our website and blog: https://www.rizin.re/

Join our Mattermost community to discuss Rizin, its development, and general topics related to the project.

We also provide the following partial bridges to other messaging platforms: