IDA pro v7.5
Application Details:
Version: | 7.5 |
License: | Subscription |
URL: | https://www.hex-rays.com/idapr... |
Votes: | Marked as obsolete |
Latest Rating: | Gold |
Latest Wine Version Tested: | 6.7 |
Maintainers: About Maintainership
What works
Everything appears to work. Disassembly, Hex-Rays decompiler, native DLL plugins. Lumina support was tested. Python scripting and plugins do work, but require the WINE prefix to have a working Python installation (see workarounds section).
What does not
The only thing that didn't work in my testing was "Audio on completion" in Class Informer plugin xD I will miss it, but it's not a ground-breaking feature by any means... (and not even IDA's problem)
Python scripting won't work if python3.dll is not in PATH environment variable.
Fonts in IDA View and Pseudocode view and weirdly light/bright compared to how it looks like on Windows, making the text a little hard to read. Not sure of any workarounds at this point, perhaps a custom theme could help to mitigate this.
Workarounds
How did I get Python 3.9 scripting to work:
1. Copy installed Python dir from a Windows installation into for example C:\Python39. Do not use the zip package from Python's website as it has no pip support, and you will hit a wall if a plugin requires some pip package. Python 3.9 exe installer does not work on WINE, and no workarounds have worked for me, this is why I advise copying installed one from a Windows installation.
2. Make sure to update to the latest idapython, it's available in GitHub releases page. Old versions have known issues, especially on Python 3.9.
3. Add C:\Python39 to PATH. Set PYTHONHOME and PYTHONPATH environment variables to also point to this dir – important! Without these 2 variables it's not gonna work, even though Python is supposed to then autodetect the path. In my case I added the PYTHON* variables into "HKEY_CURRENT_USER\Environment" and adjusted the path at "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment", but you can also do it on the commandline with the help of WINEPATH environment variable and create a shortcut.
4. Run IDA and it works!
Disclaimer: I used unpacked IDA files from a Windows installation too, where I used idapyswitcher on said Python installation. If it doesn't work for you, then you may try the same, given that this is required for step 1 anyways...
What was not tested
Hardware tested
Graphics:
Additional Comments
I'd put a platinum rating, because the need for workarounds for Python scripting/plugins comes from Python itself and its installer refusing to work on WINE, not a fault of IDA by any means. An update to latest idapython is required on Windows as well for proper functioning with Python 3.9. Literally the only thing we need is manually plugging in installed files of Python into WINE's prefix.
However, AppDB submission doesn't allow platinum if workarounds section is ticked, so it's gold as a result.
It's worth to note that IDA itself will start and function just fine without Python scripting support in case the Python installation is missing or broken. This feature is not crucial to the core functionality and not needed if you don't use the scripting prompt or plugins written in Python.
Operating system | Test date | Wine version | Installs? | Runs? | Used Workaround? | Rating | Submitter | ||
Current | Manjaro Linux 21.0 | May 13 2021 | 6.7 | N/A | Yes | Yes | Gold | p0358 | |
Show | macOS 11 "Big Sur" | May 05 2021 | 5.0.5 | Yes | Yes | No | Platinum | hacker1024 | |
Show | Debian GNU/Linux Unstable "Sid" x86_64 | Feb 05 2021 | 5.0.3 | Yes | Yes | No | Silver | mid-kid | |
Show | Debian GNU/Linux Unstable "Sid" x86_64 | Dec 24 2020 | 5.0.3 | N/A | Yes | No | Platinum | Leo |