-
-
Notifications
You must be signed in to change notification settings - Fork 14.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ghidra: improvements #58453
ghidra: improvements #58453
Conversation
- dont change the name of the ghidra launcher - wrap more launchers with jdk
I'd say put all binaries in PATH, which appear to be useful to be started without ghidra in the first place. |
more changes pending: I would like to attach or make a new PR with plugins functionality in the next day or two, but first I want to learn to use scm properly once and for all. "soon". |
I found |
I have not abandoned this, it has just been more difficult than I expected and I've been otherwise busy. The plugin system allows using plugins from an in-tree plugin specification attrset, as well as using overrides to attach additional plugins that may not be in-tree. |
Here's an example (dump) of how I'm currently using it: with (import ./nixpkgs.nix); #pinning
let
gh_path = /home/path/to/another-attempt.nix;
plugin_path = ./plugin.nix;
#just consume the args, the original isnt an overlay (doesnt need to reference self/super
mkOverlay = set: self: super: set;
overrides = mkOverlay { MyPlugin = (import plugin_path); };
ghidraPlugins = (callPackage gh_path { inherit overrides; });
ghidra = (ghidraPlugins.withPlugins (p: with p; [ ghidra-scala-loader MyPlugin ]));
eclipse = eclipses.eclipseWithPlugins { eclipse = eclipses.eclipse-java; plugins = [ ghidra.ghidraDev ]; };
in
(symlinkJoin {
name = "shell";
buildInputs = [
ghidra
eclipse
];
paths = [
ghidra
eclipse
];
}) // { inherit ghidra; } |
This is superseded by #60664 . |
(wip: botched this a bit)
changes so far:
Questions:
$PATH
if someone uses Ghidra?xref: #56959