sc0tfree / mentalist

Mentalist is a graphical tool for custom wordlist generation. It utilizes common human paradigms for constructing passwords and can output the full wordlist as well as rules compatible with Hashcat and John the Ripper.
MIT License
1.78k stars 241 forks source link

TypeError: 'tuple' object does not support item assignment #33

Open ghost opened 1 year ago

ghost commented 1 year ago

When i run mentalist on Kali Linux i receive the error in Object. How can i solve it ?

jsownz commented 1 year ago

@vrecano what version of python are you using? Are you building from source or are you using a pre-built binary?

baybiegirl20 commented 1 year ago

@jsownz Hello, I've been having the same issue, I downloaded the zip file extracted it and installed the setup.py, I'm running Python 3.11.2

v 1.0 by sc0tfree

Traceback (most recent call last): File "/usr/local/bin/mentalist", line 33, in sys.exit(load_entry_point('Mentalist==1.0', 'gui_scripts', 'mentalist')()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/dist-packages/Mentalist-1.0-py3.11.egg/mentalist/controller.py", line 368, in main controller = Controller() ^^^^^^^^^^^^ File "/usr/local/lib/python3.11/dist-packages/Mentalist-1.0-py3.11.egg/mentalist/controller.py", line 31, in init self.mainview = view.MainWindow(self) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/dist-packages/Mentalist-1.0-py3.11.egg/mentalist/view/main.py", line 163, in init size[1] = h - 10


TypeError: 'tuple' object does not support item assignment
jsownz commented 1 year ago

@baybiegirl20 looks like you're compiling from source with a newer version of python than the one listed in the documentation. Download a release instead and run the executable. https://github.com/sc0tfree/mentalist/releases/tag/v1.0

baybiegirl20 commented 1 year ago

@jsownz I tried running a release and I get the same error message

jsownz commented 1 year ago

@baybiegirl20 Just installed from source on a fresh linux install with python 3.11 without issue. The fact that you're getting a python error while running an executable is also strange, makes me think there's something going on with your python install/versions. I would try using a venv https://realpython.com/lessons/activating-virtual-environment-terminal/ to cut out other variables. What OS version are you running? How many python installs are on this machine? Do you have all the prereqs installed in the documentation https://github.com/sc0tfree/mentalist/wiki/Installation#install-from-source?

The error being reported is saying that something is trying to change a value in a Tuple, but if that was the case, I should be getting that error as well (and I'm not, in the executable or building from source). Do you have a config file that it's reading from and if so, what's in it?

Just to clarify, I'm not a dev on this project - I contributed like 5 lines about 10 years ago when it was very very first started - just a user giving ideas to try

[edit: added tag]

SherlockT94 commented 1 year ago

@vrecano Hi, I run mentalist and got the same error as you got And I use python 3.11.2 with kali linux. And I change the mentalist/view/main.py file to fix the error. you have to go to the line 163 in main.py and here is my change:

size = [int(_) for _ in self.master.geometry().split('+')[0].split('x')] # change the tuple to list
x = w/2 - size[0]/2

margins = (h-height) / 2
if margins < 100: # Don't waste any vertical space on smaller screens,
     y = 0    # push the window right up to the top.
elif margins < 200:
      y = 50   # window is partial way down, but not into the bottom 100px on screen
else:
      y = h/2 - size[0]/2 # big screen - center vertically

if h < size[1]: # shrink the window vertically if it doesn't fit
      size[1] = h - 10 # line 163
      y = 0

locate = size + [x, y]
w_new,h_new,x_new,y_new = locate
self.master.geometry("%dx%d+%d+%d" % (w_new,h_new,x_new,y_new))
self.master.deiconify() # show the main window
self.master.protocol("WM_DELETE_WINDOW", self.controller.exit)

After that you reinstall the software and run. image

MoJox00 commented 11 months ago

image I changed some code, and it fixed. image