Repository navigation
Can't Install System Dependencies on Zorin OS 18.1 #232
|
So I have been trying the past couple days to get this program to work, and I have manged to get every part of it working except the quick start to install the system dependencies. Every time I run it, the command instantly fails when it tries to add the i386 architecture. I have tried reinstalling with sudo dpkg, unistalling and reinstalling wine, and seeing if anyone else has ran into this issue one here or elsewhere, and so far no luck. So I'm at a loss, and I don't trust my very minor knowledge of commands to help me work through the code on here. Any advice or help would be appreciated. Here's the output I get when I run "Install System Dependencies" or "One Click Full Setup": |
Replies: 2 comments 4 replies
|
I've also had this issue for the past 2 weeks on Zorin 18.1 and have just found a fix with the help of Claude: Cause Then it polls with Fix: add one line after the close so communicate() no longer touches the closed pipe: Workaround Run the installer (I'm using the newer Linux Affinity Manager here) but close the window without doing anything. so it creates a cached version of Then patch the version of And run the installer again: If upstream pushes a new commit, run.py downloads a fresh copy and the patch is gone so the above would need doing again. |
|
Thanks for digging into this. It only bites on Python 3.12 and older (3.13 ignores that error), which is why it's showing up on Zorin and Mint. #233 fixes it here; until that's merged, the patch above gets around it. |
I've also had this issue for the past 2 weeks on Zorin 18.1 and have just found a fix with the help of Claude:
Cause
AffinityScripts/AffinityLinuxInstaller.py:7143-7144, in run_command. For sudo commands, it writes your password to the sudo process and then closes stdin itself:
Then it polls with
proc.communicate(timeout=0.2).communicate()starts by flushing proc.stdin, and flushing a closed file raisesValueError: I/O operation on closed file.immediately. At that point sudo dpkg is still running, so the error handler kills it and reports failure.Fix: add one line after the close so communicate() no longer touches the closed pipe: