Python 3.12 issue
Trying to install and run recon-ng from source with latest python on my distro Installed all requirements from file
~/venv/bin/python3 --version
Python 3.12.3
~/venv/bin/python3 recon-ng
Traceback (most recent call last):
File "/opt/cybertools/recon-ng/recon-ng", line 8, in <module>
from recon.core import base
File "/opt/cybertools/recon-ng/recon/core/base.py", line 7, in <module>
import imp
ModuleNotFoundError: No module named 'imp'
i have the same problem. Did you solve this?
i have the same problem. Did you solve this?
I have a PR for this, if possible you can try and test it. Thank you!
i have the same problem. Did you solve this?
I have a PR for this, if possible you can try and test it. Thank you!
Yes. Please do an leave your results in the PR. I just haven't had a chance to test it.
The problem is that python 3.12 no longer supports module "imp". Changing the "import imp" to "import importlib" at line 7 in recon-ng/recon/core will make it possible to run the framework, however the modules do not seem to work without "imp". At the present moment the most sensible solution seems to be using python 3.11
I have a solution to this issue that I believe preserves original functionality
Just dropping a note: wasn't able to pull @dinkleburger fix yet, but made the changes manually and it works. (6.11.3-200.fc40.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Oct 10 22:31:19 UTC 2024 x86_64 GNU/Linux, Python 3.12.6)
Just want to clarify the actual file to change is recon-ng/recon/core/base.py.
Installing modules does not work with this fix, though.