cdberkstresser/fah-control

FAHControl will not open (Python3 .deb build)

Opened this issue · 1 comments

Whenever I attempt to open FAHControl by typing FAHControl in the terminal, I get the following error (Ubuntu 22.04):

Traceback (most recent call last):
  File "/usr/bin/FAHControl", line 25, in <module>
    from fah import FAHControl, load_fahcontrol_db
  File "/usr/lib/python3/dist-packages/fah/__init__.py", line 25, in <module>
    from . import util
  File "/usr/lib/python3/dist-packages/fah/util/__init__.py", line 24, in <module>
    from .OrderedDict import *
  File "/usr/lib/python3/dist-packages/fah/util/OrderedDict.py", line 23, in <module>
    from collections import MutableMapping as DictMixin
ImportError: cannot import name 'MutableMapping' from 'collections' (/usr/lib/python3.10/collections/__init__.py)

It appears, there was a change in the latest Python version. The solution is actually very simple.

Just edit the following file as root with your favorite text editor:

/usr/lib/python3/dist-packages/fah/util/OrderedDict.py

Change the line 23:

from this

from collections import MutableMapping as DictMixin

to this

from collections.abc import MutableMapping as DictMixin

Save and try again.

FAHControl now launches on my side. I don't say it actually works as advertised. Maybe so, maybe not... Testing, still a work in progress.