Sidenote: Checking lsattr on the compatdata directories after running proton on a filesystem with casefold, the 'F' attribute doesn't seem to be set.
The python fcntl docs say Changed in version 3.3: Operations in this module used to raise an IOError where they now raise an OSError. So it's weird that you're getting an IOError on python 3.9. But whatever, I'll change it to catch both types. Thanks for reporting.
A fix for this is in the 5.13 release: 7493508dc88dc91f2d9f431c20ea63cd42f2e342 . I'm planning to backport it to 5.0 as well.
This is now in the 5.0 branch as well. OK to close this?
proton 5.0x1 2020-10proton 5.0-9x1 2020-10
Proton 5.0-9, Linux kernel 5.8.13, glibc 2.32
I recently upgraded my system to python-3.9. I'm not sure if that's the direct cause of this issue, since the Python codebase doesn't seem to reflect this, but the proton launch script is failing when trying to use the EXT2_IOC_SETFLAGS ioctl:
It should be getting OSError in this case, since the /mnt/games filesystem didn't have casefold enabled at the time. (I just reformatted it with casefold enabled and this problem went away, but it shows up again when using a non-casefold fs.)