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
jadx: init at 0.9.0 #58232
jadx: init at 0.9.0 #58232
Conversation
This doesn't build:
|
I'm not sure what that error is from, it could be on your end? I ran nix-prefetch-url again and got the same hash. |
@artemist
|
@GrahamcOfBorg build jadx |
@artemist Can you please try setting the hash to what the bot mentioned ( |
}; | ||
|
||
src = fetchurl { | ||
url = "https://github.com/skylot/jadx/archive/v${version}/jadx-${version}.zip"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This url doesn't work for me, it downloads the sources archive instead. I had to change it to https://github.com/skylot/jadx/releases/download/v${version}/jadx-${version}.zip
which downloads the binary archive and matches the hash.
I've noticed with nix that if you change the url but not the hash it will continue to use the previous source associated with that hash (issue #969). This would explain why it can build successfully for you with that url.
@GrahamcOfBorg build jadx |
@artemist Are you still interested in adding |
@veprbl Not currently. I would like to add jadx eventually (or have someone else do it), but I have very little time to do so. I'll close this, then anyone else can add jadx if they would like. |
Motivation for this change
jadx is a Java decompiler which is more modern than the current jd-gui and supports Android. It's an important part of my, and many other people's ,Android and Java reverse engineering toolkit
Things done
Create the new jadx package. If you would like me to replace occurrences of 'jadx-bin' with jadx or vice versa, I can do so.
I made this package the existing binaries and scripts, as there are some rather annoying requirements about specific JARs to load into the classpath and variables to accept for compatibility. Additionally, I could not make a binary package because I had problems getting gradle to cache the compiler plugins necessary for build (using the same format as the jd-gui package). I could do this with an output sha256 on the main derivation and keep gradle in online mode, but that still seems very shady.
sandbox
innix.conf
on non-NixOS)nix-shell -p nix-review --run "nix-review wip"
./result/bin/
)nix path-info -S
before and after)