How to use Rizin and Cutter with Plugins

I have started using Cutter instead of Ghidra because Cutter has a true native dark mode. However, to work with Ghidra and other decompilers, the plugins must be installed. On Arch this is done through Pacman, but I have been unable to find the optimal solution to solving this problem on NixOS. Any help would be greatly appreciated!

Since rz-ghidra, jsdec: init at 0.6.0; rizin-sigdb: init at unstable-2023-02-13 by chayleaf · Pull Request #220885 · NixOS/nixpkgs · GitHub, you can use:

rizin.withPlugins (ps: with ps; [ jsdec rz-ghidra sigdb ])

and

cutter.withPlugins (ps: with ps; [ jsdec rz-ghidra sigdb ])

so how would i put this in my nix configuration file? where and how?

Just like you would any other package. Just make sure to wrap it in parentheses so that it is not considered two separate variables. Or you can bind the value to a name using a let expression and use that name in the list.

Hi,
After adding the following to my configuration.nix

environment.systemPackages = [
    pkgs.cutterPlugins.rz-ghidra
  ];

I receive the following error when launching cutter:

Native plugins are loaded from "/run/current-system/sw/share/rizin/cutter/plugins/native"
Load Error for plugin "librz_ghidra_cutter.so" : "Cannot load library /nix/store/6ckbj2m28nnzg7ya5b4kwg6g4n26w7hm-rz-ghidra-0.7.0/share/rizin/cutter/plugins/native/librz_ghidra_cutter.so: core_ghidra.so: cannot open shared object file: No such file or directory"
Loaded 0 plugin(s).

Looking for any help on how to get cutter to launch with plugins.

1 Like