Fedora Issues

Tech support and suggestions forum. If you only have a basic question on how to get started, please use the "newbies" forum in the community section.

Moderator: joepal

Fedora Issues

Postby raskull » Wed Dec 01, 2021 2:13 pm

Hi,

Long story short... Finally got MakeHuman running, yet there are no options in the Body Shapes / Face sections (maybe others too)




Here are my notes for attempting a quick fix, but may also be the problem???

I'm using a fairly clean install of Fedora 35


Code: Select all
As root, install dependencies:
yum install python3-numpy python3-pyopengl python3-QtPy
freeglut


As your normal user:
cd makehuman/makehuman
python makehuman.py



Errors:

...
AttributeError: module 'collections' has no attribute 'Callable'

in log/log.py on line 249 change the line to:

   if hasattr(logging, "captureWarnings") and isinstance(logging.captureWarnings, collections.abc.Callable):




AttributeError: module 'collections' has no attribute 'MutableSet'

in log/language.py on line 116 change the line to:

   class OrderedSet(collections.abc.MutableSet):






    return QtCore.QSize(width, height)
TypeError: arguments did not match any overloaded call:
  QSize(): too many arguments
  QSize(int, int): argument 1 has unexpected type 'float'
  QSize(QSize): argument 1 has unexpected type 'float'
Aborted (core dumped)

in log/qtui.py on line 358 change the line to:

   return QtCore.QSize(int(width), int(height))




File "/home/ai/z_makehuman/makehuman-master/makehuman/./lib/qtgui.py", line 958, in setProgress
    self.setValue(min_ + progress * (max_ - min_))
TypeError: setValue(self, int): argument 1 has unexpected type 'float'

in log/qtgui.py on line 958 change the line to:

   self.setValue(int(min_ + progress * (max_ - min_)))



File "/home/ai/z_makehuman/makehuman-master/makehuman/./core/guicommon.py", line 145, in view
    if not self._view or not isinstance(self._view, collections.Callable):
AttributeError: module 'collections' has no attribute 'Callable'

in core/guicommon.py on line 145 change the line to:

   if not self._view or not isinstance(self._view, collections.abc.Callable):




I then downloaded the assets, just in case lol

Code: Select all
$ python download\_assets\_git.py
git: 'lfs' is not a git command. See 'git --help'.

The most similar command is
   log
Command '['/usr/bin/git', 'lfs', 'install']' returned non-zero exit status 1.



GIT LFS not detected. This routine requires LFS. See https://git-lfs.github.com/





yum install git-lfs



Many thanks for any help and all the work done to enable MakeHuman
raskull
 
Posts: 3
Joined: Wed Dec 01, 2021 1:57 pm

Re: Fedora Issues

Postby Aranuvir » Thu Dec 02, 2021 7:16 pm

AFAIK your first errors are the result of using Python 3.10. MakeHuman's code isn't there yet. You'll have to either downgrade your Python installation or dive into the code to make it work with the latest P3.10...

The other problem should be rather self explanatory:
GIT LFS not detected. This routine requires LFS. See https://git-lfs.github.com/
Probably you should find LFS in the Fedora repos, too.
Aranuvir
 
Posts: 1314
Joined: Sun Oct 12, 2014 2:12 pm

Re: Fedora Issues

Postby joepal » Sun Dec 05, 2021 12:53 pm

A stupid question maybe, but is the fedora "python" command python 3? It's not as on ubuntu that "python" is python 2.x and "python3" is python 3.x?
Joel Palmius (LinkedIn)
MakeHuman Infrastructure Manager
http://www.palmius.com/joel
joepal
 
Posts: 4455
Joined: Wed Jun 04, 2008 11:20 am

Re: Fedora Issues

Postby raskull » Mon Dec 06, 2021 7:22 am

joepal wrote:A stupid question maybe, but is the fedora "python" command python 3? It's not as on ubuntu that "python" is python 2.x and "python3" is python 3.x?


I've used python2 and python3, the current problem appears to be that python3 is python3.1x, I've not had time to have a go at it, yet...

However, just thinking, which was the last MakeHuman version that used 2.7?


Cheers
raskull
 
Posts: 3
Joined: Wed Dec 01, 2021 1:57 pm

Re: Fedora Issues

Postby punkduck » Mon Dec 06, 2021 9:24 pm

Hi

Even though I am more doing Ubuntu and not Fedora and still an 18 with a 3.6 running etc ... but yes raskull is correct, the collections module changed.
We are using "old" stuff. It is mentioned that collections.abc is available since 3.3

https://docs.python.org/3/library/collections.abc.html

To get Callable we should use in lib/log.py

Code: Select all
from collections.abc import Callable
...
if hasattr(logging, "captureWarnings") and isinstance(logging.captureWarnings, Callable):


there are two additional places: apps/gui/guimodifier.py and core/guicommon.py ...

The question to our own folks: what is minimum python version for makehuman? Python 3.3 was released in 2012. In those times I was young and had no knowledge of python at all .. :mrgreen:

I really think we should change this in our code for the bugfix release "already", what do you think?

Raskull: If you get it running by changing these lines ... give us a hint. Don't downgrade, please ;)
They changed more but hopefully not the whole language ...

Greetings
Punkduck
User avatar
punkduck
 
Posts: 1216
Joined: Mon Oct 17, 2016 7:24 pm
Location: Nuremberg, Germany

Re: Fedora Issues

Postby joepal » Thu Dec 09, 2021 7:50 am

I think the windows build uses python 3.7. Ubuntu 20.04 LTS uses 3.8. I see no particular reason in supporting anything older than 3.7 (which is three and a half years old).
Joel Palmius (LinkedIn)
MakeHuman Infrastructure Manager
http://www.palmius.com/joel
joepal
 
Posts: 4455
Joined: Wed Jun 04, 2008 11:20 am


Return to Bugs, problems and feature requests

Who is online

Users browsing this forum: No registered users and 1 guest