makehumancommunity / makehuman

This is the main repository for the MakeHuman application as such.
http://www.makehumancommunity.org
Other
1.22k stars 250 forks source link

python TypeError when running download_assets_git.py #122

Closed fevernight closed 4 years ago

fevernight commented 4 years ago

I cloned the main branch of the repo, installed dependencies as per Readme and configured git to use LFS. Everything went smoothly until I got an error when running the download_assets_git.py: Traceback (most recent call last): File "download_assets_git.py", line 180, in <module> DownloadAssetsGit() File "download_assets_git.py", line 102, in __init__ gitutils.cloneRepo(self._git_official_assets_repo,self._git_official_clone_location,self._git_official_assets_branch,extraargs=['--depth=1']) File "./lib/gitutils.py", line 260, in cloneRepo subprocess.check_call(args) File "/usr/lib/python3.8/subprocess.py", line 359, in check_call retcode = call(*popenargs, **kwargs) File "/usr/lib/python3.8/subprocess.py", line 340, in call with Popen(*popenargs, **kwargs) as p: File "/usr/lib/python3.8/subprocess.py", line 854, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "/usr/lib/python3.8/subprocess.py", line 1637, in _execute_child self.pid = _posixsubprocess.fork_exec( TypeError: expected str, bytes or os.PathLike object, not list I used python3 download_assets_git.py Reading the error I was able to interpret the problem and made a small change to the script: changed line 102 from gitutils.cloneRepo(self._git_official_assets_repo,self._git_official_clone_location,self._git_official_assets_branch,extraargs=['--depth=1']) to gitutils.cloneRepo(self._git_official_assets_repo,self._git_official_clone_location,self._git_official_assets_branch,extraargs='--depth=1')

After that, I was able to complete installation and run makehuman succesfully with all the default assets.

Aranuvir commented 4 years ago

Thank you for reporting the bug and providing a solution. If there are more than one extraargs, it might be more convenient providing a list of strings, so my solution checks if extraargs is a list and converts it do a string if necessary. Can you check if your issue gets fixed by my solution?

fevernight commented 4 years ago

I can confirm that this fixed it. I tested by creating a temporary user and re-doing the installation with the fix in place.

Aranuvir commented 4 years ago

Thank you again for testing :)